Added trading and quests, checkpoint push
This commit is contained in:
@@ -13,7 +13,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"rusty_nails": {
|
||||
"name": {
|
||||
@@ -28,7 +29,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"wood_planks": {
|
||||
"name": {
|
||||
@@ -43,7 +45,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"cloth_scraps": {
|
||||
"name": {
|
||||
@@ -58,7 +61,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"cloth": {
|
||||
"name": {
|
||||
@@ -86,7 +90,8 @@
|
||||
"item_id": "knife",
|
||||
"durability_cost": 1
|
||||
}
|
||||
]
|
||||
],
|
||||
"value": 10
|
||||
},
|
||||
"plastic_bottles": {
|
||||
"name": {
|
||||
@@ -101,7 +106,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"bone": {
|
||||
"name": {
|
||||
@@ -116,7 +122,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"raw_meat": {
|
||||
"name": {
|
||||
@@ -131,7 +138,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"animal_hide": {
|
||||
"name": {
|
||||
@@ -146,7 +154,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"mutant_tissue": {
|
||||
"name": {
|
||||
@@ -161,7 +170,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"infected_tissue": {
|
||||
"name": {
|
||||
@@ -176,7 +186,8 @@
|
||||
"description": {
|
||||
"en": "A raw material used for crafting and upgrades.",
|
||||
"es": "Un material bruto utilizado para la fabricación y las mejoras."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"stale_chocolate_bar": {
|
||||
"name": {
|
||||
@@ -192,7 +203,8 @@
|
||||
"description": {
|
||||
"en": "Can be consumed to restore health or stamina.",
|
||||
"es": "Se puede consumir para restaurar salud o stamina."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"canned_beans": {
|
||||
"name": {
|
||||
@@ -209,7 +221,8 @@
|
||||
"description": {
|
||||
"en": "Can be consumed to restore health or stamina.",
|
||||
"es": "Se puede consumir para restaurar salud o stamina."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"canned_food": {
|
||||
"name": {
|
||||
@@ -226,7 +239,8 @@
|
||||
"description": {
|
||||
"en": "Can be consumed to restore health or stamina.",
|
||||
"es": "Se puede consumir para restaurar salud o stamina."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"bottled_water": {
|
||||
"name": {
|
||||
@@ -242,7 +256,8 @@
|
||||
"description": {
|
||||
"en": "Can be consumed to restore health or stamina.",
|
||||
"es": "Se puede consumir para restaurar salud o stamina."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"water_bottle": {
|
||||
"name": {
|
||||
@@ -258,7 +273,8 @@
|
||||
"description": {
|
||||
"en": "Can be consumed to restore health or stamina.",
|
||||
"es": "Se puede consumir para restaurar salud o stamina."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"energy_bar": {
|
||||
"name": {
|
||||
@@ -274,7 +290,8 @@
|
||||
"description": {
|
||||
"en": "Can be consumed to restore health or stamina.",
|
||||
"es": "Se puede consumir para restaurar salud o stamina."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"mystery_pills": {
|
||||
"name": {
|
||||
@@ -290,7 +307,8 @@
|
||||
"description": {
|
||||
"en": "Can be consumed to restore health or stamina.",
|
||||
"es": "Se puede consumir para restaurar salud o stamina."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"first_aid_kit": {
|
||||
"name": {
|
||||
@@ -306,7 +324,8 @@
|
||||
"type": "consumable",
|
||||
"hp_restore": 50,
|
||||
"emoji": "🩹",
|
||||
"image_path": "images/items/first_aid_kit.webp"
|
||||
"image_path": "images/items/first_aid_kit.webp",
|
||||
"value": 10
|
||||
},
|
||||
"bandage": {
|
||||
"name": {
|
||||
@@ -334,7 +353,8 @@
|
||||
]
|
||||
},
|
||||
"emoji": "🩹",
|
||||
"image_path": "images/items/bandage.webp"
|
||||
"image_path": "images/items/bandage.webp",
|
||||
"value": 10
|
||||
},
|
||||
"medical_supplies": {
|
||||
"name": {
|
||||
@@ -350,7 +370,8 @@
|
||||
"type": "consumable",
|
||||
"hp_restore": 40,
|
||||
"emoji": "⚕️",
|
||||
"image_path": "images/items/medical_supplies.webp"
|
||||
"image_path": "images/items/medical_supplies.webp",
|
||||
"value": 10
|
||||
},
|
||||
"antibiotics": {
|
||||
"name": {
|
||||
@@ -367,7 +388,8 @@
|
||||
"hp_restore": 20,
|
||||
"treats": "Infected",
|
||||
"emoji": "💊",
|
||||
"image_path": "images/items/antibiotics.webp"
|
||||
"image_path": "images/items/antibiotics.webp",
|
||||
"value": 10
|
||||
},
|
||||
"rad_pills": {
|
||||
"name": {
|
||||
@@ -384,7 +406,8 @@
|
||||
"hp_restore": 5,
|
||||
"treats": "Radiation",
|
||||
"emoji": "☢️",
|
||||
"image_path": "images/items/rad_pills.webp"
|
||||
"image_path": "images/items/rad_pills.webp",
|
||||
"value": 10
|
||||
},
|
||||
"tire_iron": {
|
||||
"name": {
|
||||
@@ -408,7 +431,8 @@
|
||||
"damage_max": 5
|
||||
},
|
||||
"emoji": "🔧",
|
||||
"image_path": "images/items/tire_iron.webp"
|
||||
"image_path": "images/items/tire_iron.webp",
|
||||
"value": 10
|
||||
},
|
||||
"baseball_bat": {
|
||||
"name": {
|
||||
@@ -428,7 +452,8 @@
|
||||
"stats": {
|
||||
"damage_min": 5,
|
||||
"damage_max": 8
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"rusty_knife": {
|
||||
"name": {
|
||||
@@ -464,7 +489,8 @@
|
||||
"damage_max": 5
|
||||
},
|
||||
"emoji": "🔪",
|
||||
"image_path": "images/items/rusty_knife.webp"
|
||||
"image_path": "images/items/rusty_knife.webp",
|
||||
"value": 10
|
||||
},
|
||||
"knife": {
|
||||
"name": {
|
||||
@@ -553,7 +579,8 @@
|
||||
}
|
||||
},
|
||||
"emoji": "🔪",
|
||||
"image_path": "images/items/knife.webp"
|
||||
"image_path": "images/items/knife.webp",
|
||||
"value": 10
|
||||
},
|
||||
"rusty_pipe": {
|
||||
"name": {
|
||||
@@ -573,7 +600,8 @@
|
||||
"stats": {
|
||||
"damage_min": 5,
|
||||
"damage_max": 8
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"tattered_rucksack": {
|
||||
"name": {
|
||||
@@ -620,7 +648,8 @@
|
||||
"volume_capacity": 10
|
||||
},
|
||||
"emoji": "🎒",
|
||||
"image_path": "images/items/tattered_rucksack.webp"
|
||||
"image_path": "images/items/tattered_rucksack.webp",
|
||||
"value": 10
|
||||
},
|
||||
"hiking_backpack": {
|
||||
"name": {
|
||||
@@ -656,7 +685,8 @@
|
||||
"volume_capacity": 20
|
||||
},
|
||||
"emoji": "🎒",
|
||||
"image_path": "images/items/hiking_backpack.webp"
|
||||
"image_path": "images/items/hiking_backpack.webp",
|
||||
"value": 10
|
||||
},
|
||||
"flashlight": {
|
||||
"name": {
|
||||
@@ -676,7 +706,8 @@
|
||||
"stats": {
|
||||
"damage_min": 5,
|
||||
"damage_max": 8
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"old_photograph": {
|
||||
"name": {
|
||||
@@ -691,7 +722,8 @@
|
||||
"description": {
|
||||
"en": "A useful old photograph.",
|
||||
"es": "Una fotografía vieja útil."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"key_ring": {
|
||||
"name": {
|
||||
@@ -706,7 +738,8 @@
|
||||
"description": {
|
||||
"en": "A useful key ring.",
|
||||
"es": "Un anillo de llaves útil."
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"makeshift_spear": {
|
||||
"name": {
|
||||
@@ -757,7 +790,8 @@
|
||||
"damage_max": 7
|
||||
},
|
||||
"emoji": "⚔️",
|
||||
"image_path": "images/items/makeshift_spear.webp"
|
||||
"image_path": "images/items/makeshift_spear.webp",
|
||||
"value": 10
|
||||
},
|
||||
"reinforced_bat": {
|
||||
"name": {
|
||||
@@ -814,7 +848,8 @@
|
||||
}
|
||||
},
|
||||
"emoji": "🏸",
|
||||
"image_path": "images/items/reinforced_bat.webp"
|
||||
"image_path": "images/items/reinforced_bat.webp",
|
||||
"value": 10
|
||||
},
|
||||
"leather_vest": {
|
||||
"name": {
|
||||
@@ -865,7 +900,8 @@
|
||||
"hp_bonus": 10
|
||||
},
|
||||
"emoji": "🦺",
|
||||
"image_path": "images/items/leather_vest.webp"
|
||||
"image_path": "images/items/leather_vest.webp",
|
||||
"value": 10
|
||||
},
|
||||
"cloth_bandana": {
|
||||
"name": {
|
||||
@@ -903,7 +939,8 @@
|
||||
"armor": 1
|
||||
},
|
||||
"emoji": "🧣",
|
||||
"image_path": "images/items/cloth_bandana.webp"
|
||||
"image_path": "images/items/cloth_bandana.webp",
|
||||
"value": 10
|
||||
},
|
||||
"sturdy_boots": {
|
||||
"name": {
|
||||
@@ -954,7 +991,8 @@
|
||||
"stamina_bonus": 5
|
||||
},
|
||||
"emoji": "🥾",
|
||||
"image_path": "images/items/sturdy_boots.webp"
|
||||
"image_path": "images/items/sturdy_boots.webp",
|
||||
"value": 10
|
||||
},
|
||||
"padded_pants": {
|
||||
"name": {
|
||||
@@ -1001,7 +1039,8 @@
|
||||
"hp_bonus": 5
|
||||
},
|
||||
"emoji": "👖",
|
||||
"image_path": "images/items/padded_pants.webp"
|
||||
"image_path": "images/items/padded_pants.webp",
|
||||
"value": 10
|
||||
},
|
||||
"reinforced_pack": {
|
||||
"name": {
|
||||
@@ -1091,7 +1130,8 @@
|
||||
"volume_capacity": 30
|
||||
},
|
||||
"emoji": "🎒",
|
||||
"image_path": "images/items/reinforced_pack.webp"
|
||||
"image_path": "images/items/reinforced_pack.webp",
|
||||
"value": 10
|
||||
},
|
||||
"hammer": {
|
||||
"name": {
|
||||
@@ -1130,7 +1170,8 @@
|
||||
],
|
||||
"repair_percentage": 30,
|
||||
"emoji": "🔨",
|
||||
"image_path": "images/items/hammer.webp"
|
||||
"image_path": "images/items/hammer.webp",
|
||||
"value": 10
|
||||
},
|
||||
"screwdriver": {
|
||||
"name": {
|
||||
@@ -1173,7 +1214,8 @@
|
||||
"stats": {
|
||||
"damage_min": 5,
|
||||
"damage_max": 8
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"pipe_bomb": {
|
||||
"name": {
|
||||
@@ -1194,7 +1236,8 @@
|
||||
"combat_effects": {
|
||||
"damage_min": 15,
|
||||
"damage_max": 25
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"molotov_cocktail": {
|
||||
"name": {
|
||||
@@ -1222,7 +1265,8 @@
|
||||
"ticks": 3,
|
||||
"persist_after_combat": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"smoke_bomb": {
|
||||
"name": {
|
||||
@@ -1249,7 +1293,8 @@
|
||||
"ticks": 1,
|
||||
"persist_after_combat": false
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
},
|
||||
"stim_pack": {
|
||||
"name": {
|
||||
@@ -1269,7 +1314,8 @@
|
||||
"consumable": true,
|
||||
"combat_usable": true,
|
||||
"combat_only": true,
|
||||
"hp_restore": 20
|
||||
"hp_restore": 20,
|
||||
"value": 10
|
||||
},
|
||||
"adrenaline_shot": {
|
||||
"name": {
|
||||
@@ -1297,7 +1343,8 @@
|
||||
"ticks": 2,
|
||||
"persist_after_combat": false
|
||||
}
|
||||
}
|
||||
},
|
||||
"value": 10
|
||||
}
|
||||
}
|
||||
}
|
||||
68
gamedata/quests.json
Normal file
68
gamedata/quests.json
Normal file
@@ -0,0 +1,68 @@
|
||||
{
|
||||
"quests": {
|
||||
"quest_collect_wood": {
|
||||
"quest_id": "quest_collect_wood",
|
||||
"title": {
|
||||
"en": "Rebuilding the Bridge",
|
||||
"es": "Reconstruyendo el Puente"
|
||||
},
|
||||
"description": {
|
||||
"en": "We need wood to repair the bridge to the north. Bring what you can.",
|
||||
"es": "Necesitamos madera para reparar el puente del norte. Trae lo que puedas."
|
||||
},
|
||||
"giver_id": "mechanic_mike",
|
||||
"type": "global",
|
||||
"repeatable": true,
|
||||
"cooldown_hours": 0,
|
||||
"objectives": [
|
||||
{
|
||||
"type": "item_delivery",
|
||||
"target": "wood_plank",
|
||||
"count": 1000
|
||||
}
|
||||
],
|
||||
"rewards": {
|
||||
"xp": 10,
|
||||
"items": {
|
||||
"credits": 5
|
||||
}
|
||||
},
|
||||
"completion_text": {
|
||||
"en": "Thanks, every plank helps.",
|
||||
"es": "Gracias, cada tabla ayuda."
|
||||
}
|
||||
},
|
||||
"quest_rat_problem": {
|
||||
"quest_id": "quest_rat_problem",
|
||||
"title": {
|
||||
"en": "Rat Problem",
|
||||
"es": "Problema de Ratas"
|
||||
},
|
||||
"description": {
|
||||
"en": "Mutant rats are infesting the basement. Kill 3 of them.",
|
||||
"es": "Ratas mutantes infestan el sótano. Mata a 3 de ellas."
|
||||
},
|
||||
"giver_id": "trader_joe",
|
||||
"type": "individual",
|
||||
"repeatable": true,
|
||||
"cooldown_hours": 24,
|
||||
"objectives": [
|
||||
{
|
||||
"type": "kill_count",
|
||||
"target": "mutant_rat",
|
||||
"count": 3
|
||||
}
|
||||
],
|
||||
"rewards": {
|
||||
"xp": 50,
|
||||
"items": {
|
||||
"canned_food": 1
|
||||
}
|
||||
},
|
||||
"completion_text": {
|
||||
"en": "Thanks for clearing them out. Here's some food.",
|
||||
"es": "Gracias por limpiarlos. Aquí tienes algo de comida."
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
93
gamedata/static_npcs.json
Normal file
93
gamedata/static_npcs.json
Normal file
@@ -0,0 +1,93 @@
|
||||
{
|
||||
"static_npcs": {
|
||||
"trader_joe": {
|
||||
"npc_id": "trader_joe",
|
||||
"name": {
|
||||
"en": "Trader Joe",
|
||||
"es": "Comerciante José"
|
||||
},
|
||||
"location_id": "residential",
|
||||
"image": "images/static_npcs/trader_joe.webp",
|
||||
"dialog": {
|
||||
"greeting": {
|
||||
"en": "Got some rare goods for sale, stranger.",
|
||||
"es": "Tengo mercancía rara a la venta, forastero."
|
||||
},
|
||||
"topics": [
|
||||
{
|
||||
"id": "lore_markets",
|
||||
"title": {
|
||||
"en": "About the markets",
|
||||
"es": "Sobre los mercados"
|
||||
},
|
||||
"text": {
|
||||
"en": "Before the fall, this place was bustling. Now, we scrape by with what we can found.",
|
||||
"es": "Antes de la caída, este lugar estaba lleno de vida. Ahora, sobrevivimos con lo que podemos encontrar."
|
||||
}
|
||||
}
|
||||
],
|
||||
"quest_offer": {
|
||||
"en": "I could use a hand with something.",
|
||||
"es": "Podría necesitar una mano con algo."
|
||||
}
|
||||
},
|
||||
"trade": {
|
||||
"enabled": true,
|
||||
"currency": "value",
|
||||
"unlimited_currency": true,
|
||||
"keep_sold_items": true,
|
||||
"buy_markup": 1.5,
|
||||
"sell_markdown": 0.5,
|
||||
"stock": [
|
||||
{
|
||||
"item_id": "water_bottle",
|
||||
"max_stock": 10,
|
||||
"restock_rate": 2,
|
||||
"infinite": false
|
||||
},
|
||||
{
|
||||
"item_id": "canned_food",
|
||||
"max_stock": 50,
|
||||
"infinite": true
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"mechanic_mike": {
|
||||
"npc_id": "mechanic_mike",
|
||||
"name": {
|
||||
"en": "Mechanic Mike",
|
||||
"es": "Mecánico Mike"
|
||||
},
|
||||
"location_id": "gas_station",
|
||||
"image": "images/static_npcs/mechanic_mike.webp",
|
||||
"dialog": {
|
||||
"greeting": {
|
||||
"en": "If it's broken, I might be able to fix it. Might.",
|
||||
"es": "Si está roto, tal vez pueda arreglarlo. Tal vez."
|
||||
},
|
||||
"topics": [],
|
||||
"quest_offer": {
|
||||
"en": "Need parts. Always need parts.",
|
||||
"es": "Necesito piezas. Siempre necesito piezas."
|
||||
}
|
||||
},
|
||||
"trade": {
|
||||
"enabled": true,
|
||||
"currency": "value",
|
||||
"unlimited_currency": true,
|
||||
"keep_sold_items": false,
|
||||
"buy_markup": 1.2,
|
||||
"sell_markdown": 0.6,
|
||||
"stock": [
|
||||
{
|
||||
"item_id": "scrap_metal",
|
||||
"max_stock": 20,
|
||||
"refresh_rate": 5,
|
||||
"infinite": false
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user