Modding:Block Entity Classes: Difference between revisions

From Vintage Story Wiki
mNo edit summary
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
== Using block classes ==
{{Outdated|A new system is being worked on to view JSON properties. Please use this page with caution, as it may not be up-to-date.}}
== Using block Entity classes ==
May blocks that have interactive functions will require using a block entity to accomplish. When your block requires the use of a block entity you assign it using the following property format in the JSON:
May blocks that have interactive functions will require using a block entity to accomplish. When your block requires the use of a block entity you assign it using the following property format in the JSON:


Line 5: Line 6:


NOTE: Although they are referenced in JSONS as "Anvil", "Bed" etc. Block Entity class files themselves use the BEAnvil, BEBed naming convention.
NOTE: Although they are referenced in JSONS as "Anvil", "Bed" etc. Block Entity class files themselves use the BEAnvil, BEBed naming convention.
A majority of all block entities can be viewed at the Vintage Story Github [https://github.com/anegostudios/vssurvivalmod/tree/master/BlockEntity here] for those looking to learn more about each.
Additionally, all mechanical block entities can be found [https://github.com/anegostudios/vssurvivalmod/tree/master/Systems/MechanicalPower/BlockEntity here].


== All Block Entities ==
== All Block Entities ==
Line 13: Line 18:
! Entity Name !! Example Block JSON !! Description !! Github Link
! Entity Name !! Example Block JSON !! Description !! Github Link
|-
|-
| Anvil || anvil || Controls the rendering and forging of work items on an anvil. || Anvil Block Entity Class
| Anvil || anvil || Controls the rendering and forging of work items on an anvil. || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEAnvil.cs Anvil Block Entity Class ]
|-
|-
| Barrel || barrel || - || Barrel Block Entity Class
| Barrel || barrel || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/Barrel/BEBarrel.cs Barrel Block Entity Class ]
|-
|-
| Bed || bed || - || Block Entity Class
| Bed || bed || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEBed.cs Bed Block Entity Class ]
|-
|-
| Beehive || wildbeehive || - || Beehive Block Entity Class
| Beehive || wildbeehive || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEBeehive.cs Beehive Block Entity Class ]
|-
|-
| Bellows || bellows || - || Block Entity Class
| Bellows || - || Unfinished || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/Unfinished/BEBellows.cs Bellows Block Entity Class ]
|-
|-
| BerryBush || smallberrybush, largeberrybush || - || Block Entity Class
| BerryBush || smallberrybush, largeberrybush || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEBerryBush.cs Berry Bush Block Entity Class ]
|-
|-
| BlastFurnace || - || - || Blast Furnace Block Entity Class
| BlastFurnace || - || Unfinished || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/Unfinished/BEBlastFurnace.cs Blast Furnace Block Entity Class ]
|-
|-
| Bloomery || bloomerybase || - || Bloomery Block Entity Class
| Bloomery || bloomerybase || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEBloomery.cs Bloomery Block Entity Class ]
|-
|-
| Bomb || oreblastingbomb || - || Bomb Block Entity Class
| Bomb || oreblastingbomb || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEBomb.cs Bomb Block Entity Class ]
|-
|-
| Bucket || bucket || - || Block Entity Class
| Bucket || bucket || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEBucket.cs Bucket Block Entity Class ]
|-
|-
| Canvas || canvas || - || Block Entity Class
| Canvas || canvas || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BECanvas.cs Canvas Block Entity Class ]
|-
|-
| CharcoalPit || charcoalpit || - || Block Entity Class
| CharcoalPit || charcoalpit || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BECharcoalPit.cs Charcoal Pit Block Entity Class ]
|-
|-
| Chisel || chiseledblock || - || Block Entity Class
| Chisel || chiseledblock || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEChisel.cs Chiseled Block Entity Class ]
|-
|-
| Chute || chute || - || Block Entity Class
| Chute || chute || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEChute.cs Chute Block Entity Class ]
|-
|-
| ClayForm || clayform || - || Block Entity Class
| ClayForm || clayform || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEClayForm.cs Clay Form Block Entity Class ]
|-
|-
| Crock || crock || - || Block Entity Class
| Crock || crock || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BECrock.cs Crock Block Entity Class ]
|-
|-
| DisplayCase || displaycase || - || Block Entity Class
| DisplayCase || displaycase || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEDisplayCase.cs Display Case Block Entity Class ]
|-
|-
| EchoChamber || echochamber || - || Block Entity Class
| EchoChamber || echochamber || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEEchoChamber.cs Echo Chamber Block Entity Class ]
|-
|-
| Farmland || farmland || - || Block Entity Class
| Farmland || farmland || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEFarmland.cs Farmland Block Entity Class ]
|-
|-
| Fire || - || - || Block Entity Class
| Fire || - || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEFire.cs Fire Block Entity Class ]
|-
|-
| FireWoodPile || firewoodpile || - || Block Entity Class
| FireWoodPile || firewoodpile || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Legacy/BlockEntity/BEFireWoodPile.cs Firewood Pile Block Entity Class ]
|-
|-
| FirePit || firepit || - || Block Entity Class
| Firepit || firepit || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/Firepit/BEFirepit.cs Firepit Block Entity Class ]
|-
|-
| Forge || forge || - || Block Entity Class
| Forge || forge || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEForge.cs Forge Block Entity Class ]
|-
|-
| GenericContainer || - || - || Block Entity Class
| GenericContainer || - || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEGenericContainer.cs Generic Container Block Entity Class ]
|-
|-
| GenericTypedContainer || chest, storagevessel, stationarybasket || - || Block Entity Class
| GenericTypedContainer || chest, storagevessel, stationarybasket || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEGenericTypedContainer.cs Typed Generic Container Block Entity Class ]
|-
|-
| IngotMold || ingotmold || - || Block Entity Class
| IngotMold || ingotmold || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEIngotMold.cs Ingot Mold Block Entity Class ]
|-
|-
| IngotPile || ingotpile || - || Block Entity Class
| IngotPile || ingotpile || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Legacy/BlockEntity/BEIngotPile.cs Ingot Pile Block Entity Class ]
|-
|-
| ItemFlow || - || - || Block Entity Class
| ItemFlow || - || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEItemFlow.cs Flowing Item Block Entity Class ]
|-
|-
| KnappingSurface || knappingsurface || - || Block Entity Class
| KnappingSurface || knappingsurface || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEKnappingSurface.cs Knapping Surface Block Entity Class ]
|-
|-
| LabeledChest || chest-labeled || - || Block Entity Class
| LabeledChest || chest-labeled || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BELabeledChest.cs Labeled Chest Block Entity Class ]
|-
|-
| Lantern || lantern || - || Block Entity Class
| Lantern || lantern || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BELantern.cs Lantern Block Entity Class ]
|-
|-
| LocustNest || cage (locustnest) || - || Block Entity Class
| LocustNest || cage (locustnest) || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BELocustNest.cs Locust Nest Block Entity Class ]
|-
|-
| Meal || || bowl-meal || Block Entity Class
| Meal || bowl-meal || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEMeal.cs Meal Block Entity Class ]
|-
|-
| PeatPile || peatpile || - || Block Entity Class
| PeatPile || peatpile || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Legacy/BlockEntity/BEPeatPile.cs Peat Pile Block Entity Class ]
|-
|-
| PlankPile || plankpile || - || Block Entity Class
| PlankPile || plankpile || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Legacy/BlockEntity/BEPlankPile.cs Plank Pile Block Entity Class ]
|-
|-
| PlatePile || platepile || - || Block Entity Class
| PlatePile || platepile || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Legacy/BlockEntity/BEPlatePile.cs Plate Pile Block Entity Class ]
|-
|-
| PumpkinVine || vine (pumpkin) || - || Block Entity Class
| PumpkinVine || vine (pumpkin) || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEPumpkinVine.cs Pumpkin Vine Block Entity Class ]
|-
|-
| Quern || quern || - || Block Entity Class
| Quern || quern || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEQuern.cs Quern Block Entity Class ]
|-
|-
| Sapling || plaintreesapling || - || Block Entity Class
| Sapling || plaintreesapling || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BESapling.cs Sapling Block Entity Class ]
|-
|-
| Shelf || shelf || - || Block Entity Class
| Shelf || shelf || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEShelf.cs Shelf Block Entity Class ]
|-
|-
| Sign || sign || - || Block Entity Class
| Sign || sign || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BESign.cs Sign Block Entity Class ]
|-
|-
| SignPost || signpost || - || Block Entity Class
| SignPost || signpost || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BESignPost.cs Signpost Block Entity Class ]
|-
|-
| SmeltedContainer || crucible || - || Block Entity Class
| SmeltedContainer || crucible || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BESmeltedContainer.cs Smelted Container Block Entity Class ]
|-
|-
| Spawner || meta || - || Block Entity Class
| Spawner || meta || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BESpawner.cs Spawner Block Entity Class ]
|-
|-
| StaticTranslocator || statictranslocator || - || Block Entity Class
| StaticTranslocator || statictranslocator || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEStaticTranslocator.cs Static Translocator Block Entity Class ]
|-
|-
| Stove || - || - || Block Entity Class
| Stove || - || Unfinished || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/Unfinished/BEStove.cs Stove Block Entity Class ]
|-
|-
| Tapestry || tapestry || - || Block Entity Class
| Tapestry || tapestry || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BETapestry.cs Tapestry Block Entity Class ]
|-
|-
| Teleporter || teleporter || - || Block Entity Class
| Teleporter || teleporter || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BETeleporter.cs Teleporter Block Entity Class ]
|-
|-
| ToolMold || toolmold || - || Block Entity Class
| ToolMold || toolmold || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEToolMold.cs Tool Mold Block Entity Class ]
|-
|-
| ToolRack || toolrack || - || Block Entity Class
| ToolRack || toolrack || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEToolrack.cs Tool Rack Block Entity Class ]
|-
|-
| Torch || torch (including colored version) || - || Block Entity Class
| Torch || torch (including colored version) || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BETorch.cs Torch Block Entity Class ]
|-
|-
| Trough || trough-small, trough-large || - || Block Entity Class
| Trough || trough-small, trough-large || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BETrough.cs Trough Block Entity Class ]
|-
|-
| WateringCan || wateringcan || - || Block Entity Class
| WateringCan || wateringcan || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/BlockEntity/BEWateringCan.cs Watering Can Block Entity Class ]
|}
|}


 
== Mechanical Power Block Entity Classes ==
This table contains all the block entities relevant to mechanical power.
{| class="wikitable"
|-
! Class Name !! Example Blocks !! Description !! Github Link
|-
| Brake || brake || Controls the rotation of the brake axle and events that occur when the player interacts with it. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/BlockEntity/BEBrake.cs Brake Block Entity Class ]
|-
| Clutch || clutch || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/BlockEntity/BEClutch.cs Clutch Block Entity Class ]
|-
| HelveHammer || helvehammerbase || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/BlockEntity/BEHelveHammer.cs Helve Hammer Class ]
|}
 
{{Navbox/modding|Vintage Story}}
{{Navbox/modding|Vintage Story}}
[[Category:Modding{{#translation:}}]]
[[Category:Modding:Content{{#translation:}}]]

Latest revision as of 22:24, 21 November 2024

Gear-rusty.png

This page is outdated.
Reason: A new system is being worked on to view JSON properties. Please use this page with caution, as it may not be up-to-date.
The content on this page is not up to date with the most recent game update. If you do wish to contribute, please request wiki edit access on the Discord.

Using block Entity classes

May blocks that have interactive functions will require using a block entity to accomplish. When your block requires the use of a block entity you assign it using the following property format in the JSON:

entityClass: "Entity"

NOTE: Although they are referenced in JSONS as "Anvil", "Bed" etc. Block Entity class files themselves use the BEAnvil, BEBed naming convention.

A majority of all block entities can be viewed at the Vintage Story Github here for those looking to learn more about each.

Additionally, all mechanical block entities can be found here.

All Block Entities

Here is a table containing all block entities used as of version 1.9.+z

Entity Name Example Block JSON Description Github Link
Anvil anvil Controls the rendering and forging of work items on an anvil. Anvil Block Entity Class
Barrel barrel - Barrel Block Entity Class
Bed bed - Bed Block Entity Class
Beehive wildbeehive - Beehive Block Entity Class
Bellows - Unfinished Bellows Block Entity Class
BerryBush smallberrybush, largeberrybush - Berry Bush Block Entity Class
BlastFurnace - Unfinished Blast Furnace Block Entity Class
Bloomery bloomerybase - Bloomery Block Entity Class
Bomb oreblastingbomb - Bomb Block Entity Class
Bucket bucket - Bucket Block Entity Class
Canvas canvas - Canvas Block Entity Class
CharcoalPit charcoalpit - Charcoal Pit Block Entity Class
Chisel chiseledblock - Chiseled Block Entity Class
Chute chute - Chute Block Entity Class
ClayForm clayform - Clay Form Block Entity Class
Crock crock - Crock Block Entity Class
DisplayCase displaycase - Display Case Block Entity Class
EchoChamber echochamber - Echo Chamber Block Entity Class
Farmland farmland - Farmland Block Entity Class
Fire - - Fire Block Entity Class
FireWoodPile firewoodpile - Firewood Pile Block Entity Class
Firepit firepit - Firepit Block Entity Class
Forge forge - Forge Block Entity Class
GenericContainer - - Generic Container Block Entity Class
GenericTypedContainer chest, storagevessel, stationarybasket - Typed Generic Container Block Entity Class
IngotMold ingotmold - Ingot Mold Block Entity Class
IngotPile ingotpile - Ingot Pile Block Entity Class
ItemFlow - - Flowing Item Block Entity Class
KnappingSurface knappingsurface - Knapping Surface Block Entity Class
LabeledChest chest-labeled - Labeled Chest Block Entity Class
Lantern lantern - Lantern Block Entity Class
LocustNest cage (locustnest) - Locust Nest Block Entity Class
Meal bowl-meal - Meal Block Entity Class
PeatPile peatpile - Peat Pile Block Entity Class
PlankPile plankpile - Plank Pile Block Entity Class
PlatePile platepile - Plate Pile Block Entity Class
PumpkinVine vine (pumpkin) - Pumpkin Vine Block Entity Class
Quern quern - Quern Block Entity Class
Sapling plaintreesapling - Sapling Block Entity Class
Shelf shelf - Shelf Block Entity Class
Sign sign - Sign Block Entity Class
SignPost signpost - Signpost Block Entity Class
SmeltedContainer crucible - Smelted Container Block Entity Class
Spawner meta - Spawner Block Entity Class
StaticTranslocator statictranslocator - Static Translocator Block Entity Class
Stove - Unfinished Stove Block Entity Class
Tapestry tapestry - Tapestry Block Entity Class
Teleporter teleporter - Teleporter Block Entity Class
ToolMold toolmold - Tool Mold Block Entity Class
ToolRack toolrack - Tool Rack Block Entity Class
Torch torch (including colored version) - Torch Block Entity Class
Trough trough-small, trough-large - Trough Block Entity Class
WateringCan wateringcan - Watering Can Block Entity Class

Mechanical Power Block Entity Classes

This table contains all the block entities relevant to mechanical power.

Class Name Example Blocks Description Github Link
Brake brake Controls the rotation of the brake axle and events that occur when the player interacts with it. Brake Block Entity Class
Clutch clutch - Clutch Block Entity Class
HelveHammer helvehammerbase - Helve Hammer Class
Icon Sign.png

Wondering where some links have gone?
The modding navbox is going through some changes! Check out Navigation Box Updates for more info and help finding specific pages.

Modding
Modding Introduction Getting Started Theme Pack
Content Modding Content Mods Developing a Content Mod Basic Tutorials Intermediate Tutorials Advanced Tutorials Content Mod Concepts
Code Modding Code Mods Setting up your Development Environment
Property Overview ItemEntityEntity BehaviorsBlockBlock BehaviorsBlock ClassesBlock EntitiesBlock Entity BehaviorsCollectible BehaviorsWorld properties
Workflows & Infrastructure Modding Efficiency TipsMod-engine compatibilityMod ExtensibilityVS Engine
Additional Resources Community Resources Modding API Updates Programming Languages List of server commandsList of client commandsClient startup parametersServer startup parameters
Example ModsAPI DocsGitHub Repository