
THE BANQUET BELOW
Epic Mega Jam Entry 2022
SUMMARY
The Banquet Below was created by a team of five developers as a submission to the Epic Mega Jam 2022 event that lasted for seven days, and had to fit an announced theme.
As with many of the game jams I participate in, my primary role was being a technical designer. I worked closely with my team members to plan, implement the games core features and match the agreed upon design specifications as best as possible.
The game has the player play as a passenger on an eerily empty ship and must solve puzzles to advance forward in search for answers.
Theme : "As above, so below"
Download link : https://radsy.itch.io/the-banquet-below
DESIGN
The type of game was decided upon as a group whom shared a fondness for puzzle games such as "The Room" and "Escape Academy". The aim was to deliver an escape room style game and have the environment contain a subtle Lovecraftian setting to create unease.
​
Mechanic/Puzzle designs:
Environmental timer; As the player heads further into the ship, water rises and acts a timer to create a feeling of urgency as the ship is capsizing.
Goblet Switch puzzle; Rotating wooden panels embedded into a table that are triggered by lifting goblets on the table. Environmental clues are given to the player by the way the goblets have been placed precisely and the mural on the ceiling above.
Rotating building blocks puzzle; A built in wall statue of four town buildings that rotate when interacted and must match the 'burned down' variation underneath. The player can interact with a switch on the wall to see the clue more closely.
Picture placement with poem puzzle; A poem is provided to the player and they must arrange the pictures in the right order. Among those pictures are red herrings to provide a slight difficulty increase.
Playing cards puzzle; A note is given to the player where they must spell the missing word according to the poker scores on the board. They must then find the bunks of those players to find the card suite engraved on their bunks to arrange the cards correctly.
Rotating sun plate puzzle; A multi-layered circular plate the player can interact with which rotates to certain positions. The player is provided with a clue that is placed in the environment.
Rotating star plate puzzle; Large horizontally placed plates with star constellation cut into them, the player is required to rotate them so light can shine through to match the star constellation on the floor. The player is provided with a clearer view of the goal via environmental elevation in the form of small stairs by the puzzle.




MY RESPONSIBILITIES
Production:
Task management within the team via the use of Trello.
Development assessment and technical feasibility.
Deadline management.
Hosting daily syncs.
​
Development
Implementing the puzzle logic according to the design provided and coordinating with the artist/sound designer on its implementation to bring it all together. A total of 7 puzzles.
Design adaptations.
Checkpoint system.
Game over/ Respawn states.
Implementing player character movement and interaction.​
Door unlock upon puzzle completion.
Ending cinematic camera capture through use of control rigs and editing.
Optimization
Bug fixing.
​
UI
Main menu/End game UX and UI.
Game over state message and fade animations.
PLAYING CARDS PUZZLE IMPLEMENTATION
The playing cards puzzle consisted of primarily two type of actors; a pawn (acting as a manager) and standard actor (card slots). One manager is placed in the level that handles the card interaction via line tracing, win condition checks, and player pawn possession. The card slots are placed into the world and their default card can be set through use of a public enum variable, the construct script would then update their mesh accordingly.
​
With the use of public actor referencing the manager and card slots are able to communicate with each other. Each time the player clicks on a card, it is held in an array and if it is greater than 0 when clicking on another card it will switch the card type around and set their enum variable. After each switch the manager would then run a for loop with break to check if the current array of arranged card matches the pre-set win state array order, breaking the array upon non-matching enum.

The manager event graph containing possession logic and card interaction line trace.

The win condition check function through use of enum array comparisons.

Card slot actor event graph where upon clicked, checks if the managers held card is "empty" if not then hold, otherwise switch with the card held between the two slots then check win condition.

The manager event graph containing possession logic and card interaction line trace.
END SEQUENCE CINEMATIC
The cinematic sequence was one of the last parts of the game to be implemented as our focus was primarily on building a functioning game.
Due to time constraints I used a simple Camera Rig Rail actor paired with a standard camera to control the horizontal movement. I then manually rotated the camera (which was then edited via keyframes to smoothen out) as the character looked around and added a subtle screen shake to create the effect of the ship being in distress.
The artist created two types of tentacles (One static and one skeletally rigged with animation) and I edited their world transform by scrubbing through the timeline and adding keyframes. I was able to control the timing of when the rigged tentacle hit the character this way also and trigger the game ending functions.

A simple trigger box which triggered a "Set view target with blend" for a smooth transition to the cinematic camera and begin the sequence.

The tentacles placed in world space.

The cinematic sequencer timeline with keyframes for actors, audio and event functions placed.

A simple trigger box which triggered a "Set view target with blend" for a smooth transition to the cinematic camera and begin the sequence.
POSTMORTEM
This game jam submission was a fun challenge for me as I had never really created as many puzzles as I did here in a short period of time. I took a risk in attempting it and was happy with how it turned out.
​
The third puzzle was meant to involve a set of dices to be rolled and sorted in order, however it was a technical challenge to implement with getting physics right and from a design perspective did not seem to play well when I attempted it.
We initially wanted to reward players with keys to unlock the doors but cut it due to the lack of use with having an inventory and played smoother when finishing puzzles.
I was very happy of how I managed to get the playing card puzzle working through the use of arrays, at first I didn't know where to begin but broke it down into smaller tasks and it came all together. I re-used similar logic for the picture puzzle which saved us some time.
With little experience working with Unreal engine cinematic work flow, I took another risk in squeezing it in to polish the ending on the second last day late at night. Thanks to a 20 minute crash course from a friend and referencing to documentation, I made a brief first draft. I then polished it the next morning to smoothen the movement as best as possible.
​
After the submission, I felt I could have polished the puzzles better and added look-over item highlighting using custom depth stenciling (I used a double-mesh hack for the playing card puzzle) so to provide the player clues on what they can interact with. I implemented it after and plan to update the build soon.
​
I aim to challenge myself with a different style of game that isn't in a first person perspective in the future , so till the next game jam I will explore and improve further.
CREDITS
Kenneth Ma: Producer/Technical Designer/Additional Designer
Matthew Ho: Game/Environment Artist
Peter Loveridge: Designer
Richard Spiers: Code
Konstantin Semionov: Sound Designer