The Mansion


The Mansion - PvP Asymmetrical Console Game

Time: Sep 2023 - Dec 2023
Roles: Game Designer, Programmer, Producer
Tools: Unity


“The Mansion” is a two-player asymmetrical PvP game, developed by a five-person cross-disciplinary team over a semester.

This experience immerses players in a haunted ancient Chinese mansion, where one player takes on the role of a young girl in an action-adventure quest to recover her deceased grandmother's memory pieces. The other player controls a ghost leader, strategically commanding spirits to prevent the girl from escaping.

Built in two-week sprints, the game features distinct control schemes (controller for the girl, mouse/keyboard for the ghost) and emphasizes contrasting gameplay experiences.


Main Contribution:
  • Level & Narrative Design: Designed the mansion level layout and puzzle flow, incorporating Chinese architecture and folklore-inspired monster encounters. Wrote the overarching story and objectives, enriching gameplay with emotional stakes and traditional themes.
  • Gameplay Programming: Implemented core player and enemy action states (attack, dodge, death, hurt, idle) using C# in Unity. Built locomotion systems for both third-person and god-view perspectives, managing character speed, force, and navigation. Developed gameplay modifiers for animation, hitbox/hurtbox detection, stamina, and invincibility mechanics.
  • System Architecture: Created robust systems for combat state machines, enemy AI, player tracking, and status management. Developed UI systems including health/stamina displays, menus, and input-based UI alignment.
  • Production & Prototyping: Led integration of design, programming, audio, and art assets across platforms. Rapidly prototyped and iterated level and gameplay systems using team feedback and testing.

  • Character/ Narrative Design

    One player embodies a determined young girl on an action-adventure quest to retrieve her deceased grandmother's lost memories – represented by three key objects hidden within the estate.

    The other player takes on the role of a malevolent ghost leader, employing strategic thinking to command a legion of spirits and prevent the girl from succeeding.
    ghost leader图
    给小女孩加个名字



    Game Mechanism

     


    This asymmetrical design challenges players to adapt to contrasting playstyles and objectives, creating a unique competitive experience and high replayability.
    展示图片/gif




    Level Desgin 减小边





    • As a programmer on the team, I am specifically in charge of the game play in C# and Unity using Controller.
    Code construction:
    • Action state
    • Locomotions
    • Status
    • Tracking
    • UI



    Action state
    • Enemy state: Spawn, enemy attack, death, hurt, idle, and followed the girl;
    • Player state: Player three attacks, death, dodge, hurt, and idle;
    • State modifiers: Player state: hold input, stamina control. State: add force, animation control, hitbox control, hurtbox control, invicibillity, locomotion control, modifier, input cancellation.
    gif

    Locomotions:
    • Character Locomotion: character speed, force, rotation, ground gravity, weight, nav agent, and update position;
    • Enemy Locomotion: Enemy movement and rotation;
    • PlayerLocomotion: Player movement and rotation;
    • RootMotionToLocomotion


    Status:
    • Enemystatus (If enemy health is below 0, enemy defeated)
    • Hitbox (Hit direction, invoke hit result and hurt box)
    • Hurtbox (Hit result after getting hit including knock back action, direction respond to hit)
    • Playerstatus (Calculate the status of player, including player’s heath, death, and stamina recovery)

    Tracking:
    • MouseTrackPosition (Track player B’s mouse position)
    • MouseTrackUI (Track player B’s mouse position and reflect with UI)
    • SetNewPoint (While player B click on a position, the enemy will spawn)



    UI:
    • GUIManager (this is in charge of the healthUI and the staminaUI)
    • MenuOption (in charge of the option selection in the beginning scene where player can start the scene, select difficulties, get instructions on how to play the game, see credit page)
    • MenuUIManager (this is an alighment script that is applied to aligh size of the UI)


    Floor plan during festival showcasing our game: