
July to August 2025 · Team project
Chivalry Is Dead
Clumsy knights try to kidnap a princess. They need to sneak in, coordinate and hope nobody ruins everything along the way.
- My role
- Development · Networking and AI
- Format
- PC · Co-op · Intended for 1 to 4 players
- Project status
- Prototype
- Technologies
01The project
Knights with a rather questionable plan.
Why rescue the princess when you could kidnap her? That is where Chivalry Is Dead starts. You play clumsy knights who need to sneak in and cooperate, with physics that can quickly complicate their good intentions. Well, their intentions.
We worked on this prototype between July and August 2025. I handled networking, AI and voice chat. The idea was to let players meet up, communicate and respond to the inhabitants of the castle and village.
How you play
- 01
Meet up
Create or join a session.
- 02
Sneak in
Move through the surroundings and their inhabitants.
- 03
Coordinate
Talk to players nearby.
- 04
Improvise
Work around reactions and physics.
02My work
Networking, AI and the knights’ voices.
I worked on multiplayer sessions, NPC behaviours and proximity voice chat. With one small audio detail: players sound as though they are speaking from inside their helmets.
Multiplayer sessions
I developed sessions with a name, ID and password. The prototype uses a peer-to-peer architecture to connect players.
AI and behaviour trees
I developed the AI and its behaviour trees. I also worked on navigation areas and filters to distinguish the castle, village and combat spaces.
Proximity voice chat
I built proximity voice chat and its metal helmet effect. Even a quick discussion to agree on a plan needed to sound like knights talking in armour.
03Under the hood
Knowing where an NPC is allowed to go.
The castle, village and combat areas have different navigation needs. I used separate areas and filters to organise the AI’s movement.
Navigation spaces
Take a closer lookInside the castle.
The Castle area and CastleOnly filter select the castle spaces used for movement.
BP_NavArea_Castle / BP_NavFilter_CastleOnlyIn combat areas.
Combat and CombatOnly define a separate set for combat spaces.
BP_NavArea_Combat / BP_NavFilter_CombatOnlyIn the village.
Village and VillageOnly handle movement in the village separately.
BP_NavArea_Village / BP_NavFilter_VillageOnlyThe names match the assets shown in the screenshots.
Some development choices
Connect behaviour and navigation
Choosing an action is not enough: the NPC also needs to move in the right space.
Behaviour trees work with navigation areas and filters to guide movement.
The helmet detail
Voice chat helps players coordinate, but it is also part of the game’s atmosphere.
I added a helmet voice effect to proximity chat. You hear the character as much as you see them.
04In pictures
The project on screen.
4 imagesClick to enlarge ↗
A glimpse of the village, followed by behaviour trees and prototype graphs. Some editor screenshots are small, but they give an overview of the work.
The village and castle
A view of the prototype’s environment.
The behaviour tree
An overview of the branches organising AI decisions.
1
Defining the areas
Three areas separate the castle, combat zone and village. They give each navigation area a purpose.
2
Choosing where to move
The associated filters select which areas the AI can use to move around.
Areas and filters
Three navigation domains: castle, combat and village.
Blueprint work
A glimpse of the prototype’s graphs, kept at their original resolution.
05Outcome and team
Playing together and giving NPCs reactions.
My work on the prototype brings together sessions, AI and voice chat. The wider game concept aims at a complete experience for one to four players.
What is in place
- Configurable sessions.
- AI and behaviour trees.
- Proximity voice chat with a helmet effect.
Where the project stands
- The prototype lays the groundwork for one to four players.
- Dedicated servers and a console version were considered for later.
A detail like the sound of a voice can give character to a very practical feature. Here, talking is already part of the comedy.
Want to talk about this project?
Let’s talk
