Silverfall – Earth Awakening

Silverfall: Earth Awakening is a stand-alone extension for Silverfall, a hack ‘n slash taking place in steampunk-ish world, where players could choose between nature and technology.

The great upsides of this internship were that

  1. I was the only programmer beside my lead to be present for the whole production of the project; which meant I got to work on a lot of parts of the game.
  2. Earth Awakening being an extension on a mature, legacy engine; these features were very game oriented rather than engine oriented; and this got me to collaborate tightly with game and level designers.
  3. the team was about 15 people in a studio of 60; which meant I was very aware of what was going on.

 

The most prevalent elements I worked on were:

  • Object Customization :
    • The extension introduced a traditional crafting system which allowed player to make their own equipment and customize their color: I co-designed the data structure to supported and implemented logic for the crafting stats. I also helped implementing the realtime pre-visualisation which showed the equipment (including skinned armor) on the player character as it stood in the world.
    • It also added an enchantment system; which traded resources for magic effect on equipment, albeit with some risk/reward; enchantement being slightly randomized, irreversible and not stackable.
    • The most interesting feature to me though was the item demonization: players could attach gems to their equipment, and these gems contained demons who would XP up as you used the weapon they were on . This would make their effect on the the weapon grow stronger and, as they crossed XP thresholds, they would unlock side quests

.

  • Object Trading in Multiplayer: this got me more involved in the lower parts of the engine as we had to make a solid message protocol for updating, accepting and validating the trade.

 

  • Character templates: I implemented the flexible data structure to allow game designer to define character template with customizable gender and races; re-using part of the crafting code and logic for it.

 

  • UI:
    • Player customizable UI : this was a tiny but complex addition to the UI system, as we turned a static UI into a dynamic one that player could modify at will.
    • Revamping of the Skill Tree and Quest Log: this got me to work with the game designer/writers as well as with an illustrator on a short contract to help her extract modular aspects of her work.

I also:

  • discovered the power of providing versatile tools to designers through scripting hooks
  • got to witness a project manager navigate through tight resources; which was fairly formative.

 

Tools: C++ and proprietary script language on an in-house engine

 

Side-notes:

  • The game is available on Steam, though the DRM protection scheme makes the installation very bothersome.
  • After this extension was released, Monte Cristo decided to focus their work on their city builder CitiesXL and the Silverfall team members went on to found Spiders.