Porting Teleporter - Day 0

Check out all “Porting Teleporter” posts!

Brief Introduction

As you may have seen, I have a game in my projects tab called Teleporter, that I developed all the way back in 2015 with 2 friends. We programmed the game in Lua using the old CoronaSDK, and I believe our files were hosted in our Corona accounts. However, this project has become opensource, under the name Solar2D, and I can’t seem to find a way of getting the source code back. This is a bit troublesome, since I had the objective of reworking the code base to remove the ads and porting the game to the new engine, in order to provide an APK that can be enjoyed in modern phones.

Scavenger Hunt

Until very recently, I was under the impression that I didn’t even have a copy of the latest APK that we had provided in the Google Play Store and in the Aptoide Store. However I managed to find a copy in one of my backups at the time. That made me think that maybe I could retrieve the source code from a backup as well. Unfortunately, that task was significantly harder than I had anticipated.

The only copy of the source code that I managed to find was tagged with “v2.4” and was stored in a dropbox account that I hadn’t accessed in more than 8 years. I got very excited and got to work.

It Works??

I checked the github repository for a linux build of the Simulator Console, but I only managed to find a snap version. I have a very particular opinion regarding snaps that I do not wish to dwell into right now. Thankfully, a kind soul (HatsuSixty) provided a simple PKGBUILD in AUR to download, extract and install the snap automatically, and I used just that.

The next step was to fire up Solar2D and open the game files.

A screenshot of Solar 2D “Select Project” window. The file “game.lua”, from the teleporter directory is selected.

It works! But…

Screenshot from the main menu of the source code tagged with “v2.4”

It looks very wrong. Compared to the latest APK I have, installed on my current phone, it’s very different.

Screenshot from the main menu of the latest APK"

Also, only the game mechanics were implemented on v2.4, none of the menus had anything in them and just led to a black screen.

Screenshot from one of the blank submenus of the source code tagged with “v2.4”

On the latest APK, all menus were properly implemented. As an example, here is the shop menu:

Screenshot from the shop menu of the latest APK"

Planning the Future

I remembered that an APK is just a big zip file, so I decided to extract the latest version to see what I could salvage. And would you look at that! I got all of the assets!

Screenshot from the directory containing the assets extracted from the latest apk I managed to find

This means I can go ahead and start from the code of this version “v2.4” and add the assets and the menus. This would probably be enough to complete most of the work and bring the codebase back to par with the latest APK I have. Another thing I remember having in the game, that I can’t find in the code, are google play achievements. I can’t remember how I implemented them 9 years ago, but I’m sure I can figure it out.

Bottom line, I think I have enough codebase, and using the assets from the APK, I will be able to rebuild a final version of this game that I can share for everyone to enjoy on newer android devices. However, I will not be opensourcing the code, because I lost contact with the other 2 developers. If, eventually, I reconnect with them, I will ask them for permission to open source Teleporter.

That’s all for now.