Spaces:
Running
Running
| title: Shadows of Tomorrow | |
| emoji: ๐ฎ | |
| colorFrom: purple | |
| colorTo: blue | |
| sdk: gradio | |
| sdk_version: 4.44.1 | |
| python_version: 3.11 | |
| app_file: app.py | |
| pinned: false | |
| license: mit | |
| # Shadows of Tomorrow | |
|  | |
| ## Overview | |
| This game was created using Godot 4.3 and is an RPG-based game where the player, as the main character, searches for plants in the forest, creates medicine from these plants and cures npcs from various diseases. | |
| ## Repository Structure | |
| ```markdown | |
| . | |
| โโโ audio/ | |
| โโโ characters/ | |
| โโโ components/ | |
| โโโ entities/ | |
| โโโ gameclips/ | |
| โโโ images/ | |
| โโโ maps/ | |
| โโโ scenes/ | |
| โโโ tilesets/ | |
| โโโ ui/ | |
| โโโ server.py | |
| ``` | |
| ## Game Background | |
| In the year 2200, a catastrophic nuclear disaster ravages the world, wiping out 80% of the global population. The surviving remnants of humanity take refuge in the Magnus Province, led by the Nova Force. This is the background for our game, a thrilling adventure set in a world where survival is a daily struggle. | |
| ## Development Journey | |
|  | |
| As newcomers to Godot, we faced a steep learning curve, especially with our semester exams looming in December. Despite the time constraints, we leveraged AI tools to maximize our productivity. We utilized: | |
| - FLUX-dev for image generation | |
| - Elevenlabs for audio generation | |
| - Notebook LM to quickly grasp concepts, even using an 8-hour YouTube video as input | |
| - Suno AI for creating background music | |
| - **Hugging Face Inference (Qwen2.5-1.5B-Instruct)** for fast NPC dialogue | |
| - **Ziva.sh** (in-editor AI agent) and **AWS Q Developer** to help write GDScript code | |
| - **Hugging Face Spaces** to host both the game and the AI dialogue endpoint | |
| ## Gameplay Images | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
| ### We also incorporated AWS tools, specifically Amazon Q, AWS lambda and Amazon Bedrock, to streamline our development process. | |
| Amazon Q proved invaluable in generating Godot 4 scripts (GDScript), as most LLMs referenced outdated code (Godot 3 GDScript). Amazon Q, however, produced the latest version of GDScript, saving us significant time and effort. | |
| Amazon Lambda was used to create a serverless API that leverages the Bedrock Runtime model to generate human-like text responses to user input prompts, allowing for scalable and cost-effective deployment of AI-powered text generation capabilities. | |
| Amazon Bedrock was used to create engaging NPC conversations using the `mistral.mistral-large-2402-v1:0` model. What sets our NPC conversations apart is that they're not just generic, repetitive phrases. Instead, they: | |
| - Discuss real-world issues: Our NPCs talk about the consequences of war, the importance of renewable energy, and environmental concerns, adding a layer of depth and realism to the game world. | |
| - Reflect the game's storyline: NPCs share stories and insights about the world's history, the nova officers, and the struggles of the surviving population, making the game's narrative more immersive and engaging. | |
| - Provide contextual information: NPCs offer hints and clues about the game's world, helping players navigate the game and uncover its secrets. | |
| - Exhibit emotional intelligence: Our NPCs display emotions and empathy, making their interactions feel more natural and human-like, which enhances the overall gaming experience. | |
| ## Additional Features (Planned but Not Implemented) | |
| Due to time constraints, we were unable to implement the following features, which we had planned to include: | |
| - Communication system: enabling players to interact with NPCs across towns through radio communication | |
| - Player cooking and hunger system: adding a survival mechanic to the game | |
| - Trading system: allowing players and NPCs to exchange goods between towns | |
| - More interiors: expanding the game's environments and exploration opportunities | |