top of page
event_header.png
What Did I Do?

Legend of Sir Lukoss.

Student Game Award

  • Short Form Game of the Year

  • Excellence in Game Mechanics

Team Level & Technical Designer

Key Responsibilities.

Prototyped Boss Fight Level & Designed Level 3

  • Designed and scripted boss fight level

  • Co-designed and iterated level 3 from concept to shippable quality

  • Provided technical support for team's level designers

  • Worked on the game's Chinese localization

  • Decorated level aesthetics to launch quality

Project Info.

Project Information.

Game Summary.

Kneedle Knight is a 3D third-person platformer featuring sewing magic fabric to switch dimensions between 2D and 3D worlds.

In this game, the player will act as a mouse knight, Sir Lukoss the Small, and complete his grand trek of saving his people from polymorph curses by an evil witch.

Engine: Unreal 5
Available on: Steam, Epic
Work Time: Aug 31, 2023 - Dec 11, 2023 (3 hours per workday)
Team Size: 22 people

Play Time: 30+ minutes
Features:

  • 3D platforming

  • Dimension Switching

  • Medieval Fantasy

Design Process.

Responsibility.

Responsibilities.

Boss Fight Prototype

Designed and scripted a boss fight prototype

Designed and iterated the final level of the game

Level Design 

Level
Aesthetics

Applied assets to level for final launch quality

Level Showcase.

#1 Boss Fight Prototype.

Boss Fight Logic.drawio.png

Boss Fight Prototype - In the 1st pass of the gameplay prototype, I was assigned by the team to create a boss fight arena containing the following parameters:

  • Contains two skills testing all the player's skills

  • Arena shifting based on the boss's health

  • Emphasize the feeling of fighting against the giant enemy

Flow Chart - After presenting my design ideas to team leads, I made this flow chart to demonstrate the boss fight logic.

The boss fight's core is picking up cheese. Whenever the player picks up 3 cheeses, the boss will become weak, and the player can damage her after finishing a platforming challenges (Arena Shift)

Boss Fight Chart.png

Class Diagram—After confirming what APIs I needed for the boss fight, I quickly designed this class diagram to help me organize the boss's finite state machine (FSM).

The flow includes:

  • a "Factory Function"—to initialize all objects in the boss fight arena

  • a virtual class of "Enhancer" including all interactive game objects that can affect gameplay

  • an enumeration to specific the boss state in FSM

Enum.png

Using Interface—After talking to the programming teams, we reached a consensus on how we would coordinate future work. In the later development life cycle, I would require and receive blueprint interfaces providing events or functions. I would use them to script all functionalities in the boss fight.

image.png

Initialization—When the level is loaded, it will spawn all the game objects and the boss and set the boss to the Default State (Casting Fire Ball). Whenever there is a function call of "Change State," the state machine will be updated according to the input enum parameter. 

Casting Fireball—The boss's basic action is casting fireballs. Before bringing in the boss's skeleton animation, I simply used a "while" loop to spawn fireballs until the state changed. With a timeline, I created a charging animation to allow the player to react and prepare. 

Casting Fire Nova — Casting Fire Nova follows a similar logic as casting fireballs. Whenever the player picks up a cheese, the boss's following action is casting a fire nova that:

  • will spread out the whole arena from the projectile hit points to give the player's time to take reactions 

  • was modeled by myself becasue the art team is busy with proxies for main levels

Spike Trap Arena—The top blueprint includes invoking Spike Trap Arena and spawning Spike Traps. To complete this feature agilely, I hard-coded this function using array lists. I also hard-coded the spawning animation so that the player can have time to react.

Random-spawned Cheeses— Whenever the boss recovers from the Exhaust state, new cheeses will be respawned for the player. I scripted a "CheeseSpawnPoint" blueprint actor and a "CheeseSpawner" blueprint actor to randomly generate the next cheeses at the spots picked by the designer. 

image_edited.png

To help other designers quickly test the boss fight with different parameters, I prepared and visualized many customizable variables in the Details. It allowed changes in health points, projectile spawning delay, projectile flying speed, cheese amount, etc.

Demo.

Skill 1: Casting Fireball to the player

#2 Level Design.

Unfortunately, our team lost one level designer during development. The Boss Fight arena was cut because the team needed more people to work on the main levels, and the art teams were overloaded.

As a result, I became responsible for the game's last level - Alchemy Laboratory, with another level designer.

design_draft_crop.jpg

After choosing Alchemy Laboratory as the level theme, I pivoted the design logic around it and quickly created a draft of the general flow of the level—the little rat will start from a bookshelf and climb to its top, where he will descend to the alchemy table. 

3 layer layout_annoted.jpg

A bookshelf level layout design concept

Design challenges: I assigned two design challenges to myself in the initial blueprint of the level. They are:

  1. Make a level in which three layers are stacked one above another​​

  2. Use the roof of the second layer as the level space on the top layer

20240102143640_1.jpg

Common layout design in 2D platformers. But it works bad in our 3D platformer according to feedback

Wow moments and design issues - While resolving design issues, I creatively transformed the following design issues into wow moments that could bring extra fun for the player:

  1. Verticality between two layers 

  2. Falling to lower levels caused great frustration

  3. The level needs a cool ending while providing shortcuts to reduce frustration 

#3 Level Aesthetics.

Looked for prop assets references
art reference.png

Gather art references and submit for art team's approval

Decorate a bookshelf - Because of the lack of artists, decorating a bookshelf with limited art assets created great challenges for me. However, I managed to decorate a bookshelf that is aesthetically pleasing and free from repetitiveness by:

  • Implement more color variation, but use it carefully so that it doesn't overwhelm the player

  • Innovatively decorated the levels with assets from other levels

  • Used assets with consistent color to imply the level flow

Postmortem.

Postmortem.

What Went Well?

  • Team collaboration works awesome​​

    • Team's level designers, artists, and programmers worked together in an organic way

    • We didn't meet any teamwork crisis that might hurt the project​

  • My initial design concept is achieved

    • The initial idea of making a level on a bookshelf with 3 layers is achieved​

  • Decorated the level with limited assets​

    • We only have 4 artists working on assets and we managed to decorate three distinctive levels with very limited assets​

What Went
Wrong?

  • I incorrectly conceptualized the game as a hardcore platformer, which made my level too hard to finish

    • It later cost me additional time to adjust the level layout to make it easier

  • The communication with level artists about decoration was missed

    • ​A pass of decoration from level artists almost ruined the level flow

  • Forgot to follow up the implementation of the level concept

    • After splitting tasks, my partner and I worked individually. It resulted in the two parts from him and me were hard to joint together​​​​​​

What I
Learned?

  • A game concept should be based on target audiences instead of on ​what other games in the same genre did

    • A platform doesn't have to be hardcore and its challenges don't need to always come from platforming

  • If multiple people are working on the same level, it is better to spend additional time keeping eyes on each other work to make sure all partners are in the same scope of what we are going to complete

  • While challenging myself in level design, it's never a bad choice to revert what have been done to make the player feels better to my level​​​​​​​​

Gallery.

Gallery.

Huzzah Studio Team

huzzah.gif
bottom of page