0A284D0B
0A284D0B | |
---|---|
Short name: | WGRA |
Long name: | Wall graph |
Contents |
Format
Header
As specified in WDB.
- DWORD
- Block ID
- Value = 0A284D0B
- DWORD
- Block version
- Known values: 2 and 3
- 7BITSTR
- Block name
- Value = "cWallGraph"
Data Section
- DWORD
- Unknown (always 0?)
- DWORD
- Unknown (always 0?)
- DWORD
- Minimum level on the lot
- There are two possible values for this field:
- 0 if the ground level is the lowest level on the lot (default)
- -1 if an underground level exists
- This field matches the Minimum Level field in WRLD
- DWORD
- Lot width
- DWORD
- Lot height
- DWORD
- Maximum level on the lot
- Numeric Value of Story/floor grid level (UI)
- This field is usually one greater than the Maximum Level field in WRLD
- DWORD
- Unknown
- DWORD
- Unknown
List of Wall Vertices
- DWORD
- Count A:
- repeat A times
-
- DWORD
- Vertex ID
- Used in List of Walls below
- FLOAT
- X coordinate
- FLOAT
- Y coordinate
- DWORD
- Level (0 is ground level, 1 is next floor up, etc., -1 is below ground, such as pool)
List of Rooms
- DWORD
- Count B
- repeat B times
-
- DWORD
- Room ID
- Used in List of Walls below and in 3ARY instances 9, 0xA, and 0xB
List of Walls
Defines a wall between two vertices.
- DWORD
- Count C:
- repeat C times
-
- DWORD
- Wall ID
- Corresponds to Wall ID in WLL
- DWORD
- Vertex ID of first vertex within Wall Vertex List above
- DWORD
- Room ID from array B above
- DWORD
- Vertex ID of second vertex within Wall Vertex List
- DWORD
- Room ID from array B above
Note:
1) The Wall Graph defines most vertical structures, such as walls, fences, attic walls, swimming pool walls, and foundation walls (including invisible walls). Each wall may require other associated structures. For example, fences usually have associated fence posts (FPL), attics have associated roofs (ROOF), swimming pools have associated swimming pool surfaces (POOL).
2) Each wall in WLL may be reflected in multiple WGRA instances. Therefore, WGRA instances may reflect properties of each wall, for example: light blocking, load bearing, ...
3) The B array probably contains a list of Room IDs. The C array lists wall segments and has two values from the B array; each wall segment is either completely enclosed in a room or separates two rooms from each other. Unsure how to test this hypothesis.
4) Block version 2 means that the height and width are twice the size of the lot (number of lot tiles * 2). Block version 3 means that the height and width are the number of vertices on the lot (number of lot tiles + 1).
This article is imported from the old MTS2 wiki. It's original page, with comments, can be found at http://old_wiki.modthesims2.com/0A284D0B