From 67d0539ae8171a4c6ede6d3663d9ea705c5d01cf Mon Sep 17 00:00:00 2001 From: Jika Date: Sat, 13 Sep 2025 12:53:34 +0200 Subject: [PATCH] Add blazemap and storage drawers --- config/blazemap-client.toml | 52 +++++ kubejs/server_scripts/main_server_script.js | 4 +- .../server_scripts/storagedrawers/recipes.js | 66 ++++++ kubejs/server_scripts/storagedrawers/tags.js | 13 ++ pakku-lock.json | 193 ++++++++++++++++++ pakku.json | 12 +- 6 files changed, 337 insertions(+), 3 deletions(-) create mode 100644 config/blazemap-client.toml create mode 100644 kubejs/server_scripts/storagedrawers/recipes.js create mode 100644 kubejs/server_scripts/storagedrawers/tags.js diff --git a/config/blazemap-client.toml b/config/blazemap-client.toml new file mode 100644 index 000000000..25dd627cd --- /dev/null +++ b/config/blazemap-client.toml @@ -0,0 +1,52 @@ +[general] + #Enable debug mode? + enableDebug = false + +#Enable or disable (un)desired features +[clientFeatures] + #Enables current coordinates to render under minimap + displayCoords = true + #Enables markers showing the location of nearby friendly mobs + displayFriendlyMobs = true + #Enables markers showing the location of nearby hostile mobs + displayHostileMobs = true + #Enables markers showing the location of other players + displayOtherPlayers = true + #Enables waypoints to be shown on the map itself + displayWaypointsOnMap = true + #Enables waypoints to be rendered in the world + renderWaypointsInWorld = false + +[worldmap] + #List of disabled Layers, comma separated + activeMap = "cartography:temperature" + #List of disabled Layers, comma separated + disabledLayers = [] + #Zoom level. Must be a power of 2 + #Range: 0.125 ~ 8.0 + zoom = 4.0 + +[minimap] + #List of disabled Layers, comma separated + activeMap = "blazemap:aerial_view" + #List of disabled Layers, comma separated + disabledLayers = [] + #Zoom level. Must be a power of 2 + #Range: 0.5 ~ 8.0 + zoom = 1.0 + #Enable the minimap? + enabled = false + #Minimap horizontal position on screen + #Range: 0 ~ 16000 + positionX = 15 + #Minimap vertical position on screen + #Range: 0 ~ 9000 + positionY = 15 + #Minimap widget width + #Range: 128 ~ 1600 + width = 256 + #Minimap widget height + #Range: 128 ~ 1600 + height = 256 + + diff --git a/kubejs/server_scripts/main_server_script.js b/kubejs/server_scripts/main_server_script.js index 7c4f3709f..76dadd328 100644 --- a/kubejs/server_scripts/main_server_script.js +++ b/kubejs/server_scripts/main_server_script.js @@ -46,6 +46,7 @@ ServerEvents.tags('item', event => { registerSophisticatedBackpacksItemTags(event) registerSoulboundItemTags(event) registeSNSItemTags(event) + registerStorageDrawersItemTags(event) registerSpeciesItemTags(event) registerTACZItemTags(event) registerTFCAmbientalItemTags(event) @@ -259,6 +260,7 @@ ServerEvents.recipes(event => { registerSoulboundRecipes(event) registerSimplylightRecipes(event) registerSNSRecipes(event) + registerStorageDrawersRecipes(event) registerSpeciesRecipes(event) registerTACZRecipes(event) registerTFCRecipes(event) @@ -294,5 +296,3 @@ TaCZServerEvents.gunDataLoad((event) => { TaCZServerEvents.attachmentDataLoad((event) => { attachmentDataLogic(event) }) - - diff --git a/kubejs/server_scripts/storagedrawers/recipes.js b/kubejs/server_scripts/storagedrawers/recipes.js new file mode 100644 index 000000000..0b1eb4876 --- /dev/null +++ b/kubejs/server_scripts/storagedrawers/recipes.js @@ -0,0 +1,66 @@ +// priority: 0 +"use strict"; + +// Storage Drawers recipes and tweaks (TFG style) +// Source inspiration: Gravitas2 KubeJS Storage Drawers section, adapted to TFG gating and tags + +const registerStorageDrawersRecipes = (event) => { + // Removals: standardize variants and clear vanilla upgrades + const woods = [ + 'oak', 'spruce', 'birch', 'jungle', 'acacia', 'dark_oak', 'crimson', 'warped', 'mangrove', 'cherry' + ] + woods.forEach(wood => { + event.remove({ id: new RegExp(`^storagedrawers:${wood}_.*`) }) + }) + event.remove({ id: /^storagedrawers:.*_storage_upgrade/ }) + + // Input replacements: align with TFG materials/tags + // Controller: use stone tag and gate with GTCEu LV circuit + event.replaceInput({ id: 'storagedrawers:controller' }, 'minecraft:stone', '#forge:stone') + event.replaceInput({ id: 'storagedrawers:controller' }, 'minecraft:diamond', '#gtceu:circuits/lv') + + // Controller Slave: use stone tag and vanilla repeater instead of gold ingot + event.replaceInput({ id: 'storagedrawers:controller_slave' }, 'minecraft:stone', '#forge:stone') + event.replaceInput({ id: 'storagedrawers:controller_slave' }, 'minecraft:gold_ingot', 'minecraft:repeater') + + // Compacting Drawers: enforce proper inputs and use stone tag + event.replaceInput({ id: 'storagedrawers:compacting_drawers_2' }, 'minecraft:stone', '#forge:stone') + event.replaceInput({ id: 'storagedrawers:compacting_drawers_2' }, '#storagedrawers:full_drawers', '#storagedrawers:full_drawers') + event.replaceInput({ id: 'storagedrawers:compacting_drawers_2' }, '#storagedrawers:drawers', '#storagedrawers:drawers') + + event.replaceInput({ id: 'storagedrawers:compacting_drawers_3' }, 'minecraft:stone', '#forge:stone') + event.replaceInput({ id: 'storagedrawers:compacting_drawers_3' }, '#storagedrawers:full_drawers', '#storagedrawers:full_drawers') + event.replaceInput({ id: 'storagedrawers:compacting_drawers_3' }, '#storagedrawers:drawers', '#storagedrawers:drawers') + + // Additions: gated upgrade recipes (TFG balance, tag-based) + event.shapeless('storagedrawers:one_stack_upgrade', [ + '2x #tfc:rock_knapping', + 'storagedrawers:upgrade_template' + ]) + + event.shapeless('storagedrawers:obsidian_storage_upgrade', [ + '#forge:obsidian', + 'storagedrawers:upgrade_template' + ]) + + event.shapeless('storagedrawers:iron_storage_upgrade', [ + '#forge:plates/iron', + 'storagedrawers:upgrade_template' + ]) + + event.shapeless('storagedrawers:gold_storage_upgrade', [ + '2x #forge:plates/steel', + 'storagedrawers:upgrade_template' + ]) + + event.shapeless('storagedrawers:diamond_storage_upgrade', [ + '#forge:gems/diamond', + 'storagedrawers:upgrade_template' + ]) + + event.shapeless('storagedrawers:emerald_storage_upgrade', [ + '#forge:gems/emerald', + 'storagedrawers:upgrade_template' + ]) +} + diff --git a/kubejs/server_scripts/storagedrawers/tags.js b/kubejs/server_scripts/storagedrawers/tags.js new file mode 100644 index 000000000..fe23bc9f9 --- /dev/null +++ b/kubejs/server_scripts/storagedrawers/tags.js @@ -0,0 +1,13 @@ +// priority: 0 +"use strict"; + +// Storage Drawers tags (TFG style): prefer tag-driven visibility control +// We mark bulk variants as hidden for recipe viewers via the common tag. + +const registerStorageDrawersItemTags = (event) => { + // Hide decorative and bulk variant items from recipe viewers + event.add('c:hidden_from_recipe_viewers', '#storagedrawers:trim') + event.add('c:hidden_from_recipe_viewers', '#storagedrawers:full_drawers') + event.add('c:hidden_from_recipe_viewers', '#storagedrawers:half_drawers') +} + diff --git a/pakku-lock.json b/pakku-lock.json index aadbb9bc0..cac9da7ee 100644 --- a/pakku-lock.json +++ b/pakku-lock.json @@ -2096,6 +2096,68 @@ } ] }, + { + "pakku_id": "G91XCwpUspgkWSiW", + "type": "MOD", + "side": "CLIENT", + "slug": { + "curseforge": "blaze-map", + "modrinth": "blaze-map" + }, + "name": { + "curseforge": "Blaze Map", + "modrinth": "Blaze Map" + }, + "id": { + "curseforge": "626527", + "modrinth": "wvrSctdB" + }, + "files": [ + { + "type": "curseforge", + "file_name": "BlazeMap-1.20.1-0.7.5-beta.jar", + "mc_versions": [ + "1.20.1" + ], + "loaders": [ + "forge" + ], + "release_type": "beta", + "url": "https://edge.forgecdn.net/files/6132/384/BlazeMap-1.20.1-0.7.5-beta.jar", + "id": "6132384", + "parent_id": "626527", + "hashes": { + "sha1": "767e56f825ce65b6f3687644571caeba791d7976", + "md5": "897d8664fe702024329ad8482eb7a7d4" + }, + "required_dependencies": [], + "size": 536349, + "date_published": "2025-01-28T01:33:54.610Z" + }, + { + "type": "modrinth", + "file_name": "BlazeMap-1.20.1-0.7.5-beta.jar", + "mc_versions": [ + "1.20", + "1.20.1" + ], + "loaders": [ + "forge" + ], + "release_type": "beta", + "url": "https://cdn.modrinth.com/data/wvrSctdB/versions/DgisUYf4/BlazeMap-1.20.1-0.7.5-beta.jar", + "id": "DgisUYf4", + "parent_id": "wvrSctdB", + "hashes": { + "sha512": "0386bd902048df611fdc9d6e91967f2164aceb77023d7fa6c5774569d60a5932d9e237920a7190e0c3f0a359dec1efe33e5db4531f081ea70a8ff207e3a9be3c", + "sha1": "2b82f227335fb0e82d7eefc3f1b154ebc6395566" + }, + "required_dependencies": [], + "size": 536350, + "date_published": "2025-01-28T07:02:35.844419Z" + } + ] + }, { "pakku_id": "Yr24iolwXV9aFEWV", "type": "MOD", @@ -2490,6 +2552,74 @@ } ] }, + { + "pakku_id": "bQ91rMaO429FzDpn", + "pakku_links": [ + "64uacGcEw697jVGs", + "G91XCwpUspgkWSiW" + ], + "type": "MOD", + "side": "BOTH", + "slug": { + "curseforge": "cartography", + "modrinth": "cartography" + }, + "name": { + "curseforge": "Cartography", + "modrinth": "Cartography" + }, + "id": { + "curseforge": "520973", + "modrinth": "pZTaJC6r" + }, + "files": [ + { + "type": "curseforge", + "file_name": "Cartography-1.20.1-0.5.3-beta.jar", + "mc_versions": [ + "1.20.1" + ], + "loaders": [ + "forge" + ], + "release_type": "beta", + "url": "https://edge.forgecdn.net/files/6187/917/Cartography-1.20.1-0.5.3-beta.jar", + "id": "6187917", + "parent_id": "520973", + "hashes": { + "sha1": "0e9ddf2dfe4a1599ff0268cd1736965f1fb41e87", + "md5": "15c75c6e8b59f3e73f93dbad8135416d" + }, + "required_dependencies": [], + "size": 209367, + "date_published": "2025-02-13T04:24:42.607Z" + }, + { + "type": "modrinth", + "file_name": "Cartography-1.20.1-0.5.3-beta.jar", + "mc_versions": [ + "1.20.1" + ], + "loaders": [ + "forge" + ], + "release_type": "beta", + "url": "https://cdn.modrinth.com/data/pZTaJC6r/versions/TAfrBDM6/Cartography-1.20.1-0.5.3-beta.jar", + "id": "TAfrBDM6", + "parent_id": "pZTaJC6r", + "hashes": { + "sha512": "f0df0c560bcb5bed7bc8d0bb6a78c3ae155d2934900e80ea8bc0a4bd0fac9226787aa2306ed514bc6272e85e9281dc8569bdc043efe878a05eeb7470e226b924", + "sha1": "0e9ddf2dfe4a1599ff0268cd1736965f1fb41e87" + }, + "required_dependencies": [ + "JaCEZUhg", + "wvrSctdB" + ], + "size": 209367, + "date_published": "2025-02-13T04:41:40.286636Z" + } + ] + }, { "pakku_id": "jZhf9WEWkObAHuVp", "type": "MOD", @@ -12343,6 +12473,69 @@ } ] }, + { + "pakku_id": "QSe8kYfybQyHIWKA", + "type": "MOD", + "side": "BOTH", + "slug": { + "curseforge": "storage-drawers", + "modrinth": "storagedrawers" + }, + "name": { + "curseforge": "Storage Drawers", + "modrinth": "Storage Drawers" + }, + "id": { + "curseforge": "223852", + "modrinth": "guitPqEi" + }, + "files": [ + { + "type": "curseforge", + "file_name": "StorageDrawers-forge-1.20.1-12.14.2.jar", + "mc_versions": [ + "1.20.1" + ], + "loaders": [ + "neoforge", + "forge" + ], + "release_type": "release", + "url": "https://edge.forgecdn.net/files/6967/725/StorageDrawers-forge-1.20.1-12.14.2.jar", + "id": "6967725", + "parent_id": "223852", + "hashes": { + "sha1": "4dd3bbb083a8e72db6f00fd6877154a3cd8ccaa2", + "md5": "07ff53b4252ea6e9a6b5ae5c68950d74" + }, + "required_dependencies": [], + "size": 1141013, + "date_published": "2025-09-06T02:29:36.850Z" + }, + { + "type": "modrinth", + "file_name": "StorageDrawers-forge-1.20.1-12.14.2.jar", + "mc_versions": [ + "1.20.1" + ], + "loaders": [ + "forge", + "neoforge" + ], + "release_type": "release", + "url": "https://cdn.modrinth.com/data/guitPqEi/versions/Sgx1BHRO/StorageDrawers-forge-1.20.1-12.14.2.jar", + "id": "Sgx1BHRO", + "parent_id": "guitPqEi", + "hashes": { + "sha512": "8521408ef1bcf5071b2bfbc621ac4a5a14cd800de166ed1b0c80dc12ef05f1d71c34677f97ef4215ebc3a46c8fc60fb357332f10580d7bf90d8cd4aa104c92bb", + "sha1": "44f287bfd45cd0ff3d7cb7b745bb8a50119a9a9e" + }, + "required_dependencies": [], + "size": 1141013, + "date_published": "2025-09-06T02:29:46.621820Z" + } + ] + }, { "pakku_id": "H40iluU8Vao2XSgS", "type": "MOD", diff --git a/pakku.json b/pakku.json index d057b63e6..72208fb01 100644 --- a/pakku.json +++ b/pakku.json @@ -19,6 +19,7 @@ "server.properties", "server_starter.conf", "server-icon.png", + "start_server.sh", "start_server.bat", "README.md" ], @@ -289,6 +290,15 @@ "probejs": { "side": "CLIENT", "export": false + }, + "storaged-rawers": { + "side": "BOTH" + }, + "blaze-map": { + "side": "BOTH" + }, + "cartography": { + "side": "BOTH" } } -} \ No newline at end of file +}