Oni Central Forum

A forum for the Oni community

You are not logged in.

#1 01/10/16 17:01

Loser
Member
From: somewhere in da Czech Republic
Registered: 01/14/07

AI capability of performing RIF disarm moves

Hi guys,
fate had one of its twisted quirks again, so here I am.
Does anyone know if there is a some workaround to make the AI perform RIF disarms on regular basis?

From my research, there is a bug and I don't know how to circumvent it.
Code behind MELE execution apparently thinks RIF disarm MELE moves should be performed against opponents which are in a PIS varient.

An example, using a P_FrontRifDisarm MELE move (standard "disarm the rifle-wielding opponent from the front"):

  • a MELE profile has a technique with the P_FrontRifDisarm MELE move

  • If an opponent of an AI with this MELE profile wields a rifle (is in a RIF varient), the technique with the P_FrontRifDisarm MELE move is at runtime assigned zero weight (WTF, it should be upweighted or at least enabled)

  • If the opponent of the AI with this MELE profile wields a handgun (is in a PIS varient), the technique with P_FrontRifDisarm MELE move is enabled (starts having nonzero weight), but won't execute, since the opponent is not in a RIF varient.

PIS varient disarm MELE moves (for example P_FrontDisarm) won't do the job versus RIF varient opponents - AI will not execute them.


Any ideas, any help, any anything? Pretty please?

Last edited by Loser (01/10/16 17:01)


"I am just a mere reflection of what I would be."

Offline

#2 01/11/16 02:01

Loser
Member
From: somewhere in da Czech Republic
Registered: 01/14/07

Re: AI capability of performing RIF disarm moves

A workaround has been designed, big thanks to everyone who looked into this anyway.

Here's a quick example:

                    <Technique>
                        <Name>DisarmRifFW</Name>
                        <Flags>Interruptible</Flags>
                        <Weight>100</Weight>
                        <Importance>10</Importance>
                        <RepeatDelay>0</RepeatDelay>
                        <Moves>
                            <Position Type="CloseForward" MinRunInDist="0" MaxRunInDist="30" ToleranceRange="4.5" />  
                            <Throw Type="P_FrontRifDisarm" />
                            <Attack Type="P" />
                        </Moves>
                    </Technique>

Basically, if an attack MELE move is mixed into the DisarmRifFW technique, then the technique is listed as a standard combat technique, therefore is not downweighted as a specific RIF disarm move.

Downside of the workaround is generally a bit messed execution of MELE techniques for an AI running the MELE profile with this hack. It makes the AI for some reason frantically attempt to execute the MELE technique with the disarm move, forcing the AI to do quite illogical moves pretty often.

Well, better than nothing. Maybe the negative effect can be somehow mitigated.


"I am just a mere reflection of what I would be."

Offline

#3 01/17/16 01:01

Scarlett
Member
From: Jamaica
Registered: 11/25/15

Re: AI capability of performing RIF disarm moves

They were able to do pistol disarm so maybe they can do rifle disarm. I'm not 100% sure though. Try looking through the melee profiles

Offline

Board footer

Powered by FluxBB