Pre-feedback level design implementation
Date: 14.04. 2025
Activity:
- Implemented (my own) one-page level design from Project A as one level (scene) with Unity's 2D Game Kit
Notes:
For this year's Project B, it was decided we would be implementing our own Project A designs. Thankfully, my design was well thought out, with few gameplay elements that required additional scripting besides what is provided by the 2D Game Kit. Additionally, the long-distance scale dependencies turned out not to be an issue even though I documented that I thought it might be before I started working on the level, so doing scales of elements relative to nearby elements in the design was potentially a good choice. All of this resulted in a relatively straightforward implementation with few deviations from the original design (documented below). I spent the most time on implementing the double jump mechanic. Even though it sounded relatively simple, I had to study and appropriately modify the PlayerCharacter.cs script to achieve it, and the main problem was that it was designed without the support for this feature and that many other scripts depend on it, so any change inside of it had other consequences. I managed to get it working in the editor in the end, but the final playable build has a bug where the player can always jump one more time than they should be able to (single->double and double->triple jump). This is the biggest flaw of the current version of the level and the main thing I am looking to find the answer to from the professor during the feedback class. Apart from this, the smaller issues present in the build but not editor, are the acid fluid mesh texture not rendering (pink texture blob in the build), and the player clipping into invisible obstacles meant to stop certain blocks but explicitly not interact with the player layer. As for how the level itself turned out, I am happy. I wrote in my Project A devlogs that it was designed to be challenging, but I misjudged certain elements (mainly how difficult jumps from/to one block surfaces/gaps) would be, which made it pretty brutal. There are tight timings and low margins for landing jumps, punishing damage knockback, hitting your head on elements above, tricky placement of guardian enemies, etc. The only major flaw of the design itself was that the dropdown from the above ground and underground part of the level can not be examined before jumping down, at which point there is a 90% chance of being unfairly hit because a spike and enemy are waiting. This can not be fixed by decreasing the player character camera zoom, as the amount would make the experience of playing really bad in all other situations, so I had to leave that as-is so as not to deviate from the design. This is the result of making the first underground section have a tall ceiling so that the 10 block double jumps would be possible (this was explicitly marked as questionable on the design because I ran out of vertical space on the A3 paper when making it, just that this consequence was unforeseen). The goal for the level design was a playtime of 3 minutes, from my perspective (do not like, and not good at platformers), I estimate it would take someone playing for the first time 5-8 minutes to finish it, but I didn't have anybody playtest it yet. I managed to "speedrun" it in ~1:20, and I think it is the most fun when playing it to get the best possible time! The following is the list of minor deviations from the design, note that whenever some specific detail of an object wasn't specified in the design (never except walking and shooting range of enemies), I just used the default values (e.g., speed of moving platforms).
List of patches made and details added to the original design:
- Fixed impossible acid lake jump by moving the dividing column one block up
- Fixed possibility of softlocking in the final mini puzzle segment where movable blocks are being pushed, by adding invisible obstacles that interact only with them (since it is my design I know this was the intention, but I forgot to highlight it in the design, so I am counting it as technically a deviation from the design document)
- Added flavor text when entering certain sections or picking up certain items for clarity/pointing the player what to do next (I hope this is ok, I count it as a cosmetic change since we were told that adding details to the environment and such is ok since the design document shouldn't have this anyway)
- Added non-interactable environment sprite of a teleporter that displays a dialogue box "I did it!!" to signify the end of the level
Invested hours:
- Level implementation: 5h
Outcome:
Pre-feedback version of the implemented level, available as an HTML embedded WebGL version (attached also build .zip)
Files
Get Project B
Project B
mff-gdintro-2025-b
Status | Released |
Author | lekib |
Genre | Platformer |
More posts
- Project B pitch presentation1 day ago
- Final Project B level design implementation4 days ago
Leave a comment
Log in with itch.io to leave a comment.