Unkillable thieves for now

Turn off enemy drop indicator for modes that don't need it
This commit is contained in:
aerinon
2023-09-12 10:13:15 -06:00
parent 9e6bcf8a99
commit 2e5b9758c2
9 changed files with 59 additions and 12 deletions

View File

@@ -416,10 +416,10 @@ def randomize_enemies(world, player):
randomize_overworld_sprite_sheets(data_tables.sprite_sheets, data_tables, custom_ow)
randomize_overworld_enemies(data_tables, custom_ow)
# fix thief stats
subclass_table = world.damage_table[player].damage_table['SubClassTable']
subclass_table[EnemySprite.Thief] = subclass_table[EnemySprite.GreenEyegoreMimic]
data_tables.enemy_stats[EnemySprite.Thief].health = 4
# todo: could turn droppable on here if we wanted for theives
# subclass_table = world.damage_table[player].damage_table['SubClassTable']
# subclass_table[EnemySprite.Thief] = subclass_table[EnemySprite.GreenEyegoreMimic]
# data_tables.enemy_stats[EnemySprite.Thief].health = 4
# could turn droppable on here if we wanted for killable theives
# health shuffle
if world.enemy_health[player] != 'default':
stats = world.data_tables[player].enemy_stats
@@ -475,8 +475,8 @@ def write_enemy_shuffle_settings(world, player, rom):
rom.write_byte(snes_to_pc(0x368105), 0x01)
# killable thief
rom.write_byte(snes_to_pc(0x368108), 0xc4)
rom.write_byte(snes_to_pc(0x0DB237), 4) # health value: # todo: thief health value
# rom.write_byte(snes_to_pc(0x368108), 0xc4)
# rom.write_byte(snes_to_pc(0x0DB237), 4) # health value - randomize it if killable, maybe
# mimic room barriers
data_tables = world.data_tables[player]

View File

@@ -335,7 +335,7 @@ def init_sprite_requirements():
.sub_group(2, 0x42).sub_group(3, 0x43),
SpriteRequirement(EnemySprite.Boulder).affix().sub_group(3, 0x10),
SpriteRequirement(EnemySprite.Gibo).sub_group(2, 0x28),
SpriteRequirement(EnemySprite.Thief).no_drop().sub_group(0, [0xe, 0x15]),
SpriteRequirement(EnemySprite.Thief).immune().uw_skip().sub_group(0, [0xe, 0x15]),
SpriteRequirement(EnemySprite.Medusa).affix(),
SpriteRequirement(EnemySprite.FourWayShooter).affix(),
SpriteRequirement(EnemySprite.Pokey).sub_group(2, 0x27),

View File

@@ -333,6 +333,8 @@ OwGeneralDeny:
- [0x5e, 4, ["RollerVerticalUp", "Gibo"]] # forbid that one roller for kiki pod, and the kiki eating Gibo
- [0x5e, 5, ["Gibo"]] # kiki eating Gibo
UwEnemyDrop:
- [0x003d, 9, ["HardhatBeetle", "MiniHelmasaur", "Wizzrobe"]] # kept falling off before killing was possible
- [0x003d, 10, ["HardhatBeetle", "MiniHelmasaur", "Wizzrobe"]] # kept falling off before killing was possible
- [0x0044, 4, ["HardhatBeetle"]] # kept falling off before killing was possible
- [0x0085, 9, ["Babasu"]] # ran off the edge and didn't return
- [0x00cc, 5, ["Babasu"]] # little hard to see and kill appropriately
@@ -385,6 +387,18 @@ UwEnemyDrop:
- [0x00c6, 6, ["HardhatBeetle", "Wizzrobe", "MiniHelmasaur", "BlueGuard", "GreenGuard", "RedSpearGuard",
"BluesainBolt", "UsainBolt", "BlueArcher", "GreenBushGuard", "RedJavelinGuard", "RedBushGuard",
"BombGuard", "GreenKnifeGuard"]]
# wizzrobe despawn issues - on pots/blocks
- [0x004e, 3, ["Wizzrobe"]]
- [0x005e, 4, ["Wizzrobe"]]
- [0x007e, 1, ["Wizzrobe"]]
- [0x007e, 6, ["Wizzrobe"]]
- [0x009f, 5, ["Wizzrobe"]]
- [0x00af, 0, ["Wizzrobe"]]
- [0x00bf, 1, ["Wizzrobe"]]
- [0x00ce, 5, ["Wizzrobe"]]
- [0x00ce, 6, ["Wizzrobe"]]
- [0x00ce, 7, ["Wizzrobe"]]
- [0x00ce, 8, ["Wizzrobe"]]
# the following are all slightly in the wall on spawn
- [0x0064, 0, ["Leever"]]
- [0x00e5, 4, ["Leever"]]