Skyland Database

highscores macrocosm about beta

About

Hello! My name is Evan, and I'm the creator of Skyland. A lot of people contributed to the project's development in various ways -- some people contributed music or software libraries, helped with beta testing, or suggested changes to improve the game. That said, I'm responsible for almost all of the code, as well as all of the artwork, the game design, and the sound effects.

I don't know if I'll really ever consider the game finished. I'm still adding things and fixing occasional bugs. But having more-or-less finished the bulk of the development, I'd like to take some time to reflect on the development process, and give people a look into how I made Skyland.

With so much packed into the game, I won't even try to describe every change that I made to Skyland. But I'll detail below some of the Skyland's influences and conceptualization, followed by interesting development milestones and my associated thought process.

Influences


Development Timeline

April 2021

A bit of exposition:
After years of inactivity, the gba homebrew development community exploded with activity during the pandemic. The discord server was quite lively at times, with the developers of Goodboy Galaxy, the Butano library author, the mGBA and NBA emulator authors, and hundreds of other people debating gba/programming stuff.
With renewed interest in GBA development, some of the community's moderators put together a GBA programming contest...
End of exposition.

Hey, I heard a Gameboy Advance game jam just started and ends in June, maybe I'll enter something...


May 2021

Wow, a month has gone by, and I haven't started working on anything. I should really think about getting started soon...


June 2021

Two months have passed and I haven't done anything for the gba game jam. I guess I probably won't enter anything...


June 12, 2021

Oh wait, I have a cool idea! Hmm... less than three weeks left.


June 31, 2021

Somehow I actually made something! The original release had no sound, but has a strong resemblance to the finished game. I wish I could describe my thought process as I was working on Skyland, but development was such a blur, and years later, none of the details are fresh in my head anymore. I wanted to develop an FTL-like game for the gba, and spent a lot of time thinking of how I could design a control scheme for an RTS game around a device with a small number of buttons and no mouse.
To make a game of this complexity in such a short time, I cut a lot of corners. I started by forking the C++ codebase from Blind Jump portable, a game that I'd made a year prior. Then I overhauled the embedded lisp interpreter to add some features that I thought I'd want. I spent two frantic weeks developing the engine for Skyland, budgeted a few days for scripting the level scenarios. I worked right up to the deadline, and added the flak-gun weapon just an hour or so before the submission deadline.

In hindsight, I should have cleaned up the code at this point. But I decided to take a break for a while, and didn't think I'd be adding much else.


July 20, 2021

I had an idea for a feature allowing players to draw custom flag graphics for their islands, and published a release with the new functionality. Up to this point, the releases had mostly been bugfixes.
Players were confused by the gameplay when given no introduction, so I also implemented a simple tutorial player based on keylogging. I would script levels, play them, and dump the keypresses to sram as lisp data. Then I would copy-paste the keylog into tutorial scripts and replay the key presses.


August 8, 2021

While playing Skyland, I often found myself wanting to speed up or slow down the gameplay, and published a new release with gamespeed controls.


September 21, 2021

I added some music to the title screen. Otherwise, mostly bugfixes up to this point. release


January 2, 2022

I added deployable robotic drones to Skyland, thinking that they would add interesting strategic possibilities. release


November 2, 2022

Initial beta release! I spent hundreds of hours polishing Skyland and adding features, including time rewinding code, lots of new weapons, quests, webserver integration (aka this website), improved dialog, and so many other things. I also adjusted the world map to make the game less linear. At this point, the game finally had sound effects!
I put so much effort into the game thinking I would sell physical copies, but my efforts to sell Skyland kept falling through. Ah well, that's life. From this point on, development mostly continues for my own amusement.


February 14, 2023

After improving the gameplay and controls some more, I started to work on adding more illustrations to the game, to create a greater feeling of imersion for players. Namely, I added collectible cartridges hidden throughout the levels, most of them containing depictions of the game world.


February 15, 2023

I introduced two new weapons, the incinerator and the beam-gun. These extra powerful cannons were not intended to be constructible, with players having to purchase them or find them in adventure mode. The idea being that randomly-occuring powerful weapons would add fun variablity to the gameplay.


May 14, 2023

I added a targetting minimap to the weapon target selection interface. I wish that I'd thought of this much earlier, because when you have two giant islands that don't fit onscreen, you often have a hard time visualizing the full trajectory of a projectile.


May 28, 2023

I finally got around to adding a feature that I'd been thinking about for over a year, the adventure-log. Your crew records events in your logbook, and the game displays the logbook upon loading a save file and when beating the game.



June 29, 2023

Development continues! I added lots of stuff, but it'd take too long to describe all of the changes. Have I mentioned that you can read a detailed description of each release on the game's github page? See here :)



August 1, 2023

Some blocks, like factories, power-cores, and ladders/stairwells can now be upgraded from the game's select menu (allowing you to upgrade a workshop to a manufactory, for example).



August 7, 2023

Door blocks updated to open/close automatically when your crewmembers walk through them.



November 4, 2023

I adjusted the dialog choice selection, so that level scripts offer you more interesting choices than simply yes/no.