Devlog 2 - Be there or B²


Another week has gone by alarmingly fast, and I've once again remembered I've gotta write one of these. So let's talk level design, eh? Yeah I'll admit, the title doesn't really fit this devlog well, but I came up with the pun... and I couldn't resist.

Here's the thing though: this is a puzzle platformer, and puzzles are next week's topic. Designing puzzle levels without puzzles is, to put it lightly, impossible. Instead, let's talk about the code I've written to make level design a whole lot easier!

CAMERA:

One of the most important things to decide when making any 2D game, is how the camera will work, and depending on what you choose, it can change the entire feel and look of the game. Due to the limited colour, Gameboy-style sprites, I've gone with Unity's Pixel Perfect Camera. The style of the game isn't very relevant this week, but the PPC is. Due to how Unity programmed the PPC, it doesn't like moving by increments that aren't a power of 2. So the camera will have to be fairly static.

Long story short, I've decided to go for some hybrid between Celeste and VVVVVV's cameras. Celeste's camera quickly scrolls between rooms when transitioning from one room to another. VVVVVV's camera is grid based, meaning each room is exactly one camera width wide, and one camera height tall, and it snaps to the nearest grid position.

Works like a charm!

ROOMS:

As mentioned above, I've gone with a room based approach for level design. This gives me lenience with how I design puzzles, but also applies constraints so that rooms don't get too out of control. Granted, a static camera also heavily influenced this choice. Arguably, the most difficult thing about designing levels so far is making sure each room is the same size, which was giving me a lot of trouble recently. To combat this minor pothole, I updated the camera script to show a grid that shows where each room is, to a desired size.

Normally, this is the moment where the music intensity peaks... too bad I haven't added sound yet!

BUGS:

Once again, the bugs persist. Most of the bugs popped up during development, such as a peculiar glitch which caused the player to gracefully arc through the air.  Another bug, albeit less satisfying, caused weird jittering and rotation changes. The bug that I didn't catch that was brought to my attention, was a issue where if the player landed right on the edge of a platform, the game would not detect it, and the player would freeze in place, forever in the airborne state. After some janky boxcast and collision changes, this was now fixed.

[Dramatic re-enactment depicted above, 2023] No Players were harmed in the making of this GIF.

Aaaand that pretty much wraps up this week. Until I implement puzzles, the level design is... near impossible to make. But next week, these devlogs will probably get far more interesting.

Leave a comment

Log in with itch.io to leave a comment.