Adventures of an Indie Game Creator 9: Porting a finished game to multiple platforms in Unity

The Dreamlands: Aisling’s Quest was released on Steam in April this year, and then on the PS4 and PS Vita in August. It was a somewhat long journey and now it’s over. So, how did it go?

After finishing the game, I had to deal with the launch, setting up the Steam builds and also making it available on my website and on another platform called itch.io. Unfortunately, after launch I had to deal with post-launch bugs and fixes.

After doing that, I worked on porting the game to the PS4 and PS Vita.

When I began working on the game, one of my goals was to make a game that didn’t require a lot of work to port to other platforms, but that doesn’t mean porting to other platforms was “as easy as clicking a button” as some like to put it.

Truth be told, Unity, my engine of choice, lets you export to almost any platform, but I still had to deal with porting issues (from some shaders not being compatible to a completely different control scheme since the original game was controlled with a mouse).

The PS4 can run the game with no problem (other than having to fix some shaders), so I didn’t need to work too much on optimizing the game.

On top of that, making it run at 4K for the PS4 Pro was not very difficult either.

I’d say the most challenging part was to make the game work on a controller rather than a mouse.

However, rather than reinventing a way to control the game, I opted to check how similar games have solved this issue, so I downloaded a demo of a game that controls exactly like mine.

On top of that, since I like to give people options, I also decided to let people choose if they wanted to use the DualShock 4 touchpad or the 2 joysticks.

Changing the controller also meant changing the UI to fit said control scheme. That way, rather than moving a cursor to select UI buttons, I mapped them to the different controller buttons.

However, the biggest challenge was working on the PS Vita. The Vita is a really nice machine, but it’s honestly not the most powerful handheld, and making even this simple game was a challenge. On the other hand, switching from a mouse control to a touchscreen was not a problem at all.

Making the game run on the PS Vita required a lot of work to the point it almost meant rebuilding the entire game, and even that was barely enough to make it run (it runs at 25-30 frames per second).

Some of the tricks I ended up using were 2D cards for the trees and some characters, reducing the number of textures (on top of reducing the texture size), and using really simple materials for everything.

Porting the game to those consoles took me around two months, plus a few more weeks for certification and fixing bugs that were found during that period of time.

As a solo developer, I think it was a really good idea to get started on PlayStation development with a simple game rather than something more complex.

Game development is hard and working on extra platforms makes it even harder, especially because every platform has its own quirks and may require changes in one way or another.

Another thing I learned was that I should account for around three more months for post-launch and porting after the game is ready.

This is important because there’s a chance you will find yourself with limited time to make a game, and you will need that extra time to make bug fixes and port the game to other platforms. Even something as simple as “porting to mobile” requires time. For this reason, possible ports should be considered from day one. This way, you minimize the amount of work you will need to remake when you’re porting to certain platforms.

Lastly, I also learned that being a solo indie can be done, but you have to work smart and limit the scope of the games you want to make. By doing this, not only the games take less time to develop, but are also easier to port.

Right now I am already working on a new game, and I am aiming that game to release in February 2019. I’m pretty sure I can do that since I’ve learned a lot from this project, and all that knowledge can be applied to my future projects.