Unique Digital Ideas for Business

Develop a blockchain-based loyalty program that offers secure and transparent rewards, fostering customer trust and creating a competitive edge in the market.

Main Office

123 Main Street, Anytown, USA

Follow Us

Edit Template

Gameplay Mod for Citizen of Rome – Dynasty Ascendant

/ /

Gameplay Mod Citizens of Rome - Dynasty Ascendant

This mod was created as part of a one month internship I did at Sathvik Software Solutions. The Internship started on 24th January 2023 and ended on 24th February 2023. During this internship I was asked to build a mod for the game. I utilized the company’s own Vue.js API called DAAPI (short for Dynasty Ascendant API). I had to learn Vue.js specially for this internship as I had no prior experience in it. But, since I had used React.js previously, it wasn’t much difficult to use Vue.js.

I also created two 2D assets in Adobe Illustrator for an upcoming event in the game during this one month internship.

Citizens of Rom – Dynasty Ascendant is also on steam and quite a popular game.

Steam page of the game: https://store.steampowered.com/app/1063790/Citizen_of_Rome__Dynasty_Ascendant/

Github Repository Link to the Project: https://github.com/Harsh8naidu/Political-Ladder-Mod.git

What I Learned
  • Vue.js API
  • Character State Management
  • Conditonal logic for game events and actions
  • Dynamic UI
  • Fetch and Modify game data
  • Event-driven Programming
  • Action Handling
  • Data Validation and Error Hadnling
  • Game Balancing
  • Implementing tooltips and UI elements dynamically
  • Handling user choices and consequences in a branching narrative
  • Modifying character attributes dynamically based on conditions
How I Implemented these Concepts
Screenshots
Vue.js API

 

DAAPI (short for Dynasty Ascendant API) is the game’s internal modding API that allows developers to interact with game data, characters, events, and UI elements. It provides functions to retrieve and modify game state dynamically.

Character State Management
  • daapi.getState() – Retreive the entire game state
  • daapi.getCharacter({characterID}) – Fetched character-specific data.

 
Character Actions
  • daapi.addCharacterAction({characterId, key, action}) – Adds and action to a character.
  • daapi.deleteCharacterAction({characterId, key}) – Removes and action from a character.

 

UI & Interaction
  • daapi.pushInteractionModalQueue({…}) – Displays a pop-up modal with options for the player.
  • daapi.requireImage(path) – Loads an image asset for UI elements.

 
Game Logic Modifications
  • daapi.updateCharacter({…}) – Updates character properties (e.g. flags, stats).