diff options
Diffstat (limited to 'data')
| -rw-r--r-- | data/drops/christmas_cracker_hat.yaml | 14 | ||||
| -rw-r--r-- | data/drops/christmas_cracker_misc.yaml | 10 | ||||
| -rw-r--r-- | data/help/actions.yaml | 35 | ||||
| -rw-r--r-- | data/help/left_tinymap.yaml (renamed from data/help/left-tinymap.yaml) | 4 | ||||
| -rw-r--r-- | data/help/queue_actions_silently.yaml | 15 | ||||
| -rw-r--r-- | data/help/queued.yaml | 17 | ||||
| -rw-r--r-- | data/help/search.yaml | 17 | ||||
| -rw-r--r-- | data/help/ticks.yaml | 24 | ||||
| -rw-r--r-- | data/items/birds_nest.yaml | 3 | ||||
| -rw-r--r-- | data/items/bread.yaml | 6 | ||||
| -rw-r--r-- | data/items/christmas_cracker.yaml | 10 | ||||
| -rw-r--r-- | data/items/party_hat_blue.yaml | 7 | ||||
| -rw-r--r-- | data/items/party_hat_green.yaml | 7 | ||||
| -rw-r--r-- | data/items/party_hat_pink.yaml | 7 | ||||
| -rw-r--r-- | data/items/party_hat_red.yaml | 7 | ||||
| -rw-r--r-- | data/items/party_hat_white.yaml | 7 | ||||
| -rw-r--r-- | data/items/party_hat_yellow.yaml | 7 |
17 files changed, 190 insertions, 7 deletions
diff --git a/data/drops/christmas_cracker_hat.yaml b/data/drops/christmas_cracker_hat.yaml new file mode 100644 index 0000000..bb7bde8 --- /dev/null +++ b/data/drops/christmas_cracker_hat.yaml @@ -0,0 +1,14 @@ +id: christmas_cracker_hat +drops: + - item_id: party_hat_blue + weight: 1 + - item_id: party_hat_pink + weight: 1 + - item_id: party_hat_yellow + weight: 1 + - item_id: party_hat_green + weight: 1 + - item_id: party_hat_red + weight: 1 + - item_id: party_hat_white + weight: 1 diff --git a/data/drops/christmas_cracker_misc.yaml b/data/drops/christmas_cracker_misc.yaml new file mode 100644 index 0000000..6ee6979 --- /dev/null +++ b/data/drops/christmas_cracker_misc.yaml @@ -0,0 +1,10 @@ +id: christmas_cracker_misc +drops: + - item_id: ashes + weight: 1 + - item_id: bread + weight: 1 + - item_id: bronze_pickaxe + weight: 1 + - item_id: "" + weight: 3 diff --git a/data/help/actions.yaml b/data/help/actions.yaml new file mode 100644 index 0000000..7a2cbd3 --- /dev/null +++ b/data/help/actions.yaml @@ -0,0 +1,35 @@ +name: "actions" +category: "General" +description: | + The action queue system resolves all gameplay commands on the 600ms game tick + instead of instantly. Commands fall into three classes: + + Instant actions — execute immediately, bypassing the tick queue entirely: + say, score, inventory, equipment, look, exits, help, map, option, + alias, unalias, description, queued + + Free actions — stackable, all execute before active actions: + wear, wield, remove, unwear, unwield, style + You can queue multiple free actions. They execute in the order you typed them. + + Active actions — only the most recent survives: + All other commands (move, attack, mine, chop, fish, cut, use, talk, + pull, push, burn, stoke, get, drop, search, quit) + If you queue two active actions, the newer one replaces the older one. + + Order of execution each tick: + 1. Free actions (per player, in order) + 2. Active actions (globally, sorted by real-time timestamp) + + This means free actions always take effect before active actions, even if + you typed the active one first. For example, "attack goblin" then "style + aggressive" in the same tick means style applies first, then combat starts. + + Conflict resolution: + - If two players attack the same mob on the same tick, the first to + queue the command gets the kill. + - If multiple players successfully harvest a shared-resource object on + the same tick, ALL players get their drops. + - If two players try to pick up the same item, the first queued gets it. + + See also: help queued diff --git a/data/help/left-tinymap.yaml b/data/help/left_tinymap.yaml index 689aa89..6810dd1 100644 --- a/data/help/left-tinymap.yaml +++ b/data/help/left_tinymap.yaml @@ -1,4 +1,4 @@ -name: "left-tinymap" +name: "left_tinymap" category: "Options" description: | Show the mini-map on the left side of room descriptions. @@ -6,6 +6,6 @@ description: | Type: boolean (on/off) Default: off - When both tinymap and left-tinymap are enabled, the + When both tinymap and left_tinymap are enabled, the mini-map appears on the left side of the room description rather than the right. diff --git a/data/help/queue_actions_silently.yaml b/data/help/queue_actions_silently.yaml new file mode 100644 index 0000000..8101c5c --- /dev/null +++ b/data/help/queue_actions_silently.yaml @@ -0,0 +1,15 @@ +name: "queue_actions_silently" +category: "Options" +description: | + Controls whether queued game actions produce confirmation messages. + + When on (default): No message is shown when you queue an action. The action + simply executes on the next game tick without fanfare. + + When off: A brief "You prepare to X." message is shown for each queued + action, confirming that it has been added to the queue. + + Usage: option queue_actions_silently on + option queue_actions_silently off + + See also: help queued, help actions, help option diff --git a/data/help/queued.yaml b/data/help/queued.yaml new file mode 100644 index 0000000..6859b65 --- /dev/null +++ b/data/help/queued.yaml @@ -0,0 +1,17 @@ +name: "queued" +category: "General" +description: | + Shows your pending actions that will execute on the next game tick. + + Usage: queued + + All gameplay actions are resolved once per tick (600ms). Free actions + stack (you can queue several), while active actions replace each other. + Instant actions execute immediately. + + The queued command shows: + - Free actions you've stacked up (e.g. wear, remove, style) + - Your active action that will execute after all free actions + - Your position in the global active action queue (for conflict resolution) + + See also: help actions diff --git a/data/help/search.yaml b/data/help/search.yaml index 42eec52..96bd008 100644 --- a/data/help/search.yaml +++ b/data/help/search.yaml @@ -1,12 +1,19 @@ name: "search" category: "Items" description: | - Search an item in your inventory. + Search a searchable item in your inventory. Usage: search <item> - Example: search nest, search birds nest + Example: search nest, search cracker - Opens a searchable item (currently only bird's nests) and rolls on its - drop table for loot. The item is consumed in the process. Items found - go to inventory or fall to the ground if full. + Searching takes a few game ticks to complete. On each tick, you will + see progress messages until the action finishes and you receive your + reward. If you are interrupted during a search (by combat, movement, + or another action), the item is NOT consumed. + + Currently searchable items: + bird's nest - Credits (various amounts) + christmas cracker - Random party hat + bonus item + + Items found go to inventory or fall to the ground if full. diff --git a/data/help/ticks.yaml b/data/help/ticks.yaml new file mode 100644 index 0000000..fd128c2 --- /dev/null +++ b/data/help/ticks.yaml @@ -0,0 +1,24 @@ +name: "ticks" +category: "General" +description: | + All timed game actions use a tick-based system. Each game tick runs at a + configurable interval (default 600ms). Actions like gathering, combat, and + crafting advance on each tick. + + Fractional ticks allow tool speeds and timers to be non-integer values. + For example, a tool with speed 4.5 has a 50% chance of taking 4 ticks + and a 50% chance of taking 5 ticks per action cycle. The average + converges to 4.5 over many actions. This applies to: + + - Tool speed (gathering, firemaking) + - Weapon speed (combat) + - Production wait timers (use behaviors) + - Search timers + - Depletion and respawn timers + + The game_speed config option scales ALL tick timers proportionally. + A game_speed of 2.0 makes everything resolve twice as fast; 0.5 makes + everything twice as slow. + + Use the "option" command to configure tick-related display settings. + Use "help option" for a list of all player options. diff --git a/data/items/birds_nest.yaml b/data/items/birds_nest.yaml index 674cdaa..844426f 100644 --- a/data/items/birds_nest.yaml +++ b/data/items/birds_nest.yaml @@ -4,3 +4,6 @@ aliases: ["nest", "birds", "bird"] description: "A bird's nest. You can search it for treasure." value: 5 stackable: false +search_table: birds_nest_drop +search_ticks: 3 +search_message: "digging through the bird's nest" diff --git a/data/items/bread.yaml b/data/items/bread.yaml new file mode 100644 index 0000000..f1c64f1 --- /dev/null +++ b/data/items/bread.yaml @@ -0,0 +1,6 @@ +id: bread +name: bread +aliases: ["loaf", "bread"] +description: "A fresh loaf of bread. Smells wonderful." +value: 2 +stackable: false diff --git a/data/items/christmas_cracker.yaml b/data/items/christmas_cracker.yaml new file mode 100644 index 0000000..42dbf26 --- /dev/null +++ b/data/items/christmas_cracker.yaml @@ -0,0 +1,10 @@ +id: christmas_cracker +name: christmas cracker +aliases: ["cracker", "christmas"] +description: "A festive party cracker. Pull it apart to see what's inside!" +value: 10 +stackable: true +search_table: christmas_cracker_hat +search_misc_table: christmas_cracker_misc +search_ticks: 3 +search_message: "digging through the christmas cracker" diff --git a/data/items/party_hat_blue.yaml b/data/items/party_hat_blue.yaml new file mode 100644 index 0000000..81ad988 --- /dev/null +++ b/data/items/party_hat_blue.yaml @@ -0,0 +1,7 @@ +id: party_hat_blue +name: blue party hat +aliases: ["party hat", "blue hat"] +description: "A festive blue party hat." +value: 2 +equip_slot: head +stackable: false diff --git a/data/items/party_hat_green.yaml b/data/items/party_hat_green.yaml new file mode 100644 index 0000000..907da90 --- /dev/null +++ b/data/items/party_hat_green.yaml @@ -0,0 +1,7 @@ +id: party_hat_green +name: green party hat +aliases: ["party hat", "green hat"] +description: "A festive green party hat." +value: 2 +equip_slot: head +stackable: false diff --git a/data/items/party_hat_pink.yaml b/data/items/party_hat_pink.yaml new file mode 100644 index 0000000..accd9a0 --- /dev/null +++ b/data/items/party_hat_pink.yaml @@ -0,0 +1,7 @@ +id: party_hat_pink +name: pink party hat +aliases: ["party hat", "pink hat"] +description: "A festive pink party hat." +value: 2 +equip_slot: head +stackable: false diff --git a/data/items/party_hat_red.yaml b/data/items/party_hat_red.yaml new file mode 100644 index 0000000..911d07b --- /dev/null +++ b/data/items/party_hat_red.yaml @@ -0,0 +1,7 @@ +id: party_hat_red +name: red party hat +aliases: ["party hat", "red hat"] +description: "A festive red party hat." +value: 2 +equip_slot: head +stackable: false diff --git a/data/items/party_hat_white.yaml b/data/items/party_hat_white.yaml new file mode 100644 index 0000000..e4bd555 --- /dev/null +++ b/data/items/party_hat_white.yaml @@ -0,0 +1,7 @@ +id: party_hat_white +name: white party hat +aliases: ["party hat", "white hat"] +description: "A festive white party hat." +value: 2 +equip_slot: head +stackable: false diff --git a/data/items/party_hat_yellow.yaml b/data/items/party_hat_yellow.yaml new file mode 100644 index 0000000..eabd3e8 --- /dev/null +++ b/data/items/party_hat_yellow.yaml @@ -0,0 +1,7 @@ +id: party_hat_yellow +name: yellow party hat +aliases: ["party hat", "yellow hat"] +description: "A festive yellow party hat." +value: 2 +equip_slot: head +stackable: false |
