Update Design Doc: `level` tool
parent
c19b2f6e90
commit
5fd5c7f12f
|
@ -25,13 +25,10 @@ The string property `reskit-layer` set on a Tile Layer indicates which layer sho
|
||||||
Tile layers without `reskit-layer` set are ignored by the `level` tool. If no tile layer is specified using the `reskit-layer` property, or you use a setting invalid for the selected system, you will receive an error on the command line.
|
Tile layers without `reskit-layer` set are ignored by the `level` tool. If no tile layer is specified using the `reskit-layer` property, or you use a setting invalid for the selected system, you will receive an error on the command line.
|
||||||
|
|
||||||
## Collision Map
|
## Collision Map
|
||||||
The boolean property `reskit-collision` set on a Tile Layer to `true` indicates which layer should be used for building the tile collision map. Any non-zero item placed indicates a tile which the player is not permitted to pass through. How you implement this is up to your game engine - reskit will simply save the collision map in a `.bin` file as an artifact (`collision.bin`).
|
The boolean property `reskit-collision` set on a Tile Layer to `true` indicates which layer should be used for building the tile collision map. Any non-zero item placed indicates a tile which the player is not permitted to pass through. How you implement this is up to your game engine - reskit will simply save the collision map in a `.lvc` file as an artifact (`collision.lvc`).
|
||||||
|
|
||||||
If no layer is defined with `reskit-collision` you will receive a warning on the command line. Generally most maps should include collision data - it is NOT auto-generated!
|
If no layer is defined with `reskit-collision` you will receive a warning on the command line. Generally most maps should include collision data - it is NOT auto-generated!
|
||||||
|
|
||||||
### Format of the Collision Map
|
|
||||||
The collision map is just an array of 8-bit unsigned integers laid out with the same tile dimensions as your visible layers. 0 is a free area, while 1 is a collision area.
|
|
||||||
|
|
||||||
## Entity-Component System
|
## Entity-Component System
|
||||||
Reskit assumes a best-practice entity-component engine design and the objects defined in your .tmx file effectively serve as the entities. By adding a property `reskit-component[x]` to each object, where x is the index of the component in an array, you can attach various components to the target object/entity. Each component may have various properties you choose to define, which can be formatted as Tiled property `reskit-component[x].y`, where x is the index of the component and y is the property name for that component. If multiple object layers are defined, reskit will collapse all of them into a single layer.
|
Reskit assumes a best-practice entity-component engine design and the objects defined in your .tmx file effectively serve as the entities. By adding a property `reskit-component[x]` to each object, where x is the index of the component in an array, you can attach various components to the target object/entity. Each component may have various properties you choose to define, which can be formatted as Tiled property `reskit-component[x].y`, where x is the index of the component and y is the property name for that component. If multiple object layers are defined, reskit will collapse all of them into a single layer.
|
||||||
|
|
||||||
|
@ -57,7 +54,10 @@ health = {
|
||||||
## .bin Format (Tiles)
|
## .bin Format (Tiles)
|
||||||
This is a system-specific binary format of tiles formatted for your target system. Normally you would take this data and DMA it to the video display hardware in your homebrew.
|
This is a system-specific binary format of tiles formatted for your target system. Normally you would take this data and DMA it to the video display hardware in your homebrew.
|
||||||
|
|
||||||
## .lvl Format
|
## .lvc Format (Level Collision)
|
||||||
|
The collision map is just an array of 8-bit unsigned integers laid out with the same tile dimensions as your visible layers. 0 is a free area, while 1 is a collision area.
|
||||||
|
|
||||||
|
## .lvl Format (Level)
|
||||||
The .lvl format is output by the `level` tool. It is a binary format ideal for use on a 8-bit or 16-bit game console. All coordinates use (0,0) upper left as an origin.
|
The .lvl format is output by the `level` tool. It is a binary format ideal for use on a 8-bit or 16-bit game console. All coordinates use (0,0) upper left as an origin.
|
||||||
|
|
||||||
### Entity Data
|
### Entity Data
|
||||||
|
|
Loading…
Reference in New Issue