+49 2662 5076841 hello@infiniteapps.de
The World of Serious Games Development: Learning, Motivating, and Inspiring

The World of Serious Games Development: Learning, Motivating, and Inspiring

What are Serious Games?

Serious games are so much more than just entertainment. They have the potential to create profound impacts on education, the business world, and society as a whole. In this blog entry, we will explore serious games development and how these types of games can help promote learning, motivation, and inspiration.

Serious games are games specifically designed to promote learning, training, or behavior changes by utilizing playful elements and mechanisms. Unlike pure entertainment games, serious games aim to create an educational or training value for players by presenting complex topics in an accessible and appealing manner.

The Development Process for Serious Games

  1. Concept and Planning: At the beginning, there is the idea generation and planning of the game. Here, developers and designers must clearly define the game’s objective, determine the educational or training value, and decide which playful elements and mechanisms are best suited to achieve this goal.
  2. Design and Development: In the next step, developers and designers create the game world, characters, tasks, and game mechanics. It is essential to find the right balance between fun and educational value to keep players engaged and promote learning.
  3. Implementation and Testing: Once the game is developed, the implementation and testing of various functions follow to ensure everything runs smoothly and the desired learning objectives are met. Feedback and iteration play an essential role in continuously improving and adapting the game.
  4. Evaluation and Dissemination: Finally, serious games must be evaluated to measure the success of the project and determine if the learning objectives have been met. Afterward, the game can be disseminated and made accessible to the intended target audience.

Application Areas for Serious Games

Serious games are used in various fields, such as:

  1. Education: Serious games can help convey complex topics to students in a fun and engaging way, making learning easier and more effective.
  2. Health: Serious games can be used to educate patients about their illnesses and treatment options or promote health-promoting behaviors such as regular exercise or healthy eating.
  3. Corporate Training: Serious games can be employed in companies to train employees in areas such as project management, sales skills, or leadership competencies.

Conclusion

Serious games development is an exciting field with the potential to promote learning and personal growth in innovative and engaging ways. By combining playful elements with educational and training content, serious games can be a powerful method of conveying information and effecting behavior changes.

By closely collaborating, developers and designers can create both effective teaching and learning tools and entertaining gaming experiences tailored to the needs of the respective target groups. In a time where digitization is advancing and traditional teaching and learning methods are reaching their limits, serious games offer a promising alternative to revolutionize learning and personal development.

In the future, the importance of serious games is likely to increase as more and more industries and fields recognize the benefits of this innovative learning method. With the continuous improvement of technologies like Virtual Reality (VR) and Augmented Reality (AR), serious games could become even more immersive and educational, making learning even more exciting and effective.

Ultimately, the power of serious games lies in their ability to enable learning and personal development in a way that is fun and increases players‘ motivation. By further exploring and leveraging these opportunities, we can help create a world where learning and growth are accessible and inspiring for everyone.

The World of Serious Games Development: Learning, Motivating, and Inspiring

Die Welt der Serious Games Entwicklung: Lernen, motivieren und inspirieren

Was sind überhaupt Serious Games?

Serious Games sind so viel mehr als nur Unterhaltung. Sie haben das Potenzial, tiefgreifende Auswirkungen auf die Bildung, die Unternehmenswelt und die Gesellschaft insgesamt zu haben. In diesem Blogeintrag werden wir die Serious Games Entwicklung untersuchen und wie diese Art von Spielen dazu beitragen kann, Lernen, Motivation und Inspiration zu fördern.

Es handelt sich um Spiele, die speziell entwickelt wurden, um Lernen, Training oder Verhaltensänderungen zu fördern, und zwar durch den Einsatz von spielerischen Elementen und Mechanismen. Im Gegensatz zu reinen Unterhaltungsspielen zielen Serious Games darauf ab, einen Bildungs- oder Trainingswert für die Spieler zu schaffen, indem sie komplexe Themen auf eine zugängliche und ansprechende Weise präsentieren.

Der Entwicklungsprozess für Serious Games

  1. Konzeption und Planung: Am Anfang steht die Ideenfindung und die Planung des Spiels. Hier müssen Entwickler und Designer das Ziel des Spiels klar definieren, den Bildungs- oder Trainingswert ermitteln und entscheiden, welche spielerischen Elemente und Mechanismen am besten dazu geeignet sind, dieses Ziel zu erreichen.
  2. Design und Entwicklung: Im nächsten Schritt erstellen die Entwickler und Designer die Spielwelt, die Charaktere, die Aufgaben und die Spielmechanik. Dabei ist es wichtig, die richtige Balance zwischen Spielspaß und pädagogischem Wert zu finden, um die Spieler bei der Stange zu halten und das Lernen zu fördern.
  3. Implementierung und Testen: Sobald das Spiel entwickelt ist, folgt die Implementierung und das Testen der verschiedenen Funktionen, um sicherzustellen, dass alles reibungslos funktioniert und die gewünschten Lernziele erreicht werden. Hierbei spielen Feedback und Iteration eine wichtige Rolle, um das Spiel kontinuierlich zu verbessern und anzupassen.
  4. Evaluation und Verbreitung: Schließlich müssen die Serious Games evaluiert werden, um den Erfolg des Projekts zu messen und festzustellen, ob die Lernziele erreicht wurden. Anschließend kann das Spiel verbreitet und für die beabsichtigte Zielgruppe zugänglich gemacht werden.

Anwendungsgebiete für Serious Games

Serious Games finden in verschiedenen Bereichen Anwendung, wie zum Beispiel:

  1. Bildung: Serious Games können dabei helfen, komplexe Themen für Schülerinnen und Schüler auf eine unterhaltsame und ansprechende Weise zu vermitteln, wodurch das Lernen leichter und effektiver wird.
  2. Gesundheit: Serious Games können genutzt werden, um Patienten über ihre Erkrankungen und Therapieoptionen aufzuklären oder um gesundheitsförderndes Verhalten wie regelmäßige Bewegung oder gesunde Ernährung zu fördern.
  3. Unternehmensschulungen: Serious Games können in Unternehmen eingesetzt werden, um Mitarbeiterinnen und Mitarbeiter in Themen wie Projektmanagement, Verkaufsfähigkeiten oder Führungskompetenzen zu schulen.

Fazit

Die Serious Games Entwicklung ist ein spannender Bereich, der das Potenzial hat, Lernen und persönliches Wachstum auf innovative und ansprechende Weise zu fördern. Durch die Kombination von spielerischen Elementen mit Bildungs- und Trainingsinhalten können Serious Games eine wirkungsvolle Methode sein, um Informationen zu vermitteln und Verhaltensänderungen zu bewirken.

Indem Entwickler und Designer eng zusammenarbeiten und auf die Bedürfnisse der jeweiligen Zielgruppen eingehen, können Serious Games sowohl effektive Lehr- und Lernwerkzeuge als auch unterhaltsame Spielerlebnisse bieten. In einer Zeit, in der die Digitalisierung immer weiter voranschreitet und traditionelle Lehr- und Lernmethoden an ihre Grenzen stoßen, bieten Serious Games eine vielversprechende Alternative, um das Lernen und persönliche Entwicklung zu revolutionieren.

In der Zukunft dürfte die Bedeutung von Serious Games weiter zunehmen, da immer mehr Branchen und Bereiche die Vorteile dieser innovativen Lernmethode erkennen. Mit der fortlaufenden Verbesserung von Technologien wie Virtual Reality (VR) und Augmented Reality (AR) könnten Serious Games noch immersiver und lehrreicher werden, was das Lernen noch spannender und effektiver gestaltet.

Letztendlich liegt die Kraft der Serious Games in ihrer Fähigkeit, Lernen und persönliche Entwicklung auf eine Art und Weise zu ermöglichen, die Spaß macht und die Motivation der Spieler erhöht. Indem wir diese Möglichkeiten weiter erforschen und nutzen, können wir dazu beitragen, eine Welt zu schaffen, in der Lernen und Wachstum für jeden zugänglich und inspirierend sind.

Wir freuen uns über eure Kommentare und eigenen Erfahrungen zu dem Thema!

Wir bauen einen OpenAI iPhone Kurzbefehl

Wir bauen einen OpenAI iPhone Kurzbefehl

ChatGPT ist ein heiß diskutiertes Thema und die Verwendung im Browser mittels Texteingabe ist mittlerweile einigen bekannt. Mit einem Apple iPhone lässt sich allerdings auch ein sogenannter Kurzbefehl erstellen, mit dem Anfragen an die OpenAI API gestellt und mittels Sprache beantwortet werden! Es gibt zwar bereits in der Kurzbefehle Gallery einen fertigen Kurzbefehl, allerdings finde ich diesen sehr groß und umständlich. Dieses kleine Hands-on soll außerdem zeigen, dass die Kurzbefehle App einiges kann, wenn man weiß wie sie anzuwenden ist. Auch User:innen ohne Programmierkenntnisse können hiermit kleine „Apps“ schreiben. Um dies zu demonstrieren bietet sich ein einfacher API Call mit der hervorragenden API von OpenAI sehr gut an.

Los gehts!

Voraussetzungen:

  • iPhone mit mind. iOS 12 bzw. aktuelles MacOS
  • OpenAI Entwickler Account für den benötigten Api-Key
  • Aktive Internetverbindung

Teil 1: Spracheingabe einrichten und in Variable speichern

Im ersten Schritt wird die App Kurzbefehle geöffnet. Dies funktioniert bspw. über die Suche:

Im nächsten Schritt klickt man auf das „+“-Zeichen oben rechts in der Ecke, um einen neuen Kurzbefehl zu erstellen:

Nun habe ich einen leeren Kurzbefehl erstellt, bei dem noch alle notwendigen Aktionen fehlen. Um diese hinzufügen, klicke ich auf Aktion hinzufügen, oder klicken unten in das Suchfeld Apps und Aktionen suchen.

Daraufhin öffnet sich dieses Fenster. Ich habe die für dieses Tutorial relevanten Bereich ausgeschnitten:

Als erstes muss die Aktion Text diktieren hinzugefügt werden:

Der eingesprochene Text muss dann in eine Variable gespeichert werden. Dafür wird im nächsten Schritt eine Variable angelegt. Unten wieder auf Apps und Aktionen suchen klicken und nach Variable konfigurieren suchen. Anschließend sieht man folgende Oberfläche. Für die Variable kann ich nun einen Namen vergeben. In dem Fall nenne ich sie Prompt – der Name ist komplett frei wählbar. Der Eintrag Diktierter Text sollte automatisch befüllt werden:

Kurze Zusammenfassung bis hierhin: wenn man den Kurzbefehl jetzt starten würde, käme ein Popup, dass um eine Spracheingabe bittet und einen Hinweis, ob man dem Kurzbefehl die Verwendung des Mikrofons gestatten möchte. Anschließend würde das Gesprochene von Sprache zu Text konvertiert werden und in die Variable Prompt gespeichert werden. Sehen würde man davon aber aktuell noch gar nichts.

Den Inhalt der Variable Prompt übergebe ich jetzt an die OpenAI Schnittstelle, die bspw. auch ChatGPT benutzt.

Teil 2 – Anbinden der OpenAI Schnittstelle und Einstellungen setzen:

Für den API Aufruf binde ich die Aktion Inhalte von URL abrufen ein. Nun müssen die Einstellungen angezeigt werden über den kleinen Pfeil rechts von der Aktion. Da ich eine Information zu der API schicken und nicht nur abrufen möchte, ist es zunächst wichtig die Methode von GET auf POST umzustellen.

Nun müssen bestimmte Parameter (Überschrift bei der App Kurzbefehle genannt) im Header eingetragen werden, um eine gültige Anfrage schicken zu können. Hier ist jetzt der API-Key notwendig, den ich mir zuvor bei OpenAI erstellt habe, in meinem Entwickler Account. Achtung: der API-Key kommt ohne das vorstehende Bearer. Dies ist aber notwendig und muss in diesem Fall von mir manuell hinzugefügt werden.

Ich trage also bei „Header“ als erste Überschrift „Authorization“ ein und in das dazugehörige Value Feld (rechts daneben) Bearer meinApiKey.

Nun kommt der sogenannte Body, hier „Haupttext“ genannt. Dieser besteht im Wesentlichen aus 4 Keys Value Paaren, nämlich model, prompt, max_tokens und temperature. Das model definiert welches Sprachmodel ich benutzen möchte. text-davinci-003 ist das Model, das sehr nah an die „Menschlichkeit“ der Antworten von ChatGPT rankommt. prompt erwartet den Input des Users, in meinem Fall die Spracheingabe, die bereits in Text umgewandelt worden ist – also die Variable „Prompt“. max_tokens definiert der Anzahl der auszugebenden Tokens für die Anfrage. Die Anfrage hat einen gewissen Preis, daher muss ich der Anfrage mitteilen, wie viel ich maximal ausgeben willf. Jedem Nutzer steht anfangs ein gewisses kostenloses Kontingent bereit, das zum Testen mehr als ausreichend ist. Grundsätzlich ist ein Token ca. 4 Buchstaben. Je nachdem wie viele Tokens man spendiert, ist die Antwort auch länger oder kürzer. Der letzte Parameter ist die temperature. Hierbei kann ein Wert von 0 – 2 vergeben werden. Je höher der Wert, desto allgemeiner die Antwort, je niedriger desto deterministischer. Alle weiteren Informationen sind hier sehr gut dokumentiert: https://platform.openai.com/docs/api-reference/completions/create

Konfiguration des API-Calls

Nun ist der API Aufruf soweit fertig und könnte auch schon ausgeführt werden. Leider sehe ich jetzt immer noch nichts von der Antwort.

Teil 3 – Antwort erhalten und JSON decodieren

Wie viele andere APIs auf dieser Welt, die tagtäglich Milliarden Informationen bereitstellen, bekomme ich auch hier eine Antwort im JSON Format.

Im vorherigen Teil wurde bereits von Key-Value Paaren geschrieben. Sogenannte Dictionaries, oder auch in diesem Kontext von Apple Wörterbuch genannt, funktionieren mit diesen Key-Value Paaren. Ähnlich wie bei einem richtigen Wörterbuch finde ich auf der einen Seite einen Key, bspw. das Wort „Essen“ und auf der anderen Seite einen dazugehörigen Value – „Food“. Wichtig: die Keys sind dabei immer statisch und der Value ist dynamisch. So kann ich in meiner Dekodierung festlegen nach welchem Key gesucht werden soll, um dann den dynamischen Inhalt auszugeben. Konkret sieht die Struktur der Antwort von OpenAI auf die Frage: Schmeckt Pepsi oder Coca-Cola besser? so aus:

{
    "id": "cmpl-6u2CIMjktuOioUpKScsSmWe1jR70S",
    "object": "text_completion",
    "created": 1678812834,
    "model": "text-davinci-003",
    "choices": [
        {
            "text": "\n\nDas ist eine Frage des Geschmacks. Beide Marken haben eine lange Geschichte und sind beliebt, so dass es schwer ist, eine zu bevorzugen.",
            "index": 0,
            "logprobs": null,
            "finish_reason": "stop"
        }
    ],
    "usage": {
        "prompt_tokens": 15,
        "completion_tokens": 54,
        "total_tokens": 69
    }
}

Die für mich relevanten Inhalte habe ich fett hervorgehoben. Meine Aktion soll nach dem Key „text“ suchen, in dem Array „choices“. Dafür müssen folgende Aktionen hinzugefügt werden: „Wörterbuch abrufen“ und „Wörterbuch aus Eingabe abrufen“. Als Variablenwert wähle ich nun „choices“ aus, wie im vorherigen Screenshot gezeigt.

„Choices“ ist ein Array, also im Grunde eine Liste von Einträgen. Daher muss ich jetzt noch eine Schleife einbauen, die alle Einträge durchsucht und diese ausgibt.
Dies wird mit der Aktion „Wiederholen mit jedem“ gemacht. Nun habe ich das „choices“-Array durchsucht, es fehlt aber noch der eigentliche Eintrag, den ich unter dem Key „text“ finde. Hierfür brauche ich wieder die Aktion „Wörterbuch aus Eingabe abrufen“, dieses Mal aber innerhalb der Schleife. Dazu muss ich die Aktion etwas länger gedrückt halten und rücke sie dann ein. Anschließend wird das „Wiederholen“ beendet.

Wie man im oberen Screenshot sieht, habe ich auch einen Kommentar hinzugefügt. In der Programmierung ist es gute Praxis Code zu kommentieren. An dieser Stelle habe ich beispielhaft einen Kommentar hinzugefügt, um darauf hinzuweisen, was als nächstes folgt.

Teil 4 – Ergebnis vorlesen lassen

Der letzte Teil beschäftigt sich nun mit dem Vorlesen lassen der Antwort von OpenAI. Im Gegensatz zu ChatGPT wird in meinem Beispiel nämlich kein Text an den User ausgegeben, sondern eine Audioausgabe.

Die letzten beiden Aktionen sind „Text in Sprache“ umwandeln und „Übersicht“. Bei „Text in Sprache“ wird die Variable „Wiederholungsergebnisse“ übergeben. Hier sind noch verschiedene Parameter für den Stimmengenerator möglich, wie Geschwindigkeit, Ton und Stimme. Abschließend wird die erstellte Audiodatei an die Aktion „Übersicht“ übergeben, die in diesem Fall einen kleinen Mediaplayer anzeigt, mit dem der Ton abgespielt werden kann.

Teil 5 – Zusammenfassung

In diesem Tutorial habe ich gezeigt, wie mit Hilfe der Kurzbefehle App, die auf iOS und MacOS verfügbar ist, eine Anfrage an die Schnittstelle von OpenAI geschickt werden kann. Im Gegensatz zum ChatGPT Ansatz kann hierbei mit einer Spracheingabe eine Frage bzw. Aufgabe an die KI gestellt werden und die Antwort anschließend als Ton auch wieder akustisch ausgegeben.

Vielen Dank fürs Lesen und ich freue mich über Kommentare.

Hello World!

Wir melden uns zurück mit einer frischen Webseite inkl. Blogbeiträgen!

In diesem Blog möchten wir regelmäßig Einblicke in unsere Arbeit und aktuelle Entwicklungen in der Softwarebranche geben. Wir werden über unsere Erfahrungen und Best Practices bei der Softwareentwicklung berichten und Tipps und Tricks geben, wie auch eigene Entwicklungsprojekte erfolgreich umgesetzt werden können.

Unser Fokus liegt dabei auf der Entwicklung von maßgeschneiderten Softwarelösungen, die auf die spezifischen Bedürfnisse unserer Kunden zugeschnitten sind. Ob es um die Entwicklung einer mobilen App, einer Virtual Reality Anwendung, Mobile Games oder einer komplexen Unternehmenssoftware geht – wir haben die Erfahrung und das Know-how, um Ihnen dabei zu helfen, Ihre Ziele zu erreichen.

Wir sind stolz darauf, dass wir bei der Softwareentwicklung auf höchste Qualität und Effizienz achten. Wir setzen auf agile Methoden und halten uns stets an bewährte Entwicklungspraktiken, um sicherzustellen, dass unsere Lösungen stets auf dem neuesten Stand sind und den höchsten Anforderungen entsprechen.

Wir freuen uns darauf, in unseren nächsten Beiträgen weitere Informationen und Einblicke in die Welt der Softwareentwicklung zu geben. Dran bleiben!

Software Developer (M/F/D)

In the role of a Software Developer you program software, are in close coordination with Scrum Masters and Product Owners and implement new user stories.

Do you want to help build up a company? Are flexibility and personal responsibility important to you? If yes, we would like to get to know you, because we are not just looking for employees, but for doers and decision-makers.

>_infiniteApps is a start-up in the field of software development and product ownership. We are located in the beautiful Westerwald in the middle of Germany, but of course all positions are also available remotely. Many of our software projects also allow you to work at the customer’s site for a certain period of time, so you don’t have to be in your home office all the time.

Your future employer offers services as well as in-house developments. For you, this means that you can gain strong experience in the customer environment and also try out internal projects, such as apps and platforms. We work and develop (ourselves) according to the motto: Dare to fail!

Your tasks and key qualifications

  • You love product development and like to convince others of your ideas
  • You already have some knowledge of professional software development and know how to program
  • You are eager to take responsibility. Since we work with you on the basis of trust-based working hours, we want all employees to be aware of their responsibilities towards our customers
  • You live an open error culture – good software is created through iteration and feedback. We also want to organize and improve ourselves according to this principle.
  • Analytical and solution-oriented way of working
  • Good knowledge of German + one foreign language is a plus

This is what you get

  • Active opportunities to shape the project business and build a tech company in the middle of Germany. Within the scope of your project, you are responsible for your own success
  • Possibility to organize your work and free time as you see fit. Do you want to take your child to Kindergarden and pick it up there or attend doctor’s appointments in the mornings? No problem!
  • High-end gear: Top-notch Windows, Linux or MacOS device
  • Top-notch Android or iOS smartphone incl. 5G plan, also for private use
  • At least 60.000 € starting salary (depending on the qualification you bring with you) + option of additional bonus payments
  • Flexible holiday and working hours
  • 4 Udemy courses of your choice per year
  • Option of a job bike
  • 100% remote work possible

We look forward to getting to know you!

We.are.infinite!

Where my reason, imagination, or interest were not engaged, I would not or could not learn.

Sir Winston Churchill