Modding:Block Classes: Difference between revisions

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