Those who shape the policy and education behind offshore wind development frequently run into the same conundrum – the practical consequences of balancing between energy expansion and its possible environmental or societal costs can be fully understood only after a project takes place. Arcadia helps overcome this problem by designing a simulation based on the Godot engine, which makes you an acting regional planner in a fictional North Sea region. As a player, you have to take the initiative and control the actions of a pre-designed offshore wind park and harbor, making choices about how those structures are managed. The gameplay is divided into two stages – an exploratory stage, when you gather regional data and understand the effects of the wind farm on the United Nations Sustainable Development Goals, including clean energy, marine life, economy, and climate; and the intervention stage, where you can change parameters of the turbines, create artificial reefs, declare certain regions as marine protected areas and apply mitigation measures. With this simulation, our client receives a clear representation of an otherwise complex SDG interaction model, playable from the convenience of a laptop.
Our wind turbines are fully optimized. Our Git history is not.
Our client is Prof. mr. dr. Daniëlla Dam-de Jong, professor of International Sustainable Development Law at Leiden University and associated with Grotius Centre for International Legal Studies. Her research covers international environmental law, sustainable development, natural resource governance, and the relationship between environmental issues, peace, and security. She is also the director of management board of the Grotius Centre and acts as a legal advisor and editor in several international projects.
Communication and meetings ran on a bi-weekly basis. Prof. Dam-de Jong acted as Product Owner in our Scrum setup providing direct and clear channel into each sprint. Communication with her influenced our product at each point, starting with definition of its scope, which moved from civ game to dialogue based educational product as we understood from her that the educational aspect is more important than anything else.
All six of us: Kasra Amirani, David Xu, Hussein Al-Amodi, Jake Monster, WangBo Tao, and Yusuf Yusufov, headed the project under Scrum, with Hussein acting as Scrum Master and Dam-de Jong as our Product Owner. The development process relied heavily on our capabilities: Hussein and David worked on the underlying systems architecture and CI/CD; Kasra was responsible for the game world and visual assets; WangBo and Yusuf worked on dialogues and map foundations; and Jake was responsible for the country borders and name plates. Each of us was programming using GDScript, even those among us who had never written in GDScript prior to the start of the project. The biggest conflict we encountered was in Godot’s scenes; their merging is very difficult due to their size, automatic generation, and unique opaque identifiers. Working simultaneously on the same map, we constantly faced problems with merging. To partially solve this issue midway through the project, we adopted the sub-scene workflow approach: any new map-related additions get their separate scenes which are instanced into the main map scene to ensure minimal file alterations in the process. During one of our first sprints, we discovered that our Definition of Done was somewhat lacking: after we did a refactoring of the map, it would crash after merging because “works as intended” was only tested on the feature branch and not afterward. We fixed this problem by adding post-merge smoke test to our CI pipeline.
The greatest accomplishment of the team was developing a complete, standalone executable, with a menu, dialogue with the stakeholders, player choice-making, and an ending that is all generated automatically with a tag push.
Languages:
Engine:
Data:
Testing & quality:
CI/CD: