Translating the Old into the New

Ok, so first of all, I know I said I was going to do a ‘Level Design 101’ type thing last week, but i’m not going to do that now.

But that is still coming!

However, in the last week, a new task came up, so I was working on that instead.

I’ve spoken about how our programmers have been reworking all of our code base to make it neater and cleaner and run better, well that’s basically done now. Or at least, it’s at the point where we need some sort of game to play to see how it is working and what is needed to fix it up.

And to do that, we need some levels. Of course, we have a whole bunch of levels that we’ve built and tested and refined that made up the demo that we completed last year. But due to all of the changes that have been made, those levels won’t work within the new code base, so we need to think about how we’re going to translate them into the new setup.

And that’s what I’ve been doing.

There were a couple of potential ways to do this. Unity has the ability to package up a bunch of assets into a pack and export/import them into a game project. I tried this first and ended up with what you see here:

Now you might not be able to tell, but there are a couple of things missing from that picture. This is what it previously looked like…

So that option appears to be off the table. Or at least, to be so much additional work to be not worth it.

Second option was: rebuild the whole level from scratch. This sounds like a pain in the arse, but it isn’t quite that bad. I already had a blueprint of exactly how the level would work, and all I had to do was replicate it. In fact, I managed to get most of the architecture done in about an hour.

Here’s a quick look at the build process:

Baring in mind this is our simplest level. So others take a bit longer, but this was still less time than I had feared it would take.

And after I was done, one of the other team members took over and replaced those level pieces with our new tile mapping. This builds the level out of a single piece, rather than dropping blocks into place as we have been doing. Once they were done it looked like this:

And now it’s in a position to test out all our new code. We’ll still need a couple more levels so that we can test everything, as there are a lot of interactions that aren’t in this level, and we also want to try out our level transitions and persistent game elements that should last between levels. Clearly there’s still a bit of work to do making the levels look pretty and fitting in all the special effects, but we’re at least at the point where we can test the game play again.

If all goes according to plan (stop laughing) we should have a rebuild of our original demo in the next couple of weeks. And from there we can start building in new levels and restart testing everything!