I dont know if PDO could be causing this.
However, try the latest asi above your post and then try without PDO - check if it works then.
Since I dont knowingly do anything to bind or unbind their hands, I would have to search for side-effects of other code (but I dont suppose PDO does that, as stated).
@lurk@Cullen Bohannon Please try this new beta version and tell us if it helps you with the framerate issue (you can use your current ini with it).
@oturan Which version are you using? Are you using any other mods or hooks?
PedDamageOverhaul.asi
@lurk@Cullen Bohannon There were people who used low ModEffectRanges before and reported that there was no difference. We did not check ourselves, thats why ModEffectRange is still at 75 in the ini. We are still working on performance for the full v2.0, please use the "workaround" with ModEffectRange=10 in the meantime (and report any unwanted behavior which might be caused by the setting, please).
I would have to look at the whole file again, since its nothing I do on a regular basis.
@AnymYo is the guy to ask, if you search any euphoria knowledge. Maybe he could be so kind to give a few hints 🙂
I think you would have to edit the physicstasks file and make them balance for longer (so they can actually get their balance back, after being thrown off by a bullet).
As of now, PDO affects NPCs which have their health at the set ini value (condition for the big loop).
I would have to adjust some things in order to implement such a feature. Ill put it on the list.
Since almost everything is based on the NPC health value in PDO, you cant disable it. But what you could do is just set the default NPC health to the one you want them to have.
Hm, could be.
I took a look at the mod's contents and you could try removing the pedhealth.meta file from the crime mod (or delete the corresponding line in the install.xml) and check if everything works then.
I have no experience in placing peds somewhere, but is there a function GET_ENTITY_COORDS? If so, could you check the victims coords after you applied the function you mentioned above? (so you can see if the entity is anywhere near the coords you get in your log.
In order for the rob mechanic to work, the NPC would have to be able to play the "toss coin" animation or similar. This is not the case when they are down.
I dont think its possible.
@crossed99 Oh, I didnt realize it was your mod, sorry. Thanks for the explanation and also kudos to you for always helping people in the forum!
@AerosolNinja Thanks for the feedback!
Oh, I thought you were already trying stuff, sorry.
I have not used these functions, so I cant give any instructions on how to use them, unfortunately 😕
So SAC and I were discussing performance and pretty code via DM and the question came up wheter a lot of maps or a single map filled with structs with lots of attributes would be more performant.
Since we didnt know, I wanted to search some knowledge here.
Will a script be more performant if I use e.g. 100 std::maps to store and retrieve information for 1000 keys or one single map filled with 1000 keys, each value being a struct with 100 attributes?
The WAIT(2000) happens for every ped - so the script will pause for 2 seconds after each ped is tasked with fleeing (this will delay all other things in your script as well).
You could work around this with timers (you remember the timestamp for a ped and only proceed with the rest of the functions (for this ped) when two seconds have passed).
I use this native:
static void xTASK_FLEE(Any p0, Any p1, Any p2, Any p3, float p4, Any p5, Any p6) { invoke<Void>(0xFD45175A6DFD7CE9, p0, p1, p2, p3, p4, p5, p6); }
Like this:
AI::xTASK_FLEE(PedToFlee, PedToFleeFrom, 4, 0, -1.0f, -1, 0);
Does anyone know which walking style is used when NPCs are bleeding from an artery?
Because if I force them to use a certain walking style, the arterial bleeding walking bugs out (seems like its a loop of overwriting the walking style: bleeding - my forced one - bleeding - my forced one - ...).
Dont know how the revive mechanic works, so I wouldnt know where to start (since leaving out setting the max health doesnt work - unless no one ever wants to change npc health :)).
Just to share what we discussed in the DMs with the community:
There are some functions worth trying (not sure what the last parameter is doing (bool))-->
AUDIO::STOP_CURRENT_PLAYING_AMBIENT_SPEECH(peds[i], true);
AUDIO::STOP_PED_SPEAKING(peds[i], true);
AUDIO::DISABLE_PED_PAIN_AUDIO(peds[i], true);
I dont think so, but you can replace the original one with your modified one (in which you add whatever you would like to add) using lml.
Or am I missing the point?