Learning game development
I have no professional game-industry experience yet, and I am learning on my own.
Angular, Vue, OIDC and Docker were all self-taught and then shipped to production. I will learn game development the same way: finish something small but complete, write the design document, then move on to the next engine.
Submarine Voyage — small Unity game demo + GDD Done
An idle game: send submarines on voyages, wait for them to return, collect resources. Four submarines unlock in order, three routes, cargo and speed upgrades (Lv1–5), a fleet goal and a completion screen.
- Game rules live in a pure C# layer with no Unity dependency; submarine state is derived from return timestamps, which makes offline catch-up possible.
- JSON saves (write to a temp file, then replace; corrupt saves are backed up) and 32 EditMode tests.
- A one-page GDD (gameplay loop, MVP scope, numbers, technical design) and an English README.
- Built with AI: I decided the specification and verified the result, and AI helped write the code.
Learning log: building Submarine Voyage in three days
I learned the Hierarchy, Inspector, Canvas, Prefabs, ScriptableObjects, Layout Groups and anchors as I built.
- After playtesting
- At 600x speed all four submarines maxed out quickly and nothing was left to do, so I added a fleet-goal progress bar and a completion screen. The route window now shows each submarine’s actual wait time and reward range.
- A snag
- The default Canvas Scaler setting cropped cards in a 4:3 window; I switched it to Expand and fixed the card width.
Next Planned
- UE5
- I look forward to learning UE5 on the job, starting with networked, 3D-oriented projects.
- GAS concept notes
- Read the official GAS documentation and write a one-page note of my own on how Ability, Attribute Set, Gameplay Effect and Gameplay Tag divide responsibilities.