⚜ SteamCozy

Home / News / The Guild II Renaissance

4.67 (Beta) - Mod Architecture Revamp & UI Scaling & More

The Guild II Renaissance · Community Announcements · June 25, 2026

Read the original on Steam ↗

We have deployed a new Beta patch in response to the latest feedback. It is centred on the mod architecture and the tools around it, but this round also incorporates more bugfixes, economy/balance tweaks, UI Scaling and new minor additions.

To access this beta patch, you must opt-in to the Beta branch by navigating to Steam Library > The Guild 2: Renaissance > Properties > Game Versions & Betas > patch_4.6.

For this release, the version shown on the main menu is "4.672".

Our official mod Reforged has been updated for this update. It may take a few minutes for Steam workshop to distribute the new files. Do not forget to update your mod in the game's launcher, using SYNC after the Steam workshop download has finished downloading the new mod update.

Since mod architecture has been changed, it is important to grab the new changes. By default, Steam Workshop and our mod launcher should get rid of older, deleted files. If that is not the case on your side for some reason, and issues arise, please attempt to delete the mods manually both in the mods folder of the game and in the Steam workshop's download paths (typically in \\steamapps\\workshop\\content\\39680\\*) and force re-downloading the mods.


New:

Fixed:

Changed:

Good to know: If you share your game's session on a Discord livestream, it has been seen to cause heavy stuttering over long periods of time. It is recommended to restart your Discord livestream when this happens.

On some occasions, if the host takes too long to complete an autosaving operation, the game might ask for a resynchronisation. We are investigating this issue.


Special Notice for Modders

With stackable mods, content mods now need to declare compatibility. Add this line to your modinfo.txt once you have adapted your mod for 4.67+:

ModArchitecture=4.67

Any content mod missing this line (or declaring an older version) is automatically disabled at startup, with a message listing what was turned off, and marked "⚠ OUTDATED" in the launcher. This now applies even if the mod was enabled directly in the activation file. Add the line once you've verified your mod works with this version. World mods and Light Translation mods are exempt.

Please update your mods to use the newest architecture. If you are a translation mod that is not set as a "Light Translation Mod", we recommend converting your mod to be a "Light Translation Mod".

Please note that the game launcher should successfully get rid of deleted files in a mod update.

We will monitor the workshop to ensure mods get updated as intended and will provide support to help navigate through this new dynamic system.

See below for more details.


Special Notice for Community Translators

Once you've joined us on Discord, you can find a list of tokens used in the localization tables here.


Special Notice for Save Files

You can load a save regardless of which mods are currently active. If a save's scripts differ from what is installed, the game now offers to update them (it does it automatically in singleplayer). The older saves update automatically when a game update is downloaded, as well as when you update a mod.

Your savefiles should be compatible with the previous versions of the game. But it is possible that you run into issues regardless of our attention for it. If you do, you may try to start a new game. The most sensitive in this case would be if you are wanting to continue playing a Reforged savefile: make sure your mod is updated using the game launcher and hitting SYNC to grab its 4.67+ update (available right now).

When the host updates a save's scripts in Steam MP, the change is synced to everyone in the session. If you are playing alone, no resync is needed.


Special Notice for Mods Conversion following 4.67+

More are now overlaying each other, and are applied on top of vanilla. The only files you ship with your mods are those that are either modified or added. Everything mirrors the game's own structure.

vanilla > mod (low priority) > mod (higher priority) > mod (highest priority).

A mod with the highest priority is applied last in the stack, which means that it rules over vanilla and all other files.

Files can combine during this entire overlaying stack, accross all mods, from vanilla to the end of the chain. Regular DataBase Tables (.DBT) include a brand new "per row level merge" with complete line-per-line changeability and updating. Though of course, localization tables work just the same as before, with fallbacks to English and vanilla (everything is merged in the end).

Lua Scripts, Textures, Objects, Sounds, GUI, Worlds, etc: these operate on a whole-file override principle. If your mod includes any new file, it will load and add them to the flowing stack of modified content, and also will replace any other of the same name added in the chain of modification from before.

A typical mod folder layout would be the following (although not all new features are reflected here):

MyMod/

├─ modinfo.txt ← required: name, author, version...

├─ DB/

│ ├─ Items.dbt ← partial data edits

│ ├─ Items.del ← (optional) row deletions for Items

│ ├─ deletions.txt ← (optional) deletions for many tables at once

│ └─ Languages/*

│ │ └─ Text.dbt ← text/loca additions & overrides (root folder English)

├─ Scripts/

│ └─ Measures/

│ │ └─ ms_022_ProduceSmithy.lua ← overrides the vanilla script of the same path

├─ Textures/Hud/myicon.tga

├─ Objects/... ← models etc

├─ sfx (or msx)/... ← sound effects, voices / music

├─ GUI/... ← .gui layouts

└─ Worlds/... ← custom maps

So two mods may for example edit the same .DBT file, such as "Items.dbt", without ever breaking the game. And if there is any conflict, the mod launcher will report on that ; although it doesn't always mean that the game would be not running properly.

.DBT files start with a "Table Description", which enumerate what will be expected in themselves. Typically this would be a block declaring the columns, and Data: would show its rows.

When the engine merges your partial table onto the base, it works row by row, matched by IDs:

A new token, ~, is now used to specify "Keep what precedes me for this parameter". It is a key to clean edits for DataBase Tables. When you put it into a column, it means that whatever comes before stays as it was: do not touch it, keep vanilla or lower mods for this specifically!

Example.

Table Description:

"id" INT 0 | "name" STRING 0 | "type" INT 0 | "price" INT 0 |

Data:

1042 "~" "~" 85 |

In this example, you only modify the price of row 1042 to 85. If a later patch modify "name" or "type", then your mod will adapt, since it is set to ignore these modifications except for the "price". But how to add a brand-new row?

Data:

7200 "MyNewSword" 2 500 |

As simple as that, simply put your new row in that file.

Please note that you do not have to include the entire vanilla rows into your modded .DBT files. Only include your editions and additions!

How to delete rows, then? You can use a ".del" file that you put next to the table. For example, DB/Items.del with this content:

# remove these items entirely

1042

1043

Alternatively, you can consolidate all deletions in a global "deletions.txt" in your DB/ folder with the following pattern:

\[Items]

1042

1043

\[Measures]

7150

When adding new entries, it is recommended to specify a numerical ID that is not used in vanilla and other mods.

On the topic of localization.

The DB/Languages/* files work differently than regular .DBT files. They all merge into one keyspace, ordered by the string label and not by row IDs. If you want to change or add text, you simply ship a Text.dbt (for example) that contains the labels you added or edited such as:

Data:

16850 "_MP_LOBBY_MUSTRESTART" "Restart required to play multiplayer again." |

99001 "_MY_NEW_STRING" "Hello, world!" |

To override an existing string, use the same label with your next text.

To add a new string, simply add it and give it a unique unused string key.

For translations, you can drop language copies in DB/Languages/#thelanguagename/Text.dbt etc (root folder is English).

On the topic of Lua Scripts.

Lua scripts are whole-file overrides by path (and additions). To change existing behavior, you must drop your edited copy at the exact same path than a vanilla script (unless its path was modified in a .DBT file). Your version will win over all mods and vanilla that precedes.

Usually, to create new measures, you would edit the Measures.dbt, MeasureToObjects.dbt, Filter.dbt and add the localization keys it needs in the Languages DBTs.

You can specify which scripts to delete in _removed.txt in the Scripts folder, if there is any that you want prior mods or vanilla to not include.

Please make sure your new lua scripts do not overwrite other scripts if they are not meant to do so: name them with a unique name, even if the pathing is different.

All Lua functions can be accessed in other scripts. You simply have to type to access them.

Textures, 3D files, sounds, GUI, worlds.

These are also whole-file overrides by path (and additions).


We would like to thank our beta-testers, with whom we ran multiple hours-long lobbies (with up to 10 players at once):

As always, please make sure the version shown on the main menu is "4.672" before playing, and let us know if you run into anything.

Thank you for your patience, and happy modding!

The Guild II Renaissance MORE ON STEAMCOZYThe Guild II Renaissance 82.7% positive · 3,904 reviews Price tracking · player charts · similar games →