Modding:Block Classes: Difference between revisions

From Vintage Story Wiki
m (VeryGoodDog moved page Block Classes to Modding:Block Classes)
 
(21 intermediate revisions by one other user not shown)
Line 4: Line 4:
<code>class: "BlockClass"</code>
<code>class: "BlockClass"</code>


== All Block Behaviors ==
A majority of all block classes can be viewed [https://github.com/anegostudios/vssurvivalmod/tree/master/Block here] in the Vintage Story Github for those looking to learn more about how each works.
 
Additionally, mechanical blocks classes are stored [https://github.com/anegostudios/vssurvivalmod/tree/master/Systems/MechanicalPower/Block here].
 
== All Block Classes ==
Here is a table containing all classes used by blocks as of version 1.9.+
Here is a table containing all classes used by blocks as of version 1.9.+
{| class="wikitable"
{| class="wikitable"
|-
|-
! Behavior Name !! Example Blocks !! Description !!
! Class Name !! Example Blocks !! Description !! Github Link
|-
| Block || most regular blocks || A standard block class that almost all blocks utilize or inherit. || [https://github.com/anegostudios/vsapi/blob/master/Common/Collectible/Block/Block.cs Block Class]
|-
| BlockAnvil || anvil || Used by the anvil || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockAnvil.cs Anvil Class ]
|-
| BlockBamboo || bamboo || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockBamboo.cs Bamboo Class ]
|-
| BlockBarrel || barrel || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockBarrel.cs Barrel Class ]
|-
| BlockBed|| bed || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockBed.cs Bed Class ]
|-
| BlockBeehive|| wildbeehive || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockBeehive.cs Wild Beehive Class ]
|-
| BlockBigBerryBush || smallberrybush, largeberrybush || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockBigBerryBush.cs Berry Bush Class ]
|-
|-
| Block || most regular blocks || A standard block class that almost all blocks utilize or inherit.
| BlockBloomery || bloomerybase || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockBloomery.cs Bloomery Class ]
|-
|-
| BlockAnvil || anvil || Used by the anvil || Anvil Class
| BlockBomb || oreblastingbomb || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockBomb.cs Bomb Class ]
|-
|-
| BlockBamboo || bamboo || - || Bamboo Class
| BlockBowl || bowl|| - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/Cooking/BlockBowl.cs Bowl Class ]
|-
|-
| BlockBarrel || barrel || - || Barrel Class
| BlockBucket || bucket|| - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockBucket.cs Bucket Class ]
|-
|-
| BlockBed|| bed || - || Bed Class
| BlockBunchOCandles || bunchocandles || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Item/ItemCandle.cs Candle Class ]
|-
|-
| BlockBeehive|| wildbeehive || - || Wild Beehive Class
| BlockCactus || saguarocactus || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockCactus.cs Cactus Class ]
|-
|-
| BlockBerryBush|| smallberrybush, largeberrybush || - || Berry Bush Class
| BlockCanvas || canvas || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockCanvas.cs Canvas Class ]
|-
|-
| BlockBloomery || bloomerybase || - || Bloomery Class
| BlockChandelier || chandelier|| - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockChandelier.cs Chandelier Class ]
|-
|-
| BlockBomb || oreblastingbomb || - || Bomb Class
| BlockChisel || chiseledblock || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockChisel.cs Chiseled Class ]
|-
|-
| BlockBowl || bowl|| - || Bowl Class
| BlockClayForm || clayform|| - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockClayForm.cs Clay Form Class ]
|-
|-
| BlockBucket || bucket|| - || Bucket Class
| BlockCookedContainer || pot || A container that has finished cooking its contents and is ready to be taken from etc. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/Cooking/BlockCookedContainer.cs Cooked Container Class ]
|-
|-
| BlockBunchOCandles || bunchocandles || - || Candle Class
| BlockCookingContainer || pot || A container that has not finished cooking its contents (if any). || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/Cooking/BlockCookingContainer.cs Cooking Container Class ]
|-
|-
| BlockCactus || saguarocactus || - || Cactus Class
| BlockCrock || crock || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockCrock.cs Crock Class ]
|-
|-
| BlockCanvas || canvas || - || Canvas Class
| BlockCrystal || crystallargecluster, crystalsmall || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockCrystal.cs Crystal Class ]
|-
|-
| BlockChandelier || chandelier|| - || Chandelier Class
| BlockDisplayCase || displaycase || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockDisplayCase.cs Display Case Class ]
|-
|-
| BlockCharcoalPit || oreblastingbomb || - || Bomb Class
| BlockDoor || door, irondoor || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockDoor.cs Door Class ]
|-
|-
| BlockChisel || chiseledblock || - || Chiseled Class
| BlockEchoChamber || echochamber || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockEchoChamber.cs Echo Chamber Class ]
|-
|-
| BlockClayForm || clayform|| - || Clay Form Class
| BlockFarmland || farmland || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockFarmland.cs Farmland Class ]
|-
|-
| BlockChisel || chiseledblock || - || Bomb Class
| BlockFence || fence, ironfence || Used to change the shape based off of nearby attachable surfaces. Requires shape variants for every horizontal orientation. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockFence.cs Fence Class ]
|-
|-
| BlockCookedContainer || pot || A container that has finished cooking its contents and is ready to be taken from etc. || Cooked Container Class
| BlockFenceGate || fencegate || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockFenceGate.cs Fence Gate Class ]
|-
|-
| BlockCookingContainer || pot || A container that has not finished cooking its contents (if any). || Cooking Container Class
| BlockFirepit || firepit || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockFirepit.cs Firepit Class ]
|-
|-
| BlockCrock || crock || - || Crock Class
| BlockFirewoodPile || firewoodpile|| - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockFirewoodPile.cs Firewood Pile Class ]
|-
|-
| BlockCrystal || crystallargecluster, crystalsmall || - || Crystal Class
| BlockFlowerPot || flowerpot, planter || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockFlowerPot.cs Flower Pot Class ]
|-
|-
| BlockDisplayCase || displaycase || - || Display Case Class
| BlockForge || forge || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockForge.cs Forge Class ]
|-
|-
| BlockDoor || door, irondoor || - || Door Class
| BlockFullCoating || saltpeter || Used to make a block which coats all flat surfaces when placed. Requires shape variants for every possible orientation. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockFullCoating.cs Full Coating Class ]
|-
|-
| BlockEchoChamber || echochamber || - || Echo Chamber Class
| BlockGenericTypedContainer || chest, storagevessel, stationarybasket || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockGenericTypedContainer.cs Generic Container Class ]
|-
|-
| BlockFarmland || farmland || - || Farmland Class
| BlockGlowworms || glowworms || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockGlowworms.cs Glowworms Class ]
|-
|-
| BlockFence || fence, ironfence || Used to change the shape based off of nearby attachable surfaces. Requires shape variants for every horizontal orientation. || Fence Class
| BlockHopper|| hopper || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockHopper.cs Hopper Class ]
|-
|-
| BlockFenceGate || fencegate || - || Fence Gate Class
| BlockIngotMold || ingotmold || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockIngotMold.cs Ingot Mold Class ]
|-
|-
| BlockFirepit || firepit || - || Firepit Class
| BlockIngotPile || ingotpile || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockIngotPile.cs Ingot Pile Class ]
|-
|-
| BlockFirewoodPile || firewoodpile|| - || Firewood Pile Class
| BlockKnappingSurface || knappingsurface || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockKnappingSurface.cs Knapping Surface Class ]
|-
|-
| BlockFlowerPot || flowerpot, planter || - || Flower Pot Class
| BlockLabeledChest || chest-labeled || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLabeledChest.cs Labeled Chest Class ]
|-
|-
| BlockForge || forge || - || Forge Class
| BlockLantern || lantern || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLantern.cs Lantern Class ]
|-
|-
| BlockFullCoating || saltpeter || Used to make a block which coats all flat surfaces when placed. Requires shape variants for every possible orientation. || Full Coating Class
| BlockLava || lava || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLava.cs Lava Class ]
|-
|-
| BlockGenericTypedContainer || chest, storagevessel, stationarybasket || - || Generic Container Class
| BlockLayered || snow || A generic class that can be layered. Requires a variant for each height. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLayered.cs Layered Block Class ]
|-
|-
| BlockGlowworms || glowworms || - || Glowworms Class
| BlockLayeredSlowDig || charcoalpile || A version of the layered class that is much slower to dig. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLayeredSlowDig.cs Layered Block Class (slow dig) ]
|-
|-
| BlockHopper|| hopper || - || Hopper Class
| BlockLeaves || leaves, leavesbranchy || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLeaves.cs Leaves Class ]
|-
|-
| BlockIngotMold || ingotmold || - || Ingot Mold Class
| BlockLocustNest || cage (locustnest) || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLocustNest.cs Locust Nest Class ]
|-
|-
| BlockIngotPile || ingotpile || - || Ingot Pile Class
| BlockLog || log || Only contains code for OnPickBlock method. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLog.cs Lava Class ]
|-
|-
| BlockKnappingSurface || knappingsurface || - || Knapping Surface Class
| BlockLooseGears || loosegears || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLooseGears.cs Loose Gears Class ]
|-
|-
| BlockLabeledChest || chest-labeled || - || Labeled Chest Class
| BlockLooseOres || looseores || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLooseOres.cs Loose Ores Class ]
|-
|-
| BlockLantern || lantern || - || Lantern Class
| BlockLooseStones || loosestones || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLooseStones.cs Loose Stones Class ]
|-
|-
| BlockLava || lava || - || Lava Class
| BlockLootVessel || lootvessel || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLootVessel.cs Loot Vessel Class ]
|-
|-
| BlockLayered || snow || A generic class that can be layered. Requires a variant for each height. || Layered Block Class
| BlockLupine || flower-lupine || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockLupine.cs Lupine Flower Class ]
|-
|-
| BlockLayeredSlowDig || charcoalpile || A version of the layered class that is much slower to dig. || Layered Block Class (slow dig)
| BlockMeal || bowl-meal || Gives a block the ability to store meal data. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/Cooking/BlockMeal.cs Meal Class ]
|-
|-
| BlockLeaves || leaves, leavesbranchy || - || Leaves Class
| BlockMetalPartPile || partpile, partpile-wall || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockMetalPartPile.cs Part Pile Class ]
|-
|-
| BlockLocustNest || cage (locustnest) || - || Locust Nest Class
| BlockMetalSpikes || metalspikes (locustnest)|| - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockMetalSpikes.cs Metal Spikes Class ]
|-
|-
| BlockLog || log || Only contains code for OnPickBlock method. || Lava Class
| BlockMeteorite || meteorite || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockMeteorite.cs Meteorite Class ]
|-
|-
| BlockLooseGears || loosegears || - || Loose Gears Class
| BlockMushroom || mushroom || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockMushroom.cs Mushroom Class ]
|-
|-
| BlockLooseOres || looseores || - || Loose Ores Class
| BlockOre || ore-graded, ore-ungraded || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockOre.cs Ore Class ]
|-
|-
| BlockLooseStones || loosestones || - || Loose Stones Class
| BlockPan || pan || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockPan.cs Pan Class ]
|-
|-
| BlockLootVessel || lootvessel || - || Loot Vessel Class
| BlockPeatbrick|| peatbrick || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockPeatbrick.cs Peat Brick Class ]
|-
|-
| BlockLupine || flower-lupine || - || Lupine Flower Class
| BlockPeatPile || peatpile || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockPeatPile.cs Peat Pile Class ]
|-
|-
| BlockMeal || bowl-meal || Gives a block the ability to store meal data. || Meal Class
| BlockPlaceOnDrop || meteorite || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockPlaceOnDrop.cs Place on Drop Class ]
|-
|-
| BlockMetalPartPile || partpile, partpile-wall || - || Part Pile Class
| BlockPlant || flower, frostedtallgrass, herb, plaintreesapling, tallfern, tallgrass || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockPlant.cs Plant Class ]
|-
|-
| BlockMetalSpikes || metalspikes (locustnest)|| - || Metal Spikes Class
| BlockPlatePile || platepile || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockPlatePile.cs Plate Pile Class ]
|-
|-
| BlockMeteorite || meteorite || - || Meteorite Class
| BlockPlankPile || plankpile|| - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockPlankPile.cs Plank Pile Class ]
|-
|-
| BlockMushroom || mushroom || - || Mushroom Class
| BlockQuern || quern || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockQuern.cs Quern Class ]
|-
|-
| BlockOre || ore-graded, ore-ungraded || - || Ore Class
| BlockRails || rails || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockRails.cs Rails Class ]
|-
|-
| BlockPan || pan || - || Pan Class
| BlockReeds || reeds-free, reeds-water || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockReeds.cs Meteorite Class ]
|-
|-
| BlockPeatBrick|| peatbrick || - || Peat Brick Class
| BlockRequireSolidGround || barrelcactus || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockRequireSolidGround.cs Requires Solid Ground Class ]
|-
|-
| BlockPeatPile || peatpile || - || Peat Pile Class
| BlockReeds || reeds-free, reeds-water || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockReeds.cs Meteorite Class ]
|-
|-
| BlockPlaceOnDrop || meteorite || - || Place on Drop Class
| BlockSeaweed || seaweed || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSeaweed.cs Seaweed Class ]
|-
|-
| BlockPlant || flower, frostedtallgrass, herb, tallfern, tallgrass || - || Plant Class
| BlockShelf || shelf || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockShelf.cs Shelf Class ]
|-
|-
| BlockPlatePile || platepile || - || Plate Pile Class
| BlockSign || sign || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSign.cs Sign Class ]
|-
|-
| BlockQuern || quern || - || Quern Class
| BlockSignPost || signpost || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSignPost.cs Sign Post Class ]
|-
|-
| BlockRails || rails || - || Rails Class
| BlockSimpleCoating|| linen, sheet (metal), wool || Allows a thin, flat block to be placed on a single side of a surface. Requires directional variants for each orientation. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSimpleCoating.cs Simple Coating Class ]
|-
|-
| BlockReeds || reeds-free, reeds-water || - || Meteorite Class
| BlockSkep || skep || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSkep.cs Skep Class ]
|-
|-
| BlockRequireSolidGround || barrelcactus || - || Requires Solid Ground Class
| BlockSmeltedContainer || crucible || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSmeltedContainer.cs Smelted Container Class ]
|-
|-
| BlockReeds || reeds-free, reeds-water || - || Meteorite Class
| BlockSmeltingContainer || crucible || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSmeltingContainer.cs Smelting Container Class ]
|-
|-
| BlockSeaweed || seaweed || - || Seaweed Class
| BlockSnow || snow || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSnow.cs Snow Class ]
|-
|-
| BlockShelf || shelf || - || Shelf Class
| BlockSoil || soil || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSoil.cs Soil Class ]
|-
|-
| BlockSign || sign || - || Sign Class
| BlockSoilDeposit || clay, peat || Used to generate a soil type and then generate soil beneath it to prevent gaps formation. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSoilDeposit.cs Soil Deposit Class ]
|-
|-
| BlockSignPost || signpost || - || Sign Post Class
| BlockSpawner || meta || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockSpawner.cs Entity Spawner Class ]
|-
|-
| BlockSimpleCoating|| linen, sheet (metal), wool || Allows a thin, flat block to be placed on a single side of a surface. Requires directional variants for each orientation. || Simple Coating Class
| BlockStairs || All stairs || Allows stair blocks to be placed in different orientations. Requires variants for each orientation. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockStairs.cs Stairs Class ]
|-
|-
| BlockSkep || skep || - || Skep Class
| BlockStalagSection || stalagsection || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockStalagSection.cs Stalag Section Class ]
|-
|-
| BlockSmeltedContainer || crucible || - || Smelted Container Class
| BlockStaticTranslocator || statictranslocator || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockStaticTranslocator.cs Static Translocator Class ]
|-
|-
| BlockSmeltingContainer || crucible || - || Smelting Container Class
| BlockTeleporter || teleporterbase || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockTeleporter.cs Teleporter Class ]
|-
|-
| BlockSnow || snow || - || Snow Class
| BlockThermalDifference || - || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockThermalDifference.cs Thermal Difference Class ]
|-
|-
| BlockSoil || soil || - || Soil Class
| BlockToolMold || toolmold || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockToolMold.cs Tool Mold Class ]
|-
|-
| BlockSoilDeposit || clay, peat || - || Soil Class
| BlockTorch || torch || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockTorch.cs Torch Class ]
|-
|-
| BlockSpawner || meta || - || Entity Spawner Class
| BlockTorchHolder || torchholder || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockTorchHolder.cs Torchholder Class ]
|-
|-
| BlockStairs || All stairs || Allows stair blocks to be placed in different orientations. Requires variants for each orientation. || Stairs Class
| BlockTrough || trough-small || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockTrough.cs Trough Class ]
|-
|-
| BlockStalagSection || stalagsection || - || Stalag Section Class
| BlockTroughDoubleBlock || trough-large || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockTroughDoubleBlock.cs Double Block Trough Class ]
|-
|-
| BlockStaticTranslocator || statictranslocator || - || Static Translocator Class
| BlockVines || wildvine || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockVines.cs Vine Class ]
|-
|-
| BlockTeleporter || teleporterbase || - || Teleporter Class
| BlockWater || water || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockWater.cs Water Class ]
|-
|-
| BlockThermalDiff || - || - || Thermal Difference Class
| BlockWaterflowing || water || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockWaterFlowing.cs Flowing Water Class ]
|-
|-
| BlockToolMold || toolmold || - || Tool Mold Class
| BlockWaterLily || waterlily || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockWaterLily.cs Water Lily Class ]
|-
|-
| BlockTorch || torch || - || Torch Class
| BlockWaterPlant || water || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockWaterPlant.cs Water Plant Class ]
|-
|-
| BlockTorchHolder || torchholder || - || Torchholder Class
| BlockWaterfall || water || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockWaterfall.cs Waterfall Class ]
|-
|-
| BlockTrough || trough-small || - || Trough Class
| BlockWateringCan|| wateringcan || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockWateringCan.cs Wateringcan Class ]
|-
|-
| BlockTroughDoubleBlock || trough-large || - || Double Block Trough Class
| BlockWithGrassOverlay|| - || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Block/BlockWithGrassOverlay.cs Grass Overlay Class ]
|}
 
== Mechanical Power Block Classes ==
This table contains all the blocks relevant to mechanical power.
{| class="wikitable"
|-
|-
| BlockVines || wildvine || - || Vine Class
! Class Name !! Example Blocks !! Description !! Github Link
|-
|-
| BlockWater || water || - || Water Class
| BlockAngledGears|| angledgears || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/Block/BlockAngledGears.cs Angled Gears Class ]
|-
|-
| BlockWaterflowing || water || - || Flowing Water Class
| BlockAxle || axle || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/Block/BlockAxle.cs Axle Class ]
|-
|-
| BlockWaterLily || waterlily || - || Water Lily Class
| BlockBrake || brake || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/Block/BlockBrake.cs Brake Class ]
|-
|-
| BlockWaterPlant || water || - || Water Plant Class
| BlockClutch || clutch || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/Block/BlockClutch.cs Clutch Class ]
|-
|-
| BlockWaterfall || water || - || Waterfall Class
| BlockHelveHammer || helvehammerbase || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/Block/BlockHelvehammer.cs Helve Hammer Class ]
|-
|-
| BlockWateringCan|| wateringcan || - || Wateringcan Class
| BlockToggle|| toggle || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/Block/BlockToggle.cs Toggle Class ]
|-
|-
| BlockWithGrassOverlay|| - || - || Grass Overlay Class
| BlockTransmission || transmission || - || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/Block/BlockTransmission.cs Transmission Class ]
 
|-
 
| BlockWindmillRotor || windmillrotor || Controls the placement of the rotor and determines what happens when the player tries to add sails to it. || [https://github.com/anegostudios/vssurvivalmod/blob/master/Systems/MechanicalPower/Block/BlockWindmillRotor.cs Windmill Rotor Class ]
|}
|}
    
    
{{Navbox/modding|Vintage Story}}
{{Navbox/modding|Vintage Story}}

Latest revision as of 19:51, 7 May 2020

Using block classes

Sometimes a block requires additional functionality that can't be accomplished with a JSON. Doing so requires a block to utilize a C# class, which uses the following format in the JSON:

class: "BlockClass"

A majority of all block classes can be viewed here in the Vintage Story Github for those looking to learn more about how each works.

Additionally, mechanical blocks classes are stored here.

All Block Classes

Here is a table containing all classes used by blocks as of version 1.9.+

Class Name Example Blocks Description Github Link
Block most regular blocks A standard block class that almost all blocks utilize or inherit. Block Class
BlockAnvil anvil Used by the anvil Anvil Class
BlockBamboo bamboo - Bamboo Class
BlockBarrel barrel - Barrel Class
BlockBed bed - Bed Class
BlockBeehive wildbeehive - Wild Beehive Class
BlockBigBerryBush smallberrybush, largeberrybush - Berry Bush Class
BlockBloomery bloomerybase - Bloomery Class
BlockBomb oreblastingbomb - Bomb Class
BlockBowl bowl - Bowl Class
BlockBucket bucket - Bucket Class
BlockBunchOCandles bunchocandles - Candle Class
BlockCactus saguarocactus - Cactus Class
BlockCanvas canvas - Canvas Class
BlockChandelier chandelier - Chandelier Class
BlockChisel chiseledblock - Chiseled Class
BlockClayForm clayform - Clay Form Class
BlockCookedContainer pot A container that has finished cooking its contents and is ready to be taken from etc. Cooked Container Class
BlockCookingContainer pot A container that has not finished cooking its contents (if any). Cooking Container Class
BlockCrock crock - Crock Class
BlockCrystal crystallargecluster, crystalsmall - Crystal Class
BlockDisplayCase displaycase - Display Case Class
BlockDoor door, irondoor - Door Class
BlockEchoChamber echochamber - Echo Chamber Class
BlockFarmland farmland - Farmland Class
BlockFence fence, ironfence Used to change the shape based off of nearby attachable surfaces. Requires shape variants for every horizontal orientation. Fence Class
BlockFenceGate fencegate - Fence Gate Class
BlockFirepit firepit - Firepit Class
BlockFirewoodPile firewoodpile - Firewood Pile Class
BlockFlowerPot flowerpot, planter - Flower Pot Class
BlockForge forge - Forge Class
BlockFullCoating saltpeter Used to make a block which coats all flat surfaces when placed. Requires shape variants for every possible orientation. Full Coating Class
BlockGenericTypedContainer chest, storagevessel, stationarybasket - Generic Container Class
BlockGlowworms glowworms - Glowworms Class
BlockHopper hopper - Hopper Class
BlockIngotMold ingotmold - Ingot Mold Class
BlockIngotPile ingotpile - Ingot Pile Class
BlockKnappingSurface knappingsurface - Knapping Surface Class
BlockLabeledChest chest-labeled - Labeled Chest Class
BlockLantern lantern - Lantern Class
BlockLava lava - Lava Class
BlockLayered snow A generic class that can be layered. Requires a variant for each height. Layered Block Class
BlockLayeredSlowDig charcoalpile A version of the layered class that is much slower to dig. Layered Block Class (slow dig)
BlockLeaves leaves, leavesbranchy - Leaves Class
BlockLocustNest cage (locustnest) - Locust Nest Class
BlockLog log Only contains code for OnPickBlock method. Lava Class
BlockLooseGears loosegears - Loose Gears Class
BlockLooseOres looseores - Loose Ores Class
BlockLooseStones loosestones - Loose Stones Class
BlockLootVessel lootvessel - Loot Vessel Class
BlockLupine flower-lupine - Lupine Flower Class
BlockMeal bowl-meal Gives a block the ability to store meal data. Meal Class
BlockMetalPartPile partpile, partpile-wall - Part Pile Class
BlockMetalSpikes metalspikes (locustnest) - Metal Spikes Class
BlockMeteorite meteorite - Meteorite Class
BlockMushroom mushroom - Mushroom Class
BlockOre ore-graded, ore-ungraded - Ore Class
BlockPan pan - Pan Class
BlockPeatbrick peatbrick - Peat Brick Class
BlockPeatPile peatpile - Peat Pile Class
BlockPlaceOnDrop meteorite - Place on Drop Class
BlockPlant flower, frostedtallgrass, herb, plaintreesapling, tallfern, tallgrass - Plant Class
BlockPlatePile platepile - Plate Pile Class
BlockPlankPile plankpile - Plank Pile Class
BlockQuern quern - Quern Class
BlockRails rails - Rails Class
BlockReeds reeds-free, reeds-water - Meteorite Class
BlockRequireSolidGround barrelcactus - Requires Solid Ground Class
BlockReeds reeds-free, reeds-water - Meteorite Class
BlockSeaweed seaweed - Seaweed Class
BlockShelf shelf - Shelf Class
BlockSign sign - Sign Class
BlockSignPost signpost - Sign Post Class
BlockSimpleCoating linen, sheet (metal), wool Allows a thin, flat block to be placed on a single side of a surface. Requires directional variants for each orientation. Simple Coating Class
BlockSkep skep - Skep Class
BlockSmeltedContainer crucible - Smelted Container Class
BlockSmeltingContainer crucible - Smelting Container Class
BlockSnow snow - Snow Class
BlockSoil soil - Soil Class
BlockSoilDeposit clay, peat Used to generate a soil type and then generate soil beneath it to prevent gaps formation. Soil Deposit Class
BlockSpawner meta - Entity Spawner Class
BlockStairs All stairs Allows stair blocks to be placed in different orientations. Requires variants for each orientation. Stairs Class
BlockStalagSection stalagsection - Stalag Section Class
BlockStaticTranslocator statictranslocator - Static Translocator Class
BlockTeleporter teleporterbase - Teleporter Class
BlockThermalDifference - - Thermal Difference Class
BlockToolMold toolmold - Tool Mold Class
BlockTorch torch - Torch Class
BlockTorchHolder torchholder - Torchholder Class
BlockTrough trough-small - Trough Class
BlockTroughDoubleBlock trough-large - Double Block Trough Class
BlockVines wildvine - Vine Class
BlockWater water - Water Class
BlockWaterflowing water - Flowing Water Class
BlockWaterLily waterlily - Water Lily Class
BlockWaterPlant water - Water Plant Class
BlockWaterfall water - Waterfall Class
BlockWateringCan wateringcan - Wateringcan Class
BlockWithGrassOverlay - - Grass Overlay Class

Mechanical Power Block Classes

This table contains all the blocks relevant to mechanical power.

Class Name Example Blocks Description Github Link
BlockAngledGears angledgears - Angled Gears Class
BlockAxle axle - Axle Class
BlockBrake brake - Brake Class
BlockClutch clutch - Clutch Class
BlockHelveHammer helvehammerbase - Helve Hammer Class
BlockToggle toggle - Toggle Class
BlockTransmission transmission - Transmission Class
BlockWindmillRotor windmillrotor Controls the placement of the rotor and determines what happens when the player tries to add sails to it. Windmill Rotor 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 ItemEntityBlockBlock BehaviorsBlock ClassesBlock EntitiesBlock Entity 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