We’re back, hope you all had a great holiday! It’s been a while since our last Devblog, so naturally we have a huge amount of progress to talk about and something new for you to play around with.
Cabinet Materials (Petur & Rob)
While the Arcade prototype is still in an early stage of development, we’re very fortunate to be able to get a sense of how the finished product could look thanks to Petur’s artistic talent. He’s recently refined the cabinet model he constructed for us a little while ago, and provided albedo, specular, occlusion and emission maps for Unity 5’s standard material system. James also extended the standard shader with an improved version of his screen reflection technology.
Rob produced a set of livery stickers from his Mazing cabinet concepts to apply to the albedo map, which is something we intend to allow players to do with their own custom art. Also of note is that the button and joystick models can support individual animations, which we will eventually implement and synchronise with player input.
Room Editor Prototype (Layla)
I’ve been working on the room editor I talked about a few devblogs ago. Instead of having prebuilt arcade maps, we want to allow people to design every part of their arcade to make it unique.
I wanted the editor to be easy to use but allow for any kind of room shape. It works by extruding edges of walls to define the shape, then each room can be snapped together and linked together by doors.
The geometry is built as you edit, we can then take the room data and build an even more detailed mesh for when you’re playing the game.
Player & Editor Concepts (Rob)
Rob has been exploring art directions for the Arcade, and in particular the idea that the Arcade is within a virtual reality. Along with that he’s been thinking about player character customisation using items exchanged for coins won from cabinets.
He’s applied this 80s sci-fi VR inspired aesthetic to Layla’s room editor prototype too:
Block Party (Ryleigh)
I made an arcade game called Block Party that I’m pretty happy with. You move a little platformer-person around, trying to push the sides of 5 different blocks while avoiding being crushed. Once you’ve pushed all 4 sides on a block it changes to its next phase and becomes more dangerous in a unique way. If you get all blocks to their 3rd phase, you win.
I like the level of challenge I ended up with – the goal is obvious and seemingly very accessible, but I haven’t yet been able to beat it.
Arcade Website (James)
Our first few releases of the Budget Boy Development Kit had a few problems related to embedding games you were working on in the forums using the Unity web player. The first was that we only distributed a single embeddable player which would be updated with the latest version of the game creation API, so projects built using deprecated stuff from older versions of the API would break each time we rolled an update. Another problem was with having to upload the games you wanted to share to third party file hosting sites, which usually couldn’t be directly accessed by the web player due to Unity’s security rules. As a temporary workaround we used a proxy server, which was pretty wasteful.
With those problems in mind I’ve redesigned our distribution system and set up a website for you to upload your games to. The particular version of the API you used will be recorded for each game you upload, so future changes to the API will no longer break older games. You can also use it to browse games other people have uploaded, and later on I hope to add things like game tagging, rating and commenting. Games are now embedded on the forums in a slightly different way now too, by using the embed code on the Play page for your uploaded game. This embed code will remain the same after updating your game. You can check it out below:
This will probably be where other user generated content will be uploaded, managed and browsed, unless we use a third party solution later down the line.
Please let us know if you encounter any bugs with the website or new versions of the BBDK using our issue tracker on GitHub: