Congrats on completing your game Paul! It was fun reading about your adventure building it, especially how you involved your son. I missed something though: how did it go when you first showed Ben the game? What was his reaction? I think it’d be nice to hear more about that. :)
Thank you :-) It's difficult to remember to be honest because he was involved from very early on, when the game was barely playable. I remember showing him early prototypes and he used to give me "sympathy nods" because he didn't want to upset me, haha! It took (what felt like) months before the game was playable enough for him to enjoy it and by then he had already come up with many of the ideas and level designs himself.
This has inspired me boot up GameMaker Studio 2 again. I usually come back to it now and then just to mess around, not really with the goal of making anything complete.
It's been a while since I touched it last, but I made this back in 2018. Never worked on it past what's in the video but it was still fun to work on!
Thank you for reading it and I'm so happy to here it inspired you to fire up GMS2 again. Your game looks awesome! That's exactly how I worked on Kells - I just chipped away at it now and then for no other reason than because it was fun! Good times!
It seems the game use some assets from "liberated pixel cup" (https://lpc.opengameart.org/) which are in GPLv3 / CC BY-SA 3.0. Does any one know how viral are this licenses with other assets and the game itself ? I would have avoided to use them for a commercial game personally but I'm maybe mistaken.
OP might be OK if they credit artists and publish all modifications made to the art.
Although if it was me I would be uncomfortable publishing a game using someone else's assets commercially anywhere unless I am backed by some BigCo with a legal team, licensing is too fraught.
GPLv3 is a very strange license to apply to artwork. It is specific to software. However I dont belive the is any intent for it to cover the game using the assets.
This article doesn't touch it as it's a new game they are developing, but I used to wonder a lot how much are indie game devs making? Is it worth it? Can one expect to earn like a full time job working on it?
Generally very, very little. You can generally take the number of Steam reviews on a game and multiply by 50 to get a rough, ballpark idea of how many sales the game has made. Considering this game has 3 reviews on Steam and costs $6, it’s unlikely the game has made over $1000 on that platform.
That doesn’t mean it’s not worth making games, though! I’ve released two mobile games, still updating the second one, and although they’re a far cry from being profitable vs. the amount of time I’ve put into them, I still find the process and result very fulfilling.
Most indie game devs do not turn a profit on their work. The numbers vary from year to year but on average an indie game that launches on Steam earns in the $1000-5000 ballpark, which limits how much time you can profitably put into it.
Of course, if you can hit it big the numbers can be pretty good. But not many games manage to hit it big. It used to be much easier to get visibility as an indie a long time ago, but that's partly because there weren't very many indie games on storefronts like Steam, Xbox etc at the time so being there got you attention. Now hundreds of games come out every day and are competing with you.
I do know multiple indie devs who do it for a living, but they tend to have to supplement their game revenue with contract work, or they split the burden with a spouse who has a regular job.
Personally I've worked on multiple shipped indie games and have never earned enough off that to pay rent, though it was nice to get a few thousand in post-launch royalties over the span of a few years + the initial amount I earned working on it. I always had to supplement things with traditional freelancing or a day job.
Back in 2014 we made an iOS game* that got several million plays and some local press but never made enough money to motivate further work. I still like it and play it when killing time on flights. If you were solo and/or had very low living costs or expectations, or got a feature to kickstart things more, maybe you could make a modest living.
Doing it over, I think we'd probably put more time into making it a daily challenge or monetising differently or using a more neutral theme.
That's like asking 'how much are musicians/artists making'. Most are making near-zero. A few get lucky and are making many millions.
And while success requires a certain level of talent/skill, becoming a mega-hit seems very much about luck and being in the right place at the right time.
Some of my favorite game developers live pretty much below poverty level and have to resort to patreon to make ends meet.
I really think that at this point developing games is more of a labor of love and it's very hard to pierce right now as an indie dev. It was most likely quite a bit easier 15 years ago when the indie scene was much smaller (but then there were a lot more barriers of entry back then)
OP here. It's not new as in "under development" new. It's newly released on Switch, but I've been working on it for over 2 years now on and off and it was released on Steam last year for PC/Windows.
This project was never intended to be a full time job (or even lead to one) and it was never about making money, either. If that were the goal I would have probably ended up with a very different game in order to appeal to the mainstream and give me more chance of (monetary) success.
For me this game was more about the process of creating something that is 100% an expression of me (and my son). I created it for the sake of creating it, nothing more. And I enjoyed every second of the process to the point where it's kind of sad it's over now. That's not to say it was always easy mind - it was painfully difficult sometimes and I almost give up in frustration and disillusionment many times.
> Can one expect to earn like a full time job working on it?
It really depends on where you live. A full time job in California earns much more that many other parts of the World.
That being said, most indie games fail financially. There are hits, of course. But there's also a a middle ground if you can live on low funds.
I have been full time indie since 2013. I have released about a dozen games and 4-5 of those have been financially successful.
I made about $250k net (after all taxes and fees) in these 9 years, so around $2300 net / month. That's about 3-4 times the average wage in my country and is close to being on par with what I could earn outsourcing my programming skills to the western companies. I'm doing what I love and enjoy having freedom of being able to choose when I work and when I go on a vacation, etc. Sometimes I work 16-hour days for weeks. Sometimes I take 2-3 weeks off and just play games, read books, watch movies and hang with my friends and family.
You probably never heard about any of my games: Rogue Bit, Son of a Witch, Watermelon Party. I'm perfectly fine with that.
Great article! Just a thought: if it was that hard for OP to write the logic for the gravity manipulation, he should've taken this as an indication that it'd be hard for players to understand and learn this functionality too.
OP here. I seriously thought about giving up on the gravity implementation many times, but not because the coding logic was difficult. I was more concerned that the player wouldn't find it compelling as I had early feedback it was way too confusing from player's perspective and I was too close to the game to notice it.
In the end, as it turned out, it wasn't the gravity mechanic that was too confusing, it was how haphazardly I initially implemented it. After months of playtesting and tweaking the difficulty curve in the early levels, I finally hit the sweet spot (which was measured based on feedback from play testers - mainly family, friends and a few colleagues).
Is difficulty of implementation really a reliable indicator for the complexity in players understanding the mechanic?
Jonathan Blow did a talk[1] at GDC a few years ago about implementing the time rewind mechanic in his game, Braid. It ended up being a pretty complex system that required a lot of ingenuity to come up with a design and implement it, but the end result is pretty straightforward and easy to understand for players.
Great read and very inspiring,
I think the end product really goes to show that creativity and a clear gameplay direction are worth way more than presentation.
Excited to check out the game as soon as I get home !
Thanks for taking the time to write about your game.
Since gravity plays such an important role in the game,
it would be great to see a gif/video of how it works.
It's a bit difficult to grasp from the screenshots.
Thanks :-) It's always been a challenge to explain how the gravity works so in the end I kind of played on that fact in the game. Most players initially think of the "gravity tiles" as essentially directional arrows. So if you want to make the Kells go up, you place an "UP" tile. But what that really does is make the Kells essentially "fall upwards". I hope this realisation gradually builds up over the first 10 or so levels (which are designed to be tutorial levels), until a brilliant "AHA" moment! But I've seen friends reach level 50 still using the "directional arrow" tactic :-)
Still reading but your first game screenshot isn’t loading for me!
Edit- a lot of images don’t seem to be working for me. I’m vowing this from mobile safari.
I'm having the same issue with images on Android. It's a great article though, I love your frankness with the downs as well as the ups of your process.
FWIW, The Nintendo link is UK only, which is a mild trip hazard to people installing in other countries. I'm curious as to how my 8yr old enjoys this
For anyone reading, if you’re a programmer by training, I’d recommend literally any game engine other than Game Maker Studio for creating your game. Unity is a great choice for beginners that lets you program in C#.
Game Maker Studio is specifically designed for people who are NOT programmers.
Unity suffers from being 3d by default (so you're kind of defaulted into "physics-activated 3d world" stuff), having very low discoverability of features, and a lot of googling to land on the Unity forums.
If you're a programmer, there are a couple ways you can experience happiness:
- Try one of the many "2d game library" things. They tend to be limited to playing sound, displaying gfx, and handling input. But if you're a programmer that will at least give you an idea of what is implemented and what isn't.
- Use Unreal with Blueprints. "But I'm a programmer, let me write code!" Trust me, when you are using blueprints you both get a much more discoverable API, and can actually get all the fancy built-in 3d stuff to work. Also if you're not working on something by yourself, suddenly other people can help out a lot.
- Use Game Maker Studio! Being a programmer means you might have some more systems thinking, but ultimately having stuff like tile editors easily means you're not going to spend a month building out your own little tools.
Programming everything from scratch is overrated if you actually want to make something that works. But Unity has a lot of half-baked features and is actually pretty hard to get working nicely for so many things that it can easily end up being a massive source of incidental complexity.
The best choice is the one that you, personally, will complete and build a full game in. Presumably OP knew how to use gamemaker studio, and could either choose between:
1) Starting to build the game straight away in Game Maker Studio
and
2) Learning C# / Unity and then starting to build your own engine and plug together tile editors and things which will then let you build the game.
In the case above, Option 1 will probably have more success as you are starting to build the thing rather than defering building the thing.
I don't agree that GML is designed for people who are not programmers though. I actually grew rather fond of GML (The language in Game Maker Studio) over the 2 years I learned to work with it (and that's coming from an experienced Software Engineer (TypeScript, Go, Clojure, Java, C/C++)). It's not perfect by any means, but it's very easy to get started with, has lots of features designed specifically for 2d gamedev, is actively improved by YoYo Games and getting better all the time. And it allows for rapid experimentation which was a huge benefit during development on Kells, given how many ideas where repeatedly thrown away.
Thanks :-) Some of the best fun I had was just coming up with funny level names. It became a bit of a challenge for family and friends to come up with better puns!
Some highlights (none of them mine!) include "Kellraiser", "Jingle Kells", "Skellington", "Two kellholes are better than one", "For whom the Kells toll" and last but not least, "Kell Block H"!
lwilli|3 years ago
pdrummond|3 years ago
rezic|3 years ago
This has inspired me boot up GameMaker Studio 2 again. I usually come back to it now and then just to mess around, not really with the goal of making anything complete.
It's been a while since I touched it last, but I made this back in 2018. Never worked on it past what's in the video but it was still fun to work on!
https://youtu.be/fMbm2ZVL7zs
RobertoG|3 years ago
https://godotengine.org/
pdrummond|3 years ago
Rexxar|3 years ago
throwaway290|3 years ago
OP might be OK if they credit artists and publish all modifications made to the art.
Although if it was me I would be uncomfortable publishing a game using someone else's assets commercially anywhere unless I am backed by some BigCo with a legal team, licensing is too fraught.
ZiiS|3 years ago
habibur|3 years ago
japhib|3 years ago
That doesn’t mean it’s not worth making games, though! I’ve released two mobile games, still updating the second one, and although they’re a far cry from being profitable vs. the amount of time I’ve put into them, I still find the process and result very fulfilling.
kevingadd|3 years ago
Of course, if you can hit it big the numbers can be pretty good. But not many games manage to hit it big. It used to be much easier to get visibility as an indie a long time ago, but that's partly because there weren't very many indie games on storefronts like Steam, Xbox etc at the time so being there got you attention. Now hundreds of games come out every day and are competing with you.
I do know multiple indie devs who do it for a living, but they tend to have to supplement their game revenue with contract work, or they split the burden with a spouse who has a regular job.
Personally I've worked on multiple shipped indie games and have never earned enough off that to pay rent, though it was nice to get a few thousand in post-launch royalties over the span of a few years + the initial amount I earned working on it. I always had to supplement things with traditional freelancing or a day job.
prawn|3 years ago
Doing it over, I think we'd probably put more time into making it a daily challenge or monetising differently or using a more neutral theme.
* https://hexiledgame.com/
bluescrn|3 years ago
And while success requires a certain level of talent/skill, becoming a mega-hit seems very much about luck and being in the right place at the right time.
nicolas_t|3 years ago
I really think that at this point developing games is more of a labor of love and it's very hard to pierce right now as an indie dev. It was most likely quite a bit easier 15 years ago when the indie scene was much smaller (but then there were a lot more barriers of entry back then)
pdrummond|3 years ago
This project was never intended to be a full time job (or even lead to one) and it was never about making money, either. If that were the goal I would have probably ended up with a very different game in order to appeal to the mainstream and give me more chance of (monetary) success.
For me this game was more about the process of creating something that is 100% an expression of me (and my son). I created it for the sake of creating it, nothing more. And I enjoyed every second of the process to the point where it's kind of sad it's over now. That's not to say it was always easy mind - it was painfully difficult sometimes and I almost give up in frustration and disillusionment many times.
ffhhj|3 years ago
Only if you create one that is very popular, and that depends on many factors, developing games is a metagame.
babuskov|3 years ago
It really depends on where you live. A full time job in California earns much more that many other parts of the World.
That being said, most indie games fail financially. There are hits, of course. But there's also a a middle ground if you can live on low funds.
I have been full time indie since 2013. I have released about a dozen games and 4-5 of those have been financially successful.
I made about $250k net (after all taxes and fees) in these 9 years, so around $2300 net / month. That's about 3-4 times the average wage in my country and is close to being on par with what I could earn outsourcing my programming skills to the western companies. I'm doing what I love and enjoy having freedom of being able to choose when I work and when I go on a vacation, etc. Sometimes I work 16-hour days for weeks. Sometimes I take 2-3 weeks off and just play games, read books, watch movies and hang with my friends and family.
You probably never heard about any of my games: Rogue Bit, Son of a Witch, Watermelon Party. I'm perfectly fine with that.
trgfdffd|3 years ago
Perhaps one small lesson missed?
pdrummond|3 years ago
In the end, as it turned out, it wasn't the gravity mechanic that was too confusing, it was how haphazardly I initially implemented it. After months of playtesting and tweaking the difficulty curve in the early levels, I finally hit the sweet spot (which was measured based on feedback from play testers - mainly family, friends and a few colleagues).
hbn|3 years ago
Jonathan Blow did a talk[1] at GDC a few years ago about implementing the time rewind mechanic in his game, Braid. It ended up being a pretty complex system that required a lot of ingenuity to come up with a design and implement it, but the end result is pretty straightforward and easy to understand for players.
[1] https://youtu.be/8dinUbg2h70
TuxPeepo26|3 years ago
soegaard|3 years ago
Thanks for taking the time to write about your game. Since gravity plays such an important role in the game, it would be great to see a gif/video of how it works.
It's a bit difficult to grasp from the screenshots.
pdrummond|3 years ago
I'll put all of this into another blog post but in the mean time there is a guide on Steam that explains this (and a whole lot more) in more detail here: https://steamcommunity.com/sharedfiles/filedetails/?id=27358...
crobertsbmw|3 years ago
pacaro|3 years ago
FWIW, The Nintendo link is UK only, which is a mild trip hazard to people installing in other countries. I'm curious as to how my 8yr old enjoys this
sirjonathan|3 years ago
P.S. Love seeing that you made the site with WordPress! It’s gorgeous!
kuu|3 years ago
franciscop|3 years ago
pizzathyme|3 years ago
japhib|3 years ago
For anyone reading, if you’re a programmer by training, I’d recommend literally any game engine other than Game Maker Studio for creating your game. Unity is a great choice for beginners that lets you program in C#.
Game Maker Studio is specifically designed for people who are NOT programmers.
rtpg|3 years ago
If you're a programmer, there are a couple ways you can experience happiness:
- Try one of the many "2d game library" things. They tend to be limited to playing sound, displaying gfx, and handling input. But if you're a programmer that will at least give you an idea of what is implemented and what isn't.
- Use Unreal with Blueprints. "But I'm a programmer, let me write code!" Trust me, when you are using blueprints you both get a much more discoverable API, and can actually get all the fancy built-in 3d stuff to work. Also if you're not working on something by yourself, suddenly other people can help out a lot.
- Use Game Maker Studio! Being a programmer means you might have some more systems thinking, but ultimately having stuff like tile editors easily means you're not going to spend a month building out your own little tools.
Programming everything from scratch is overrated if you actually want to make something that works. But Unity has a lot of half-baked features and is actually pretty hard to get working nicely for so many things that it can easily end up being a massive source of incidental complexity.
Closi|3 years ago
1) Starting to build the game straight away in Game Maker Studio
and
2) Learning C# / Unity and then starting to build your own engine and plug together tile editors and things which will then let you build the game.
In the case above, Option 1 will probably have more success as you are starting to build the thing rather than defering building the thing.
pdrummond|3 years ago
I don't agree that GML is designed for people who are not programmers though. I actually grew rather fond of GML (The language in Game Maker Studio) over the 2 years I learned to work with it (and that's coming from an experienced Software Engineer (TypeScript, Go, Clojure, Java, C/C++)). It's not perfect by any means, but it's very easy to get started with, has lots of features designed specifically for 2d gamedev, is actively improved by YoYo Games and getting better all the time. And it allows for rapid experimentation which was a huge benefit during development on Kells, given how many ideas where repeatedly thrown away.
jasonlotito|3 years ago
This is not true in the slightest.
flobosg|3 years ago
pdrummond|3 years ago
Some highlights (none of them mine!) include "Kellraiser", "Jingle Kells", "Skellington", "Two kellholes are better than one", "For whom the Kells toll" and last but not least, "Kell Block H"!
pjmlp|3 years ago
petetnt|3 years ago
nelsonic|3 years ago
oneeyedpigeon|3 years ago