astruyk / JTF2-PATROL-Ops

JTF2 Patrol Ops mission for the public server
1 stars 2 forks source link

AI stuck on skill level 1 since V.17 #5

Closed TheOtherTaylor closed 10 years ago

TheOtherTaylor commented 10 years ago

As title. Every natually spawned unit has their skill bar at maximum. This makes them insanely accurate, especially in CQB.

astruyk commented 10 years ago

I think ASR is not correctly applying its skill settings to units spawned in by Patrol Ops. I have the debug ASR logs on the server turned on for now to see if I can gather some more info and verify that's the case.

astruyk commented 10 years ago

I'm not sure what's up with this. The AI values get set just fine on my local machine running Patrol Ops, but it's behaving differently on the public server. The debug logs show the AI values being set to non-full values, but when you query the units directly for their settings they return full difficulty for most things.

Some example output (this is actually from the old map, but it looks like this on the map when the values are being set to full):

17:55:16 "Unit O Alpha 1-1:4, type O_recon_exp_F, faction OPF_F with coef 0.9, has skill 0.792067"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill aimingAccuracy value 0.332177"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill aimingShake value 0.400703"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill aimingSpeed value 0.81053"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill spotDistance value 0.336287"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill spotTime value 0.426434"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill courage value 0.735625"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill reloadSpeed value 0.702302"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill commanding value 0.510525"
17:55:16 "1850.32 | Unit O Alpha 1-1:4 has final sub-skill general value 0.789249"
TheOtherTaylor commented 10 years ago

Ok through some moderate testing, this is not a v.17 issue. Running on the server on it's current version it seems like AI spawn in with the correct skill level but as soon as you open them in zeus it jumps their skill up to max.

Zeus-spawned units don't have this same issue.

astruyk commented 10 years ago

I think there never was an issue. If the AI is too hard it's because Patrol Ops's AI settings aren't gimping it anymore and ASR_AI is setting it to what it thinks it should be. I added a function to log server AI skill (PO3_fnc_logUnitSkill) and to handle setting the AI correctly (PO3_fnc_setUnitSkill). I also added a param to have the AI skill be manually set to some value or by using the ASR_AI3 settings (default is to use ASR_AI3). The old behaviour (pre. v.17) is available by setting the AI to 'Low' (which changes the units overall skill but not any of the subskills).

The Zeus skill bar lies on dedicated servers. It only displays your local AI setting (which doesn't matter when the unit is spawned by the server). It only does anything for units spawned locally (i.e. by Zeus).

TheOtherTaylor commented 10 years ago

I had a discussion with Knyte about this a little later last night while I was doing much more extensive testing with the ASR_AI to see it's behavior. He thinks it may be some sort of issue where if the Zeus is trying to take a unit that is being handled server-side when you attempt to edit it and that messes with their displayed skill, which wouldn't be a mission issue so much as a zeus issue.

They may be more difficult from the lack of patrol-ops gimping, which is absolutely fine by me and we can monitor it going forward. Charles had been dragging their skill bars around to try to "fix" the full skill level thing and might have actually exacerbated the problem\

My current solution that I know works is to delete any unit I want to give complicated orders/waypoints to and just paste in a client-side one.