Combat: 2s pause between kills; trophies drop 3% (bosses 6%)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-10-20 12:59:30 +01:00
parent 57bcd812ee
commit ed7c7b0ab5
2 changed files with 6 additions and 4 deletions

View file

@ -22,7 +22,8 @@ Alpha. One season, bandit raids plus two friendly events, six buildings.
drilling, the city's troubles) and expeditions: Greenwood to start, then
one area per tier (Old Watchtower, Sunken Barrows, Iron Hills, Frostpeak,
Dragon's Spine), each with a golem, a troll, a spirit and a flyer that drop
trophies for stronger weapons, and a boss (the dragons at the top).
rare trophies (3%, 6% from bosses) for stronger weapons, and a boss (the
dragons at the top). Each kill is followed by a 2-second pause.
- **Weapons:** four styles, one per trade, and anyone can use any of them.
Sword and shield (2.4s swings, the shield blocks 15% of hits; swords from
Smithing, shields from Construction), warhammer (Smithing; slow, heavy,

View file

@ -432,7 +432,7 @@ def _tiered_actions() -> list[dict]:
# the trophies higher weapons need, and a boss.
CRIT_CHANCE = 0.05
CRIT_MULT = 1.5
RESPAWN = 1 # seconds after a kill before the next enemy turns up
RESPAWN = 2 # seconds after a kill before the next enemy turns up
MAX_FIGHT = 600 # a fight that drags on longer is broken off
FLEE_BELOW = 0.2 # out of food and under this share of HP: get out
@ -521,7 +521,8 @@ AREA_MONSTERS = { # kind: (level offset, monsters, trophies)
"flyer": (0, ["Giant bat", "Harpy", "Wyvern", "Griffin", "Roc"],
["Bat sinew", "Harpy sinew", "Wyvern sinew", "Griffin sinew", "Roc sinew"]),
}
TROPHY_ODDS = 0.33
TROPHY_ODDS = 0.03 # rare: higher-tier weapons are hunted for
BOSS_TROPHY_ODDS = 0.06 # each of the four kinds, so a boss is worth the longer fight
AREA_BONES = ["bones", "big_bones", "big_bones", "dragon_bones", "dragon_bones"]
@ -547,7 +548,7 @@ def _area_fights() -> list[dict]:
def _boss_trophies(tier: int) -> list[tuple]:
return [(_slug(trophies[tier - 1]), 1, 0.25) for _offset, _monsters, trophies in AREA_MONSTERS.values()]
return [(_slug(trophies[tier - 1]), 1, BOSS_TROPHY_ODDS) for _offset, _monsters, trophies in AREA_MONSTERS.values()]
COMBAT_ACTIONS = [