Repository navigation
Props
Props are 3D objects that can be placed in the game world without any grid restrictions. They are perfect for adding decorative elements, furniture, or any other non-block structures to enhance your environment.
You can freely define their texture and properties using a simple JSON configuration.
.minecraft/
├── content-pack/
└── props/
└── your_prop_name.json
└── assets/
└── niwer_engine/
└── models/
└── <sub_folders_as_you_wish> /
└── model.obj
└── your_prop_model_project.bbmodel
└── your_texture_1.png
└── your_animation.anim
{
"modelPath": "models/<sub_folders_as_you_wish>/model", // Path to the 3D model (without file extension)
"texturesPaths": {
"text1": {
"path": "models/<sub_folders_as_you_wish>/your_texture_1" // Path to the texture (without file extension)
}
},
"animationsPaths": {
"open": {
"path": "models/<sub_folders_as_you_wish>/your_animation", // Path to the animation (without file extension)
"transitionTick": 1
},
},
"sounds": [
{
"name": "your_sound_name",
"path": "props/your_sound_path", // According to the exemple it will be located in assets/niwer_engine/sounds/props/your_sound_path.ogg
"category": "BLOCKS"
}
],
"categories": { "doors": false }, // This are the sub categories the prop belongs to (The boolean is deprecated and has no effect)
"material": "IRON",
"soundType": "METAL",
"shouldUseOpacityPass" : false,
"durability": 0.0,
"maxRenderDistance": 4096
}-
material : The physical material of the block. Used to determine certain default properties such as durability and sound behavior.
-
sourceType : Defines how the block affects nearby players. Can be:
-
NEUTRAL— No effect. -
COOL— Cools the player. -
HEAT— Heats the player.
-
-
unbreakable : If
true, the block cannot be broken in survival mode. -
canBePushed :
Boolean— Iftrue, the NPC can be pushed by players or other entities. -
timeToRemove :
Float— The time (in ticks) it takes for the prop to be removed by the player (in survival mode). Default is1(instant removal). -
maxRenderDistance:
Float— The maximum distance at which the prop is rendered. Default is4060.0. -
canWalkThrough : If
true, the player can walk through the prop.Attention, this do not remove the collision boxes. And if you fully remove all collisons (No custom + no Auto collisions), you won't be able to select/target the prop in-game.
-
soundPhysicReflectivity : Determines how much sound is reflected by the block. Default is
-1(inherits from the material). A higher value means less sound absorption. -
shouldUseOpacityPass : If
true, the prop will be rendered twice. Windows (And transparent parts) will be rendered in a second pass to ensure proper transparency. -
shouldReceiveWindTransformations : If
true, the prop will have a nice shader effect that simulates wind movement (Useful for flags, etc.). -
damagesWhenColliding:
Float— The damage dealt to entities colliding with the prop. Default is0.0- No damages. -
lootTableName:
String— The name of the loot table used for this prop. Default is an empty string (no loot table). This will look in themisc/loot_tables/folder of content-packs.
Continue to the next section: create a plant