My first finished game
Arsomage is a fully playable roguelike video game that I started when I was 14 and finished when at 15. In the game, you play as a wizard who likes to light stuff on fire, an arsonist mage, an Arsomage.
You play through 20 waves of increasing difficulty. Your wizard fights skeletons, archers, rangers, knights, and water mages. The game’s final wave features an epic bossfight that might bug out a little, but other than that the game is relatively stable. Promise 🙂
After every wave you get a choice between 2 skills. These skills include new spells, boosts to your health, your speed, your resistance to certain attacks, and more.
The goal is to survive all 20 waves by learning how to cast the spells. Casting spells is not as easy as in other games, because you need to enter a specific combination of number keys for every spell you want to cast. This way you have to increase not only your character’s skill, but your own as well.
In many fantasy stories, magic is something you need to study and practice in order to master. But in fantasy games, spells are often just mastered by unlocking them at a certain level or by buying them.
I wanted the player to have to work in order to earn the mastery to be able to cast the spells efficiently, so I came up with the idea of using the numpad to cast your spells.
If you aren’t familiar, the numpad (or Numeric Keypad) is the part of the keyboard that has the digits 1–9 laid out in a 3×3 grid.
To cast spells, you have to press combinations of these numbers. For example, to cast a basic fireball, you press 4-6-8, the shape of an upward triangle.
The combination 7-9-8, forming a line at the top of the numpad, casts a protective ward in front of you.
More advanced spells require more advanced combinations.
Spells and enemies database
When you unlock a spell or encounter an enemy, its corresponding database entry unlocks. Here you can study their attributes and become a better Arsomage.
For all the completionist players out there, the game features an array of achievements which you can unlock.
This feature was pretty unnecessary, but just fun to add. When you launch the game you’ll be greeted with a launcher that tries to connect to the server (which at this point is down forever).
When you connect, it’ll check your version and link you to a newer download if there’s an update available.
It’ll also log which waves you complete.
Don’t worry, no information is collected anymore. There’s no server connection.
Saving and Loading
Saving and loading is an often overlooked game mechanic. It’s actually quite a difficult problem to solve that comes with many questions: What do you store on disk? When? What happens if someone interrupts saving or loading? How do you save and load? How do you prevent exploits? Should you use encryption?
Arsomage didn’t necessarily need saving and loading, because you can probably finish the whole game in one sitting. But those who like to play in increments or who have particular difficulty learning the spells can now take breaks from the game.
How I made it
I made this game in GameMaker 2015, a video game engine with a function-based language. GameMaker has many features to support 2D game development, such as a tiling system, built-in game loop, events, and even a sprite maker.
In addition to using GameMaker, I used Paint.NET to make most of the sprites. I also added some promotional material which you can see on the Itch.io page and in the installer which you can download from the itch.io page.
Why did I make this game?
Didn’t you have homework to do when you’re 14? Yes, and I did do my homework, thank you very much. I just enjoyed making video games so much that that’s what I did in my free time.
I’d come home from school and launch GameMaker to progress a little further to my goal of making a complete video game. Every step closer to a finished game gave 14 year old me enough satisfaction to keep going until it was finished.
At my school, we had a special class 1 hour a week in which you were encouraged to work on a project of your own for half a year. Of course, I saw this as an opportunity to get an hour of extra development in and to set the class’ presentation deadline as my own release deadline.
Merging my passion project with an actual school project gave me outside motivation to finish it, apart from my self-imposed deadlines.
I remember working on the game in the computer room of the school when a teacher came up to me and saw that I was play-testing my game. She got my attention and angrily said “That’s not what you’re supposed to do here.” I explained that, indeed, this was what I was supposed to do here. What I was doing looked like fun, but I was actually working on a school project. That’s because I was actually making what I wanted to make.
Making what you want to make
I just wanted to work on this project. No-one forced me to do so. I didn’t have any profit motivation. I didn’t know that I would add the game to my portfolio 7 years later. I just like working on projects and incrementally improve upon it to make a working product.
That’s what this website is about: make the projects you enjoy working on. That’s what I’ve been doing, and I recommend this approach to anyone who has ideas they want to see become a reality.
Years after the making of this game I tried to make another far more ambitious top-down game called Any Journey, which I worked on it for 8 months and eventually had to abandon. Want to know why? Click here to read more.
If you want to play Arsomage you can press the link below to download it. Please keep in mind that I made it when I was a kid. I’ve learned a lot over the years about programming and design. Check out more of my work to see what I’m doing now or subscribe to the newsletter.