From a3ae1e6aad696f584d138d9363c05dedff136a65 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Sun, 21 Jun 2026 22:19:17 -0400 Subject: feat: safespot system implemented --- data/objects/fence_post.yaml | 18 ++++++++++++++++++ data/objects/rock_outcrop.yaml | 22 ++++++++++++++++++++++ data/objects/simple_rock.yaml | 18 ++++++++++++++++++ data/objects/tutorial_lever.yaml | 22 ++++++++++++++++++++++ 4 files changed, 80 insertions(+) create mode 100644 data/objects/fence_post.yaml create mode 100644 data/objects/rock_outcrop.yaml create mode 100644 data/objects/simple_rock.yaml create mode 100644 data/objects/tutorial_lever.yaml (limited to 'data/objects') diff --git a/data/objects/fence_post.yaml b/data/objects/fence_post.yaml new file mode 100644 index 0000000..11f6160 --- /dev/null +++ b/data/objects/fence_post.yaml @@ -0,0 +1,18 @@ +id: fence_post +name: fence post +color: "137" +hidden: true +inroom_description: "A sturdy fence post juts from the ground." +description: "A weathered wooden fence post, solid enough to crouch behind." +safespot: + tier: 1 + max_block_size: small + max_occupants: 1 + unsafe_chance: 0.005 + decay_ticks: 0 + decay_chance: 0 + respawn_on_hide: true + respawn_ticks: 0 + levels: + - message: "You crouch behind the fence post, using it as cover." + degrade_message: "" diff --git a/data/objects/rock_outcrop.yaml b/data/objects/rock_outcrop.yaml new file mode 100644 index 0000000..57b71d8 --- /dev/null +++ b/data/objects/rock_outcrop.yaml @@ -0,0 +1,22 @@ +id: rock_outcrop +name: rock outcrop +color: "248" +hidden: true +inroom_description: "A jagged rock outcrop juts from the floor." +description: "A large, jagged rock formation providing natural cover." +safespot: + tier: 1 + max_block_size: large + max_occupants: 3 + unsafe_chance: 0.008 + decay_ticks: 500 + decay_chance: 0.01 + respawn_on_hide: false + respawn_ticks: 300 + levels: + - message: "The rock formation stands solid." + degrade_message: "The rock structure begins crumbling!" + - message: "The rock outcrop is cracked and worn." + degrade_message: "A few jagged bits are all that's left of the rock outcrop!" + - message: "Only a few jagged rocks remain." + degrade_message: "The rock outcrop crumbles to nothing!" diff --git a/data/objects/simple_rock.yaml b/data/objects/simple_rock.yaml new file mode 100644 index 0000000..4c03308 --- /dev/null +++ b/data/objects/simple_rock.yaml @@ -0,0 +1,18 @@ +id: simple_rock +name: rock formation +color: "248" +hidden: true +inroom_description: "A sturdy rock formation juts from the ground." +description: "A solid rock formation, weathered but large enough to crouch behind." +safespot: + tier: 1 + max_block_size: small + max_occupants: 2 + unsafe_chance: 0.002 + decay_ticks: 0 + decay_chance: 0 + respawn_on_hide: true + respawn_ticks: 0 + levels: + - message: "You crouch behind the rock formation, using it as cover." + degrade_message: "" diff --git a/data/objects/tutorial_lever.yaml b/data/objects/tutorial_lever.yaml new file mode 100644 index 0000000..894dd07 --- /dev/null +++ b/data/objects/tutorial_lever.yaml @@ -0,0 +1,22 @@ +id: tutorial_lever +name: stone lever +color: "250" +hidden: true +inroom_description: "A stone lever protrudes from the base of the rock formation." +description: "A weathered stone lever set into a metal bracket. It looks like it can be pulled." +use_interactions: + - condition: + player_flag: unlocked_rock_cover + value: 1 + not: true + message: "You pull the stone lever down. A mechanism clicks into place somewhere in the glade." + action: + set_player_flags: + unlocked_rock_cover: 1 + - condition: + player_flag: unlocked_rock_cover + value: 1 + message: "You push the stone lever back up. The mechanism disengages with a soft clunk." + action: + set_player_flags: + unlocked_rock_cover: 0 -- cgit v1.2.3