From fd00f3fae35d5f131cb4875cb14dbb6d20043cfa Mon Sep 17 00:00:00 2001 From: Anuken Date: Thu, 19 Feb 2026 22:52:36 -0500 Subject: [PATCH] New basic frozen forest tutorial --- core/assets/bundles/bundle.properties | 11 ++++++++++- core/assets/maps/serpulo/frozenForest.msav | Bin 10745 -> 12612 bytes core/src/mindustry/game/MapObjectives.java | 4 +--- core/src/mindustry/logic/LExecutor.java | 6 ++++-- .../mindustry/ui/fragments/HintsFragment.java | 5 ----- 5 files changed, 15 insertions(+), 11 deletions(-) diff --git a/core/assets/bundles/bundle.properties b/core/assets/bundles/bundle.properties index dcf02d1837..13c0f6fa3a 100644 --- a/core/assets/bundles/bundle.properties +++ b/core/assets/bundles/bundle.properties @@ -2121,7 +2121,6 @@ hint.payloadPickup.mobile = [accent]Tap and hold[] a small block or unit to pick hint.payloadDrop = Press [accent]][] to drop a payload. hint.payloadDrop.mobile = [accent]Tap and hold[] an empty location to drop a payload there. hint.waveFire = [accent]Wave[] turrets with water as ammunition will automatically put out nearby fires. -hint.generator = :combustion-generator: [accent]Combustion Generators[] burn coal and transmit power to adjacent blocks.\n\nPower transmission range can be extended with :power-node: [accent]Power Nodes[]. hint.guardian = [accent]Guardian[] units are armored. Weak ammo such as [accent]Copper[] and [accent]Lead[] is [scarlet]not effective[].\n\nUse higher tier turrets or :graphite: [accent]Graphite[] :duo:Duo/:salvo:Salvo ammunition to take Guardians down. hint.coreUpgrade = Cores can be upgraded by [accent]placing higher-tier cores over them[].\n\nPlace a :core-foundation: [accent]Foundation[] core over the :core-shard: [accent]Shard[] core. Make sure it is free from nearby obstructions. hint.serpuloCoreZone = Additional :core-shard: [accent]Cores[] may be constructed on :core-zone: [accent]Core Zone[] tiles. @@ -2153,6 +2152,16 @@ gz.zone2 = Anything built in the radius is destroyed when a wave starts. gz.zone3 = A wave will begin now.\nGet ready. gz.finish = Build more turrets, mine more resources,\nand defend against all the waves to [accent]capture the sector[]. +ff.coal = Use :mechanical-drill: [accent]Mechanical Drills[] to mine :ore-coal: [accent]coal[]. +ff.graphitepress = :tree: Research and place a :graphite-press: [accent]Graphite Press[]. +ff.craft = Move :coal: coal into the :graphite-press: [accent]Graphite Press[].\nIt will output :graphite: graphite to all nearby conveyors.\nMove the output :graphite: graphite from the :graphite-press: [accent]Graphite Press[] into the core. +ff.generator = :coal: Coal can also be used as fuel in :combustion-generator: [accent]Combustion Generators[].\nResearch and place a :combustion-generator: [accent]Combustion Generator[]. +ff.coalpower = Input :coal: coal into the generator to produce [accent]:power: power[]. +ff.coalpower.objective = :combustion-generator: Produce Power +ff.node = :power-node: [accent]Power Nodes[] transmit power to nearby blocks in range.\nResearch and place a :power-node: [accent]Power Node[] close to the generator. +ff.battery = :battery: [accent]Batteries[] store power.\nResearch and place a :battery: [accent]Battery[] close to the node. +ff.arc = :arc: [accent]Arc[] turrets require power to function. Research and place an :arc: [accent]Arc[] turret near a power node. + fungalpass.tutorial1 = Use [accent]units[] to defend buildings and attack the enemy.\nResearch and place a :ground-factory: [accent]ground factory[]. fungalpass.tutorial2 = Select :dagger: [accent]Dagger[] units in the factory.\nProduce 3 units. diff --git a/core/assets/maps/serpulo/frozenForest.msav b/core/assets/maps/serpulo/frozenForest.msav index 57b06ee25d02b9744874775c72090d14dea2a7b8..0474a057bfed1a10c11c158e43745a38cef40dbf 100644 GIT binary patch literal 12612 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 NpuE5PWtF_10{~^)Cfoo3 diff --git a/core/src/mindustry/game/MapObjectives.java b/core/src/mindustry/game/MapObjectives.java index 8c1f602754..3ec36d91b5 100644 --- a/core/src/mindustry/game/MapObjectives.java +++ b/core/src/mindustry/game/MapObjectives.java @@ -209,9 +209,7 @@ public class MapObjectives implements Iterable, Eachable unitTimeouts.clear()); } - public static void runLogicScript(String code){ + public static void runLogicScript(@Nullable String code){ runLogicScript(code, 100_000, false); } - public static void runLogicScript(String code, int maxInstructions, boolean loop){ + public static void runLogicScript(@Nullable String code, int maxInstructions, boolean loop){ + if(code == null || code.isEmpty()) return; + LExecutor executor = new LExecutor(); executor.privileged = true; diff --git a/core/src/mindustry/ui/fragments/HintsFragment.java b/core/src/mindustry/ui/fragments/HintsFragment.java index 62110d9a09..1fe9763bb2 100644 --- a/core/src/mindustry/ui/fragments/HintsFragment.java +++ b/core/src/mindustry/ui/fragments/HintsFragment.java @@ -252,11 +252,6 @@ public class HintsFragment{ () -> indexer.getFlagged(state.rules.defaultTeam, BlockFlag.extinguisher).size > 0 ), - generator( - () -> control.input.block == Blocks.combustionGenerator, - () -> ui.hints.placedBlocks.contains(Blocks.combustionGenerator) - ), - rebuildSelect( () -> state.rules.defaultTeam.data().plans.size >= 10, () -> control.input.isRebuildSelecting()