Skip to content

Commit 7ca985e

Browse files
committed
v2.3.0: Game Feeder Pack DLC + Feeder mods, updated backpack values, show mod settings when updating config
1 parent 7e4518b commit 7ca985e

69 files changed

Lines changed: 231 additions & 103 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

modbuilder/mods.py

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@
3939
GAME_PATH_FILE = APP_DIR_PATH / "game_path.txt"
4040
EQUIPMENT_DATA_FILE = "settings/hp_settings/equipment_data.bin"
4141
EQUIPMENT_UI_FILE = "settings/hp_settings/equipment_stats_ui.bin"
42+
ANIMAL_INTEREST_FILE = "settings/hp_settings/animal_interest.bin"
4243
MODS_EQUIPMENT_UI_DATA = None
4344
MODS_LIST = DEBUG_MODS_LIST = None
4445
GLOBAL_FILES = LOCAL_PLAYER_FILES = NETWORK_PLAYER_FILES = GLOBAL_ANIMAL_FILES = None
@@ -142,7 +143,7 @@ def format_mod_display_name(mod_key:str, mod_options) -> str:
142143
mod = get_mod(mod_key)
143144
if mod is None:
144145
formatted_name = get_mod_name_from_key(mod_key).title()
145-
elif hasattr(mod, "format"):
146+
elif hasattr(mod, "format_options"):
146147
formatted_name = mod.format_options(mod_options)
147148
else:
148149
formatted_name = get_mod_full_name_from_key(mod_key).title()
@@ -153,6 +154,9 @@ def delegate_event(event: str, window: sg.Window, values: dict) -> None:
153154
if hasattr(mod, "handle_event"):
154155
mod.handle_event(event, window, values)
155156

157+
def title_from_key(key: str) -> str:
158+
return " ".join(key.split("_")).title()
159+
156160
def get_mod_name_from_key(mod_key: str) -> str:
157161
return " ".join(mod_key.lower().split("_"))
158162

@@ -173,21 +177,28 @@ def get_mod_option(mod_key: str, option_key: str) -> dict:
173177
return option
174178
return None
175179

176-
def get_mod_option_default(option_key: str, options: dict = None, mod_key: str = None) -> float:
180+
def get_mod_option_default(option_key: str, options: list[dict] = None, mod_key: str = None) -> float:
177181
default = None
178182
if options is None and mod_key is None:
179183
raise ValueError(f"Unable to get default value for {option_key}: no options or mod_key provided. ")
180184
if options:
181185
for option in options:
182186
if option_key == get_mod_key_from_name(option["name"]):
183-
default = option["default"]
187+
default = option.get("default", "initial")
184188
if options is None:
185189
option = get_mod_option(option_key, mod_key)
186-
default = option["default"]
190+
default = option.get("default", "initial")
187191
if default is None:
188192
raise ValueError(f"Unable to get default value for {option_key}: no matching option found")
189193
return default
190194

195+
def get_mod_option_defaults(options: list[dict] = None) -> dict:
196+
defaults = {}
197+
for option in options:
198+
key = get_mod_key_from_name(option["name"])
199+
defaults[key] = get_mod_option_default(key, options)
200+
return defaults
201+
191202
def list_mod_files() -> list[str]:
192203
return _get_mod_filenames()
193204

modbuilder/name_map.yaml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1234,6 +1234,18 @@ weapon:
12341234

12351235
structure:
12361236

1237+
bait_feeder_bear_barrel:
1238+
name: Bait Barrel
1239+
type: Feeder
1240+
1241+
bait_feeder_box:
1242+
name: Box Feeder
1243+
type: Feeder
1244+
1245+
bait_feeder_hanging:
1246+
name: Post Feeder
1247+
type: Feeder
1248+
12371249
groundblind:
12381250
name: Ground Blind # Incognito Deluxe Ground Blind
12391251
style:
@@ -1542,3 +1554,31 @@ lure:
15421554
scent_wild_boar:
15431555
name: Wild Boar Scent
15441556
type: Scent
1557+
1558+
##########
1559+
1560+
feeder_bait:
1561+
1562+
bait_site_post_soy:
1563+
name: Fortified Pellet Feed
1564+
type: Post Feeder
1565+
1566+
bait_site_sour_mash:
1567+
name: Sour Fermented Mash
1568+
type: Bait Barrel
1569+
1570+
bait_site_post_corn:
1571+
name: Multigrain Flake Mix
1572+
type: Post Feeder
1573+
1574+
bait_site_barrel_meat:
1575+
name: Meat Scraps
1576+
type: Bait Barrel
1577+
1578+
bait_site_box_soy:
1579+
name: Fortified Pellet Feed
1580+
type: Box Feeder
1581+
1582+
bait_site_box_corn:
1583+
name: Multigrain Flake Mix
1584+
type: Box Feeder

0 commit comments

Comments
 (0)