Making Games on a Shoestring Budget!
by Kayne Ruse (Ratstail91)
I’ve been rewriting Toy from scratch for… two and a half months now? Wow. My (rather nebulous) goal since before reaching v1.0 was to create a language, game engine and game with a high degree of moddability.
I attempted this with v1, but found that in practice it was not performant enough for the task, due largely to the way I handled memory. I shelved the project, but the process at least proved that the idea was possible.
Now, with v2’s development well under way, let’s think about what potential ideas could fit my goal.
During v1’s development, our initial idea was to create a roguelike set on floating islands, heavily imspired by several half-remembered TV shows with a similar setting (it was also called “Skylands”). The goal was to collect water from cloud-drinking robots by travelling through proc-gen “temples”. The mental image of a young Indian girl carrying a jar of water on her head gave us a main character.
I spoke with multiple people from India to try and determine a good name, as well as to learn a bit about their culture. My first choice of name was “Lejana” (Hindi for “to carry” or “go get it”), but I later determined that it was a dumb name, so settled on “Parvati” (an actual name).
At some point, I decided that it would be interesting to present lesser-seen cultures to the world - Indian, Maori, Aboriginal, etc. Now, being a White Dude from Australia, last thing I wanted to do was offend someone via ignorance - so I figured I’d reach out to the people in question and ask.
First person I contacted was an aunt - a friend of the family who might as well be family - about her aboriginal heritage. I learned a lot about the Wodi Wodi people, and a lot about my aunt and cousin too.
It was about this point that I realized the lang wasn’t up to scratch. So, I shelved the idea - I may revisit it one day, but for now, I’ll need a more straight forward premise.
Recently, I was thinking about the game Waterlogged that I made with my friend and artist LogicMonkey - we’ve done a few projects together, including Candy Raid. Waterlogged’s idea was “Spelunky in Reverse” and it turned out pretty well for a jam game.
I was contemplating both the randomized levels, and the idea of climbing - then I landed on the following game pitch (copied verbatim from a week old post, with typos fixed):
Game Idea: Deep under the earth, there's a village of people. One day, their only source of water, a river flowing from the forbidden cave systems above the village, slowed to a trickle, before drying up entirely.
Now, one young boy sets out to find the cause and restore the water, before everyone he knows and loves dies.
Notes:
* This resembles Rowan of Rin, quite a bit.
* I was thinking of the ideas behind Waterlogged when I came up with this, though the tone is very different.
* There could be a serious time limit - You can only survive three days without water, so there could be a combination timer/water counter on screen.
* Hang on, That onscreen water counter sounds like the Skylands prototype!! It'd make sense if the reworked version of Toy was used for it then.
* Would the boy be capable of returning home?
* Parvati could be used, as well. It feels more interesting to have a female character than a male one sometimes.
Addendum: Caches of water could be found in the caves and released, granting temporary extensions to the water timer.
The idea of a water timer carries over from Skylands, but is reworked and recontextualized. The perspective would change from top-down to profile, making it a platformer of sorts. The MC would unexpectedly encounter people in the caves, providing some Difference in Kind, and I wonder if the MC would be allowed back into the village after leaving?
Other random ideas I’ve had in the last week include terrain destruction/alteration, and using a debug console as part of the gameplay. I remember many moons ago, watching my brother play Quake Live from over his shoulder. He had professional level skills (that is NOT hyperbole), and would often pop open the debug console for whatever reason. I kind of like the idea of a game that requites you to tinker under the hood.
For this idea though, I’m not sure it fits. The console could take commands written in Toy, so the mechanics aren’t the problem, the aesthetics are.
However, altering the terrain does fit this idea. If the levels are proc-gen, the chances of impossible terrain is very high. Giving the player a way to circumvent those issues just makes sense. It could also be the primary way of releasing water caches.
This idea would need a full game engine as well, so I may make it the second challenge, rather than the first.
A friend of mine suggested a great idea: Why not use Toy to create a text adventure?
If I were to do this, I could possibly get away with using nothing but the core language and libraries inside the default REPL. There’s a hell of a lot you can do with this idea, but it does require some basic structures to be written in Toy - which is exactly what I’m going for.
A text based game resembling the old school termimal games would be an in interesting throwback. Niche, yes, but also heavily moddable, so anyone who is interested can alter the code to their heart’s content.
The only caveat I can think of is the input - as it is, the REPL reads and interprets the Toy code. I may have to add some way to direct the commands into the logic. Having a mode that automatically invokes a function like main()
can definitely work. Add in some string parsing tools, and it could totally work.
For now, I’m quite a ways from this stage of development, but things are at least moving forward.
tags: gamedev - langdev