Townforge Wiki
Advertisement

Progression via the blockchain[]

Game progression in Townforge happens as blocks are mined and appended to Townforge's blockchain. All game actions are stored inside the blockchain, thus block discovery is essential for game progression.

The Townforge consensus network adjusts the mining difficulty so that the target discovery rate for blocks is one per 30 seconds. This means that on average new game actions take place over the network twice per minute and are appended to the blockchain.


Game is split into two progression steps:

Game updates per block[]

These occur every block, and include resolving:

- Depositing or withdrawing Townforge gold between the in-game and out-game wallet

- Appending building commands adding or removing voxels into buildings

- Resolving market orders (buy or sell)

- Resolving land purchases or lot reshaping

- Hunting, sowing, and harvesting

- Collectible item related actions

- Research and discoveries

Game ticks[]

These occur every 720 blocks (every 6 hours, 4 times a day on average), and include resolving heavier game logic:

- Paying out subsidies from city treasuries

- Activating or inactivating buildings

- Consuming food and firewood and have buildings decay

- Awarding badges and levels

- The hunting-related quantities are updated (i.e. amount of moose and bear)

Progression link between Townforge time and real world time[]

The game composes of season as a combination of a subseason (early, mid, or late) and its corresponding real world season (summer, fall, winter, autumn). These "months" are then divided into 28 Townforge days, for an accurate in-game representation of current in-game date. A whole Townforge year corresponds to a real-world week, thus, the cyclic nature of the game starts over every real-life week. With the onset of a new year, following occur:

- Minting of new collectible year coins

- Random events, pre-scripted or GM-driven events

- The sowing and harvesting cycle resets

Block height and date

Example snapshot of in-game date as a function of blockchain height, with height 42741 corresponding to 9th day in early summer of year 954.


Advertisement