BGforgeNet / FO2tweaks

Fallout 2 tweaks
https://forums.bgforge.net/viewforum.php?f=26
115 stars 10 forks source link

"gl_g_no_drop_items_on_death" change FID and removes armor from companions and the player before death #106

Closed dekrus closed 1 month ago

dekrus commented 1 month ago

What happened

When a companion or player has to die with an animation that causes items to drop to the floor, it leads to their FID change with some bugs. The player does not receive damage or die, but all his belongings disappear. If the "npc_armor" mod is installed, and the target of the attack is a companion, then the attack may not occur at all.

RPU v29 +Sfall v4.4.3.1 + EcCo V0.9.6 Used mods:
InventoryFilter.dat cassidy_head.dat cassidy_voice_joey_bracken_hq.dat f2_res.dat fo2tweaks.dat npc_armor.dat party_orders.dat rpu.dat rpu_enhanced_worldmap.dat rpu_extended_flamer.dat rpu_improved_mysterious_stranger.dat rpu_map_update.dat rpu_rifle_animations.dat rpu_wakizashi_animations.dat rpu_y_ecco.dat talking_heads.dat talking_heads_audio.dat talking_heads_map_update_patch.dat

What you expected to happen

The FID of the player and companions should not change before death

Screenshot

For example, if you try to kill Vic with a plasma grenade: Savegame before bug with Vik Video of the bug

Or try to kill a player with grenade: Before attack After attack

Savegame

Savegame before "player death"

phobos2077 commented 1 month ago

Related issue: https://github.com/phobos2077/fo2_ecco/issues/11

burner1024 commented 1 month ago

This is annoying =/. There's no convenient function to move everything but armor.

phobos2077 commented 1 month ago

I think the simplest "fix" is to just skip equipped armor when moving items to temp box. Just write a foreach and move item stacks one by one, comparing item with "worn" item or checking it's worn flag.

burner1024 commented 1 month ago

gl_g_no_drop_items_on_death.int.zip

@dekrus please try this. (Also check that no items are missing)

dekrus commented 1 month ago

Checked it, everything works fine. No items were lost.