Jump to content
Sign in to follow this  
Mysticpuma

Full Mission Builder and Script users, what new game ON-events would you like to see?

Recommended Posts

With TFS getting access to the game code, there is the possibility (no guarantees) that additional game events (the "On" events) could be added to the scripting code. What game events would mission scripters like to see that add more functionality to your missions?

My suggestions here:

OnParked()
Trigger: fires when aircraft has landed & has taxied to a spawnpoint & is stopped with engines off. 
Passed variables: int missionNumber, string shortName, AiAircraft aircraft

OnGroupTookoff()
Trigger: fires when all aircraft in a group are airborne. ie when last aircraft in the group fires it's OnTookoff event.
Passed variables: int missionNumber, string shortName, AiAirgroup airgroup

OnOutOfAmmo()
Trigger: fires when an aircraft is out of bullets.
Passed variables: int missionNumber, string shortName, AiAircraft aircraft

OnBombReleased()
Trigger: fires when a bomb is released from the aircraft
Passed variables: string title, double mass, AiAircraft aircraft, int eventArgInt

OnActorBailed()
Trigger: fires when an AiActor bails from an aircraft
Passed variables: Player player, AiActor actor, AiArcraft aircraft, int placeIndex

OnEngineFire()
Trigger: fires when an AiAircraft has an engine fire
Passed variables: int missionNumber, string shortName, AiAircraft aircraft, int enginenumber

OnLandingGearDown()
Trigger: fires when an AiAircraft has its landing gear down
Passed variables: int missionNumber, string shortName, AiAircraft aircraft

OnActorDamaged
Trigger: When an AiActor is damaged
Passed variables: int missionNumber, string shortName, AiActor actor, AiDamageInitiator initiator

OnActorBlackout
Trigger: When an AiActor has blacked/red out
Passed variables: int missionNumber, string shortName, AiActor actor

OnSteamDown
Trigger: Returns true when steam crashes
Passed variables: None

Share this post


Link to post
Share on other sites

OnBombInZone()
Trigger: fires when a bomb is explode in zone

 

OnLastBombReleased()

Trigger: fires when all bombs released from the aircraft

 

OnActorCrash

Trigger: When an AiActor is crash 

 

OnActorSpotEnemy

Trigger: When an AiActor is spotting enemy

 

OnActorSpotFriendly

Trigger: When an AiActor is spotting friendly

Share this post


Link to post
Share on other sites

what the editor need (sorry i only work with org CloD Editor some years ago for Desastersoft)

 

Trigger Play sound (radio messages) work only with script

 

Follow me (AI follow at 50, 100, 200, 1000m)

 

come to my position (AI fly to your position, for fight or follow)

 

Stop fight (AI stop fighting and wait for new order) this time the AI fight for last plane

 

and we need Knickebein for Bombers :)

 

(Sorry for my bad english i hope you know what i mean)

Share this post


Link to post
Share on other sites

Something to make triggers active only for a set amount of time/activations

Something along the lines of DCS that allows for some randomisation.

Share this post


Link to post
Share on other sites

I have not tested this in COD FMB, but can you not number the missions for random activations, like in IL 2 FB . Like None000 , none001 and none003 they will randomly spawn .

I have not treied linking missions to a campaign in CLOD , so I am not sure myself 

Share this post


Link to post
Share on other sites

On#aircraftdestroyed: mission success if X number or X% of enemy aircraft destroyed, or AI bugout if X% friendlies destroyed

 

Onobjectdestroyed: mission success if object X destroyed (factory, hangar etc)

 

More valuable than any of the above though would be to fix the AI though so that it actually does what you want it to in the mission ie ENGAGE THE (CORRECT) BLOODY ENEMY

 

- target fighters

- target bombers

- attack ground targets

 

Everything else in mission building is a luxury until you can stop the AI fighters flying straight past enemy formations, or ignoring attacks and continuing in a straight line. And then this:

 

Still dream of the AI having dynamic semi random application of the sort of routines we were able to programme in BOB2 and tailor according to AI skill and experience level. There has never been a sim to match BOB2 AI for a near human dogfight, and it would be great if CoD one day could!

 

From my old BDG release notes:

 

Overview of the BOBII AI Performance and Design

The redesign of the AI Maneuver Selection

The redesign of the AI maneuver Selection Criteria was driven by the need to become more deterministic and less random in selecting AI maneuvers. I felt the need to move in this direction to improve the AI offence and defense so the AI selection software had more control. Of course there is a big danger in this strategy. We do not want BOBII to become repeatable. This will become a fine line to follow in the future and I will need both our testers and customers help and feedback. 

Here is a summary of the new selection criteria design: 

1. Altitude (how much altitude and rate of change) 
2. Speed (how much speed, and rate of change) 
3. Position of A/C to each other (none to tail, tail to tail, nose to beam, tail to beam or left, right, front, back) 

To implement the new selection criteria I built a 3 X 6 matrix (a truth table) and many new programs. For each A/C (the unfriendly and the AI or the player), I designed programs to look at Altitude, Speed, and position and to first try and select the best maneuver option (aggressive or defense) based on AI skill level. 

Altitude and speed can also be thought of as “energy” as altitude can be turned into speed. 

The new design uses the A/C’s “lead” position (his future position which would be a small delta in the future). 

 

AI levels were a combination of experience and skill and could be set in options to the following:

 

Novice: restricted to basic maneuvers, high chance of making wrong choice

Veteran: broad range of offensive and defensive maneuvers, lower chance of wrong choice

Hero: full range of offensive and defensive maneuvers including drag n bag when flying with wingman who is welded, least chance of wrong choice

Terminator: only chooses from offensive maneuver set, always trying to get a firing solution, never defensive, higher tendency to SPINOUT

Maneuver selection was reliant an AI feature called “Flying Factor (FF)”. This is the knowledge of the AI pilot to fly a given maneuver (experience) and how well the AI pilot will actually fly the given maneuver (skill). The FF is based on the Skill Level (customer selected in Instant Action Missions and software assigned in the Campaign). The Terminator is assigned a Skill Level of Hero2 (the highest in the game) so that is where he gets his boost in performance (edge).

AI Maneuver Selection is KEY

First, the BOBII AI has a special case for selection called “Evasive maneuver selection”. The Evasive maneuver is required when an AI is shot at (either a hit or near miss). The AI will select a defensive maneuver based on the criteria/data for both Player and enemy AI (speed, altitude, and the position of the targeting AI and the AI being targeted with respect to each other).

The first key decision to be made is to select either an aggressive or defensive maneuver. This is a complex decision based on the available information on both the Player and the Enemy AI or the friendly AI and the enemy AI. The data considered for both Player and enemy is speed, altitude, and the position of the targeting AI and the AI being targeted with respect to each other.

After selecting either an aggressive or defensive, then a random approach is used to select a category (choose good, choose bad, or choose “neither” good nor bad maneuver).

Maneuvers are then divided into three parts Climb, Horizontal, and dive for each of our categories (choose good, choose bad, and choose neither good nor bad maneuver).

The individual maneuver selection is then based on speed, altitude, and position of both the player and the enemy AI.

In BOBII we have over 80 complex maneuvers for selection (both the aggressive and defensive maneuvers) for the fighters (Spit,Hurri,109.110) and over 50 simple maneuvers for selection for the JU87 and Defiant. The following are BOBII’s complex maneuvers (some of my favourites in bold, which give a real Holy S moment when you see them in action):

MANOEUVRE_SELECT
MANOEUVRE_LOOKROUND
MANOEUVRE_WELDEDWINGMAN (aircraft fly rotte tactics)
MANOEUVRE_BAILOUT
MANOEUVRE_TOPCOVER
MANOEUVRE_FORCETOPCOVER
MANOEUVRE_LINEABREAST
MANOEUVRE_PINCER
MANOEUVRE_MULTIWAVE
MANOEUVRE_DIVEANDZOOM
MANOEUVRE_INSIDELOOP
MANOEUVRE_LAGPURSUIT
MANOEUVRE_SPLITMANOEUVRE
MANOEUVRE_HEADON
MANOEUVRE_LINEASTERN
MANOEUVRE_VICATTACK (RAF ONLY)
MANOEUVRE_BARRELROLLATTACK
MANOEUVRE_SCISSORS
MANOEUVRE_MILDSCISSORS
MANOEUVRE_TURNINGFIGHT
MANOEUVRE_SPLITS
MANOEUVRE_ZOOMANDDROP
MANOEUVRE_STRAIGHTANDLEVEL
MANOEUVRE_SPINOUT
MANOEUVRE_DIVEFORHOME
MANOEUVRE_GOHOME
MANOEUVRE_MAKEFORFRIENDLY (If AI is outnumbered and friendly fighters in visual range it seeks them out and calls for help)
MANOEUVRE_MOVEAWAY

MANOEUVRE_QUICKROLL
MANOEUVRE_IMMELMANNTURN
MANOEUVRE_IMMELMANN
MANOEUVRE_STAYWITHPREY (AI ignores fighters and goes for bombers)
MANOEUVRE_CLIMBFORHOME
MANOEUVRE_STRAIGHTDIVE
MANOEUVRE_OUTSIDELOOP
MANOEUVRE_SHOOTTOFRIGHTEN (Used when friendly bombers are under attack but AI does not have ideal firing solution)
MANOEUVRE_SHOOTTOOEARLY (Used when friendly bombers are under attack but AI is out of range)

MANOEUVRE_GAINHEIGHT
MANOEUVRE_LAGROLL
MANOEUVRE_EXTENSION (AI uses energy to extend away, then  turn and re.engage)
MANOEUVRE_DIVINGROLL
MANOEUVRE_REVERSETURN (Bf110 'hammerhead' move used at top of stall climb)
MANOEUVRE_SELFASBAIT (otherwise known as Drag n Bag - awesome to see in action because it requires the AI to know that it has an enemy in pursuit + wingman flying as 'weldedwingman' + in a firing position and then put itself in the firing line so that its wingman can take the shot. Freaking insane when you see it done or it is done to you!)
MANOEUVRE_JINK (Exerienced/veteran AI never flies straight and level in a combat zone)
MANOEUVRE_BREAKTURN
MANOEUVRE_LAZYTURN
MANOEUVRE_BREAKLOW
MANOEUVRE_BREAKHIGH
MANOEUVRE_BREAK90
MANOEUVRE_BREAK180
MANOEUVRE_HIGBARRELROLL
MANOEUVRE_PANICTURN
MANOEUVRE_TURNANDRUN
MANOEUVRE_LOWALT
MANOEUVRE_ZOOM
MANOEUVRE_INTERCEPTHIGH
MANOEUVRE_INTERCEPTLOW
MANOEUVRE_GAINSPEED
MANOEUVRE_HEADONATTACK
MANOEUVRE_LUFBERRY (Bf110 and Stuka only)
MANOEUVRE_STEEPDIVE
MANOEUVRE_UPANDUNDER
MANOEUVRE_STALLTURN
MANOEUVRE_SLASHINGATTACK
MANOEUVRE_CLIMBTURN
MANOEUVRE_ROLL360
MANOEUVRE_STRAFFE (coded to recognise that if the jabo has bombs it should use these first before conducting a strafing run)
MANOEUVRE_TRANSITION
MANOEUVRE_PEELOFF
MANOEUVRE_SNAPSHOT
MANOEUVRE_STAYONTAIL
MANOEUVRE_FLYTHROUGHCLOUD (damaged AI heads for cloud if nearby)
MANOEUVRE_REGROUP
MANOEUVRE_DISENGAGED
MANOEUVRE_SPINRECOVERY
MANOEUVRE_COLLIDE (Terminator AI when out of ammo has a tiny random chance of choosing this maneuver as its last 'locked' option and will try to ram enemy aircraft until out of range or fuel)
MANOEUVRE_LAST
MANOEUVRE_ABORTENGAGE (Bf110 and 109 jabos only, drop bombs and engage when attacked)
MANOEUVRE_DROPANDZOOM
MANOEUVRE_COLLISIONAVOIDANCE
MANOEUVRE_TURNTOHDGANDPITCH  

MANOEUVRE_JINK_ATTACK (Bomber on final bomb run will not fly straight and level when attacked, but will try to stay on target)
MANOEUVRE_SCREWYOUGUYSIMGOINGHOME (Novice AI bugs out more often, veteran less often, terminator never, even when injured or damaged / also, a bomber formation will cut and run when X% of formation is destroyed depending on skill/experience)
 

(Another nice thing about BOB2 is that you could turn on 'AI movecodes' and see exactly what AI maneuvre each AI aircraft was using at any time to confirm it was doing the above.)

 

The AI Performance Criteria/Dependencies

Skill Level

The AI performance is dependent on AI Skill Level (which is customer selected in Instant Action and SW assigned in the campaign). BOBII AI do make random mistakes (spin, crash, dumb maneuvers, bad judgment, shoot late, shoot bad, etc) which is after all very human.

The skill level of the AI is key in making decisions on about everything with respect to AI performance like (1) how well the AI fly, shoot, shoot fast, slow, accuracy, or not shoot, (2) how well the AI fly, what maneuvers are selected, and how well the AI will fly the chosen maneuver.

Random Numbers (Luck of the draw)

The BOBII AI A/C is also dependent on luck (specifically on random numbers). Random number decisions are coded through out the AI code. BOBII’s random approach keeps BOBII from doing the same thing each time. Even something as simple as the direction to start a maneuver (left or right), I will use a random number to decide (why hard code something when you can use a random number).

For example, most BOBII vertical maneuvers use a random number to assign a length of time to for a specific vertical maneuver (Like Zoom). The AI pilot will sometimes cut off early, or late, or somewhere in the middle. If early the maneuver may carry too much speed and if late the AI may slow down so much that control is lost (very human). 

The bottom line is that the customer will always see a somewhat different maneuver (very good, good, not so good, and loss of control) both because of the random implementation and the different physic’s parameters (speed, roll, heading, pitch, and overall energy) going into each maneuver.

The very real downside of random numbers is it is very hard to test (not repeatable) and the processing power used.

Conditions

The conditions for each maneuver are always different (energy, speed, altitude, skill, damage, and enemy position). This also changes how the maneuver is performed. A damaged AI will not fly as well as an undamaged AI.


 

Edited by heinkill
  • Like 1

Share this post


Link to post
Share on other sites

Veteran66

 

I think that are a wrong expectation from SP players relative to 4.50.

 

4.50 for the most will not touch the SP issues - AI behavior, commands, etc. News in this "front" is promised for 5.0.

 

 

 

 

 

 

Share this post


Link to post
Share on other sites

Is not possible add some basic scripts for selection inside FMB - for nor advanced users?

 

Actually are only 2 or 3 and "pass through" are broken, needing additional script (manual).

 

 

Share this post


Link to post
Share on other sites
On 5/28/2018 at 2:21 AM, 69thSpiritus_Mortem said:

@Veteran, coder is working on a list of what can be done via script, not sure when it will be ready. 

 

I hope so, CloD have many script possibilities but all must be list in a DLL

  • Upvote 1

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×