Indie development toolkit
Published by James on 31/08/2024Hey Kinoko fans!
As you might know, I normally like to share an update on the game’s progress at the end of each month. However, this month, I don’t quite feel ready to talk about what I’m working on. I’m still making great progress on the new-and-improved starsprites, but I’ve a way to go until they’re finished and worth showing off, so I want to wait a little bit longer before talking about them. Whilst I’ve been working on them, Chelsey’s been getting back to working on level designs, but those too need a bit more work before we’re ready to share them. There are things we’ve introduced this month that do warrant talking about, though, and they concern the tools we use to make our game happen.
In this blog post, I’m going to introduce you to some of the tools that we use most often when working on Kinoko and the Cult of Galaxy. Some, like our game engine, you might know about already, but others may surprise you! And hopefully, if you’re an aspiring indie game developer, you may find this list helpful.
Godot Engine
Let’s get the obvious one out of the way! Godot Engine is the game engine that we’re using to develop our Kinoko and the Cult of Galaxy game. Godot is a free, open source game engine capable of developing both 2D and 3D games. We started using it after we dropped Unity, just under a year ago, and we’ve never looked back.
If you don’t know what a game engine is, let me explain it to you like this. Whilst all games are different, there are many things that they pretty much all have in common. Think things like physics and graphics systems. A game engine is the toolkit that provides all of these building blocks. Many large game studios have their own proprietary game engines: for example, Rockstar’s RAGE (used to develop games like Grand Theft Auto V and Red Dead Redemption 2), and Bethesda’s Creation Engine (used to develop games like The Elder Scrolls V: Skyrim and Starfield). However, creating a game engine from scratch is an incredibly complex, time-consuming and expensive thing to do, and that is why most indie game developers – and some large studios too! – use ‘off the shelf’ game engines like Unity and Unreal Engine.
Godot is one such engine, and one which I rate very highly indeed. I didn’t mind Unity, but their attempt at changing their licensing model left a sour taste in my mouth, and made me realise that if you’re using a proprietary engine like that then you never truly own your work. Godot Engine is fortunately open source, and that’s one of the many reasons I recommend it for aspiring new game developers. It’s very easy to learn, but very powerful too, and it gets better with every update thanks to the amazing community who contribute to it and the donors who support it.
Visual Studio
Microsoft’s Visual Studio is an IDE, or ‘integrated development environment’, for Windows, used to develop websites and applications. An IDE is essentially a code editor, but with lots of other useful development tools thrown into the mix to assist with programming, such as built-in Git integration.
But with that said, in all honesty, Visual Studio is probably a bit much for Godot development, as it offers far more than you’d ever need. I primarily use it because I’m an ASP.NET web developer in my day job, and Visual Studio is the IDE that I’m most familiar and comfortable with. Godot actually has its own built-in code editor, unlike Unity, so you could skip downloading an IDE altogether and get by just fine with that. I think a better alternative to Visual Studio, however, is its more straightforward and more popular sister, Visual Studio Code. That would be perfectly sufficient for a Godot developer, and much less overwhelming than Visual Studio for new developers!
GitHub and GitHub Desktop
GitHub, essentially, is a platform for storing, managing, and sharing your code. Even as a solo developer, GitHub can be incredibly useful. Imagine you need to roll your game back to a previous version, or you need to find some code that you previously removed. GitHub offers version control, so you can easily go back in time and find old versions of your code. In a team context, GitHub enables you to push your code so that your other team members can pull it, work on it, and push their own changes. Thanks to version control, you can see exactly who did what and when, and roll things back when things go wrong.
GitHub Desktop is a desktop client which provides a graphical user interface (GUI) for Git and its many functions, enabling you to manage your code via a simple, easy-to-understand application rather than memorising all the various Git commands. If you just want to take advantage of GitHub and all it offers without having to add another thing to learn to your list, GitHub Desktop is honestly a no-brainer and a great addition to your indie development toolkit.
Chelsey and I use both GitHub and GitHub Desktop to work together in Godot Engine!
Adobe Animate
There are several 2D animation tools available for indie game developers, but the one we’ve chosen to use is Adobe Animate. It went subscription-based a few years ago, which will understandably be off-putting to many, but nevertheless it’s still one of the better tools on the market for frame-by-frame sprite animation.
In particular, Chelsey likes Adobe Animate for how straightforward it is to put together simple, hand-drawn frame animations. She favours a classic approach to animation, drawing each frame by hand, though Adobe Animate includes some useful functions such as tweening which help speed things up a bit along the way by calculating some of the ‘between’ frames automatically. That’s what tweening is all about. I, on the other hand, like Adobe Animate for how easy it is to export spritesheets which can be directly dropped into the Godot game engine once Chelsey is done animating.
(Obviously, if you’re making a 3D game, then Adobe Animate won’t be much good to you! Whenever we’ve dabbled in 3D, we’ve used Blender both for 3D modelling and for 3D animation. Hopefully, one day, you’ll get a chance to see some of Chelsey’s 3D work!)
PaintTool SAI
PaintTool SAI is a funny one, since it’s considered quite old and outdated by much of the digital art community now, but Chelsey still uses it for the vast majority of her Kinoko and the Cult of Galaxy art. Many artists have switched to using Clip Studio Paint, which is admittedly more modern and fully-featured, and Chelsey herself does use it to achieve effects that would be made more difficult by PaintTool SAI. Sometimes, though, it’s just easiest to stick to what you know!
Whilst Clip Studio offers very similar and often better facilities, Chelsey likes PaintTool SAI for things like its line stabiliser tools. It lacks other things like scatter brushes, so those are the things she’ll switch to other applications for, but regardless, nearly all the art you’ll see from us, including every single one of the character portraits over on our ‘explore the galaxy’ pages, was created by Chelsey using PaintTool SAI.
MediaWiki
MediaWiki is the free, open source wiki software developed primarily for Wikipedia, but you can install and use it for your own wiki websites too. Even though we’re still just a team of two, I recently set up a wiki for Chelsey and I to use. Despite the fact we’ve been designing our game for two years now, we’ve never had a game design document because I never found a tool that I was comfortable writing one in. MediaWiki answered that problem for us immediately, and now I have a growing wiki in place of the traditional GDD.
I’ve divided our wiki into two distinct namespaces: ‘game’ and ‘lore’. This allows us to easily separate the articles that specifically concern the game from the broader lore. Our wiki has grown very quickly to include topics on every aspect of our game, both in terms of what we’ve already developed and also in terms of our future plans. It’s turned out to be a fantastic way of documenting exactly what it is we’re trying to build, so we both have an agreed point of reference for everything we do. As well as that, it includes all the lore that we’re not quite ready to share on our website. We used to use Google Docs for that sort of thing, but MediaWiki helps us keep it organised and accessible.
Thanks to our wiki, I’m confident that if we brought in another team member now we’d be able to very easily bring them up to speed with our project.
Social media
Unless you’ve come across our website via Google, searching for tips on getting started as an indie game developer, you’ve probably found your way here today because you follow Kinoko and the Cult of Galaxy on social media. Social media, whilst not without its problems, is an incredible tool for marketing your indie game – and the earlier you can get on it and start talking about your game, the better. When you release your game, you want to have an audience ready and foaming at the mouth waiting for it. As an indie game developer, there are few ways better to ensure you have that than with social media.
But which ones should you use? There are so many, and it takes so much effort to build a following on each of them, it can be difficult to decide which ones are worth investing in. Unfortunately, there’s no right or wrong answer here, and what works for one indie game developer may not work for another. I think you’ve just got to try them out and see what you have the most success with. More importantly, you need to figure out which ones you actually enjoy using. We’re seeing success on X/Twitter more than anywhere else because Chelsey genuinely enjoys interacting with it. You don’t want social media to feel like a chore.
We personally use several of the different social media platforms. We’ve had the most success with X/Twitter, but we’re doing alright over on Bluesky too. We want to do more with YouTube, and Chelsey’s doing a decent job with Tumblr. The only one we’ve really struggled with and haven’t found to be worth our time is Instagram – but that doesn’t mean it won’t be a good fit for you, your game, and your community, so don’t discount it until you’ve tried it for yourself!
Website
Being a web developer by trade, I might possibly be biassed in saying this, but as an aspiring indie game developer you need a website! Whilst social media is great and has its place in every indie developer’s toolkit, it gives you very little control over your brand and identity. You need a little space on the internet that’s truly yours, that you can make completely your own. That is what you get by having your own website.
The cool thing about having a website is that it’s yours to do exactly what you want with. There are no rules. As you can see from our own website, I like to use it to share things like character and planet profiles. We often get feedback that people really love visiting our website and using it to learn about our project, and Google Analytics shows me that the character pages in particular are really popular. Every day, we receive visitors from all over the world who come to our website to learn about our work. I love having a website for our project that’s as comprehensive as the one we’ve put together. I’m incredibly proud of it, and that’s what having a website is all about.
There are many ways to build a website, and many of them are free. Since I do it for a day job, I tend to take it very seriously, with our own web server, and I’ve actually gone as far as building our own content management system for it too – but there’s really no need to go to as much trouble as I have done. You can get started with a website today on something like Neocities, and that’s free – or you can pay for some cheap web hosting from a provider of your choice. Just keep in mind that the more independent you can be, the more control you have over your content and what happens to it.
Wrap-up
And there you have it – that sums up all the tools that Chelsey and I are currently using to develop our game! There are of course a handful of other tools that we use from here and there, such as Notion for note-keeping (though I’m gradually transitioning towards MediaWiki for all kinds of documentation), and we’ve tried out things like Monday.com along the way too for project management (ultimately, not worth the cost though in our specific circumstances, although the company I work for use it and it’s great), but the ones I’ve covered above are certainly the main ones that we use on a daily basis.
I hope you found this post interesting, though I do apologise that it’s essentially just been a filler update whilst we continue to work on the starsprites. Our next proper game update will be well worth the wait, I promise! It’s coming along brilliantly, and we’re both incredibly proud of the way it’s all going. It just needs more time before it’s worth showing off!
Until then, though, we’ll leave it here. Take care!