itch.io is community of indie game creators and players

Devlogs

Postmortem

Penelope goes to the Unity Museum
A downloadable game for Windows

In this post, I will go over the production of my Unity 20th Anniversary Game Jam entry. Since voting is about to close, I figured this would be a great time to post this.

I first found out about the jam from the Unity subreddit. Upon looking at the homepage, I decided to give it a shot. What interested me the most was the sub-contest where a variety of classic Unity assets were updated and given out to use in the entries.

Immediately, the assets reminded me of the flat shaded unlit 3D PC games from the 2000s, like Toontown Online. I decided to go with that kind of artstyle to set my game apart from other retro aesthetics and to give a more appropriate and accurate representation of what the assets were meant to look like when they were made years ago.

A screenshot from Toontown Online.

The idea of the game flew into my head upon considering the name of the game jam; since it was the 20th anniversary of Unity’s initial release and the contest was about using classic assets, I thought it would be interesting to make my entry a retrospective. This reminded me of another game that I remember: “Bubsy Visits the James Turrell Retrospective”. This game presented itself as a fan tribute to Bubsy and art, only to twist it into a satirical horror experience. This inspired me to try to make my own version.

Going through the assets, I decided on using Penelope as my character. Since her model was low-poly and meant for very weak hardware (early iDevices), it fitted the style that I wanted to make the game under.

I wrote up a simple GDD just before the start of the jam to outline what I want to do and to avoid going overboard with the 48-hour limit. I left some vagueness to shoehorn the theme when it was announced. Thankfully the theme (Timeless), I felt was a good match for my game overall, so it wasn’t a problem.

The beginning sections of the GDD.

I worked on the levels a little bit at a time. I had their layouts done on Google Drawings, so it was simple to recreate in Unity. Since it was simplest, I finished the layout of Level 5 first. The longest level in terms of length to complete was hands-down Level 4 (the Dragon boss fight).

Level 4's Google Drawing

While I am on the topic of Level 4, the Unity 1.x dragon was chosen as… ok, be honest, they are very goofy. I used the obscure concept of “foreshadowing” to surprise the player: notice how the dragon isn’t a part of the 1.x assets in the museum…

It's da dragon. (Taken while in development)

Level 2 (the museum)’s overall layout was done pretty early on, but it wasn’t until the final hours that I decorated it. By some luck, I managed to fill the museum to the fullest using the designs I had drawn out just before the jam started. I used Archive.org snapshots of Unity’s website to detail its history up to the early 2010s.

Almost all of the game’s visuals were flat shaded (using legacy shaders) and all levels had no lights whatsoever. The only expectation to this rule was the dragon’s gloves, as they wouldn’t have had much depth otherwise. For some effects (like the static effect when Penelope burns and the rainbow plane), custom shaders were written. Honestly, I had some of the most fun in the whole project coming up with all of the different shader effects

The static-y fire image is using a custom shader for example.

A regret I had was that I wished I could have downscaled some textures to be more low res to really sell the retro style a little more. I wasn’t able to do this since due to the time limit, I was mostly trying to get the game to work without going off course over polishing the graphics to be 100% accurate.

For the music, I decided for the first few levels to use MIDI renditions of public domain or royalty free music. This was inspired mainly by Toontown Online. Once the game becomes twisted in Level 3, actual audio recordings are used to illustrate this sudden shift. The music in Level 4 is a remix from a V.Smile game, “Smart Keyboard”. I thought it was catchy and sounded climatic. 

(Song is at 8:11 on the video above)

Once I had transcripted a MIDI of the song, I used FL Studio to assign instruments and render it out to an audio file. I considered using the MIDI I used outright to fit with the rest of the tracks, but the rendered version sounded more energetic and epic that I used it instead.

The voice acting of Penelope and the dragon was done by me and was almost entirely improvised. I loved how these turned out and contributed to the humor of the game.

I used the Asset Store, places like Sketchfab, or my own dumps of royalty free sound/music libraries to acquire other art/audio assets that I needed. Aside from that, I didn’t really use much programming/utility assets, say for three: First up is Asset Inventory. This indexes asset store purchases and other files on your computer into a database. Basically it’s Spotlight for Unity, very useful for finding art assets. It also has a packages window that is WAY better then the Unity Package Manager. Next, DOTween was used for some of the cutscenes. My first game engine was Panda3D which used a sequence system and lerps. As such, I felt at home with DOTween, using it for code-based and/or more simple animations (Other more complex animations were either made with Blender or Unity’s Animation window). The second utility asset I used was SOAP. This is one of my favorite assets of all time, it allows you to use ScriptableObjects as function pointers or persistent data. It makes development way easier on your soul and it nearly eliminates “instance not found” errors. I highly recommend trying these assets. 

To add to the element of this being a forgotten early Unity game, I decided to reimplement the early “Powered by Unity” splash screen. I got the scripts from extracting an install of Unity 3, and then recreated the assets via Unity’s UI system. Definitely gives the amateur feel of 2013 amiright?

POV: the early 2010s are calling you.

The final product has shown me a few elements I really want to explore more in the future. 

I really loved designing a game around a retro artstyle; I have always loved unique artstyles, but getting to implement them for a game really showcased the efficiency of a style like that. I can say this: without the unlit artstyle, my game probably would have looked more generic and had less quantity to it.

Me editing an Asset Store texture for my own purposes...

Another aspect I liked in the final product was the twisted horror element. I always loved horror games like FNAF which had pioneered the (insert kids thing but it’s spooky) trope, but I can admit that at times it can feel like once you played some like Toytopia, you played every Banban game. However, I think that there is A LOT of potential that is untapped outside of kids mascot characters. I felt like the inspiration taken from Arcane Kids really helped my game be more about meta humor than “Explore this abandoned factory and get chased by a character that had deep lore that it was misunderstood (also plz buy our merch)”. I recommend that you check their games out if you are interested in more of the same style. (Warning: without spoiling too much, games like Sonic Dreams Collections are on the NSFW side at times)

(Update: I just re-remembered that Ben Esposito, who contributed the most to the Arcane Kids games also made Tattletail, considered one of the first mascot horror games. So check that out as well if you want more of the same style.)

Finally, the use of premade assets really helped speed things up some. Basically all of the art assets I sourced on the Asset Store or found online, and if necessary, modified. Considering the deadline, I didn’t feel like it was really worth it to model much, if at all. Of course, it’s not really a great idea to rely on other people’s assets if your game making skills aren’t great (we have a term in this community and it’s called asset flips), but using the Asset Store I feel put more focus on the game programming side then trying to waste time on figuring out a good design that doesn’t want to make everyone want to bleach their eyeballs out.

Overall, I am very happy with how my entry turned out, and it has given me a lot of ideas on approaches to game dev that I only have considered as brief ideas. I like to thank everyone who has enjoyed it, you rock!

Addendum:

As I am editing this, this game has won 3rd place in the "Most Creative Use of Unity Anniversary Assets" category. I am honored to get that title, but even if I hadn't won, I still very much enjoyed the jam and I hope to continue my momentum toward new games/projects. Thank you everyone once again for playing my entry!

Oh, and a bug fix is coming for restarting level 4 if you fall off the plane. Oops.

Download Penelope goes to the Unity Museum
Leave a comment