-
Notifications
You must be signed in to change notification settings - Fork 1
(95) Contentpacks 1.2.0
Files:
/landofsignals.json
/assets/landofsignals/
streckenblock/streckenblock.json
/assets/landofsignals/
streckenblock/streckenblock.obj
/assets/landofsignals/
streckenblock/[Textures, MTL, a.s.o.]
/assets/landofsignals/
formsignal/formsignal.json
/assets/landofsignals/
formsignal/formsignal.obj
/assets/landofsignals/
formsignal/[Textures, MTL, a.s.o.]
/assets/landofsignals/
pedestrianlight/pedestrianlight.json
/assets/landofsignals/
pedestrianlight/pedestrianlight.obj
/assets/landofsignals/
pedestrianlight/[Textures, MTL, a.s.o.]
/assets/landofsignals/
signallever/signallever.json
/assets/landofsignals/
signallever/signallever.obj
/assets/landofsignals/
signallever/[Textures, MTL, a.s.o.]
Files and/or paths marked as code
need to be taken over as is and can't be changed.
landofsignals.json
{
"name": "Stellwand: Streckenblock",
"packversion": "1.1",
"author" : "SeltixSub aka Danielxs01",
"addonversion": "2",
"content": {
"assets/landofsignals/streckenblock/streckenblock.json": "BLOCKCOMPLEXSIGNAL",
"assets/landofsignals/formsignal/formsignal.json": "BLOCKCOMPLEXSIGNAL",
"assets/landofsignals/pedestrianlight/pedestrianlight.json": "BLOCKSIGNAL",
"assets/landofsignals/signallever/signallever.json": "BLOCKLEVER"
}
}
Field | Description |
---|---|
name | The name of your contentpack. Will be used for the IDs saved in each block. Shouldn't be changed later and should be unique. |
packversion | The version of your contentpack. Can be changed later on. |
author | The author of this contentpack. Can be changed later on. |
addonversion | The addonversion used. Should be "2" (latest). Can be changed later on. (Take a look at "Converting v1 to v2 contentpacks") |
content | The content field is used for registering all your blocks. It contains paths to files with the type afterwards. Can be extended later on. |
content-types:
-
BLOCKSIGNAL
Signals with different states (basically the same as with v1) -
BLOCKCOMPLEXSIGNAL
Signals with different states and groups (more complex, more features) -
BLOCKSIGN
Signs that have one state (text rendering will follow with another version) -
BLOCKSIGNALBOX
Signalboxes that have one state (can be connected to signals) -
BLOCKDECO
Assets that have one state -
BLOCKLEVER
Levers that have an active and inactive state (provide redstone power)
{
"id": "my-deco-block",
"name": "My Decoblock",
"rotationSteps": 90,
"base": {
"mydecoblock/decoblock.obj": [
{
"textures": "white",
"obj_groups": [],
"item": {
"DEFAULT": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
0,
0
],
"scaling": [
0.5,
0.5,
0.5
]
}
},
"block": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
]
}
}
Field | Default | Description |
---|---|---|
id | - | The ID of the block. Shouldn't be changed later and should be unique. |
name | - | The name of the block Can be changed later on. |
rotationSteps | 10 | The steps in which the block can be rotated. Optional. Allowed values: 10 - 90 |
references | - | The references contain values that can be linked via the name. More informations below. |
base | - | The base contains all OBJs used for rendering including textures, obj-groups and so on. Can be used for all contentpack entries, it will always be rendered. |
Field | Default | Description |
---|---|---|
"OBJ" | - | The base field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
Field | Default | Description |
---|---|---|
textures | - | The textures wanted for the OBJ. If empty, MTL textures will be used. |
obj_groups | - | The groups wanted for the OBJ. If empty, all groups will be used. Will filter for values that start with the name. |
item | - | The item field contains rendering properties for the various item-types. Can be replaced with "itemRefs". |
block | - | The block field contains rendering properties for the block. Can be replaced with "blockRef". |
itemRefs | - | The itemRefs contain item-types and reference-names. Optional. Replaces "item". |
blockRef | - | The blockRef contains the reference-name. Optional. Replaces "block". |
item-types:
-
DEFAULT
Used for all item-types. (In-Hand, Inventory, Dropped Item, a.s.o.)
Will be extended with a future version. (Needs new UMC version as well)
obj_groups will filter for groups that start with the same name.
For example you have the following groups: "white", "white1", "yellow", "red".
If you added "obj_groups": ["white"]
, the renderer would render the group "white" and "white1" as they start with this entry.
{
"id": "my-signallever",
"name": "My Signallever",
"rotationSteps": 90,
"inactive": {
"signallever/signallever.obj": [
{
"textures": "off",
"obj_groups": [],
"item": {
"DEFAULT": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
0,
0
],
"scaling": [
0.5,
0.5,
0.5
]
}
},
"block": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
]
},
"active": {
"signallever/signallever.obj": [
{
"textures": "on",
"obj_groups": [],
"item": {
"DEFAULT": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
0,
0
],
"scaling": [
0.5,
0.5,
0.5
]
}
},
"block": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
]
}
}
Field | Default | Description |
---|---|---|
id | - | The ID of the block. Shouldn't be changed later and should be unique. |
name | - | The name of the block Can be changed later on. |
rotationSteps | 10 | The steps in which the block can be rotated. Optional. Allowed values: 10 - 90 |
references | - | The references contain values that can be linked via the name. More informations below. |
active | - | It contains all OBJs used for rendering the active-state (redstone power) including textures, obj-groups and so on. |
inactive | - | It contains all OBJs used for rendering the inactive-state (no redstone power - default state) including textures, obj-groups and so on. |
Field | Default | Description |
---|---|---|
"OBJ" | - | The active/inactive field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
Field | Default | Description |
---|---|---|
textures | - | The textures wanted for the OBJ. If empty, MTL textures will be used. |
obj_groups | - | The groups wanted for the OBJ. If empty, all groups will be used. Will filter for values that start with the name. |
item | - | The item field contains rendering properties for the various item-types. Can be replaced with "itemRefs". |
block | - | The block field contains rendering properties for the block. Can be replaced with "blockRef". |
itemRefs | - | The itemRefs contain item-types and reference-names. Optional. Replaces "item". |
blockRef | - | The blockRef contains the reference-name. Optional. Replaces "block". |
item-types:
-
DEFAULT
Used for all item-types. (In-Hand, Inventory, Dropped Item, a.s.o.)
Will be extended with a future version. (Needs new UMC version as well)
obj_groups will filter for groups that start with the same name.
For example you have the following groups: "white", "white1", "yellow", "red".
If you added "obj_groups": ["white"]
, the renderer would render the group "white" and "white1" as they start with this entry.
{
"id": "my-sign",
"name": "My Sign",
"rotationSteps": 90,
"writeable": true,
"base": {
"mysign/mysign.obj": [
{
"textures": "text_de",
"obj_groups": [],
"item": {
"DEFAULT": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
90,
0
],
"scaling": []
}
},
"block": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
]
}
}
Field | Default | Description |
---|---|---|
id | - | The ID of the block. Shouldn't be changed later and should be unique. |
name | - | The name of the block Can be changed later on. |
rotationSteps | 10 | The steps in which the block can be rotated. Optional. Allowed values: 10 - 90 |
writeable | false | The writable attribute determines if you can write onto that sign. Optional. Allowed values: true , false
|
references | - | The references contain values that can be linked via the name. More informations below. |
base | - | The base contains all OBJs used for rendering including textures, obj-groups and so on. Can be used for all contentpack entries, it will always be rendered. |
writable
currently activates the GUI for entering and saving a text.
There is no validation nor rendering of the text.
This will be added in the future with the new UMC version.
This feature may change in the future as well. (According to the functions available)
Field | Default | Description |
---|---|---|
"OBJ" | - | The base field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
Field | Default | Description |
---|---|---|
textures | - | The textures wanted for the OBJ. If empty, MTL textures will be used. |
obj_groups | - | The groups wanted for the OBJ. If empty, all groups will be used. Will filter for values that start with the name. |
item | - | The item field contains rendering properties for the various item-types. Can be replaced with "itemRefs". |
block | - | The block field contains rendering properties for the block. Can be replaced with "blockRef". |
itemRefs | - | The itemRefs contain item-types and reference-names. Optional. Replaces "item". |
blockRef | - | The blockRef contains the reference-name. Optional. Replaces "block". |
item-types:
-
DEFAULT
Used for all item-types. (In-Hand, Inventory, Dropped Item, a.s.o.)
Will be extended with a future version. (Needs new UMC version as well)
obj_groups will filter for groups that start with the same name.
For example you have the following groups: "white", "white1", "yellow", "red".
If you added "obj_groups": ["white"]
, the renderer would render the group "white" and "white1" as they start with this entry.
Pedestrian light
This is like before with v1 with a little more options available now
Signals: green, red
{
"id": "pedestrian-light",
"name": "Pedestrian light (green/red)",
"model": "pedestrianlight/pedestrianlight.obj",
"rotationSteps": 10,
"translation": [
0.5,
0,
0.5
],
"itemTranslation": [
0.5,
0,
0.5
],
"scaling": [
1,
1,
1
],
"itemScaling": [
1,
1,
1
],
"states": [
"green",
"red"
],
"itemState": "red",
"useBase": true,
"base": "basetexture"
}
Field | Default | Description |
---|---|---|
id | - | The ID of the block. Shouldn't be changed later and should be unique. |
name | - | The name of the block Can be changed later on. |
model | - | The OBJ used for this block Shouldn't be changed later on. |
rotationSteps | 10 | The steps in which the block can be rotated. Optional. Allowed values: 10 - 90 |
useBase | false | The useBase attribute states if a base texture should be used. Optional. Allowed values: true, false |
base | - | The base can be set to render the OBJ with the given texture ignoring any states Optional. (EXPERIMENTAL) |
states | [null] | The signals field contains all textures/states. Can be extended later on. |
scaling | [1, 1, 1] | The scaling used for the block. Comes before translation. Optional. |
translation | [0, 0, 0] | The translation used for the block. Comes after scaling. Optional. Shouldn't be too large. (>2) |
itemState | states[0] | The states attribute can be used to specify a specific texture for the item. Optional. If not set, first state from states will be used. |
itemScaling | [1, 1, 1] | The item-scaling used for the item. Comes before item-translation. Optional. |
itemTranslation | [0, 0, 0] | The item-translation used for the item. Comes after item-scaling. Optional. |
This will be the simplest of signals. Containing only one group without any references.
Group: main_lamp (Name: "Main lamp")
Signals: off (Name: "Off"), white (Name: "White"), red (Name: "Red")
{
"id": "simple-single-lamp",
"name": "Simple Single Lamp Signal",
"rotationSteps": 10,
"base": {
"singlelampsignal/singlelampsignalbase.obj": [
{
"textures": "base",
"obj_groups": [],
"item": {
"DEFAULT": {
"translation": [
0.625,
0.125,
0
],
"rotation": [
0,
180,
0
],
"scaling": [
0.8,
0.8,
0.8
]
}
},
"block": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
]
},
"signals": {
"main_lamp": {
"groupName": "Main lamp",
"states": {
"off": {
"signalName": "Off",
"models": {
"singlelampsignal/singlelampsignal.obj": [
{
"textures": "off",
"obj_groups": [],
"item": {
"DEFAULT": {
"translation": [
0.625,
0.125,
0
],
"rotation": [
0,
180,
0
],
"scaling": [
0.8,
0.8,
0.8
]
}
},
"block": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
]
}
},
"white": {
"signalName": "White",
"models": {
"singlelampsignal/singlelampsignal.obj": [
{
"textures": "white",
"obj_groups": [],
"item": {
"DEFAULT": {
"translation": [
0.625,
0.125,
0
],
"rotation": [
0,
180,
0
],
"scaling": [
0.8,
0.8,
0.8
]
}
},
"block": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
]
}
},
"red": {
"signalName": "Red",
"models": {
"singlelampsignal/singlelampsignal.obj": [
{
"textures": "red",
"obj_groups": [],
"item": {
"DEFAULT": {
"translation": [
0.625,
0.125,
0
],
"rotation": [
0,
180,
0
],
"scaling": [
0.8,
0.8,
0.8
]
}
},
"block": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
]
}
}
}
}
}
}
Field | Default | Description |
---|---|---|
id | - | The ID of the block. Shouldn't be changed later and should be unique. |
name | - | The name of the block Can be changed later on. |
rotationSteps | 10 | The steps in which the block can be rotated. Optional. Allowed values: 10 - 90 |
references | - | The references contain values that can be linked via the name. More informations below. |
base | - | The base contains all OBJs used for rendering including textures, obj-groups and so on. Can be used for all contentpack entries, it will always be rendered. |
signals | - | The signals field contains all groups (This can be a single lamp or a constellation of signals that need to be switched together). Can be extended later on. |
signals
contains group-ids and the group itself.
A group can be a single lamp or connected lamps.
If your signal contains lamps that can be switched independetly, they can be seperated into different groups.
There needs to be atleast one group!
Field | Default | Description |
---|---|---|
"OBJ" | - | The base field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
OBJ fields can be found under "Model field" "Model field" equals "Base field"
Field | Default | Description |
---|---|---|
"Group ID" | - | The group ID contains the group itself. It needs to be unique and will be used internally. Can't be changed later on. |
Field | Default | Description |
---|---|---|
groupName | - | The groupName will be displayed in the signalbox on the button to switch through the groups. Can be changed later on. |
states | - | The states the group can have. (On, Off or Black, White, Yellow, Red for example.) Can be extended later on. |
Field | Default | Description |
---|---|---|
"State ID" | - | The state ID contains the state itself. It needs to be unique and will be used internally. Can't be changed later on. |
Important States are displayed by priority. Sort them in your contentpack by least important (off?) to most important (red?).
Field | Default | Description |
---|---|---|
signalName | - | The signalName will be displayed. Can be changed later on. |
models | - | The OBJ models that will be rendered. Can be changed later on. |
Field | Default | Description |
---|---|---|
"OBJ" | - | The state field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
Field | Default | Description |
---|---|---|
textures | - | The textures wanted for the OBJ. If empty, MTL textures will be used. |
obj_groups | - | The groups wanted for the OBJ. If empty, all groups will be used. Will filter for values that start with the name. |
item | - | The item field contains rendering properties for the various item-types. Can be replaced with "itemRefs". |
block | - | The block field contains rendering properties for the block. Can be replaced with "blockRef". |
itemRefs | - | The itemRefs contain item-types and reference-names. Optional. Replaces "item". |
blockRef | - | The blockRef contains the reference-name. Optional. Replaces "block". |
item-types:
-
DEFAULT
Used for all item-types. (In-Hand, Inventory, Dropped Item, a.s.o.)
Will be extended with a future version. (Needs new UMC version as well)
obj_groups will filter for groups that start with the same name.
For example you have the following groups: "white", "white1", "yellow", "red".
If you added "obj_groups": ["white"]
, the renderer would render the group "white" and "white1" as they start with this entry.
This will be a simple signal. Containing only one group but references.
{
"id": "simple-single-lamp",
"name": "Simple Single Lamp Signal",
"rotationSteps": 10,
"references": {
"contentPackItemRefs": {
"defaultItem": {
"translation": [
0.625,
0.125,
0
],
"rotation": [
0,
180,
0
],
"scaling": [
0.8,
0.8,
0.8
]
}
},
"contentPackBlockRefs": {
"defaultBlock": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
},
"base": {
"singlelampsignal/singlelampsignalbase.obj": [
{
"textures": "base",
"obj_groups": [],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
},
"signals": {
"main_lamp": {
"groupName": "Main lamp",
"states": {
"off": {
"signalName": "Off",
"models": {
"singlelampsignal/singlelampsignal.obj": [
{
"textures": "off",
"obj_groups": [],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"white": {
"signalName": "White",
"models": {
"singlelampsignal/singlelampsignal.obj": [
{
"textures": "white",
"obj_groups": [],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"red": {
"signalName": "Red",
"models": {
"singlelampsignal/singlelampsignal.obj": [
{
"textures": "red",
"obj_groups": [],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
}
}
}
}
}
Field | Default | Description |
---|---|---|
id | - | The ID of the block. Shouldn't be changed later and should be unique. |
name | - | The name of the block Can be changed later on. |
rotationSteps | 10 | The steps in which the block can be rotated. Optional. Allowed values: 10 - 90 |
references | - | The references contain values that can be linked via the name. More informations below. |
base | - | The base contains all OBJs used for rendering including textures, obj-groups and so on. Can be used for all contentpack entries, it will always be rendered. |
signals | - | The signals field contains all groups (This can be a single lamp or a constellation of signals that need to be switched together). Can be extended later on. |
signals
contains group-ids and the group itself.
A group can be a single lamp or connected lamps.
If your signal contains lamps that can be switched independetly, they can be seperated into different groups.
There needs to be atleast one group!
Field | Default | Description |
---|---|---|
translationRefs | - | Contains translations and their referencenames. Optional. Arrays of 3 decimals. |
rotationRefs | - | Contains rotations and their referencenames. Optional. Arrays of 3 decimals. |
scalingRefs | - | Contains scalings and their referencenames. Optional. Arrays of 3 decimals. |
textureRefs | - | Contains texture references and their referencenames. Optional. Arrays with text/strings. |
obj_groupRefs | - | Contains OBJ groups and their referencenames. Optional. Arrays with text/strings. |
contentPackItemRefs | - | Contains rendering properties for the various item-types and their referencenames. Optional. |
contentPackBlockRefs | - | Contains rendering properties for the blocks and their referencenames. Optional. |
item-types:
-
DEFAULT
Used for all item-types. (In-Hand, Inventory, Dropped Item, a.s.o.)
Will be extended with a future version. (Needs new UMC version as well)
Field | Default | Description |
---|---|---|
"OBJ" | - | The base field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
OBJ fields can be found under "Model field" "Model field" equals "Base field"
Field | Default | Description |
---|---|---|
"Group ID" | - | The group ID contains the group itself. It needs to be unique and will be used internally. Can't be changed later on. |
Field | Default | Description |
---|---|---|
groupName | - | The groupName will be displayed in the signalbox on the button to switch through the groups. Can be changed later on. |
states | - | The states the group can have. (On, Off or Black, White, Yellow, Red for example.) Can be extended later on. |
Field | Default | Description |
---|---|---|
"State ID" | - | The state ID contains the state itself. It needs to be unique and will be used internally. Can't be changed later on. |
Important States are displayed by priority. Sort them in your contentpack by least important (off?) to most important (red?).
Field | Default | Description |
---|---|---|
signalName | - | The signalName will be displayed. Can be changed later on. |
models | - | The OBJ models that will be rendered. Can be changed later on. |
Field | Default | Description |
---|---|---|
"OBJ" | - | The state field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
Field | Default | Description |
---|---|---|
textures | - | The textures wanted for the OBJ. If empty, MTL textures will be used. |
obj_groups | - | The groups wanted for the OBJ. If empty, all groups will be used. Will filter for values that start with the name. |
item | - | The item field contains rendering properties for the various item-types. Can be replaced with "itemRefs". |
block | - | The block field contains rendering properties for the block. Can be replaced with "blockRef". |
itemRefs | - | The itemRefs contain item-types and reference-names. Optional. Replaces "item". |
blockRef | - | The blockRef contains the reference-name. Optional. Replaces "block". |
item-types:
-
DEFAULT
Used for all item-types. (In-Hand, Inventory, Dropped Item, a.s.o.)
Will be extended with a future version. (Needs new UMC version as well)
obj_groups will filter for groups that start with the same name.
For example you have the following groups: "white", "white1", "yellow", "red".
If you added "obj_groups": ["white"]
, the renderer would render the group "white" and "white1" as they start with this entry.
This will be a moderate signal. Containing multiple groups and references.
{
"id": "streckenblock",
"name": "Streckenblock (Off, White, Red)",
"rotationSteps": 45,
"references": {
"contentPackItemRefs": {
"defaultItem": {
"translation": [
0.625,
0.125,
0
],
"rotation": [
0,
180,
0
],
"scaling": [
0.8,
0.8,
0.8
]
}
},
"contentPackBlockRefs": {
"defaultBlock": {
"translation": [
0.5,
0,
0.5
],
"rotation": [
0,
180,
0
],
"scaling": [
1,
1,
1
]
}
}
},
"base": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"generalCube"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
},
"signals": {
"group_top_left": {
"groupName": "Top left lamp",
"states": {
"off": {
"signalName": "Off",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"topLeftBlack"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"white": {
"signalName": "White",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"topLeftWhite"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"red": {
"signalName": "Red",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"topLeftRed"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
}
}
},
"group_top_right": {
"groupName": "Top right lamp",
"states": {
"off": {
"signalName": "Off",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"topRightBlack"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"white": {
"signalName": "White",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"topRightWhite"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"red": {
"signalName": "Red",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"topRightRed"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
}
}
},
"group_bottom_left": {
"groupName": "Bottom left lamp",
"states": {
"off": {
"signalName": "Off",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"bottomLeftBlack"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"white": {
"signalName": "White",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"bottomLeftWhite"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"red": {
"signalName": "Red",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"bottomLeftRed"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
}
}
},
"group_bottom_right": {
"groupName": "Bottom right lamp",
"states": {
"off": {
"signalName": "Off",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"bottomRightBlack"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"white": {
"signalName": "White",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"bottomRightWhite"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
},
"red": {
"signalName": "Red",
"models": {
"streckenblock/streckenblock.obj": [
{
"obj_groups": [
"bottomRightRed"
],
"itemRefs": {
"DEFAULT": "defaultItem"
},
"blockRef": "defaultBlock"
}
]
}
}
}
}
}
}
Field | Default | Description |
---|---|---|
id | - | The ID of the block. Shouldn't be changed later and should be unique. |
name | - | The name of the block Can be changed later on. |
rotationSteps | 10 | The steps in which the block can be rotated. Optional. Allowed values: 10 - 90 |
references | - | The references contain values that can be linked via the name. More informations below. |
base | - | The base contains all OBJs used for rendering including textures, obj-groups and so on. Can be used for all contentpack entries, it will always be rendered. |
signals | - | The signals field contains all groups (This can be a single lamp or a constellation of signals that need to be switched together). Can be extended later on. |
signals
contains group-ids and the group itself.
A group can be a single lamp or connected lamps.
If your signal contains lamps that can be switched independetly, they can be seperated into different groups.
There needs to be atleast one group!
Field | Default | Description |
---|---|---|
translationRefs | - | Contains translations and their referencenames. Optional. Arrays of 3 decimals. |
rotationRefs | - | Contains rotations and their referencenames. Optional. Arrays of 3 decimals. |
scalingRefs | - | Contains scalings and their referencenames. Optional. Arrays of 3 decimals. |
textureRefs | - | Contains texture references and their referencenames. Optional. Arrays with text/strings. |
obj_groupRefs | - | Contains OBJ groups and their referencenames. Optional. Arrays with text/strings. |
contentPackItemRefs | - | Contains rendering properties for the various item-types and their referencenames. Optional. |
contentPackBlockRefs | - | Contains rendering properties for the blocks and their referencenames. Optional. |
item-types:
-
DEFAULT
Used for all item-types. (In-Hand, Inventory, Dropped Item, a.s.o.)
Will be extended with a future version. (Needs new UMC version as well)
Field | Default | Description |
---|---|---|
"OBJ" | - | The base field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
OBJ fields can be found under "Model field" "Model field" equals "Base field"
Field | Default | Description |
---|---|---|
"Group ID" | - | The group ID contains the group itself. It needs to be unique and will be used internally. Can't be changed later on. |
Field | Default | Description |
---|---|---|
groupName | - | The groupName will be displayed in the signalbox on the button to switch through the groups. Can be changed later on. |
states | - | The states the group can have. (On, Off or Black, White, Yellow, Red for example.) Can be extended later on. |
Field | Default | Description |
---|---|---|
"State ID" | - | The state ID contains the state itself. It needs to be unique and will be used internally. Can't be changed later on. |
Important States are displayed by priority. Sort them in your contentpack by least important (off?) to most important (red?).
Field | Default | Description |
---|---|---|
signalName | - | The signalName will be displayed. Can be changed later on. |
models | - | The OBJ models that will be rendered. Can be changed later on. |
Field | Default | Description |
---|---|---|
"OBJ" | - | The state field must contain atleast one "OBJ" path. Same OBJ can be inserted multiple times. |
( i ) The path needs to contain everything after
assets/landofsignals/
Field | Default | Description |
---|---|---|
textures | - | The textures wanted for the OBJ. If empty, MTL textures will be used. |
obj_groups | - | The groups wanted for the OBJ. If empty, all groups will be used. Will filter for values that start with the name. |
item | - | The item field contains rendering properties for the various item-types. Can be replaced with "itemRefs". |
block | - | The block field contains rendering properties for the block. Can be replaced with "blockRef". |
itemRefs | - | The itemRefs contain item-types and reference-names. Optional. Replaces "item". |
blockRef | - | The blockRef contains the reference-name. Optional. Replaces "block". |
item-types:
-
DEFAULT
Used for all item-types. (In-Hand, Inventory, Dropped Item, a.s.o.)
Will be extended with a future version. (Needs new UMC version as well)
obj_groups will filter for groups that start with the same name.
For example you have the following groups: "white", "white1", "yellow", "red".
If you added "obj_groups": ["white"]
, the renderer would render the group "white" and "white1" as they start with this entry.