Jump to content

Micah Holmes

Vintarian
  • Posts

    257
  • Joined

  • Last visited

Everything posted by Micah Holmes

  1. Working on adding a Game Mechanic into the handbook but having trouble getting it to work. the vanilla game starts on page 0 and ends at page 30. So I created my page starting at page 31. However, I don't think the text really matters. Location: /Mods/Craftsmanship/assets/craftsmanship/config/handbook Code: { pageCode: "gamemechanicinfo-mushroomgrowing", title: "gamemechanicinfo-mushroomgrowing-title", text: "gamemechanicinfo-mushroomgrowing-text" } In my lang files I have: code: "gamemechanicinfo-mushroomgrowing-title": "Game Mechanic: Growing Mushrooms", "gamemechanicinfo-mushroomgrowing-text": "<strong>Growing Mushrooms</strong><br>Growing mushrooms takes very little effort but needs a lot of time.<br><br><strong>Basic Materials</strong><br>Mushrooms grow using mostly pasteurized wood or pasteurized grass or other pasteurized items. Pasteurization is a fundamental step in growing spores that will later sprout mushrooms. Start by gathering logs to make wood chips or growing certain crops like wheat for example.<br><br><strong>Pasteurization</strong><br>To start the process of pasteurizing a item, you need to boil it in a cooking pot. Next, place it in a barrel with water so the bacteria can grow.<br><br><strong>Growing</strong><br>Once you have pasteurized some wood or an item; its time to start growing mushrooms. Growing will require 1 barrel, a pasteurized item, water, saltwater or limewater and time. Different mushrooms require different types of woods or items in order to grow. Most mushrooms take about 10 days to grow.<br><br><strong>Uses</strong><br>Obviously mushrooms are a good food source. However, some poisonous mushrooms can be used in medicine. The Bitter Bolete is dangerous to eat freshly picked or grown but it can be used in medicine to cure fevers and heal you. Several poisonous mushrooms can be used in medicines. To see which ones are helpful, search the handbook for medicine and discover useful mushrooms.<br><br>Growing mushrooms in a barrel is also a great way to farm even during winter months. Because mushrooms can be grown in barrels. You can place them in a nice dark, warm area in your home and grow them all year round. Additionally, because they can be a source of medicine as well. You will always have a source for medical supplies when needed.<br><br><strong>Recipes</strong><br>Below is a list of a few mushrooms you will be able to grow in a barrel.<a href=\"handbook://gamemechanicinfo-mushroomgrowing\">farming</a><br><ul><li>Almond Mushroom</li><li>Lime Water</li><li>Pasteurized Walnut</li><br><li>Bearded Tooth Mushroom</li><li>Lime Water</li><li>Pasteurized Oak</li><br><li>Bitter Bolete Mushroom</li><li>Salt Water</li><li>Pasteurized Pine</li>",
  2. update: Bug farms Ladybugs Beetles Grubs Termites Silkworms gives silk Black Ants Fire Ants Silk silk cloths silk fabric Silk chateau-blouse "plain", "mordant", "blue", "red", "yellow", "green", "purple", "pink", "orange", "brown", "grey", "black", "white" Silk squire-shirt "blue", "yellow", "green", "purple", "pink", "orange", "brown", "grey" Silk temptress-velvet-shirt "plain", "mordant", "blue", "red", "yellow", "green", "purple", "pink", "orange", "brown", "grey", "black", "white" How bug farms work: Bug farms work very similar to growing crops. All living creatures need water. So you will need to "water" the bug farm to keep it moist for the bugs to grow. First you will need to build the bug farm. They will take Mud from the Mud mod or Weak Clay from the Mud mod. Don't worry about getting those mods. Craftsmanship mod will have everything from those mods already included. Once you have the raw materials to build your bug house, you will need bugs. Bugs can be gathered from growing flowers. Flower crops work just like normal crops except you grow flowers and they don't feed butterflies or bees. Harvest the flowers and get bugs. Certain bugs like certain flowers. Getting Silk: The silkworm bug farm is the only way to get silk. Silk is a extremely light cloth and offers no protection from cold or combat. however, its silk, so technically a "rare" item. Additionally, once you have silk, it can be dyed to different colors. Silk may also be used later or included in this mod for some "magical" clothing not decided yet. Honestly silk has limited utility in real life and in the mod. Its pretty. Anyway, feel free to post your thoughts if you would like to see some "magic" like silk for clothing bonus. If not I'll keep it real. Up next Next, I plan to work on Hemp. Hemp will likely be a big clothing item. Lots of stuff you can make using hemp. This will likely take a good amount of time to get through hemp items. After hemp will be leather. Armor is high priority. Also will look at making more cloth armor and add hemp armor. Maybe silk robes for extremely lite armor.
  3. Update: Got the clothing going. Still creative gives bad condition but I did notice its posting as +- 2 C warmth. Kinda weird. I want the silk clothing to be for hotter areas and not give any warmth. Is there something I need to do to add a cooling effect to clothing?
  4. I made a new silk blouse but in creative is always spawns in terrible condition. Anyway to adjust the condition? Code: { code: "craftsmanship:blouse", class: "ItemWearable", variantgroups: [ { code: "category", states: ["upperbody"] }, { code: "upperbody", combine: "SelectiveMultiply", onVariant: "category", states: [ "chateau-blouse" ] }, { code: "color", states: ["plain", "mordant", "blue", "red", "yellow", "green", "purple", "pink", "orange", "brown", "grey", "black", "white"] } ], storageFlags: 128, attributes: { clothescategory: "upperbody", wearableAttachment: true, handbook: { groupBy: ["clothes-{category}-*"] } }, attributesByType: { "*-chateau-blouse-*": { warmth: -2.5 }, "*": { warmth: -2 } }, shapeByType: { "*": { base: "item/clothing/shirts/longsleeve" } }, texturesByType: { "*-mordant": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-blue": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-red": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-yellow": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-green": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-purple": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-pink": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-orange": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-brown": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-gray": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-black": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*-white": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-{color}" } }, "*": { "seraph": { base: "game:block/transparent" }, "shirt": { base: "item/clothing/upperbody/chateau/chateau-blouse-plain" } } }, creativeinventory: { "general": ["*"], "items": ["*"], "clothing": ["*"] }, renderAlphaTest: 0.25, fpHandTransform: { translation: { x: 0.05, y: -0.6, z: 0.3 }, rotation: { x: 180, y: 150, z: 180 }, scale: 2 }, tpHandTransform: { translation: { x: -0.3, y: -0.9, z: -0.7 }, rotation: { x: -71, y: 180, z: 83 }, scale: 0.55 }, guiTransformByType: { "*-chateau-blouse-*": { rotate: false, translation: { x: 0, y: 0, z: 0 }, rotation: { x: -178, y: -65, z: 10 }, origin: { x: 0.43, y: 1.1, z: 0.5 }, scale: 1.69 }, "*": { rotate: false, translation: { x: 0, y: 0, z: 0 }, rotation: { x: -178, y: -65, z: 10 }, origin: { x: 0.43, y: 1.1, z: 0.5 }, scale: 1.69 } }, groundTransform: { translation: { x: 0.05, y: 0.05, z: 0 }, rotation: { x: 0, y: 0, z: -87 }, origin: { x: 0.5, y: 0.5, z: 0.5299 }, scale: 4 } }
  5. Update: I've added a lot since my last update in here but ill share a few highlights: Mushroom growing in barrels Carbonated Water Various soda (Coming Soon) Syrups (Maple, Golden, Corn) Molasses New Breads Flat Pita cornbread Etc New Seeds Seeds for growing all new bread grains New Bread Flour flours for new breads Bug Farms farm bugs for food Pasteurization Make yeast and various other items New Trader Cultivation Sells Seeds and various Farm stuff New Insects Ladybug Beetle Flowers You can now grow flowers like a normal crop and harvest them for flowers, seeds and various bugs. Use bugs to build bug houses for bug farming. Sugar White Brown Raw Working on more stuff as well. I'll try to post as I complete stuff. Once I finish food and farming stuff, i want to work/attempt armor leather working items.
  6. Well I dont think it likes the Dry code so I removed it. No issues
  7. Working/experimenting with creating a bug farm. Trying to use crop as a test. i"m getting this error currently in my log: 6.1.2026 21:13:35 [Warning] Failed resolving a blocks blockdrop or smeltedstack with code game:termitemound-large in Dry Transition stack of Block craftsmanship:crop-termite-2 code: { code: "craftsmanship:crop", class: "BlockCrop", behaviors: [{name: "Unstable"}], variantgroups: [ { code: "type", states: ["termite" ] }, { code: "stage", states: ["1", "2" ] } ], creativeinventory: { "general": ["*"], "items": ["*"] }, renderpass: "OpaqueNoCull", shapeByType: { "*termite*": { base: "block/crop/bug-farm/termite/stage{stage}" } }, texturesByType: { "*termite-1": { "material": { "base": "block/weakclay" } }, "*termite-2": { "material": { "base": "block/weakclay" } } }, blockmaterial: "Plant", faceCullMode: "NeverCull", randomizeRotations: true, attributes: { foodTagsByType: { "*-1": ["nibbleCrop"], "*-2": ["nibbleCrop"] }, butterflyFeedByType: { "*-1": false, "*-2": false }, beeFeedByType: { "*-1": false, "*-2": false }, sitHeight: 0.9, tickGrowthProbability: 0.05, handbook: { include: true } }, sideopaque: { all: false }, sidesolid: { all: false }, replaceable: 3000, lightAbsorption: 0, resistance: 0.5, sounds: { place: "game:block/plant", break: "game:block/plant", hit: "game:block/plant" }, rainPermeable: false, /*dropsByType: { "*corn-10": [ { type: "item", code: "seeds-corn", quantity: { avg: 4,var: 6 } }, { type: "item", code: "grain-corn", quantity: { avg: 25, var: 8 } } ], "*": [ { type: "item", code: "seeds-corn", quantity: { avg: 4 } } ] },*/ transitionablePropsByType: { "crop-termite-2": [{ type: "Dry", freshHours: { avg: 0 }, transitionHours: { avg: 1 }, transitionedStack: { type: "block", code: "game:termitemound-large" }, transitionRatio: 1 }] }, cropProps: { // Common rates of nutrients to be applied are 50 to 60 lb/acre N, 25 lb/acre P2O5 and 30 lb/acre K2O. - http://www.heirloom-organics.com/guide/va/guidetogrowingspelt.html requiredNutrient: "N", nutrientConsumption: 40, growthStages: 2, totalGrowthMonths: 0.01 }, collisionbox: null, selectionbox: { x1: 0.0625, y1: 0, z1: 0.0625, x2: 0.9375, y2: 0.25, z2: 0.9375 }, materialDensity: 200, combustibleProps: { burnTemperature: 600, burnDuration: 10, }, frostable: true } FYI I know the idea is a little weird lol Romans use to grow grubs and eat them. So i'm working on building a system similar. Anyway, current issue is its not transitioning from crop to block.
  8. Chocolate has been on my to do list for awhile. I plan on releasing my version of the system in my mod soon ish. Remember though cocoa is very bitter unless you add sugar.
  9. I made a new trader but its not visible in my creative list. I think I'm missing something: { code: "craftsmanship:humanoid-trader-cultivation", class: "EntityTrader", tags: ["humanoid", "trader", "human", "habitat-land"], weight: 80, canClimb: true, hitboxSize: { x: 0.6, y: 1.75 }, deadHitboxSize: { x: 0.75, y: 0.5 }, behaviorConfigs: { nametag: { showtagonlywhentargeted: true, triggeredNameReveal: true, unrevealedDisplayName: "nametag-trader-unrevealedname" } }, client: { renderer: "Shape", shape: { base: "game:entity/humanoid/trader" }, texture: { base: "game:entity/humanoid/trader", alternates: [ { base: "game:entity/humanoid/traderclothes/set1" }, { base: "game:entity/humanoid/traderclothes/set2" }, { base: "game:entity/humanoid/traderclothes/set3" }, { base: "game:entity/humanoid/traderclothes/set4" }, { base: "game:entity/humanoid/traderclothes/set5" } ] }, behaviors: [ { code: "nametag" }, { code: "repulseagents" }, { code: "controlledphysics", stepHeight: 1.01 }, { code: "interpolateposition" }, { code: "conversable", dialogue: "game:config/dialogue/trader" } ], animations: [ { code: "game:die", animation: "die", animationSpeed: 1.75, weight: 10, blendMode: "AddAverage" }, { code: "game:hurt", animation: "hurt", animationSpeed: 2, blendMode: "AddAverage" }, { code: "game:formal-walk", animation: "formal-walk", animationSpeed: 1.5 }, ] }, attributes: { tradePropsFile: "config/tradelists/trader-cultivation", tradeProps: { money: { avg: 30, var: 10 }, } }, server: { attributes: { pathfinder: { minTurnAnglePerSec: 720, maxTurnAnglePerSec: 1440 } }, behaviors: [ { code: "nametag", "showtagonlywhentargeted": true, selectFromRandomName: ["Tidwy", "Wearda", "Eandhelm", "Freder", "Alric", "Vyncis", "Reda", "Hames"] }, { code: "repulseagents" }, { code: "controlledphysics", stepHeight: 1.01 }, { code: "reviveondeath", minHours: 24, maxHours: 72 }, { code: "health", currenthealth: 25, maxhealth: 25 }, { code: "game:emotionstates", states: [ { code: "aggressiveondamage", duration: 6, chance: 0.6, slot: 0, priority: 2, accumType: "noaccum" }, { code: "fleeondamage", duration: 10, chance: 0.4, slot: 0, priority: 1, accumType: "max" } ], }, { code: "game:taskai", aitasks: [ { code: "meleeattack", entityCodes: ["player"], priority: 2, damage: 5, mincooldown: 2500, maxcooldown: 3500, attackDurationMs: 900, damagePlayerAtMs: 300, animation: "Attack", animationSpeed: 2, whenInEmotionState: "aggressiveondamage", }, { code: "seekentity", entityCodes: ["player"], priority: 1.5, mincooldown: 1000, maxcooldown: 1500, seekingRange: 20, movespeed: 0.035, animation: "Run", animationSpeed: 1.75, whenInEmotionState: "aggressiveondamage" }, { code: "fleeentity", entityCodes: ["player"], priority: 1.5, movespeed: 0.035, seekingRange: 12, animation: "Run", animationSpeed: 1.75, whenInEmotionState: "fleeondamage" }, { code: "idle", priority: 1.2, minduration: 2500, maxduration: 2500, mincooldown: 2000, maxcooldown: 10000, animation: "laugh" }, { code: "idle", priority: 1.2, minduration: 2500, maxduration: 2500, mincooldown: 5000, maxcooldown: 30000, animation: "idle2" }, { code: "wander", priority: 1.0, movespeed: 0.01, animation: "Walk", wanderChance: 0.005, maxDistanceToSpawn: 4, wanderRangeMin: 1, wanderRangeMax: 3 }, { code: "lookaround", priority: 0.5 } ] }, { code: "game:conversable", dialogue: "game:config/dialogue/trader" }, { code: "entitystatetags" } ], }, sounds: { } }
  10. I made some new bread but its crashing on the handbook. Not 100% sure why just yet, hoping someone can point it out. I assume its a one liner. base game bread file: { code: "bread", maxstacksizeByType: { "*-charred": 48, "*": 32, }, variantgroups: [ { code: "type", states: ["spelt", "rye", "flax", "rice", "cassava", "amaranth", "sunflower" ] }, { code: "state", states: ["partbaked", "perfect", "charred" ] } ], behaviors: [ { name: "GroundStorable", properties: { layout: 'Quadrants', collisionBox: { x1: 0, y1: 0, z1: 0, x2: 1, y2: 0.125, z2: 1 } } } ], shape: { base: "item/food/bread/{type}bread" }, texturesbytype: { "*-partbaked": { "bread": {base: "item/food/grain/{type}bread2" }}, "*-perfect": { "bread": {base: "item/food/grain/{type}bread" }}, "*-charred": { "bread": {base: "item/food/grain/{type}bread1" }} }, creativeinventory: { "general": ["*"], "items": ["*"] }, attributes: { displaycaseable: true, shelvable: true, handbook: { extraSections: [ { title: "bread-handbook-help-title", text: "bread-handbook-help-text" } ] }, bakingPropertiesByType: { "*-partbaked": { temp: 160, levelFrom: 0.25, levelTo: 0.5, startScaleY: 0.95, endScaleY: 1.10, resultCode: "bread-{type}-perfect", initialCode: "dough-{type}" }, "*-perfect": { temp: 160, levelFrom: 0.5, levelTo: 0.75, startScaleY: 1.10, endScaleY: 1.13, resultCode: "bread-{type}-charred", initialCode: "bread-{type}-partbaked" }, "*-charred": { temp: 160, levelFrom: 0.75, levelTo: 1, startScaleY: 1.13, endScaleY: 1.10, initialCode: "bread-{type}-perfect" } }, }, combustiblePropsByType: { "*-partbaked": { meltingPoint: 200, meltingDuration: 15, smeltedRatio: 1, smeltingType: "bake", smeltedStack: { type: "item", code: "bread-{type}-charred" }, requiresContainer: false }, "*-perfect": { meltingPoint: 200, meltingDuration: 15, smeltedRatio: 1, smeltingType: "bake", smeltedStack: { type: "item", code: "bread-{type}-charred" }, requiresContainer: false } }, nutritionPropsByType: { "*-flax-partbaked": { saturation: 70, foodcategory: "Grain" }, "*-flax-perfect": { saturation: 160, foodcategory: "Grain" }, "*-flax-charred": { saturation: 100, foodcategory: "Grain" }, "*-rice-partbaked": { saturation: 160, foodcategory: "Grain" }, "*-rice-perfect": { saturation: 330, foodcategory: "Grain" }, "*-rice-charred": { saturation: 220, foodcategory: "Grain" }, "*-partbaked": { saturation: 150, foodcategory: "Grain" }, "*-perfect": { saturation: 300, foodcategory: "Grain" }, "*-charred": { saturation: 210, foodcategory: "Grain" } }, transitionablePropsByType: { "*-partbaked": [{ type: "Perish", freshHours: { avg: 120 }, transitionHours: { avg: 24 }, transitionedStack: { type: "item", code: "rot" }, transitionRatio: 1 }], "*-perfect": [{ type: "Perish", freshHours: { avg: 192 }, transitionHours: { avg: 36 }, transitionedStack: { type: "item", code: "rot" }, transitionRatio: 1 }], "*-charred": [{ type: "Perish", freshHours: { avg: 420 }, transitionHours: { avg: 60 }, transitionedStack: { type: "item", code: "rot" }, transitionRatio: 1 }] }, materialDensity: 200, guiTransform: { translation: { x: 0, y: 0, z: 0 }, rotation: { x: -30, y: 26, z: 180 }, origin: { x: 0.52, y: 0.07, z: 0.5 }, scale: 4.9 }, groundTransform: { translation: { x: 0, y: 0, z: 0 }, rotation: { x: 0, y: 0, z: 1 }, origin: { x: 0.5, y: 0, z: 0.5 }, scale: 4.5 }, tpHandTransform: { translation: { x: -0.54, y: -0.16, z: -0.4 }, rotation: { x: 88, y: -85, z: 2 }, origin: { x: 0.5, y: 0.13, z: 0.5 }, scale: 1 }, fpHandTransform: { translation: { x: 0, y: 0.24, z: 0.3 }, rotation: { x: 104, y: 0, z: 71 }, origin: { x: 0.5, y: 0.1, z: 0.5 }, scale: 2.5 } } My code: { code: "craftsmanship:bread", maxstacksizeByType: { "*-charred": 48, "*": 32 }, variantgroups: [ { code: "type", states: ["corn", "wheat", "wholegrain", "white", "sour-dough", "tortilla" ] }, { code: "state", states: ["partbaked", "perfect", "charred" ] } ], behaviors: [ { name: "GroundStorable", properties: { layout: 'Quadrants', collisionBox: { x1: 0, y1: 0, z1: 0, x2: 1, y2: 0.125, z2: 1 } } } ], shapeByType: { "*corn*": { base: "block/food/bread/generic/bread" }, "*wheat*": { base: "block/food/bread/generic/bread" }, "*wholegrain*": { base: "block/food/bread/generic/bread" }, "*white*": { base: "block/food/bread/generic/bread" }, "*sour-dough*": { base: "block/food/bread/{type}/bread" }, "*tortilla*": { base: "block/food/bread/{type}/bread" } }, texturesbytype: { "*corn-partbaked": { "bread": {base: "item/food/bread/{type}/partbaked" }}, "*corn-perfect": { "bread": {base: "item/food/bread/{type}/perfect" }}, "*corn-charred": { "bread": {base: "item/food/bread/{type}/charred" }}, "*wheat-partbaked": { "bread": {base: "item/food/bread/{type}/partbaked" }}, "*wheat-perfect": { "bread": {base: "item/food/bread/{type}/perfect" }}, "*wheat-charred": { "bread": {base: "item/food/bread/{type}/charred" }}, "*wholegrain-partbaked": { "bread": {base: "item/food/bread/{type}/partbaked" }}, "*wholegrain-perfect": { "bread": {base: "item/food/bread/{type}/perfect" }}, "*wholegrain-charred": { "bread": {base: "item/food/bread/{type}/charred" }}, "*white-partbaked": { "bread": {base: "item/food/bread/{type}/partbaked" }}, "*white-perfect": { "bread": {base: "item/food/bread/{type}/perfect" }}, "*white-charred": { "bread": {base: "item/food/bread/{type}/charred" }}, "*sour-dough-partbaked": { "bread": {base: "item/food/bread/{type}/partbaked" }}, "*sour-dough-perfect": { "bread": {base: "item/food/bread/{type}/perfect" }}, "*sour-dough-charred": { "bread": {base: "item/food/bread/{type}/charred" }}, "*tortilla-partbaked": { "bread": {base: "item/food/bread/{type}/partbaked" }}, "*tortilla-perfect": { "bread": {base: "item/food/bread/{type}/perfect" }}, "*tortilla-charred": { "bread": {base: "item/food/bread/{type}/charred" }}, "*-partbaked": { "bread": {base: "item/food/bread/{type}/partbaked" }}, "*-perfect": { "bread": {base: "item/food/bread/{type}/perfect" }}, "*-charred": { "bread": {base: "item/food/bread/{type}/charred" }} }, creativeinventory: { "general": ["*"], "items": ["*"] }, attributes: { displaycaseable: true, shelvable: true, handbook: { extraSections: [ { title: "bread-handbook-help-title", text: "bread-handbook-help-text" } ] }, bakingPropertiesByType: { "*-partbaked": { temp: 160, levelFrom: 0.25, levelTo: 0.5, startScaleY: 0.95, endScaleY: 1.10, resultCode: "bread-{type}-perfect", initialCode: "dough-{type}" }, "*-perfect": { temp: 160, levelFrom: 0.5, levelTo: 0.75, startScaleY: 1.10, endScaleY: 1.13, resultCode: "bread-{type}-charred", initialCode: "bread-{type}-partbaked" }, "*-charred": { temp: 160, levelFrom: 0.75, levelTo: 1, startScaleY: 1.13, endScaleY: 1.10, initialCode: "bread-{type}-perfect" } }, }, combustiblePropsByType: { "*-partbaked": { meltingPoint: 200, meltingDuration: 15, smeltedRatio: 1, smeltingType: "bake", smeltedStack: { type: "item", code: "bread-{type}-charred" }, requiresContainer: false }, "*-perfect": { meltingPoint: 200, meltingDuration: 15, smeltedRatio: 1, smeltingType: "bake", smeltedStack: { type: "item", code: "bread-{type}-charred" }, requiresContainer: false } }, nutritionPropsByType: { "*-corn-partbaked": { saturation: 130, foodcategory: "Grain" }, "*-corn-perfect": { saturation: 280, foodcategory: "Grain" }, "*-corn-charred": { saturation: 210, foodcategory: "Grain" }, "*-wheat-partbaked": { saturation: 150, foodcategory: "Grain" }, "*-wheat-perfect": { saturation: 400, foodcategory: "Grain" }, "*-wheat-charred": { saturation: 300, foodcategory: "Grain" }, "*-wholegrain-partbaked": { saturation: 180, foodcategory: "Grain" }, "*-wholegrain-perfect": { saturation: 350, foodcategory: "Grain" }, "*-wholegrain-charred": { saturation: 220, foodcategory: "Grain" }, "*-white-partbaked": { saturation: 145, foodcategory: "Grain" }, "*-white-perfect": { saturation: 300, foodcategory: "Grain" }, "*-white-charred": { saturation: 215, foodcategory: "Grain" }, "*-sour-dough-partbaked": { saturation: 200, foodcategory: "Grain" }, "*-sour-dough-perfect": { saturation: 325, foodcategory: "Grain" }, "*-sour-dough-charred": { saturation: 240, foodcategory: "Grain" }, "*-tortilla-partbaked": { saturation: 150, foodcategory: "Grain" }, "*-tortilla-perfect": { saturation: 310, foodcategory: "Grain" }, "*-tortilla-charred": { saturation: 220, foodcategory: "Grain" }, "*-partbaked": { saturation: 150, foodcategory: "Grain" }, "*-perfect": { saturation: 300, foodcategory: "Grain" }, "*-charred": { saturation: 210, foodcategory: "Grain" } }, transitionablePropsByType: { "*-partbaked": [{ type: "Perish", freshHours: { avg: 120 }, transitionHours: { avg: 24 }, transitionedStack: { type: "item", code: "game:rot" }, transitionRatio: 1 }], "*-perfect": [{ type: "Perish", freshHours: { avg: 192 }, transitionHours: { avg: 36 }, transitionedStack: { type: "item", code: "game:rot" }, transitionRatio: 1 }], "*-charred": [{ type: "Perish", freshHours: { avg: 420 }, transitionHours: { avg: 60 }, transitionedStack: { type: "item", code: "game:rot" }, transitionRatio: 1 }] }, materialDensity: 200, guiTransform: { translation: { x: 0, y: 0, z: 0 }, rotation: { x: -30, y: 26, z: 180 }, origin: { x: 0.52, y: 0.07, z: 0.5 }, scale: 4.9 }, groundTransform: { translation: { x: 0, y: 0, z: 0 }, rotation: { x: 0, y: 0, z: 1 }, origin: { x: 0.5, y: 0, z: 0.5 }, scale: 4.5 }, tpHandTransform: { translation: { x: -0.54, y: -0.16, z: -0.4 }, rotation: { x: 88, y: -85, z: 2 }, origin: { x: 0.5, y: 0.13, z: 0.5 }, scale: 1 }, fpHandTransform: { translation: { x: 0, y: 0.24, z: 0.3 }, rotation: { x: 104, y: 0, z: 71 }, origin: { x: 0.5, y: 0.1, z: 0.5 }, scale: 2.5 } } I think the issue is in here but base game has same code so im not 100%: combustiblePropsByType: { "*-partbaked": { meltingPoint: 200, meltingDuration: 15, smeltedRatio: 1, smeltingType: "bake", smeltedStack: { type: "item", code: "bread-{type}-charred" }, requiresContainer: false }, "*-perfect": { meltingPoint: 200, meltingDuration: 15, smeltedRatio: 1, smeltingType: "bake", smeltedStack: { type: "item", code: "bread-{type}-charred" }, requiresContainer: false } }, Attributes also feels suspect since its happening in the handbook only: attributes: { displaycaseable: true, shelvable: true, handbook: { extraSections: [ { title: "bread-handbook-help-title", text: "bread-handbook-help-text" } ] }, bakingPropertiesByType: { "*-partbaked": { temp: 160, levelFrom: 0.25, levelTo: 0.5, startScaleY: 0.95, endScaleY: 1.10, resultCode: "bread-{type}-perfect", initialCode: "dough-{type}" }, "*-perfect": { temp: 160, levelFrom: 0.5, levelTo: 0.75, startScaleY: 1.10, endScaleY: 1.13, resultCode: "bread-{type}-charred", initialCode: "bread-{type}-partbaked" }, "*-charred": { temp: 160, levelFrom: 0.75, levelTo: 1, startScaleY: 1.13, endScaleY: 1.10, initialCode: "bread-{type}-perfect" } }, }, Error log: Running on 64 bit Linux (Linux Mint 22.1) [Kernel 6.8.0.90] with 31965 MB RAM Game Version: v1.21.6 (Stable) 1/3/2026 9:17:10 PM: Critical error occurred Loaded Mods: craftsmanship@1.0.0, game@1.21.6, creative@1.21.6, survival@1.21.6 System.Exception: Can't create itemstack without collectible! at Vintagestory.API.Common.ItemStack..ctor(CollectibleObject collectible, Int32 stacksize) in VintagestoryApi\Common\Collectible\ItemStack.cs:line 200 at Vintagestory.GameContent.CollectibleBehaviorHandbookTextAndExtraInfo.addCreatedByInfo(ICoreClientAPI capi, ItemStack[] allStacks, ActionConsumable`1 openDetailPageFor, ItemStack stack, List`1 components, Single marginTop, List`1 containers, List`1 fuels, List`1 molds, Boolean haveText) in VSSurvivalMod\Systems\Handbook\CollectibleBehaviorHandbookTextAndExtraInfo.cs:line 1922 at Vintagestory.GameContent.CollectibleBehaviorHandbookTextAndExtraInfo.GetHandbookInfo(ItemSlot inSlot, ICoreClientAPI capi, ItemStack[] allStacks, ActionConsumable`1 openDetailPageFor) in VSSurvivalMod\Systems\Handbook\CollectibleBehaviorHandbookTextAndExtraInfo.cs:line 109 at Vintagestory.GameContent.GuiHandbookItemStackPage.GetPageText(ICoreClientAPI capi, ItemStack[] allStacks, ActionConsumable`1 openDetailPageFor) in VSSurvivalMod\Systems\Handbook\Gui\GuiHandbookItemStackPage.cs:line 119 at Vintagestory.GameContent.GuiHandbookItemStackPage.ComposePage(GuiComposer detailViewGui, ElementBounds textBounds, ItemStack[] allstacks, ActionConsumable`1 openDetailPageFor) in VSSurvivalMod\Systems\Handbook\Gui\GuiHandbookItemStackPage.cs:line 113 at Vintagestory.GameContent.ModSystemSurvivalHandbook.onComposePage(GuiHandbookPage page, GuiComposer detailViewGui, ElementBounds textBounds, ActionConsumable`1 openDetailPageFor) in VSSurvivalMod\Systems\Handbook\SurvivalHandbook.cs:line 128 at Vintagestory.GameContent.GuiDialogHandbook.initDetailGui() in VSSurvivalMod\Systems\Handbook\Gui\GuiDialogHandbook.cs:line 258 at Vintagestory.GameContent.GuiDialogHandbook.onLeftClickListElement(Int32 index) in VSSurvivalMod\Systems\Handbook\Gui\GuiDialogHandbook.cs:line 348 at Vintagestory.GameContent.GuiElementFlatList.OnMouseUpOnElement(ICoreClientAPI api, MouseEvent args) in VSSurvivalMod\Systems\Handbook\Gui\GuiElementFlatList.cs:line 95 at Vintagestory.GameContent.GuiElementFlatList.OnMouseUp(ICoreClientAPI api, MouseEvent args) in VSSurvivalMod\Systems\Handbook\Gui\GuiElementFlatList.cs:line 174 at Vintagestory.API.Client.GuiComposer.OnMouseUp(MouseEvent mouse) in VintagestoryApi\Client\UI\GuiComposer.cs:line 448 at Vintagestory.API.Client.GuiDialog.OnMouseUp(MouseEvent args) in VintagestoryApi\Client\UI\Dialog\GuiDialog.cs:line 593 at Vintagestory.Client.NoObf.GuiManager.OnMouseUp(MouseEvent args) in VintagestoryLib\Client\Systems\Gui\GuiManager.cs:line 423 at Vintagestory.Client.NoObf.ClientMain.UpdateMouseButtonState(EnumMouseButton button, Boolean down) in VintagestoryLib\Client\ClientMain.cs:line 1996 at Vintagestory.Client.HotkeyManager.TriggerHotKey(KeyEvent keyEventargs, IWorldAccessor world, IPlayer player, Boolean allowCharacterControls, Boolean isGlobal, Boolean fallBack, Boolean keyup) in VintagestoryLib\Client\HotkeyManager.cs:line 403 at Vintagestory.Client.HotkeyManager.TriggerHotKey(KeyEvent keyEventargs, IWorldAccessor world, IPlayer player, Boolean allowCharacterControls, Boolean keyUp) in VintagestoryLib\Client\HotkeyManager.cs:line 394 at Vintagestory.Client.HotkeyManager.OnMouseButton(ClientMain game, EnumMouseButton button, Int32 modifiers, Boolean buttonDown) in VintagestoryLib\Client\HotkeyManager.cs:line 574 at Vintagestory.Client.NoObf.ClientMain.OnMouseUpRaw(MouseEvent args) in VintagestoryLib\Client\ClientMain.cs:line 2026 at Vintagestory.Client.GuiScreenRunningGame.OnMouseUp(MouseEvent args) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 359 at Vintagestory.Client.ScreenManager.OnMouseUp(MouseEvent e) in VintagestoryLib\Client\ScreenManager.cs:line 921 at Vintagestory.Client.NoObf.ClientPlatformWindows.Mouse_ButtonUp(MouseButtonEventArgs e) in VintagestoryLib\Client\ClientPlatform\Input.cs:line 213 at OpenTK.Windowing.Desktop.NativeWindow.OnMouseUp(MouseButtonEventArgs e) at OpenTK.Windowing.Desktop.NativeWindow.MouseButtonCallback(Window* window, MouseButton button, InputAction action, KeyModifiers mods) --- End of stack trace from previous location --- at OpenTK.Windowing.Desktop.NativeWindow.RethrowCallbackExceptionsIfNeeded() at OpenTK.Windowing.Desktop.GameWindow.Run() at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 347 at Vintagestory.Client.ClientProgram.<>c__DisplayClass10_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 131 at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 95
  11. Upon random researching today, I discovered the Romans had beetle/bug farms they used to grow bugs and eat them. I looked at a skep for my baseline but I think to make this, I would need to build custom class and custom logic. I don't think I can build it using script code alone. Love to work with someone on this small project if anyone is willing to teach. I can read the code just fine using Rider. Not sure how Id add custom libs for the game and build a script to harness it. Also not 1005 sure how to write the logic yet for this bug farm idea. Anyone have anything similar? thought about termite mounds as well.
  12. update: I think I need to add this to the item/items correct? grindingPropsByType: { "*-sylvite": { groundStack: { type: "item", code: "powder-sylvite", stacksize: 2 } }, "*-borax": { groundStack: { type: "item", code: "powder-borax", stacksize: 2 } }, "*-sulfur": { groundStack: { type: "item", code: "powder-sulfur", stacksize: 2 } } }, Update: Ok I figured it out bu in case anyone else needs the info. Two step process: 1. you need the base ingredient/item 2. You need to create the "powder" version In your Base ingredient add the grinding props code to convert base item to grinding version Sample code: { code: "craftsmanship:corn", maxstacksize: 64, variantgroups: [ { code: "type", states: ["soaked", "dried" ] } ], attributes: { onDisplayTransform: { origin: { x: 0.5, y: 0, z: 0.5 }, scale: 0.58 }, displaycaseable: true, shelvable: true, nutritionPropsWhenInMeal: { satiety: 380, health: 0, foodcategory: "Vegetable" }, eatHealthEffectDurationSec: 0, eatHealthEffectTicks: 0 }, shapeByType: { "*-soaked": { "base": "game:item/resource/crushed/normal" }, "*-dried": { "base": "game:item/resource/crushed/normal" } }, texturesByType: { "*-soaked": { "quartz": { base: "block/grain/corn-{type}-pile" } }, "*-dried": { "quartz": { base: "block/grain/corn-{type}-pile" } } }, grindingPropsByType: { "*-dried": {"groundStack": { type: "item", code: "craftsmanship:powder-cornstarch" }} }, creativeinventory: { "general": ["*"], "items": ["*"] }, nutritionPropsByType: { "*-soaked": { saturation: 300, health: 0, foodcategory: "Vegetable" }, "*-dried": { saturation: 280, health: 0, foodcategory: "Vegetable" } }, transitionablePropsByType: { "*-soaked": [{ type: "Perish", freshHours: { avg: 66 }, transitionHours: { avg: 18 }, transitionedStack: { type: "item", code: "game:rot" }, transitionRatio: 4 }, { type: "Dry", freshHours: { avg: 0 }, transitionHours: { avg: 8 }, transitionedStack: { type: "item", code: "corn-dried" }, transitionRatio: 1 } ] }, guiTransform: { translation: { x: 4, y: 7, z: 0 }, rotation: { x: 154, y: -143, z: -11 }, origin: { x: 0.5, y: 0.11, z: 0.47 }, scale: 3.16 }, fpHandTransform: { translation: { x: 0, y: 0, z: 0 }, rotation: { x: 40, y: 91, z: 15 }, origin: { x: 0.8, y: 0.4, z: 0 }, scale: 1.47 }, groundTransform: { translation: { x: 0, y: 0, z: 0 }, rotation: { x: 180, y: 33, z: -180 }, origin: { x: 0.5, y: 0, z: 0.5 }, scale: 2.5 }, tpHandTransform: { translation: { x: 0, y: 0, z: 0 }, rotation: { x: 5, y: 41, z: -31 }, origin: { x: 0.16, y: 0.05, z: 0.08 }, scale: 0.44 } } Powder Code: { code: "craftsmanship:powder", variantgroups: [ { code: "type", states: ["cornstarch"] } ], behaviors: [ { name: "GroundStorable", properties: { layout: 'Messy12', collisionBox: { x1: 0, y1: 0, z1: 0, x2: 1, y2: 0.125, z2: 1 } } } ], heldTpIdleAnimation: "holdbothhands", heldRightReadyAnimation: "holdbothhands", shape: { base: "game:item/food/flour" }, "textureByType": { "*-cornstarch": { "base": "block/grain/cornstarch" }, "*": { "base": "game:item/resource/crushed/{type}" } }, creativeinventory: { "general": ["*"], "items": ["*"] }, nutritionPropsByType: { "*-cornstarch": { saturation: 120, health: 0, foodcategory: "Vegetable" } }, attributes: { inContainerTextureByType: { "powder-cornstarch": { base: "block/grain/cornstarch-cotainer" }, "*": { base: "game:item/resource/ungraded/{type}" } }, dissolveInWater: true, displaycaseable: true, shelvable: true, onDisplayTransform: { translation: { x: 0.05, y: 0, z: 0 }, origin: { x: 0.5, y: 0, z: 0.5 }, scale: 0.65 }, groundStorageTransform: { translation: { x: 0, y: -0.06, z: 0 }, scale: 0.89 }, handbook: { groupBy: ["powder-*"] }, nutritionPropsWhenInMeal: { satiety: 120, health: 0, foodcategory: "Vegetable" } }, maxstacksize: 64, materialDensity: 500, guiTransform: { translation: { x: 0, y: 0, z: 0 }, rotation: { x: 149, y: 12, z: 0 }, origin: { x: 0.41, y: -0.1, z: 0.8 }, scale: 2.54 }, fpHandTransform: { rotation: { x: 54, y: 95, z: -31 }, scale: 1.34 }, tpHandTransform: { translation: { x: -1.87, y: -1.25, z: -0.8 }, rotation: { x: 70, y: 11, z: -65 }, scale: 0.41 }, groundTransform: { translation: { x: 0, y: 0.2, z: 0 }, rotation: { x: -4, y: 8, z: 0 }, origin: { x: 0.5, y: 0.5, z: 0.5299 }, scale: 1.92 } }
  13. I'd like to make some new quern recipes but I cant find where add recipes for the tool? Likely a newb question but where or what file do I edit? Need it to make cornstarch. Thanks in advance
  14. That's a really cool mega windmill.
  15. Wow!!!!!
  16. @BlackMoonHowling try the Bzzzz words mod for getting bees. Its a life saver if you want bees. Its on my list of mods I always use.
  17. Looks pretty awesome!!!
  18. update: Very excited to share I have created a recipe system to grow mushrooms in a barrel. This is based on real low tech thing trending right now. Commonly being done with plastic barrels but wood barrels work just fine. So ... we can now grow mushrooms. however, it does take about 2 weeks per batch. Uses yest, wood and other pasteurized items to grow mushrooms. Tried to base the mushrooms that grow as close as i could to real life but Im not a plant expert. I also added sugarcane. Plan to add some mushroom candy as well to the game. An some mushroom based medicine. Expecting this mod to be pretty big
  19. Is there any samples of dry rate in a container or any existing base game items that have this attribute? Thanks in advance
  20. I found it in another recipe. In case anyone else needs it: "mushroom-fieldmushroom-normal": ["vegetable", "group7"], "mushroom-flyagaric-normal": ["vegetable", "group2"], "mushroom-almondmushroom-normal": ["vegetable", "group3"], "mushroom-beardedtooth-normal-north": ["vegetable", "group7"], "mushroom-bitterbolete-normal": ["vegetable", "group3"], "mushroom-blacktrumpet-normal": ["vegetable", "group3"], "mushroom-chanterelle-normal": ["vegetable", "group3"], "mushroom-chickenofthewoods-normal-north": ["vegetable", "group3"], "mushroom-commonmorel-normal": ["vegetable", "group3"], "mushroom-deathcap-normal": ["vegetable", "group7"], "mushroom-devilstooth-normal": ["vegetable", "group3"], "mushroom-devilbolete-normal": ["vegetable", "group3"], "mushroom-dryadsaddle-normal-north": ["vegetable", "group3"], "mushroom-earthball-normal": ["vegetable", "group7"], "mushroom-elfinsaddle-normal": ["vegetable", "group3"], "mushroom-golddropmilkcap-normal": ["vegetable", "group3"], "mushroom-greencrackedrussula-normal": ["vegetable", "group3"], "mushroom-indigomilkcap-normal": ["vegetable", "group3"], "mushroom-jackolantern-normal": ["vegetable", "group3"], "mushroom-kingbolete-normal": ["vegetable", "group3"], "mushroom-lobster-normal": ["vegetable", "group3"], "mushroom-orangeoakbolete-normal": ["vegetable", "group3"], "mushroom-paddystraw-normal": ["vegetable", "group7"], "mushroom-pinkoyster-normal-north": ["vegetable", "group7"], "mushroom-puffball-normal": ["vegetable", "group7"], "mushroom-redwinecap-normal": ["vegetable", "group3"], "mushroom-saffronmilkcap-normal": ["vegetable", "group3"], "mushroom-tinderhoof-normal-north": ["vegetable", "group7"], "mushroom-violetwebcap-normal": ["vegetable", "group3"], "mushroom-whiteoyster-normal-north": ["vegetable", "group7"], "mushroom-reishi-normal-north": ["vegetable", "group7"], "mushroom-funeralbell-normal-north": ["vegetable", "group7"], "mushroom-deerear-normal-north": ["vegetable", "group7"], "mushroom-livermushroom-normal-north": ["vegetable", "group7"], "mushroom-pinkbonnet-normal-north": ["vegetable", "group7"], "mushroom-shiitake-normal-north": ["vegetable", "group7"], "mushroom-witchhat-normal": ["vegetable", "group7"] }
  21. trying to make a barrel recipe for growing mushrooms. No issues with growing most of the mushrooms but this one in particular. I cant seem to get the name correct: "block-mushroom-whiteoyster-normal-*": "White oyster", Sample Recipe: [ { code: "mushroom-paddystraw-normal", sealHours: 252, ingredients: [ { type: "item", code: "game:limewaterportion", litres: 1, consumeLitres: 1 }, { type: "item", code: "craftsmanship:straw", quantity: 2 } ], output: { type: "block", code: "game:mushroom-paddystraw-normal", quantity: 3 } } ] This recipe works just fine but when I try to use: mushroom-whiteoyster-normal mushroom-whiteoyster-harvested mushroom-whiteoyster-normal-harvested I dont get any errors but it does not work. Based on Mushroom code: drops: [ { type: "block", code: "mushroom-{mushroom}-normal", quantity: { avg: 1, var: 0 } } ], The name should be: "mushroom-whiteoyster-normal" but that does not work. The whiteoyster mushroom is the most commonly grown via barrel so I really want to include it in the recipes. Base game Mushroom code: { code: "mushroom", class: "BlockMushroom", variantgroups: [ { loadFromProperties: "block/mushroom" }, { code: "state", states: ["normal", "harvested"] } ], skipVariants: [ "mushroom-beardedtooth-*", "mushroom-whiteoyster-*", "mushroom-pinkoyster-*", "mushroom-dryadsaddle-*", "mushroom-tinderhoof-*", "mushroom-chickenofthewoods-*", "mushroom-reishi-*", "mushroom-funeralbell-*", "mushroom-livermushroom-*", "mushroom-pinkbonnet-*", "mushroom-shiitake-*", "mushroom-deerear-*" ], attributes: { mushroomProps: { dieWhenTempBelow: 0, dieAfterFruiting: true }, forageStatAffected: true, nutritionPropsWhenInMeal: { satiety: 120, foodcategory: "Vegetable", healthByType: { "*-flyagaric-*": -6.5, "*-earthball-*": -8, "*-deathcap-*": -50, "*-elfinsaddle-*": -7, "*-jackolantern-*": -6, "*-devilbolete-*": -10, "*-bitterbolete-*": -1, "*-devilstooth-*": -2, "*-golddropmilkcap-*": -2.5, "*": 0 } }, eatHealthEffectDurationSec: 10, eatHealthEffectTicks: 10, plantContainable: { smallContainer: { randomRotate: false, shape: { base: "block/plant/mushroom/{mushroom}/flowerpot/normal*" } }, largeContainer: { randomRotate: false, shape: { base: "block/plant/mushroom/{mushroom}/planter/normal*" } } }, displayedShape: { base: "item/food/mushroom/{mushroom}"}, inTrapTransform: { "small": { translation: { x: -0.05, y: -0.2, z: 0.26 }, rotation: { x: 70, y: 0, z: 0 } }, "large": { translation: { x: -0.25, y: 0.2, z: 0.36 }, rotation: { x: 101, y: 0, z: 0 } } } }, nutritionPropsByType: { "*-flyagaric-*": { saturation: 80, health: -6.5, foodcategory: "Vegetable" }, "*-earthball-*": { saturation: 80, health: -8, foodcategory: "Vegetable" }, "*-deathcap-*": { saturation: 80, health: -50, foodcategory: "Vegetable" }, "*-elfinsaddle-*": { saturation: 80, health: -7, foodcategory: "Vegetable" }, "*-jackolantern-*": { saturation: 80, health: -6, foodcategory: "Vegetable" }, "*-devilbolete-*": { saturation: 80, health: -10, foodcategory: "Vegetable" }, "*-bitterbolete-*": { saturation: 80, health: -1, foodcategory: "Vegetable" }, "*-devilstooth-*": { saturation: 80, health: -2, foodcategory: "Vegetable" }, "*-golddropmilkcap-*": { saturation: 80, health: -2.5, foodcategory: "Vegetable" }, "*": { saturation: 80, health: 0, foodcategory: "Vegetable" }, }, creativeinventory: { "general": ["*-normal"], "flora": ["*-normal"] }, drawtype: "JSON", shape: { base: "block/plant/mushroom/{mushroom}/{state}*" }, shapeInventory: { base: "item/food/mushroom/{mushroom}" }, doNotRenderAtLod2: true, randomDrawOffset: false, blockmaterial: "Plant", randomizeRotations: true, sideopaqueByType: { "*-snow": { all: false, down: true }, "*": { all: false } }, sidesolid: { all: false }, replaceable: 3000, lightAbsorption: 0, resistance: 1.5, collisionbox: null, selectionBox: { x1: 0.125, y1: 0, z1: 0.125, x2: 0.875, y2: 0.25, z2: 0.875 }, guiTransformByType: { "*": { rotation: { x: -22, y: 107, z: 0 }, origin: { x: 0.5, y: 0.2, z: 0.5 }, scale: 3 } }, groundTransform: { origin: { x: 0.5, y: 0, z: 0.5 }, scale: 5 }, tpHandTransform: { translation: { x: -0.93, y: -0.17, z: -0.8 }, rotation: { x: 15, y: -10, z: -114 }, origin: { x: 0.5, y: 0.1, z: 0.5 }, scale: 0.58 }, sounds: { place: "block/plant", break: "block/plant", hit: "block/plant", }, rainPermeable: true, transitionableProps: [{ type: "Perish", freshHours: { avg: 432 }, transitionHours: { avg: 72 }, transitionedStack: { type: "item", code: "rot" }, transitionRatio: 1 }], materialDensity: 200, drops: [ { type: "block", code: "mushroom-{mushroom}-normal", quantity: { avg: 1, var: 0 } } ], }
  22. Sorry I quickly found it after posting: line: stackingModel: 'block/wood/bamboopile',
  23. I have no issues with my cut sugar cane other than placing on ground its not rendering. Item: { code: "cutcane", maxstacksize: 32, behaviors: [{ name: "GroundStorable", properties: { layout: 'Stacking', placeRemoveSound: "game:block/planks", stackingModel: 'block/wood/bamboopile', modelItemsToStackSizeRatio: 0.5, upSolid: true, stackingCapacity: 50, transferQuantity: 2, bulkTransferQuantity: 10, collisionBox: { x1: 0, y1: 0, z1: 0, x2: 1, y2: 0.2, z2: 1 }, cbScaleYByLayer: 0.1, burnHoursPerItem: 0.1 } }], attributes: { firepitConstructable: true }, shape: { base: "resource/cane" }, textures: { "stem": { base: "block/sugarcane/stem-green" } }, creativeinventory: { "general": ["*"], "items": ["*"] }, guiTransform: { translation: { x: 3, y: -8, z: 0 }, rotation: { x: 149, y: 59, z: 0 }, origin: { x: 0.5, y: 0.43, z: 0.5 }, scale: 1.77 }, combustibleProps: { burnTemperature: 700, burnDuration: 10, }, materialDensity: 200, tpHandTransform: { translation: { x: -1.7, y: -1.4, z: -1.5 } }, groundTransform: { translation: { x: 0, y: 0.3, z: 0 }, rotation: { x: 0, y: 0, z: 0 }, origin: { x: 0.5, y: 0.5, z: 0.53 }, scale: 4 } } model: { "editor": { "collapsedPaths": "Root/bandN/toothR1,Root/bandN/toothL1", "allAngles": false, "entityTextureMode": false }, "textureWidth": 16, "textureHeight": 16, "textureSizes": { }, "textures": { "stem": "block/sugarcane/stem-green" }, "elements": [ { "name": "StalkMidNW", "from": [ 4.5, -19.5, 4.5 ], "to": [ 7.5, -5.5, 7.5 ], "rotationOrigin": [ 0.0, -4.5, -2.0 ], "rotationZ": 90.0, "faces": { "north": { "texture": "#stem", "uv": [ 3.0, 0.0, 6.0, 14.0 ] }, "east": { "texture": "#stem", "uv": [ 1.0, 0.0, 4.0, 14.0 ] }, "south": { "texture": "#stem", "uv": [ 5.0, 0.0, 8.0, 14.0 ] }, "west": { "texture": "#stem", "uv": [ 1.0, 0.0, 4.0, 14.0 ] }, "up": { "texture": "#stem", "uv": [ 8.0, 11.0, 11.0, 14.0 ] }, "down": { "texture": "#stem", "uv": [ 8.0, 11.0, 11.0, 14.0 ] } } }, { "name": "StalkMidNE", "from": [ 7.5, -17.5, 6.5 ], "to": [ 10.5, -4.5, 9.5 ], "rotationOrigin": [ 0.0, -4.5, 1.0 ], "rotationZ": 90.0, "faces": { "north": { "texture": "#stem", "uv": [ 0.0, 0.0, 3.0, 13.0 ] }, "east": { "texture": "#stem", "uv": [ 1.0, 0.0, 4.0, 13.0 ] }, "south": { "texture": "#stem", "uv": [ 2.0, 0.0, 5.0, 13.0 ] }, "west": { "texture": "#stem", "uv": [ 2.0, 0.0, 5.0, 13.0 ] }, "up": { "texture": "#stem", "uv": [ 8.0, 11.0, 11.0, 14.0 ] }, "down": { "texture": "#stem", "uv": [ 8.0, 11.0, 11.0, 14.0 ] } } }, { "name": "StalkMidSE", "from": [ 6.5, -22.5, 7.9 ], "to": [ 9.5, -7.5, 10.9 ], "rotationOrigin": [ 0.0, -6.5, -0.6 ], "rotationZ": 90.0, "faces": { "north": { "texture": "#stem", "uv": [ 4.0, 0.0, 7.0, 15.0 ] }, "east": { "texture": "#stem", "uv": [ 4.0, 0.0, 7.0, 15.0 ] }, "south": { "texture": "#stem", "uv": [ 5.0, 0.0, 8.0, 15.0 ] }, "west": { "texture": "#stem", "uv": [ 1.0, 0.0, 4.0, 15.0 ] }, "up": { "texture": "#stem", "uv": [ 8.0, 11.0, 11.0, 14.0 ] }, "down": { "texture": "#stem", "uv": [ 8.0, 11.0, 11.0, 14.0 ] } } } ]} I copied the bamboo model basically with minor adjustments. I've tried adjusting in tfedit but it never shows up. Not sure what I need to adjust here?
  24. Working on a new mod called "Craftsmanship" that will include most of my previous mods stuff (updated) and a bunch of new stuff. I will include vendors to sell some of the items: New Items list currently: pasteurized - various items Used for making different kinds of mushrooms in a barrel (its a real thing ... apparently) New Soups New Healing Items New Tribal Weapons & Items Wheat Corn Cannabis Converted into Hemp Medical uses Paper Clothing Oil Candles more Wicker Items & baskets Planned: New Vendors/NPC More Leather Items More Weapons More Armor More Food More Pottery More Lore Use the Lens More Metal Items More Crops Etc
  25. I found the answer. I knew it was in the Lang file but was not sure what I was doing wrong. The item is not a "item" or a "block". Format: "mealrecipe-name-{Modname}{codename}": "name here", Example: "mealrecipe-name-craftsmanship:heathermeatystew": "Heather meaty stew",
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.