ModBuildings: Difference between revisions
Stlnegril9 (talk | contribs) No edit summary |
Stlnegril9 (talk | contribs) →JSON: add monuments to building limit entry |
||
| (8 intermediate revisions by 2 users not shown) | |||
| Line 7: | Line 7: | ||
see details in [[BuildingCatModIds|Building Categories]] and [[ModUI|ui.json]] <br> | see details in [[BuildingCatModIds|Building Categories]] and [[ModUI|ui.json]] <br> | ||
= | =JSON= | ||
Table of main building.json entries: | Table of main building.json entries: | ||
{| class="wikitable sortable" style="text-align: center" | {| class="wikitable sortable" style="text-align: center" | ||
| Line 19: | Line 19: | ||
| ageComponentsDict | | ageComponentsDict | ||
| array | | array | ||
| by level 1 to 3, see | | by level 1 to 3, see [[ModageComponentsDicts|ageComponentsDict]] | ||
|- | |- | ||
| baseOffsets | | baseOffsets | ||
| Line 27: | Line 27: | ||
| doesHeightRequireModulus2 | | doesHeightRequireModulus2 | ||
| boolean | | boolean | ||
| some type of | | some type of height adjustment? see [[Mods#Codex|Codex]] for Train Station | ||
|- | |- | ||
| customEntranceDirections | | customEntranceDirections | ||
| array | | array | ||
| | | entrance(s), alternate to x=0,y=-1 tile | ||
|- | |- | ||
| maxAmount | | maxAmount | ||
| integer | | integer | ||
| number of building limiter (used by Trading Ships) | | number of building limiter (used by Trading Ships, Monuments) | ||
|- | |- | ||
| unitPositions | | unitPositions | ||
| Line 43: | Line 43: | ||
| requirements | | requirements | ||
| array | | array | ||
| | | unused/always empty? | ||
|- | |- | ||
| isAvailable | | isAvailable | ||
| Line 63: | Line 63: | ||
| componentInfos | | componentInfos | ||
| array | | array | ||
| building components - see | | building components - see [[ModcomponentInfos|componentInfos]] | ||
|- | |- | ||
| category | | category | ||
| Line 71: | Line 71: | ||
|} | |} | ||
=Icon= | |||
The image file shown for the building in the game interface. <br> | The image file shown for the building in the game interface. <br> | ||
image file naming convention: ''building_200_L1.png'', ''building_200_L2.png''<br> | image file naming convention: ''building_200_L1.png'', ''building_200_L2.png''<br> | ||
| Line 79: | Line 77: | ||
Example file: [[File:Building_Bakery.png|64px|Bakery]] | Example file: [[File:Building_Bakery.png|64px|Bakery]] | ||
=3D Models= | |||
[ | See [[ModsUnityAssetBundles]] for general information.<br> | ||
For building selection. a collider should be sized appropriately, placed on Layer 9 (Content), and placed on the building top level (usually) to allow selection but not cover any resources inside the building that may need selection. See Chocolate Factory example: [[File:Code Example BuildingUnitCollider.png|64px|ExampleBuildingCollider]] <br> | For building selection. a collider should be sized appropriately, placed on Layer 9 (Content), and placed on the building top level (usually) to allow selection but not cover any resources inside the building that may need selection. See Chocolate Factory example: [[File:Code Example BuildingUnitCollider.png|64px|ExampleBuildingCollider]] <br> | ||
<br> | <br> | ||
Latest revision as of 15:58, 13 September 2024
Mod Buildings Translation.csv
List of fields used in translation.csv for Buildings
Buildings Translation
Mod Buildings ui.json
Note buildings need an entry in ui.json to determine the order shown.
see details in Building Categories and ui.json
JSON
Table of main building.json entries:
| Value | Type | Description |
|---|---|---|
| typeId | integer | building ID |
| ageComponentsDict | array | by level 1 to 3, see ageComponentsDict |
| baseOffsets | array | building tile information - see baseOffsets |
| doesHeightRequireModulus2 | boolean | some type of height adjustment? see Codex for Train Station |
| customEntranceDirections | array | entrance(s), alternate to x=0,y=-1 tile |
| maxAmount | integer | number of building limiter (used by Trading Ships, Monuments) |
| unitPositions | array | worker, repair, and stackbots - see UnitPositions |
| requirements | array | unused/always empty? |
| isAvailable | boolean | deprecated? used to hide buildings |
| constructionSiteIdleLoc | array | location of BuilderBot when idle |
| constructionSiteWorkerSubLocs | array | location(s) of BuilderBot when building |
| doesRequireLandOwnership | boolean | within existing player territory, always TRUE? |
| componentInfos | array | building components - see componentInfos |
| category | integer | Menu category for the building - see BuildingCatModIds |
Icon
The image file shown for the building in the game interface.
image file naming convention: building_200_L1.png, building_200_L2.png
image file should be 128x128 pixel size with transparent background
Example file:
3D Models
See ModsUnityAssetBundles for general information.
For building selection. a collider should be sized appropriately, placed on Layer 9 (Content), and placed on the building top level (usually) to allow selection but not cover any resources inside the building that may need selection. See Chocolate Factory example:
For buildings that adjust unit vertical location (such as Watchtowers), a collider should be added within a sub-game object (e.g. "FloorColliderHolder_L1") for the building level and placed on Layer 8 (Floor). See:
and
The unit will path to the top of the collider.
Specific Units to use Floor Colliders can be defined in FloorColliderUnitIdHash within render.json