When a mutant dies in an anomaly, there is a chance for an artifact to spawn.
ABOUT
My own implementation of a feature that was present in the older Shadow of Chernobyl builds. When an anomaly kills a mutant, an artifact will spawn with some chance.
Don't forget to use your detector!
Artifact spawning is accompanied by some sounds and beautiful visual effects!
Artifact spawn depends on:
- Mutant tier (low - dogs, boars, fleshes, zombies etc.; medium - snorks, bloodsuckers and others; high - chimeras, controllers, pesudogiants, burers). Higher tier mutants generate higher tier artifacts; low tier mutants mostly give 'junk' artifacts; though, there's a difference if you have Perk Based Artefacts - see Balance notes
- Type of anomaly. A chemical anomaly, for example, will mostly spawn chemical nature artifacts.
- Customizeable probability per each mutant tier.
REQUIREMENTS
Mod Configuration Menu is not a hard requirement but makes the addon more easily customizeable.
COMPATIBILITY
- Doesn't override any vanilla files
- Considers new anomalies from the Arrival addon and Anthology modpack
- Works with the new mutants from Dynamic Mutants as well as any other new mutants created based on the vanilla ones
CHANGELOG
Update 1: attempt to fix attempt to index local 'game_obj' crash, fix the feature triggering when a mutant isn't killed by an anomaly, *possible* fix for rare busy hands/time event crash issue (couldn't 100% reproduce it)
Hotfix: found a problem with mcm probabilities not working properly, should be fixed. sorry for inconvenince, lua and xray can be mad sometimes
CUSTOMIZATION
Basic MCM settings included. There are hints on specific mutant kinds with each tier setting.
NOTES ON BALANCE
A lot depends on presence of Perk Based Artefacts addon in your modlist. PBA adds useful properties to the 'junk' artifacts. The 'junk' artifacts are mostly spawned when a lower tier creature dies. With that in mind, avoid setting the spawn chance for low-tier mutants too high: they are pretty common, and you may end up having quite a lot of powerful arties very fast.
BUT: actually getting a mutant killed by an anomaly may be tricky. Especially if that's a tanky one. Besides, sometimes an artifact may end up right in the middle of the anomaly... so there's always a catch. This mechanic isn't supposed to be a cheat.
TODO
- Consider artifact spawning on stalkers death. Since they're not affected by the anomalies they way mutants are, I'm not sure if I could properly test this.
- Balance adjustments on artifact spawns and Dynamic Mutants tiers if needed.
USAGE IN MODPACKS / EDITING / FEEDBACK
Do anything you want as long as you give the proper credits.
Wang_Laoshi (Moddb) / ethereal_starscream (Discord)
If you wanna file a bug report:
1) Enable the Debug option in the addon MCM.
2) Reproduce the crash/bug.
3) Send me the crash log, the messages you saw on the screen, and even better - your whole .log file from <your_anomaly_folder>/appdata/xray_username.log
ui_st_comment_reserved_phrase_1
The first version is here. Post any problems you encounter (pls refer to the last part of the description), but do mind the spawn chance settings in the MCM.
Will it work smoothly with DAO (Dynamic Anomalies Overhaul) made by Demozined?
this : Moddb.com
In any case, thank you very much for making this addon, it's always good to see some things from Shadow of Chernobyl being reimplemented in Anomaly.
I think so. I made it based on Arrival anomalies but I think they were mostly the same in DAO, I only have Arrival atm
From Lost Alpha and builds*
This thing was not presented in release version of the game.
sure, I mean I mostly oriented on Arrival when considering the mod-added anomalies
That was to Larry
I play with Arrival too
got it. moddb UI isn't particularly good
вполне логично.
благодарю!
FATAL ERROR
[error]Expression : <no expression>
[error]Function : CScriptEngine::lua_error
[error]File : ..\xrServerEntities\script_engine.cpp
[error]Line : 191
[error]Description : fatal error
[error]Arguments : LUA error: ...orrent by prefix/bin/..\gamedata\scripts\axr_main.script:232: table index is nil
stack trace:
could be anything. you're sure it comes from this addon? and if so, when does it happen? I never had this crash here
Expression : <no expression>
Function : CScriptEngine::lua_pcall_failed
File : D:\a\xray-monolith\xray-monolith\src\xrServerEntities\script_engine.cpp
Line : 262
Description : fatal error
Arguments :
1 : [Lua] ...es/anomaly\gamedata\scripts\spawn_arties_on_death.script(278) : f
LUA error: ...es/anomaly\gamedata\scripts\spawn_arties_on_death.script:278: attempt to index local 'game_obj' (a nil value)
Check log for details
stack trace:
never had it in my testing. need more info about when it happens, what mutant and what anomaly, and maybe you could enable the debug in mcm and check what messages it would show
you may also wanna try a quick fix
open spawn_arties_on_death.script with any text editor, find this (ctrl-f)
game_obj:get_physics_shell():apply_force(5000, 5000, 5000)
and change it to this
if game_obj then
game_obj:get_physics_shell():apply_force(5000, 5000, 5000)
end
I can't give more information right now, because the crash happened twice just when I was in my hideout looking through inventory. Certainly some mutant died in an anomaly within alife radius, but it was outside of my vision. After the game crashed for the second time, I just disabled the addon in MO2. Now I'll try your quick fix then with debug enabled.
fine. would be great if you could share any more details, and maybe your xray log file if it goes bad.
maybe I did miss some corner case with this part. in fact, this part with get_physics_shell() isn't strictly necessary, you may as well comment it out completely. it's just for convenience, so that an artifact wouldn't get stuck in the middel of an anomaly
thx very cool mod.
For expanding it to npcs you might want to take a look at this mod Moddb.com.
thx! will consider stalkers for future updates if it goes well
the whirlgig anomaly catching up a fat flesh: RISE MY GLORIOUS CREATION, RISE!
Can it work on GAMMA?
I don't have it, dunno exactly but it should
I am getting a bunch of these errors in the log file, while in the Swamps:
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_freedom_0,dog_normal_brown
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_freedom_0,dog_weak_bulterier
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_bandit_4,dog_normal_bulterier
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_bandit_4,dog_strong_black
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_freedom_0,dog_normal_bulterier
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_csky_0,dog_strong_brown
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_csky_0,dog_weak_white
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_csky_0,dog_weak_bulterier
ANOM_CREATION_DEBUG mutant tier or anom type not found, sim_default_csky_0,dog_weak_bulterier
Any idea what that's about or how to fix those?
oh no, that means it sometimes triggers when a mutant is killed by an npc, not an anomaly. that a problem. thx a lot, this very much needs fixing
Had some tests on test map, all works fine!
!ERROR get_object_by_id | no game object recieved from id (55050)
! [SCRIPT ERROR]: ...5.2/bin/..\gamedata\scripts\spawn_arties_on_death.script:278: attempt to index local 'game_obj' (a nil value)
* Saving spawns...
* Saving objects...
* 36132 objects are successfully saved
* Game fatal_ctd_save_0.scop is successfully saved to file 'c:/stalker/anomaly-1.5.2/bin/..\appdata\savedgames\fatal_ctd_save_0.scop'
FATAL ERROR
[error]Expression : <no expression>
[error]Function : CScriptEngine::lua_pcall_failed
[error]File : D:\a\xray-monolith\xray-monolith\src\xrServerEntities\script_engine.cpp
[error]Line : 262
[error]Description : fatal error
[error]Arguments :
1 : [Lua] ...5.2/bin/..\gamedata\scripts\spawn_arties_on_death.script(278) : f
LUA error: ...5.2/bin/..\gamedata\scripts\spawn_arties_on_death.script:278: attempt to index local 'game_obj' (a nil value)
Check log for details
stack trace:
SymInit: Symbol-SearchPath: '.;C:\STALKER\Anomaly-1.5.2\bin;C:\STALKER\Anomaly-1.5.2\bin;C:\WINDOWS;C:\WINDOWS\system32;', symOptions: 530, UserName: 'loodd'
OS-Version: 6.2.9200 () 0x300-0x1
C:\STALKER\Anomaly-1.5.2\bin\AnomalyDX9.exe:AnomalyDX9.exe (0000000140000000), size: 17772544 (result: 0), SymType: '-exported-', PDB: 'C:\STALKER\Anomaly-1.5.2\bin\AnomalyDX9.exe'
you've got the latest version?
Thanks for the update, so far I've actually run into both issues mentioned in the changelog, so I hope that they're fixed (especially since busy hands with a 400 mod modpack is a scary thing for me since I dunno for sure what may cause it even with the Busy Hands watch dog mod)
So far I'm rather enjoying the mod. I think I'll turn things down a bit because even the junk/perk based artifacts still bring in a couple bucks and a bag full of htem can easily get you tens of thousands of roubles (despite my Sell price setting being 0.5x)
Any chance you could make a transmutation system like Oblivion Lost? That would be sick.