Glossary
- “based” means having a foundation and not cowering to popular opinion. It was originally used in 4chan in specific ways but it was used ironically for humor so if you read fascism into this article, game jam, game engine, or game, “touch grass.”
- “touch grass” is a phrase in memes and terse internet conversations, indicating your opponent in the debate is too concerned that there are people online that disagree with him/her’s views, or more generally, can improve psychologically by going outside.
I made my first Redot game (I have not made anything in Godot before either). If you don’t realize, making my first game in a new engine in 3D and adding RPG-like elements was a stretch. To do so requires a large backend (On the plus side, adding more features will be relatively easy from here). The core features are relatively complex (compared to a typical game jam entry that focuses on a single genre such as action, RPG, puzzle, strategy, etc):
- Throwing non-lethal items into general areas (outside houses), causing the NPCs for that house to appear and marking goals complete in a global quest system. What I had to do:
- GDScript classes are isolated, so accessing external instances or scenes are each done in ways rather unique to the engine.
- There is one Player class for the Player or NPCs, and each can have an exported attribute set to a custom mesh scene. What I had to do:
- Figuring out which children need to be manually duplicated while retaining a connection to the bones, animation player, etc, was tricky.
- Learning how to preload and then instantiate to avoid editing the scene itself was not clear at first (There is no error if you don’t instantiate, you are just doing something different and less probable to be your intention. Basically, a scene should be treated as a class though it is an object, similar to a prototype in JavaScript or metatable in Lua).
- Any NPC can have a passive or angry MS-paint style meme face or can change to a regular 3D face. What I had to do:
- I took a while to discover that you must manually duplicate materials when you duplicate objects (DuplicateFlags don’t seem to accomplish this when duplicating the MeshInstance. I kept looking for some deeper bug in my code and even suspected an engine bug).
- Keeping track of whether the painted face mesh was attached was tricky (due to duplication, I had to track the state exhaustively since I could not see if the object was already in the children. Another way may be to set the name of the duplicate instance and check if that name exists in the children).
- Also, a MeshInstance “has a” mesh, so that can be confusing at first.
Finding good tutorials was difficult. Like most things on YouTube unfortunately, the majority of people are in the overconfident slumps of the Dunning-Kruger Effect in the areas of programming and use of the engine (either making it too complex or too restrictive). If they are good in those areas, chances are they are still in that slump in teaching ability since that is actually a separate skill and most people may not realize that. I can at least say that whereas about 1/10 Blender tutorials are good, I’ve found at least that 1/5 Godot tutorials are good. The ones that helped the most are below and also in the credits of the game (more may be added there later):
- Starter state machines in Godot 4 & Advanced state machine techniques in Godot 4 by The Shaggy Dev YouTube
- Godot 4.0 Third Person Controller Tutorial ( 2023 ) by Lukky on YouTube
- The Easiest Way to Make Dialog Subtitles in Godot | TUTORIAL by Punga on YouTube
- How To Pick Up Weapons (Godot Tutorial) FPS Inventory by Garbaj on YouTube
- All about Signals in Godot! by Queble on YouTube
- Complete 3D Shooting Mechanics – Godot 4 FPS Tutorial by LegionGames on YouTube
I got low marks, no fault of tutorials, but I got a middling score for the one story category from a judge and I am glad that was my highest score. I am also glad I made my first 3D game, and that I used Redot and made a complete and beatable 3D game demo in the two-week jam. It was exciting and funny to see them joke around about the game since it made the cut into the live judging stream (at 4:40:40) and showcase reel (That reel was played maybe near the beginning or end of one of the streams, but I can’t find it right now).
My January 2025 release of Locktopia for the Game Jam needs work, but I got the main jokes across. The release is more of a demo, but you can deliver facts to NPC homes to encourage them to “touch grass” and finish the game by finishing that quest. You can use one item, but throwing code was finished after the game jam. Other featured are planned such as combat, more items, more quests, and parody bosses representing a technocratic dystopia.
Make an itch.io account and follow poikilos.itch.io hear about future projects and I will be posting developer blog entries at the Locktopia page as I improve and expand the game.
Leave a Reply