My first serious foray into game development is underway. I'm developing a small topdown action game that will feel like an old action RPG - e.g. Secret of Evermore - with minimal combat. It's inspired by this tweet:
NYE parties are both wackand dangerous rn. So— 🎃Aaron Catano-Saez🇵🇷 (@AaronCatanoSaez) December 31, 2021
On New Years Eve, everyone write down a mythical weapon they want to wield in 2022. Create the legend behind it, what it looks like, what power it possesses, etc
Then, tomorrow, you start your 365 day quest to find or forge it.
It's light in scope - more of a learning experiment than a full game, but it will have a story and some combat and some weird stuff in it. It's got a sword in it. Hence... Project Sword.
My tech stack is as follows:
- Unity - as an engine with the following packages
- Ink Unity Integration
- Auto Importer for Aseprite Pro
- VS Code - as C# editor
- Aseprite - for all pixel art assets & animation
- Inky - for editing Ink Dialogues
Rather than take a programming heavy approach, I'm trying really hard to keep things decoupled and pass around events and make use of ScriptableObjects. To this end, I've aleady coded some pretty cool things, including:
- ScriptableObject World Variables
- A WorldVariable Manager to save / load world variable configurations
- A ScriptableObject Condition system, allowing you to create logical statements involving the state of the world / the player's inventory / etc. to drive other behavior (e.g. a locked door that only opens if the player has a key or has passed some other milestone)
I'll share how I've implemented each idea in future tutorials. I've got a huge list of things I want to talk about and I'm hoping that I'm not talking into the void. That's okay too, though!