Difference between revisions of "Total War: Rome Remastered - Modding"
(Add first portion of data folder analysis) |
|||
Line 399: | Line 399: | ||
− | ====descr_projectile_new.txt | + | ====descr_projectile_new.txt==== |
-- Structure is the same as original but new type of projectile "javelin_with_pilum_skin" has been added | -- Structure is the same as original but new type of projectile "javelin_with_pilum_skin" has been added | ||
-- "min_velocity" attribute has been added (optional setting) | -- "min_velocity" attribute has been added (optional setting) |
Revision as of 05:37, 30 April 2021
Good News! A), Total War: Rome Remastered is here! B), it's moddable!
There will probably be some quirks initially, and because it looks sooo much better, there will also be more work involved in getting mod assets to match up.
Contents
- 1 Mod Set-up
- 2 Textures
- 3 Campaign Map
- 4 Units
- 5 Data folder
- 5.1 Change features inside files in data folders
- 5.1.1 descr_settlement_plan.txt
- 5.1.2 shortcuts_lookup.txt
- 5.1.3 menu_text_descr.txt
- 5.1.4 message_text_look_up.txt
- 5.1.5 export_descr_unit.txt
- 5.1.6 export_descr_buildings.txt
- 5.1.7 export_descr_character_traits.txt/export_descr_ancillary.txt
- 5.1.8 export_descr_advice.txt
- 5.1.9 descr_sounds.txt and its related files
- 5.1.10 descr_subtitle.txt
- 5.1.11 descr_vegetation.txt
- 5.1.12 descr_mount.txt
- 5.1.13 descr_offmap_models.txt
- 5.1.14 descr_particle.txt
- 5.1.15 descr_projectile_new.txt
- 5.1.16 descr_sm_factions.txt
- 5.1.17 descr_landscape_global_uv_grids.txt
- 5.1.18 descr_model_battle.txt/descr_model_strat.txt
- 5.1.19 descr_character.txt
- 5.1.20 descr_cultures.txt
- 5.1.21 descr_daytypes.txt
- 5.1.22 descr_effects_building.txt
- 5.1.23 descr_effects_burning_men.txt
- 5.1.24 descr_effects_burning_oil.txt
- 5.1.25 descr_engines.txt
- 5.1.26 descr_items.txt and its subsidary files
- 5.1.27 descr_aerial_map_bases.txt
- 5.1.28 descr_aerial_map_ground_types.txt
- 5.1 Change features inside files in data folders
Mod Set-up
Mods can be uploaded and used from the Steam Workshop, the placing of those mods will be determined by Steam.
Mods in development can be placed in the 'Mods' folder either in Local Mods or My Mods, the full path to these folders is normally:
- C:\Users\YOURNAME\AppData\Local\Feral Interactive\Total War ROME REMASTERED\Mods\Local Mods\Mods_Name etc.
If you have a small C drive and need to relocate this elsewhere you can use a [ttps://www.howtogeek.com/howto/16226/complete-guide-to-symbolic-links-symlinks-on-windows-or-linux/ hard-link] on your computer, hopefully, the launcher options will later allow an easier way to change directory locations!
Within either Local Mods or My Mods you will then have a folder for Mod_Name. Within Mod_Name folder you need the mod's data folder a modinfo.json and a filelist.json
modinfo.json
This file you write yourself and it gives the name and description of the mod, a sample format is:
{ "Description": "Brief description of you mod goes here", "Mod Name": "Mod name goes here", "Supports Alex": false, "Supports BI": false, "Supports Rome": true, "Tags": [ ], "Visibility": 1, "Workshop ID": 0 }
filelist.json
This is referred to as the 'manifest' for the mod. If you don't have one the game will generate it when you try and launch the mod. If you already have one and you've changed ANY of the mod's files, you should delete this file before launch so a new correct version can be generated.
0kb empty .txt files within the mod can cause an error where the game makes the mod manifest but then thinks it is invalid!
Textures
RR still uses .tga.dds files (e.g. dds files but with the .tga name appended so that text files actually just ask for .tga)
Some textures are compressed using the LZ4 system, these also have an additional header section which can be ignored. IWTE now has an option that will de-compress a directory of these textures back to their starting .dds state.
Some textures are DX10 type, these you can probably open but not see the correct information, if you have a recent version of Photoshop you can use this plugin to open them. Otherwise, you need to convert them to .tga using the Texconv tool or similar. The easiest way to use this tool is by writing a .bat file (so you don't have to remember the commands each time!), and example .bat would be:
@echo off texconv.exe -r my_folder\*.dds -ft tga -o my_folder cmd /k
Fortunately, the game will accept and run happily with non-compressed DXT5 and DXT1 dds textures in the same way as RTW, so you only need to mess about with the above if you need to view or amend some of the existing textures.
RR has introduced a system of Physically Based Rendering for textures, thus the 'normal' textures that have been introduced with RR work slightly differently from the ones in M2TW:
_pbr contain the _n, _s and _m maps they are rgba textures r+b = normal g = roughness a = metallic In other places like building textures you will find that the _n, _s, _m are separate
Campaign Map
One of the areas modders' have been most worried about was whether the game would support completely redesigned maps now that a model mesh system has been introduced for the campaign map. Although this looks like the vanilla shaped map, it's actually partway through porting a version of the Mundus Magnus large map for RTW (originally by ngr).
This still needs a lot of work and 'tweaking' but is working as a proof of concept of what should be possible. (done using a very, very, very WIP unreleased version of IWTE)
Similarities to the original system:
A quick look in the data/world/maps folders will reassure RTW and M2TW modders that the map image and text files they are familiar with are still there. If you have a 'pure map' mod you should be able to use your existing map_heights.tga, descr_strat.txt etc to launch a mod for Remastered without much problem. If the mod has modded units, buildings, ancillaries etc, it will take more unravelling, just as porting a map between different mods would. If you try to copy in all of your mod's files you will probably find either some conflicts, or that you have overwritten new features in Remastered such as the addition of traits and ancillaries to support the new Merchant agent type.
That's the good news... your basic map files are still valid! The basic files drive the campaign map pathfinding, placement of settlements and resources and provide the climate/heights/ground_types information that is translated using the vegetation and geography.db files to make the battle maps.
The not so good news, if you were after a quick result, is that they don't generate the mesh or textures you view on the campaign map! So if you load a map of a different size or shape the areas not covered by the existing mesh, or already on raised land areas, will just appear as sea! They will function, and the trees and settlements will turn up, and your troops will be able to move on the parts supposed to be land... so if you ever wanted to do a mod based in the Everglades, this could be for you.
Revised UI components:
When you scroll into the campaign map or use the tab button, the game display switches to a 2d view with various overlays, the overlays are generated by the game but you will need a large base map underlying them showing your new map outline, the components are as follows:
Large 2D Map:
- data\world\maps\campaign\imperial_campaign\feral_map.tga.dds - 4080 x 2496 size - the alpha layer needs to mask out the sea areas or they will appear black
- data\world\maps\campaign\imperial_campaign\feral_map_winter.tga.dds - winter version as above
Mini Map in 3D view:
- data\world\maps\campaign\imperial_campaign\feral_radar_map.tga - 1020 x 624 size - again mask out the sea area shape from map_regions.tga
- data\world\maps\campaign\imperial_campaign\feral_radar_map_winter.tga - winter version as above
Components needed for new mesh map system:
To make things look good you obviously need to make a new or revised mesh!
Main Terrain and Heights: The mesh is actually formed from square chunks which in the vanilla map represent 20x20m squares in each case file, these can be found in:
- data/terrain/campaign/pieces/ - cas format (will open with IWTW latest version .cas to .dae)
- data/terrain/campaign/descr_map_tiles.txt - text file lists all the cas pieces and which summer/winter textures they use and which heightmap .bin file they use.
- data/terrain/campaign/heightmap/ - bin files for functioning heights generated by the game from each of the pieces - NOTE: the game may initially regenerate these in the base folder instead of the mod folder, if so cut and paste them to the mod folder and run the base game without /heightmap/ files so they regenerate too.
- data/terrain/campaign/textures/ - colour and normal textures for the terrain sections, the cas pieces use conventional uv mapping so although the existing textures are mapped as though projected horizontally, you can alter this. All the land textures with the exception of the farming overlay need to be 'painted' onto each pieces' texture.
Coastline: Gives the surface for the waves/surf effect near the shoreline, and can be found in:
- data/terrain/campaign/coastline/coastline.cas - model of the surface
- data/terrain/campaign/descr_map_coastlines.txt - text file which lists the above model
Rivers: These do not automatically appear where the map_features.tga shows them, instead they use a model surface similar to the coastline in:
- data/terrain/aerial_map/river_mesh.cas - the river model - will only be visible if above the level of the terrain mesh - unfortunately as the game still generates region boundaries with wiggles/bend variety automatically, and doesn't generate the mesh for the rivers, it is currently difficult if not impossible to get rivers and boundaries to align exactly
3D Frame:
- data/terrain/campaign/frame/ - contains a cas model and textures for the 3d frame that hides the edges of the map
map.rwm
RR does regenerate map.rwm files (assuming the same set-up would load under RTW), you may need to check where they have been regenerated.
If you launch vanilla, or a mod with maps in /base, and delete map.rwm, and the game runs, check if the .rwm has been written where you expect! It may tend to write it to: C:\Users\name\AppData\Local\Feral Interactive\Total War ROME REMASTERED\VFS\Local\Rome\WritableMaps as "base_map.rwm", if so, you need to rename it and move it to the appropriate folder.
Attempting to generate a new .rwm whilst there is a base_map.rwm from another folder in /Users/ will CTD.
You can also use map.rwm files from RTW.
Units
Although still .cas files the RR units use the 'type 3' chunk system previously only used for some shoulder pads and minor elements of RTW units using the model_flexi_m system. The main body of the unit can have vertexes weighted variably between any two bones for the lod_0 model. Primary and secondary weapons must still exist within the .cas as a separate mesh and use only one bone.
Only the base .cas name is given for the model in the DMB file the game looks for and needs four model .cas files for each model named:
- base_name_lod0.cas
- base_name_lod1.cas
- base_name_lod2.cas
- base_name_lod3.cas
If you haven't got 4 different lod level models, copy the closest one you have and re-name it to suit.
Data folder
Most of content are similar to original with some additional files/folders and additional lines
New folders (possible for future update due to game still have possible future update)
sting_overrides feral_texture_sheets ui_overrides original_overrides feral_textures characters animals toggles
These are new files add to remastered in data folder (possible for future update due to game still have possible future update)
chat_filter.san (used to exist only in alexander version of RTW original) checksum_blacklist.txt descr_effects_siege_tower_collapse.txt (also add to BI/data folder) descr_effects_torch_fire.txt descr_faction_groups.txt (also add to BI/data folder) descr_fog_params.txt descr_font_db_zh_cn.txt (chinese font database) descr_font_db_ru.txt (russian font database) descr_names_feral.txt (also add to BI/data & Alexander/data folder) descr_names_lookup_feral.txt (also add to BI/data & Alexander/data folder) descr_mission_modifiers.txt (modify agent mission's success rate) descr_model_battle_template.txt (also add to BI/data & Alexander/data folder) descr_model_strat_template.txt (also add to BI/data & Alexander/data folder) descr_prebattle_script.txt (also add to BI/data folder) descr_quick_battle_locations.txt descr_riverbanks.txt descr_skeleton_feral_overrides.txt descr_sm_factions_difficulty.json (also add to BI/data & Alexander/data folder) descr_sm_resource_groups.txt descr_time_of_day.txt descr_unit_variation.txt (also add to BI/data & Alexander/data folder) do_not_invert_normal_texture_list.txt export_descr_advice_timing_feral.txt export_descr_prologue_feral.txt export_descr_prologue_enums_feral.txt feral_descr_ai_personality.txt (modify priority of each ai personality) feral_descr_grass_textures.txt feral_descr_grass_usage.txt feral_descr_portraits_variation.txt (also add to BI/data & Alexander/data folder) feral_descr_tonemap_lut.txt feral_export_descr_unit.txt (also add to BI/data & Alexander/data folder) ui_sprites_warmer_version.txt (sprite generation history?)
New folders add to BI\data
original_overrides shaders terrain
New files add to remastered in BI\data folder (possible for future update due to game still have possible future update)
export_descr_prologue.txt
New folders add to Alexander\data
shaders terrain
Change features inside files in data folders
descr_settlement_plan.txt
Mostly the same as original but have some change (some could be considered as "fix" rather than substantial change) -- more variation of roman and greek tenament replacing to original roman/greek_tenamentA/B/C/D/E
roman_tenamentA1 roman_tenamentA2 roman_tenamentA3 roman_tenamentA4 roman_tenamentA5 roman_tenamentB1 roman_tenamentB2 roman_tenamentC1 roman_tenamentC2 roman_tenamentC3 roman_tenamentD1 roman_tenamentD2 roman_tenamentD3 roman_tenamentD4 roman_tenamentD5 roman_tenamentE1 roman_tenamentE2 greek_tenamentA1 greek_tenamentA2 greek_tenamentA3 greek_tenamentA4 greek_tenamentA5 greek_tenamentB1 greek_tenamentB2 greek_tenamentC1 greek_tenamentC2 greek_tenamentC3 greek_tenamentD1 greek_tenamentD2 greek_tenamentD3 greek_tenamentD4 greek_tenamentD5 greek_tenamentE1 greek_tenamentE2
-- change tree location in urban_amphitheatre_group -- egyptian/eastern/carthaginian bazaar (market forum level) nolonger using underlay (but still using overlay) -- BI's barbarian castrum (BI_government_lvl_5) nolonger using overlay -- BI's barbarian great hall (BI_government_lvl_4) nolonger using overlay -- BI's barbarian hundredmen hall (BI_barb_barracks_lvl_5) nolonger using overlay -- BI's barbarian hall of heroes (BI_barb_barracks_lvl_4) nolonger using overlay -- BI's barbarian swordsmiths (barbarian_armourer) nolonger using overlay -- BI's barbarian guild hall (BI_barbarian_great_forum) nolonger using overlay -- BI's barbarian stable level 4 (BI_barb_stables_lvl_4) nolonger using overlay -- BI's barbarian stable level 5 (BI_barb_stables_lvl_5) nolonger using overlay
shortcuts_lookup.txt
New shortcut which not exist in original added into remastered
moderntw rot_accel rot_decel end_game_scroll end_turn news_move_left news_move_right news_move_up news_move_down campaign_map_overlays_button buildings_button army_button agents_button fleets_button agent_hub_button settlements_lists_button army_lists_button agents_lists_button settlements_button toggle_tact_map lists_button retinue_button toggle_force_melee melee_missile_formation_swap display_unit_info about_face
new entries added.
UI_EXIT_FOR_GAMERANGE UI_MP_ONLINE_GAMERANGER UI_ADVICE_MULTIPLAYER_GAMERANGER UI_GAME_RANGER_LAUNCH_ERROR
message_text_look_up.txt
"daughter_retired" event removed.
export_descr_unit.txt
-- voice type "General_1" is nolonger used -- animal type changes --- 'wardogs' changes to 'wardog' --- 'pigs' changes to 'pig' --- add new animal type 'hound' (uses by celtish wolfhounds) -- new attribute "voice_indexes" -- new opitonal attribute that create diversification of units appearance (consider optional as not all units need define this attribute) --- "ethnicity <faction>, <home_region>, (opt)<don't_allow_mixed>, (opt)<don't_allow_regional>, (opt)<don't_allow_custom>" (could have more than 1 type of each units based on faction ownership or where you recruit, home region is based on "descr_unit_variation.txt") --- "is_female" --- "tattoo_color" --- "hair_color" --- "hair_style"
export_descr_buildings.txt
-- merchant agent add to market buildings -- new building attribute "agent_limit_settlement" -- new condition "tavern_bonus" (allow additonal bonus to be add as option setting for remaster rule)
export_descr_character_traits.txt/export_descr_ancillary.txt
-- some traits and retinues changed or removed due to value could not stand with resistance of modern time. -- NightBattleCapable is included in imperial campaign -- traits and retinues for character type merchant added -- personality_security attribute valid for merchant -- new attributes effect "Finance", "Conditional", "ElephantCommand" -- new condition "Toggled" (switch setting as optional setting for remaster rule) -- new condition "RemasteredEducation" (switch setting as optional setting for remaster rule) -- new condition "NightBattlesEnabled" (switch setting as optional setting for remaster rule) -- new condition "RegionTradingResource" -- new condition "HomeSettlementBuildingExists" -- new condition "SettlementMerchantTradingWith" -- new event "AcquisitionMission", "SufferAcquisitionAttempt" -- new Affects condition "Lose" -- new effect "RemoveAncillary" -- 'sultry_strumpet_ancillary.tga' is replacing by 'young_woman_ancillary.tga'
export_descr_advice.txt
-- "Presentation Forced" is now using for tutorial early advice -- additional item attribute "Manual" -- new condition "SettlementHasDamagedBuilding" -- new condition "I_IsTutorialEnabled" -- new condition "LocalPlayerHasReinforcements" -- new condition "LocalPlayerHasAIReinforcements" -- new condition "LocalPlayerHasManualReinforcements" -- new condition "LocalPlayerBattlesFought" -- "ScrollAdviceRequested" change --- 'own_garrison_info_scroll' change to 'recruitment_sub_frame' --- 'field_construction_scroll' change to 'field_construction_sub_frame' --- 'building_browser_scroll' change to 'building_browser_subframe' --- new scroll 'own_army_in_field' --- new scroll 'own_fleet' --- new scroll 'own_diplomat' --- new scroll 'own_spy' --- new scroll 'own_assassin' --- new scroll 'own_merchant' --- new scroll 'foreign_character' --- new scroll 'foreign_settlement' --- new scroll 'rebel_character' --- new scroll 'own_settlement' --- new scroll 'campaign_hud' --- new scroll 'settlement_details' --- new scroll 'settlement_trade_details' --- new scroll 'character_details' --- new scroll 'construction_subframe' --- new scroll 'mercenary_sub_frame' --- new scroll 'smo_settlement_list_subframe' --- new scroll 'smo_generals_list_subframe' --- new scroll 'smo_agents_list_subframe' --- new scroll 'smo_admirals_list_subframe' --- new scroll 'news_panel' --- new scroll 'prebattle_scroll' --- new scroll 'faction_overview_scroll' --- new scroll 'senate_scroll_policy_tab' --- new scroll 'senate_scroll_senate_floor_tab' --- new scroll 'ranking_tab' --- new scroll 'diplomatic_standing_tab' --- new scroll 'financial_overview_tab' --- new scroll 'family_tree_tab' --- new scroll 'lists_scroll' --- new scroll 'move_retinue_scroll' --- new scroll 'agent_hub_scroll' --- new scroll 'battle_news_panel' --- new scroll 'tactical_map' --- new scroll 'toggle_menu'
-- have similar attribute setting to original version -- all subsidery files reorganized into 3 files in folder data/sounds/descrs (with a lot of subsidery files related to them) -- human voice narration is now using .opus instead of .mp3 --- descr_enum_sounds.txt (related to setting of generic sound effect of UI) --- descr_misc_sounds.txt (for sound of custom event that not related to soundbank such as archer/slinger/javelin's aim/fire/load, engine/chariot operate/destroy, animal's attack/death, screeching, chanting, weapon scraping, historica; battle narrations) --- descr_bank_sounds.txt (with a lot of subsidary which now organized based on sound bank and nolonger lump some sound banks into the same file)
descr_subtitle.txt
Format of this file stay the same but there entry of video intro for Spain, Thrace, Numidia, Scythia, and Armenia has been added in remaster
descr_vegetation.txt
Structure of this file is the same as original but with more LOD have been added and add RomeHD section for textures varient and distribution of vegetations.
descr_mount.txt
Structure is the same as original but with additional attribute setting for "water_trail_effect_running"
descr_offmap_models.txt
Structure of this file is the same but model replacing by high definition version.
descr_particle.txt
-- Structure of this file is the same except for additional action "friction", "friction_horizontal" along with additional attribute "normal_map", and "shading". -- Additional texture frames have been added. -- grunge, sand, grass, and fire particle type have been added.
descr_projectile_new.txt
-- Structure is the same as original but new type of projectile "javelin_with_pilum_skin" has been added -- "min_velocity" attribute has been added (optional setting)
descr_sm_factions.txt
Structure similar to original but have addtiional attributes have been added.
ethnicity (optional?) ftree_background_colour ftree_font_colour ftree_selected_line_colour ftree_unselected_line_colour
descr_landscape_global_uv_grids.txt
Structure of file is the same as original but entries "grid 5" and "grid 6" have been added.
descr_model_battle.txt/descr_model_strat.txt
Structure of this file have been changed considerably. -- type stay the same structure -- skeleton stay the same structure -- scale stay the same structure -- new optional attribute "male/female", "body", "angry_face", "medieval features", "tired", "aged" have been added below "scale" attribute but before "pbr_textures" -- "indiv_range" has been replacing by "pbr_texture" in remastered -- texture attribute is the same structure -- model/model_flexi implemented with 2 method of implement LOD, either doing the same as original (in case there is no varient model) or implement its name with omission of "_lod0.cas"/"_lod1.cas"/"_lod2.cas"/"_lod3.cas" at the end of file from the line. -- "no_variation" varient of for model/model_flexi has been added. (still need to study further what it is using for) -- "model_sprite" and "model_tri" are not using in remastered
descr_character.txt
Structure of file is the same as original but have additional section for merchant agent.
descr_cultures.txt
Structure of file is the same as original but have additional line for setting cost/turn need for recruit and UI of merchant agent.
descr_daytypes.txt
Structure of file is the same as original but have additional attribute "grunge" for each weather event and weather event "sand_storm" has been added.
descr_effects_building.txt
Structure of this file is the same as original but have additional attributes "is_soft", "soft_contrast", "soft_scale" and new additional effect type "dust_explosion" and effect set "dust_explosion_set".
descr_effects_burning_men.txt
Structure of this file is the same as original but effect and its set have been remade into different effect and effect type
descr_effects_burning_oil.txt
Structure of this file is the same as original but have additional attributes "is_soft", "soft_contrast", "soft_scale" but effect and effect set has been reorganized.
descr_engines.txt
Structure of this file is the same as original with 5 changes -- "engine_outline" model attribute has been added to all sections before engine_model attribute. -- sound effect type "arrow_tower" and "ballista_tower" have been add to siege tower engines at the end of their weapon attack_stat -- sound effect type "none" have been add to ram -- engine's "collapse_effect" have been add to siege towers -- ladder radius of change from 15.5 in original to 8 in remastered
descr_items.txt and its subsidary files
Structure of this file is the same as original with additional items add organized into file 'di_lorenzo_romehd.txt' in descr_items.txt
descr_aerial_map_bases.txt
-- Structure of this file is the same as original with additional attribute "size" include to each type entries of this file. -- different from original, engine priority .tga.dds before .tga when loading strat map texture files.
descr_aerial_map_ground_types.txt
-- Structure of this file is the same as original with some textures names change from original -- Could not confirm what type of file it loading between .tga or .tga.dds due to content lock inside pack file (for now)