Image from DSTA's article linked below
Admiral's Battleground
A project made in conjunction with Singapore's Defence Science and Technology Agency (DSTA). Admiral's Battleground is a local multiplayer MOBA-like game that focuses on real-world naval battles. Made using Unreal Engine 4, it is a Windows game.
Admiral's Battleground © 2023, DSTA
Project Overview
2021 - 2022 ・ Team Size: 10 ・ Unreal Engine 4 ・ C++ ・ Jira ・ Sourcetree
An ambitious project that was inspired by real life naval warfare, the core gameplay revolves around detection and information and using it to complete various goals such as attacking/defending other ships, an area, or traversing the open seas. It is designed to host matches of up to 5v5 per round.
It features 3 game modes: death match, domination and scenario.
The game gathers data generated during matches played to study create artificial intelligence (AI). The AI will be able then use the data learned to make crucial decisions and train players in naval warfare.
UI/UX Programmer
Unreal Engine 4 ・ UMG ・ Blueprints
As the only programmer dedicated to UI/UX in the game, almost if not all the game's UI was programmed by me. This includes:
-
Creating custom drawers and other UI elements
-
Integrating and implementing design and art to vision
-
Reviewing design and concept, and advising what can or cannot be done and ways to work around it
-
Functionality, states, data reading
-
Sending, receiving and displaying relevant and necessary data over the network
-
Making sure the UI elements behave correctly across screen sizes
-
Optimization
UI/UX Designer
Figma ・ Adobe Experience Design ・ Adobe Photoshop Creative Cloud
-
Take charge & communicated with external, overseas UI designer
-
Worked closely with UI/UX designers & producer/game designer to conceptualize UI
-
Point out inconsistencies and room for improvement where necessary
-
Suggested improvements on how to improve current UI, resulting in needed overhauls
-
Communicated with fellow designers what the requirements were
-
Ensuring the necessary information was conveyed across in a clear manner
-
Convey to the artist on UI requirements, such as screen resolution
In total the game UI went through 3 iterations before the final version.
Systems Architect / Programmer
Unreal Engine 4 ・ UMG ・ Blueprints
Much of what this task entails was creating and establishing systems and the framework that the game would run on. As I was in charge of UI, the system for that fell to me; I also had a hand in other systems.
-
UI System
-
Communication between the server & client
-
Displaying of information
-
Integrating and using UE4's Online Sessions plugin
-
Account system
-
Integrated external POST API plugin (VaRest)
-
Communicated with external web server for account authentication, saving & loading of data
-
Data table creation and reading
-
Save/Load game system
-
In-game chat system
-
Settings
When creating systems, I wanted to ensure that it was robust enough to handle any future potential request or change that would be needed (within reason) while encapsulating it so that it would be maintainable, and easy enough to use that any programmer would not need to jump through hoops to get the result they wanted. Since this was my first project involving multiplayer, I learnt a lot of things such as replication.
Relevant Links
Admiral's Battleground © 2023, DSTA