There you have it. After the LiF:YO patch came out yesterday with some changes having impact on the custom map setup procedure, TerraTool was updated to 1.2.0 last night. It comes along with new features, new graphics, more customization options and a new map. Full changelog here.
New Forest Soil Algorithm
In TerraTool prior to version 1.2.0, forest soil was ‘sprinkled’ evenly with low density across the whole map. This boring approach has been replaced by two different methods that should ensure more diverse and realistic forest soil patterns. The random dispersion method is somewhat similar to the old algorithm, but creates bigger coherent patches of forest soil along with normal soil in between them. The slope based method will create forest soil wherever the surface has a very low (or no) slope. This will create large coherent forest areas and large bald areas. Depending on how you might scale the map using the ‘max altitude’ option, slope method might create far too much or far too few forest soil. It’s kind of experiemtal for now, so feel free to try it out and if you don’t like it, you can always fall back to the random dispersion.
For better understanding, this example shows Volcano map on default altitude using both methods:
Customizable Resources And Updated Graphics
The map graphics generated by TerraTool got a visual overhaul. It’s using darker colors and a stronger relief now. This should come closer to what the map will look in the in-game minimap eventually.
In addition, the amount of all resources can be adjusted in map deployment options now. The entire routine to distribute resources has been rewritten from scratch and is very precise now.
New Map ‘Wishbone’
This map is what I think most people prefer for terrain. Mountains that are ‘compact’ and don’t waste large areas of the map, plenty of flat area to build on, a lake and some rivers. I’ve also experimented with plateaus for a bit and I think they look pretty cool.
As for the naming of this map, please don’t blame me. I have irrefutable evidence that Alakar is to blame for it. 🙂
Original Map Modifications
Patches for the original map are available to everyone. No issues were reported during the testing phase, so I’ll assume it’s safe to use. Anyway: take a backup for your server before applying the patch. Just in case something goes wrong during the database writes. You can find this in the Map Generator section, all the way down below the custom maps. Database access is needed.
Fix For Certain Custom Map Servers
In most cases, Custom Map servers will be fine after the recent patch 220.127.116.11, which hopefully fixes all the bugs that have been introduced since 18.104.22.168. However, there is one circumstance that will give a small amout of servers issues. This will be wherever all these conditions match:
- TerraTool prior to 1.2.0 was used to deploy the map
- Direct database distribution method was used
- Server was added to TerraTool using a different database user than the gameserver is using
This combination will most likely cause permission issues when the game tries to apply the changes from the “patch.sql” script supplied with the recent game update. (yes, even the fixed one in 22.214.171.124)
There is however an easy fix for that. All you have to do is manually delete these procedures and functions from your database if they exist, one by one:
f_addForestPatch f_addGeoPatch f_createGuild f_createGuildClaim f_deleteContainer f_deleteItem f_getServerUUID f_insertCustomText f_insertNewItemInventory f_removeCustomText f_renameContainer f_treeQualityToTreeHealth p_addClaimSubject_char p_addHeraldry p_addObjectPatch p_allocate_character_wounds p_allocate_equipment_slots p_changeGuildLeader p_compactForestPatches p_completeBuilding p_createHorseObject p_createMovableObject p_createUnmovableObject p_dbg_checkIdRangeConsistant_unmovable_objects p_dbg_checkIdRangeConsistent_horses p_dbg_checkIdRangeConsistent_movable_objects p_deleteBlueprint p_deleteCharacter p_deleteClaim p_deleteClaimSubject_char p_deleteGuild p_deleteHorseObject p_deleteMovableObject p_deleteUnmovableObject p_dropMovableObject p_issueIdRange_horses p_issueIdRange_movable_objects p_issueIdRange_unmovable_objects p_linkBlueprintToCharacter p_occupyId_horses p_occupyId_movable_objects p_occupyId_unmovable_objects p_recreateUnmovableObject p_transferMovableObjItems sp_checkForeignKeys
After that, restart server and you should be good.