aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjc_gargma <jc_gargma@iserlohn-fortress.net>2023-03-14 19:01:44 -0700
committerjc_gargma <jc_gargma@iserlohn-fortress.net>2023-03-14 19:01:44 -0700
commit92c3c6ad85a509ed9ce0784fd928dcb9976fac1a (patch)
tree2634f0f94c1dbcdebbfedace727f22acb16925a8
parentFix garter purse weight. (diff)
downloadcataclysm-dda-mod_battle-maid-redone-92c3c6ad85a509ed9ce0784fd928dcb9976fac1a.tar.xz
Port to DDA.
-rw-r--r--ammo.json48
-rw-r--r--ammo_types.json14
-rw-r--r--armor.json1660
-rw-r--r--book.json55
-rw-r--r--item_groups.json106
-rw-r--r--martial_arts_manuals.json17
-rw-r--r--materials.json18
-rw-r--r--migration.json7
-rw-r--r--modinfo.json2
-rw-r--r--monster_drops.json20
-rw-r--r--monsters.json105
-rw-r--r--mutations.json6
-rw-r--r--npcs/NC_SHOGGOTH_MAID.json4
-rw-r--r--npcs/TALK_MAID_ALLY.json.old408
-rw-r--r--professions.json13
-rw-r--r--recipes.json506
-rw-r--r--scenario.json16
-rw-r--r--speech.json296
-rw-r--r--talk_tags.json44
-rw-r--r--tools.json173
20 files changed, 1334 insertions, 2184 deletions
diff --git a/ammo.json b/ammo.json
index 1711425..1f888ee 100644
--- a/ammo.json
+++ b/ammo.json
@@ -1,45 +1,47 @@
[
{
"type": "GENERIC",
+ "id": "throwing_knife",
+ "category": "weapons",
+ "price": 5200,
+ "price_postapoc": 500,
+ "name": { "str": "throwing knife", "str_pl": "throwing knives" },
+ "symbol": ";",
+ "color": "light_gray",
+ "description": "A thin and flat knife made for throwing. Its ineffective cutting edge and odd shape makes it unsuitable for use as a tool.",
+ "material": [ "steel" ],
+ "volume": "100 ml",
+ "weight": "460 g",
+ "to_hit": -2,
+ "bashing": 1,
+ "cutting": 10,
+ "flags": [ "STAB", "SHEATH_KNIFE" ],
+ "thrown_damage": [ { "damage_type": "stab", "amount": 14 } ]
+ },
+ {
"id": "assassins_throwing_dagger",
+ "copy-from": "throwing_knife",
+ "type": "GENERIC",
"category": "weapons",
- "price": "90 USD",
+ "price": 9000,
+ "price_postapoc": 900,
"name": { "str": "assassin's throwing knife" },
- "symbol": "/",
- "color": "light_gray",
"description": "A nimble blade meant for ranged assassination, but makes an improvised cutlery tool in a pinch. It's very lightweight and silent and can be used on both zombies and games involving apples.",
- "material": [ "steel", "leather" ],
- "volume": "250 ml",
- "weight": "350 g",
- "cutting": 21,
+ "weight": "360 g",
+ "cutting": 20,
"to_hit": 2,
- "flags": [ "SHEATH_KNIFE" ],
"qualities": [ [ "CUT", 1 ], [ "BUTCHER", 10 ] ],
"thrown_damage": [ { "damage_type": "stab", "amount": 25 } ]
},
{
- "type": "GENERIC",
- "id": "throwing_knife",
- "category": "weapons",
+ "id": "makeshift_throwing_knife",
"copy-from": "throwing_knife",
- "name": { "str": "throwing knife", "str_pl": "throwing knives" },
- "flags": [ "SHEATH_KNIFE" ]
- },
- {
"type": "GENERIC",
- "id": "makeshift_throwing_knife",
"category": "weapons",
- "price": "52 USD",
"name": { "str": "makeshift throwing knife" },
- "symbol": ";",
- "color": "light_gray",
"description": "A crude and simple throwing knife made from a sharpened piece of salvaged steel with cloth wrapped around it. It's better than throwing rocks, at least.",
- "material": [ "steel" ],
- "volume": "250 ml",
- "weight": "150 g",
"bashing": 0,
"cutting": 7,
- "flags": [ "SHEATH_KNIFE" ],
"thrown_damage": [ { "damage_type": "stab", "amount": 10 } ]
}
]
diff --git a/ammo_types.json b/ammo_types.json
deleted file mode 100644
index 67c3b7e..0000000
--- a/ammo_types.json
+++ /dev/null
@@ -1,14 +0,0 @@
-[
- {
- "type": "ammunition_type",
- "id": "makeshift_throwing_knife",
- "name": "makeshift throwing knife",
- "default": "makeshift_throwing_knife"
- },
- {
- "type": "ammunition_type",
- "id": "assassins_throwing_dagger",
- "name": "assassin's throwing knife",
- "default": "assassins_throwing_dagger"
- }
-]
diff --git a/armor.json b/armor.json
index ac82b67..a80052d 100644
--- a/armor.json
+++ b/armor.json
@@ -12,11 +12,20 @@
"material": [ "cotton" ],
"symbol": "[",
"color": "black",
- "covers": [ "torso", "arm_l", "arm_r", "leg_l", "leg_r" ],
- "coverage": 95,
- "encumbrance": 7,
- "max_encumbrance": 10,
- "storage": "2500 ml",
+ "armor": [
+ { "covers": [ "torso" ], "coverage": 100, "encumbrance": [ 7, 10 ] },
+ { "covers": [ "leg_l", "leg_r" ], "coverage": 95, "encumbrance": [ 5, 5 ] },
+ { "covers": [ "arm_l", "arm_r" ], "coverage": 95, "encumbrance": [ 5, 5 ] }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "10 cm",
+ "moves": 80
+ }
+ ],
"warmth": 20,
"material_thickness": 2,
"environmental_protection": 1,
@@ -35,11 +44,34 @@
"material": [ "leather", "cotton" ],
"symbol": "[",
"color": "black",
- "covers": [ "leg_l", "leg_r", "torso", "arm_l", "arm_r" ],
- "coverage": 100,
- "encumbrance": 12,
- "max_encumbrance": 16,
- "storage": "6 L",
+ "armor": [
+ { "covers": [ "torso" ], "coverage": 100, "encumbrance": [ 12, 16 ] },
+ { "covers": [ "leg_l", "leg_r" ], "coverage": 100, "encumbrance": [ 7, 7 ] },
+ { "covers": [ "arm_l", "arm_r" ], "coverage": 100, "encumbrance": [ 7, 7 ] }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "2500 ml",
+ "max_contains_weight": "4 kg",
+ "max_item_length": "20 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "2500 ml",
+ "max_contains_weight": "4 kg",
+ "max_item_length": "20 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "10 cm",
+ "moves": 80
+ }
+ ],
"warmth": 45,
"material_thickness": 5,
"environmental_protection": 2,
@@ -59,11 +91,34 @@
"material": [ "kevlar", "cotton" ],
"symbol": "[",
"color": "black",
- "covers": [ "leg_l", "leg_r", "torso", "arm_l", "arm_r" ],
- "coverage": 100,
- "encumbrance": 15,
- "max_encumbrance": 20,
- "storage": "9 L",
+ "armor": [
+ { "covers": [ "torso" ], "coverage": 100, "encumbrance": [ 15, 20 ] },
+ { "covers": [ "leg_l", "leg_r" ], "coverage": 100, "encumbrance": [ 10, 10 ] },
+ { "covers": [ "arm_l", "arm_r" ], "coverage": 100, "encumbrance": [ 10, 10 ] }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "2500 ml",
+ "max_contains_weight": "4 kg",
+ "max_item_length": "20 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "2500 ml",
+ "max_contains_weight": "4 kg",
+ "max_item_length": "20 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "10 cm",
+ "moves": 80
+ }
+ ],
"warmth": 45,
"material_thickness": 8,
"environmental_protection": 3,
@@ -77,33 +132,9 @@
"flags": [ "VARSIZE", "HOOD", "COLLAR", "POCKETS", "WATERPROOF", "RAINPROOF", "STURDY", "SUPER_FANCY" ]
},
{
- "id": "maid_dress_french",
- "//": "Copy of the vanilla french maid dress. Super fancy, renamed, using a different item ID, and counts as clothing.",
- "repairs_like": "trenchcoat",
- "type": "ARMOR",
- "category": "clothing",
- "name": { "str": "french maid dress", "str_pl": "french maid dresses" },
- "description": "The French maid dress, blue with a frilly white apron.",
- "weight": "100 g",
- "volume": "250 ml",
- "price": 5000,
- "price_postapoc": 50,
- "material": [ "cotton" ],
- "symbol": "[",
- "looks_like": "dress",
- "color": "blue",
- "covers": [ "torso", "arm_l", "arm_r", "leg_l", "leg_r" ],
- "coverage": 75,
- "encumbrance": 5,
- "max_encumbrance": 7,
- "storage": "500 ml",
- "warmth": 5,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SUPER_FANCY" ]
- },
- {
- "id": "kawaii_maid_dress",
+ "id": "maid_dress_short",
"type": "ARMOR",
+ "looks_like": "kawaii_maid_dress",
"name": { "str": "maid dress", "str_pl": "maid dresses" },
"description": "A black dress with white apron and lace trim, worn by maids.",
"weight": "150 g",
@@ -113,11 +144,32 @@
"material": [ "cotton" ],
"symbol": "[",
"color": "blue",
- "covers": [ "torso", "arm_l", "arm_r", "leg_l", "leg_r" ],
- "coverage": 75,
- "encumbrance": 5,
- "max_encumbrance": 7,
- "storage": "1500 ml",
+ "armor": [
+ { "covers": [ "torso" ], "specifically_covers": [ "torso_lower" ], "coverage": 100, "encumbrance": [ 5, 7 ] },
+ { "covers": [ "torso" ], "specifically_covers": [ "torso_upper" ], "coverage": 75 },
+ {
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_hip_l", "leg_hip_r" ],
+ "coverage": 100,
+ "encumbrance": 2
+ },
+ { "covers": [ "leg_l", "leg_r" ], "specifically_covers": [ "leg_upper_l", "leg_upper_r" ], "coverage": 50 },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "specifically_covers": [ "arm_shoulder_l", "arm_shoulder_r" ],
+ "coverage": 50,
+ "encumbrance": 2
+ }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "10 cm",
+ "moves": 80
+ }
+ ],
"warmth": 15,
"material_thickness": 1,
"flags": [ "VARSIZE", "FANCY" ]
@@ -134,11 +186,46 @@
"material": [ "leather", "cotton" ],
"symbol": "[",
"color": "dark_gray",
- "covers": [ "torso", "arm_l", "arm_r", "leg_l", "leg_r" ],
- "coverage": 100,
- "encumbrance": 7,
- "max_encumbrance": 10,
- "storage": " 5 L",
+ "armor": [
+ { "covers": [ "torso" ], "specifically_covers": [ "torso_lower" ], "coverage": 100, "encumbrance": [ 7, 10 ] },
+ { "covers": [ "torso" ], "specifically_covers": [ "torso_upper" ], "coverage": 75 },
+ {
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_hip_l", "leg_hip_r" ],
+ "coverage": 100,
+ "encumbrance": 3
+ },
+ { "covers": [ "leg_l", "leg_r" ], "specifically_covers": [ "leg_upper_l", "leg_upper_r" ], "coverage": 50 },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "specifically_covers": [ "arm_shoulder_l", "arm_shoulder_r" ],
+ "coverage": 50,
+ "encumbrance": 3
+ }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "10 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "2000 ml",
+ "max_contains_weight": "4 kg",
+ "max_item_length": "20 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "2000 ml",
+ "max_contains_weight": "4 kg",
+ "max_item_length": "20 cm",
+ "moves": 80
+ }
+ ],
"warmth": 15,
"material_thickness": 3,
"environmental_protection": 1,
@@ -157,11 +244,46 @@
"material": [ "kevlar", "cotton" ],
"symbol": "[",
"color": "green",
- "covers": [ "leg_l", "leg_r", "torso", "arm_l", "arm_r" ],
- "coverage": 100,
- "encumbrance": 12,
- "max_encumbrance": 15,
- "storage": "7500 ml",
+ "armor": [
+ { "covers": [ "torso" ], "specifically_covers": [ "torso_lower" ], "coverage": 100, "encumbrance": [ 12, 15 ] },
+ { "covers": [ "torso" ], "specifically_covers": [ "torso_upper" ], "coverage": 75 },
+ {
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_hip_l", "leg_hip_r" ],
+ "coverage": 100,
+ "encumbrance": 5
+ },
+ { "covers": [ "leg_l", "leg_r" ], "specifically_covers": [ "leg_upper_l", "leg_upper_r" ], "coverage": 50 },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "specifically_covers": [ "arm_shoulder_l", "arm_shoulder_r" ],
+ "coverage": 50,
+ "encumbrance": 5
+ }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "10 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "2000 ml",
+ "max_contains_weight": "4 kg",
+ "max_item_length": "20 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "2000 ml",
+ "max_contains_weight": "4 kg",
+ "max_item_length": "20 cm",
+ "moves": 80
+ }
+ ],
"warmth": 15,
"material_thickness": 5,
"environmental_protection": 2,
@@ -175,343 +297,425 @@
"flags": [ "VARSIZE", "POCKETS", "WATERPROOF", "RAINPROOF", "STURDY", "SUPER_FANCY" ]
},
{
- "id": "jokyu_fuku",
- "type": "ARMOR",
- "category": "clothing",
- "name": { "str": "jokyū dress", "str_pl": "jokyū dresses" },
- "description": "Women's servant clothes worn in Japanese cafes a long time ago. Essentially a white apron over a kimono.",
- "weight": "1200 g",
- "volume": "5000 ml",
- "price": 5000,
- "price_postapoc": 50,
- "material": [ "cotton" ],
- "symbol": "[",
- "color": "brown",
- "covers": [ "torso", "arm_l", "arm_r", "leg_l", "leg_r" ],
- "coverage": 95,
- "encumbrance": 5,
- "max_encumbrance": 7,
- "storage": "500 ml",
- "warmth": 20,
- "material_thickness": 4,
- "environmental_protection": 1,
- "flags": [ "VARSIZE", "FANCY" ]
- },
- {
- "id": "kawaii_hat_cotton",
- "//": "Loosely based on cotton hat.",
- "type": "ARMOR",
- "category": "clothing",
- "name": { "str": "maid hat" },
- "description": "It's a warm hat made of cotton, coloured white to better match a maid uniform.",
- "weight": "78 g",
- "volume": "250 ml",
- "price": 2000,
- "material": [ "cotton" ],
- "symbol": "[",
- "color": "dark_gray",
- "covers": [ "head" ],
- "coverage": 65,
- "warmth": 20,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "HOOD" ]
- },
- {
- "id": "kawaii_maid_hat",
+ "id": "maid_hat",
+ "//": "Originally the kawaii_maid_hat, now overwrites maid_hat. Based on maid_hat.",
+ "looks_like": "hat_cotton",
+ "repairs_like": "balclava",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "maid headband" },
"description": "A black headband with white lace trim, worn by maids.",
- "weight": "150 g",
+ "weight": "10 g",
"volume": "250 ml",
- "price": "25 USD",
+ "price": 2500,
+ "price_postapoc": 50,
"material": [ "cotton" ],
"symbol": "[",
"color": "white",
- "covers": [ "head" ],
- "coverage": 25,
- "encumbrance": 3,
- "warmth": 15,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "FANCY", "SKINTIGHT" ]
+ "warmth": 2,
+ "material_thickness": 0.05,
+ "flags": [ "VARSIZE", "FANCY", "SKINTIGHT" ],
+ "armor": [ { "encumbrance_modifiers": [ "NONE" ], "coverage": 25, "covers": [ "head" ] } ]
},
{
"id": "kawaii_maid_hat_thermal_off",
+ "copy-from": "maid_hat",
"type": "ARMOR",
"name": { "str": "tailored maid headband" },
"description": "A black headband with white lace trim, worn by maids. It has been reinforced with leather for greater protection.",
"weight": "250 g",
- "volume": "250 ml",
- "price": 25000,
+ "price": 2500,
+ "price_postapoc": 100,
"material": [ "leather", "cotton" ],
- "symbol": "[",
- "color": "white",
- "covers": [ "head" ],
- "coverage": 25,
- "encumbrance": 3,
- "warmth": 15,
- "material_thickness": 3,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "SKINTIGHT" ]
+ "material_thickness": 0.2,
+ "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "SKINTIGHT" ],
+ "armor": [
+ {
+ "encumbrance_modifiers": [ "NONE" ],
+ "material": [
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.4 },
+ { "type": "leather", "covered_by_mat": 80, "thickness": 1.5 }
+ ],
+ "coverage": 25,
+ "covers": [ "head" ]
+ }
+ ]
},
{
"id": "kawaii_maid_hat_lss",
+ "copy-from": "maid_hat",
"type": "ARMOR",
"name": { "str": "survivor maid headband" },
"description": "A black headband with white lace trim, worn by maids. It has been reinforced with kevlar for greater protection.",
"weight": "350 g",
- "volume": "250 ml",
- "price": 55000,
+ "price": 5500,
+ "price_postapoc": 200,
"material": [ "kevlar", "cotton" ],
- "symbol": "[",
- "color": "white",
- "covers": [ "head" ],
- "coverage": 100,
- "encumbrance": 10,
- "warmth": 15,
- "material_thickness": 9,
"environmental_protection": 3,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "RAINPROOF", "SKINTIGHT", "STURDY" ]
- },
- {
- "id": "maid_hat",
- "//": "Copy of the vanilla maid headband, but renamed, super fancy, and with warmth to match the dress.",
- "repairs_like": "balclava",
- "type": "ARMOR",
- "category": "clothing",
- "name": { "str": "french maid headband"},
- "description": "A frilly white headpiece.",
- "weight": "10 g",
- "volume": "250 ml",
- "price": 2500,
- "price_postapoc": 50,
- "material": [ "cotton" ],
- "symbol": "[",
- "looks_like": "hat_cotton",
- "color": "white",
- "covers": [ "head" ],
- "coverage": 25,
- "encumbrance": 10,
- "warmth": 5,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SUPER_FANCY" ]
+ "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "RAINPROOF", "SKINTIGHT", "STURDY" ],
+ "armor": [
+ {
+ "encumbrance_modifiers": [ "NONE" ],
+ "material": [
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.4 },
+ { "type": "kevlar", "covered_by_mat": 80, "thickness": 1.5 }
+ ],
+ "coverage": 25,
+ "covers": [ "head" ]
+ }
+ ]
},
{
"id": "maid_gloves_cotton",
+ "//": "Based on gloves_liner",
"type": "ARMOR",
"category": "clothing",
- "looks_like": "gloves_liner",
"name": { "str": "pair of maid gloves", "str_pl": "pairs of maid gloves" },
"description": "A pair of white gloves, used by maids.",
- "weight": "118 g",
+ "weight": "63 g",
"volume": "250 ml",
- "price": 1100,
+ "price": 600,
+ "price_postapoc": 50,
"to_hit": 1,
"material": [ "cotton" ],
"symbol": "[",
- "color": "light_blue",
- "covers": [ "hand_l", "hand_r" ],
- "coverage": 95,
- "encumbrance": 4,
+ "looks_like": "gloves_light",
+ "color": "light_gray",
"warmth": 15,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "FANCY" ]
+ "material_thickness": 0.1,
+ "flags": [ "VARSIZE", "SKINTIGHT" ],
+ "armor": [ { "encumbrance": 1, "coverage": 95, "covers": [ "hand_l", "hand_r" ] } ]
},
- {
+ {
"id": "maid_gloves_leather",
+ "copy-from": "maid_gloves_cotton",
"type": "ARMOR",
"looks_like": "gloves_liner",
"name": { "str": "pair of tailored maid gloves", "str_pl": "pairs of tailored maid gloves" },
"description": "A pair of white gloves, used by maids. They have been reinforced with leather for greater protection.",
"weight": "150 g",
"volume": "500 ml",
- "price": 12000,
- "to_hit": 1,
+ "price": 1200,
+ "price_postapoc": 100,
"material": [ "cotton", "leather" ],
- "symbol": "[",
- "color": "light_blue",
"covers": [ "hand_l", "hand_r" ],
- "coverage": 100,
- "encumbrance": 6,
+ "coverage": 95,
"warmth": 15,
- "material_thickness": 3,
- "environmental_protection": 1,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF" ]
+ "material_thickness": 0.5,
+ "flags": [ "VARSIZE", "SKINTIGHT", "FANCY", "WATERPROOF" ],
+ "armor": [
+ {
+ "encumbrance": 3,
+ "material": [
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.4 },
+ { "type": "leather", "covered_by_mat": 80, "thickness": 2 }
+ ],
+ "coverage": 95,
+ "covers": [ "hand_l", "hand_r" ]
+ }
+ ]
},
- {
+ {
"id": "maid_gloves_armor",
+ "copy-from": "maid_gloves_cotton",
"type": "ARMOR",
"looks_like": "gloves_liner",
"name": { "str": "pair of survivor maid gloves", "str_pl": "pairs of survivor maid gloves" },
"description": "A pair of white gloves, used by maids. They have been reinforced with kevlar for greater protection.",
"weight": "190 g",
- "volume": "750 ml",
- "price": 18000,
+ "volume": "500 ml",
+ "price": 5200,
+ "price_postapoc": 1500,
"to_hit": 2,
"material": [ "cotton", "kevlar" ],
- "symbol": "[",
- "color": "light_blue",
- "covers": [ "hand_l", "hand_r" ],
- "coverage": 100,
- "encumbrance": 8,
- "warmth": 15,
- "material_thickness": 5,
- "environmental_protection": 3,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "STURDY" ]
+ "environmental_protection": 2,
+ "flags": [ "VARSIZE", "SKINTIGHT", "FANCY", "WATERPROOF", "STURDY" ],
+ "armor": [
+ {
+ "encumbrance": 10,
+ "material": [
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.4 },
+ { "type": "kevlar", "covered_by_mat": 80, "thickness": 3 }
+ ],
+ "coverage": 100,
+ "covers": [ "hand_l", "hand_r" ]
+ }
+ ]
},
- {
+ {
"id": "maid_gloves_long_cotton",
+ "//": "Based on long_glove_white",
+ "repairs_like": "long_glove_white",
"type": "ARMOR",
- "category": "clothing",
- "looks_like": "long_glove_white",
"name": { "str": "pair of long maid gloves", "str_pl": "pairs of long maid gloves" },
"description": "A pair of long white gloves, used by maids.",
"weight": "400 g",
- "volume": "1000 ml",
+ "volume": "1 L",
"price": 1100,
+ "price_postapoc": 100,
"to_hit": 1,
"material": [ "cotton" ],
"symbol": "[",
- "color": "light_blue",
- "covers": [ "hand_l", "hand_r" ],
- "coverage": 95,
- "encumbrance": 8,
- "warmth": 50,
- "material_thickness": 2,
- "flags": [ "VARSIZE", "FANCY" ]
+ "looks_like": "gloves_light",
+ "color": "white",
+ "armor": [
+ { "covers": [ "hand_l", "hand_r" ], "coverage": 100, "encumbrance": 2 },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "specifically_covers": [ "arm_elbow_l", "arm_elbow_r", "arm_lower_l", "arm_lower_r" ],
+ "coverage": 100,
+ "encumbrance": 2
+ },
+ { "covers": [ "arm_l", "arm_r" ], "specifically_covers": [ "arm_upper_l", "arm_upper_r" ], "coverage": 50 }
+ ],
+ "warmth": 10,
+ "material_thickness": 0.2,
+ "flags": [ "VARSIZE", "SKINTIGHT" ]
},
- {
+ {
"id": "maid_gloves_long_leather",
+ "copy-from": "maid_gloves_long_cotton",
"type": "ARMOR",
"looks_like": "long_glove_white",
"name": { "str": "pair of tailored long maid gloves", "str_pl": "pairs of tailored long maid gloves" },
"description": "A pair of long white gloves, used by maids. They have been reinforced with leather for greater protection.",
- "weight": "150 g",
- "volume": "500 ml",
- "price": 12000,
- "to_hit": 1,
+ "weight": "700 g",
+ "price": 2500,
+ "price_postapoc": 200,
"material": [ "leather", "cotton" ],
- "symbol": "[",
- "color": "light_blue",
- "covers": [ "hand_l", "hand_r" ],
- "coverage": 100,
- "encumbrance": 10,
- "warmth": 50,
- "material_thickness": 4,
- "environmental_protection": 2,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF" ]
+ "armor": [
+ { "covers": [ "hand_l", "hand_r" ], "coverage": 100, "encumbrance": 6 },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "specifically_covers": [ "arm_elbow_l", "arm_elbow_r", "arm_lower_l", "arm_lower_r" ],
+ "coverage": 95,
+ "encumbrance": 6,
+ "material": [
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.4 },
+ { "type": "leather", "covered_by_mat": 80, "thickness": 2 }
+ ]
+ },
+ { "covers": [ "arm_l", "arm_r" ], "specifically_covers": [ "arm_upper_l", "arm_upper_r" ], "coverage": 50 }
+ ],
+ "material_thickness": 0.5,
+ "flags": [ "VARSIZE", "FANCY", "SKINTIGHT", "WATERPROOF" ]
},
- {
+ {
"id": "maid_gloves_long_armor",
+ "copy-from": "maid_gloves_long_cotton",
"type": "ARMOR",
"looks_like": "long_glove_white",
"name": { "str": "pair of survivor long maid gloves", "str_pl": "pairs of survivor long maid gloves" },
"description": "A pair of long white gloves, used by maids. They have been reinforced with kevlar for greater protection.",
- "weight": "190 g",
- "volume": "750 ml",
- "price": 18000,
+ "weight": "1000 g",
+ "price": 4500,
+ "price_postapoc": 400,
"to_hit": 2,
"material": [ "kevlar", "cotton" ],
- "symbol": "[",
- "color": "light_blue",
- "covers": [ "hand_l", "hand_r", "arm_l", "arm_r" ],
- "coverage": 100,
- "encumbrance": 12,
- "warmth": 40,
- "material_thickness": 6,
- "environmental_protection": 4,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "STURDY" ]
+ "armor": [
+ { "covers": [ "hand_l", "hand_r" ], "coverage": 100, "encumbrance": 10 },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "specifically_covers": [ "arm_elbow_l", "arm_elbow_r", "arm_lower_l", "arm_lower_r" ],
+ "coverage": 100,
+ "encumbrance": 10,
+ "material": [
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.4 },
+ { "type": "kevlar", "covered_by_mat": 80, "thickness": 3 }
+ ]
+ },
+ { "covers": [ "arm_l", "arm_r" ], "specifically_covers": [ "arm_upper_l", "arm_upper_r" ], "coverage": 50 }
+ ],
+ "environmental_protection": 3,
+ "flags": [ "VARSIZE", "FANCY", "SKINTIGHT", "WATERPROOF", "STURDY" ]
},
{
"id": "kawaii_dress_shoes",
- "//": "Loosely based on dress shoes.",
+ "//": "Based on dress_shoes.",
+ "repairs_like": "boots",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "pair of maid shoes", "str_pl": "pairs of maid shoes" },
"description": "A pair of black dress shoes designed to be worn with a maid dress.",
- "weight": "500 g",
- "volume": "1250 ml",
+ "weight": "870 g",
+ "volume": "1500 ml",
"price": 12000,
"price_postapoc": 250,
+ "to_hit": 1,
+ "bashing": 1,
"material": [ "leather" ],
"symbol": "[",
+ "looks_like": "sneakers",
"color": "dark_gray",
- "covers": [ "foot_l", "foot_r" ],
- "coverage": 60,
- "encumbrance": 15,
- "warmth": 5,
- "material_thickness": 2,
- "flags": [ "VARSIZE", "FANCY" ]
+ "warmth": 10,
+ "material_thickness": 2.0,
+ "flags": [ "VARSIZE", "FANCY" ],
+ "armor": [
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_heel_r", "foot_heel_l", "foot_arch_r", "foot_arch_l", "foot_toes_r", "foot_toes_l" ],
+ "material": [ { "type": "leather", "covered_by_mat": 100, "thickness": 2 } ],
+ "encumbrance": 15,
+ "coverage": 100
+ },
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_ankle_r", "foot_ankle_l" ],
+ "material": [ { "type": "leather", "covered_by_mat": 100, "thickness": 2.0 } ],
+ "coverage": 40
+ },
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_sole_r", "foot_sole_l" ],
+ "material": [
+ { "type": "leather", "covered_by_mat": 100, "thickness": 0.1 },
+ { "type": "rubber", "covered_by_mat": 100, "thickness": 4.0 }
+ ],
+ "coverage": 100
+ }
+ ]
},
{
"id": "kawaii_shoes_hi",
"//": "Loosely based on medium survivor boots.",
+ "copy-from": "kawaii_dress_shoes",
"looks_like": "kawaii_dress_shoes",
"type": "ARMOR",
"name": { "str": "pair of survivor maid shoes", "str_pl": "pairs of survivor maid shoes" },
"description": "A pair of black dress shoes designed to be worn with a maid dress. They have been reinforced with kevlar for greater protection.",
- "weight": "400 g",
- "volume": "750 ml",
+ "weight": "1130 g",
"price": 24000,
"price_postapoc": 6000,
"material": [ "kevlar", "leather" ],
- "symbol": "[",
- "color": "dark_gray",
- "covers": [ "foot_l", "foot_r" ],
- "coverage": 100,
- "warmth": 15,
- "encumbrance": 15,
- "material_thickness": 5,
"environmental_protection": 2,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "STURDY" ]
+ "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "STURDY" ],
+ "armor": [
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_heel_r", "foot_heel_l", "foot_arch_r", "foot_arch_l", "foot_toes_r", "foot_toes_l" ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 3.5 },
+ { "type": "leather", "covered_by_mat": 100, "thickness": 2 }
+ ],
+ "encumbrance": 20,
+ "coverage": 100
+ },
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_ankle_r", "foot_ankle_l" ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 3.5 },
+ { "type": "leather", "covered_by_mat": 100, "thickness": 2.0 }
+ ],
+ "coverage": 40
+ },
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_sole_r", "foot_sole_l" ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 0.1 },
+ { "type": "leather", "covered_by_mat": 100, "thickness": 0.1 },
+ { "type": "rubber", "covered_by_mat": 100, "thickness": 4.0 }
+ ],
+ "coverage": 100
+ }
+ ]
},
{
"id": "kawaii_boots",
- "//": "Loosely based on leather boots.",
+ "//": "Loosely based on boots.",
"type": "ARMOR",
"category": "clothing",
"name": { "str": "pair of maid boots", "str_pl": "pairs of maid boots" },
"description": "A pair of black boots designed to be worn with a maid dress.",
- "weight": "800 g",
- "volume": "2000 ml",
+ "weight": "1060 g",
+ "volume": "2500 ml",
"price": 10000,
"price_postapoc": 750,
- "material": [ "leather" ],
+ "to_hit": -1,
+ "bashing": 1,
"symbol": "[",
+ "looks_like": "dress_shoes",
"color": "dark_gray",
- "covers": [ "foot_l", "foot_r" ],
- "coverage": 90,
"warmth": 20,
- "encumbrance": 12,
- "material_thickness": 3,
"environmental_protection": 2,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF" ]
+ "flags": [ "VARSIZE", "FANCY", "WATERPROOF" ],
+ "armor": [
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [
+ "foot_toes_r",
+ "foot_toes_l",
+ "foot_ankle_r",
+ "foot_ankle_l",
+ "foot_heel_r",
+ "foot_heel_l",
+ "foot_arch_r",
+ "foot_arch_l"
+ ],
+ "material": [ { "type": "leather", "covered_by_mat": 100, "thickness": 2.5 } ],
+ "encumbrance": 12,
+ "coverage": 100
+ },
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_sole_r", "foot_sole_l" ],
+ "material": [
+ { "type": "leather", "covered_by_mat": 100, "thickness": 0.1 },
+ { "type": "rubber", "covered_by_mat": 100, "thickness": 6.0 }
+ ],
+ "coverage": 100
+ }
+ ]
},
{
"id": "kawaii_boots_hi",
"//": "Loosely based on medium survivor boots.",
+ "copy-from": "kawaii_boots",
"looks_like": "kawaii_boots",
"type": "ARMOR",
"name": { "str": "pair of survivor maid boots", "str_pl": "pairs of survivor maid boots" },
"description": "A pair of black boots designed to be worn with a maid dress. They have been reinforced with kevlar for greater protection.",
- "weight": "600 g",
- "volume": "1250 ml",
+ "weight": "1330 g",
"price": 24000,
"price_postapoc": 6000,
"material": [ "kevlar", "leather" ],
- "symbol": "[",
- "color": "dark_gray",
- "covers": [ "foot_l", "foot_r" ],
- "coverage": 100,
- "warmth": 30,
- "encumbrance": 16,
- "material_thickness": 7,
"environmental_protection": 4,
- "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "STURDY" ]
+ "flags": [ "VARSIZE", "FANCY", "WATERPROOF", "STURDY" ],
+ "armor": [
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [
+ "foot_toes_r",
+ "foot_toes_l",
+ "foot_ankle_r",
+ "foot_ankle_l",
+ "foot_heel_r",
+ "foot_heel_l",
+ "foot_arch_r",
+ "foot_arch_l"
+ ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 3.5 },
+ { "type": "leather", "covered_by_mat": 100, "thickness": 2.5 }
+ ],
+ "encumbrance": 16,
+ "coverage": 100
+ },
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_sole_r", "foot_sole_l" ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 0.1 },
+ { "type": "leather", "covered_by_mat": 100, "thickness": 0.1 },
+ { "type": "rubber", "covered_by_mat": 100, "thickness": 6.0 }
+ ],
+ "coverage": 100
+ }
+ ]
},
{
"id": "kawaii_maid_niso_thick",
+ "//": "Loosrly based on stockings",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "pair of maid stockings", "str_pl": "pairs of maid stockings" },
"description": "A pair of black stockings with white lace trim. The thick material keeps the wearer's legs warm.",
"weight": "90 g",
@@ -520,121 +724,137 @@
"price_postapoc": 250,
"material": [ "cotton" ],
"symbol": "[",
+ "looks_like": "leg_warmers",
"color": "dark_gray",
- "covers": [ "foot_l", "foot_r", "leg_l", "leg_r" ],
- "coverage": 75,
- "encumbrance": 5,
- "warmth": 15,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ]
+ "warmth": 10,
+ "material_thickness": 0.1,
+ "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ],
+ "armor": [
+ { "encumbrance": 5, "coverage": 100, "covers": [ "foot_l", "foot_r" ] },
+ {
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_lower_l", "leg_lower_r", "leg_knee_l", "leg_knee_r" ],
+ "coverage": 100,
+ "encumbrance": 4
+ },
+ { "covers": [ "leg_l", "leg_r" ], "specifically_covers": [ "leg_upper_l", "leg_upper_r" ], "coverage": 60 }
+ ]
},
{
"id": "kawaii_maid_niso_thin",
+ "copy-from": "kawaii_maid_niso_thick",
"type": "ARMOR",
"category": "clothing",
"name": { "str": "pair of maid stockings (sheer)", "str_pl": "pairs of maid stockings (sheer)" },
"description": "A pair of black stockings with white lace trim. The material is thin enough to be slightly transparent when worn.",
"weight": "40 g",
- "volume": "250 ml",
- "price": 500,
- "price_postapoc": 250,
- "material": [ "cotton" ],
- "symbol": "[",
- "color": "dark_gray",
- "covers": [ "foot_l", "foot_r", "leg_l", "leg_r" ],
- "coverage": 75,
- "encumbrance": 0,
- "warmth": 0,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ]
+ "armor": [
+ { "encumbrance": 2, "coverage": 100, "covers": [ "foot_l", "foot_r" ] },
+ {
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_lower_l", "leg_lower_r", "leg_knee_l", "leg_knee_r" ],
+ "coverage": 100,
+ "encumbrance": 1
+ },
+ { "covers": [ "leg_l", "leg_r" ], "specifically_covers": [ "leg_upper_l", "leg_upper_r" ], "coverage": 60 }
+ ]
},
{
"id": "kawaii_tights_black",
+ "//": "Loosely based on tights",
+ "repairs_like": "jeans",
"type": "ARMOR",
- "category": "clothing",
"name": "black tights",
"description": "A pair of warm tights.",
- "weight": "40 g",
+ "weight": "114 g",
"volume": "250 ml",
- "price": 500,
- "price_postapoc": 250,
+ "price": 2000,
+ "price_postapoc": 100,
"material": [ "cotton" ],
"symbol": "[",
+ "looks_like": "leggings",
"color": "dark_gray",
- "covers": [ "foot_l", "foot_r", "leg_l", "leg_r" ],
- "coverage": 95,
- "encumbrance": 10,
- "warmth": 40,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ]
+ "warmth": 10,
+ "material_thickness": 0.1,
+ "flags": [ "VARSIZE", "SKINTIGHT" ],
+ "armor": [ { "coverage": 100, "covers": [ "foot_l", "foot_r", "leg_r", "leg_l" ] } ]
},
{
"id": "kawaii_tights_white",
+ "copy-from": "kawaii_tights_black",
"type": "ARMOR",
"category": "clothing",
"name": "white tights",
- "description": "A pair of warm tights.",
- "weight": "40 g",
- "volume": "250 ml",
- "price": 500,
- "price_postapoc": 250,
- "material": [ "cotton" ],
- "symbol": "[",
- "color": "dark_gray",
- "covers": [ "foot_l", "foot_r", "leg_l", "leg_r" ],
- "coverage": 95,
- "encumbrance": 10,
- "warmth": 40,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ]
+ "description": "A pair of warm tights."
},
- {
+ {
"id": "kawaii_maid_garter",
+ "//": "Based on garter_belt",
"type": "ARMOR",
- "category": "clothing",
- "name": { "str": "garter belt" },
- "description": "A black garter belt, designed to hold up stockings. It could also be used to conceal a handgun under your skirt, if needed.",
- "weight": "10 g",
- "volume": "250 ml",
- "price": 1500,
+ "name": { "str": "maid garter belt" },
+ "description": "A black garter belt with white trim, designed to hold up stockings. It could also be used to conceal a handgun, if needed.",
+ "weight": "80 g",
+ "volume": "200 ml",
+ "looks_like": "panties",
+ "price": 500,
"price_postapoc": 250,
"material": [ "cotton" ],
"symbol": "[",
"color": "dark_gray",
- "use_action": {
- "type": "holster",
- "holster_prompt": "Conceal handgun",
- "holster_msg": "You hide your %s.",
- "max_volume": "500 ml",
- "draw_cost": 80,
- "skills": [ "pistol" ]
- },
- "flags": [ "FANCY" ]
+ "material_thickness": 0.1,
+ "flags": [ "SKINTIGHT", "VARSIZE", "FANCY", "TARDIS" ],
+ "armor": [ { "encumbrance": 1, "coverage": 38, "covers": [ "torso" ], "specifically_covers": [ "torso_lower" ] } ],
+ "pocket_data": [
+ {
+ "magazine_well": "500 ml",
+ "pocket_type": "CONTAINER",
+ "holster": true,
+ "moves": 80
+ }
+ ],
+ "use_action": { "type": "holster" }
},
{
"id": "kawaii_secretpoach",
- "//": "Loosely based on deep concealment holster.",
+ "//": "Loosely based on deep concealment holster, aka bholster.",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "garter purse" },
- "description": "A small storage purse that can be concealed beneath a skirt, held up using a garter band. It also has sleeves for concealing handgun magazines, if needed.",
+ "description": "A small storage purse that can be concealed beneath a skirt, held up using a garter band. It also has sleeves for concealing handgun magazines, if needed.",
"weight": "120 g",
"volume": "250 ml",
- "price": 2000,
- "price_postapoc": 1000,
- "material": [ "cotton" ],
+ "price": 3000,
+ "price_postapoc": 500,
+ "material": [ "lycra" ],
"symbol": "[",
- "color": "dark_gray",
- "storage": "500 ml",
- "use_action": {
- "type": "holster",
- "holster_prompt": "Conceal magazine",
- "holster_msg": "You coneal your %s.",
- "multi": 2,
- "max_volume": "250 ml",
- "draw_cost": 40,
- "flags": [ "MAG_COMPACT" ]
- }
+ "looks_like": "bholster",
+ "color": "light_gray",
+ "sided": true,
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "500 ml",
+ "max_contains_weight": "1 kg",
+ "max_item_length": "165 mm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "250 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "165 mm",
+ "flag_restriction": [ "MAG_COMPACT" ],
+ "moves": 40
+ }
+ ],
+ "flags": [ "SKINTIGHT", "WATER_FRIENDLY" ],
+ "armor": [
+ {
+ "encumbrance": [ 1, 3 ],
+ "coverage": 25,
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_hip_l", "leg_hip_r" ]
+ }
+ ]
},
{
"type": "ARMOR",
@@ -662,51 +882,164 @@
},
{
"id": "tux",
+ "repairs_like": "trenchcoat",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "tuxedo" },
"description": "A full-body tuxedo. Makes the apocalypse feel a little more classy.",
"weight": "1587 g",
"volume": "5500 ml",
"price": 21000,
"price_postapoc": 750,
- "material": [ "cotton" ],
+ "to_hit": -5,
"symbol": "[",
+ "looks_like": "suit",
"color": "dark_gray",
- "covers": [ "leg_l", "leg_r", "torso", "arm_l", "arm_r" ],
- "coverage": 95,
- "encumbrance": 13,
- "max_encumbrance": 16,
- "storage": "2500 ml",
+ "armor": [
+ {
+ "covers": [ "torso" ],
+ "specifically_covers": [ "torso_lower" ],
+ "material": [ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 } ],
+ "coverage": 100,
+ "encumbrance": [ 13, 16 ]
+ },
+ {
+ "covers": [ "torso" ],
+ "specifically_covers": [ "torso_upper" ],
+ "material": [ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 } ],
+ "coverage": 90
+ },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "material": [ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 } ],
+ "coverage": 95,
+ "encumbrance": [ 13, 13 ]
+ },
+ {
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_upper_l", "leg_upper_r", "leg_knee_l", "leg_knee_r", "leg_lower_l", "leg_lower_r", "leg_hip_l", "leg_hip_r" ],
+ "material": [ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.5 } ],
+ "coverage": 100
+ }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "800 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "800 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "600 ml",
+ "max_contains_weight": "1 kg",
+ "max_item_length": "13 cm",
+ "moves": 120
+ }
+ ],
"warmth": 30,
- "material_thickness": 4,
- "environmental_protection": 1,
"flags": [ "VARSIZE", "POCKETS", "FANCY" ]
},
{
"id": "survivor_tux_leather",
+ "copy-from": "tux",
"type": "ARMOR",
"name": { "str": "tailored tuxedo" },
"description": "A full-body tuxedo, the proper uniform of a butler. It has been reinforced with leather for greater protection.",
"weight": "3050 g",
"volume": "11250 ml",
- "price": 17900,
- "price_postapoc": 1500,
+ "price": 25000,
+ "price_postapoc": 850,
"material": [ "leather", "cotton" ],
- "symbol": "[",
- "color": "dark_gray",
- "covers": [ "leg_l", "leg_r", "torso", "arm_l", "arm_r" ],
- "coverage": 100,
- "encumbrance": 13,
- "max_encumbrance": 16,
- "storage": "5500 ml",
- "warmth": 30,
- "material_thickness": 5,
+ "armor": [
+ {
+ "covers": [ "torso" ],
+ "specifically_covers": [ "torso_lower" ],
+ "material": [
+ { "type": "leather", "covered_by_mat": 100, "thickness": 2.0 },
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 }
+ ],
+ "coverage": 100,
+ "encumbrance": [ 13, 16 ]
+ },
+ {
+ "covers": [ "torso" ],
+ "specifically_covers": [ "torso_upper" ],
+ "material": [
+ { "type": "leather", "covered_by_mat": 100, "thickness": 2.0 },
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 }
+ ],
+ "coverage": 90
+ },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "material": [
+ { "type": "leather", "covered_by_mat": 100, "thickness": 2.0 },
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 }
+ ],
+ "coverage": 95,
+ "encumbrance": [ 13, 13 ]
+ },
+ {
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_upper_l", "leg_upper_r", "leg_knee_l", "leg_knee_r", "leg_lower_l", "leg_lower_r", "leg_hip_l", "leg_hip_r" ],
+ "material": [
+ { "type": "leather", "covered_by_mat": 100, "thickness": 1.5 },
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.5 }
+ ],
+ "coverage": 100
+ }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "800 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "800 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "600 ml",
+ "max_contains_weight": "1 kg",
+ "max_item_length": "13 cm",
+ "moves": 120
+ }
+ ],
"environmental_protection": 2,
- "flags": [ "VARSIZE", "HOOD", "COLLAR", "POCKETS", "WATERPROOF", "FANCY" ]
+ "flags": [ "VARSIZE", "POCKETS", "FANCY", "HOOD", "COLLAR", "WATERPROOF" ]
},
{
"id": "survivor_tux",
+ "copy-from": "tux",
"type": "ARMOR",
"name": { "str": "survivor tuxedo" },
"description": "A full-body tuxedo, the proper uniform of a butler. It has been reinforced with kevlar for greater protection and has dedicated storage for throwing weapons.",
@@ -715,143 +1048,178 @@
"price": 150000,
"price_postapoc": 5000,
"material": [ "kevlar", "cotton" ],
- "symbol": "[",
- "color": "dark_gray",
- "covers": [ "leg_l", "leg_r", "torso", "arm_l", "arm_r" ],
- "coverage": 100,
- "encumbrance": 13,
- "max_encumbrance": 16,
- "storage": "5500 ml",
- "warmth": 30,
- "material_thickness": 5,
+ "armor": [
+ {
+ "covers": [ "torso" ],
+ "specifically_covers": [ "torso_lower" ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 2.0 },
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 }
+ ],
+ "coverage": 100,
+ "encumbrance": [ 13, 16 ]
+ },
+ {
+ "covers": [ "torso" ],
+ "specifically_covers": [ "torso_upper" ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 2.0 },
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 }
+ ],
+ "coverage": 90
+ },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 2.0 },
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 1.0 }
+ ],
+ "coverage": 95,
+ "encumbrance": [ 13, 13 ]
+ },
+ {
+ "covers": [ "leg_l", "leg_r" ],
+ "specifically_covers": [ "leg_upper_l", "leg_upper_r", "leg_knee_l", "leg_knee_r", "leg_lower_l", "leg_lower_r", "leg_hip_l", "leg_hip_r" ],
+ "material": [
+ { "type": "kevlar", "covered_by_mat": 100, "thickness": 1.5 },
+ { "type": "cotton", "covered_by_mat": 100, "thickness": 0.5 }
+ ],
+ "coverage": 100
+ }
+ ],
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "1000 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "800 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "800 ml",
+ "max_contains_weight": "2 kg",
+ "max_item_length": "16 cm",
+ "moves": 80
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "600 ml",
+ "max_contains_weight": "1 kg",
+ "max_item_length": "13 cm",
+ "moves": 120
+ },
+ {
+ "magazine_well": "50 ml",
+ "holster": true,
+ "flag_restriction": [ "SHEATH_KNIFE" ],
+ "moves": 30,
+ "max_contains_volume": "100 ml",
+ "max_contains_weight": "500 g",
+ "max_item_length": "10 cm"
+ },
+ {
+ "magazine_well": "50 ml",
+ "holster": true,
+ "flag_restriction": [ "SHEATH_KNIFE" ],
+ "moves": 30,
+ "max_contains_volume": "100 ml",
+ "max_contains_weight": "500 g",
+ "max_item_length": "10 cm"
+ },
+ {
+ "magazine_well": "50 ml",
+ "holster": true,
+ "flag_restriction": [ "SHEATH_KNIFE" ],
+ "moves": 30,
+ "max_contains_volume": "100 ml",
+ "max_contains_weight": "500 g",
+ "max_item_length": "10 cm"
+ },
+ {
+ "magazine_well": "50 ml",
+ "holster": true,
+ "flag_restriction": [ "SHEATH_KNIFE" ],
+ "moves": 30,
+ "max_contains_volume": "100 ml",
+ "max_contains_weight": "500 g",
+ "max_item_length": "10 cm"
+ },
+ {
+ "magazine_well": "50 ml",
+ "holster": true,
+ "flag_restriction": [ "SHEATH_KNIFE" ],
+ "moves": 30,
+ "max_contains_volume": "100 ml",
+ "max_contains_weight": "500 g",
+ "max_item_length": "10 cm"
+ },
+ {
+ "magazine_well": "50 ml",
+ "holster": true,
+ "flag_restriction": [ "SHEATH_KNIFE" ],
+ "moves": 30,
+ "max_contains_volume": "100 ml",
+ "max_contains_weight": "500 g",
+ "max_item_length": "10 cm"
+ }
+ ],
"environmental_protection": 3,
- "use_action": {
- "type": "holster",
- "holster_prompt": "Sheath throwing knife",
- "holster_msg": "You sheath your %s",
- "max_volume": "250 ml",
- "multi": 12,
- "flags": [ "SHEATH_DAGGER" ]
- },
- "flags": [ "VARSIZE", "HOOD", "COLLAR", "POCKETS", "WATERPROOF", "RAINPROOF", "STURDY", "SUPER_FANCY" ]
- },
- {
- "id": "kawaii_vest",
- "//": "Loosely based on utility vest.",
- "type": "ARMOR",
- "category": "clothing",
- "name": { "str": "maid utility vest" },
- "description": "A modified utility vest with many pockets, worn by maids.",
- "weight": "516 g",
- "volume": "1 L",
- "price": 3900,
- "price_postapoc": 500,
- "material": [ "cotton" ],
- "symbol": "[",
- "color": "light_gray",
- "covers": [ "torso" ],
- "coverage": 20,
- "encumbrance": 2,
- "max_encumbrance": 5,
- "storage": "3 L",
- "warmth": 5,
- "material_thickness": 2,
- "flags": [ "VARSIZE", "WAIST" ]
- },
- {
- "id": "kawaii_vest_tac",
- "//": "Loosely based on tac vest.",
- "type": "ARMOR",
- "category": "clothing",
- "looks_like": "kawaii_vest",
- "name": { "str": "maid tactical vest" },
- "description": "A modified tac vest meant to carry your gear and ammunition, worn by maids.",
- "weight": "600 g",
- "volume": "1250 ml",
- "price": 7400,
- "price_postapoc": 2000,
- "material": [ "cotton" ],
- "symbol": "[",
- "color": "light_gray",
- "covers": [ "torso" ],
- "coverage": 20,
- "encumbrance": 2,
- "max_encumbrance": 5,
- "storage": "3 L",
- "warmth": 5,
- "material_thickness": 2,
- "use_action": {
- "type": "holster",
- "holster_prompt": "Stash magazine",
- "holster_msg": "You stash your %s.",
- "multi": 4,
- "min_volume": "250 ml",
- "max_volume": "1 L",
- "draw_cost": 60,
- "flags": [ "MAG_COMPACT", "MAG_BULKY" ]
- },
- "flags": [ "VARSIZE", "WAIST" ]
+ "flags": [ "VARSIZE", "POCKETS", "SUPER_FANCY", "HOOD", "COLLAR", "WATERPROOF", "RAINPROOF", "STURDY" ]
},
{
"id": "kawaii_scarf",
+ "//": "Based on wool scarf, aka scarf. Just slightly warmer and more expensive.",
"type": "TOOL_ARMOR",
"category": "clothing",
"symbol": "[",
"color": "light_gray",
"name": { "str": "fashionable scarf", "str_pl": "fashionable scarves" },
"description": "A stylish light cloth scarf, worn over the mouth for warmth.",
- "price": 3800,
- "price_postapoc": 50,
+ "price": 7500,
+ "price_postapoc": 150,
"material": [ "cotton" ],
"weight": "120 g",
"volume": "1000 ml",
"to_hit": -3,
- "covers": [ "mouth" ],
"flags": [ "OUTER", "ALLOWS_NATURAL_ATTACKS", "FANCY" ],
"warmth": 55,
- "environmental_protection": 5,
- "encumbrance": 3,
- "coverage": 85,
- "material_thickness": 1,
- "use_action": {
- "type": "transform",
- "msg": "You loosen the scarf.",
- "target": "kawaii_scarf_loose",
- "menu_text": "Adjust scarf"
- }
+ "environmental_protection": 4,
+ "material_thickness": 1.5,
+ "use_action": { "type": "transform", "msg": "You loosen your %s.", "target": "kawaii_scarf_loose", "menu_text": "Loosen" },
+ "armor": [ { "encumbrance": 3, "coverage": 85, "covers": [ "mouth" ] } ]
},
{
"id": "kawaii_scarf_loose",
+ "copy-from": "kawaii_scarf",
"type": "TOOL_ARMOR",
"category": "clothing",
"symbol": "[",
"color": "light_gray",
"name": { "str": "fashionable scarf (loose)", "str_pl": "fashionable scarves (loose)" },
"description": "A stylish light cloth scarf, worn over the mouth for warmth.",
- "price": 3800,
- "price_postapoc": 50,
- "material": [ "cotton" ],
- "weight": "120 g",
- "volume": "1000 ml",
- "to_hit": -3,
- "covers": [ "mouth" ],
- "flags": [ "OUTER", "ALLOWS_NATURAL_ATTACKS", "FANCY" ],
"warmth": 20,
- "environmental_protection": 5,
- "encumbrance": 2,
- "coverage": 45,
- "material_thickness": 1,
- "use_action": {
- "type": "transform",
- "msg": "You pull the scarf tighter around you.",
- "target": "kawaii_scarf",
- "menu_text": "Adjust scarf"
- }
+ "use_action": { "type": "transform", "msg": "You wrap your %s a bit tighter.", "target": "scarf", "menu_text": "Wrap tighter" },
+ "armor": [ { "encumbrance": 2, "coverage": 45, "covers": [ "mouth" ] } ]
},
{
"id": "kawaii_raincoat",
+ "//": "Based on rain coat, aka coat_rain. But lighter and with no pockets.",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "transparent rain coat" },
"description": "A transparent raincoat made from very thin vinyl. The material is thin enough that the entire coat can fold away into a pocket when not in use.",
"weight": "120 g",
@@ -860,53 +1228,46 @@
"price_postapoc": 50,
"material": [ "plastic", "cotton" ],
"symbol": "[",
+ "looks_like": "coat_winter",
"color": "blue",
- "covers": [ "torso", "arm_l", "arm_r" ,"head" ],
- "coverage": 95,
- "encumbrance": 3,
+ "armor": [
+ {
+ "covers": [ "torso" ],
+ "specifically_covers": [ "torso_upper", "torso_lower" ],
+ "coverage": 100,
+ "encumbrance": [ 7, 15 ]
+ },
+ { "covers": [ "arm_l", "arm_r" ], "coverage": 100, "encumbrance": [ 7, 7 ] }
+ ],
"warmth": 5,
- "material_thickness": 2,
+ "material_thickness": 0.2,
"environmental_protection": 3,
- "flags": [ "HOOD", "POCKETS", "WATERPROOF", "RAINPROOF", "OUTER", "FANCY" ],
+ "flags": [ "VARSIZE", "POCKETS", "WATERPROOF", "RAINPROOF", "HOOD", "OUTER", "SOFT", "FANCY" ],
"use_action": {
"type": "transform",
- "msg": "You pack the hood.",
+ "msg": "You pack the %s hood.",
"target": "kawaii_raincoat_off",
- "menu_text": "Toggle hood"
+ "menu_text": "Pack hood"
}
},
{
"id": "kawaii_raincoat_off",
+ "copy-from": "kawaii_raincoat",
"type": "ARMOR",
"category": "clothing",
- "name": { "str": "transparent rain coat (hood packed)" },
- "description": "A transparent raincoat made from very thin vinyl. The material is thin enough that the entire coat can fold away into a pocket when not in use.",
- "weight": "120 g",
- "volume": "750 ml",
- "price": 7900,
- "price_postapoc": 50,
- "material": [ "plastic", "cotton" ],
- "symbol": "[",
- "color": "blue",
- "covers": [ "torso", "arm_l", "arm_r" ],
- "coverage": 95,
- "encumbrance": 3,
- "warmth": 5,
- "material_thickness": 2,
- "environmental_protection": 3,
- "flags": [ "POCKETS", "WATERPROOF", "RAINPROOF", "OUTER", "FANCY" ],
+ "name": { "str": "transparent rain coat (hood packed)", "str_pl": "transparent rain coats (hood packed)" },
+ "delete": { "flags": [ "HOOD" ] },
"use_action": {
"type": "transform",
- "msg": "You unpack the hood.",
+ "msg": "You unpack the %s hood.",
"target": "kawaii_raincoat",
- "menu_text": "Toggle hood"
+ "menu_text": "Unpack hood"
}
},
{
"id": "kawaii_maid_panties",
"//": "Based on panties. Fancy, no warmth, and different skin.",
"type": "ARMOR",
- "category": "clothing",
"name": { "str_sp": "white panties" },
"description": "Pure white panties, very breathable and comfortable even in summer.",
"weight": "32 g",
@@ -917,17 +1278,15 @@
"symbol": "[",
"looks_like": "briefs",
"color": "white",
- "covers": [ "leg_l", "leg_r" ],
- "coverage": 15,
"warmth": 0,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ]
+ "material_thickness": 0.1,
+ "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ],
+ "armor": [ { "coverage": 75, "covers": [ "leg_l", "leg_r" ], "specifically_covers": [ "leg_hip_l", "leg_hip_r" ] } ]
},
{
"id": "kawaii_maid_bra",
"//": "Based on bra. Fancy, no warmth, and different skin.",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "white bra" },
"description": "Pure white bra, very breathable and comfortable even in summer.",
"weight": "32 g",
@@ -938,135 +1297,130 @@
"symbol": "[",
"looks_like": "tank_top",
"color": "white",
- "covers": [ "torso" ],
- "coverage": 15,
- "warmth": 5,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ]
- },
- {
- "id": "kawaii_bikini_bottom_black",
- "type": "ARMOR",
- "category": "clothing",
- "name": "black bikini bottom",
- "description": "A simple black bikini bottom.",
- "weight": "32 g",
- "volume": "250 ml",
- "price": 1000,
- "material": [ "cotton" ],
- "symbol": "[",
- "color": "light_red",
- "covers": [ "leg_l", "leg_r" ],
- "coverage": 15,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "SKINTIGHT", "WATER_FRIENDLY" ]
- },
- {
- "id": "kawaii_bikini_top_black",
- "type": "ARMOR",
- "category": "clothing",
- "name": "black bikini top",
- "description": "A simple black bikini top.",
- "weight": "32 g",
- "volume": "250 ml",
- "price": 1800,
- "material": [ "cotton" ],
- "symbol": "[",
- "color": "light_red",
- "covers": [ "torso" ],
- "coverage": 10,
- "material_thickness": 1,
- "flags": [ "VARSIZE", "WATER_FRIENDLY", "SKINTIGHT" ]
+ "warmth": 0,
+ "material_thickness": 0.1,
+ "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ],
+ "armor": [ { "coverage": 25, "covers": [ "torso" ], "specifically_covers": [ "torso_upper" ] } ]
},
{
"id": "kawaii_maid_hardcase",
- "//": "Loosely based on survivor duffel bag with fixed encumbrance and a dedicated weapon compartment.",
+ "//": "Loosely based on survivor_duffel_bag with fixed encumbrance and a dedicated weapon compartment akin to back holster.",
"type": "ARMOR",
"name": { "str": "hardcase" },
"description": "A huge rectangular hardcase. Normally used for carrying large musical instruments, sniper rifles, or sensitive electrical equipment.",
- "weight": "800 g",
- "volume": "7500 ml",
- "price": 12000,
+ "weight": "1000 g",
+ "volume": "7875 ml",
+ "price": 24000,
+ "price_postapoc": 3250,
"material": [ "plastic", "steel" ],
"symbol": "[",
+ "looks_like": "back_holster",
"color": "dark_gray",
- "covers": [ "torso" ],
- "coverage": 30,
- "encumbrance": 15,
- "storage": "30 L",
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "30 L",
+ "max_contains_weight": "60 kg",
+ "max_item_length": "60 cm",
+ "magazine_well": "7500 ml",
+ "moves": 300
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "holster": true,
+ "min_item_volume": "1500 ml",
+ "max_contains_volume": "9 L",
+ "max_contains_weight": "10 kg",
+ "max_item_length": "133 cm",
+ "moves": 150
+ }
+ ],
+ "use_action": { "type": "holster" },
+ "warmth": 10,
"material_thickness": 2,
- "use_action": {
- "type": "holster",
- "holster_prompt": "Stow large gun",
- "holster_msg": "You stow your %s",
- "min_volume": "1250 ml",
- "max_volume": "9000 ml",
- "draw_cost": 150,
- "skills": [ "smg", "shotgun", "rifle", "launcher" ]
- },
- "flags": [ "WATER_FRIENDLY", "BELTED", "STURDY", "NO_QUICKDRAW" ]
+ "flags": [ "WATER_FRIENDLY", "STURDY", "BELTED", "NO_QUICKDRAW" ],
+ "armor": [ { "encumbrance": [ 15, 15 ], "coverage": 80, "covers": [ "torso" ], "specifically_covers": [ "torso_hanging_back" ] } ]
},
{
"id": "kawaii_maid_hardcase_mini",
- "//": "Loosely based on survivor rucksack with fixed encumbrance and a dedicated weapon compartment.",
+ "//": "Loosely based on survivor_rucksack with fixed encumbrance and a dedicated weapon compartment.",
"type": "ARMOR",
"name": { "str": "small hardcase" },
"description": "A smaller version of the standard hardcase.",
- "weight": "650 g",
- "volume": "5000 ml",
- "price": 8000,
+ "weight": "800 g",
+ "volume": "10 L",
+ "price": 24000,
+ "price_postapoc": 3000,
"material": [ "plastic", "leather" ],
"symbol": "[",
+ "looks_like": "back_holster",
"color": "dark_gray",
- "covers": [ "torso" ],
- "coverage": 15,
- "encumbrance": 10,
- "storage": "20 L",
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "20 L",
+ "max_contains_weight": "40 kg",
+ "max_item_length": "55 cm",
+ "magazine_well": "6 L",
+ "moves": 300
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "holster": true,
+ "min_item_volume": "1240 ml",
+ "max_contains_volume": "3750 L",
+ "max_contains_weight": "10 kg",
+ "max_item_length": "133 cm",
+ "moves": 150
+ }
+ ],
+ "use_action": { "type": "holster" },
"material_thickness": 2,
- "use_action": {
- "type": "holster",
- "holster_prompt": "Stow gun",
- "holster_msg": "You stow your %s",
- "min_volume": "1250 ml",
- "max_volume": "3750 ml",
- "draw_cost": 150,
- "skills": [ "smg", "shotgun", "rifle" ]
- },
- "flags": [ "WATER_FRIENDLY", "BELTED", "STURDY" ]
+ "flags": [ "WATER_FRIENDLY", "STURDY", "BELTED" ],
+ "armor": [ { "encumbrance": [ 10, 10 ], "coverage": 50, "covers": [ "torso" ], "specifically_covers": [ "torso_hanging_back" ] } ]
},
{
"id": "kawaii_maid_hardcase_slim",
- "//": "Loosely based on survivor backpack with fixed encumbrance and a dedicated weapon compartment.",
+ "//": "Loosely based on survivor_pack with fixed encumbrance and a dedicated weapon compartment.",
"type": "ARMOR",
"name": { "str": "compact hardcase" },
"description": "A compact version of the hardcase.",
- "weight": "400 g",
- "volume": "2500 ml",
- "price": 8000,
+ "weight": "600 g",
+ "volume": "5250 ml",
+ "price": 24000,
+ "price_postapoc": 2250,
"material": [ "plastic", "leather" ],
"symbol": "[",
+ "looks_like": "back_holster",
"color": "dark_gray",
- "covers": [ "torso" ],
- "coverage": 10,
- "encumbrance": 6,
- "storage": "10 L",
+ "pocket_data": [
+ {
+ "pocket_type": "CONTAINER",
+ "max_contains_volume": "10 L",
+ "max_contains_weight": "32 kg",
+ "max_item_length": "50 cm",
+ "magazine_well": "5 L",
+ "moves": 300
+ },
+ {
+ "pocket_type": "CONTAINER",
+ "holster": true,
+ "min_item_volume": "1250 ml",
+ "max_contains_volume": "2500 L",
+ "max_contains_weight": "10 kg",
+ "max_item_length": "133 cm",
+ "moves": 150
+ }
+ ],
"material_thickness": 2,
- "use_action": {
- "type": "holster",
- "holster_prompt": "Stow small gun",
- "holster_msg": "You stow your %s",
- "min_volume": "1250 ml",
- "max_volume": "2500 ml",
- "draw_cost": 150,
- "skills": [ "smg", "shotgun", "rifle" ]
- },
- "flags": [ "WATER_FRIENDLY", "BELTED", "STURDY" ]
+ "flags": [ "WATER_FRIENDLY", "STURDY", "BELTED" ],
+ "armor": [ { "encumbrance": [ 6, 6 ], "coverage": 30, "covers": [ "torso" ], "specifically_covers": [ "torso_hanging_back" ] } ]
},
{
"id": "kawaii_maid_megane_01",
- "//": "Based on standard glasses. Fancy, close layer, and counters both vision impairments.",
+ "//": "Based on glasses_eye. Fancy, close layer, and counters both vision impairments.",
+ "repairs_like": "survivor_goggles",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "pair of maid glasses", "str_pl": "pairs of maid glasses" },
"description": "A maid wearing these will never miss the smallest speck of dust, nor signs of their Mistress's health.",
"weight": "30 g",
@@ -1078,36 +1432,33 @@
"symbol": "[",
"looks_like": "sunglasses",
"color": "cyan",
- "covers": [ "EYES" ],
- "coverage": 75,
"material_thickness": 1,
"environmental_protection": 1,
- "flags": [ "WATER_FRIENDLY", "FANCY", "FIX_NEARSIGHT", "FIX_FARSIGHT", "FRAGILE", "SKINTIGHT" ]
+ "flags": [ "WATER_FRIENDLY", "FANCY", "FIX_NEARSIGHT", "FIX_FARSIGHT", "FRAGILE", "SKINTIGHT" ],
+ "armor": [ { "coverage": 75, "covers": [ "eyes" ], "rigid_layer_only": true } ]
},
{
"id": "kawaii_hitec_megane",
+ "copy-from": "kawaii_maid_megane_01",
"//": "Has ballistic glasses protection, survivor goggles perks, is fancy, counters both vision impairments, close layer, with only 75% coverage. These are glasses, not goggles.",
"type": "ARMOR",
"name": { "str": "pair of survivor maid glasses", "str_pl": "pairs of survivor maid glasses" },
"description": "A maid wearing these will never miss the smallest speck of dust, nor signs of their Mistress's health. These have been reinforced with bullet resistant glass for greater protection, the ability to withstand chemical corrosion, and protection against bright flashes.",
"weight": "90 g",
- "volume": "250 ml",
- "price": 250000,
- "material": [ "kevlar", "plastic" ],
- "symbol": "[",
- "color": "cyan",
- "covers": [ "eyes" ],
- "coverage": 75,
+ "price": 8500,
+ "price_postapoc": 650,
+ "material": [ "plastic", "nylon" ],
"material_thickness": 3,
"environmental_protection": 4,
- "qualities": [ [ "GLARE", 2 ] ],
- "flags": [ "WATER_FRIENDLY", "FANCY", "FIX_NEARSIGHT", "FIX_FARSIGHT", "SUN_GLASSES", "FLASH_PROTECTION", "SKINTIGHT" ]
+ "qualities": [ [ "GLARE", 1 ] ],
+ "flags": [ "WATER_FRIENDLY", "FANCY", "FIX_NEARSIGHT", "FIX_FARSIGHT", "STURDY", "SKINTIGHT", "SUN_GLASSES", "FLASH_PROTECTION" ],
+ "armor": [ { "coverage": 75, "covers": [ "eyes" ], "rigid_layer_only": true } ]
},
{
"id": "kawaii_wedding_dress",
- "//": "Based on the standard wedding dress. Covers arms, encumbrance/warmth/volume/weight slightly higher than a regular dress as less tight-fitting, and has a different skin.",
+ "//": "Based on dress_wedding. Covers arms, encumbrance/warmth/volume/weight slightly higher than a regular dress as less tight-fitting, and has a different skin.",
+ "repairs_like": "haori",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "wedding dress", "str_pl": "wedding dresses" },
"description": "A pure white wedding dress.",
"weight": "850 g",
@@ -1119,19 +1470,20 @@
"symbol": "[",
"looks_like": "dress_wedding",
"color": "white",
- "covers": [ "arm_l", "arm_r", "leg_l", "leg_r", "torso" ],
- "coverage": 90,
- "encumbrance": 10,
"warmth": 10,
- "material_thickness": 2,
- "flags": [ "VARSIZE", "SUPER_FANCY" ]
+ "material_thickness": 0.2,
+ "flags": [ "VARSIZE", "SUPER_FANCY" ],
+ "armor": [
+ { "coverage": 90, "covers": [ "torso" ], "encumbrance": 10 },
+ { "covers": [ "leg_l", "leg_r" ], "coverage": 50, "encumbrance": 10 },
+ { "covers": [ "arm_l", "arm_r" ], "coverage": 50, "encumbrance": 10 }
+ ]
},
{
"id": "kawaii_wedding_veil_a",
- "//": "Copy of the standard weding veil. Has a different skin, covers head only, close layer, not oversize.",
+ "//": "Copy of veil_wedding. Has a different skin, covers head only, close layer, not oversize.",
"repairs_like": "veil_wedding",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "wedding veil" },
"description": "A lacy white wedding veil.",
"weight": "78 g",
@@ -1141,45 +1493,27 @@
"to_hit": -1,
"material": [ "cotton" ],
"symbol": "[",
- "looks_like": "veil_wedding",
+ "looks_like": "scarf",
"color": "white",
- "covers": [ "head" ],
- "coverage": 100,
- "encumbrance": 5,
- "material_thickness": 1,
+ "material_thickness": 0.01,
"environmental_protection": 1,
- "flags": [ "SUPER_FANCY", "SKINTIGHT" ]
+ "flags": [ "SUPER_FANCY", "SKINTIGHT" ],
+ "armor": [ { "encumbrance": 5, "coverage": 100, "covers": [ "head" ] } ]
},
{
"id": "kawaii_wedding_veil_b",
+ "copy-from": "kawaii_wedding_veil_a",
"//": "Copy of the standard weding veil. Has a different skin, covers head only, close layer, not oversize.",
- "repairs_like": "veil_wedding",
"type": "ARMOR",
"category": "clothing",
"name": { "str": "wedding veil" },
- "description": "A lacy white wedding veil with additional adornments.",
- "weight": "78 g",
- "volume": "750 ml",
- "price": 8000,
- "price_postapoc": 10,
- "to_hit": -1,
- "material": [ "cotton" ],
- "symbol": "[",
- "looks_like": "veil_wedding",
- "color": "white",
- "covers": [ "head" ],
- "coverage": 100,
- "encumbrance": 5,
- "material_thickness": 1,
- "environmental_protection": 1,
- "flags": [ "SUPER_FANCY", "SKINTIGHT" ]
+ "description": "A lacy white wedding veil with additional adornments."
},
{
"id": "kawaii_wedding_gloves",
- "//": "Copy of extra long white gloves. Fancy.",
+ "//": "Copy of long_glove_white. Fancy.",
"repairs_like": "long_glove_white",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "pair of wedding gloves", "str_pl": "pairs of wedding gloves" },
"description": "A pair of pure white gloves to match a wedding dress.",
"weight": "400 g",
@@ -1191,18 +1525,25 @@
"symbol": "[",
"looks_like": "long_glove_white",
"color": "white",
- "covers": [ "hand_l", "hand_r", "arm_l", "arm_r" ],
- "coverage": 60,
- "warmth": 30,
- "material_thickness": 2,
- "flags": [ "VARSIZE", "FANCY" ]
+ "armor": [
+ { "covers": [ "hand_l", "hand_r" ], "coverage": 100, "encumbrance": 2 },
+ {
+ "covers": [ "arm_l", "arm_r" ],
+ "specifically_covers": [ "arm_elbow_l", "arm_elbow_r", "arm_lower_l", "arm_lower_r" ],
+ "coverage": 100,
+ "encumbrance": 2
+ },
+ { "covers": [ "arm_l", "arm_r" ], "specifically_covers": [ "arm_upper_l", "arm_upper_r" ], "coverage": 50 }
+ ],
+ "warmth": 10,
+ "material_thickness": 0.2,
+ "flags": [ "VARSIZE", "SKINTIGHT", "FANCY" ]
},
{
"id": "kawaii_wedding_shoes",
- "//": "Copy of dress shoes, but with the white high maid shoes skin.",
+ "//": "Copy of dress_shoes, but with the white high maid shoes skin.",
"repairs_like": "dress_shoes",
"type": "ARMOR",
- "category": "clothing",
"name": { "str": "pair of wedding shoes", "str_pl": "pairs of wedding shoes" },
"description": "A pair of beautiful white heels to match a wedding dress.",
"weight": "870 g",
@@ -1213,13 +1554,34 @@
"bashing": 1,
"material": [ "leather" ],
"symbol": "[",
- "looks_like": "dress_shoes",
- "color": "white",
- "covers": [ "foot_l", "foot_r" ],
- "coverage": 60,
- "encumbrance": 15,
+ "looks_like": "sneakers",
+ "color": "dark_gray",
"warmth": 10,
- "material_thickness": 2,
- "flags": [ "VARSIZE", "FANCY" ]
+ "material_thickness": 2.0,
+ "flags": [ "VARSIZE", "FANCY" ],
+ "armor": [
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_heel_r", "foot_heel_l", "foot_arch_r", "foot_arch_l", "foot_toes_r", "foot_toes_l" ],
+ "material": [ { "type": "leather", "covered_by_mat": 100, "thickness": 2 } ],
+ "encumbrance": 15,
+ "coverage": 100
+ },
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_ankle_r", "foot_ankle_l" ],
+ "material": [ { "type": "leather", "covered_by_mat": 100, "thickness": 2.0 } ],
+ "coverage": 40
+ },
+ {
+ "covers": [ "foot_l", "foot_r" ],
+ "specifically_covers": [ "foot_sole_r", "foot_sole_l" ],
+ "material": [
+ { "type": "leather", "covered_by_mat": 100, "thickness": 0.1 },
+ { "type": "rubber", "covered_by_mat": 100, "thickness": 4.0 }
+ ],
+ "coverage": 100
+ }
+ ]
}
]
diff --git a/book.json b/book.json
index 4b9171d..aed0ed0 100644
--- a/book.json
+++ b/book.json
@@ -1,64 +1,29 @@
[
{
- "id": "book_shoggoth",
- "type": "BOOK",
+ "id": "manual_maid",
+ "copy-from": "book_martial",
+ "type": "GENERIC",
"category": "books",
- "name": { "str": "impossible scribbles", "str_pl": "impossible scribbles" },
- "description": "A thin leaflet that's filled with chaotic handwriting, disturbing visuals, impossible mathematical equations, languages not known to anyone on Earth and lists of what appears to be names with all of them crossed out. The leaflet has more pages than possible, each and every one of them getting more and more chaotic and giving you a splitting headache as the fabric of reality seems to collapse around your vision. Suddenly, it's all clear to you. On the final page, you read a complex formula on how to summon a shoggoth, seemingly written in your handwriting.",
- "weight": "150 g",
- "volume": "250 ml",
- "price": "200 USD",
- "material": [ "paper" ],
- "symbol": "?",
- "color": "green",
- "skill": "cooking",
- "required_level": 9,
- "max_level": 9,
- "intelligence": 13,
- "time": "55 m",
- "fun": -50
+ "name": { "str": "A Maid's Memoirs" },
+ "description": "A collection of letters written by various maids, detailing the things they do for their Mistresses.",
+ "martial_art": "style_maid"
},
{
"id": "book_maid_clothing",
+ "copy-from": "tailor_portfolio",
"looks_like": "tailor_portfolio",
"//": "Loosely based on the clothing designer's portfolio. All of the maid clothes and accessories that are useful for combat should require this to learn. Non-combat items can also be learned from the anime convention book.",
"type": "BOOK",
"name": { "str": "Servant's Secret Armoury", "str_pl": "copies of Servant's Secret Armoury" },
- "description": "A leather bound tome that appears to have been handwritten. It contains various designs for modifying servants' attire to be more combat ready, as well as additional conventions on the proper conduct of a servant in battle.",
- "weight": "2063 g",
- "volume": "2 L",
- "price": 9200,
- "price_postapoc": 1000,
- "bashing": 8,
- "material": [ "paper", "leather" ],
- "symbol": "?",
- "color": "light_gray",
- "skill": "tailor",
- "required_level": 5,
- "max_level": 8,
- "intelligence": 10,
- "time": "55 m",
- "fun": -1
+ "description": "A leather bound tome that appears to have been handwritten. It contains various designs for modifying servants' attire to be more combat ready, as well as additional conventions on the proper conduct of a servant in battle."
},
{
"id": "book_maid_weapons",
+ "copy-from": "textbook_weapeast",
"looks_like": "textbook_weapeast",
"//": "Loosely based on The Swords of the Samurai.",
"type": "BOOK",
"name": { "str": "Cleaning House", "str_pl": "copies of Cleaning House" },
- "description": "This book contains various techniques for keeping a mansion in top condition. Upon closer inspection it also contains a number of hidden pages regarding the fabrication of deadly weapons disguised as otherwise ordinary cleaning tools.",
- "weight": "654 g",
- "volume": "1250 ml",
- "price": 6400,
- "price_postapoc": 2500,
- "material": [ "paper" ],
- "symbol": "?",
- "color": "blue",
- "skill": "fabrication",
- "required_level": 5,
- "max_level": 10,
- "intelligence": 9,
- "time": "55 m",
- "fun": -1
+ "description": "This book contains various techniques for keeping a mansion in top condition. Upon closer inspection it also contains a number of hidden pages regarding the fabrication of deadly weapons disguised as otherwise ordinary cleaning tools."
}
]
diff --git a/item_groups.json b/item_groups.json
index 99ef73f..9774a82 100644
--- a/item_groups.json
+++ b/item_groups.json
@@ -41,11 +41,6 @@
"magazine": 100,
"subtype": "distribution",
"entries":[
- { "item": "maid_dress_french", "prob": 3 },
- { "item": "kawaii_maid_hat", "prob": 3 },
- { "item": "kawaii_hat_cotton", "prob": 3 },
- { "item": "kawaii_maid_dress", "prob": 3 },
- { "item": "jokyu_fuku", "prob": 3 },
{ "item": "kawaii_maid_panties", "prob": 3 },
{ "item": "kawaii_maid_bra", "prob": 3 },
{ "item": "kawaii_maid_garter", "prob": 3 },
@@ -63,14 +58,7 @@
"type": "item_group",
"subtype": "distribution",
"items": [
- [ "null", 80 ],
- { "group": "dresser_male", "prob": 40 },
- { "group": "dresser_female", "prob": 40 },
- { "group": "dresser_winter", "prob": 20 },
- { "group": "dresser_servant", "prob": 20 },
- { "group": "dresser_shoes", "prob": 10 },
- { "group": "dresser_shabby", "prob": 5 },
- { "group": "dresser_fancy", "prob": 5 }
+ { "group": "dresser_servant", "prob": 20 }
]
},
{
@@ -82,14 +70,12 @@
{ "group": "maid_underwear", "prob": 90, "damage": [ 0, 4 ] },
{ "group": "shoes_maid", "prob": 30, "damage": [ 0, 4 ] },
{ "distribution": [
- { "item": "kawaii_maid_hat", "prob": 50, "damage": [ 0, 4 ] },
{ "item": "maid_hat", "prob": 50, "damage": [ 0, 4 ] }
]
},
{ "distribution": [
{ "item": "maid_dress", "prob": 100, "damage": [ 0, 4 ] },
- { "item": "kawaii_maid_dress", "prob": 100, "damage": [ 0, 4 ] },
- { "item": "maid_dress_french", "prob": 100, "damage": [ 0, 4 ] }
+ { "item": "maid_dress_short", "prob": 100, "damage": [ 0, 4 ] }
]
},
{ "group": "corpse_female" }
@@ -141,8 +127,7 @@
{ "distribution":
[
{ "item": "maid_dress", "prob": 100 },
- { "item": "kawaii_maid_dress", "prob": 100 },
- { "item": "maid_dress_french", "prob": 100 }
+ { "item": "maid_dress_short", "prob": 100 }
]
},
{ "item": "maid_hat", "prob": 66 }
@@ -154,11 +139,6 @@
"ammo": 100,
"magazine": 100,
"items": [
- [ "maid_dress_french", 3 ],
- [ "kawaii_maid_hat", 3 ],
- [ "kawaii_hat_cotton", 3 ],
- [ "kawaii_maid_dress", 3 ],
- [ "jokyu_fuku", 3 ],
[ "kawaii_maid_panties", 3 ],
[ "kawaii_maid_bra", 3 ],
[ "kawaii_maid_garter", 3 ],
@@ -176,11 +156,6 @@
"type": "item_group",
"subtype": "distribution",
"items":[
- [ "maid_dress_french", 90 ],
- [ "kawaii_maid_hat", 90 ],
- [ "kawaii_hat_cotton", 90 ],
- [ "kawaii_maid_dress", 90 ],
- [ "jokyu_fuku", 90 ],
[ "tux", 90 ],
[ "kawaii_maid_panties", 10 ],
[ "kawaii_maid_bra", 10 ],
@@ -196,14 +171,6 @@
},
{
"type": "item_group",
- "id": "hatstore_hats",
- "items":[
- [ "kawaii_maid_hat", 30 ],
- [ "kawaii_hat_cotton", 30 ]
- ]
- },
- {
- "type": "item_group",
"id": "hatstore_accessories",
"items":[
[ "kawaii_scarf", 10 ]
@@ -229,10 +196,9 @@
"type": "item_group",
"id": "dress_shop",
"items":[
- [ "maid_dress_french", 35 ],
- [ "kawaii_maid_dress", 35 ],
- [ "jokyu_fuku", 35 ],
- [ "kawaii_maid_hat", 10 ],
+ [ "maid_dress", 35 ],
+ [ "maid_dress_short", 35 ],
+ [ "maid_hat", 10 ],
[ "kawaii_scarf", 5 ],
[ "kawaii_maid_bra", 5 ],
[ "kawaii_maid_garter", 5 ],
@@ -256,11 +222,6 @@
"id": "allclothes",
"subtype": "distribution",
"entries":[
- { "item": "maid_dress_french", "prob": 3 },
- { "item": "kawaii_maid_hat", "prob": 3 },
- { "item": "kawaii_hat_cotton", "prob": 3 },
- { "item": "kawaii_maid_dress", "prob": 3 },
- { "item": "jokyu_fuku", "prob": 3 },
{ "item": "kawaii_maid_panties", "prob": 3 },
{ "item": "kawaii_maid_bra", "prob": 3 },
{ "item": "kawaii_maid_garter", "prob": 3 },
@@ -275,22 +236,8 @@
},
{
"type": "item_group",
- "id": "laundry",
- "items":[
- [ "kawaii_maid_dress", 3 ],
- [ "jokyu_fuku", 3 ],
- [ "maid_dress_french", 3 ]
- ]
- },
- {
- "type": "item_group",
"id": "pawn",
"items":[
- [ "maid_dress_french", 3 ],
- [ "kawaii_maid_hat", 3 ],
- [ "kawaii_hat_cotton", 3 ],
- [ "kawaii_maid_dress", 3 ],
- [ "jokyu_fuku", 3 ],
[ "tux", 3 ],
[ "kawaii_maid_panties", 3 ],
[ "kawaii_maid_bra", 3 ],
@@ -305,29 +252,46 @@
]
},
{
- "id": "costume_clothes",
"type": "item_group",
- "items":[
- [ "maid_dress_french", 35 ],
- [ "kawaii_maid_dress", 35 ],
- [ "jokyu_fuku", 35 ]
+ "id": "costume_misc_items",
+ "entries": [
+ { "item": "kawaii_dress_shoes", "prob": 1 },
+ { "item": "kawaii_boots", "prob": 1 }
]
},
{
"id": "costume_accessories",
"type": "item_group",
"items":[
- [ "kawaii_maid_hat", 10 ],
- [ "kawaii_scarf", 5 ],
+ [ "kawaii_scarf", 5 ]
+ ]
+ },
+ {
+ "type": "item_group",
+ "id": "costume_gloves",
+ "subtype": "distribution",
+ "entries": [
+ { "item": "maid_gloves_cotton", "prob": 20 },
+ { "item": "maid_gloves_long_cotton", "prob": 20 }
+ ]
+ },
+ {
+ "id": "costume_undergarments_women",
+ "type": "item_group",
+ "items":[
[ "kawaii_maid_bra", 5 ],
[ "kawaii_maid_garter", 5 ],
[ "petticoat", 5 ],
[ "kawaii_maid_niso_thick", 20 ],
- [ "kawaii_maid_niso_thin", 20 ],
- [ "maid_gloves_cotton", 20 ],
- [ "maid_gloves_long_cotton", 20 ],
- [ "kawaii_dress_shoes", 20 ],
- [ "kawaii_boots", 20 ]
+ [ "kawaii_maid_niso_thin", 20 ]
+ ]
+ },
+ {
+ "type": "item_group",
+ "id": "costume_masks",
+ "subtype": "distribution",
+ "entries": [
+ { "item": "kawaii_scarf", "prob": 5 }
]
},
{
diff --git a/martial_arts_manuals.json b/martial_arts_manuals.json
deleted file mode 100644
index ec57367..0000000
--- a/martial_arts_manuals.json
+++ /dev/null
@@ -1,17 +0,0 @@
-[
- {
- "id": "manual_maid",
- "type": "GENERIC",
- "category": "books",
- "symbol": "?",
- "color": "green",
- "name": { "str": "A Maid's Memoirs" },
- "description": "A collection of letters written by various maids, detailing the things they do for their Mistresses.",
- "price": "200 USD",
- "material": [ "paper" ],
- "weight": "150 g",
- "volume": "250 ml",
- "use_action": "MA_MANUAL",
- "book_data": { "max_level": 0, "intelligence": 5, "time": 10, "fun": 0, "skill": "none", "required_level": 0, "chapters": 5 }
- }
-]
diff --git a/materials.json b/materials.json
deleted file mode 100644
index 36246e1..0000000
--- a/materials.json
+++ /dev/null
@@ -1,18 +0,0 @@
-[
- {
- "type": "material",
- "ident": "maid",
- "name": "maid",
- "bash_resist": 1000,
- "cut_resist": 1000,
- "bash_dmg_verb": "chipped",
- "cut_dmg_verb": "scratched",
- "dmg_adj": [ "marked", "chipped", "cracked", "shattered" ],
- "acid_resist": 1000,
- "elec_resist": 1000,
- "fire_resist": 1000,
- "bullet_resist": 1000,
- "chip_resist": 1000,
- "density": 1000
- }
-]
diff --git a/migration.json b/migration.json
new file mode 100644
index 0000000..ab6ec70
--- /dev/null
+++ b/migration.json
@@ -0,0 +1,7 @@
+[
+ {
+ "id": "maid_dress_french",
+ "type": "MIGRATION",
+ "replace": "maid_dress"
+ }
+]
diff --git a/modinfo.json b/modinfo.json
index 6f4c0c3..c84a292 100644
--- a/modinfo.json
+++ b/modinfo.json
@@ -7,7 +7,7 @@
"maintainers": [ "jc_gargma" ],
"description": "Translated and tweaked version of the original Battle Maid mod.",
"category": "content",
- "dependencies": [ "bn" ],
+ "dependencies": [ "dda" ],
"conflicts": [ "battle_maid", "KawaiiMaidMod", "ProjectKawaii" ]
}
]
diff --git a/monster_drops.json b/monster_drops.json
deleted file mode 100644
index 0c4ae42..0000000
--- a/monster_drops.json
+++ /dev/null
@@ -1,20 +0,0 @@
-[
- {
- "type": "item_group",
- "id": "mon_shoggoth_death_drops",
- "subtype": "collection",
- "entries": [ { "item": "meat_shoggoth", "prob": 40 } ]
- },
- {
- "type": "item_group",
- "id": "mon_shoggoth_maid_death_drops",
- "subtype": "collection",
- "entries": [ { "item": "mini_shoggoth", "prob": 100 } ]
- },
- {
- "type": "item_group",
- "id": "mon_little_maid_death_drops",
- "subtype": "collection",
- "entries": [ { "item": "mini_little_maid", "prob": 100 } ]
- }
-]
diff --git a/monsters.json b/monsters.json
deleted file mode 100644
index ad48074..0000000
--- a/monsters.json
+++ /dev/null
@@ -1,105 +0,0 @@
-[
- {
- "id": "mon_shoggoth_maid",
- "type": "MONSTER",
- "name": { "str": "Cute Maid" },
- "description": "An attractive maid. In addition to the neat appearance, her head has swirls of pink and iridescent colors swirling around. She has a deep seated love for her Mistress.",
- "default_faction": "player",
- "bodytype": "human",
- "species": [ "NETHER" ],
- "diff": 20,
- "volume": "1000 ml",
- "weight": "1 kg",
- "hp": 400,
- "speed": 300,
- "material": [ "flesh" ],
- "symbol": "M",
- "color": "white",
- "aggression": 10,
- "morale": 100,
- "melee_skill": 10,
- "melee_dice": 7,
- "melee_dice_sides": 5,
- "melee_cut": 6,
- "dodge": 8,
- "armor_bash": 10,
- "armor_cut": 30,
- "vision_day": 8,
- "vision_night": 8,
- "harvest": "exempt",
- "special_attacks": [ [ "PARROT", 40] ],
- "death_drops": "mon_shoggoth_maid_death_drops",
- "death_function": [ "MELT" ],
- "regenerates": 50,
- "regen_morale": true,
- "flags": [ "SEES", "SMELLS", "HEARS", "SWIMS", "WARM", "NOGIB", "CAN_OPEN_DOORS", "HUMAN", "PATH_AVOID_DANGER_1", "REVIVES" ],
- "anger_triggers": [ "FRIEND_ATTACKED" ]
- },
- {
- "id": "maid_master",
- "type": "MONSTER",
- "name": { "str": "Mistress", "str_pl": "Mistresses" },
- "description": "A girl entrusted to you by the owner of the house you served at. There's a deep feeling of fear in your stomach as you embrace the cataclysm, but protecting this girl gives you purpose and makes you feel less alone.",
- "default_faction": "player",
- "bodytype": "human",
- "species": [ "HUMAN" ],
- "diff": 2,
- "volume": "1000 ml",
- "weight": "1 kg",
- "hp": 40,
- "speed": 130,
- "material": [ "flesh" ],
- "symbol": "m",
- "color": "brown",
- "aggression": -10,
- "morale": 100,
- "melee_skill": 2,
- "melee_dice": 2,
- "melee_dice_sides": 4,
- "melee_cut": 2,
- "dodge": 2,
- "armor_bash": 0,
- "armor_cut": 0,
- "vision_day": 30,
- "vision_night": 3,
- "harvest": "human",
- "death_function": [ "NORMAL" ],
- "flags": [ "SEES", "HEARS", "SMELLS", "WARM", "GUILT", "BONES", "CAN_OPEN_DOORS", "HUMAN", "PATH_AVOID_DANGER_1" ]
- },
- {
- "id": "mon_little_maid",
- "type": "MONSTER",
- "name": { "str": "Little Maid" },
- "description": "A small maid summoned from a different world. Although difficult to have a conversation with, it seems she had longed to be summoned.",
- "default_faction": "player",
- "bodytype": "human",
- "species": [ "NETHER" ],
- "diff": 2,
- "volume": "1000 ml",
- "weight": "1 kg",
- "hp": 80,
- "speed": 300,
- "material": [ "flesh" ],
- "symbol": "m",
- "color": "white",
- "aggression": 10,
- "morale": 100,
- "melee_skill": 5,
- "melee_dice": 1,
- "melee_dice_sides": 1,
- "melee_cut": 1,
- "dodge": 2,
- "armor_bash": 10,
- "armor_cut": 10,
- "vision_day": 8,
- "vision_night": 8,
- "harvest": "exempt",
- "special_attacks": [ [ "PARROT", 40] ],
- "death_drops": "mon_little_maid_death_drops",
- "death_function": [ "MELT" ],
- "regenerates": 10,
- "regen_morale": true,
- "flags": [ "SEES", "SMELLS", "HEARS", "SWIMS", "WARM", "NOGIB", "CAN_OPEN_DOORS", "HUMAN", "PATH_AVOID_DANGER_1", "REVIVES" ],
- "anger_triggers": [ "FRIEND_ATTACKED" ]
- }
-]
diff --git a/mutations.json b/mutations.json
index 4c7eac4..32bc82e 100644
--- a/mutations.json
+++ b/mutations.json
@@ -31,11 +31,5 @@
"valid": false,
"purifiable": false,
"profession": true
- },
- {
- "type": "mutation",
- "id": "FELINE_EARS",
- "copy-from": "FELINE_EARS",
- "points": 0
}
]
diff --git a/npcs/NC_SHOGGOTH_MAID.json b/npcs/NC_SHOGGOTH_MAID.json
index b0401bb..f61f2ad 100644
--- a/npcs/NC_SHOGGOTH_MAID.json
+++ b/npcs/NC_SHOGGOTH_MAID.json
@@ -5,7 +5,7 @@
"subtype": "collection",
"entries": [
{ "item": "maid_dress", "prob": 100 },
- { "item": "kawaii_maid_hat", "prob": 100 },
+ { "item": "maid_hat", "prob": 100 },
{ "item": "kawaii_maid_garter", "prob": 100 },
{ "item": "petticoat", "prob": 100 },
{ "item": "kawaii_maid_panties", "prob": 100 },
@@ -13,7 +13,7 @@
{ "item": "kawaii_maid_bra", "prob": 100 },
{ "item": "kawaii_boots", "prob": 100 },
{ "item": "maid_gloves_leather", "prob": 100 },
- { "item": "kawaii_vest", "prob": 100 },
+ { "item": "vest", "prob": 100 },
{ "item": "kawaii_maid_hardcase_slim", "prob": 100 },
{ "item": "kawaii_maid_megane_01", "prob": 100 }
]
diff --git a/npcs/TALK_MAID_ALLY.json.old b/npcs/TALK_MAID_ALLY.json.old
deleted file mode 100644
index 6ccb492..0000000
--- a/npcs/TALK_MAID_ALLY.json.old
+++ /dev/null
@@ -1,408 +0,0 @@
-[
- {
- "id": [ "TALK_MAID_ALLY" ],
- "type": "talk_topic",
- "dynamic_line": {
- "is_by_radio": " *pshhhttt* I'm reading you Mistress, over.",
- "no": { "has_reason": { "use_reason": true }, "no": "What is it, Mistress?" }
- },
- "speaker_effect": {
- "sentinel": "maid_init",
- "condition": { "npc_rule": "allow_pick_up" },
- "effect": { "toggle_npc_rule": "allow_pick_up", "opinion": { "trust": 5, "value": 5, "anger": -5, "fear": -5 } }
- },
- "responses": [
- { "text": "I want to give you some commands for combat.", "topic": "TALK_COMBAT_COMMANDS" },
- { "text": "I want to set some miscellaneous rules.", "topic": "TALK_MISC_RULES_MAID" },
- {
- "text": "I'd like to know a bit more about your abilities.",
- "topic": "TALK_MAID_ALLY",
- "effect": "reveal_stats"
- },
- { "text": "There's something I want you to do.", "topic": "TALK_MAID_ORDERS" },
- { "text": "I just wanted to talk for a bit.", "topic": "TALK_MAID_SOCIAL" },
- { "text": "I'd like you to join on as my companion.", "topic": "TALK_SUGGEST_FOLLOW" },
- { "text": "I'm going to go my own way for a while.", "topic": "TALK_LEAVE" },
- { "text": "Let's go.", "topic": "TALK_DONE" }
- ]
- },
- {
- "id": [ "TALK_MAID_SOCIAL" ],
- "type": "talk_topic",
- "dynamic_line": {
- "is_by_radio": " *tshk* Whatever you desire, Mistress. Though perhaps we should meet up first?",
- "no": "Is there something you need help with, Mistress?"
- },
- "responses": [
- {
- "text": "Mind if we just chat for a bit about your history?",
- "topic": "TALK_MAID_CONVERSATION",
- "condition": {
- "and": [ "at_safe_space", { "or": [ { "npc_has_trait_flag": "BG_SURVIVAL_STORY" }, { "npc_has_trait": "NPC_STATIC_NPC" } ] } ]
- },
- "//": "If the NPC already has a BG story, or started out as a static NPC (and so probably doesn't need a random bg story), then go on.",
- "switch": true
- },
- {
- "text": "Mind if we just chat for a bit about your history?",
- "topic": "TALK_MAID_CONVERSATION",
- "condition": "at_safe_space",
- "switch": true,
- "effect": { "npc_add_trait": "BGSS_MAID_KAWAII_1" },
- "//": "If the NPC doesn't have a BG survival story flagged trait, and didn't start the game as a static NPC, give them a BG story.",
- "//2": "This is a stand-in for some kind of better system to add a random trait."
- },
- {
- "text": "Mind if we just chat for a bit about your history?",
- "topic": "TALK_CONVERSATION_DANGER_MAID",
- "condition": { "not": "at_safe_space" },
- "switch": true
- },
- {
- "text": "Mind if we just chat for a bit about your history?",
- "topic": "TALK_MAID_CONVERSATION",
- "condition": { "not": "is_by_radio" },
- "switch": true
- },
- {
- "text": "Let's just chitchat for a while, I could use some relaxation.",
- "topic": "TALK_FRIEND_CHAT",
- "condition": { "not": { "or": [ { "npc_has_effect": "asked_to_socialize" }, { "npc_has_trait": "THRESH_SHOGGOTH" } ] } }
- },
- {
- "text": "Let's just chitchat for a while, I could use some relaxation.",
- "topic": "TALK_SHOGGOTH_CHAT",
- "condition": { "not": { "or": [ { "npc_has_effect": "asked_to_socialize" }, { "not": { "npc_has_trait": "THRESH_SHOGGOTH" } } ] } }
- },
- { "text": "Can I do anything for you?", "topic": "TALK_MISSION_LIST" },
- { "text": "I changed my mind, wanted to ask you something else.", "topic": "TALK_MAID_ALLY" },
- { "text": "Let's go.", "topic": "TALK_DONE" }
- ]
- },
- {
- "id": [ "TALK_MAID_ORDERS" ],
- "type": "talk_topic",
- "dynamic_line": [ "As you command, my Mistress.", "Do you have orders for me?", "How can I serve you?", "Just say the word." ],
- "responses": [
- {
- "text": "Can you teach me anything?",
- "condition": { "not": "is_by_radio" },
- "trial": {
- "type": "CONDITION",
- "condition": {
- "or": [
- { "npc_need": "thirst", "amount": 80 },
- { "npc_need": "hunger", "amount": 160 },
- { "npc_need": "fatigue", "level": "TIRED" },
- { "npc_has_effect": "asked_to_train" },
- "u_driving",
- "npc_driving"
- ]
- }
- },
- "success": { "topic": "TALK_DENY_TRAIN" },
- "failure": { "topic": "TALK_TRAIN_PERSUADE_MAID" }
- },
- {
- "text": "Let's trade items.",
- "condition": { "not": { "or": [ "is_by_radio", { "npc_has_trait": "MAID_RESTRICT" } ] } },
- "topic": "TALK_MAID_ALLY",
- "effect": "start_trade",
- "switch": true,
- "default": true
- },
- {
- "text": "Let's trade items",
- "topic": "TRADE_HALLU",
- "condition": { "npc_has_trait": "HALLUCINATION" },
- "switch": true,
- "default": false
- },
- {
- "text": "I want you to use this item.",
- "condition": { "not": { "or": [ "is_by_radio", { "npc_has_trait": "MAID_RESTRICT" } ] } },
- "topic": "TALK_MAID_ALLY",
- "effect": "npc_gets_item_to_use"
- },
- {
- "text": "Hold on to this item.",
- "condition": { "not": { "or": [ "is_by_radio", { "npc_has_trait": "MAID_RESTRICT" } ] } },
- "topic": "TALK_MAID_ALLY",
- "effect": "npc_gets_item"
- },
- {
- "text": "Guard this position.",
- "condition": { "not": "is_by_radio" },
- "topic": "TALK_MAID_GUARD",
- "effect": "assign_guard"
- },
- {
- "text": "I want to assign you to work at this camp.",
- "condition": { "npc_at_om_location": "FACTION_CAMP_ANY" },
- "topic": "TALK_MAID_GUARD",
- "effect": "assign_camp"
- },
- {
- "text": "Find a horse and mount up!",
- "condition": { "not": "npc_is_riding" },
- "topic": "TALK_DONE",
- "effect": "find_mount"
- },
- {
- "text": "Get off your mount, please.",
- "condition": "npc_is_riding",
- "topic": "TALK_DONE",
- "effect": "dismount"
- },
- {
- "text": "Please go to this location.",
- "topic": "TALK_GOTO_LOCATION",
- "condition": { "or": [ "is_by_radio", "u_has_camp" ] },
- "effect": "goto_location"
- },
- {
- "text": "I want you to build a camp here.",
- "topic": "TALK_HALLU_CAMP",
- "condition": { "npc_has_trait": "HALLUCINATION" },
- "switch": true
- },
- {
- "text": "I want you to build a camp here.",
- "topic": "TALK_DONE",
- "effect": "start_camp",
- "condition": { "npc_at_om_location": "FACTION_CAMP_START" },
- "switch": true,
- "default": true
- },
- {
- "text": "Since we can't build a camp here, I want you to tell me where can we build a camp?",
- "topic": "TALK_CAMP_SITES",
- "condition": { "not": { "npc_at_om_location": "FACTION_CAMP_START" } },
- "switch": true,
- "default": true
- },
- {
- "text": "We need to abandon this camp.",
- "condition": { "npc_at_om_location": "FACTION_CAMP_ANY" },
- "topic": "TALK_DONE",
- "effect": "abandon_camp"
- },
- {
- "text": "Show me what needs to be done at the camp.",
- "topic": "TALK_DONE",
- "effect": "basecamp_mission",
- "condition": { "npc_at_om_location": "FACTION_CAMP_ANY" }
- },
- { "text": "Let's talk about your current activity.", "topic": "TALK_ACTIVITIES" },
- { "text": "Let's go.", "topic": "TALK_DONE" }
- ]
- },
- {
- "id": "TALK_MAID_GUARD",
- "type": "talk_topic",
- "dynamic_line": "With my life, Mistress!",
- "responses": [
- { "text": "I need you to come with me.", "topic": "TALK_MAID_ALLY", "effect": "stop_guard" },
- { "text": "See you around.", "topic": "TALK_DONE" }
- ]
- },
- {
- "id": "TALK_TRAIN_PERSUADE_MAID",
- "type": "talk_topic",
- "dynamic_line": "But Mistress...you can just leave everything to me!",
- "responses": [
- {
- "text": "Come on, we're friends.",
- "trial": { "type": "PERSUADE", "difficulty": 0, "mod": [ [ "TRUST", 6 ], [ "VALUE", 2 ], [ "ANGER", -6 ] ] },
- "success": { "topic": "TALK_TRAIN" },
- "failure": { "topic": "TALK_DENY_PERSONAL", "effect": { "npc_add_effect": "asked_to_train", "duration": 3600 } }
- },
- { "text": "Forget it, let's get going.", "topic": "TALK_DONE" }
- ]
- },
- {
- "id": "TALK_CONVERSATION_DANGER_MAID",
- "type": "talk_topic",
- "dynamic_line": "Are you sure? This doesn't seem like a particularly safe place for small talk…",
- "responses": [
- { "text": "It's fine, we've got a moment.", "topic": "TALK_MAID_CONVERSATION" },
- { "text": "You're right. Forget I said anything, let's get moving.", "topic": "TALK_DONE" }
- ]
- },
- {
- "id": "TALK_MAID_CONVERSATION",
- "type": "talk_topic",
- "dynamic_line": "My history? You mean before I served you? ...I'm sorry, but...",
- "responses": [ { "text": "Actually, never mind.", "topic": "TALK_DONE" } ]
- },
- {
- "id": "TALK_SHOGGOTH_CHAT",
- "type": "talk_topic",
- "dynamic_line": "<shoggoth_chat>",
- "responses": [
- {
- "text": "<chitchat_player_responses>",
- "topic": "TALK_DONE",
- "switch": true,
- "effect": [ "morale_chat_activity", { "npc_add_effect": "asked_to_socialize", "duration": 7000 } ]
- }
- ]
- },
- {
- "id": "TALK_MISC_RULES_MAID",
- "type": "talk_topic",
- "dynamic_line": {
- "and": [
- {
- "and": [
- { "npc_override": "allow_pick_up", "yes": "OVERRIDE: " },
- {
- "npc_rule": "allow_pick_up",
- "yes": { "has_pickup_list": "<ally_rule_allow_pick_up_true_list_text>", "no": "<ally_rule_allow_pick_up_true_text>" },
- "no": "<ally_rule_allow_pick_up_false_text>"
- }
- ]
- },
- {
- "and": [
- { "npc_override": "allow_bash", "yes": " OVERRIDE: ", "no": " " },
- {
- "npc_rule": "allow_bash",
- "yes": "<ally_rule_allow_bash_true_text>",
- "no": "<ally_rule_allow_bash_false_text>"
- }
- ]
- },
- {
- "and": [
- { "npc_override": "allow_sleep", "yes": " OVERRIDE: ", "no": " " },
- {
- "npc_rule": "allow_sleep",
- "yes": "<ally_rule_allow_sleep_true_text>",
- "no": "<ally_rule_allow_sleep_false_text>"
- }
- ]
- },
- {
- "and": [
- { "npc_override": "allow_complain", "yes": " OVERRIDE: ", "no": " " },
- {
- "npc_rule": "allow_complain",
- "yes": "<ally_rule_allow_complain_true_text>",
- "no": "<ally_rule_allow_complain_false_text>"
- }
- ]
- },
- {
- "and": [
- { "npc_override": "allow_pulp", "yes": " OVERRIDE: ", "no": " " },
- {
- "npc_rule": "allow_pulp",
- "yes": "<ally_rule_allow_pulp_true_text>",
- "no": "<ally_rule_allow_pulp_false_text>"
- }
- ]
- },
- {
- "and": [
- { "npc_override": "close_doors", "yes": " OVERRIDE: ", "no": " " },
- {
- "npc_rule": "close_doors",
- "yes": "<ally_rule_close_doors_true_text>",
- "no": "<ally_rule_close_doors_false_text>"
- }
- ]
- },
- {
- "and": [
- { "npc_override": "ignore_noise", "yes": " OVERRIDE: ", "no": " " },
- {
- "npc_rule": "ignore_noise",
- "yes": "<ally_rule_ignore_noise_true_text>",
- "no": "<ally_rule_ignore_noise_false_text>"
- }
- ]
- },
- {
- "and": [
- { "npc_override": "avoid_doors", "yes": " OVERRIDE: ", "no": " " },
- {
- "npc_rule": "avoid_doors",
- "yes": "<ally_rule_avoid_doors_true_text>",
- "no": "<ally_rule_avoid_doors_false_text>"
- }
- ]
- },
- {
- "and": [
- { "npc_override": "forbid_engage", "yes": " OVERRIDE: ", "no": " " },
- {
- "npc_rule": "forbid_engage",
- "yes": "<ally_rule_forbid_engage_true_text>",
- "no": "<ally_rule_forbid_engage_false_text>"
- }
- ]
- }
- ]
- },
- "responses": [
- {
- "truefalsetext": { "condition": { "npc_rule": "allow_pick_up" }, "true": "Don't pick up items.", "false": "You can pick up items now." },
- "topic": "TALK_MISC_RULES_MAID",
- "condition": { "not": { "npc_has_trait": "MAID_RESTRICT" } },
- "effect": { "toggle_npc_rule": "allow_pick_up" }
- },
- {
- "truefalsetext": { "condition": { "npc_rule": "allow_bash" }, "true": "Don't bash obstacles.", "false": "You can bash obstacles." },
- "topic": "TALK_MISC_RULES_MAID",
- "effect": { "toggle_npc_rule": "allow_bash" }
- },
- {
- "truefalsetext": { "condition": { "npc_rule": "allow_sleep" }, "true": "Stay awake.", "false": "Sleep when you feel tired." },
- "topic": "TALK_MISC_RULES_MAID",
- "effect": { "toggle_npc_rule": "allow_sleep" }
- },
- {
- "truefalsetext": { "condition": { "npc_rule": "allow_complain" }, "true": "Stay quiet.", "false": "Tell me when you need something." },
- "topic": "TALK_MISC_RULES_MAID",
- "effect": { "toggle_npc_rule": "allow_complain" }
- },
- {
- "truefalsetext": { "condition": { "npc_rule": "allow_pulp" }, "true": "Leave corpses alone.", "false": "Smash zombie corpses." },
- "topic": "TALK_MISC_RULES_MAID",
- "effect": { "toggle_npc_rule": "allow_pulp" }
- },
- {
- "truefalsetext": { "condition": { "npc_rule": "close_doors" }, "true": "Leave doors open.", "false": "Close the doors." },
- "topic": "TALK_MISC_RULES_MAID",
- "effect": { "toggle_npc_rule": "close_doors" }
- },
- {
- "truefalsetext": {
- "condition": { "npc_rule": "avoid_doors" },
- "true": "Open doors to get where you're going.",
- "false": "Don't walk through closed doors."
- },
- "topic": "TALK_MISC_RULES_MAID",
- "effect": { "toggle_npc_rule": "avoid_doors" }
- },
- {
- "truefalsetext": {
- "condition": { "npc_rule": "ignore_noise" },
- "true": "If you hear a noise but can't see the source, move to investigate it.",
- "false": "Don't investigate noises that you can't see."
- },
- "topic": "TALK_MISC_RULES_MAID",
- "effect": { "toggle_npc_rule": "ignore_noise" }
- },
- {
- "text": "Set up pickup rules.",
- "topic": "TALK_MISC_RULES_MAID",
- "condition": { "not": { "npc_has_trait": "MAID_RESTRICT" } },
- "effect": "set_npc_pickup"
- },
- { "text": "Clear all overrides.", "topic": "TALK_MISC_RULES_MAID", "effect": "clear_overrides" },
- { "text": "Never mind.", "topic": "TALK_DONE" }
- ]
- }
-]
diff --git a/professions.json b/professions.json
index 1351d6f..e4996d0 100644
--- a/professions.json
+++ b/professions.json
@@ -30,7 +30,7 @@
"assassins_throwing_dagger",
"master_doll",
"smart_phone",
- "kawaii_vest",
+ "tacvest",
"kawaii_maid_hardcase_slim",
"kawaii_maid_megane_01"
]
@@ -49,7 +49,7 @@
"kawaii_maid_panties",
"kawaii_maid_niso_thick",
"petticoat",
- "kawaii_maid_hat",
+ "maid_hat",
"maid_dress",
"maid_gloves_leather",
"kawaii_boots"
@@ -132,7 +132,7 @@
"kawaii_maid_panties",
"kawaii_maid_niso_thick",
"petticoat",
- "kawaii_maid_hat",
+ "maid_hat",
"maid_dress",
"maid_gloves_long_cotton",
"kawaii_dress_shoes"
@@ -147,7 +147,8 @@
"female": "Catgirl Maid"
},
"description": "When the cataclysm came, you suddenly grew cat ears and a tail! Now you only need your Mistress to give you a collar.",
- "points": 2,
+ "//": "The minus 3 points is to counterbalance to cost of the mandatory mutations.",
+ "points":-3,
"traits": [
"PROF_NEKOMIMI",
"FELINE_EARS",
@@ -183,7 +184,7 @@
"kawaii_maid_niso_thin",
"petticoat",
"maid_hat",
- "maid_dress_french",
+ "maid_dress",
"maid_gloves_cotton",
"kawaii_dress_shoes"
]
@@ -220,7 +221,7 @@
"dress_shoes"
],
"female": [
- "kawaii_maid_hat",
+ "maid_hat",
"kawaii_maid_bra",
"kawaii_maid_garter",
"kawaii_maid_niso_thick",
diff --git a/recipes.json b/recipes.json
index 7a09eda..48da338 100644
--- a/recipes.json
+++ b/recipes.json
@@ -6,11 +6,12 @@
"subcategory": "CSC_ARMOR_TORSO",
"skill_used": "tailor",
"difficulty": 3,
- "time": "1 h 30 m",
- "book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 35 ] ],
- "components": [
- [ [ "rag", 20 ] ]
+ "time": "3 h 30 m",
+ "reversible": true,
+ "book_learn": [ [ "mag_animecon", 1 ], [ "book_maid_clothing", 1 ] ],
+ "using": [
+ [ "sewing_standard", 35 ],
+ [ "tailoring_cotton", 8 ]
]
},
{
@@ -24,17 +25,18 @@
"time": "2 h",
"book_learn": [ [ "book_maid_clothing", 4 ] ],
"using": [
- [ "filament", 150 ]
+ [ "filament", 150 ],
+ [ "tailoring_cotton", 8 ],
+ [ "tailoring_leather_patchwork", 6 ]
],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" },
+ { "proficiency": "prof_closures_waterproofing" },
+ { "proficiency": "prof_closures" }
],
"components": [
- [ [ "maid_dress" , 1 ] ],
- [ [ "rag" , 20 ] ],
- [ [ "leather", 12 ] ]
+ [ [ "maid_dress" , 1 ] ]
]
},
{
@@ -50,7 +52,13 @@
"book_learn": [ [ "book_maid_clothing", 6 ] ],
"using": [
[ "sewing_standard", 150 ],
- [ "adhesive", 12 ]
+ [ "adhesive", 12 ],
+ [ "tailoring_cotton", 8 ]
+ ],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_closures" },
+ { "proficiency": "prof_closures_waterproofing" }
],
"components": [
[ [ "kawaii_maid_dress_long_leather", 1 ] ],
@@ -66,36 +74,22 @@
[ "purse", 2 ],
[ "fanny", 2 ]
],
- [ [ "kevlar_plate", 24 ] ],
- [ [ "rag", 20 ] ]
- ]
- },
- {
- "type": "recipe",
- "result": "maid_dress_french",
- "category": "CC_ARMOR",
- "subcategory": "CSC_ARMOR_TORSO",
- "skill_used": "tailor",
- "difficulty": 3,
- "time": "1 h 30 m",
- "book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 15 ] ],
- "components": [
- [ [ "rag", 15 ] ]
+ [ [ "kevlar_plate", 24 ] ]
]
},
{
"type": "recipe",
- "result": "kawaii_maid_dress",
+ "result": "maid_dress_short",
"category": "CC_ARMOR",
"subcategory": "CSC_ARMOR_TORSO",
"skill_used": "tailor",
"difficulty": 3,
- "time": "1 h 30 m",
- "book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 35 ] ],
- "components": [
- [ [ "rag", 10 ] ]
+ "time": "3 h",
+ "reversible": true,
+ "book_learn": [ [ "mag_animecon", 1 ], [ "book_maid_clothing", 1 ] ],
+ "using": [
+ [ "sewing_standard", 35 ],
+ [ "tailoring_cotton", 6 ]
]
},
{
@@ -109,17 +103,18 @@
"time": "2 h",
"book_learn": [ [ "book_maid_clothing", 4 ] ],
"using": [
- [ "filament", 100 ]
+ [ "filament", 100 ],
+ [ "tailoring_cotton", 8 ],
+ [ "tailoring_leather_patchwork", 6 ]
],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" },
+ { "proficiency": "prof_closures_waterproofing" },
+ { "proficiency": "prof_closures" }
],
"components": [
- [ [ "kawaii_maid_dress" , 1] ],
- [ [ "rag" , 20 ] ],
- [ [ "leather", 12 ] ]
+ [ [ "maid_dress_short" , 1] ]
]
},
{
@@ -135,7 +130,13 @@
"book_learn": [ [ "book_maid_clothing", 6 ] ],
"using": [
[ "sewing_standard", 100 ],
- [ "adhesive", 8 ]
+ [ "adhesive", 8 ],
+ [ "tailoring_cotton", 8 ]
+ ],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_closures" },
+ { "proficiency": "prof_closures_waterproofing" }
],
"components": [
[ [ "kawaii_maid_dress_ex", 1 ] ],
@@ -151,52 +152,21 @@
[ "purse", 2 ],
[ "fanny", 2 ]
],
- [ [ "kevlar_plate", 24 ] ],
- [ [ "rag", 20 ] ]
- ]
- },
- {
- "type": "recipe",
- "result": "jokyu_fuku",
- "category": "CC_ARMOR",
- "subcategory": "CSC_ARMOR_TORSO",
- "skill_used": "tailor",
- "difficulty": 4,
- "time": "2 h 30 m",
- "reversible": false,
- "book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 35 ] ],
- "components": [
- [ [ "rag", 25 ] ]
- ]
- },
- {
- "type": "recipe",
- "result": "kawaii_hat_cotton",
- "//": "Loosely based on cotton hat.",
- "category": "CC_ARMOR",
- "subcategory": "CSC_ARMOR_HEAD",
- "skill_used": "tailor",
- "difficulty": 2,
- "time": "40 m",
- "book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 8 ] ],
- "components": [
- [ [ "rag", 3 ] ]
+ [ [ "kevlar_plate", 24 ] ]
]
},
{
"type": "recipe",
- "result": "kawaii_maid_hat",
+ "result": "maid_hat",
"category": "CC_ARMOR",
"subcategory": "CSC_ARMOR_HEAD",
"skill_used": "tailor",
"difficulty": 2,
"time": "30 m",
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 8 ] ],
- "components": [
- [ [ "rag", 2 ] ]
+ "using": [
+ [ "sewing_standard", 8 ],
+ [ "tailoring_cotton", 1 ]
]
},
{
@@ -209,17 +179,17 @@
"time": "45 m",
"book_learn": [ [ "book_maid_clothing", 4 ] ],
"using": [
- [ "filament", 24 ]
+ [ "filament", 24 ],
+ [ "tailoring_cotton", 1 ],
+ [ "tailoring_leather_patchwork", 5 ]
],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" },
+ { "proficiency": "prof_millinery" }
],
"components": [
- [ [ "kawaii_maid_hat", 1 ] ],
- [ [ "rag", 2 ] ],
- [ [ "leather", 10 ] ]
+ [ [ "maid_hat", 1 ] ]
]
},
{
@@ -234,12 +204,18 @@
"book_learn": [ [ "book_maid_clothing", 6 ] ],
"using": [
[ "sewing_standard", 40 ],
- [ "adhesive", 2 ]
+ [ "adhesive", 2 ],
+ [ "tailoring_cotton", 1 ]
+ ],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_closures" },
+ { "proficiency": "prof_closures_waterproofing" },
+ { "proficiency": "prof_millinery" }
],
"components": [
[ [ "kawaii_maid_hat_thermal_off", 1 ] ],
- [ [ "kevlar_plate", 4 ] ],
- [ [ "rag", 2 ] ]
+ [ [ "kevlar_plate", 4 ] ]
]
},
{
@@ -251,9 +227,9 @@
"difficulty": 2,
"time": "30 m",
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 8 ] ],
- "components": [
- [ [ "rag", 3 ] ]
+ "using": [
+ [ "sewing_standard", 8 ],
+ [ "tailoring_cotton", 1 ]
]
},
{
@@ -266,9 +242,9 @@
"difficulty": 2,
"time": "10 m",
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 4 ] ],
- "components": [
- [ [ "rag", 4 ] ]
+ "using": [
+ [ "sewing_standard", 4 ],
+ [ "tailoring_cotton", 2 ]
]
},
{
@@ -282,17 +258,16 @@
"time": "30 m",
"book_learn": [ [ "book_maid_clothing", 4 ] ],
"using": [
- [ "filament", 6 ]
+ [ "filament", 6 ],
+ [ "tailoring_cotton", 2 ],
+ [ "tailoring_leather_patchwork", 1 ]
],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" }
],
"components": [
- [ [ "maid_gloves_cotton", 1 ] ],
- [ [ "rag", 4 ] ],
- [ [ "leather", 2 ] ]
+ [ [ "maid_gloves_cotton", 1 ] ]
]
},
{
@@ -307,12 +282,17 @@
"book_learn": [ [ "book_maid_clothing", 6 ] ],
"using": [
[ "sewing_standard", 50 ],
- [ "adhesive", 2 ]
+ [ "adhesive", 2 ],
+ [ "tailoring_cotton", 2 ]
+ ],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_closures" },
+ { "proficiency": "prof_closures_waterproofing" }
],
"components": [
[ [ "maid_gloves_leather", 1 ] ],
- [ [ "kevlar_plate", 4 ] ],
- [ [ "rag", 4 ] ]
+ [ [ "kevlar_plate", 4 ] ]
]
},
{
@@ -325,9 +305,9 @@
"difficulty": 2,
"time": "10 m",
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 8 ] ],
- "components": [
- [ [ "rag", 8 ] ]
+ "using": [
+ [ "sewing_standard", 8 ],
+ [ "tailoring_cotton", 4 ]
]
},
{
@@ -341,17 +321,16 @@
"time": "30 m",
"book_learn": [ [ "book_maid_clothing", 4 ] ],
"using": [
- [ "filament", 12 ]
+ [ "filament", 12 ],
+ [ "tailoring_cotton", 4 ],
+ [ "tailoring_leather_patchwork", 2 ]
],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" }
],
"components": [
- [ [ "maid_gloves_long_cotton", 1 ] ],
- [ [ "rag", 8 ] ],
- [ [ "leather", 4 ] ]
+ [ [ "maid_gloves_long_cotton", 1 ] ]
]
},
{
@@ -366,12 +345,17 @@
"book_learn": [ [ "book_maid_clothing", 6 ] ],
"using": [
[ "sewing_standard", 100 ],
- [ "adhesive", 4 ]
+ [ "adhesive", 4 ],
+ [ "tailoring_cotton", 4 ]
+ ],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_closures" },
+ { "proficiency": "prof_closures_waterproofing" }
],
"components": [
[ [ "maid_gloves_long_leather", 1 ] ],
- [ [ "kevlar_plate", 8 ] ],
- [ [ "rag", 8 ] ]
+ [ [ "kevlar_plate", 8 ] ]
]
},
{
@@ -384,13 +368,13 @@
"difficulty": 2,
"time": "35 m",
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ "using": [
+ [ "tailoring_leather_patchwork", 3 ]
],
- "components": [
- [ [ "leather", 6 ] ]
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" },
+ { "proficiency": "prof_cobbling" }
]
},
{
@@ -403,13 +387,13 @@
"difficulty": 2,
"time": "35 m",
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ "using": [
+ [ "tailoring_leather_patchwork", 5 ]
],
- "components": [
- [ [ "leather", 10 ] ]
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" },
+ { "proficiency": "prof_cobbling" }
]
},
{
@@ -427,6 +411,10 @@
[ "sewing_standard", 80 ],
[ "adhesive", 4 ]
],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_cobbling" }
+ ],
"components": [
[ [ "kawaii_dress_shoes", 1 ] ],
[ [ "kevlar_plate", 4 ] ],
@@ -448,6 +436,10 @@
[ "sewing_standard", 80 ],
[ "adhesive", 4 ]
],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_cobbling" }
+ ],
"components": [
[ [ "kawaii_boots", 1 ] ],
[ [ "kevlar_plate", 4 ] ],
@@ -464,9 +456,9 @@
"difficulty": 2,
"time": "15 m",
"book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
- "using": [ [ "sewing_standard", 9 ] ],
- "components": [
- [ [ "rag", 12 ] ]
+ "using": [
+ [ "sewing_standard", 9 ],
+ [ "tailoring_cotton", 5 ]
]
},
{
@@ -479,9 +471,9 @@
"difficulty": 2,
"time": "10 m",
"book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
- "using": [ [ "sewing_standard", 6 ] ],
- "components": [
- [ [ "rag", 8 ] ]
+ "using": [
+ [ "sewing_standard", 6 ],
+ [ "tailoring_cotton", 4 ]
]
},
{
@@ -493,9 +485,9 @@
"difficulty": 2,
"time": "35 m",
"book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
- "using": [ [ "sewing_standard", 30 ] ],
- "components": [
- [ [ "rag", 8 ] ]
+ "using": [
+ [ "sewing_standard", 30 ],
+ [ "tailoring_cotton", 4 ]
]
},
{
@@ -508,9 +500,9 @@
"difficulty": 4,
"time": "20 m",
"book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
- "using": [ [ "sewing_standard", 18 ] ],
- "components": [
- [ [ "rag", 12 ] ]
+ "using": [
+ [ "sewing_standard", 18 ],
+ [ "tailoring_cotton", 5 ]
]
},
{
@@ -523,9 +515,9 @@
"time": "80 m",
"reversible": false,
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 30 ] ],
- "components": [
- [ [ "rag", 8 ] ]
+ "using": [
+ [ "sewing_standard", 30 ],
+ [ "tailoring_cotton", 4 ]
]
},
{
@@ -538,9 +530,9 @@
"difficulty": 2,
"time": "1 h",
"book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
- "using": [ [ "sewing_standard", 15 ] ],
- "components": [
- [ [ "rag", 2 ] ]
+ "using": [
+ [ "sewing_standard", 15 ],
+ [ "tailoring_cotton", 1 ]
]
},
{
@@ -553,47 +545,15 @@
"difficulty": 2,
"time": "1 h",
"book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
- "using": [ [ "sewing_standard", 15 ] ],
+ "using": [
+ [ "sewing_standard", 15 ],
+ [ "tailoring_cotton", 1 ]
+ ],
"components": [
- [ [ "rag", 2 ] ],
[ [ "wire", 1 ] ]
]
},
{
- "type": "recipe",
- "result": "kawaii_vest",
- "//": "A utility vest upgraded with cuter detailing.",
- "category": "CC_ARMOR",
- "subcategory": "CSC_ARMOR_TORSO",
- "skill_used": "tailor",
- "difficulty": 2,
- "skills_required": [ "fabrication", 2 ],
- "time": "45 m",
- "book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
- "using": [ [ "sewing_standard", 50 ] ],
- "components": [
- [ [ "vest" , 1 ] ],
- [ [ "rag", 6 ] ]
- ]
- },
- {
- "type": "recipe",
- "result": "kawaii_vest_tac",
- "//": "A tac vest upgraded with cuter detailing.",
- "category": "CC_ARMOR",
- "subcategory": "CSC_ARMOR_TORSO",
- "skill_used": "tailor",
- "difficulty": 6,
- "skills_required": [ "fabrication", 6 ],
- "time": "45 m",
- "book_learn": [ [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 50 ] ],
- "components": [
- [ [ "tacvest" , 1 ] ],
- [ [ "rag", 6 ] ]
- ]
- },
- {
"type": "recipe",
"result": "tux",
"category": "CC_ARMOR",
@@ -603,9 +563,9 @@
"time": "1 h 30 m",
"reversible": false,
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 150 ] ],
- "components": [
- [ [ "rag", 20 ] ]
+ "using": [
+ [ "sewing_standard", 150 ],
+ [ "tailoring_cotton", 8 ]
]
},
{
@@ -620,17 +580,18 @@
"reversible": false,
"book_learn": [ [ "book_maid_clothing", 4 ] ],
"using": [
- [ "filament", 150 ]
- ],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ [ "filament", 150 ],
+ [ "tailoring_cotton", 8 ],
+ [ "tailoring_leather_patchwork", 6 ]
+ ],
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" },
+ { "proficiency": "prof_closures_waterproofing" },
+ { "proficiency": "prof_closures" }
],
"components": [
- [ [ "tux" , 1] ],
- [ [ "rag" , 20 ] ],
- [ [ "leather", 12 ] ]
+ [ [ "tux" , 1] ]
]
},
{
@@ -647,7 +608,13 @@
"book_learn": [ [ "book_maid_clothing", 6 ] ],
"using": [
[ "sewing_standard", 150 ],
- [ "adhesive", 12 ]
+ [ "adhesive", 12 ],
+ [ "tailoring_cotton", 8 ]
+ ],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_closures" },
+ { "proficiency": "prof_closures_waterproofing" }
],
"components": [
[ [ "survivor_tux_leather", 1 ] ],
@@ -664,8 +631,7 @@
[ "purse", 2 ],
[ "fanny", 2 ]
],
- [ [ "kevlar_plate", 24 ] ],
- [ [ "rag", 20 ] ]
+ [ [ "kevlar_plate", 24 ] ]
]
},
{
@@ -719,7 +685,7 @@
"qualities": [ { "id": "CHISEL", "level": 3 } ],
"tools": [ [ [ "swage", -1 ] ] ],
"components": [
- [ [ "wood_structural", 1, "LIST" ] ]
+ [ [ "log", 1 ] ]
]
},
{
@@ -739,7 +705,7 @@
"qualities": [ { "id": "CHISEL", "level": 3 } ],
"tools": [ [ [ "swage", -1 ] ] ],
"components": [
- [ [ "wood_structural_small", 1, "LIST" ] ]
+ [ [ "log", 1 ] ]
]
},
{
@@ -759,7 +725,7 @@
"qualities": [ { "id": "CHISEL", "level": 3 } ],
"tools": [ [ [ "swage", -1 ] ] ],
"components": [
- [ [ "wood_structural_small", 1, "LIST" ] ],
+ [ [ "log", 1 ] ],
[ [ "spike", 6 ] ]
]
},
@@ -785,7 +751,10 @@
"components": [
[ [ "blade", 1 ] ],
[ [ "spike", 1 ] ],
- [ [ "wood_structural", 1, "LIST" ], [ "broom", 1 ] ]
+ [
+ [ "log", 1 ],
+ [ "broom", 1 ]
+ ]
]
},
{
@@ -852,7 +821,7 @@
],
"tools": [ [ [ "polisher", 20 ] ] ],
"components": [
- [ [ "wood_structural", 1, "LIST" ] ],
+ [ [ "log", 1 ] ],
[ [ "wax", 2] ]
]
},
@@ -905,30 +874,12 @@
{ "id": "HAMMER", "level": 2 }
],
"components": [
- [ [ "wood_structural", 1, "LIST" ] ],
+ [ [ "log", 1 ] ],
[ [ "rag", 4 ] ]
]
},
{
"type": "recipe",
- "result": "flask_shoggoth",
- "category": "CC_OTHER",
- "skill_used": "cooking",
- "difficulty": 9,
- "time": "100 m",
- "reversible": false,
- "autolearn": false,
- "book_learn": [ [ "book_shoggoth", 9 ] ],
- "tools": [ [ [ "chemistry_set", 5 ] ] ],
- "components": [
- [ [ "meat_shoggoth", 1 ] ],
- [ [ "flask_glass", 1 ] ],
- [ [ "blood", 10 ] ],
- [ [ "maid_dress", 1 ] ]
- ]
- },
- {
- "type": "recipe",
"result": "master_doll",
"category": "CC_OTHER",
"subcategory": "CSC_OTHER_OTHER",
@@ -938,9 +889,9 @@
"time": "1 h",
"reversible": false,
"book_learn": [ [ "mag_animecon", 3 ], [ "book_maid_clothing", 3 ] ],
- "using": [ [ "sewing_standard", 50 ] ],
- "components": [
- [ [ "rag", 12 ] ]
+ "using": [
+ [ "sewing_standard", 50 ],
+ [ "tailoring_cotton", 5 ]
]
},
{
@@ -962,26 +913,6 @@
},
{
"type": "recipe",
- "result": "summon_little_maid",
- "category": "CC_OTHER",
- "subcategory": "CSC_OTHER_TOOLS",
- "skill_used": "fabrication",
- "difficulty": 3,
- "time": "20 m",
- "reversible": false,
- "autolearn": false,
- "qualities":[ { "id": "CUT", "level": 1 } ],
- "tools": [
- [ [ "feather", -1 ] ]
- ],
- "components": [
- [ [ "paper", 5 ] ],
- [ [ "sugar", 1 ] ],
- [ [ "wood_structural_small", 1, "LIST" ] ]
- ]
- },
- {
- "type": "recipe",
"result": "kawaii_raincoat",
"category": "CC_ARMOR",
"subcategory": "CSC_ARMOR_TORSO",
@@ -990,43 +921,15 @@
"time": "30 m",
"book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
"using": [
- [ "adhesive", 2 ]
+ [ "adhesive", 2 ],
+ [ "tailoring_cotton", 4 ]
],
"components": [
- [ [ "rag", 10 ] ],
[ [ "bag_plastic", 10 ], [ "duct_tape", 50 ] ]
]
},
{
"type": "recipe",
- "result": "kawaii_bikini_bottom_black",
- "category": "CC_ARMOR",
- "subcategory": "CSC_ARMOR_LEGS",
- "skill_used": "tailor",
- "difficulty": 2,
- "time": "35 m",
- "book_learn": [ [ "mag_animecon", 1 ], [ "book_maid_clothing", 1 ] ],
- "using": [ [ "sewing_standard", 15 ] ],
- "components": [
- [ [ "rag", 2 ] ]
- ]
- },
- {
- "type": "recipe",
- "result": "kawaii_bikini_top_black",
- "category": "CC_ARMOR",
- "subcategory": "CSC_ARMOR_TORSO",
- "skill_used": "tailor",
- "difficulty": 2,
- "time": "38 m",
- "book_learn": [ [ "mag_animecon", 1 ], [ "book_maid_clothing", 1 ] ],
- "using": [ [ "sewing_standard", 15 ] ],
- "components": [
- [ [ "rag", 2 ] ]
- ]
- },
- {
- "type": "recipe",
"result": "kawaii_maid_hardcase",
"category": "CC_ARMOR",
"subcategory": "CSC_ARMOR_STORAGE",
@@ -1057,16 +960,17 @@
"book_learn": [ [ "book_maid_clothing", 5 ] ],
"using": [
[ "plastic_molding", 15 ],
- [ "adhesive", 5 ]
+ [ "adhesive", 5 ],
+ [ "tailoring_leather_patchwork", 18 ]
],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" },
+ { "proficiency": "prof_closures_waterproofing" },
+ { "proficiency": "prof_closures" }
],
"components": [
- [ [ "kawaii_maid_hardcase_slim", 1 ] ],
- [ [ "leather", 36 ] ]
+ [ [ "kawaii_maid_hardcase_slim", 1 ] ]
]
},
{
@@ -1081,15 +985,14 @@
"book_learn": [ [ "book_maid_clothing", 4 ] ],
"using": [
[ "plastic_molding", 10 ],
- [ "adhesive", 4 ]
+ [ "adhesive", 4 ],
+ [ "tailoring_leather_patchwork", 10 ]
],
- "qualities": [
- { "id": "SEW", "level": 1 },
- { "id": "CUT", "level": 1 },
- { "id": "LEATHER_AWL", "level": 1 }
- ],
- "components": [
- [ [ "leather", 20 ] ]
+ "proficiencies": [
+ { "proficiency": "prof_leatherworking_basic" },
+ { "proficiency": "prof_leatherworking" },
+ { "proficiency": "prof_closures_waterproofing" },
+ { "proficiency": "prof_closures" }
]
},
{
@@ -1103,9 +1006,9 @@
"time": "90 m",
"reversible": true,
"book_learn": [ [ "mag_animecon", 2 ], [ "book_maid_clothing", 2 ] ],
- "using": [ [ "sewing_standard", 3 ] ],
- "components": [
- [ [ "rag", 4 ] ]
+ "using": [
+ [ "sewing_standard", 3 ],
+ [ "tailoring_cotton", 2 ]
]
},
{
@@ -1143,6 +1046,11 @@
[ "soldering_standard", 40 ],
[ "adhesive", 1 ]
],
+ "proficiencies": [
+ { "proficiency": "prof_polymerworking" },
+ { "proficiency": "prof_closures" },
+ { "proficiency": "prof_closures_waterproofing" }
+ ],
"qualities": [ { "id": "SCREW", "level": 1 } ],
"components": [
[ [ "kawaii_maid_megane_01" , 1 ] ],
diff --git a/scenario.json b/scenario.json
index 3145b4e..c6e4db8 100644
--- a/scenario.json
+++ b/scenario.json
@@ -1,11 +1,12 @@
-{
+[
+ {
"type": "scenario",
- "ident": "maid_mansion",
- "name": "Mansion",
+ "id": "maid_mansion",
+ "name": "Mansion Evac",
"points": 0,
"description": "You lived in a luxurious mansion, as a servant or maybe as one of the owners. With the havok of the evacuation, you were unable to secure a route to safety, and were forced to shelter at home. Now the zombies have other ideas...",
- "allowed_locs": [ "sloc_mansion" ],
- "start_name": "Mansion",
+ "allowed_locs": [ "sloc_mansion_basement" ],
+ "start_name": "In Mansion",
"professions": [
"maid",
"cat_maid",
@@ -13,5 +14,6 @@
"shoggoth_master",
"battle_maid"
],
- "flags": [ "LONE_START", "CITY_START" ]
-}
+ "flags": [ "LONE_START" ]
+ }
+]
diff --git a/speech.json b/speech.json
deleted file mode 100644
index 653ce6d..0000000
--- a/speech.json
+++ /dev/null
@@ -1,296 +0,0 @@
-[
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"We'll have a lot of fun when you feel better!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Mistress! A-ah, my Mistress... Kya!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Mistress! U-um... I lo--lo--love you! Kya! I actually said it!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"I am a maid♪ Your maid♪ Cleaning, washing, cooking... Huh, what was next again?\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"If Mistress desires it, I'll talk as much as you want! And even if you don't, I'll still keep talking!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"We'll have as much fun as Mistress wants♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Mistress! Mistress! Are you going to play with me?\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"This feeling of Mistress having me is becoming addictive...♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"This uniform is the most suitable for serving you! How do you like it? Do you feel carnal desires rising up in you?\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Blobs, Triffids, Mycus... they are diffcult for humans to counter.\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Please allow me to give many things their death.\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress...\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Don't worry, I'm not wearing anything under♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"The future may be dark, but I have my Mistress by my side. So, please... please... don't leave me alone.\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Those who try to take my Mistress away will turn into minchi!♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Mistress, are you a lolicon? Or do you like big breasts? If you tell me, I can become more to your liking!♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"If you have a pet carrier, you can store me in it. I am a pet... your pet, Mistress♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"I dream about us a lot!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Please let me know if you need a bath. I can scrub you and clean everything from sweat to dirt and make you smell good♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"You've worked really hard! As a reward, I will take you out on a date...\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Please pass me your dirty clothes. I will keep them clean and beautiful♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Is it okay for me to die? Yeah, right!♪ Ah, I will fully recover even from the most mortal wounds. That's why you don't have to be worried about me, Mistress♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Is it okay to love a maid? Ah, I don't mind at all! I will always be by my Mistress' side♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"When I first met Mistress, I thought, I wonder if this is love at first sight? What?\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Hello, Mistress\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"I am a slave to my Mistress' love♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"I'm sorry, Mistress, but... I want to lick you♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Mistress, cheating is not okay.\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"I like that I can talk to my Mistress, to be able to walk hand in hand with my Mistress, and give my body for my Mistress to... nevermind!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Do you want to lay your head on my lap? It would make me comfortable, too♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Please use me! Why don't you want to use me? Please use me! Use me!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Mistress! Do you want to hold hands?\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"It's okay if Mistress ties me up! That way I can't get away... Ufufu...\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"No matter the weather, my heart beats on if I'm with my Mistress♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Please use me as a shield in an emergency. I want to be useful and not be like the other maids.\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"I will do my best!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"Mistress' smell... it's intoxicating... haa, Mistress...♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_shoggoth_maid",
- "sound": "\"It's okay if you touch me more♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistress.\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistressssss~\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistressssss?\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistress~♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistress~~~\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistress!\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Miiistress?...\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Miiistress~~♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistress!♪\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistress...\"",
- "volume": 10
- },
- {
- "type": "speech",
- "speaker": "mon_little_maid",
- "sound": "\"Mistress...♪\"",
- "volume": 10
- }
-]
diff --git a/talk_tags.json b/talk_tags.json
deleted file mode 100644
index 53b3e92..0000000
--- a/talk_tags.json
+++ /dev/null
@@ -1,44 +0,0 @@
-[
- {
- "type": "snippet",
- "category": "<shoggoth_chat>",
- "text": [
- "\"We'll have a lot of fun when you feel better!\"",
- "\"Mistress! A-ah, my Mistress... Kya!\"",
- "\"Mistress! U-um... I lo--lo--love you! Kya! I actually said it!\"",
- "\"I am a maid♪ Your maid♪ Cleaning, washing, cooking... Huh, what was next again?\"",
- "\"If Mistress desires it, I'll talk as much as you want! And even if you don't, I'll still keep talking!\"",
- "\"We'll have as much fun as Mistress wants♪\"",
- "\"Mistress! Mistress! Are you going to play with the me?\"",
- "\"This feeling of Mistress having me is becoming addictive...♪\"",
- "\"This uniform is the most suitable for serving you! How do you like it? Do you feel carnal desires rising up in you?\"",
- "\"Blobs, Triffids, Mycus... they are too diffcult for humans to counter.\"",
- "\"Please allow me to give many things their death.\"",
- "\"Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress Mistress...\"",
- "\"Don't worry, I'm not wearing anything under♪\"",
- "\"The future may be dark, but I have my Mistress by my side. So, please... please... don't leave me alone.\"",
- "\"Those who try to take my Mistress away will turn into minchi!♪\"",
- "\"Mistress, are you a lolicon? Or do you like big breasts? If you tell me, I can become more to your liking!♪\"",
- "\"I dream about us a lot!\"",
- "\"Please let me know if you need a bath. I can wrap you up in my body and clean everything from sweat to dirt and make you smell good♪\"",
- "\"You've worked really hard! As a reward, I will take you out on a date...\"",
- "\"Is it okay for me to die? Yeah, right!♪ Ah, I will fully recover even from the most mortal wounds. That's why you don't have to be worried about me, Mistress♪\"",
- "\"Is it okay to love a maid? Ah, I don't mind at all! I will always be by my Mistress's side♪\"",
- "\"When I first met Mistress, I thought, I wonder if this is love at first sight? What?\"",
- "\"Hello, Mistress♪\"",
- "\"I am a slave to my Mistress's love♪\"",
- "\"I'm sorry, Mistress, but... I want to lick you♪\"",
- "\"Mistress, cheating is not okay. Just me, alright?\"",
- "\"I like that I can talk to my Mistress, to be able to walk hand in hand with my Mistress, and to give my body for my Mistress to... nevermind!\"",
- "\"Do you want to lay your head on my lap? It would make me comfortable, too♪\"",
- "\"Please use me! Why don't you want to use me? Please use me! Use me!\"",
- "\"Mistress! Do you want to hold hands?\"",
- "\"It's okay if Mistress tied me up! That way I can't get away... Ufufu...\"",
- "\"No matter the weather, my heart beats on if I'm with my Mistress♪\"",
- "\"Please use me as a shield in an emergency. I want to be useful and not be like the other maids.\"",
- "\"I will do my best!\"",
- "\"Mistress's smell... it's intoxicating... haa, Mistress...♪\"",
- "\"It's okay if you touch me more♪\""
- ]
- }
-]
diff --git a/tools.json b/tools.json
index a70a44e..a4b02db 100644
--- a/tools.json
+++ b/tools.json
@@ -1,89 +1,14 @@
[
{
- "type": "COMESTIBLE",
- "comestible_type": "MED",
- "id": "meat_shoggoth",
- "name": { "str": "shoggoth heart", "str_pl": "shoggoth meats" },
- "description": "The heart of a shoggoth. You could use it to 'master' the beast.",
- "weight": "1000 g",
- "symbol": ")",
- "color": "dark_gray",
- "price": "50 USD",
- "material": [ "maid" ],
- "volume": "250 ml",
- "category": "tools"
- },
- {
- "type": "GENERIC",
- "category": "other",
- "id": "flask_shoggoth",
- "name": { "str": "flask (shoggoth)", "str_pl": "flasks (shoggoth)" },
- "description": "A glass flask containing a piece of meat that seems to be growing. Occasionally the piece of meat pulsates.",
- "weight": "1200 g",
- "symbol": "M",
- "color": "dark_gray",
- "price": "50 USD",
- "material": [ "glass", "maid" ],
- "volume": "250 ml",
- "use_action": {
- "type": "delayed_transform",
- "transform_age": 201600,
- "not_ready_msg": "The piece of meat pulsates.",
- "msg": "The flask is threatening to shatter as the meat keeps growing. Use it again to open it and relieve the pressure.",
- "moves": 0,
- "target": "shoggoth_maid"
- }
- },
- {
- "id": "shoggoth_maid",
- "type": "TOOL",
- "category": "other",
- "symbol": "M",
- "color": "dark_gray",
- "name": { "str": "growing shoggoth maid" },
- "description": "The meat inside this flask glows with iridescent colors. It's lightly shivering.",
- "price": "600 USD",
- "material": [ "glass", "maid" ],
- "weight": "1200 g",
- "volume": "250 ml",
- "use_action": {
- "type": "place_npc",
- "npc_class_id": "shoggoth_maid_npc",
- "summon_msg": "The odd meat is released from its glass flask prison and begins to rapidly and violently expand, extending numerous disjointed tentacles in every direction. The tentacles intertwine with each other and transform into an organism, resembling a beautiful woman, not quite like the horrible nightmare creature it used to be. She suddenly speaks up: 'Finally, I am able to meet you like this! Thank you for helping me, mistress!'",
- "place_randomly": false
- }
- },
- {
- "type": "GENERIC",
- "category": "other",
- "id": "mini_shoggoth",
- "name": { "str": "Small Cute Maid", "str_pl": "Small Cute Maids" },
- "description": "'Ah... I think I went overboard and turned out like this. I need some time to return to my former shape. Please warm me up in Mistress' pockets! Don't put me in a fridge! Absolutely not!'",
- "weight": "200 g",
- "symbol": "m",
- "color": "white",
- "price": "50 USD",
- "material": [ "maid" ],
- "volume": "250 ml",
- "use_action": {
- "type": "delayed_transform",
- "transform_age": 100800,
- "not_ready_msg": "'Fufufu~ Are you worried? I am fine, your maid is fine! ... I guess. So, please wait a bit longer... I'm sorry for making you concerned.'",
- "msg": "'I have made a complete recovery! I will serve you well, Mistress! Now, please put me on the ground.'",
- "moves": 0,
- "target": "res_shoggoth"
- }
- },
- {
"id": "res_shoggoth",
"type": "TOOL",
"category": "other",
"symbol": "M",
"color": "white",
- "name": { "str": "Revitalized Cute Maid" },
- "description": "'What's up? Why haven't you put me on the ground yet? Ah, you want me to stay tiny for a little while longer? Ehh... I suppose it can't be helped.'",
+ "name": { "str": "Cute Maid" },
+ "description": "A cute maid that your father hired to protect you due to your frail constitution.",
"price": "600 USD",
- "material": [ "maid" ],
+ "material": [ "flesh" ],
"weight": "1200 g",
"volume": "250 ml",
"use_action": {
@@ -127,91 +52,33 @@
"flags": [ "SLEEP_AID" ]
},
{
- "id": "summon_little_maid",
- "type": "TOOL",
- "category": "other",
- "symbol": "M",
- "color": "white",
- "name": { "str": "scroll (Summon Little Maid)" },
- "description": "A set of scrolls and sacrifices used to summon a different kind of maid. Pour the sacrificial sugar in the middle of the magic circle and cast the correct spell.",
- "price": "600 USD",
- "material": [ "paper" ],
- "weight": "1200 g",
- "volume": "250 ml",
- "use_action": {
- "type": "place_monster",
- "monster_id": "mon_little_maid",
- "friendly_msg": "The sacrifical sugar melts at the apex of your casting and starts to spew out white smoke. As the sweet smell spreads around, you notice a shadowy figure about the size of a child standing in the magic circle. After the smoke completely dissipates, a small maid stands in the place of the shadowy figure, staring at you with curious eyes. 'Mistress?'",
- "place_randomly": true
- }
- },
- {
- "type": "GENERIC",
- "category": "other",
- "id": "mini_little_maid",
- "name": { "str": "Little Little Maid", "str_pl": "Little Little Maids" },
- "description": "An even smaller version of your little maid.",
- "weight": "150 g",
- "symbol": "m",
- "color": "white",
- "price": "50 USD",
- "material": [ "maid" ],
- "volume": "250 ml",
- "use_action": {
- "type": "delayed_transform",
- "transform_age": 7200,
- "not_ready_msg": "While standing still on the palm of your hand, she stares downwards and mutters 'Mistress...' in a barely audible voice.",
- "msg": "'Mistreesss! Mistreeeessss!' The little maid taps your shoulder and points towards the ground, as if she wants to get off your shoulder. Put her on the ground when you're ready.",
- "moves": 0,
- "target": "res_little_maid"
- }
- },
- {
- "id": "res_little_maid",
- "type": "TOOL",
- "category": "other",
- "symbol": "m",
- "color": "white",
- "name": { "str": "Revitalized Little Maid" },
- "description": "Your little maid seems to have made a complete recovery.",
- "price": "600 USD",
- "material": [ "maid" ],
- "weight": "1200 g",
- "volume": "250 ml",
- "use_action": {
- "type": "place_monster",
- "monster_id": "mon_little_maid",
- "friendly_msg": "The little maid jumps down to the ground and turns around, lightly lifting the hem of her skirt and giving you a bow. 'Mistress!' she says with a smile.",
- "place_randomly": true
- }
- },
- {
"id": "maid_mess_kit",
- "sub": "hotplate",
"type": "TOOL",
- "symbol": ";",
- "color": "brown",
"name": { "str": "maid's cookware kit" },
"description": "A set of secret maid cookware.",
- "price": "20 USD",
- "material": [ "steel" ],
- "techniques": [ "BRUTAL", "WBLOCK_1" ],
- "flags": [ "DURABLE_MELEE", "ALLOWS_REMOTE_USE" ],
"weight": "1000 g",
"volume": "1250 ml",
+ "longest_side": "12 cm",
+ "price": 2000,
+ "price_postapoc": 400,
+ "to_hit": 1,
"cutting": 18,
"bashing": 18,
- "to_hit": 1,
+ "material": [ "steel" ],
+ "symbol": ";",
+ "color": "brown",
+ "ammo": [ "battery" ],
+ "sub": "hotplate",
"charges_per_use": 1,
- "ammo": "battery",
"qualities": [ [ "COOK", 3 ], [ "BOIL", 2 ], [ "CONTAIN", 1 ], [ "CHEM", 1 ], [ "CUT", 1 ], [ "BUTCHER", 25 ] ],
"use_action": [ "HOTPLATE", "HEAT_FOOD" ],
- "magazines": [
- [
- "battery",
- [ "medium_battery_cell", "medium_plus_battery_cell", "medium_atomic_battery_cell", "medium_disposable_cell" ]
- ]
- ],
- "magazine_well": "500 ml"
+ "pocket_data": [
+ {
+ "pocket_type": "MAGAZINE_WELL",
+ "rigid": true,
+ "flag_restriction": [ "BATTERY_MEDIUM" ],
+ "default_magazine": "medium_battery_cell"
+ }
+ ]
}
]