Maruk: Shipwrecked

Trailer coming soon

Game project #6

  • Reference game: A Hat in Time
  • Time: 15 weeks (half-time)
  • Team: 20 developers
  • Engine: LAMP Engine (project group’s custom built engine in C++ DX11), with Unreal Engine 5 as level editor

 

Contributions

  • Gameplay & Player Systems
    • Complete 3D platformer player movement using PhysX
    • Created player animation state machine and implemented all player animations in close collaboration with animators
    • Polished gameplay elements such as tilting platforms and collectibles
  • Camera Systems
    • Spring arm camera with raycasting, smoothing and collision handling
  • Physics & Engine Integration
    • PhysX system integration into our engine
  • Multiplayer
    • Co-op over LAN multiplayer support using TCP network messages
  • Tools & Pipeline
    • Unreal Level Sequencer pipeline integrated into our custom engine
    • Unreal-to-custom engine pipeline for tools and asset workflows
    • Pipeline for importing colliders from fbx models into PhysX 
    • Debug view for visualizing PhysX colliders in-engine
  • Graphics & Effects
    • Particle system enhanced with ribbon trail particles

My Visual Highlights

Player and camera movement

Created a complete 3D platformer player movement using PhysX combined with a spring arm camera system. Includes mechanics such as auto ledge grab, double jump, dash, wall slide, wall jump and springboards.

Platform interactions​

Dynamic platform tilting based on player movement (walking, landing, jumping). Also made the interactive water ripple effects when platforms are in water, supported by custom engine systems and shaders.

 

Co-op over LAN

As a fun project, I added co-op over LAN multiplayer functionality using TCP network messages through a server syncing players’ transforms, animations and colliders. Play testing together is really fun! Also includes a chat system. 

Level sequencer

Unreal Camera Level Sequencer integrated into the engine via a custom made exporter pipeline. Also implemented additional camera system interpolation using lerp and quaternion slerp for smooth transitions.

Ribbon trail particles

Implemented an attachable ribbon trail for particles in the particle system, along with supporting engine components, geometry shaders and pixel shaders.

Credits

Programmers

Brian Wannstam
Camilo Chavez Torres
Christian Le
Jonas Anders
Linus Rodhammar
Wiktor Ciechonski

Artists

Dante Norling Eklöf
Linus Bergström
Oliver Andersson
Oliver Lincke

Audio

Kimberly Faith Palsäter

Technical Artists

Markus Norén
Marinó Fannar Bjarnason
Nora Komphe

Animators

Lisa Martjin
Anders Nilsson
Viktoriia Shvydak

Level Designers

Nom Köhler
Love Lustig
Tiger Tjellsen