Explore a forgotten Archipelago deep in the Bering sea. Sail the cold seas, learn about the environment, evade the dangerous wildlife, and survive the harsh Alaskan weather to find your lost brother.
Team Size | Engine | Platform | Roles |
22 | Unreal Engine 5.1.0 | PC (Windows) | Lead Programming and Build Engineer |
The full game is out now on Steam!
My contributions to the project
Jenkins
I did my job as build engineer by making a build pipeline in Jenkins.
- p4-setup download the project for Perforce.
- ue5-build build the Unreal project.
- get-build-version write the change list from Perforce and build to a text tile that I read in and display in the game on screen for QA purpose. It also copies the steam_api64.dll to the build.
- set-crash-reporter writes to a config file for the CrashReportClient so it sends crash information to Sentry.io.
- upload-debug-symbols uploads debug symbols to Sentry.io.
- run-test run all tests setup in Unreal to check if game mechanics are still working as intended with every build.
- steam-deploy this will upload the game to Steam if the tests pass in the previous stages.
- post it will send a message to our Discord server to keep the team up-to-date.
Steamworks API
In the game instance I added two nodes. I looked at the documentation of Steam and was very helpful. Why in C++? One reason is because the online sub system does not support stats so that you can have an achievement with progression.
Automated burndown charts using Python script with Google Sheets and Jira APIs
I made a python script for the producer so he can have automated burndown charts. It checks in the Google Sheet if the date of today is in the sheet. Then it looks for the student number in Google Sheets then get display name and put that in the sheet. Next get all the issues in the open sprint add the remaining hours and put it in the sheet. I made this because Jira does not have individual burndown charts.
Wind system combination
We have three wind systems. There is the one wind system that is made by us. When that one gets updated it sends it over the material parameter collection from tech outsource for the foliage and the other one is chaos cloth made by unreal from the flag and sails on the boat.
By combining the wind systems I create a more immerse game for the player. It also counts as feedback to the player on where the wind is coming from.
Rocking of the boat (Only in the Demo)
Rocking of the boat is effected by the wind and water.
Wind
There is an event where I get the wind from. Here I take the wind speed float value from range of 50 – 100 and divide is by 10 to make the scale smaller and then I set it to the speed of the sign wave that is used to rock the boat.
Water
If the water material instance is set in the boat it will get the parameter Amplitude from the water shader. I have a zero check just to be sure. I divide it by 20 to bring the scale down and set it to the amplitude of the sign wave that is used to rock the boat.
Team Building
As team building manager, I pro-actively looked for opportunities to increase and maintain the team’s chemistry by organizing events outside of the project. This lead to the cohesion with the team improved and has been a fun experience to do.