summaryrefslogtreecommitdiff
path: root/backport-04_feat-content-port-game-store-3469.patch
diff options
context:
space:
mode:
Diffstat (limited to 'backport-04_feat-content-port-game-store-3469.patch')
-rw-r--r--backport-04_feat-content-port-game-store-3469.patch550
1 files changed, 550 insertions, 0 deletions
diff --git a/backport-04_feat-content-port-game-store-3469.patch b/backport-04_feat-content-port-game-store-3469.patch
new file mode 100644
index 0000000..ae90ba9
--- /dev/null
+++ b/backport-04_feat-content-port-game-store-3469.patch
@@ -0,0 +1,550 @@
+From 361b8b6452e14ad5c74fad05e1ad093669103ef4 Mon Sep 17 00:00:00 2001
+From: Zlorthishen <79779913+Zlorthishen@users.noreply.github.com>
+Date: Sun, 22 Oct 2023 21:16:10 -0500
+Subject: [PATCH] feat(content, port): game store (#3469)
+
+* Update fluff.json
+
+* Update overmap_terrain_commercial.json
+
+* Update multitile_city_buildings.json
+
+* Update regional_map_settings.json
+
+* Update activities_hobbies.json
+
+* Update mansion.json
+
+* Update mall_item_groups.json
+
+* style(autofix.ci): automated formatting
+
+* Add files via upload
+
+* Update regional_map_settings.json
+
+* Update activities_hobbies.json
+
+* style(autofix.ci): automated formatting
+
+* Update multitile_city_buildings.json
+
+* style(autofix.ci): automated formatting
+
+---------
+
+Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
+---
+ .../Locations_MapExtras/mall_item_groups.json | 12 +-
+ .../Locations_MapExtras/mansion.json | 19 +-
+ data/json/itemgroups/activities_hobbies.json | 26 ++-
+ data/json/items/fluff.json | 176 ++++++++++++++++++
+ data/json/mapgen/s_games.json | 139 ++++++++++++++
+ .../overmap/multitile_city_buildings.json | 6 +
+ .../overmap_terrain_commercial.json | 14 ++
+ data/json/regional_map_settings.json | 1 +
+ 8 files changed, 384 insertions(+), 9 deletions(-)
+ create mode 100644 data/json/mapgen/s_games.json
+
+diff --git a/data/json/itemgroups/Locations_MapExtras/mall_item_groups.json b/data/json/itemgroups/Locations_MapExtras/mall_item_groups.json
+index 0841f79f760..031e545771a 100644
+--- a/data/json/itemgroups/Locations_MapExtras/mall_item_groups.json
++++ b/data/json/itemgroups/Locations_MapExtras/mall_item_groups.json
+@@ -93,19 +93,25 @@
+ [ "portable_game", 60 ],
+ [ "bat", 60 ],
+ [ "backpack", 40 ],
+- [ "pockknife", 20 ],
++ [ "pockknife", 5 ],
+ [ "wristwatch", 20 ],
+ [ "teleumbrella", 5 ],
+ { "group": "kids_books", "prob": 155 },
++ { "group": "games", "prob": 170 },
++ [ "frisbee", 40 ],
++ [ "disc_golf", 40 ],
++ [ "magic_8_ball", 30 ],
+ [ "novel_pulp", 20 ],
+ [ "folding_bicycle", 5 ],
+ [ "sunglasses", 25 ],
+- [ "cowboy_hat", 25 ],
+- [ "mp3", 40 ],
+ [ "wolfsuit", 5 ],
+ [ "dinosuit", 5 ],
+ [ "gum", 10 ],
++ [ "baseball", 40 ],
++ [ "football", 40 ],
++ [ "basketball", 50 ],
+ [ "talking_doll", 50 ],
++ [ "marble", 60 ],
+ [ "creepy_doll", 1 ],
+ [ "jedi_cloak", 5 ],
+ [ "clown_suit", 5 ],
+diff --git a/data/json/itemgroups/Locations_MapExtras/mansion.json b/data/json/itemgroups/Locations_MapExtras/mansion.json
+index bd0b6889844..7a8de7a0074 100644
+--- a/data/json/itemgroups/Locations_MapExtras/mansion.json
++++ b/data/json/itemgroups/Locations_MapExtras/mansion.json
+@@ -712,13 +712,21 @@
+ "magazine": 100,
+ "subtype": "distribution",
+ "items": [
+- [ "bat_nerf", 100 ],
+- [ "marble", 60 ],
++ [ "bat_nerf", 70 ],
++ [ "marble", 50 ],
+ [ "talking_doll", 50 ],
+- [ "fc_hairpin", 50 ],
+- { "group": "kids_books", "prob": 170 },
+- [ "backpack", 40 ],
++ [ "basketball", 30 ],
++ [ "fc_hairpin", 30 ],
++ { "group": "kids_books", "prob": 170, "count": [ 1, 4 ] },
++ { "group": "games", "prob": 170, "count": [ 1, 2 ] },
++ [ "backpack", 20 ],
++ [ "baseball", 30 ],
++ [ "football", 20 ],
++ [ "frisbee", 40 ],
++ [ "disc_golf", 20 ],
++ [ "radio_car_box", 10 ],
+ [ "orangesoda", 30 ],
++ [ "magic_8_ball", 10 ],
+ [ "hairpin", 30 ],
+ [ "purple_drink", 20 ],
+ [ "candy", 20 ],
+@@ -726,6 +734,7 @@
+ [ "rock", 10 ],
+ [ "bat", 10 ],
+ [ "creepy_doll", 3 ],
++ [ "portable_game", 5 ],
+ [ "whistle", 3 ]
+ ]
+ },
+diff --git a/data/json/itemgroups/activities_hobbies.json b/data/json/itemgroups/activities_hobbies.json
+index 57e3c00bda2..a6745c4cc5d 100644
+--- a/data/json/itemgroups/activities_hobbies.json
++++ b/data/json/itemgroups/activities_hobbies.json
+@@ -222,8 +222,8 @@
+ [ "textbook_traps", 8 ],
+ [ "lighter", 60 ],
+ [ "ref_lighter", 10 ],
+- [ "electric_lighter", 10 ],
+ [ "matches", 60 ],
++ [ "electric_lighter", 10 ],
+ [ "sewing_kit", 47 ],
+ [ "tailors_kit", 3 ],
+ [ "thread", 40 ],
+@@ -324,5 +324,29 @@
+ [ "survival_kit", 30 ],
+ [ "premium_survival_kit", 3 ]
+ ]
++ },
++ {
++ "type": "item_group",
++ "id": "games",
++ "items": [
++ [ "chess", 50 ],
++ [ "checkers", 50 ],
++ [ "deck_of_cards", 50 ],
++ [ "cards_magic", 50 ],
++ [ "pictionary", 50 ],
++ [ "monopoly", 50 ],
++ [ "dnd", 50 ],
++ [ "g_warhammer", 50 ],
++ [ "g_warhammer40k", 50 ],
++ [ "catan", 50 ],
++ [ "battleship", 50 ],
++ [ "clue", 50 ],
++ [ "metal_RPG_die", 30 ],
++ [ "RPG_die", 40 ],
++ [ "character_sheet", 20 ],
++ [ "scorecard", 10 ],
++ [ "dnd_handbook", 5 ],
++ [ "portable_game", 5 ]
++ ]
+ }
+ ]
+diff --git a/data/json/items/fluff.json b/data/json/items/fluff.json
+index 1b9438f0d83..b1a6aa3fb1c 100644
+--- a/data/json/items/fluff.json
++++ b/data/json/items/fluff.json
+@@ -59,5 +59,181 @@
+ "material": [ "paper" ],
+ "symbol": "*",
+ "color": "light_gray"
++ },
++ {
++ "id": "chess",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "chess set" },
++ "description": "A wooden box containing all the equipment needed to play a game of chess.",
++ "weight": "907 g",
++ "volume": "2 L",
++ "price": 7500,
++ "price_postapoc": 100,
++ "material": [ "wood" ],
++ "symbol": "?",
++ "color": "brown",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "checkers",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "checkers set" },
++ "description": "A wooden box containing a set of round tokens used to play checkers.",
++ "weight": "788 g",
++ "volume": "1500 ml",
++ "price": 2000,
++ "price_postapoc": 100,
++ "material": [ "wood" ],
++ "symbol": "?",
++ "color": "brown",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "cards_magic",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "deck of Sorcery cards", "str_pl": "decks of Sorcery cards" },
++ "description": "A set of cards meant to play the game \"Sorcery.\" Each card has a fun picture of a different monster.",
++ "weight": "210 g",
++ "volume": "250 ml",
++ "price": 2300,
++ "price_postapoc": 100,
++ "material": [ "paper" ],
++ "symbol": "?",
++ "color": "blue",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "pictionary",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "Picturesque", "str_pl": "sets of Picturesque" },
++ "description": "A game where one draws an image, and the others attempt to guess what it is.",
++ "weight": "350 g",
++ "volume": "500 ml",
++ "price": 1500,
++ "price_postapoc": 100,
++ "material": [ "plastic" ],
++ "symbol": "?",
++ "color": "yellow",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "monopoly",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "Capitalism", "str_pl": "sets of Capitalism" },
++ "description": "A game where players traverse around the board buying property and swindling their friends.",
++ "weight": "300 g",
++ "volume": "500 ml",
++ "price": 99,
++ "price_postapoc": 100,
++ "material": [ "plastic" ],
++ "symbol": "?",
++ "color": "red",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "dnd",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "Blobs and Bandits", "str_pl": "sets of Blobs and Bandits" },
++ "description": "A roleplaying game set in the post-apocalypse, so you can pretend to survive the apocalypse while surviving the apocalypse.",
++ "weight": "680 g",
++ "volume": "1250 ml",
++ "price": 12950,
++ "price_postapoc": 1000,
++ "material": [ "plastic" ],
++ "symbol": "?",
++ "color": "red",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "g_warhammer",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "Battlehammer", "str_pl": "sets of Battlehammer" },
++ "description": "A strategy game featuring a set of tiny figurines of fantasy creatures.",
++ "weight": "680 g",
++ "volume": "1250 ml",
++ "price": 10880,
++ "price_postapoc": 5000,
++ "material": [ "plastic" ],
++ "symbol": "?",
++ "color": "yellow",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "g_warhammer40k",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "Battlehammer 20k", "str_pl": "sets of Battlehammer 20k" },
++ "description": "A strategy game featuring a set of tiny figurines of grotesque aliens and imperious space marines.",
++ "weight": "680 g",
++ "volume": "1250 ml",
++ "price": 10880,
++ "price_postapoc": 5000,
++ "material": [ "plastic" ],
++ "symbol": "?",
++ "color": "yellow",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "catan",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "Settlers of the Ranch", "str_pl": "sets of Settlers of the Ranch" },
++ "description": "A strategy game where players build settlements and trade for supplies.",
++ "weight": "804 g",
++ "volume": "1250 ml",
++ "price": 7050,
++ "price_postapoc": 5000,
++ "material": [ "wood" ],
++ "symbol": "?",
++ "color": "light_blue",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "battleship",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "Warships", "str_pl": "sets of Warships" },
++ "description": "A game where players try to guess where the opponent placed their ships on the board.",
++ "weight": "450 g",
++ "volume": "500 ml",
++ "price": 2000,
++ "price_postapoc": 1000,
++ "material": [ "plastic" ],
++ "symbol": "?",
++ "color": "blue",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
++ },
++ {
++ "id": "clue",
++ "type": "GENERIC",
++ "category": "other",
++ "name": { "str": "Murder Mystery", "str_pl": "sets of Murder Mystery" },
++ "description": "A game where players try to figure out who murdered the butler.",
++ "weight": "370 g",
++ "volume": "500 ml",
++ "price": 2480,
++ "price_postapoc": 1000,
++ "material": [ "paper" ],
++ "symbol": "?",
++ "color": "blue",
++ "flags": [ "NO_REPAIR" ],
++ "use_action": "PLAY_GAME"
+ }
+ ]
+diff --git a/data/json/mapgen/s_games.json b/data/json/mapgen/s_games.json
+new file mode 100644
+index 00000000000..18b62a01b36
+--- /dev/null
++++ b/data/json/mapgen/s_games.json
+@@ -0,0 +1,139 @@
++[
++ {
++ "type": "mapgen",
++ "method": "json",
++ "om_terrain": [ "s_games" ],
++ "object": {
++ "fill_ter": "t_carpet_purple",
++ "rows": [
++ "......fg____g____g____gf",
++ "......fg____g____g____gf",
++ "......fg____g____g____gf",
++ "......fg____g____g____gf",
++ "......fg____g____g____gf",
++ "......fg____g____g____gf",
++ "......ffffffffffffffffff",
++ "......9##oooo#cc#oooo##.",
++ ".##o#o## kkkk Ykkkk #.",
++ ".#hhhhh| #.",
++ ".# iiƃ#.",
++ ".# l hh hh i #.",
++ ".# hhh | lkl hh hh i #.",
++ ".# hhh | l j A#.",
++ ".# i #.",
++ ".# hh hkk i #.",
++ ".#hhhhh| Y||c|oo||||#.",
++ ".##o#o###|c||D |;r#.",
++ ".______9#;;;| ll c;q#.",
++ "._______c;;;| lkkl |###.",
++ ".nn_____#;;m| lkkl c;q#.",
++ ".nn_____#mmm|F ll |;r#.",
++ ".nn_____######oooo#####.",
++ "........................"
++ ],
++ "vendingmachines": { "D": { "item_group": "vending_drink" }, "F": { "item_group": "vending_food" } },
++ "terrain": {
++ "|": "t_wall_w",
++ "#": "t_brick_wall",
++ "o": "t_window",
++ "c": "t_door_c",
++ "_": "t_pavement",
++ ".": "t_region_groundcover_urban",
++ "f": "t_sidewalk",
++ "g": "t_pavement_y",
++ "h": "t_carpet_purple",
++ "i": "t_carpet_purple",
++ "j": "t_console_broken",
++ "k": "t_carpet_purple",
++ "l": "t_carpet_purple",
++ "n": "t_pavement",
++ "Y": "t_carpet_purple",
++ ";": "t_linoleum_gray",
++ "q": "t_linoleum_gray",
++ "r": "t_linoleum_gray",
++ "m": "t_linoleum_gray",
++ "s": "t_carpet_purple",
++ "9": "t_gutter_downspout"
++ },
++ "furniture": {
++ "h": "f_rack_wood",
++ "i": "f_counter",
++ "ƃ": "f_counter_gate_c",
++ "k": "f_table",
++ "A": "f_stool",
++ "l": "f_chair",
++ "m": "f_crate_c",
++ "n": "f_dumpster",
++ "Y": "f_trashcan",
++ "r": "f_sink",
++ "s": "f_locker"
++ },
++ "toilets": { "q": { } },
++ "place_vehicles": [
++ { "vehicle": "car", "x": 9, "y": 2, "chance": 35, "rotation": 270 },
++ { "vehicle": "scooter_electric", "x": 5, "y": 20, "chance": 35, "rotation": 270 },
++ { "vehicle": "beetle", "x": 14, "y": 2, "chance": 35, "rotation": 270 },
++ { "vehicle": "electric_car", "x": 19, "y": 2, "chance": 35, "rotation": 270 }
++ ],
++ "place_loot": [
++ { "group": "magazines", "chance": 50, "repeat": 5, "x": [ 2, 6 ], "y": 9 },
++ { "group": "bookstore_misc", "chance": 50, "repeat": 5, "x": [ 3, 5 ], "y": 12 },
++ { "group": "games", "chance": 50, "repeat": 3, "x": [ 3, 5 ], "y": 13 },
++ { "group": "games", "chance": 50, "repeat": 5, "x": [ 2, 6 ], "y": 16 },
++ { "group": "games", "chance": 50, "repeat": 4, "x": [ 13, 14 ], "y": [ 11, 12 ] },
++ { "group": "games", "chance": 50, "repeat": 5, "x": [ 16, 17 ], "y": [ 11, 12 ] },
++ { "group": "games", "chance": 50, "repeat": 4, "x": [ 9, 12 ], "y": 8 },
++ { "group": "games", "chance": 50, "repeat": 4, "x": [ 17, 20 ], "y": 8 },
++ { "group": "games", "chance": 50, "repeat": 5, "x": [ 12, 13 ], "y": 15 },
++ { "group": "games", "chance": 50, "repeat": 5, "x": [ 15, 17 ], "y": 15 },
++ { "group": "trash", "chance": 50, "repeat": 5, "x": 11, "y": 16 },
++ { "group": "trash", "chance": 50, "repeat": 5, "x": 16, "y": 8 },
++ { "group": "games", "chance": 50, "repeat": 3, "x": [ 9, 11 ], "y": 21 },
++ { "group": "games", "chance": 50, "repeat": 4, "x": 11, "y": 20 },
++ { "group": "cleaning_bulk", "chance": 80, "x": 18, "y": 21 },
++ { "group": "vending_food_items", "chance": 80, "repeat": 4, "x": 19, "y": [ 14, 15 ] },
++ { "group": "trash", "chance": 50, "repeat": 5, "x": [ 1, 2 ], "y": [ 20, 22 ] },
++ { "item": "dnd_handbook", "x": 16, "y": 20, "chance": 100 },
++ { "item": "dnd", "x": 15, "y": 20, "chance": 90 },
++ { "item": "character_sheet", "x": [ 15, 16 ], "y": [ 19, 20 ], "chance": 80, "repeat": [ 1, 6 ] },
++ { "item": "metal_RPG_die", "x": 16, "y": 19, "chance": 10 },
++ { "item": "RPG_die", "x": 15, "y": 19, "chance": 90, "repeat": [ 1, 4 ] }
++ ]
++ }
++ },
++ {
++ "type": "mapgen",
++ "method": "json",
++ "om_terrain": [ "s_games_roof" ],
++ "object": {
++ "fill_ter": "t_flat_roof",
++ "rows": [
++ " ",
++ " ",
++ " ",
++ " ",
++ " ",
++ " ",
++ " ",
++ " |222222222222223 ",
++ " |222225..............3 ",
++ " |...............X.:..3 ",
++ " |....................3 ",
++ " |....................3 ",
++ " |...A...........=&...3 ",
++ " |....................3 ",
++ " |....................3 ",
++ " |....................3 ",
++ " |....................3 ",
++ " |-----5|.............3 ",
++ " |.............3 ",
++ " |.............3 ",
++ " |........A....3 ",
++ " |.............3 ",
++ " |-------------3 ",
++ " "
++ ],
++ "palettes": [ "roof_palette" ]
++ }
++ }
++]
+diff --git a/data/json/overmap/multitile_city_buildings.json b/data/json/overmap/multitile_city_buildings.json
+index cef6a12b31b..4124a2b0778 100644
+--- a/data/json/overmap/multitile_city_buildings.json
++++ b/data/json/overmap/multitile_city_buildings.json
+@@ -3802,5 +3802,11 @@
+ { "point": [ 0, 0, 0 ], "overmap": "s_laundromat_1_north" },
+ { "point": [ 0, 0, 1 ], "overmap": "s_laundromat_roof_1_north" }
+ ]
++ },
++ {
++ "type": "city_building",
++ "id": "s_games",
++ "locations": [ "land" ],
++ "overmaps": [ { "point": [ 0, 0, 0 ], "overmap": "s_games_north" }, { "point": [ 0, 0, 1 ], "overmap": "s_games_roof_north" } ]
+ }
+ ]
+diff --git a/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json b/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json
+index 1b9abe94e1f..5d3488e6b35 100644
+--- a/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json
++++ b/data/json/overmap/overmap_terrain/overmap_terrain_commercial.json
+@@ -1507,5 +1507,19 @@
+ "urban_14_9"
+ ],
+ "copy-from": "urban_13_3"
++ },
++ {
++ "type": "overmap_terrain",
++ "id": "s_games",
++ "name": "gaming store",
++ "copy-from": "generic_city_building",
++ "sym": "g",
++ "color": "cyan"
++ },
++ {
++ "type": "overmap_terrain",
++ "id": "s_games_roof",
++ "name": "gaming store roof",
++ "copy-from": "s_games"
+ }
+ ]
+diff --git a/data/json/regional_map_settings.json b/data/json/regional_map_settings.json
+index a64a7448dc0..b69100f0cc9 100644
+--- a/data/json/regional_map_settings.json
++++ b/data/json/regional_map_settings.json
+@@ -928,6 +928,7 @@
+ "shopping_plaza": 125,
+ "movie_theater": 75,
+ "garage_gas_city": 250,
++ "s_games": 80,
+ "2fmotel_city": 50,
+ "cs_car_dealership": 100,
+ "cs_car_showroom": 100,
+--
+2.42.0
+