GAMES BY KAMIL SIWEK

Technical Game Designer dedicated to crafting memorable experiences that highlight skill expression

Work in Progress

Team Projects

Combat System

Project Details

Unreal Engine 5Third PersonHack'n'Slash

This is my personal project that I am constantly developing. It is a showcase of a third-person combat system that draws inspiration from hack 'n' slash and Souls-like games.The whole system is designed to provide a smooth fighting experience, transitioning seamlessly from one type of attack to another, as well as combining dodges between them.

Currently, I developed two different weapons using collision trace mechanics fully made in Unreal Engine 5, using blueprints and animation notifies.

Key Combat Mechanics

  • Different types of attack

  • Dodge

  • Targeting system

Statistics system

Each action that a player performs during combat consumes a certain amount of stamina. Stamina recovers over time.

Gameplay

Project Zombie sailor

Project Details

Unreal Engine 5First PersonSurvival Horror
What I did:  
Gameplay DesingLevel DesingAI Behaviour

Zombie Sailor is a first person horror experience that consists of puzzle-solving, building tension concluded with jumps scares, as well as enemy AI.This project was highly inspired by survival horror games such as: Resident Evil franchise (RE7, RE2 Remake), Amnesia: the Bunker and Outlast.

Gameplay was set on 1:1 replica of Battleship Admiral Graf Spee, that is fully explorable for the player in order to uncover its secrets.

Gameplay and Level Design

For this project, I designed gameplay based on survival, pathfinding and fulfilling objectives. Level layout was created in a linear sequence so that the player is required to complete objectives in order to progress.Level is divided into three phases, each locked behind hard gate with certain objective:

Phase I - cabins and captains bridgge

  1. Player Start Location

  2. Captains Deck - collect gun and key for cabin 9, learn about zombie accident on battleship

  3. Unlock cabin 9, defeat enemy and collect sequence of numbers for code pad

  4. Open below deck corridor that leads to medical wing

Phase II - medical wing

  1. Search for clues around cabins. Find out that patient 0 was a pilot that had acces card for plane

  2. Collect plane acces card

Phase III - escape battleship

  1. Exit medical wind and defeat 3 enemies that guards way back the captain's bridge

  2. Activate platform that plane is attached to

  3. Get to the plan and escape from the battleship

Environmental clues

Monitoring System

In order to make navigation easier, I created a monitoring system that highlights crucial locations.This system uses three camera actors that are connected to a display located on the captain's bridge. The display allows browsing between three channels, which the player can easily switch using the right mouse button.

Enemy AI

This project has also simple behaviour tree for enemy AI with following tasks:

  • Patrolling between target points

  • AIPerception that detects player

  • Once player is detected, AI follows Player

  • AI attacks player when caught

.

Gameplay

B.R.E.V.

Project Details

Single playerFirst PersonActionFast-PacedShooter
Project duration: 4 Weeks
Team: 8 developers
Software: Unreal Engine 5, Perforce, Miro, Jira

About Game

You are BREV, a soda addict living in the Banta district.You got your hands on a Legendary -Limited-Edition Banta but your arch-enemies from the Sprint and Bepiss districts stole it from you.Show them who's the boss while you speedrun across 3 colorful districts with your sick parkour movements.

Gameplay

B.R.E.V. is an adrenalinic fast-paced game in which you need to speed through the levels using rocket jumps (thanks to your soda cans) and complex parkour movements (slides, wall-runs, dashes and more).

What I did:  
Gameplay designTechnical designSound Design

This game was designed as a race against time, featuring challenging obstacles that players must overcome using specific movement mechanics. My role was to create gameplay that enhances and complements our primary movement mechanic: Rocket Jump.

Rocket Jump

My contribution

Packed with parkour elements which consists of several mechanics that the player can smoothly switch from one to another.

Features enemies that shoot at the player, enemy ragdoll behavior, and a kill counter for the player.

Weapon that can damage enemies with active ammo widget displayed on screen.

Trailer

Movement System

Wall Run

Full blueprint preview

For this mechanic I created:

  1. Collision boxes on the player character detect contact with walls for running.

  2. Separate Wall For Running blueprint, featuring an 'ArrowRight' component for its forward vector and a dedicated actor tag, that manages wall detection.

  3. Rotate camera when Player gets attached to Wall For Running.

  4. Jump Off Wall mechanic that is using Wall forward vector in order to calculate Jump Off Wall direction.

This mechanic also detetects if Move Forward Input is being pressed. Wall Run stops when Input is released.

The camera tilts based on the side from which the player jumps onto the wall, enhancing the sense of movement.

Jumping off the wall is triggered by the default player character jump input.

Slide and Slide Jump

Full blueprint preview

Slide

The Slide Action event is implemented in the player character blueprint and can only be performed once a specific movement speed is reached.

To make movement more realistic I also implemented sliding down a slope mechanics on Event Tick. Whenever performed Sliding event on a slope, player gains speed accordingly.However when performing a slide on a flat surface, the player character initially receives a small speed boost, followed by a gradual decrease in velocity until reaching the default crouching speed.

Whenever the minimal slide speed is reached and the player presses the Crouch input, it will enable the Sliding action.Slide stops whenever the player is no longer pressing Crouch Input.

Slide Jump

Slide Jump event can be triggered only while the player character is actively sliding. Pressing the Jump input during a slide activates the Launch Character node, boosting the character forward.


Dash

Dash event is implemented as Enchanced Input Action on Left Shift keyboard input.Whenever minimal dash speed is reached the player can perform dash action which rapidly launches him forward.

Fast Fall

Fast Fall Event can only be performed whenever player characer is actively falling. On Event Landed it checks if Fast Fall was activated and stops this event playing proper sound effect as well as setting gravity scale back to its default value.

Combat System

Shooting Enemy

B.R.E.V. is focused on movement and finding the fastest path to complete each level. To add gameplay variety, I designed a simple enemy actor that shoots projectiles at the player’s last known location.


Player detection is handled using the Pawn Sensing component.

Enemy projectiles use the same Actor class as the Bomb utilized in the Rocket Jump mechanics.When the player enters the pawn sensing radius, the enemy turns toward the player's last known location, spawns a bomb, and fires it.

Editable variables:

  1. Shooting force - how fast projectile traves.

  2. Lifespan of enemy projectile.

  3. How often enemy shoots.

Enemy Projectiles

Projectiles shoot by enemies has two different characterisctisc:

  1. They can damage Player on Hit Event.

The damage system is based on item ownership, which is managed by the BaseItem blueprint. If the item belongs to the enemy, it can damage the player. However, once the player catches a projectile shot by the enemy, ownership is transferred accordingly.

  1. The Player can catch enemy projectile, and either throw it back at enemy or keep it for Rocket Jump purpose.

Enemy Ragdoll

To create varied outcomes when an enemy dies, I implemented a mechanic that applies torque to the enemy's capsule component.The logic is applied to each bomb thrown by the player, but the ragdoll effect is triggered only on enemies.It selects a random value between the minimum and maximum rotation speed, then adds an impulse upon explosion, launching the enemy in a unique way each time.The ragdoll force is an editable variable, allowing control over the force applied by each type of bomb in the game


Kill Counter

The kill counter logic is managed through an Event Dispatcher in the custom Game Mode. I created a custom event called Enemy Death, which increments the kill count by 1 each time it's triggered.In the Kill Count Widget Blueprint, another event is bound to the Enemy Death event in the Game Mode, updating and displaying the current number of enemies killed.

Ammo Widget

Ammo widget that displays the current amount of ammunition stored in acquired weapons. Inspired by games like Epic's Lyra Starter Pack and Valve's Deadlock MOBA shooter, the widget aims to provide players with a minimalistic, intuitive display of their ammo count, helping them stay informed and ready for combat against enemy vending machinesThis blueprint works by displaying an image representing each unit of ammo, based on the ProjectileNumber variable stored in the Equip Item custom event. By adjusting the horizontal and vertical alignment, it dynamically positions the ammo status around the player's crosshair, providing a clear visual of the current ammo count.

The initial logic checks if the picked-up item is our gun blueprint. If it is, it adds a specific amount of projectiles to the gun.

The exact number of projectiles is determined whenever the EquipItem custom event is called. In this setup, each of the player's character's hands has a separate event responsible for picking up items.

Lastly, each time the player shoots, the projectile count is decremented by one with every time shoot event is being called.

The Neglect

Project Details

Single playerFirst PersonPsychological horrorSupernaturalMystery
Project duration: 7 Weeks
Team: 12 developers
Software: Unreal Engine 5, Perforce, Miro, Jira

The Neglect is a first person psychological horror experience inspired by the tragic real-life case of Lacey Fletcher. Immerse yourself in a chilling environment, solve puzzles and unravel a haunting story to escape the nightmare.

Storyline

You've just purchased an empty house, only to discover it's cursed shortly after moving in. While napping on the lone piece of furniture left inside, terrifying events start to happen and you find yourself trapped in a time loop. The time loop conceals the dark secret of a mother taking care of her daughter. In order to break free, uncover the mystery.

Gameplay

Engage with the environment, solve puzzles, gather story pieces and listen closely to your surroundings - you’re not alone on this journey.

What I did:   
Gameplay designTechnical designSound DesignCutscenes
Additional role
Product Owner

During this project I took role of product owner and was responsible for delivering concise scope of our game as well as making sure
that each team member is on the same page throughout the entire duration of the project.

Gameplay and Level design

During preproduction, I designed gameplay mechanics suited to the genre that our team collectively agreed upon. Additionally, we decided to draw inspiration from real-life events for the original story, which I developed based on the tragedy of Lacey Fletcher.

To effectively present the story, I planned the entire gameplay experience, ensuring that each level had clearly defined events and objectives for the player.The primary inspiration for The Neglect was P.T., the playable teaser for Hideo Kojima's unreleased project from the Silent Hill franchise.Whole game takes place within the same environment (a house), which gradually reveals more pieces of the story as the player progresses. In addition to solving puzzles, players will encounter various jump scares, creating an immersive and suspenseful experience.Each of the 9 levels has a specific condition that must be fulfilled to progress further into the game.

Technical Design

Outline on Interactable Objects

For this purpose, I created an Actor Component that stores information about whether the selected object is highlightable.The entire system also includes a post-processing material located within a Post Process Volume inside the level, which highlights the boundaries of objects that implement the specified interface.Within the Highlightable actor, there is an event that sets the render custom depth of the selected meshes when the player hovers the cursor over a specific actor.

Look Trigger Blueprint

  1. Box Collision: A collision box that detects if the player is inside it to trigger a "LookAt" event.

  2. LookAt Logic: A system that checks if the player is looking at the selected object for a specified duration.

  3. Event Dispatcher: An event that triggers when the player is standing inside the collision box and is looking at the selected target for the specified amount of time.

Editable variables: look target, required look time

Gameplay Events

Clock Puzzle

Every time the player enters a new level, the ticking sound of a clock plays, indicating that it is stuck at a specific time (11:30).At that hour, the mother antagonist was poisoning her daughter continuously every day.At one point in the game, the clock is missing its minute and hour hands.To solve this ongoing puzzle, the player must find the missing hands and restore the clock to its original state.

Door Handle Puzzle

Jump scareCreated using Unreal Engine's Sequencer and is activated by the LookUp event.

This puzzle has its solution hidden in note from daughters diary. In order to solve this puzzle player needs find missing door handle and place it into bathrooms door.

  1. Read note and learn about missing handle clue.

  2. While inspecting note, voice of the mother is being plyed which says "look up" - The player must move the mouse cursor upward to trigger a jump scare.

  3. After the jump scare, the living room handle drops onto the floor, becoming a pickable item.

Hallway jump scare

This gameplay event is being triggered by blueprint that checks if the player is overlapping with its collision.It spawns chosen actor, sets its lifespan and moves it from point A to point B with certain speed.

Editable variables:

  1. Actor to spawn.

  2. Target points that determines direction of spawned actor movement.

  3. Move Speed of actor.

  4. Lifespan of spawned actor.

Sound design

To compliement this game project ganre, I carefully selected each sound effect and ambient track to create an immersive and frightening experience.

The entire process of recording and editing specific sound effects was done using the Audacity Digital Audio Workstation.I built an extensive library of SFX and implemented them within blueprints using nodes such as Play Sound 2D, Spawn Sound at Location, and Set Timer by Event.I also experimented with Unreal Engine’s Sound Cue system and Sound Attenuation settings to create the desired gameplay experience.


I created a simple footstep system using Animation Notifies, which randomly plays one of seven different sound effects each time the player character takes a step.

Trailer

Ascenduo

Project Details

Co-op/single playerSportPuzzleMobile
Project duration: 5 weeks
Team: 17 developers
Software: Unity Engine, FMOD Studio, Perforce, Miro, Jira
What I did:  
Systems DesignSound DesignUI Design

AscenDuo is a co-op puzzle game where you collaborate to conquer even the tallest of mountains. On your adventures, players will encounter several obstacles to overcome. In order to achieve victory, players need to combine forces and help each other by using a pickaxe and a grappling hook.

Music Manager
3D Main Menu UI

I was mainly responsible for creating:

  • music manager that handles volume of several sound sources

  • recording ambience, sound effects and original music track

  • whole 3D scene and its set up so that camera follows different objects

FMOD Studio Project

Tailored SFX

I was responsible for recording and implementing every sound that can be heard in this project. For that purpose, I recorded custom sound effects and implemented them using FMOD Studio.

In order to deliver the best-sounding effects that suit the climbing environment, I recorded several sounds and mixed them together to achieve the desired effect. For example, the falling event has three different sound effects that are played in random order whenever the player falls off the climbing wall.

Original track

This project was created to be a good fit for mobile extreme sports games made by Turborilla Studio. To match their target audience, I also composed and recorded an original track that complements the dynamic game flow.

Trailer

Lights Out

Project Details

Single playerAdentureTurn-BasedCombat
Project duration: 4 weeks
Team: 12 developers
Software: Unity Engine, Miro
What I did: 
Systems DesignLevel Design

Lights Out is 3D isometric, story-driven escape-from-dungeon experience. Players embark on a journey as a messenger inside abandoned castle. During their journey, Lantern is the only source of light. In order to survive, players need to constantly refill Lantern by searching for light containers.

System Design

I was responsible for creating the lantern system, which consists of player health and player vision, both of which decrease over time and while encountering enemies.

Level Design

I created the level blockout, which later included set dressing during the production phase.The idea was to create a simple yet engaging maze level that hides a secret, while offering multiple routes for the player to discover the way out.

Gameplay Trailer

About me

Hey! My name is Kamil, and I’m a technical designer passionate about creating engaging gameplay mechanics through visual scripting. Currently expanding my skills by learning C++ to bring even more depth to my ideas.I am focused on Unreal Engine 5, as I continue to deepen my knowledge and skills, as a game design student at Futuregames Warsaw.During my studies, I participated in four team projects that allowed me to develop essential teamwork skills and gain insights into the game development process at every stage of production.I am driven by the desire to create captivating gameplay experiences that resonate with players and leave a lasting impact.Here is my journey and showcase of the ideas I’ve implemented in the projects featured in my portfolio!

Released Projects

Want to get in touch?