Samurai Siege

Developed in Unreal Engine using C++ with Blueprints for animations and effects as a part of my Level 6 Course Work

Grab your friends, and harness the power of 8 weapons through 3 different game modes, free for all, Team Death Match, and Siege.

Development

Challenges

When working on university projects I try and assign myself challenges to cover different genres and experiment with different gameplay elements.

  • Multiplayer Networked - I had to learn how to use the Steam Online Subsystem.
  • Roles & RPCs- I learnt how the engine checks authority to ensure RPCs are called correctly to prevent cheating and correct use of bandwidth.
  • Ray Tracing and Projectiles - Different weapons use different systems to damage players.
  • juiciness - Developed Animation and effects to improve how the game feels and provides feedback to the player .
  • Organisation

    For every project I work on I use applications to help me ensure the project is successful:
  • I use Trello to keep a high-level development plan of the project denoting current development stages of tasks, such as needs development, merging, testing or completion.
  • Gantt charts are used in order to have an exhaustive list of tasks, the dates the tasks should have development started, and completed and their current status. By assigning priorities I can use MoSCoW to filter and ensure I have the MVP and work my way through optional features.
  • Outlook Calendar is very useful as someone who works part-time, I am able to dedicate allotted time to different tasks including social events so I can maintain a healthy work/study life balance.
  • Review and Lessons Learned

    After completing projects I like to reflect on what went well and what did not, this helps me learn from each project and improve each time.
    This project benefitted from previous lessons learnt, as I tried to focus elements together and scope the project well from the start.
    This enabled me to spend time during development including cosmetic aspects whilst developing the respective system, whilst I normally would do these at the end, I found this method saved time as I was more familiar with the system due to currently developing it.
    This method also improved enjoyment for playtesters, which I found was useful in having improved engagement with playtesters wanting to test for longer and offering additional sessions.
    I also learnt methods of testing and debugging within the engine which will help in debugging future projects.
    This project got 86/100 for the module which I am extremely happy with.