lots of changes, I lsot track

This commit is contained in:
2025-05-24 19:19:55 +02:00
parent b092ef3170
commit 3fab0664bc
58 changed files with 1235 additions and 1196 deletions

View File

@ -6,11 +6,11 @@
"create",
"thermal",
"alltheores",
"immersiveengineering",
"mekanism",
"croptopia",
"delightful",
"caupona"
"caupona",
"gobber2",
"powder_power"
],
"stoneStrata": [
"stone",
@ -100,6 +100,14 @@
"tungsten",
"uranium",
"zinc",
"gobber",
"gobber_nether",
"gobber_end",
"redium",
"gemium",
"lapium",
"trilium",
"quadrilium",
"ender_pearl",
@ -172,7 +180,11 @@
"forge:seeds/tomato": ["candlelight:tomato_seeds"],
"forge:seeds/lettuce": ["candlelight:lettuce_seeds"],
"forge:cardboard": ["dustrial_decor:cardboard", "create:cardboard"],
"thermal:crafting/dies": ["ae2:silicon_press", "ae2:engineering_processor_press", "ae2:calculation_processor_press", "ae2:logic_processor_press"]
"thermal:crafting/dies": ["ae2:silicon_press", "ae2:engineering_processor_press", "ae2:calculation_processor_press", "ae2:logic_processor_press"],
"forge:ingots/andesite_alloy": ["create:andesite_alloy"],
"forge:rods/andesite_alloy": ["create:shaft"],
"forge:gears/andesite_alloy": ["create:cogwheel"]
},
"tagOwnerships": {
"forge:crops/bell_pepper": ["forge:crops/bellpepper"],

536
config/create-server.toml Normal file
View File

@ -0,0 +1,536 @@
#.
#The Backbone of Create
[infrastructure]
#.
#[in Ticks]
#The amount of time a server waits before sending out tickrate synchronization packets.
#These packets help animations to be more accurate when tps is below 20.
#Range: > 5
tickrateSyncTimer = 20
#.
#Packmakers' control panel for internal recipe compat
[recipes]
#.
#.
#Allow the Mechanical Press to process entire stacks at a time.
bulkPressing = false
#.
#Allow the Mechanical Saw to process entire stacks at a time.
bulkCutting = false
#.
#Allow supported potions to be brewed by a Mechanical Mixer + Basin.
allowBrewingInMixer = true
#.
#Allow any shapeless crafting recipes to be processed by a Mechanical Mixer + Basin.
allowShapelessInMixer = false
#.
#Allow any single-ingredient 2x2 or 3x3 crafting recipes to be processed by a Mechanical Press + Basin.
allowShapedSquareInPress = true
#.
#Allow any standard crafting recipes to be processed by Mechanical Crafters.
allowRegularCraftingInCrafter = false
#.
#The Maximum amount of ingredients that can be used to craft Firework Rockets using Mechanical Crafters.
#Range: > 1
maxFireworkIngredientsInCrafter = 9
#.
#Allow any stonecutting recipes to be processed by a Mechanical Saw.
allowStonecuttingOnSaw = true
#.
#Allow Spouts to interact with Casting Tables and Basins from Tinkers' Construct.
allowCastingBySpout = true
#.
#Display vanilla Log-stripping interactions in JEI.
displayLogStrippingRecipes = true
#.
#The amount of Light sources destroyed before Chromatic Compound turns into Refined Radiance.
#Range: > 1
lightSourceCountForRefinedRadiance = 10
#.
#Allow the standard in-world Refined Radiance recipes.
enableRefinedRadianceRecipe = true
#.
#Allow the standard in-world Shadow Steel recipe.
enableShadowSteelRecipe = true
#.
#Parameters and abilities of Create's kinetic mechanisms
[kinetics]
#.
#.
#Disable the Stress mechanic altogether.
disableStress = false
#.
#Maximum length in blocks of mechanical belts.
#Range: > 5
maxBeltLength = 20
#.
#Maximum length in blocks of chain conveyor connections.
#Range: > 5
maxChainConveyorLength = 32
#.
#Maximum amount of connections each chain conveyor can have.
#Range: > 1
maxChainConveyorConnections = 4
#.
#Damage dealt by active Crushing Wheels.
#Range: > 0
crushingDamage = 4
#.
#[in Revolutions per Minute]
#Maximum allowed rotation speed for any Kinetic Block.
#Range: > 64
maxRotationSpeed = 256
#.
#Select what mobs should ignore Deployers when attacked by them.
#Allowed Values: ALL, CREEPERS, NONE
ignoreDeployerAttacks = "CREEPERS"
#.
#Game ticks between Kinetic Blocks checking whether their source is still valid.
#Range: > 5
kineticValidationFrequency = 60
#.
#multiplier used for calculating exhaustion from speed when a crank is turned.
#Range: 0.0 ~ 1.0
crankHungerMultiplier = 0.009999999776482582
#.
#Amount of sail-type blocks required for a windmill to assemble successfully.
#Range: > 0
minimumWindmillSails = 8
#.
#Number of sail-type blocks required to increase windmill speed by 1RPM.
#Range: > 1
windmillSailsPerRPM = 8
#.
#Max Distance in blocks a Weighted Ejector can throw
#Range: > 0
maxEjectorDistance = 32
#.
#Time in ticks until the next item launched by an ejector scans blocks for potential collisions
#Range: > 10
ejectorScanInterval = 120
#.
#Encased Fan
[kinetics.encasedFan]
#.
#Maximum distance in blocks Fans can push entities.
#Range: > 5
fanPushDistance = 20
#.
#Maximum distance in blocks from where Fans can pull entities.
#Range: > 5
fanPullDistance = 20
#.
#Game ticks between Fans checking for anything blocking their air flow.
#Range: > 10
fanBlockCheckRate = 30
#.
#[in Revolutions per Minute]
#Rotation speed at which the maximum stats of fans are reached.
#Range: > 64
fanRotationArgmax = 256
#.
#Game ticks required for a Fan-based processing recipe to take effect.
#Range: > 0
fanProcessingTime = 150
#.
#Moving Contraptions
[kinetics.contraptions]
#.
#Maximum amount of blocks in a structure movable by Pistons, Bearings or other means.
#Range: > 1
maxBlocksMoved = 2048
#.
#Maximum value of a chassis attachment range.
#Range: > 1
maxChassisRange = 16
#.
#Maximum amount of extension poles behind a Mechanical Piston.
#Range: > 1
maxPistonPoles = 64
#.
#Max length of rope available off a Rope Pulley.
#Range: > 1
maxRopeLength = 384
#.
#Maximum allowed distance of two coupled minecarts.
#Range: > 1
maxCartCouplingLength = 32
#.
#Maximum depth of blocks filled in using a Mechanical Roller.
#Range: > 1
rollerFillDepth = 12
#.
#Whether minecart contraptions can be picked up in survival mode.
survivalContraptionPickup = true
#.
#Configure how Spawner blocks can be moved by contraptions.
#Allowed Values: MOVABLE, NO_PICKUP, UNMOVABLE
movableSpawners = "NO_PICKUP"
#.
#Configure how Budding Amethyst can be moved by contraptions.
#Allowed Values: MOVABLE, NO_PICKUP, UNMOVABLE
amethystMovement = "NO_PICKUP"
#.
#Configure how Obsidian blocks can be moved by contraptions.
#Allowed Values: MOVABLE, NO_PICKUP, UNMOVABLE
movableObsidian = "UNMOVABLE"
#.
#Configure how Reinforced Deepslate blocks can be moved by contraptions.
#Allowed Values: MOVABLE, NO_PICKUP, UNMOVABLE
movableReinforcedDeepslate = "UNMOVABLE"
#.
#Whether items mined or harvested by contraptions should be placed in their mounted storage.
moveItemsToStorage = true
#.
#Whether harvesters should break crops that aren't fully grown.
harvestPartiallyGrown = false
#.
#Whether harvesters should replant crops after harvesting.
harvesterReplants = true
#.
#Whether minecart contraptions can be placed into container items.
minecartContraptionInContainers = false
#.
#Whether stabilised bearings create a separated entity even on non-rotating contraptions.
#[Technical]
stabiliseStableContraptions = false
#.
#Whether the players hitbox should be expanded to the size of the contraption hitbox.
#[Technical]
syncPlayerPickupHitboxWithContraptionHitbox = false
#.
#Configure speed/capacity levels for requirements and indicators.
[kinetics.stats]
#.
#[in Revolutions per Minute]
#Minimum speed of rotation to be considered 'medium'
#Range: 0.0 ~ 4096.0
mediumSpeed = 30.0
#.
#[in Revolutions per Minute]
#Minimum speed of rotation to be considered 'fast'
#Range: 0.0 ~ 65535.0
fastSpeed = 100.0
#.
#[in Stress Units]
#Minimum stress impact to be considered 'medium'
#Range: 0.0 ~ 4096.0
mediumStressImpact = 4.0
#.
#[in Stress Units]
#Minimum stress impact to be considered 'high'
#Range: 0.0 ~ 65535.0
highStressImpact = 8.0
#.
#[in Stress Units]
#Minimum added Capacity by sources to be considered 'medium'
#Range: 0.0 ~ 4096.0
mediumCapacity = 256.0
#.
#[in Stress Units]
#Minimum added Capacity by sources to be considered 'high'
#Range: 0.0 ~ 65535.0
highCapacity = 1024.0
[kinetics.stressValues]
#.
#Fine tune the kinetic stats of individual components
[kinetics.stressValues.v2]
#.
#.
#[in Stress Units]
#Configure the individual stress impact of mechanical blocks. Note that this cost is doubled for every speed increase it receives.
[kinetics.stressValues.v2.impact]
brass_encased_shaft = 0.0
turntable = 4.0
clutch = 0.0
mechanical_mixer = 4.0
gearbox = 0.0
mechanical_bearing = 4.0
copper_backtank = 4.0
hose_pulley = 4.0
display_board = 0.0
crushing_wheel = 8.0
adjustable_chain_gearshift = 0.0
millstone = 4.0
rotation_speed_controller = 0.0
sticky_mechanical_piston = 4.0
mechanical_crafter = 2.0
deployer = 4.0
elevator_pulley = 4.0
stressometer = 0.0
cogwheel = 0.0
encased_chain_drive = 0.0
belt = 0.0
brass_encased_large_cogwheel = 0.0
weighted_ejector = 2.0
chain_conveyor = 1.0
mechanical_saw = 4.0
flywheel = 0.0
mechanical_piston = 4.0
speedometer = 0.0
brass_encased_cogwheel = 0.0
clockwork_bearing = 4.0
mechanical_press = 8.0
mechanical_drill = 4.0
andesite_encased_shaft = 0.0
netherite_backtank = 4.0
mechanical_arm = 2.0
sequenced_gearshift = 0.0
andesite_encased_large_cogwheel = 0.0
shaft = 0.0
cuckoo_clock = 1.0
gearshift = 0.0
rope_pulley = 4.0
andesite_encased_cogwheel = 0.0
large_cogwheel = 0.0
encased_fan = 2.0
mysterious_cuckoo_clock = 1.0
gantry_shaft = 0.0
mechanical_pump = 4.0
#.
#[in Stress Units]
#Configure how much stress a source can accommodate for.
[kinetics.stressValues.v2.capacity]
steam_engine = 1024.0
water_wheel = 32.0
copper_valve_handle = 8.0
hand_crank = 8.0
creative_motor = 16384.0
large_water_wheel = 128.0
windmill_bearing = 512.0
#.
#Create's liquid manipulation tools
[fluids]
#.
#.
#[in Buckets]
#The amount of liquid a tank can hold per block.
#Range: > 1
fluidTankCapacity = 8
#.
#[in Blocks]
#The maximum height a fluid tank can reach.
#Range: > 1
fluidTankMaxHeight = 32
#.
#[in Blocks]
#The maximum distance a mechanical pump can push or pull liquids on either side.
#Range: > 1
mechanicalPumpRange = 16
#.
#[in Blocks]
#The maximum distance a hose pulley can draw fluid blocks from.
#Range: > 1
hosePulleyRange = 128
#.
#[in Blocks]
#[-1 to disable this behaviour]
#The minimum amount of fluid blocks the hose pulley needs to find before deeming it an infinite source.
#Range: > -1
hosePulleyBlockThreshold = 10000
#.
#Whether hose pulleys should continue filling up above-threshold sources.
fillInfinite = false
#.
#Configure which fluids can be drained infinitely.
#Allowed Values: ALLOW_ALL, DENY_ALL, ALLOW_BY_TAG, DENY_BY_TAG
bottomlessFluidMode = "ALLOW_BY_TAG"
#.
#Whether hose pulleys should be allowed to place fluid sources.
fluidFillPlaceFluidSourceBlocks = true
#.
#Whether open-ended pipes should be allowed to place fluid sources.
pipesPlaceFluidSourceBlocks = true
#.
#Tweaks for logistical components
[logistics]
#.
#.
#The amount of ticks a funnel waits between item transferrals, when it is not re-activated by redstone.
#Range: > 1
defaultExtractionTimer = 8
#.
#The amount of ticks a portable storage interface waits for transfers until letting contraptions move along.
#Range: > 1
psiTimeout = 60
#.
#Maximum distance in blocks a Mechanical Arm can reach across.
#Range: > 1
mechanicalArmRange = 5
#.
#Maximum distance in blocks a Package Port can be placed at from its target.
#Range: > 1
packagePortRange = 5
#.
#Maximum possible range in blocks of redstone link connections.
#Range: > 1
linkRange = 256
#.
#Maximum possible distance in blocks between display links and their target.
#Range: > 1
displayLinkRange = 64
#.
#The total amount of stacks a vault can hold per block in size.
#Range: 1 ~ 2048
vaultCapacity = 20
#.
#The amount of packages a chain conveyor can carry at a time.
#Range: > 1
chainConveyorCapacity = 20
#.
#The amount of ticks a brass tunnel waits between distributions.
#Range: 1 ~ 10
brassTunnelTimer = 10
#.
#The amount of ticks a factory gauge waits between requests.
#Range: > 5
factoryGaugeTimer = 100
#.
#Whether hostile mobs walking near a seat will start riding it.
seatHostileMobs = true
#.
#Everything related to Schematic tools
[schematics]
#.
#.
#Whether placing a Schematic directly in Creative Mode should replace world blocks with Air
creativePrintIncludesAir = false
#.
#The amount of Schematics a player can upload until previous ones are overwritten.
#Range: > 1
maxSchematics = 10
#.
#[in KiloBytes]
#The maximum allowed file size of uploaded Schematics.
#Range: > 16
maxTotalSchematicSize = 256
#.
#[in Bytes]
#The maximum packet size uploaded Schematics are split into.
#Range: 256 ~ 32767
maxSchematicPacketSize = 1024
#.
#Amount of game ticks without new packets arriving until an active schematic upload process is discarded.
#Range: > 100
schematicIdleTimeout = 600
#.
#Schematicannon
[schematics.schematicannon]
#.
#Amount of game ticks between shots of the cannon. Higher => Slower
#Range: > 1
schematicannonDelay = 10
#.
#Amount of blocks a Schematicannon can print per Gunpowder item provided.
#Range: > 1
schematicannonShotsPerGunpowder = 400
#.
#Equipment and gadgets added by Create
[equipment]
#.
#.
#The Maximum Distance to an active mirror for the symmetry wand to trigger.
#Range: > 10
maxSymmetryWandRange = 50
#.
#The Maximum Distance a Block placed by Create's placement assist will have to its interaction point.
#Range: > 3
placementAssistRange = 12
#.
#The Maximum Distance at which a Toolbox can interact with Players' Inventories.
#Range: > 1
toolboxRange = 10
#.
#The Maximum volume of Air that can be stored in a backtank = Seconds of underwater breathing
#Range: > 1
airInBacktank = 900
#.
#The volume of Air added by each level of the backtanks Capacity Enchantment
#Range: > 1
enchantedBacktankCapacity = 300
#.
#Amount of free Extendo Grip actions provided by one filled Copper Backtank. Set to 0 makes Extendo Grips unbreakable
#Range: > 0
maxExtendoGripActions = 1000
#.
#Amount of free Potato Cannon shots provided by one filled Copper Backtank. Set to 0 makes Potato Cannons unbreakable
#Range: > 0
maxPotatoCannonShots = 200
#.
#Create's builtin Railway systems
[trains]
#.
#.
#Whether moving Trains can hurt colliding mobs and players.
trainsCauseDamage = true
#.
#Maximum length of track that can be placed as one batch or turn.
#Range: 16 ~ 128
maxTrackPlacementLength = 32
#.
#Maximum length of a Train Stations' assembly track.
#Range: > 5
maxAssemblyLength = 128
#.
#Maximum amount of bogeys assembled as a single Train.
#Range: > 1
maxBogeyCount = 20
#.
#Relative speed of a manually controlled Train compared to a Scheduled one.
#Range: 0.0 ~ 3.4028234663852886E38
manualTrainSpeedModifier = 0.75
#.
#Standard Trains
[trains.trainStats]
#.
#[in Blocks/Second]
#The top speed of any assembled Train.
#Range: 0.0 ~ 3.4028234663852886E38
trainTopSpeed = 28.0
#.
#[in Blocks/Second]
#The top speed of Trains during a turn.
#Range: 0.0 ~ 3.4028234663852886E38
trainTurningTopSpeed = 14.0
#.
#[in Blocks/Second²]
#The acceleration of any assembled Train.
#Range: 0.0 ~ 3.4028234663852886E38
trainAcceleration = 3.0
#.
#Powered Trains
[trains.poweredTrainStats]
#.
#[in Blocks/Second]
#The top speed of powered Trains.
#Range: 0.0 ~ 3.4028234663852886E38
poweredTrainTopSpeed = 40.0
#.
#[in Blocks/Second]
#The top speed of powered Trains during a turn.
#Range: 0.0 ~ 3.4028234663852886E38
poweredTrainTurningTopSpeed = 20.0
#.
#[in Blocks/Second²]
#The acceleration of powered Trains.
#Range: 0.0 ~ 3.4028234663852886E38
poweredTrainAcceleration = 3.0

View File

@ -1,77 +0,0 @@
[Damage-Module]
#The purpose of the damage module is to remove the invulnerability ticks after an entity is damaged to better suit gameplay where entities are going to be ignoring too much damage if left unchecked. Disabling will nullify every feature listed under this module.
damageModuleEnabled = true
#Some entities or damage sources rely on damage ticks to time their attacks. In these cases, we want to let them initiate i-frames.
#entityBlacklist default: ["minecraft:slime","minecraft:ender_dragon","minecraft:magma_cube","irons_spellbooks:wall_of_fire","irons_spellbooks:void_tentacle"]
entityBlacklist = ["minecraft:slime", "minecraft:ender_dragon", "minecraft:magma_cube", "irons_spellbooks:wall_of_fire"]
#damagesourceBlacklist default: ["lava","inFire","cactus","inWall","hotFloor","lightningBolt","sweetBerryBush","outOfWorld","drown"]
damagesourceBlacklist = ["lava", "inFire", "cactus", "inWall", "hotFloor", "lightningBolt", "sweetBerryBush", "outOfWorld", "drown"]
#Invulnerability Tick (I-Frame) count. Default: 0 (Vanilla's is 20, one second)
invulnerabilityTickCount = 0
#Specialized handling for player damage ticks. "ALL" means there is no special handling, "ONLY_LIVING" means only living attacks ignore player i-frames (may help with unforeseen damage like potions), and "NONE" means player's damage ticks are unaffected by the damage module.
#Allowed Values: ALL, ONLY_LIVING, NONE
playerDamageMode = "ALL"
#In order to prevent spam attacks, a minimum threshold of attack strength can be set before an attack can deal damage. Default: 0.75
minimumAttackStrength = 0.75
#Whether or not a player is allowed to even swing if the threshold is not met. Default: true
allowNonFullStrengthAttacks = true
#Global multiplier to all knockback. Default: 1.0
globalKnockbackMultiplier = 1.0
[Durability-Module]
#The purpose of the durability module is to rework how durability damage is applied to better emulate an rpg setting. Disabling will nullify every feature listed under this module.
durabilityModuleEnabled = false
#What type of gear should take vanilla durability damage. Default: NONE
#Allowed Values: ALL, TOOLS, ARMOR, NONE
vanillDurabilityGearType = "NONE"
#What type of gear is damaged upon death. Default: ALL
#Allowed Values: ALL, TOOLS, ARMOR, NONE
deathGearType = "ALL"
#The percent of durability damage equipment should take on player dying. Set to 0 to disable. Default: 0.15 (15%)
durabilityLostOnDeath = 0.15
#An additional constant amount of damage taken on death. This makes items with a high max durability degrade relatively slower. Set to 0 to disable. Default: 25
additionalDurabilityLostOnDeath = 25
[XP-Module]
#The purpose of the xp module is to rework how experience is dropped on a player's death by creating a souls-like xp catalyst instead. Disabling will nullify every feature listed under this module.
xpModuleEnabled = true
#Whether or not players will drop xp despite keepInventory gamerule. Default: true
ignoreKeepInventory = true
#Whether or not the player who dropped the xp is the only player allow to collect the xp. Default: true
onlyAllowOwnerPickup = true
#Multiplier to experience dropped by slain entities. Default: 1.0
mobDropXpMultiplier = 1.0
#Multiplier to experience dropped by blocks broken. Default: 1.0
blockDropXpMultiplier = 1.0
[Enchantment-Module]
#The purpose of the enchantment module is to mystify enchantments and add an additional challenge to game by obscuring the description of enchanted and cursed items found through looting. Disabling will nullify every feature listed under this module.
enchantmentModuleEnabled = true
#Whether or not armor should be automatically identified when equipped. Default: true
identifyOnEquip = true
#Whether or not unidentified items can be identified by interacting with an enchanting table. Default: true
identifyOnEnchantingTable = true
#Whether or not the enchanting table's functionality should be disabled, making looting or trading the only way to get enchanted items. Default: false
disableEnchantingTable = false
[Hunger-Module]
#The hunger module removes hunger and makes food to directly heal in order to to remove the tedious task of maintaining hunger, as well as rebalance health management during combat and exploration. Disabling will nullify every feature listed under this module.
hungerModuleEnable = false
#Disable Hunger. Without this, most of the hunger module features and config are nullified, but if you want to adjust stack sizes or potion mechanics without disabling hunger, you can do so here.
disableHunger = true
#The multiplier of a food's hunger value to health regained by eating it. Default: 0.5 (50%)
foodToHealthModifier = 0.5
#The amount of time, in ticks, between players naturally regenerating 1 hp. 1 second is 20 ticks. Turn off the naturalRegeneration gamerule to disable. Default: 250.
naturalRegenerationTickRate = 250
#Changes the stack size of potions. Set to 0 to disable. Requires game restart. Default: 4
potionStackSize = 4
#Limit the stack size of every food item. Set to 0 to disable. Requires game restart. Default: 0
foodStackSize = 0
#A Blacklist for limited food stack size, if enabled. Useful for mob drops or other edible items that are not meant as food. Default: ["minecraft:rotten_flesh","minecraft:spider_eye","minecraft:potato","minecraft:carrot","farmersdelight:onion","farmersdelight:tomato","farmersdelight:cabbage"]
foodStackSizeBlacklist = ["minecraft:rotten_flesh", "minecraft:spider_eye", "minecraft:potato", "minecraft:carrot", "farmersdelight:onion", "farmersdelight:tomato", "farmersdelight:cabbage"]
#Item Cooldown in seconds when throwing a splash potion. Default: 0.5
splashPotionCooldown = 0.5
#Item Cooldown in seconds when throwing a lingering potion. Default: 1.5
lingeringPotionCooldown = 1.5

View File

@ -1,12 +0,0 @@
["Version Configuration"]
# Define a version here. On world load the mod will look up the serverconfig version and reset all files that specified up to the newest version.
# Example: ["1=minecraft","2=forge"] will reset minecraft and forge config on first load, but will only reset forge if the world has been loaded before with only version 1 defined
versions = [""]
["File Deleter"]
# This is intended for deleting files for pack updates. This is a last resort! Replace with empty files instead when possible. The file will be deleted every launch if it exists! Specify the path to the file. Comma Separated List. Example: scripts/badscript.zs
files = [""]
# By default Folders are only deleted if they are empty. Set to true to change that.
deleteFoldersWithContent = false

View File

@ -1,208 +0,0 @@
[item]
#Blueprint and template settings
[item.blueprint]
#Allowed blueprint types. Valid values are: BOTH, BLUEPRINT, and TEMPLATE
#Allowed Values: BOTH, BLUEPRINT, TEMPLATE
typesAllowed = "BOTH"
#When joining a new world, should players be given a blueprint package?
#The blueprint package gives some blueprints when used (right-click).
#To change what is given, override the starter_blueprints loot table.
spawnWithStarterBlueprints = false
#Repair kit configs.
[item.repairKits]
#Capacity is the number of materials that can be stored (all types combined)
#Setting to zero would make the repair kit unusable.
[item.repairKits.capacity]
#Range: > 0
very_crude = 8
#Range: > 0
crude = 16
#Range: > 0
sturdy = 32
#Range: > 0
crimson = 48
#Range: > 0
azure = 64
#Efficiency is the percentage of the repair value used. Higher values mean less materials used.
#Setting to zero would make the repair kit unusable.
[item.repairKits.efficiency]
#Range: 0.0 ~ 10.0
very_crude = 0.30000001192092896
#Range: 0.0 ~ 10.0
crude = 0.3499999940395355
#Range: 0.0 ~ 10.0
sturdy = 0.4000000059604645
#Range: 0.0 ~ 10.0
crimson = 0.44999998807907104
#Range: 0.0 ~ 10.0
azure = 0.5
#Repair efficiency with loose materials if no repair kit is used.
#Setting a value greater than zero makes repair kits optional.
#Range: 0.0 ~ 10.0
missing = 0.0
[item.netherwood_charcoal]
#Burn time of netherwood charcoal, in ticks. Vanilla charcoal is 1600.
#Range: > 0
burn_time = 2400
#Settings for nerfed items.
#You can give items reduced durability to encourage use of Silent Gear tools.
#Changes require a restart!
[nerfedItems]
#Enable this feature. If false, the other settings in this category are ignored.
enabled = false
#Multiplies max durability by this value. If the result would be zero, a value of 1 is assigned.
#Range: 0.0 ~ 1.0
durabilityMultiplier = 0.05
#Multiplies harvest speed by this value.
#Range: 0.0 ~ 1.0
harvestSpeedMultiplier = 0.5
#These items will have reduced durability
items = ["diamond_axe", "iron_axe", "golden_axe", "stone_axe", "wooden_axe", "diamond_hoe", "iron_hoe", "golden_hoe", "stone_hoe", "wooden_hoe", "diamond_pickaxe", "iron_pickaxe", "golden_pickaxe", "stone_pickaxe", "wooden_pickaxe", "diamond_shovel", "iron_shovel", "golden_shovel", "stone_shovel", "wooden_shovel", "diamond_sword", "iron_sword", "golden_sword", "stone_sword", "wooden_sword"]
#Settings for sinew drops
[sinew]
#Drop rate of sinew (chance out of 1)
#Range: 0.0 ~ 1.0
dropRate = 0.2
#These entities can drop sinew when killed.
dropsFrom = ["minecraft:cow", "minecraft:pig", "minecraft:sheep"]
#Settings for gear (tools, weapons, and armor)
[gear]
#Allow parts to be crafted with mixed materials in a crafting grid, like earlier versions.
#In 1.17, mixing is normally only allowed in compound-crafting blocks.
allowLegacyMaterialMixing = false
#If set to false all conversion recipes (type 'silentgear:conversion') will be disabled
#An example of a conversion recipe is placing a vanilla stone pickaxe into a crafting grid to make a Silent Gear stone pickaxe
#Note: This also affects conversion recipes added by data packs and other mods
allowConversionRecipes = true
#Displays a message in chat, notifying the player that an item broke and hinting that it can be repaired
sendBrokenMessage = true
#How frequently gear will recalcute stats as damaged
#Higher numbers will cause more recalculations, allowing traits to update stat values more often
#Range: > 1
damageFactorLevels = 10
#If true, gear breaks permanently, like vanilla tools and armor
breaksPermanently = false
#The item tier assigned to gear tool items.
#Leave this alone unless you are trying to work around mod compatibility issues!
#Normally, this value is not used for anything. But some mods mistakenly check it.
#Allowed Values: WOOD, STONE, IRON, DIAMOND, GOLD, NETHERITE
dummyToolTier = "WOOD"
#The armor material assigned to the gear armor items.
#Leave this alone unless you are trying to work around mod compatibility issues!
#Normally, this value is not used for anything. But some mods mistakenly check it.
#Allowed Values: LEATHER, CHAIN, IRON, GOLD, DIAMOND, TURTLE, NETHERITE
dummyArmorMaterial = "LEATHER"
[gear.enchanting]
#Allow gear items to be enchanted by normal means (enchanting table, etc.)
#There may still be other ways to obtain enchantments on gear items, depending on what other mods are installed.
#Enchantments will not be removed from gear items that have them.
allowEnchanting = true
#Forcibly remove all enchantments from gear items. Enchantments added by traits will not be removed.
#Enchantments will be removed during stat recalculations, so items not in a player's inventory will not be affected.
forceRemoveEnchantments = false
[gear.prospector_hammer]
#The range in blocks the prospector hammer will search for blocks of interest
#Range: 0 ~ 64
range = 16
[gear.saw]
#Caps how far the saw can look for blocks when chopping down trees. Try decreasing this if you get stack overflow exceptions.
#Increasing this value is allowed, but not recommended unless you know what you are doing.
#Range: > 0
recursionDepth = 200
#Settings for AOE tools (hammer, excavator)
#Match modes determine what blocks are considered similar enough to be mined together.
#LOOSE: Break anything (you probably do not want this)
#MODERATE: Break anything with the same harvest level
#STRICT: Break only the exact same block
[gear.aoeTool]
[gear.aoeTool.matchMode]
#Match mode for most blocks
#Allowed Values: LOOSE, MODERATE, STRICT
standard = "MODERATE"
#Match mode for ore blocks (anything in the forge:ores block tag)
#Allowed Values: LOOSE, MODERATE, STRICT
ores = "STRICT"
[gear.repairs]
#Effectiveness of gear repairs done in an anvil. Set to 0 to disable anvil repairs.
#Range: 0.0 ~ 1.0
anvilEffectiveness = 0.5
#DEPRECATED! Use repair kit configs instead.
#Range: 0.0 ~ 1.0
quickEffectiveness = 0.35
[gear.upgrades]
#If true, upgrade parts may only be applied in an anvil.
applyInAnvilOnly = false
#If true, parts that are replaced (swapped out) of a gear item are not returned to the player and are instead destroyed.
#This applies to the recipe where placing a gear item and a part into a crafting grid will swap out the part.
destroySwappedParts = false
#Settings for the material grader
[materialGrader]
#The median (most common, average) grade that a material grader with tier 1 catalyst will produce.
#Higher tier catalysts will increase the median by one grade per tier past 1 (if 1 = C, 2 = B, etc.)
#Allowed Values: NONE, E, D, C, B, A, S, SS, SSS, MAX
median_grade = "C"
#The standard deviation of grades the material grader will produce.
#Grades are normally distributed, with the median grade being at the center of the bell curve.
#Larger numbers will make both higher and lower grades more common.
#Extremely large values may completely break the curve, yielding mostly the lowest and highest grades.
#Range: 0.0 ~ 100.0
standardDeviation = 1.5
#Settings for the salvager
[salvager]
[salvager.partLossRate]
#Minimum rate of part loss when salvaging items. 0 = no loss, 1 = complete loss.
#Rate depends on remaining durability.
#Range: 0.0 ~ 1.0
min = 0.0
#Maximum rate of part loss when salvaging items. 0 = no loss, 1 = complete loss.
#Rate depends on remaining durability.
#Range: 0.0 ~ 1.0
max = 0.5
#Settings for the starlight charger
[starlightCharger]
#The rate at which the starlight charger gathers energy during the night
#Range: > 0
chargeRate = 50
#The maximum amount of energy the starlight charger can store
#Range: > 0
maxCharge = 1000000
[debug]
[debug.logging]
#Log additional information related to loading and synchronizing gear parts and traits.
#This might help track down more obscure issues.
extraPartAndTraitInfo = false
#Log stat calculations in the debug.log every time gear stats are recalculated
stats = true
#Log information on construction of gear and part models, as well as textures they attempt to load.
#This is intended to help find and fix rare issues that some users are experiencing.
modelAndTexture = false
#Log details about certain features being adding to biomes and other world generator details
worldGen = true
[other]
#Shows a "WIP" (work in progress) label in the tooltip of certain unfinished, but usable blocks and items
#Set to false to remove the text from tooltips
showWipText = true

View File

@ -1,4 +0,0 @@
# Default config file that will be copied to local\ftbchunks\client-config.snbt if it doesn't exist!
# Just copy any values you wish to override in here!
{ }

View File

@ -1,4 +0,0 @@
# Default config file that will be copied to saves\New World\serverconfig\ftbchunks-world.snbt if it doesn't exist!
# Just copy any values you wish to override in here!
{ }

View File

@ -1,4 +0,0 @@
# Default config file that will be copied to local\ftblibrary-client.snbt if it doesn't exist!
# Just copy any values you wish to override in here!
{ }

View File

@ -1,4 +0,0 @@
# Default config file that will be copied to local\ftbquests\client-config.snbt if it doesn't exist!
# Just copy any values you wish to override in here!
{ }

View File

@ -1,77 +0,0 @@
[Damage-Module]
#The purpose of the damage module is to remove the invulnerability ticks after an entity is damaged to better suit gameplay where entities are going to be ignoring too much damage if left unchecked. Disabling will nullify every feature listed under this module.
damageModuleEnabled = false
#Some entities or damage sources rely on damage ticks to time their attacks. In these cases, we want to let them initiate i-frames.
#entityBlacklist default: ["minecraft:slime","minecraft:ender_dragon","minecraft:magma_cube","irons_spellbooks:wall_of_fire","irons_spellbooks:void_tentacle"]
entityBlacklist = ["minecraft:slime", "minecraft:ender_dragon", "minecraft:magma_cube", "irons_spellbooks:wall_of_fire", "irons_spellbooks:void_tentacle"]
#damagesourceBlacklist default: ["lava","inFire","cactus","inWall","hotFloor","lightningBolt","sweetBerryBush","outOfWorld","drown"]
damagesourceBlacklist = ["lava", "inFire", "cactus", "inWall", "hotFloor", "lightningBolt", "sweetBerryBush", "outOfWorld", "drown"]
#Invulnerability Tick (I-Frame) count. Default: 0 (Vanilla's is 20, one second)
invulnerabilityTickCount = 0
#Specialized handling for player damage ticks. "ALL" means there is no special handling, "ONLY_LIVING" means only living attacks ignore player i-frames (may help with unforeseen damage like potions), and "NONE" means player's damage ticks are unaffected by the damage module.
#Allowed Values: ALL, ONLY_LIVING, NONE
playerDamageMode = "ALL"
#In order to prevent spam attacks, a minimum threshold of attack strength can be set before an attack can deal damage. Default: 0.75
minimumAttackStrength = 0.75
#Whether or not a player is allowed to even swing if the threshold is not met. Default: true
allowNonFullStrengthAttacks = true
#Global multiplier to all knockback. Default: 1.0
globalKnockbackMultiplier = 1.0
[Durability-Module]
#The purpose of the durability module is to rework how durability damage is applied to better emulate an rpg setting. Disabling will nullify every feature listed under this module.
durabilityModuleEnabled = false
#What type of gear should take vanilla durability damage. Default: NONE
#Allowed Values: ALL, TOOLS, ARMOR, NONE
vanillDurabilityGearType = "NONE"
#What type of gear is damaged upon death. Default: ALL
#Allowed Values: ALL, TOOLS, ARMOR, NONE
deathGearType = "ALL"
#The percent of durability damage equipment should take on player dying. Set to 0 to disable. Default: 0.15 (15%)
durabilityLostOnDeath = 0.15
#An additional constant amount of damage taken on death. This makes items with a high max durability degrade relatively slower. Set to 0 to disable. Default: 25
additionalDurabilityLostOnDeath = 25
[XP-Module]
#The purpose of the xp module is to rework how experience is dropped on a player's death by creating a souls-like xp catalyst instead. Disabling will nullify every feature listed under this module.
xpModuleEnabled = true
#Whether or not players will drop xp despite keepInventory gamerule. Default: true
ignoreKeepInventory = true
#Whether or not the player who dropped the xp is the only player allow to collect the xp. Default: true
onlyAllowOwnerPickup = true
#Multiplier to experience dropped by slain entities. Default: 1.0
mobDropXpMultiplier = 1.0
#Multiplier to experience dropped by blocks broken. Default: 1.0
blockDropXpMultiplier = 1.0
[Enchantment-Module]
#The purpose of the enchantment module is to mystify enchantments and add an additional challenge to game by obscuring the description of enchanted and cursed items found through looting. Disabling will nullify every feature listed under this module.
enchantmentModuleEnabled = true
#Whether or not armor should be automatically identified when equipped. Default: true
identifyOnEquip = true
#Whether or not unidentified items can be identified by interacting with an enchanting table. Default: true
identifyOnEnchantingTable = true
#Whether or not the enchanting table's functionality should be disabled, making looting or trading the only way to get enchanted items. Default: false
disableEnchantingTable = false
[Hunger-Module]
#The hunger module removes hunger and makes food to directly heal in order to to remove the tedious task of maintaining hunger, as well as rebalance health management during combat and exploration. Disabling will nullify every feature listed under this module.
hungerModuleEnable = false
#Disable Hunger. Without this, most of the hunger module features and config are nullified, but if you want to adjust stack sizes or potion mechanics without disabling hunger, you can do so here.
disableHunger = true
#The multiplier of a food's hunger value to health regained by eating it. Default: 0.5 (50%)
foodToHealthModifier = 0.5
#The amount of time, in ticks, between players naturally regenerating 1 hp. 1 second is 20 ticks. Turn off the naturalRegeneration gamerule to disable. Default: 250.
naturalRegenerationTickRate = 250
#Changes the stack size of potions. Set to 0 to disable. Requires game restart. Default: 4
potionStackSize = 4
#Limit the stack size of every food item. Set to 0 to disable. Requires game restart. Default: 0
foodStackSize = 0
#A Blacklist for limited food stack size, if enabled. Useful for mob drops or other edible items that are not meant as food. Default: ["minecraft:rotten_flesh","minecraft:spider_eye","minecraft:potato","minecraft:carrot","farmersdelight:onion","farmersdelight:tomato","farmersdelight:cabbage"]
foodStackSizeBlacklist = ["minecraft:rotten_flesh", "minecraft:spider_eye", "minecraft:potato", "minecraft:carrot", "farmersdelight:onion", "farmersdelight:tomato", "farmersdelight:cabbage"]
#Item Cooldown in seconds when throwing a splash potion. Default: 0.5
splashPotionCooldown = 0.5
#Item Cooldown in seconds when throwing a lingering potion. Default: 1.5
lingeringPotionCooldown = 1.5

View File

@ -14,7 +14,7 @@ hash = "a60442351eb4a2fb2c74d4a7c62fd25d32faca43c0f192a1c261c13db9a71551"
[[files]]
file = "config/almostunified/unify.json"
hash = "516f15c2da102c38d83bf941548dafd228a10996d85fec6fdfcf129134c0cccf"
hash = "69af40d099b24e53d2f6463348a1c012900b87d729af8fd83c312fe576f2fe10"
[[files]]
file = "config/apotheosis/adventure.cfg"
@ -32,10 +32,22 @@ hash = "dbee0a6f28c17fa2f26fae182d373e8575043a12f38631a7cd178f78092d6ebf"
file = "config/bountiful/bounty_pools/_all_rews.json"
hash = "139b89ce50bd91a4062324ea8a3d7a1f80e44a7350b5a24edf0e62058c9cb629"
[[files]]
file = "config/caupona-server.toml"
hash = "a390c33d54d79a638c2db8a042ea6830cabc58d54197b1c6d3efa5867a1ca6ac"
[[files]]
file = "config/cookingforblockheads-common.toml"
hash = "e3197d34e2c523d4394cb19595704a34d3ed4189a72a1b5e4669cbabdffd4861"
[[files]]
file = "config/create-server.toml"
hash = "a34d57e16fdb312870efe7a2c147ad173480054563b81fef680d2b8eea149c95"
[[files]]
file = "config/doggytalents-server.toml"
hash = "3cc82c9e18e77043d4cdf08cc5531758990182f1ed1878e9e47301dd0d2abe2c"
[[files]]
file = "config/enhancedai/common.toml"
hash = "62afc99266eeb4ca3b31af6aea57b5ae877da549e4e327d0090d74db97d67b80"
@ -128,10 +140,6 @@ hash = "2b957dd01aaf5435d451b7845dddb9c7af7cecf6308d98bf9d9cea4a893eabd4"
file = "config/ftbquests/quests/reward_tables/random_metal_dust.snbt"
hash = "749e6bd14eca63555b9193c6fc1f550b953ef742bf912c6eb0d7ef18fc063116"
[[files]]
file = "config/irons_rpg_tweaks-server.toml"
hash = "e7c7558aaaa943a21e7ca1a05fb505600b9c283aa12593228282407f6e14ca64"
[[files]]
file = "config/miapi.jsonc"
hash = "3e03896b16e429035a401f2d947c01852b39cd7036e8816401f9e6a0700b357a"
@ -149,12 +157,12 @@ file = "config/scalinghealth-client.toml"
hash = "37ed12381b513e5565e4ce6448120f6de46fef68d801c398f1697f3fbc0bacef"
[[files]]
file = "config/serverconfigupdater-common.toml"
hash = "a99af7b99ef3e625557c07e4dea8a602729c000cc3190f2772bc51220d693ea2"
file = "config/scalinghealth-server.toml"
hash = "58f2248756fbb1198b9f9babfa1a65dbed9ff2331326a8a52c5e248aeb35ee0f"
[[files]]
file = "config/silentgear-common.toml"
hash = "e1f254d002148c00d451ca74d641025ea8e1908e74d69d8e3b276ca6bfe8212a"
file = "config/sebastrnlib-server.toml"
hash = "2a5a7e97cc8b21baa4a3f4b06fb48383abe8638f50b0138d3127ef22f6deb010"
[[files]]
file = "config/tempad.jsonc"
@ -169,43 +177,7 @@ file = "config/waystones-common.toml"
hash = "c2deb3c1088eac2f5b35871ec442c7070e4a822af03e0a98834147f0847089d7"
[[files]]
file = "defaultconfigs/caupona-server.toml"
hash = "a390c33d54d79a638c2db8a042ea6830cabc58d54197b1c6d3efa5867a1ca6ac"
[[files]]
file = "defaultconfigs/doggytalents-server.toml"
hash = "3cc82c9e18e77043d4cdf08cc5531758990182f1ed1878e9e47301dd0d2abe2c"
[[files]]
file = "defaultconfigs/ftbchunks/client-config.snbt"
hash = "6d5592c9b61ca156d7901a1b2a626d9c1f5401ec6988e73fe01fab57c7df2260"
[[files]]
file = "defaultconfigs/ftbchunks/ftbchunks-world.snbt"
hash = "cb9fcb6b7c72a876bc63e3e996cb8314463879f16349d2ee03ff93d020357fad"
[[files]]
file = "defaultconfigs/ftblibrary/ftblibrary-client.snbt"
hash = "ab6bcad040f138406197f70cfe9a041832feaddf7e87954d9a5f4b13b6a962f9"
[[files]]
file = "defaultconfigs/ftbquests/client-config.snbt"
hash = "4ce84f0da35036f810959086ea1043062993bf34ae704fc9cd4f1a67810090a6"
[[files]]
file = "defaultconfigs/irons_rpg_tweaks-server.toml"
hash = "feea89cd657cc5b0aa7465a8fba7a95ed6fec5648084a7198ca868da8be2de08"
[[files]]
file = "defaultconfigs/scalinghealth-server.toml"
hash = "58f2248756fbb1198b9f9babfa1a65dbed9ff2331326a8a52c5e248aeb35ee0f"
[[files]]
file = "defaultconfigs/sebastrnlib-server.toml"
hash = "2a5a7e97cc8b21baa4a3f4b06fb48383abe8638f50b0138d3127ef22f6deb010"
[[files]]
file = "defaultconfigs/weaponleveling-server.toml"
file = "config/weaponleveling-server.toml"
hash = "0381c2b141fe6bf4bdb0fa1d7687b62da7e7e6500259c10951a7ad7963a8564f"
[[files]]
@ -449,65 +421,37 @@ hash = "404056efbb3fe6310afb5c9d7c3f881942e4bf8a63a50d82c4a405c65c1fb896"
file = "kubejs/data/miapi/materials/ars/source_gem.json"
hash = "8fef9d231d704cc233d14f421c38d6a964345f76fc05bfc32b40ec1c34fe0129"
[[files]]
file = "kubejs/data/miapi/materials/gobber2/gobber.json"
hash = "5724b43e8247bcdcfc2615a2fb1f535db674b34054c4f8bd35635c91fe72bd78"
[[files]]
file = "kubejs/data/miapi/materials/powder_power/quadrilium.json"
hash = "0f2a7019e70f57af13503357bc850eeef040627c297f36f421fa2cfb79d3f0b6"
[[files]]
file = "kubejs/data/miapi/materials/powder_power/trilium.json"
hash = "162d2bb4be034b5039e3af8bafd87a0a47523d2e2608acde3c18f577c3680da8"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-aluminum.json"
hash = "19bd4f00f1decd587bb53f7086734cf8371a92e5df26d93e7fb99cdfc860be93"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-aluminum_steel.json"
hash = "7825b24b7ba630e985aa925e1293fc92418aa58d19c4190622bbfdba96f2b8aa"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-azure_electrum.json"
hash = "a3b5a65c6d07eb2cfa2d9e3e4c416fc8ed2d6c0777475905f8f4308e6e3036ad"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-azure_silver.json"
hash = "238e6f55a310a2a3935e7a9faeb9a3d67ce657b86c0f6efcf90320f0248cc85d"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-bismuth.json"
hash = "1afe3ff8ed17f3b5d7a7a300aa81ff7d652bfc4eda78b151a291e6a2901d1be9"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-bismuth_brass.json"
hash = "9c3dc360b864f98e5739615434f9b8538307ed9906b842332206174cb68edf06"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-bismuth_steel.json"
hash = "fe699db77402d7b776c392a8ff01efbcb0edadf1cdab90efe4ee653e76a6aa31"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-blaze_gold.json"
hash = "9d59c0189022ba1d69cee3d1304ab21f1bf1d05c2a756862a74ef87fee327463"
hash = "501bce84a7ee9aed11edc9a8dca983470ac091e8cb947c26fb45bba88a32dd4c"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-brass.json"
hash = "8f983c2ceeeaaff859069d533c0279ad27122b19a253800a7ee0b7f239bb99d3"
hash = "552d5e47e49020dbc95dd03750848c225da04bc14fa0506ee0b3b524ee8b6811"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-bronze.json"
hash = "983fb449da3ba6b4f7b559406a012ed41a608b98154e6ac5817d130aa07c3735"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-compressed_iron.json"
hash = "4a0be7f18da46c7c94cd04946db4c5070d33d4e1cfd48e0e90ccec59e577cddc"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-crimson_iron.json"
hash = "67bc431ca4890b0f980f9b50e12a963862acf835999198417446ca80b9c3d8f7"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-crimson_steel.json"
hash = "5540310223814e971c9e9e0d4ad6d91a1e3e70b46072a3a3f3ed7e7c4319dbcf"
hash = "dec314c04fbbb8fdca831d35969349dd5baeac826cc54b43fa4a476e4c463b2a"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-electrum.json"
hash = "52dee8be3392f295c43ceffb9e6798099732f6d382e78193f15c028ebeab35cc"
hash = "2a6830cb8986c012006a5ba29504bce487fd83b920f7a12295fa3b97819ee3ec"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-enderium.json"
hash = "ee460f68b5ef915411d657c9e479ab16939b1bf723175bd483d06b5e05cfd381"
hash = "f66bb772270b43a8229f4efa2fcabcc55ce0a599097dc829a31e4b3ca8d0390a"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-gold.json"
@ -515,75 +459,55 @@ hash = "32cd65c4f7e1f1ffb8db132eb45cab344e618bc11dc1b5f39076e69bd5cb6a60"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-invar.json"
hash = "6cee0d0f5d36bf34996841906f06ab86adb33e499a21575cbd96faab5dcc8ad9"
hash = "63e0f8cec0161050e5ff3ed263872974537eecad01606d29e085b5040e78f039"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-lead.json"
hash = "889621fba725c20d623db9040113b59cb2c96ef919b01d1f1a1365f65a6f35e5"
hash = "fe68267fb05e142a84e6ec7177dbcd1bdc4ae52be68b38290e3b04e4b457f7da"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-lumium.json"
hash = "9593a683f7dab0e13cda4c28afc92b2e54479c0b422b732ade9cae97b8abc93a"
hash = "1e4a5893aaf0a33872968c7f7be9deadb736cb23cb9fb8064420d524fd540231"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-nickel.json"
hash = "a808aa0bc49a87caf7896e21cdc93beadde4e55cb129e4f1a5f73b7cae356c78"
hash = "e50bb901b24f8b42adacc9cb580e474dbae511a5384fbcb31447459ea6f61928"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-osmium.json"
hash = "fac3bb8c7810c6f33e053d34910a2fb684f61bd87afabd06b380bacd36ddf874"
hash = "43d5e10fd4da28d6e18c2d2ecb2169bb24636536e7f2ed15942239289487ac19"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-platinum.json"
hash = "0effc22f47f95bed9f775e21be658fdc73c949a17d3f14b3109085779dba6c5e"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-redstone_alloy.json"
hash = "502681fb3e0b4197c07e9a42953ce4bf4209ba78536d09f724be6955f0fac3dc"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-refined_glowstone.json"
hash = "b1cde36fbdb5188a1a7c2ec116b8605041a8d5d62abd6256d36e34e3e2a1030e"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-refined_iron.json"
hash = "dc5562c6bf02bd67a78e116dc213a7eed915f093bf246b4207dc91dc821345cf"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-refined_obsidian.json"
hash = "91e8972714bd10c2c1168334bb19bbe706cfdaffb3f53ea37c4c3f6db7ad0bf4"
hash = "aea6eda00f36b5b3d25720cef754620ce0a482d1f92def4fd2721c98afd86819"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-signalum.json"
hash = "6fa5ae2d79bba8e11e76c2c64ecabcd2184ffc3818d0346588df2df47a7eaa93"
hash = "c0338eb2e1535d872bd4f7af1262e04a98b828c4049a4ab39fffa7e1f49889c1"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-silver.json"
hash = "273525663188362ec3b9a3e710eaeddf648cfa31db79113cb953d569cff9c583"
hash = "213a47ec80edf10e42682953448952baf5c0a654ffb13f1c5bad9f32233d46a3"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-steel.json"
hash = "e92bb795cbdc3fb8e030aab2edf40c27f69cb48dff381844d53194bc20086807"
hash = "af3292d4b85b0576dec6b8f71b6e95b4f1a72e09347b754dbae42a3bc133cc76"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-tin.json"
hash = "d0c319bc92f6d5f58093851315b1973ff8ce2a5b8a46ebcbaf950c5317e342f9"
hash = "2ef1166548fd1805de6dcc61cae2778f908c61a2de0f2cf4918f69aec955cfc2"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-titanium.json"
hash = "9b0528181354b23b40b8f1a585ed57d06ecc055976f1a60fe7a620d3a5ed6e74"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-tyrian_steel.json"
hash = "d1afb59d8ddd3892a1dd9b340ef9311e71ed55e094b32b03e1eeb3492bcc9b27"
hash = "b8a0cd130ec3c5b4dfc05fb4a5ccce1e75f9084bbe77b6f5cfdf15a0a9c261dc"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-uranium.json"
hash = "1b045255e4f818cd0529dce40a0b2bd3133d6cfdff27386b99fddce7560b979e"
hash = "45727e2e77679372bd07b29b6959583dd277325012656a197c7955e00519f4a8"
[[files]]
file = "kubejs/data/miapi/materials/silentgear/silentcompat-zinc.json"
hash = "e2707134df84096e293addd2811fadb91a2279cd6f14fb9200ef9ff45461fb96"
hash = "50886921431472bcb544edf959767be240f7003528be267d9916705355169acc"
[[files]]
file = "kubejs/jsconfig.json"
@ -663,7 +587,7 @@ hash = "4717847a6d54f56ed6919a1e2c3591fc73780973708e818a563753132bc7c15e"
[[files]]
file = "kubejs/server_scripts/mods/create.js"
hash = "8cce1a2b55882f19a3c3bf77f6059c8b940d00a31dc3c1f91b8b11a54d2e7a5a"
hash = "13831564cb218cf39d1db7d6891a1fc3f4647bdbe1b30a25571f863edecbf4de"
[[files]]
file = "kubejs/server_scripts/mods/croptopia.js"
@ -755,7 +679,7 @@ hash = "d37bfb9bc41aa46d0aa075dbe19a5eeb947b4ea3d8f13c03ac370cb00763d7a1"
[[files]]
file = "kubejs/server_scripts/mods/thermal.js"
hash = "818edb5c5efc282ae17a1d2b9fca338a06ff1df46aad042f756a3cb3c1c5eac2"
hash = "b33f603a2121bc90e47b27680ee55655dca46c9d7b07d97d1c06698d0a1c762d"
[[files]]
file = "kubejs/server_scripts/mods/vinery.js"
@ -771,7 +695,7 @@ hash = "4003082f31011049402ff31504a6db0f4fdd6c7076167109c66fa412286be462"
[[files]]
file = "kubejs/server_scripts/ore-processing.js"
hash = "d7d3df2550770a682bf55b8d98df2b6562a4434256beaa435a632fc63a61e6fb"
hash = "b5317b5c9094cf38ef9ffb536a70ebf849056030a900feb4a837b284ec4c7f1c"
[[files]]
file = "kubejs/server_scripts/progression/report.js"
@ -1375,6 +1299,11 @@ file = "mods/glitchcore.pw.toml"
hash = "c46659c3e873e0ca121f5215991ae8bc989132a3fea0c2da9eed0f22a947b2b9"
metafile = true
[[files]]
file = "mods/global-server-config.pw.toml"
hash = "c4b391ce90073709174f6da82a0d22ac32d4ac53b4aa536309742c9d94d409d7"
metafile = true
[[files]]
file = "mods/gobber.pw.toml"
hash = "6e7c398fbe5d96942b5f3fdeecbceea207990b396308dfa3610695f0fe61b99a"
@ -1830,11 +1759,6 @@ file = "mods/silent-lib.pw.toml"
hash = "7f281333e1c573bc3673446c291d82f3137bfc7de6a5256d61417f67be7b40bc"
metafile = true
[[files]]
file = "mods/simple-shops.pw.toml"
hash = "eb50118ab1d53243ffec8d8ec8ffac84e046232e09feb2c5a4597542fc9f4671"
metafile = true
[[files]]
file = "mods/simple-voice-chat.pw.toml"
hash = "703a46fa7d4918e855cc6ee841d4542741494851023ff49ba4087092a8d70b20"

View File

@ -0,0 +1,36 @@
{
"icon": {
"type": "item",
"item": "gobber2:gobber2_ingot"
},
"key": "gobber2.gobber",
"translation": "miapi.material.gobber2.gobber",
"fake_translation": "Gobber ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/gobber",
"value": 1
}
],
"color": "468C75",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "gobber2:gobber2_ingot"
},
"durability": 3800.0,
"mining_speed": 10.0,
"enchantability": 25.0,
"flexibility": 3,
"density": 3.3,
"mining_level": 5,
"hardness": 18.75,
"properties": {
"default": {}
}
}

View File

@ -0,0 +1,36 @@
{
"icon": {
"type": "item",
"item": "powder_power:quadrilium_ingot"
},
"key": "powder_power.quadrilium",
"translation": "miapi.material.powder_power.quadrilium",
"fake_translation": "Quadrilium ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/quadrilium",
"value": 1
}
],
"color": "468C75",
"textures": [
"bright"
],
"color_palette": {
"type": "image_generated_item",
"item": "powder_power:ingot_quadrilium"
},
"durability": 4200.0,
"mining_speed": 28.0,
"enchantability": 25.0,
"flexibility": 3,
"density": 1.3,
"mining_level": 5,
"hardness": 25,
"properties": {
"default": {}
}
}

View File

@ -0,0 +1,36 @@
{
"icon": {
"type": "item",
"item": "powder_power:trilium_ingot"
},
"key": "powder_power.trilium",
"translation": "miapi.material.powder_power.trilium",
"fake_translation": "Trilium ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/trilium",
"value": 1
}
],
"color": "468C75",
"textures": [
"bright"
],
"color_palette": {
"type": "image_generated_item",
"item": "powder_power:ingot_trilium"
},
"durability": 3600.0,
"mining_speed": 27.0,
"enchantability": 20.0,
"flexibility": 2.4444444444444444,
"density": 1.4,
"mining_level": 5,
"hardness": 17,
"properties": {
"default": {}
}
}

View File

@ -27,13 +27,13 @@
"type": "image_generated_item",
"item": "alltheores:aluminum_ingot"
},
"durability": 1095.0,
"mining_speed": 12.0,
"durability": 895.0,
"mining_speed": 14.0,
"enchantability": 14.0,
"flexibility": 2.1666666666666665,
"density": 1.8,
"flexibility": 4.5,
"density": 0.8,
"mining_level": 3,
"hardness": 18.75,
"hardness": 8.75,
"properties": {
"default": {}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:aluminum_steel_ingot"
},
"key": "silentcompat.aluminum_steel",
"translation": "miapi.material.silentcompat-aluminum_steel",
"fake_translation": "Aluminum_steel ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/aluminum_steel",
"value": 1
},
{
"tag": "forge:nuggets/aluminum_steel",
"value": 0.11112
}
],
"color": "98D9DA",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:aluminum_steel_ingot"
},
"durability": 1980.0,
"mining_speed": 12.0,
"enchantability": 11.0,
"flexibility": 1.857142857142857,
"density": 2.0,
"mining_level": 4,
"hardness": 22.5,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "silentgear:azure_electrum_ingot"
},
"key": "silentcompat.azure_electrum",
"translation": "miapi.material.silentcompat-azure_electrum",
"fake_translation": "Azure_electrum ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/azure_electrum",
"value": 1
},
{
"tag": "forge:nuggets/azure_electrum",
"value": 0.11112
}
],
"color": "4575E3",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "silentgear:azure_electrum_ingot"
},
"durability": 3777.0,
"mining_speed": 43.5,
"enchantability": 37.0,
"flexibility": 1.857142857142857,
"density": 3.0,
"mining_level": 5,
"hardness": 76.25,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "silentgear:azure_silver_ingot"
},
"key": "silentcompat.azure_silver",
"translation": "miapi.material.silentcompat-azure_silver",
"fake_translation": "Azure_silver ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/azure_silver",
"value": 1
},
{
"tag": "forge:nuggets/azure_silver",
"value": 0.11112
}
],
"color": "CBBAFF",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "silentgear:azure_silver_ingot"
},
"durability": 591.0,
"mining_speed": 28.5,
"enchantability": 29.0,
"flexibility": 2.6,
"density": 2.8,
"mining_level": 4,
"hardness": 21.25,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:bismuth_ingot"
},
"key": "silentcompat.bismuth",
"translation": "miapi.material.silentcompat-bismuth",
"fake_translation": "Bismuth ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/bismuth",
"value": 1
},
{
"tag": "forge:nuggets/bismuth",
"value": 0.11112
}
],
"color": "D1C2D5",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:bismuth_ingot"
},
"durability": 990.0,
"mining_speed": 7.5,
"enchantability": 12.0,
"flexibility": 2.1666666666666665,
"density": 1.8,
"mining_level": 3,
"hardness": 12.5,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:bismuth_brass_ingot"
},
"key": "silentcompat.bismuth_brass",
"translation": "miapi.material.silentcompat-bismuth_brass",
"fake_translation": "Bismuth_brass ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/bismuth_brass",
"value": 1
},
{
"tag": "forge:nuggets/bismuth_brass",
"value": 0.11112
}
],
"color": "E9C1B4",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:bismuth_brass_ingot"
},
"durability": 1740.0,
"mining_speed": 13.5,
"enchantability": 14.0,
"flexibility": 1.857142857142857,
"density": 2.2,
"mining_level": 3,
"hardness": 18.75,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:bismuth_steel_ingot"
},
"key": "silentcompat.bismuth_steel",
"translation": "miapi.material.silentcompat-bismuth_steel",
"fake_translation": "Bismuth_steel ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/bismuth_steel",
"value": 1
},
{
"tag": "forge:nuggets/bismuth_steel",
"value": 0.11112
}
],
"color": "DC9FE7",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:bismuth_steel_ingot"
},
"durability": 3150.0,
"mining_speed": 15.0,
"enchantability": 14.0,
"flexibility": 1.625,
"density": 2.0,
"mining_level": 4,
"hardness": 31.25,
"properties": {
"default": {}
}
}

View File

@ -1,44 +0,0 @@
{
"icon": {
"type": "item",
"item": "silentgear:blaze_gold_ingot"
},
"key": "silentcompat.blaze_gold",
"translation": "miapi.material.silentcompat-blaze_gold",
"fake_translation": "Blaze_gold ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/blaze_gold",
"value": 1
},
{
"tag": "forge:nuggets/blaze_gold",
"value": 0.11112
}
],
"color": "DD8500",
"textures": [
"metallic",
"emissive"
],
"color_palette": {
"type": "image_generated_item",
"item": "silentgear:blaze_gold_ingot"
},
"durability": 207.0,
"mining_speed": 22.5,
"enchantability": 24.0,
"flexibility": 2.6,
"density": 2.4,
"mining_level": 3,
"hardness": 11.25,
"properties": {
"default": {
"emissive": true,
"isPiglinGold": true
}
}
}

View File

@ -27,13 +27,13 @@
"type": "image_generated_item",
"item": "alltheores:brass_ingot"
},
"durability": 720.0,
"durability": 920.0,
"mining_speed": 10.5,
"enchantability": 13.0,
"flexibility": 2.1666666666666665,
"density": 2.4,
"flexibility": 3.0,
"density": 1.9,
"mining_level": 3,
"hardness": 10.0,
"hardness": 7.0,
"properties": {
"default": {}
}

View File

@ -31,9 +31,9 @@
"mining_speed": 9.0,
"enchantability": 12.0,
"flexibility": 2.1666666666666665,
"density": 2.2,
"density": 2.9,
"mining_level": 3,
"hardness": 16.25,
"hardness": 6.25,
"properties": {
"default": {}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:compressed_iron_ingot"
},
"key": "silentcompat.compressed_iron",
"translation": "miapi.material.silentcompat-compressed_iron",
"fake_translation": "Compressed_iron ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/compressed_iron",
"value": 1
},
{
"tag": "forge:nuggets/compressed_iron",
"value": 0.11112
}
],
"color": "A6A6A6",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:compressed_iron_ingot"
},
"durability": 3072.0,
"mining_speed": 13.5,
"enchantability": 12.0,
"flexibility": 1.625,
"density": 1.6,
"mining_level": 4,
"hardness": 30.0,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "silentgear:crimson_iron_ingot"
},
"key": "silentcompat.crimson_iron",
"translation": "miapi.material.silentcompat-crimson_iron",
"fake_translation": "Crimson_iron ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/crimson_iron",
"value": 1
},
{
"tag": "forge:nuggets/crimson_iron",
"value": 0.11112
}
],
"color": "FF6189",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "silentgear:crimson_iron_ingot"
},
"durability": 1260.0,
"mining_speed": 15.0,
"enchantability": 14.0,
"flexibility": 1.857142857142857,
"density": 1.4,
"mining_level": 4,
"hardness": 33.75,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "silentgear:crimson_steel_ingot"
},
"key": "silentcompat.crimson_steel",
"translation": "miapi.material.silentcompat-crimson_steel",
"fake_translation": "Crimson_steel ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/crimson_steel",
"value": 1
},
{
"tag": "forge:nuggets/crimson_steel",
"value": 0.11112
}
],
"color": "DC143C",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "silentgear:crimson_steel_ingot"
},
"durability": 7200.0,
"mining_speed": 22.5,
"enchantability": 19.0,
"flexibility": 1.625,
"density": 1.8,
"mining_level": 5,
"hardness": 52.5,
"properties": {
"default": {}
}
}

View File

@ -33,7 +33,7 @@
"flexibility": 2.1666666666666665,
"density": 3.0,
"mining_level": 3,
"hardness": 12.5,
"hardness": 7.5,
"properties": {
"default": {}
}

View File

@ -31,9 +31,9 @@
"mining_speed": 27.0,
"enchantability": 13.0,
"flexibility": 1.4444444444444444,
"density": 2.4,
"density": 0.4,
"mining_level": 5,
"hardness": 42.5,
"hardness": 15,
"properties": {
"default": {}
}

View File

@ -31,9 +31,9 @@
"mining_speed": 10.5,
"enchantability": 13.0,
"flexibility": 1.625,
"density": 2.4,
"density": 1.4,
"mining_level": 3,
"hardness": 25.0,
"hardness": 12.0,
"properties": {
"default": {}
}

View File

@ -19,7 +19,7 @@
"value": 0.11112
}
],
"color": "C2CBB8",
"color": "323B88",
"textures": [
"metallic"
],
@ -27,13 +27,13 @@
"type": "image_generated_item",
"item": "thermal:lead_ingot"
},
"durability": 780.0,
"durability": 1180.0,
"mining_speed": 6.0,
"enchantability": 15.0,
"flexibility": 2.6,
"density": 1.6,
"mining_level": 3,
"hardness": 17.5,
"flexibility": 5.0,
"density": 5.6,
"mining_level": 2,
"hardness": 1.5,
"properties": {
"default": {}
}

View File

@ -33,7 +33,7 @@
"flexibility": 1.625,
"density": 2.6,
"mining_level": 4,
"hardness": 25.0,
"hardness": 13.0,
"properties": {
"default": {}
}

View File

@ -30,10 +30,10 @@
"durability": 1140.0,
"mining_speed": 10.5,
"enchantability": 12.0,
"flexibility": 2.6,
"density": 2.0,
"flexibility": 2.9,
"density": 2.3,
"mining_level": 3,
"hardness": 21.25,
"hardness": 9.25,
"properties": {
"default": {}
}

View File

@ -33,7 +33,7 @@
"flexibility": 2.1666666666666665,
"density": 2.2,
"mining_level": 3,
"hardness": 37.5,
"hardness": 13.5,
"properties": {
"default": {}
}

View File

@ -31,9 +31,9 @@
"mining_speed": 18.0,
"enchantability": 14.0,
"flexibility": 1.625,
"density": 2.4,
"density": 2.1,
"mining_level": 4,
"hardness": 26.25,
"hardness": 16.25,
"properties": {
"default": {}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:redstone_alloy_ingot"
},
"key": "silentcompat.redstone_alloy",
"translation": "miapi.material.silentcompat-redstone_alloy",
"fake_translation": "Redstone_alloy ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/redstone_alloy",
"value": 1
},
{
"tag": "forge:nuggets/redstone_alloy",
"value": 0.11112
}
],
"color": "E60006",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:redstone_alloy_ingot"
},
"durability": 2520.0,
"mining_speed": 16.5,
"enchantability": 18.0,
"flexibility": 1.857142857142857,
"density": 1.8,
"mining_level": 3,
"hardness": 25.0,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:refined_glowstone_ingot"
},
"key": "silentcompat.refined_glowstone",
"translation": "miapi.material.silentcompat-refined_glowstone",
"fake_translation": "Refined_glowstone ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/refined_glowstone",
"value": 1
},
{
"tag": "forge:nuggets/refined_glowstone",
"value": 0.11112
}
],
"color": "FDE054",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:refined_glowstone_ingot"
},
"durability": 900.0,
"mining_speed": 21.0,
"enchantability": 18.0,
"flexibility": 1.857142857142857,
"density": 1.6,
"mining_level": 3,
"hardness": 22.5,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:refined_iron_ingot"
},
"key": "silentcompat.refined_iron",
"translation": "miapi.material.silentcompat-refined_iron",
"fake_translation": "Refined_iron ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/refined_iron",
"value": 1
},
{
"tag": "forge:nuggets/refined_iron",
"value": 0.11112
}
],
"color": "D7D7D7",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:refined_iron_ingot"
},
"durability": 1536.0,
"mining_speed": 10.5,
"enchantability": 15.0,
"flexibility": 1.857142857142857,
"density": 1.6,
"mining_level": 3,
"hardness": 25.0,
"properties": {
"default": {}
}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "thermal:refined_obsidian_ingot"
},
"key": "silentcompat.refined_obsidian",
"translation": "miapi.material.silentcompat-refined_obsidian",
"fake_translation": "Refined_obsidian ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/refined_obsidian",
"value": 1
},
{
"tag": "forge:nuggets/refined_obsidian",
"value": 0.11112
}
],
"color": "665482",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "thermal:refined_obsidian_ingot"
},
"durability": 7500.0,
"mining_speed": 30.0,
"enchantability": 40.0,
"flexibility": 1.0833333333333333,
"density": 1.6,
"mining_level": 4,
"hardness": 62.5,
"properties": {
"default": {}
}
}

View File

@ -31,9 +31,9 @@
"mining_speed": 19.5,
"enchantability": 16.0,
"flexibility": 1.857142857142857,
"density": 2.4,
"density": 3.4,
"mining_level": 4,
"hardness": 31.25,
"hardness": 4.25,
"properties": {
"default": {}
}

View File

@ -31,9 +31,9 @@
"mining_speed": 16.5,
"enchantability": 20.0,
"flexibility": 2.6,
"density": 2.2,
"density": 2.0,
"mining_level": 3,
"hardness": 11.25,
"hardness": 10.25,
"properties": {
"default": {}
}

View File

@ -28,12 +28,12 @@
"item": "thermal:steel_ingot"
},
"durability": 1500.0,
"mining_speed": 9.0,
"mining_speed": 13.0,
"enchantability": 11.0,
"flexibility": 1.625,
"density": 1.6,
"mining_level": 3,
"hardness": 25.0,
"mining_level": 4,
"hardness": 14.5,
"properties": {
"default": {}
}

View File

@ -27,13 +27,13 @@
"type": "image_generated_item",
"item": "thermal:tin_ingot"
},
"durability": 576.0,
"mining_speed": 7.5,
"durability": 676.0,
"mining_speed": 9.5,
"enchantability": 12.0,
"flexibility": 2.6,
"density": 2.2,
"flexibility": 2.3,
"density": 1.8,
"mining_level": 2,
"hardness": 16.25,
"hardness": 3.25,
"properties": {
"default": {}
}

View File

@ -31,9 +31,9 @@
"mining_speed": 12.0,
"enchantability": 12.0,
"flexibility": 1.4444444444444444,
"density": 2.0,
"density": 0.9,
"mining_level": 5,
"hardness": 46.25,
"hardness": 13.25,
"properties": {
"default": {}
}

View File

@ -1,40 +0,0 @@
{
"icon": {
"type": "item",
"item": "silentgear:tyrian_steel_ingot"
},
"key": "silentcompat.tyrian_steel",
"translation": "miapi.material.silentcompat-tyrian_steel",
"fake_translation": "Tyrian_steel ",
"groups": [
"metal"
],
"items": [
{
"tag": "forge:ingots/tyrian_steel",
"value": 1
},
{
"tag": "forge:nuggets/tyrian_steel",
"value": 0.11112
}
],
"color": "B01080",
"textures": [
"metallic"
],
"color_palette": {
"type": "image_generated_item",
"item": "silentgear:tyrian_steel_ingot"
},
"durability": 10956.0,
"mining_speed": 27.0,
"enchantability": 16.0,
"flexibility": 1.4444444444444444,
"density": 2.2,
"mining_level": 5,
"hardness": 101.25,
"properties": {
"default": {}
}
}

View File

@ -31,7 +31,7 @@
"mining_speed": 9.0,
"enchantability": 17.0,
"flexibility": 2.6,
"density": 3.0,
"density": 6.0,
"mining_level": 4,
"hardness": 25.0,
"properties": {

View File

@ -31,9 +31,9 @@
"mining_speed": 4.5,
"enchantability": 15.0,
"flexibility": 2.6,
"density": 2.2,
"density": 1.2,
"mining_level": 2,
"hardness": 12.5,
"hardness": 6.5,
"properties": {
"default": {}
}

View File

@ -29,6 +29,17 @@ ServerEvents.recipes(event => {
'#kubejs:grist/intelligent/basic'
);
// Gate the mixer behind aluminum
event.replaceInput({output: 'create:whisk'},
'#forge:plates/iron',
'#forge:plates/aluminum'
);
event.replaceInput({output: 'create:propeller'},
'#forge:plates/iron',
'#forge:plates/invar'
);
// Allow certus quartz to be used for rose quartz
event.replaceInput({output: 'create:rose_quartz'},
'minecraft:quartz',

View File

@ -33,12 +33,12 @@ ServerEvents.recipes(event => {
event.recipes.thermal.pulverizer_catalyst('kubejs:grist_build_radiant').primaryMod(5.0).secondaryMod(6.0).energyMod(1.1).useChance(0.1);
// Steel is used mostly for early solar, it shouldn't be so hard to make
event.recipes.thermal.smelter('4x thermal:steel_ingot', ["minecraft:charcoal", global.ingotItem('iron', 4)]);
/*event.recipes.thermal.smelter('4x thermal:steel_ingot', ["minecraft:charcoal", global.ingotItem('iron', 4)]);
event.recipes.thermal.smelter('4x thermal:steel_ingot', ["minecraft:charcoal", '4x #forge:dusts/iron']);
event.recipes.thermal.smelter('thermal:steel_ingot', ["#minecraft:logs_that_burn", global.ingotItem('iron')]);
event.recipes.thermal.smelter('thermal:steel_ingot', ["#minecraft:logs_that_burn", '#forge:dusts/iron']);
event.recipes.thermal.smelter('thermal:steel_block', ['thermal:charcoal_block', global.ingotItem('iron', 9)]);
event.recipes.thermal.smelter('thermal:steel_block', ['thermal:charcoal_block', '9x #forge:dusts/iron']);
event.recipes.thermal.smelter('thermal:steel_block', ['thermal:charcoal_block', '9x #forge:dusts/iron']);*/
// The flux tools can be very easily OP after upgrades and enchants, make them mid-game
event.replaceInput(
@ -131,7 +131,16 @@ ServerEvents.recipes(event => {
event.replaceInput(
{id: 'thermal:device_fisher'},
'forge:gears/copper',
'#forge:gears/copper',
'#kubejs:grist/agricultural/basic'
);
// Pulverizer is gated behind brass, which requires create
/*event.replaceInput(
{id: 'thermal:machine_pulverizer'},
'#forge:gears/brass',
'#kubejs:grist/agricultural/basic'
);*/
// Centrifuge comes already gated behind constantan
});

View File

@ -1,7 +1,8 @@
ServerEvents.recipes(event => {
// Metal tiers:
// Copper, iron, tin, nickel, gold, zinc, brass, invar, bronze - Pre-basic build tier, the only ores that don't require a pulverizer or smelter to process
// silver, platinum, lead, iridum, osmium - Gated behind the pulverizer
// gold, silver, lead - gated behind crushing wheels
// platinum, iridum, osmium - Gated behind the pulverizer
// lumium, enderium, electrum, signalum, steel - Alloys are gated behind the smelter as well
// uranium - requires basic energetic grist to energize into ingots
@ -26,13 +27,445 @@ ServerEvents.recipes(event => {
return itemType;
}
// Progression
// Vanilla age -> Ore hammer for crushing tin to make andesite alloy
// Andesite age -> Mixer from andesite allow allows creating early alloys: bronze, brass, invar, constantan
// Invar age -> induction smelter from invar gears (which now require grist) allows higher level alloys: constantan
// Alloy age -> Higher level alloys unlock the rest of Thermal
// New metal tiers:
// Primitive: Copper - The only ore you can smelt directly in an oven. Also can be processed in a crafting table.
// Vanilla: Iron, tin, nickel, gold, zinc, brass, bronze, invar - The ores require a ore hammer to create 2x crushed ore, which can be smelted into ingots. The metals can be processed in a crafting table.
// Modded (requires build grist): invar
// Progression recipes:
// Constantan:
/*
Metal progression:
Primitive tier: Stone pickaxe to mine, raw ore can be immediately smelted
Copper
Vanilla tier: Stone pickaxe to mine, ore hammer to crush, then smelted. Only one alloy, and it can be crated on the crafting table
Iron, Tin, Gold, Zinc: Ores
Andesite alloy: 2x andesite + tin dust
Progression: Find tin, crush it, create andesite alloy to start making create mod items
Andesite age: Iron pickaxe to mine, crushing wheels to crush, then the crushed ore is smelted normally. Alloys require the create mixer. Ore washing to double crushed ore is unlocked, but fans require invar instead of iron. Gears can be crafted on a crafting table
Silver, Aluminium, Lead: Ores
Bronze - tin + copper
Brass - tin + 3x copper
Rose gold - copper + gold
Progression: Make some brass, craft a gear on the crafting table with build grist, create an induction furnace
Mechanical/grist age: Ores require diamond pick, crushed in the pulverizer, and crushed ore is smelted normally. Alloys require the induction furnace. 4x ore centrifuge is unlocked after creating a constantan gear on the crafting table. Other gears require the press.
Uranium, Platinum, Iridium?, Nickel, Osmium
Electrum - gold + silver
Invar - 2x iron + nickel
Constantan - Copper + nickel
Netherite - 4x netherite scrap, 4x gold
Progression: Create the gear die
Industrial age: Alloys require basic grists, gears can only be made with a gear die
Redium - 4x redstone powder, 2x obsidian powder, 2x iron dust, 1x blaze
Lapium - 4x lapis powder, 2x gold dust, 2x obsidian powder, 1x quartz powder
Gemium - 2x diamond, 1x prismarine powder, 2x emerald dust, 4x obsidian powder
Trilium - 2x lapium, 4x gemium, 1x ender powder, 2x redium
Signalum - silver + 3x copper + 4x redstone
Lumium - silver + 3x tin + 2x glowstone dust
Progression: Make it to the nether
Modern age: Alloys require improved grist
Gobber - gobber glob + diamond + iron + gold
nether gobber - nether glob + 2x gobber + netherite scrap
Quadrilium - 4x trilium, 4x netherite scrpa, 1x ghast tear
Progression: Make it to the end
Age of Legends:
Enderium - 1x diamond + 3x lead + 2x ender pearl = 2 ingot
end gobber - end glob + 2x nether gobber + chorus flower
Progression: That's it, that's the end. You won the game.
*/
let progression = {
// Primitive tier: Stone pickaxe to mine, raw ore can be immediately smelted
primitive: {
copper: []
},
// Vanilla tier: Stone pickaxe to mine, ore hammer to crush, then smelted. Only one alloy, and it can be crated on the crafting table
vanilla: {
iron: [],
tin: [],
gold: [],
zinc: [],
// FIXME: Need to add create:andesite_alloy to #forge:ingots/andesite_alloy
andesite_alloy: [4, '2x minecraft:andesite', 'tin']
},
// Andesite age: Iron pickaxe to mine, crushing wheels to crush, then the crushed ore is smelted normally. Alloys require the create mixer. Ore washing to double crushed ore is unlocked, but fans require invar instead of iron. Gears can be crafted on a crafting table
andesite: {
silver: [],
aluminum: [],
lead: [],
rose_gold: [2, 'copper', 'gold'],
bronze: [2, 'tin', 'copper'],
constantan: [2, 'copper', 'nickel'],
brass: [2, 'zinc', 'copper']
},
// Mechanical/grist age: Ores require diamond pick, crushed in the pulverizer, and crushed ore is smelted normally. Alloys require the induction furnace. 4x ore centrifuge is unlocked after creating a constantan gear on the crafting table. Other gears require the press.
mechanical: {
nickel: [],
invar: [3, '2x iron', 'nickel'],
electrum: [2, 'gold', 'silver'],
netherite: [1, '4x minecraft:netherite_scrap', '4x gold'],
},
// Industrial age: Alloys require basic grists, gears can only be made with a gear die
industrial: {
steel: [2, '2x iron', '#minecraft:coals'],
uranium: [],
platinum: [],
osmium: [],
signalum: [4, 'silver', '3x copper', '4x minecraft:redstone'],
lumium: [4, 'silver', '3x tin', '2x minecraft:glowstone_dust'],
redium: [4, '4x powder_power:powder_redstone', '2x #forge:dusts/obsidian', '2x #forge:dusts/iron', 'minecraft:blaze_powder'],
lapium: [4, '4x powder_power:powder_lapis', '2x #forge:dusts/gold', '2x #forge:dusts/obsidian', 'powder_power:powder_nether_quartz'],
gemium: [4, '4x #forge:dusts/obsidian', '2x #forge:dusts/diamond', '2x #forge:dusts/emerald', 'powder_power:powder_prismarine'],
trilium: [4, '2x lapium', '2x gemium', '2x redium', 'powder_power:powder_end_pearl']
},
// Modern age: Alloys require improved grist
modern: {
gobber: [3, 'gobber2:gobber2_glob', 'platinum', 'osmium'],
nether_gobber: [3, 'gobber2:gobber2_glob_nether', 'minecraft:netherite_scrap', '2x gobber'],
quadrilium: [3, '3x trilium', '4x minecraft:netherite_scrap', 'powder_power:powder_ghast_tear']
},
// Age of Legends: The end game
legends: {
//enderium: [],
end_gobber: [3, 'gobber2:gobber2_glob_end', '2x nether_gobber', '2x #kubejs:grist/build/improved']
}
};
// Basic rules for all materials
for (const [key, metals] of Object.entries(progression)) {
for (const [metal, ingredients] of Object.entries(metals)) {
let rawType = metalForm(metal, 'raw_materials', 'ore');
let crushedType = Item.of(`create:crushed_raw_${metal}`);
let dustType = metalForm(metal, 'dusts', 'dust');
let nuggetType = metalForm(metal, 'nuggets', 'nugget');
let ingotType = metalForm(metal, 'ingots', 'ingot');
let blockType = metalForm(metal, 'storage_blocks', 'block');
let rawBlockType = metalForm(`raw_${metal}`, 'storage_blocks', 'block');
let plateType = metalForm(metal, 'plates', 'plate');
let gearType = metalForm(metal, 'gears', 'gear');
let rodType = metalForm(metal, 'rods', 'rod');
console.log(`Wiping out stock ore processing for ${metal}...`);
// Wipe out all the stock recipes
event.remove({output: gearType});
event.remove({output: dustType});
event.remove({output: blockType});
event.remove({output: rodType});
event.remove({output: plateType});
event.remove({output: ingotType});
event.remove({output: rawBlockType});
event.remove({output: nuggetType});
event.remove({output: crushedType});
event.remove({input: crushedType});
// All dusts and crushed ores can be smelted to ingots, and made with ore hammers
if (dustType.id != 'minecraft:air') {
event.smelting(ingotType, dustType);
event.shapeless(dustType, [ingotType, '#alltheores:ore_hammers']);
}
// Plates can always be smelted back into their original ingot
if (plateType.id != 'minecraft:air') {
event.smelting(ingotType, plateType);
// 1 plate = 1 ingot in presses
event.recipes.thermal.press(plateType, [ingotType]);
event.recipes.create.pressing([plateType], [ingotType]);
}
// 4 ingots = 1 gear
if (gearType.id != 'minecraft:air') {
event.recipes.thermal.press(gearType, [ingotType.withCount(4), 'thermal:press_gear_die']);
}
// 9 Nuggets == 1 ingot, for every material
if (nuggetType.id != 'minecraft:air') {
event.shapeless(ingotType, [nuggetType.withCount(9)]);
event.shapeless(nuggetType.withCount(9), [ingotType]);
}
// 9 ore = 1 ore block
if (rawType.id != 'minecraft:air') {
event.shapeless(rawBlockType, [rawType.withCount(9)]);
event.shapeless(rawType.withCount(9), [rawBlockType]);
}
// 9 ingots = 1 block
if (blockType.id != 'minecraft:air') {
event.shapeless(blockType, [ingotType.withCount(9)]);
event.shapeless(ingotType.withCount(9), [blockType]);
}
// All alloys can be created in the smelter, or a superheated mixer
if (ingredients.length > 0) {
for (const form of ['ingots', 'dusts']) {
let real_ingredients = [];
for (const ingredient of ingredients.slice(1)) {
let real_item = Item.of(ingredient);
if (real_item.id == 'minecraft:air') {
let parts = ingredient.split(' ');
if (parts.length == 1) {
real_item = metalForm(parts[0], form);
} else {
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
}
}
if (real_item.id == 'minecraft:air') {
console.error(`Unknown or invalid ${metal} alloy ingredient: ${ingredient}`);
}
real_ingredients.push(real_item);
}
if (real_ingredients.length > 0) {
if (real_ingredients.length <= 3) {
event.recipes.thermal.smelter(ingotType.withCount(ingredients[0]), real_ingredients);
} else {
event.recipes.create.mixing(ingotType.withCount(ingredients[0]), real_ingredients).superheated();
}
}
}
}
// TODO: Create saw, 3x3 packing/unpacking dies, mechanical press
}
}
// Primitive tier: Ores can be immediately smelted
for (const [metal, ingredients] of Object.entries(progression.primitive)) {
let ingotType = metalForm(metal, 'ingots', 'ingot');
let rawType = metalForm(metal, 'raw_materials', 'ore');
let rawBlockType = metalForm(`raw_${metal}`, 'storage_blocks', 'block');
let blockType = metalForm(metal, 'storage_blocks', 'block');
console.log(`Building primitive processing for ${metal}...`);
if (rawType.id != 'minecraft:air') {
event.smelting(ingotType, rawType);
event.smelting(blockType, rawBlockType);
} else {
console.error(`No ${metal} smelting available!`);
}
// There are no alloys here to handle...
}
// The progression item is simply creating a copper ore hammer
// Vanilla tier: Ores need an ore hammer, and alloys can be crafted on the crafting table
for (const tier of ['primitive', 'vanilla']) {
for (const [metal, ingredients] of Object.entries(progression[tier])) {
let rawType = metalForm(metal, 'raw_materials', 'ore');
let dustType = metalForm(metal, 'dusts', 'dust');
let ingotType = metalForm(metal, 'ingots', 'ingot');
let rawBlockType = metalForm(`raw_${metal}`, 'storage_blocks', 'block');
console.log(`Building vanilla processing for ${metal}...`);
// Crush raw ore into dust with an ore hammer, in crafting table and in the deployer
if (rawType.id != 'minecraft:air') {
event.shapeless(dustType, [rawType, '#alltheores:ore_hammers']);
event.shapeless(dustType.withCount(9), [rawBlockType, '#alltheores:ore_hammers']);
event.recipes.create.deploying([dustType], [rawType, '#alltheores:ore_hammers']).keepHeldItem();
event.recipes.create.deploying([dustType.withCount(9)], [rawBlockType, '#alltheores:ore_hammers']).keepHeldItem();
} else {
console.error(`No ${metal} ore hammer smashing available!`);
}
// TODO: alloy ingredients
for (const form of ['ingots', 'dusts']) {
let real_ingredients = [];
for (const ingredient of ingredients.slice(1)) {
let real_item = Item.of(ingredient);
if (real_item.id == 'minecraft:air') {
let parts = ingredient.split(' ');
if (parts.length == 1) {
real_item = metalForm(parts[0], form);
} else {
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
}
}
if (real_item.id == 'minecraft:air') {
console.error(`Unknown or invalid ${metal} alloy ingredient: ${ingredient}`);
} else {
real_ingredients.push(real_item);
}
}
if (real_ingredients.length > 0) {
event.shapeless(ingotType.withCount(ingredients[0]), real_ingredients);
}
}
}
}
// Andesite alloy is the progression item, as it unlocks most of the next tier of create
event.shapeless('create:andesite_alloy', [global.dustItem('tin'), '2x minecraft:andesite']);
// Andesite age: Crushing wheels to crush, then the crushed ore is smelted normally. Alloys require the create mixer. Ore washing to double crushed ore is unlocked, but fans require invar instead of iron. Gears can be crafted on a crafting table
for (const tier of ['primitive', 'vanilla', 'andesite']) {
for (const [metal, ingredients] of Object.entries(progression[tier])) {
let rawType = metalForm(metal, 'raw_materials', 'ore');
let crushedType = Item.of(`create:crushed_raw_${metal}`);
let dustType = metalForm(metal, 'dusts', 'dust');
let ingotType = metalForm(metal, 'ingots', 'ingot');
let rawBlockType = metalForm(`raw_${metal}`, 'storage_blocks', 'block');
let gearType = metalForm(metal, 'gears', 'gear');
let plateType = metalForm(metal, 'plates', 'plate');
console.log(`Building andesite processing for ${metal}...`);
if (rawType.id != 'minecraft:air') {
if (crushedType.id != 'minecraft:air') {
event.recipes.create.crushing([crushedType.withCount(2)], rawType);
event.recipes.create.crushing([crushedType.withCount(18)], rawBlockType);
event.recipes.create.milling([crushedType.withCount(2)], rawType);
event.recipes.create.milling([crushedType.withCount(18)], rawBlockType);
event.smelting(ingotType, crushedType);
if (dustType.id != 'minecraft:air') {
event.recipes.create.splashing([dustType.withCount(2)], crushedType);
} else {
console.error(`No ${metal} ore washing available!`);
}
} else {
console.error(`No ${metal} ore crushing available!`);
}
}
if (gearType.id != 'minecraft:air') {
event.shaped(gearType, [
' A ',
'ABA',
' A '
], {
'A': ingotType,
'B': '#forge:gems'
});
} else {
console.error(`No ${metal} gears available!`);
}
if (plateType.id != 'minecraft:air') {
event.shapeless(plateType, [ingotType.withCount(2), '#alltheores:ore_hammers']);
} else {
console.error(`No ${metal} plates available!`);
}
// TODO: alloy ingredients
for (const form of ['ingots', 'dusts']) {
let real_ingredients = [];
for (const ingredient of ingredients.slice(1)) {
let real_item = Item.of(ingredient);
if (real_item.id == 'minecraft:air') {
let parts = ingredient.split(' ');
if (parts.length == 1) {
real_item = metalForm(parts[0], form);
} else {
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
}
}
if (real_item.id == 'minecraft:air') {
console.error(`Unknown or invalid ${metal} alloy ingredient: ${ingredient}`);
}
real_ingredients.push(real_item);
}
if (real_ingredients.length > 0) {
event.recipes.create.mixing(ingotType.withCount(ingredients[0]), real_ingredients).heated();
}
}
}
}
// Most machines from here on out require nickel, so we unlock the pulverizer behind our early alloys
event.replaceInput(
{output: 'thermal:machine_pulverizer'},
'#forge:gears/copper',
global.gearItem('brass')
);
// Mechanical/grist age: Ores require diamond pick, crushed in the pulverizer, and crushed ore is smelted normally. Alloys require blending dusts in a heated mixer, then smelting the blend. 4x ore centrifuge is unlocked after creating a constantan gear on the crafting table. Other gears require the press.
for (const tier of ['primitive', 'vanilla', 'andesite', 'mechanical']) {
for (const [metal, ingredients] of Object.entries(progression[tier])) {
let rawType = metalForm(metal, 'raw_materials', 'ore');
let crushedType = Item.of(`create:crushed_raw_${metal}`);
let dustType = metalForm(metal, 'dusts', 'dust');
let ingotType = metalForm(metal, 'ingots', 'ingot');
console.log(`Building mechanical processing for ${metal}...`);
if (rawType.id != 'minecraft:air') {
if (crushedType.id != 'minecraft:air') {
// Crushed ores are created in the industrial tier code, but mechanical tier and below are the only ones that don't need a centrifuge first
// This allows Nickel to be processed into a constantan gear, which unlocks the centrifuge
event.smelting(ingotType, [crushedType]);
} else {
console.error(`No ${metal} ore pulverizing available! Falling back to dust-based processing line`);
}
}
for (const form of ['dusts']) {
let real_ingredients = [];
for (const ingredient of ingredients.slice(1)) {
let real_item = Item.of(ingredient);
if (real_item.id == 'minecraft:air') {
let parts = ingredient.split(' ');
if (parts.length == 1) {
real_item = metalForm(parts[0], form);
} else {
real_item = metalForm(parts[1], form).withCount(parts[0].split('x')[0]);
}
}
if (real_item.id == 'minecraft:air') {
console.error(`Unknown or invalid ${metal} alloy ingredient: ${ingredient}`);
}
real_ingredients.push(real_item);
}
if (real_ingredients.length > 0) {
event.recipes.create.mixing(dustType.withCount(ingredients[0]), real_ingredients).heated();
}
}
}
}
// Constantan gear is the progression item to get to the industrial tier, as it unlocks the press (and therefore other gears)
// Industrial age: Ores require centrifuging, alloys require basic grists, gears can only be made with a gear die
for (const tier of ['primitive', 'vanilla', 'andesite', 'mechanical', 'industrial']) {
for (const [metal, ingredients] of Object.entries(progression[tier])) {
let rawType = metalForm(metal, 'raw_materials', 'ore');
let crushedType = Item.of(`create:crushed_raw_${metal}`);
let dustType = metalForm(metal, 'dusts', 'dust');
let rawBlockType = metalForm(`raw_${metal}`, 'storage_blocks', 'block');
if (rawType.id != 'minecraft:air') {
if (crushedType.id != 'minecraft:air') {
event.recipes.thermal.pulverizer([crushedType.withCount(4), crushedType.withChance(0.25)], rawType);
event.recipes.thermal.pulverizer([crushedType.withCount(4 * 9), crushedType.withChance(0.25)], rawBlockType);
event.recipes.thermal.centrifuge([dustType.withCount(4), dustType.withChance(0.25)], crushedType);
} else {
console.error(`No ${metal} ore centrifuing available!`);
}
}
}
}
});
function foobar() {
event.shapeless('thermal:quartz_dust', ['8x minecraft:granite', '#alltheores:ore_hammers']).id('kubejs:quartz_dust_from_granit_crushing_manual_only');
event.shapeless('thermal:quartz_dust', ['minecraft:quartz', '#alltheores:ore_hammers']).id('kubejs:quartz_dust_crushing_manual_only');
// All metals can be processed in the pulverizer/crusher, make plates in the press, and make gears with the die
{
let _ = ['copper', 'rose_gold', 'aluminum', 'constantan', 'iron', 'tin', 'nickel', 'gold', 'zinc', 'brass', 'invar', 'bronze', 'silver', 'platinum', 'lead', 'iridium', 'osmium', 'lumium', 'enderium', 'electrum', 'signalum', 'steel', 'uranium'].forEach(metal => {
console.log(`Setting up ${metal} processing...`);
console.log(`Setting up Tier 3 ${metal} processing...`);
let gearType = metalForm(metal, 'gears', 'gear');
let dustType = metalForm(metal, 'dusts', 'dust');
@ -338,4 +771,4 @@ ServerEvents.recipes(event => {
],
experience: 0.5
});
})
}

View File

@ -0,0 +1,13 @@
name = "Global Server Config"
filename = "global-server-config-forge-1.18.2+-1.0.jar"
side = "server"
[download]
url = "https://cdn.modrinth.com/data/c5dOxpD8/versions/19JfFGV6/global-server-config-forge-1.18.2%2B-1.0.jar"
hash-format = "sha512"
hash = "e44154f9c45ea2c59a5626b271704193891d0dd984c19a45aa621f02b4d973f908fdede8a2d68ea5d28e7f275e4f289356d920e3eb1453fb1f4fe38301edfc88"
[update]
[update.modrinth]
mod-id = "c5dOxpD8"
version = "19JfFGV6"

View File

@ -1,13 +0,0 @@
name = "Simple Shops"
filename = "simpleshops-1.2.2.jar"
side = "both"
[download]
hash-format = "sha1"
hash = "8751f9a178b3002e746b2f30af75dd83281821ee"
mode = "metadata:curseforge"
[update]
[update.curseforge]
file-id = 4716851
project-id = 517272

View File

@ -6,7 +6,7 @@ pack-format = "packwiz:1.1.0"
[index]
file = "index.toml"
hash-format = "sha256"
hash = "955732f82d151dcce20ef6d2c69c8de9f4b03c4891f55d37d9bdd45664db9478"
hash = "da6d6ea43ae7fdd0b7e245cb66db652a6c1bd2e2fcb9aa6a919bee9176729a85"
[versions]
forge = "47.4.0"