Difference between revisions of "Creating New Campaign Map in Rome Remastered"
(iwte template) |
(→3D Mesh Components: updating for v 2.0.2 and iwte) |
||
Line 86: | Line 86: | ||
===Main Map Mesh=== | ===Main Map Mesh=== | ||
The main map mesh comprises most of what you see in the 3D campaign map, its components are as follows: | The main map mesh comprises most of what you see in the 3D campaign map, its components are as follows: | ||
+ | |||
+ | ====Text Files and Folder Structure==== | ||
+ | From version 2.0.2 onwards, for a mesh to be read from a mod folder some components and the text files must be in: | ||
+ | *'''data/terrain/campaign/CAMPAIGN_NAME/''' - where CAMPAIGN_NAME matches the name of your campaign folder in data/world/maps/campaign, so for a BI mod this would be barbarian_invasion, for Rome it would be imperial_campaign etc. | ||
+ | |||
+ | |||
+ | |||
+ | *'''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. | ||
====Campaign cas pieces==== | ====Campaign cas pieces==== | ||
Line 109: | Line 117: | ||
Ideally, name your new piece .cas files differently from the vanilla ones to avoid any accidental overwriting. | Ideally, name your new piece .cas files differently from the vanilla ones to avoid any accidental overwriting. | ||
− | + | ||
− | |||
====Textures==== | ====Textures==== | ||
Line 130: | Line 137: | ||
===Rivers=== | ===Rivers=== | ||
− | *'''data/terrain/ | + | *'''data/terrain/campaign/CAMPAIGN_NAME/river_mesh.cas''' |
This is the model used to display the rippling water surface of the rivers. It is not automatically generated by the game and will not change to suit your map_features.tga changes. Unfortunately, as the game does still use map_features.tga information to generate the region boundaries (with wide wiggles/bends), it is currently difficult if not impossible to get rivers and boundaries to align exactly. Altering descr_aerial_map_tile_models.txt to force the game to use the simpler 'straight' sections for line elements can reduce the anomaly. | This is the model used to display the rippling water surface of the rivers. It is not automatically generated by the game and will not change to suit your map_features.tga changes. Unfortunately, as the game does still use map_features.tga information to generate the region boundaries (with wide wiggles/bends), it is currently difficult if not impossible to get rivers and boundaries to align exactly. Altering descr_aerial_map_tile_models.txt to force the game to use the simpler 'straight' sections for line elements can reduce the anomaly. | ||
Line 137: | Line 144: | ||
===3D Frame=== | ===3D Frame=== | ||
− | *'''data/terrain/campaign/frame | + | *'''data/terrain/campaign/CAMPAIGN_NAME/frame''' - contains a cas model and textures for the 3d frame that hides the edges of the map, the textures are called from names within the .cas model, not from a text file. |
===Strat Models=== | ===Strat Models=== |
Revision as of 03:32, 25 July 2021
The underlying map structure in Total War: Rome Remastered is exactly the same as for the original game and can still be changed via text file and tga image alterations, however, the visual element of the campaign map is now provided by a separate 3D mesh and textures.
- For general information see Total War: Rome Remastered - Modding
- For differences between Remastered files and RTW see File Differences - Rome Remastered
- For detail on changes needed to port existing maps see Porting a Mod to Rome Remastered, Mapping/Campaign Differences
IWTE |
---|
Useful Reference: |
Map Structure
Functional Map
The Rome Remastered map system uses the old RTW base map_*.tga and text file system to generate the functional map, this original system still controls:
- Coordinates of settlements and ports and starting position of characters and agents
- Region boundaries
- Which areas are sea, accessible land, or blocked land (deep forest/mountains)
- Locations of features, such as cliffs, volcanos and rivers, so far as they effect events and movement on the map.
- Heights, ground_types and climates as used to generate battle-maps at each coordinate (modified by the geography.db).
Visible 3D Campaign Map
The visible 3D campaign map is created separately and is NOT automatically generated or changed by changing the base map files, it has no effect on the battle-maps generated from a battle on the campaign map. The 3D campaign map comprises:
- Cas mesh pieces and textures
- Heightmap bin files generated from the mesh pieces (used to set heights for display of cas models)
- Cas models for trees, settlements and resources (as in original RTW)
- Cas model and textures for the frame
- Cas model for the coastline (uses the surf texture and has a wave motion applied)
- Cas model for the rivers (has a moving 'water' texture applied)
It is possible to load a functional map with a non-matched 3D map, however, this will be confusing to the player, and too large an area of additional map, including trees/settlements etc that need placement, without the appropriate heightmap bins generated from the mesh appears to cause an errorless CTD on loading.
2D map overview
Additionally, there is a 2D map overview section, which is displayed with the map fitted to screen size, the base images for it are the feral_map tga files in the campaign folder. The game generates overlays for this map view based on the game state and the functional map (e.g. boundaries are from map_regions.tga)
Functional Map Components
Any base map that loads under RTW should be capable of loading under RR including using the map.rwm from RTW. For general advice on making a Rome Total War map see the Mapping Index.
The files involved are basically the same as for RTW:
- In data/world/maps/base:
- descr_terrain.txt - must include width and height of map_regions.tga
- descr_regions.txt
- descr_disasters.txt - can be blank but leave comments in to avoid 0kb file breaking filelist manifest
- map_climates.tga - 2 x map_regions size +1
- map_FE.tga - variable size
- map_features.tga - map_regions size
- map_ground_types.tga - 2 x map_regions size +1
- map_heights.hgt - not required but see notes below
- map_heights.tga - 2 x map_regions size +1
- map_regions.tga - sets the size for other files
- map_roughness.tga - 2 x map_regions size - required but doesn't appear to be used
- map_trade_routes.tga - map_regions size - required but doesn't appear to be used
- water_surface.tga - 256 x 256 - does not appear to be used in Remastered
- map.rwm - generated by the game if a map is loaded that does not have one
- In data/world/campaign/campaign_name:
- descr_events.txt - can be blank but leave comments in to avoid 0kb file breaking filelist manifest
- descr_mercenaries.txt
- descr_strat.txt - (a version of this file is also placed in data\original_overrides\resource_quantity\world\maps\campaign\imperial_campaign and is used if the user toggles resource setting to original)
- descr_win_conditions.txt
- feral_radar_map.tga and feral_radar_map_winter.tga - 1024 x 624
- description files and leader pictures
For provincial campaigns, or if desired to have different campaign map to custom battle maps you can copy the base folder files into the campaign folder.
- In data/text
- campaign_name_regions_and_settlement_names.txt - alternate language versions of this file will be required if different region/settlement names are used in the mod versus vanilla campaign
Differences from RTW
descr_strat.txt
The default descr_strat.txt used for 'remastered' settings has a quantity value specified for each resource, e.g.
resource marble, 3, 56, 62
which would give you one visible model but 3x the resource value to a merchant. This value is before the x/y coordinates so you need to add 1, here if you only want a single resource.
descr_win_conditions.txt
For hold_regions condition, the Settlement name must be used NOT the Region Name
map_heights.hgt
This is the same as in RTW, in case you've forgotten, you don't need to use a .hgt file the game will generate a map.rwm from just map_heights.tga, but the .hgt file can provided finer detail. However, if your map is the same size as the vanilla map in data/world/maps/base - then you either need your own .hgt file, or you will have to delete the base games' .hgt file - otherwise the game will just use that information instead of your map_heights.tga
3D Mesh Components
The components of the 3D mesh are .cas model files, the image below shows parts from the vanilla map including: the frame; some of the main mesh cas tile pieces; the coastline mesh; and the river mesh (highlighted).
Cas components can be converted to other formats for editing in Blender or 3dsMax, IWTE supports .cas to .dae functions, other tools may provide different import/export options.
Main Map Mesh
The main map mesh comprises most of what you see in the 3D campaign map, its components are as follows:
Text Files and Folder Structure
From version 2.0.2 onwards, for a mesh to be read from a mod folder some components and the text files must be in:
- data/terrain/campaign/CAMPAIGN_NAME/ - where CAMPAIGN_NAME matches the name of your campaign folder in data/world/maps/campaign, so for a BI mod this would be barbarian_invasion, for Rome it would be imperial_campaign etc.
- 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.
Campaign cas pieces
- data/terrain/campaign/pieces/ - cas format (will open with IWTE latest version .cas to .dae)
The mesh is formed from these pieces joined together, the pieces should be rectangular and all at the same size. These mesh pieces are not automatically generated by the game so will not correspond with any changes made to the mapping .tga files unless you adapt them.
Currently, RTW/BI seems to require a minimum of 104x files listed in descr_map_tiles.txt and also 13 tiles width in order for the heightmap bin files to work properly.
IWTE now provides a function to make appropriately contoured campaign cas pieces from your map_*.tga files, see IWTE - Rome Remastered Functions for details.
The vanilla pieces are numbered from 001 starting in the bottom right corner, 013 is in bottom left, 014 above 001 in next row starting on the right etc.
Heightmap bins
- data/terrain/campaign/heightmap/ - bin files for functioning heights generated by the game from each of the pieces
The game generates .bin files based on the height information in the mesh piece .cas files. The data in the .bin files is for height points only no x,y coordinates are given. This data is used to set the height of settlement, tree and resource models on the campaign map, and to set the 'ground level' that armies and agents stand on. Each heightmap .bin file generated comprises 40,401 float values representing height points, no x/y coordinates are given, so it is assumed that these are spread evenly over the cas piece area in a pre-set manner.
Using a data\terrain\campaign\descr_map_tiles.txt file with differently named .cas and .bin files requested than in the original game will trigger the game to write new .bin files, if these files don't already exist in the mod-folder they will be written in:
- data\terrain\campaign\heightmap
That's the main game data folder not the mod-folder, cut and paste them from there to your mod-folder! Cut, because if they overwrote your original game files, you will need to let the vanilla game recreate them based on the correct map.
Ideally, name your new piece .cas files differently from the vanilla ones to avoid any accidental overwriting.
Textures
- data/terrain/campaign/textures/ - file path/s are as specified in above text file.
Individual colour and normal textures for each of the case pieces, 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.
The textures used are .dds files, if they are supplied with mip-maps then the game changes which mip-map level it starts at according to the graphics quality settings as shown below. So for the 'low' quality setting with a 2048x 2048 sized dds file with mip-maps you will only ever see the 256 sized map, however closely you try to zoom in.
Coastline
- data/terrain/campaign/descr_map_coastlines.txt - text file which gives location for model
- data/terrain/campaign/coastline/coastline.cas - typical location and name
The coastline model gives the surface used for the waves/surf effect near the shoreline. data\terrain\aerial_map\sea\surf2b.tga.dds gives the colour and alpha effect for the wave but the movement of the wave appears to be hard-coded.
The wave effect will be visible on the coastline model even in areas where it is below the level of the terrain mesh.
Rivers
- data/terrain/campaign/CAMPAIGN_NAME/river_mesh.cas
This is the model used to display the rippling water surface of the rivers. It is not automatically generated by the game and will not change to suit your map_features.tga changes. Unfortunately, as the game does still use map_features.tga information to generate the region boundaries (with wide wiggles/bends), it is currently difficult if not impossible to get rivers and boundaries to align exactly. Altering descr_aerial_map_tile_models.txt to force the game to use the simpler 'straight' sections for line elements can reduce the anomaly.
The parts of the river cas model will only be visible if above the level of the terrain mesh.
3D Frame
- data/terrain/campaign/CAMPAIGN_NAME/frame - contains a cas model and textures for the 3d frame that hides the edges of the map, the textures are called from names within the .cas model, not from a text file.
Strat Models
These operate as in RTW with separate models for trees, resources and settlements, placed either by descr_strat.txt, map_regions.tga or according to ground type.
Game Engine Applied Textures
Region boundaries set by map_regions.tga are applied by the engine to the mesh surface partly using the routes/shape of rivers as generated by map_features.tga.
The farming overlay for fertile land is also applied in areas determined by the game engine.
2D View Components
Large 2D Map
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:
- data\world\maps\campaign\imperial_campaign\feral_map.tga.dds - 4080 x 2496 size - seems to work best if completely 'alpha'd out' with a black alpha layer!
- data\world\maps\campaign\imperial_campaign\feral_map_winter.tga.dds - winter version as above
NB: These textures need to be placed in mod-folder\data\world\maps\campaign\imperial_campaign\ for BI mods, they are not read from the \barbarian_invasion\ campaign folder.
The 'frame' seen in this view does not use the same textures as your model frame, this view uses parts of the textures in
- data/ui/culture/shared_new_extruded_0 and _1.tga
Mini Map
The mini map visible on the 3D View screen is based on:
- data\world\maps\campaign\imperial_campaign\feral_radar_map.tga - 1020 x 624 size
- data\world\maps\campaign\imperial_campaign\feral_radar_map_winter.tga - winter version as above