From 9eb5ab1818b6b19501fd7209db1987c9e06cc919 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Tue, 9 Jun 2026 05:59:20 -0400 Subject: first commit --- data/help/attack.yaml | 9 +++++++++ data/help/combat.yaml | 11 +++++++++++ data/help/drop.yaml | 9 +++++++++ data/help/equipment.yaml | 8 ++++++++ data/help/get.yaml | 10 ++++++++++ data/help/inventory.yaml | 8 ++++++++ data/help/look.yaml | 9 +++++++++ data/help/movement.yaml | 9 +++++++++ data/help/quit.yaml | 8 ++++++++ data/help/say.yaml | 8 ++++++++ data/help/score.yaml | 8 ++++++++ data/help/style.yaml | 13 +++++++++++++ data/items/bones.yaml | 6 ++++++ data/items/bronze_pickaxe.yaml | 7 +++++++ data/items/bronze_sword.yaml | 13 +++++++++++++ data/items/copper_ore.yaml | 6 ++++++ data/items/credits.yaml | 6 ++++++ data/items/oak_logs.yaml | 6 ++++++ data/items/tin_ore.yaml | 6 ++++++ data/mobs/man.yaml | 18 ++++++++++++++++++ data/objects/copper_rock_1.yaml | 8 ++++++++ data/objects/copper_rock_2.yaml | 8 ++++++++ data/objects/lumby_fountain.yaml | 5 +++++ data/objects/oak_tree_1.yaml | 8 ++++++++ data/objects/oak_tree_2.yaml | 8 ++++++++ data/objects/oak_tree_3.yaml | 8 ++++++++ data/players/accounts/Default.yaml | 4 ++++ data/players/characters/Default.yaml | 29 +++++++++++++++++++++++++++++ data/rooms/1.yaml | 16 ++++++++++++++++ data/rooms/2.yaml | 8 ++++++++ data/rooms/3.yaml | 6 ++++++ data/rooms/4.yaml | 13 +++++++++++++ data/rooms/5.yaml | 9 +++++++++ data/rooms/6.yaml | 16 ++++++++++++++++ 34 files changed, 324 insertions(+) create mode 100644 data/help/attack.yaml create mode 100644 data/help/combat.yaml create mode 100644 data/help/drop.yaml create mode 100644 data/help/equipment.yaml create mode 100644 data/help/get.yaml create mode 100644 data/help/inventory.yaml create mode 100644 data/help/look.yaml create mode 100644 data/help/movement.yaml create mode 100644 data/help/quit.yaml create mode 100644 data/help/say.yaml create mode 100644 data/help/score.yaml create mode 100644 data/help/style.yaml create mode 100644 data/items/bones.yaml create mode 100644 data/items/bronze_pickaxe.yaml create mode 100644 data/items/bronze_sword.yaml create mode 100644 data/items/copper_ore.yaml create mode 100644 data/items/credits.yaml create mode 100644 data/items/oak_logs.yaml create mode 100644 data/items/tin_ore.yaml create mode 100644 data/mobs/man.yaml create mode 100644 data/objects/copper_rock_1.yaml create mode 100644 data/objects/copper_rock_2.yaml create mode 100644 data/objects/lumby_fountain.yaml create mode 100644 data/objects/oak_tree_1.yaml create mode 100644 data/objects/oak_tree_2.yaml create mode 100644 data/objects/oak_tree_3.yaml create mode 100644 data/players/accounts/Default.yaml create mode 100644 data/players/characters/Default.yaml create mode 100644 data/rooms/1.yaml create mode 100644 data/rooms/2.yaml create mode 100644 data/rooms/3.yaml create mode 100644 data/rooms/4.yaml create mode 100644 data/rooms/5.yaml create mode 100644 data/rooms/6.yaml (limited to 'data') diff --git a/data/help/attack.yaml b/data/help/attack.yaml new file mode 100644 index 0000000..5c9f7a2 --- /dev/null +++ b/data/help/attack.yaml @@ -0,0 +1,9 @@ +name: "attack" +category: "Combat" +description: | + Attack a mob in the current room. + + Usage: attack , kill , fight + + Enter combat with the named mob. Attacks occur at weapon speed on the + 600ms tick. Use "style" to change combat style before attacking. diff --git a/data/help/combat.yaml b/data/help/combat.yaml new file mode 100644 index 0000000..c8a2b16 --- /dev/null +++ b/data/help/combat.yaml @@ -0,0 +1,11 @@ +name: "combat" +category: "Combat" +description: | + Combat basics. + + Combat in Third Collapse follows Runescape Classic mechanics: + - 600ms tick engine with per-weapon attack speeds + - Attack, Strength, and Defense rolls determine hit/miss + - Combat triangle: Melee > Ranged > Technology > Melee + - 4 XP per point of damage, distributed by combat style + - Movement interrupts combat immediately diff --git a/data/help/drop.yaml b/data/help/drop.yaml new file mode 100644 index 0000000..b4e1a95 --- /dev/null +++ b/data/help/drop.yaml @@ -0,0 +1,9 @@ +name: "drop" +category: "Items" +description: | + Drop an item from your inventory. + + Usage: drop + + Drops one unit of the named item onto the ground in your current room. + Other players can then pick it up. diff --git a/data/help/equipment.yaml b/data/help/equipment.yaml new file mode 100644 index 0000000..b2224a4 --- /dev/null +++ b/data/help/equipment.yaml @@ -0,0 +1,8 @@ +name: "equipment" +category: "Items" +description: | + View your equipped items. + + Usage: equipment, eq + + Shows what you have equipped in each slot (main hand, head, torso, etc.). diff --git a/data/help/get.yaml b/data/help/get.yaml new file mode 100644 index 0000000..abd416e --- /dev/null +++ b/data/help/get.yaml @@ -0,0 +1,10 @@ +name: "get" +category: "Items" +description: | + Pick up an item from the ground. + + Usage: get , take , grab , pick + get all, take all + + "get all" picks up everything on the ground. Credits are automatically + added to your credit balance and never take inventory space. diff --git a/data/help/inventory.yaml b/data/help/inventory.yaml new file mode 100644 index 0000000..7a60650 --- /dev/null +++ b/data/help/inventory.yaml @@ -0,0 +1,8 @@ +name: "inventory" +category: "Items" +description: | + View your inventory and equipped items. + + Usage: inventory, i, inv + + Shows all 28 inventory slots and any equipped items. diff --git a/data/help/look.yaml b/data/help/look.yaml new file mode 100644 index 0000000..30b1d27 --- /dev/null +++ b/data/help/look.yaml @@ -0,0 +1,9 @@ +name: "look" +category: "Exploration" +description: | + Look around the current room. + + Usage: look, l + + Shows the room name, description, exits, objects, mobs, other players, + and items on the ground. diff --git a/data/help/movement.yaml b/data/help/movement.yaml new file mode 100644 index 0000000..d40f192 --- /dev/null +++ b/data/help/movement.yaml @@ -0,0 +1,9 @@ +name: "movement" +category: "Exploration" +description: | + Move between rooms. + + Usage: north, south, east, west, up, down + Aliases: n, s, e, w, u, d + + Movement is instant. Combat is interrupted if you leave the room. diff --git a/data/help/quit.yaml b/data/help/quit.yaml new file mode 100644 index 0000000..286281a --- /dev/null +++ b/data/help/quit.yaml @@ -0,0 +1,8 @@ +name: "quit" +category: "Character" +description: | + Quit the game and disconnect. + + Usage: quit + + Saves your character and closes the connection. diff --git a/data/help/say.yaml b/data/help/say.yaml new file mode 100644 index 0000000..e3706d9 --- /dev/null +++ b/data/help/say.yaml @@ -0,0 +1,8 @@ +name: "say" +category: "Communication" +description: | + Speak to other players in the same room. + + Usage: say + + Everyone in your current room hears what you say. diff --git a/data/help/score.yaml b/data/help/score.yaml new file mode 100644 index 0000000..9607a9c --- /dev/null +++ b/data/help/score.yaml @@ -0,0 +1,8 @@ +name: "score" +category: "Character" +description: | + View your character's stats and skills. + + Usage: score, sc, / + + Shows your name, combat level, HP, credits, skill levels, and XP. diff --git a/data/help/style.yaml b/data/help/style.yaml new file mode 100644 index 0000000..3016013 --- /dev/null +++ b/data/help/style.yaml @@ -0,0 +1,13 @@ +name: "style" +category: "Combat" +description: | + View or change your combat style. + + Usage: style, style + + Accurate - +3 attack bonus, trains Attack (75%) and Hitpoints (25%) + Aggressive - +3 strength bonus, trains Strength (75%) and Hitpoints (25%) + Defensive - +3 defense bonus, trains Defense (75%) and Hitpoints (25%) + Balanced - +1 all bonuses, trains all combat skills evenly (25% each) + + XP is awarded per hit: 4 XP per point of damage. diff --git a/data/items/bones.yaml b/data/items/bones.yaml new file mode 100644 index 0000000..de868a0 --- /dev/null +++ b/data/items/bones.yaml @@ -0,0 +1,6 @@ +id: "bones" +name: "bones" +aliases: ["bone"] +description: "A pile of bones." +value: 2 +stackable: false diff --git a/data/items/bronze_pickaxe.yaml b/data/items/bronze_pickaxe.yaml new file mode 100644 index 0000000..a64395e --- /dev/null +++ b/data/items/bronze_pickaxe.yaml @@ -0,0 +1,7 @@ +id: "bronze_pickaxe" +name: "bronze pickaxe" +aliases: ["pickaxe", "pick", "bronze"] +description: "A basic bronze pickaxe for mining." +value: 8 +stackable: false +toolbelt: true diff --git a/data/items/bronze_sword.yaml b/data/items/bronze_sword.yaml new file mode 100644 index 0000000..e8ba217 --- /dev/null +++ b/data/items/bronze_sword.yaml @@ -0,0 +1,13 @@ +id: "bronze_sword" +name: "bronze sword" +aliases: ["sword", "bronze"] +description: "A basic bronze short sword." +value: 12 +stackable: false +equip_slot: "main_hand" +weapon_type: "melee" +stats: + attack_bonus: 4 + strength_bonus: 3 + defense_bonus: 0 +speed: 4 diff --git a/data/items/copper_ore.yaml b/data/items/copper_ore.yaml new file mode 100644 index 0000000..5f11316 --- /dev/null +++ b/data/items/copper_ore.yaml @@ -0,0 +1,6 @@ +id: "copper_ore" +name: "copper ore" +aliases: ["copper", "ore"] +description: "A chunk of copper ore." +value: 3 +stackable: false diff --git a/data/items/credits.yaml b/data/items/credits.yaml new file mode 100644 index 0000000..80c109e --- /dev/null +++ b/data/items/credits.yaml @@ -0,0 +1,6 @@ +id: "credits" +name: "credits" +aliases: ["credit", "creds"] +description: "A handful of universal credits." +value: 1 +stackable: true diff --git a/data/items/oak_logs.yaml b/data/items/oak_logs.yaml new file mode 100644 index 0000000..24cd0d0 --- /dev/null +++ b/data/items/oak_logs.yaml @@ -0,0 +1,6 @@ +id: "oak_logs" +name: "oak logs" +aliases: ["logs", "oak", "log"] +description: "Some sturdy oak logs." +value: 4 +stackable: false diff --git a/data/items/tin_ore.yaml b/data/items/tin_ore.yaml new file mode 100644 index 0000000..62a55b4 --- /dev/null +++ b/data/items/tin_ore.yaml @@ -0,0 +1,6 @@ +id: "tin_ore" +name: "tin ore" +aliases: ["tin", "ore"] +description: "A chunk of tin ore." +value: 2 +stackable: false diff --git a/data/mobs/man.yaml b/data/mobs/man.yaml new file mode 100644 index 0000000..074e1f9 --- /dev/null +++ b/data/mobs/man.yaml @@ -0,0 +1,18 @@ +id: "man" +name: "man" +attack: 1 +strength: 1 +defense: 1 +hp: 7 +speed: 5 +aggressive: false +respawn_ticks: 30 +drops: + remains: "bones" + loot: + - item_id: "credits" + weight: 98 + quantity: 10 + - item_id: "credits" + weight: 2 + quantity: 150 diff --git a/data/objects/copper_rock_1.yaml b/data/objects/copper_rock_1.yaml new file mode 100644 index 0000000..257601a --- /dev/null +++ b/data/objects/copper_rock_1.yaml @@ -0,0 +1,8 @@ +id: "copper_rock_1" +name: "copper rock" +behavior: "rock" +props: + skill: "mining" + level: 1 + yields: "copper_ore" + respawn_ticks: 30 diff --git a/data/objects/copper_rock_2.yaml b/data/objects/copper_rock_2.yaml new file mode 100644 index 0000000..5805398 --- /dev/null +++ b/data/objects/copper_rock_2.yaml @@ -0,0 +1,8 @@ +id: "copper_rock_2" +name: "copper rock" +behavior: "rock" +props: + skill: "mining" + level: 1 + yields: "copper_ore" + respawn_ticks: 30 diff --git a/data/objects/lumby_fountain.yaml b/data/objects/lumby_fountain.yaml new file mode 100644 index 0000000..4d877c1 --- /dev/null +++ b/data/objects/lumby_fountain.yaml @@ -0,0 +1,5 @@ +id: "lumby_fountain" +name: "town fountain" +behavior: "none" +props: + description: "Clear water sparkles in the sunlight." diff --git a/data/objects/oak_tree_1.yaml b/data/objects/oak_tree_1.yaml new file mode 100644 index 0000000..a7eb331 --- /dev/null +++ b/data/objects/oak_tree_1.yaml @@ -0,0 +1,8 @@ +id: "oak_tree_1" +name: "oak tree" +behavior: "tree" +props: + skill: "woodcutting" + level: 15 + yields: "oak_logs" + respawn_ticks: 50 diff --git a/data/objects/oak_tree_2.yaml b/data/objects/oak_tree_2.yaml new file mode 100644 index 0000000..7f9f9a4 --- /dev/null +++ b/data/objects/oak_tree_2.yaml @@ -0,0 +1,8 @@ +id: "oak_tree_2" +name: "oak tree" +behavior: "tree" +props: + skill: "woodcutting" + level: 15 + yields: "oak_logs" + respawn_ticks: 50 diff --git a/data/objects/oak_tree_3.yaml b/data/objects/oak_tree_3.yaml new file mode 100644 index 0000000..ac40380 --- /dev/null +++ b/data/objects/oak_tree_3.yaml @@ -0,0 +1,8 @@ +id: "oak_tree_3" +name: "oak tree" +behavior: "tree" +props: + skill: "woodcutting" + level: 15 + yields: "oak_logs" + respawn_ticks: 50 diff --git a/data/players/accounts/Default.yaml b/data/players/accounts/Default.yaml new file mode 100644 index 0000000..32ae393 --- /dev/null +++ b/data/players/accounts/Default.yaml @@ -0,0 +1,4 @@ +name: Default +password_hash: sha256:mfnZDVUFEvzM4AUQ4Kgnrw:f82f8f7fa0dbb1238bf41d6dc63c30b2fbf67a4cebcdbbaba3572422545e2fe3 +characters: + - Default diff --git a/data/players/characters/Default.yaml b/data/players/characters/Default.yaml new file mode 100644 index 0000000..83142ea --- /dev/null +++ b/data/players/characters/Default.yaml @@ -0,0 +1,29 @@ +name: Default +skills: + agility: 0 + alchemy: 0 + attack: 0 + construction: 0 + cooking: 0 + crafting: 0 + defense: 0 + fishing: 0 + fletching: 0 + hitpoints: 1154 + hunter: 0 + mining: 0 + ranged: 0 + scavenging: 0 + science: 0 + smithing: 0 + strength: 0 + technology: 0 + thieving: 0 + woodcutting: 0 +inventory: {} +equipment: {} +toolbelt: [] +room_id: 1 +hp: 10 +credits: 0 +attack_style: accurate diff --git a/data/rooms/1.yaml b/data/rooms/1.yaml new file mode 100644 index 0000000..7d1f7c5 --- /dev/null +++ b/data/rooms/1.yaml @@ -0,0 +1,16 @@ +id: 1 +name: "Lumbridge Town Square" +description: "A bustling town square in the heart of Lumbridge. Cobblestone paths lead in all directions. A fountain gurgles peacefully in the center." +map_symbol: "S" +exits: + north: 2 + east: 3 +objects: + - "lumby_fountain" +spawns: + - item_id: "copper_ore" + quantity: 1 + respawn_ticks: 10 +mobs: + - "man" + - "man" diff --git a/data/rooms/2.yaml b/data/rooms/2.yaml new file mode 100644 index 0000000..4b1b5f8 --- /dev/null +++ b/data/rooms/2.yaml @@ -0,0 +1,8 @@ +id: 2 +name: "North Lumbridge Road" +description: "A dusty road leading north out of town. To the south you see the town square. A small mine entrance is carved into a hillside to the west." +map_symbol: "R" +exits: + south: 1 + north: 4 + west: 6 diff --git a/data/rooms/3.yaml b/data/rooms/3.yaml new file mode 100644 index 0000000..57a7cb1 --- /dev/null +++ b/data/rooms/3.yaml @@ -0,0 +1,6 @@ +id: 3 +name: "Lumbridge General Store" +description: "A small but well-stocked general store. Shelves line the walls with various goods." +map_symbol: "G" +exits: + west: 1 diff --git a/data/rooms/4.yaml b/data/rooms/4.yaml new file mode 100644 index 0000000..ab25de1 --- /dev/null +++ b/data/rooms/4.yaml @@ -0,0 +1,13 @@ +id: 4 +name: "Lumbridge Forest Edge" +description: "The road ends here at the edge of a dark forest. Towering oak trees loom ahead to the north." +map_symbol: "F" +exits: + south: 2 + north: 5 +objects: + - "oak_tree_1" +spawns: + - item_id: "oak_logs" + quantity: 1 + respawn_ticks: 10 diff --git a/data/rooms/5.yaml b/data/rooms/5.yaml new file mode 100644 index 0000000..097a134 --- /dev/null +++ b/data/rooms/5.yaml @@ -0,0 +1,9 @@ +id: 5 +name: "Deep Forest" +description: "Thick trees surround you on all sides. Shafts of light pierce through the canopy above." +map_symbol: "T" +exits: + south: 4 +objects: + - "oak_tree_2" + - "oak_tree_3" diff --git a/data/rooms/6.yaml b/data/rooms/6.yaml new file mode 100644 index 0000000..7b5d4b4 --- /dev/null +++ b/data/rooms/6.yaml @@ -0,0 +1,16 @@ +id: 6 +name: "Abandoned Mine" +description: "A dark, dusty mine shaft. Veins of copper and tin run through the walls. A single lantern flickers overhead." +map_symbol: "M" +exits: + west: 2 +objects: + - "copper_rock_1" + - "copper_rock_2" +spawns: + - item_id: "copper_ore" + quantity: 1 + respawn_ticks: 10 + - item_id: "tin_ore" + quantity: 1 + respawn_ticks: 10 -- cgit v1.2.3