The Dedicated servers update

Adds proper dedicated servers and replaces the broken Steam lobby with my own Master server to list existing servers.

This update finally adds proper dedicated servers to Ymir, by getting rid of the Steam lobby and its broken implementation in the Engine used by Ymir.
I’ve now made my own master server to list existing servers, allowing in turn to make servers completely independent from steam.

What does this mean for users?

  • No more disappearing or obsolete servers in the “Join game” menu.
  •  You no longer need a steam client opened with a valid Ymir license to run a dedicated server.

Important notes for Game hosts

  • The game server settings are now moved inside the game save folders and renamed game_settings.ini. So all the games .ini files in the root Ymir appdata folder can therefore be moved & renamed, or deleted. server_settings.ini contains the default and global server settings.
  • The dedicated server steam app id is 749070. This is the server that can run without requiring Steam.
  • server_settings.ini now contains a url override, so you can have your server address displayed as a url instead of its actual IP.
  • Dedicated servers will now cancel their auto-restart behavior after 5 consecutive crashes.

The dedicated servers update
– switched from steam master server to an Ymir private master server for server listing
– added new dedicated server app on steam (749070) that doesnt require the steam client and accounts to run.
– moved game settings into the save folders
– added support for custom URLs for server hosts, set in server_settings.ini
– servers now cancel their auto-restart behavior after 5 consecutive crashes.
– reduced efficiency of Tavern service and alchool required for it.
– greatly reduced efficiency and intelligence bonus from school and academy services
– fixed problem of “gaia armies” when a territory with an army decays.
– fixed production of pickaxes without the pickaxe tech
– lowered nordic bonus to +5 health
– lowered tropical malus to -5 health
– fixed a battlecode issue causing infinite battles
– occupied territories can only be transfered by treaty to their previous owner or a character that is also at war with the previous owner
– when a sell order is added, if 2 buy orders are competing for it, the highest order will pay second order’s limit-price +1.
– fixed colonies not benefiting from city administrative policies
– fixed trade history overflow

The automated trading update

The automated trading update

Trading upgrade
This update’s main focus is the improvement of the trading mechanics and UI.
The main point is the addition of a new trading menu, available from the side panel of territories but also from the resource menu of all resources as a new tab.

With this menu comes a lot of new functionalities and informations about trading, the most significant one being the addition of automatic recurrent orders. For example, you can set the order to sell 100 hammers at 4 coins every time your stock of hammers reaches 200 in the territory, and the order will activate whenever that condition is met and wait inactive when it isn’t. 

On the left, the new menu also shows you the Best offers in your trading network for every resource: it shows the best available buy price and sell price, allowing you to see immediately what interesting trades are available to you. 
A tickbox even allows you to filter unprofitable offers: it will then only list resources that have a buy price higher than your local price, or sell offers that are lower than your local price, which means offers you can generate profit from.

The menu also adds a trading history, showing you all the recent trades that you made, who purchased it, and at what price. It also displays your best trading partners based on the selected resource and time period you’re looking.

It is now possible to also place buy orders , and not just sell orders.
When placing a buying order, you must deposit an amount of coins matching the limit price and quantity you’re willing to purchase. 
If your buy order is cancelled or filled at a lower price, your initial deposit will be refunded accordingly.
For example, if you set a buy order of 100 wood at a limit max price of 4  and it gets filled at 3, you will recover a quarter of your initial deposit.

The new trading system no longer allows you to choose specific offers: instead, it creates an order book with all the selling and buying offers, and make them automatically match. 
When you buy or sell resources, it will always look for the best available price in your trading network. Therefore you can no longer choose to buy wood for 4 coins to a specific partner if someone else in your network is selling some for 2 coins.

The new trading UI now allows you to place automatic trade orders, see your trading history, and place buying orders instead of only selling ones.

Improved trade route UI
The UI of trade routes has also been improved. 
All trade routes between similar cities will now automatically merge into a single route for easier management and visibility.
For existing trade routes, transferred amounts can now be edited, so you no longer have to close and recreate routes. If the trade route is with a third party, you may only reduce traded amounts, but if the trade route is internal between your own cities, you can also increase it when needed.
The side pannel UI has also been improved to fix the ‘overflow’ issues, to better display operated trade routes, trade route finances, and the creation of new trade routes.

The improved trade route UI and menu allows you to modify existing trade routes and groups all traded resources between similar cities together.

Resources base wealth rebalanced
The base wealth of resources introduced in a previous patch (contributes to the territory wealth when stored in proper storage buildings) is now displayed for each resource in its menu in the top.
It has also been lowered and re-balanced to take into account the wealth of the materials needed to craft the resource, when relevant. 

Cavalry re-balanced
Mounted units have been rebalanced to be stronger as they were too weak considering their price. They are now especially stronger vs infantry of low reach such as swordpigs.


The automatic trading update
– Reworked trade routes UI
– It is now possible to modify traded amounts of existing trade routes without having to cancel and remake them
– trade routes between similar cities will now auto-merge into one
– resource lists are now sorted by alphabetic order
– fixed missing UI for “operated trade routes” in the trade route side pannel
– removed control of price for trade routes (obsolete) as it is dynamic and automatic
– removed cargo price for now
– fixed UI overflows in the trade route side pannel
– new trading menu, available from the trade side pannel and the resource menu of each resource
– placing buy orders require an instant deposit of coins matching the quantity and limit price set in the offer.
– wooden shields cost less wood and leather
– light helmets faster to produce
– laminar armor upkeep +0.2 and armor -0.25
– heavy shield armor -0.5, defense skill -0.25, upkeep +0.1
– horses and camels reach +0.5, attack skill +1.75, damage +1, mass +100
– resources base wealth now takes base wealth of required materials into account
– added display of base wealth in the resource menu
– reduced base wealth of resources by 50%
– added persistent orders, triggered automatically by the current stocks of the territory
– added trading history
– added buy orders
– fixed empty battle reports issue
– fixed memory leak in battles
– fixed display issue with flags in some menus
– ordered resource lists by alphabetical order
– fixed feedback loop of leader salary and priviledges: only wealth from priviledges can now contribute to treasury
– fixed priviledges reducing wealth of non-capital cities
– exploration events can now happen on tiles with herds
– deserted occupied territories can now decay
– fixed custom worldmap settings not working when creating a new game

The UDP update

UDP networking
This update mainly adds the implementation of UDP into the game’s networking, in an effort to circumvent issues with the engine’s poor TCP implementation that’s been causing constant connectivity issues for some players. 
By diverting some things to UDP, i hope to reduce the triggering of this issue and to therefore increase connection stability for players who had problems.
Note that this means servers now need to forward their port in both TCP and UDP.

Economic rebalancing and cargo bugfix
This update also rebalances some economic things.
Notably it fixes a bug in cargo prices that caused cargo to reach abnormal prices and generating huge income for dock workers and therefore in taxes. 
Cargo was also not purchased properly in the trading balance.
The cost of outposts has also been greatly increased to limit the tendency of players to make cities with the outpost status.

Stored wealth
Besides that, resources now have a basic wealth value which is a constant based on the amount of work required to produce them. This change requires to modify the stats of many buildings, and therefore the production of some buildings has been affected.
This resource wealth was added for a new feature: professional storage buildings now contribute to the territory wealth based on the wealth of all resources stored in them and provided they have a worker. 
Storage buildings now have a customizable priority to better manage them.

A new wealth side pannel is now visible in the economic tab of territories, to see how much wealth is originating from production and storages.

Warning for future updates 
In a future update i plan to heavily penalize the practice of building massive wall “grids” in forts. Walls built on inacessible tiles surrounded by other walls will therefore be penalized by maintenance or decay in ways i still have to decide, so i’d like to warn players designing forts around the use of the surfaces of wall tiles in advance.

The UDP update

– implemented UDP into networking
– added territory wealth pannel in the economic tab of the territory menu
– professionnal storages now contribute to the territory’s wealth based on their content
– resources now have a base wealth value constant, used to calculate the wealth of storages (wealth a constant and is independent from market value)
– added customizable storage priorities
– greatly increased maitnenance costs of gates
– greatly increased maintenance costs of outposts
– rebalanced resources workforce uses and production
– restricted storages now have an automatic priority higher than non-restricted ones
– fixed a bug in cargo prices and trades routes where cargo wasnt being paid for in the trade balance and where dock workers were getting abnormal incomes and generating abnormal taxes as a consequence.
– doubled production of trading service in markets
– doubled storage capacity of warehouses
– added LVL1 market building
– fixed bug where vote isnt cancelled when superior to vote for no longer is a superior in hierarchy
– expelling/quitting nation now previews the treaties that will be broken by this action
– fixed expelling characters from nation not triggering treaty breaking closes if relevant
– fixed issue where loyalty wasnt increasing even when target loyalty was higher than current
– fixed problem with treaties and messages failing to send
– fixed networking issues
– fixed units being visually late when moving long distances on the world map
– fixed crashes when armies retreated more than 1 tile away after a battle
– armies now display on multiple lines when too numerous on a worldmap territory


Yet another Score reform

This small update modifies once more the score calculation, as i still try to find the right balance.
It aims to simplify the score and victory points system by removing the whole system of a reference ‘par’ score, replacing it with a simpler and more intuitive ‘world score’ that is just a sum of the scores of all active characters in the game.
The score cost per VP is also simplified, as it is now set to be equal to 0.5% of that world score, so that 100VP now cost 50% of the world score.
Therefore in order to win a nation will need to control about 75% of the score and to achieve total diplomatic or military domination (because lower ranks do not contribute 100% of their VPs).
Also victory missions are removed, as the coming bigger update adding a “game ending event” will replace these with a more scenarized single event giving a lot of VPs if completed. 

Besides that I’ve started working on exciting new long term features that all need to come together to work, so they will not be “turned on” until everything is ready for it.

Yet another Score reform

– “ref score” is replaced by a world score that is a sum of all character scores, but ignoring inactives in part.
– removed the “score from subordinates” component is from the calculation of character scores.
– the cost of 1VP is now set as equal to 0.5% of the world score, so that 100VP now cost 50% of the world score.
– lowered difficulty of the olive oil project
– fixed a battle pathfinding issue causing server freeze in some cases.
– improved the french localisation
– fixed critical bug with retreating armies disapearing since a previous patch.
– implemented automatic chronicles (not used yet)
– reorganized formation types to allow for the addition of many new types in the future.
– created the “artefact” formation type (not used yet)
– market purchases now impossible if in debt
– formations that have no possible retreat position after a defeat are auto-destroyed
– fixed bug with the choice of retreat location for defeated armies
– fixed bug of corrupted territory data when settling a new tile
– fixed not being able to start projects costing 0 coins when in debt
– fixed modifying/adding researchers to an ongoing project sometimes causing the project progress to reset to 0.
– fixed some of the random program crashes when closing the game
– optimized minor things on the server
– fixed worldmap city icons disapearing when above 2000 inhabitants.

The score & metals update

This small update brings 2 main modifications:

In an effort to increase the amounts of ores traded on markets, the amount of ore necessary to refine metals such as copper, tin or iron have been reduced by 2: it now only takes 1 of ore to make 1 of refined metal. On top of that, the efficiency of the mining shaft annexes have been further increased. This should greatly increase the amount of ore available from mines and give more intensive for players to trade and export it to players with no mines.

The other main change is another modification of score calculations to fix issues preventing games from being won by score even when a nation dominates.
This update should now make victory more possible, hopefully allowing the old “ended” official servers to finally end and be restarted fresh.
To do this, the score inherited from subordinates is increased, resulting in a higher score for the nation leader and therefore more Victory Points. 
And to make the score of a global nation more coherent, it’s now the sum of the scores of all members regardless of their ranks, but excluding the scores inherited from subordinates as it would be redundant.

Besides that, i’m glad to announce that i’ve finally come up with a plan of how to properly end games, which is something i’ve had in the back of my head for a while. Besides the current simple victory by points, the victory missions will be removed and replaced with an “endgame event” that will start with gathering a certain number of artifacts and offer a choice between 2 endings. I don’t want to say more for now! I’ll start working on it soon, but its going to be a big task requiring a fair amount of new features and content to work. This should provide a more satisfying ending to games and something to look forward to when playing.


The score & metals update
– metals now only consume 1 of ore instead of 2 to refine
– mine shaft annexes are much more efficient and productive
– the contribution to nation score now excludes score inherited from subordinates, but it also no longer reduced by position in hierarchy.
– the share of inherited score from direct subordinates has been significantly increased
– storage policy gets reset if resource is unused, to avoid stocking lockdown issue
– fixed more issues with CJK fonts display
– added WIP chinese (simplified) translation
– data of all controlled territories now get preloaded during initial game session loading
– reduced tech & resources spawn bonus in early game
– fixed server crash caused by instacrushing resolution of rebellions in cities
– fixed display issue of claims appearing and disapearing
– fixed dispaly issue of large city sprites missing on worldmap >2000hab
– addded failsafes and logs to better diagnose an ongoing issue of account corruption on some servers
– fixed problems with score UI display
– fixed forum in construction already providing community service (and other similar issues)
– lowered influence of arbitrage when world price is below local price
– fixed issue with prices not updating