Objective
The idea is partecipate to a Gamejam and make a game using Stable Diffusion graphics.
Today I am preparing my tools and make the idea for the game, in the next days I will add more information about the JAM.
My Tools
Ai Generation
Stable Diffusion with Automatic1111 : To generate the game graphics
https://github.com/AUTOMATIC1111/stable-diffusion-webuiControlNet : For better sprite composition
https://civitai.com/articles/4065/stable-diffusion-controlnet-from-concept-to-cool-image-using-openposeAnimateDiff : For Intro animations and game animations.
https://civitai.com/articles/3330/how-to-generate-videos-with-stable-diffusion-automatic1111-animatediffADetailer : to improve Hands / face ,etc..
https://github.com/Bing-su/adetailer.gitRegional Prompter : For image composition, intro and part of the game.
https://civitai.com/articles/3959/stable-diffusion-testing-the-regional-prompter-plug-in-using-breakBackground Removal : To remove the background
https://github.com/AUTOMATIC1111/stable-diffusion-webui-rembg.git
Reactor : to use keep the player and enemies with the same face in all the game.
(https://civitai.com/articles/3932/stable-diffusion-testing-reactor-face-swap-plug-in)
Graphics Support Tools
MR Stable Diffusion Quick Sprite : To generate quick sprite without background.
(https://misterm.itch.io/mr-stable-diffusion-quick-sprite )Paint.NET : To quick edit some images
https://www.getpaint.net/Krita: to draw better graphics, use PSD with unity and AI
https://krita.org/en/AI diffusion pluin in Krita : To do AI directly on Krita (I will use for the first time)
https://civitai.com/articles/4077/krita-ai-diffusion-a-plugin-with-stable-diffusion-inside-krita
Windows 11 Paint : I like the quick tool to remove background. Sometimes is fast to do with this one.
Asprite : I bought this tool few year ago, it is cool for pixel art , I don't think I will use it but sometimes if great for some changes. https://www.aseprite.org/
Mockup Tools
Draw.io : Cool tool to make some mockup and ideas for my game
https://app.diagrams.net/
Sounds
Audacity : Cool tool to record sounds and save in wav, mp3 , ogg, etc.
Game Engine
Unity 2021.3.25f1 : not the last version but works well with Windows and web export
https://unity.com/
Development
Visual Studio Community 2022 : Free developer tool (if you don't make more that 1 milion of sales : not my case) : https://visualstudio.microsoft.com/it/ (the community edition)
3D Tools
Blender 4.0 : To make cool 3D project to use in your game
https://www.blender.org/
(I don't think I will make a 3D game but normally when do I use Blender)
Managing Source Code
Git : Never make a development without git, you can also use only locally and it will check your code differences . https://git-scm.com/downloads
Github: A place to share the code with others, it is free. (Attention only 1GB of graphics are normally included when you save your game because you have to activate LFS)
https://github.com/Github desktop: When I am lazy to use command line I use this tool to commit,merge,etc.
Unity has his own system (SCM) to share code but I don't like it and of course you have to pay for it.
Project Management
Google Sheets : This is great to share with other people, this times I will do it solo
https://docs.google.com/spreadsheets
Music
I am not so good with music, I normally use some music where you have to show the owner.
I am not making commercial software and it is not an issue to show.
I find so nice music here: https://www.bensound.com/royalty-free-music/cinematic
Voice
MR Text to speech : This is my new tool that uses openAI text-to-speech. (here I pay few cents for each voice generation)
Google Text-to-Speech : For free there is the ool for google. You need to activate it and if you don't use so much is free.
https://console.cloud.google.com/speech/text-to-speech;encoding=LINEAR16;speed=1?hl=it&project=easymockup-e678e&pli=1
Other AI Tools
Github copilot : It costs 10/euros a month but it help you a lot to write any kind on code in Visual Studio community (C#,javascript,etc.) or Visual Studio Code (Python and many other languages). I use at work and at home and It can write 30% of my code or more.
https://github.com/features/copilotChatGPT : it is a great helper to make c# code for unity, this is because you create a single file that you attach to an object. ChatGPT is great to make single files of code.
Google Bard (now Gemini) : I don't like it, my advice it to avoid it.. at least until today always suggest code that is not complete.. I think that I will improve soon (I believe in you google.. do your best).
Personal Tools
I made some personal tools that sometimes I use in my GameJam.
MR Action plan: This one to keep a list of the activities.. if I don't use goole spriteet
https://misterm.itch.io/mractionplanMR CountDown : This is good when you need to focus to the final date. Normally I use in long jams.
https://misterm.itch.io/mr-countdownMR Tiles Master: This one is great to generate platform game, I generate the pieces in few secs. Also there are the magic tiles of unity with tiles rules to draw easily on your game.
MR Easy Sprite Animation : I made this to generate animation for sprite pieces, right now I don't use so much because AI generate the whole body. (I am thinking to add some IA stuff in the near future).
Game Template
Because I am a lazy person that doesn't like to do twice the job I have already a Unity template with the most important stuff (every time I jam I do some improvements, I did 37 jams in the last 4 years.. thanks Covid...) , here is a list of the features:
Global Music and sound management
Global Effect Management
Scene Introduction with images and sounds + text typewriter
Effects between the scenes
Menu with effects and buttons
Play
Options : Music on/off, Sounds on/off
Credits
High Score
Map Scene : Selection of the levels, remember the levels finished, images and souds
Main game structure
Levels management
Lives management
Score management
Start, pause, win and game over panels with info
Joystick and buttons for android (touch screen)
Many script for movements, bombs, effects,etc.
Social Tools
Discord : Normally all the Jam have a discord server, it is not mandatory but If you need help, you want to show up or ask something it is better to use discord.
https://discord.com/
Let's JAM
If you want to jam you have to https://itch.io/ which is really good, there are many jams, some are famous with thousand of people, some are little. Some are few days, some takes months.
If you want to do "THE GAMEJAM" you have to do the https://ludumdare.com/ normally it takes time in April and October. This is the most famous and started in April 2002 (22 years ago).
I have my free account in itch: https://misterm.itch.io/
Let's go to https://itch.io/jams and select a JAM.
There are so many Jam.. but I already found out which I want to partecipate.
The Brackeys Game Jam 2024.1 , which has 3827.. a lot of people that can play your game.
It is already started but I think that I can do some stuff in 4 days (some days are only few hours or a weekend).
I register myself , now I have 4 days a 15 hours to finish my game (which I didn't start yet)
Every JAM has a Theme and some some limitation, the theme is "What's behing the Door"
DAY 1 - Let's think about the game
As first I like to define the time of game, resolution, etc.
My game will be in 2D. I am not so good in 3D but mainly I love to make 2D games
Resolution. My game will be HD resolution, but on web will be 960x540 size , which is perfect for the itch page.
Remember: if you don't do a web version few people will play your game in itch.Input : my game will use mainly the keyboard and the mouse. No gamepad or touch or VR .
No pixel art : AI is not good in pixel art and I will use a complete pallete
Checkpoint : I will select a checkpoint for my game.. my idea is to use Aniverse V2.0 (https://civitai.com/models/107842/aniverse) I really like the colors and the people (mainly the girls!!!) generated with this checkpoint.
Important : read the rules of the jam, in some jams it is forbidden to use AI, in this case I select other jams (Or I draw myself.. which I don't do anymore after I found Stable Diffusion powers).
In this jam there are no rules limitations. I will only write in the info that the graphics were made with Stable Diffusion.
Ideas for the game... I have no one..
Let's ask to ChatGPT.
Prompt: I am doing a gamejam with theme "What's behind the door", I need to create a 2D game in unity .. give 5 ideas for a 3 days gamejam.
Sure! Here are five ideas for a 2D game in Unity based on the theme "What's behind the door":
The Mysterious Mansion:
Players explore a haunted mansion filled with different rooms, each behind a unique door.
Behind each door lies a different challenge, puzzle, or enemy to overcome.
The ultimate goal could be to find the key to unlock the main door and escape the mansion.
Portal Puzzle Adventure:
Players navigate through a series of interconnected rooms with portals.
Each door leads to a different dimension or puzzle world.
Players must use portals strategically to progress and unlock the secrets behind each door.
Time Traveling Detective:
Players take on the role of a detective who can travel through time.
Each door leads to a different era or moment in time where a mystery unfolds.
Players must gather clues from each time period to solve overarching mysteries.
Dreamscape Journey:
Players enter a dream world where they must explore various dream doors.
Each door represents a different dream or subconscious realm.
Players must navigate through surreal landscapes and confront their fears or desires.
Parallel Dimensions Escape:
Players find themselves trapped in a facility with doors leading to parallel dimensions.
Each dimension presents a different challenge or obstacle to overcome.
Players must collect fragments of reality scattered across dimensions to piece together the key to escaping.
Let's analyze the answers
The first one looks like a game I made before: https://misterm.itch.io/haunting-echoes-escape-from-the-enchanted-manor
I like the n°4... specially because with IA I can make cool dreams..
If I ask to ChatGPT how I can make the game and answer me to do:
Game Mechanics: Determine the core mechanics of the game. Will it be a board game, a card game, a video game, or something else entirely? Consider how players will interact with the dream doors and navigate through the dream world.
Exploration and Discovery: Design the dream doors to offer unique challenges, puzzles, or encounters that reflect different aspects of the subconscious mind. Each door could present a different theme or emotion, such as fear, love, desire, or uncertainty.
Character Development: Allow players to create characters with distinct traits or abilities that influence their journey through the dreamscape. Perhaps certain fears or desires grant special powers, but also come with drawbacks or challenges.
Narrative and Storytelling: Develop a compelling storyline that unfolds as players progress through the dream world. Introduce characters, conflicts, and plot twists that reflect the intricacies of the human psyche.
Art and Atmosphere: Use visuals, sound effects, and music to create an immersive atmosphere that transports players into the surreal landscapes of the dreamscape. Each dream door should have its own distinct aesthetic and ambiance.
Choice and Consequence: Incorporate decision points throughout the game where players must make choices that shape their journey and affect the outcome of the game. These choices could lead to different endings or reveal hidden truths about the characters and their subconscious minds.
Cooperative or Competitive Gameplay: Decide whether the game will be cooperative, where players work together to overcome challenges and unlock the mysteries of the dreamscape, or competitive, where players compete against each other to achieve their own objectives.
Replayability and Variation: Include elements of randomness or variability to ensure that each playthrough feels fresh and unpredictable. This could involve randomized dream door layouts, unique encounters, or branching story paths.
Feedback and Playtesting: Gather feedback from playtesters to identify areas for improvement and refine the game mechanics, balance, and overall player experience.
Accessibility and Inclusivity: Consider accessibility features to ensure that the game is enjoyable and inclusive for players of all abilities and backgrounds.
Let's keep it simple
Protagonist of the game will be a girl name Kaori .
Let's make the face that we will use with reactor
I use controlnet to setup a generic face (to have the portrait as I like ) and I use "OpenPose"
Then I write the prompt : Asian beauty wearing cyber Armour, (colorfull short hair:1.3), gray background
Negative :(deformed, distorted, disfigured:1.3), poorly drawn, bad anatomy, wrong anatomy, extra limb, missing limb, floating limbs, (mutated hands and fingers:1.4), disconnected limbs, mutation, mutated, ugly, disgusting, blurry, amputation, watermark, jewerly, NSFW, nipples
I have generated 9 faces. I like short hair because it is easier for movements and sprites.
I selected Kaori
I make a folder and I start to put all the pictures inside.
Name of the game :Kyoto Labyrinth Escape
I worked a littke bit with ChatGPT to get my game Story:
In the heart of Kyoto, there lies a labyrinthine temple complex rumored to hold an ancient treasure of immense power. The labyrinth is a maze of twisting corridors, hidden chambers, and secret passages, guarded by mystical creatures and traps.
Protagonist: Kaory:
Kaory, a skilled Japanese warrior, embarks on a perilous journey to unlock the secrets of the Kyoto labyrinth and claim the ancient treasure. With her katana in hand and determination in her heart, she faces daunting challenges and adversaries at every turn.
Gameplay:
Players take on the role of Kaory as she navigates through the labyrinth, facing puzzles, traps, and adversaries. Along the way, she must find keys hidden throughout the labyrinth to unlock the doors leading to the treasure chamber.
Challenges and Combat:
Kaory encounters various challenges and enemies as she explores the labyrinth, including guardian spirits, ancient traps, and rival treasure hunters. Players engage in strategic combat using Kaory's martial arts skills and katana proficiency to overcome obstacles and defeat adversaries.
Unlocking Doors:
To progress deeper into the labyrinth, Kaory must find keys scattered throughout the maze. These keys are hidden in hidden chambers, guarded by powerful adversaries, or obtained by solving intricate puzzles. Each key unlocks a door leading closer to the ancient treasure.
Ancient Treasure:
The ancient treasure hidden within the labyrinth holds untold power and secrets. As Kaory ventures deeper into the maze, she uncovers clues and artifacts that reveal the true nature of the treasure and its significance to the world.
Conclusion:
As Kaory braves the dangers of the Kyoto labyrinth, she must rely on her courage, wit, and martial prowess to overcome challenges and claim the ancient treasure before it falls into the wrong hands.
This concept provides a rich and immersive experience for players, blending elements of Japanese mythology, exploration, puzzle-solving, and combat in a captivating adventure through the mystical labyrinth of Kyoto.
Simple mockup
I have to move Kaori around the screen fighting with enemies , getting some objects, ammo and keys to open the doors.
Create the game in Unity
With unity Hub I create a 2D game, write the name and select the folder
It will take a while to generate everything
Now you are ready to make a game from zero
Because I have already a Template in unity, I copy the folders : Assets, Project Settings, UserSettings.
Also I copy 2 files .gitattributes and .gitignore. There files are important to avoid saving in github library files or files that you don't need in your source code.
When I go back to unity It will start to import all the files
After I go always to Window >>Package Manager to update to the last version
Select the packages and update them..
For my game I will use the 2D packages.
Introduction of the game
I have to generate 3 images (I can do less or more) about the story of my game and write the text .
Let's go with ChatGPT:
make me an introduction with 3 phrases
ChatGPT
ChatGPT
"In the heart of Kyoto, where ancient secrets whisper through the cherry blossoms, lies a labyrinthine temple complex shrouded in mystery."
"Meet Kaory, a fierce Japanese warrior whose destiny intertwines with the legends of the Kyoto labyrinth, where bravery meets peril and courage unlocks the path to untold treasures."
"Step into a world where every shadow conceals a challenge, every whisper echoes a forgotten tale, and every door holds the key to a legend waiting to be unraveled."
I will use the exact text to generate 3 images.
1° TEXT: In the heart of Kyoto, where ancient secrets whisper through the cherry blossoms, lies a labyrinthine temple complex shrouded in mystery.
I seleted one that I like and I use the "Hires, fix" to get the HD resolution 1920x1080
For the 2° image
Meet Kaory, a fierce Japanese warrior whose destiny intertwines with the legends of the Kyoto labyrinth, where bravery meets peril and courage unlocks the path to untold treasures.
I will use Reactor to use my girl.
and then the last image
MP3 Intro speech
I use my tool to generate the mp3 for the texts
I prepare the intro images in unity
and also I set the sounds with my sounds AudioManager
Of course you cannot listen to the sound but I can tell you that is there.
to be continued....