Board index FlightGear Development New features

AI & MP Dogfighting now working! Bombable ships, aircraft...

Discussion and requests for new features. Please note that FlightGear developers are volunteers and may or may not be able to consider these requests.

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby Ianio » Thu Mar 17, 2016 6:10 pm

i thought i would add my name to the 30 pages of praise for this "add-on"

having advanced beyond rookie for spitfire IIIc, the F6F and to a lesser extent the P51d, my immediate concern was, "where next?"

the answer is of course the communities best kept secrete. BOMBABLE.

this is working with FGrun and FG - 2016.1.1. I get booted out occasionally when something goes wrong, mainly when using the spitfire which is not bombable specific, so fair enough.

there is something pretty cool about dog fighting over the ever improving street scenery of Manchester and forcing a Zero to crash and burn in the Trafford Centre car park

i would love to hear from anyone who can point me to an active multiplayer group.
Ianio
 
Posts: 21
Joined: Sun Feb 28, 2016 12:16 pm
Location: UK
Callsign: ianio
Version: 2016.1
OS: Linux Mint 17.3

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby PINTO » Thu Mar 17, 2016 6:15 pm

We don't use bombable - rather our own custom system - but the Operation Red Flag group is a multiplayer dogfighting group.
Actively developing the MiG-21bis (github repo) (forum thread) (dev discord) (fg wiki)

http://opredflag.com is an active flightgear dogfighting community (using a system that isn’t bombable)
User avatar
PINTO
 
Posts: 966
Joined: Wed Oct 21, 2015 7:28 pm
Callsign: pinto
Version: stable
OS: Win10

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby jeffb » Mon Nov 21, 2016 10:03 pm

Hi,
I have an interest in Modern African warfare, especially the Southern African bush war of the 1960's to the late 1980's, and have a couple of questions as regards the bombable add on.
1. Do i have to create a scenario/bombable xml or can fly straight out of any South African airbases?
2. Can i get the SAAF Mirages, Mirage III and a "What if" Mirage 2000 to go against Angolan Migs?

Many Thanks

Jeff
Wigan turin blu-My Ass!!
Wigan RLFC- Not just a religion
Ancient & Loyal 1872
User avatar
jeffb
 
Posts: 70
Joined: Wed Feb 18, 2009 11:00 pm
Location: Flying around Africa
Version: 3.6
OS: Windows 7

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby flug » Sat Feb 18, 2017 4:09 am

jeffb wrote in Mon Nov 21, 2016 10:03 pm:Hi,
I have an interest in Modern African warfare, especially the Southern African bush war of the 1960's to the late 1980's, and have a couple of questions as regards the bombable add on.
1. Do i have to create a scenario/bombable xml or can fly straight out of any South African airbases?


From the readme:

* MOVE SCENARIOS TO YOUR LOCATION--WHEREVER THAT MAY BE: As of Version
4.4, Bombable will move scenarios to your location--wherever in
the world that may be! You can re-spawn enemy aircraft, tanks,
ships, etc. from ANY scenario to ANY location. Simply load the scenario you
want, go to the location you want, and when you are ready to engage, select
in the FG menu Bombable/Bombable Options and then "Respawn AI Aircraft" and/or
"Respawn AI Ground/Water Craft". This will move any aircraft, ships, tanks,
jeeps, etc from the scenario to your immediate location, where you can find
and engage them.


In short that means - choose your scenario before you start. Come in at whatever airport or location you wish. Then go to the Bombable menu & click a button to transfer the aircraft etc for the scenario to wherever you are.

Note that there are a few buttons--different ones for aircraft vs ground/naval vehicles. Also there is an option for "grouped" vs "preserve relative position". Grouped means the aircraft/ships/vehicles will be randomly re-grouped and repositioned near you. "Preserve relative position" means that their relative positions will be preserved and the entire formation or group just transported as a whole to your current location.
flug
 
Posts: 219
Joined: Wed Jun 17, 2009 2:06 am

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby flug » Wed Feb 22, 2017 9:09 am

FYI I have been testing Bombable with Flightgear 2016.4.4 and mostly it works quite well. I found two bugs:
    1. The Bombable Menu doubles up in the menu bar each time you do a file/reset. So after a few resets you have 2, 3, 4, or really any number of Bombable menus at your disposal . . .
    2. Smoke and fire effects (often) stop working after file/reset - but then sometimes spontaneously start working again

I have a slight update for Bombable that fixes issue #1 with the menus. I think the issue with the smoke is more of a Flightgear issue--it seems to effect everything in the particle system, not just Bombable.

Here is the link to the Bombable 4.6alpha version with the menu bugfix, please a few more tweaks (like . . . major revisions to the Bombable Sopwith Camel):

NEW: 4.6beta version fixes a couple of minor bugs with Flightgear 2016.x.x, and includes the NEW 2.0 version of the historically realistic JSBSim Sopwith Camel. (click to download .zip file)

[EDIT: ver. 4.6 beta now released.]
flug
 
Posts: 219
Joined: Wed Jun 17, 2009 2:06 am

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby flug » Sat Feb 25, 2017 1:38 pm

I've been using Bombable quite a bit recently as I test the Sopwith Camel. The good news is that it really works better than every with FG 2016.4.4.

Typical procedure for flying with a Bombable AI scenario is something like this:

1. Open FG. Go to whichever airport or part of the world I want.
2. Click the AI menu & choose the Bombable scenario I want to play
3. Click the Bombable menu and "Respawn AI Aircraft" and/or "Respawn AI Ground/Water Craft" as appropriate
4. Fight to the death--usually my own . . .

When you get tired and want to do something else, just go to the AI menu & un-check the scenario - the AI planes will disappear immediately.

And don't forget that Bombable is really designed to be played over multiplayer . . .
flug
 
Posts: 219
Joined: Wed Jun 17, 2009 2:06 am

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby Hooray » Sat Feb 25, 2017 1:49 pm

flug wrote in Sat Feb 25, 2017 1:38 pm:And don't forget that Bombable is really designed to be played over multiplayer . . .


FYI: You may want to read up these recent developments in the MP department:

https://sourceforge.net/p/flightgear/ma ... /35687340/
http://wiki.flightgear.org/Emesary


There's also been talk about possibly using the Emesary system to hook up the weather simulation to the multiplayer system: http://wiki.flightgear.org/Advanced_wea ... yer_system


Another development that may be of interest is Torsten's work/approach to re-introduce the ATC chatter method, which could also be useful for bombable sooner or later:

Whatever happened to random radio chatter?
Hooray wrote:Just for the record, Torsten ended up using a fairly clever method to come up with this idea for implementing addon support via PropertyList-XML overlays loaded via the --config argument - however, that also brings with it all the power for conflicting with stuff you are loading using the same mechanism, and/or any defaults you have customized. So just be aware of how this works - and again, kudos to Torsten for coming up with such a fancy approach to make this work, despite people arguing for the better part of a decade that FlightGear would not have "proper addon/modding" support" ... ;-)

With that being said, it would probably be a good idea to formalize the whole method and stop using tons of embedded Nasal, and instead document/favor the use of io.load_nasal() and/or io.include() to load Nasal code from the addon directory.

Equally, such code should ideally wrap setlistener and settimer/maketimer to honor the /sim/signal "events" - but apart from that, it's a really clever idea
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 12707
Joined: Tue Mar 25, 2008 9:40 am
Pronouns: THOU

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby flug » Mon Feb 27, 2017 11:29 am

Next 'pre-release' version of Bombable 4.6 here:

https://github.com/bhugh/Bombable/archive/4.6gamma.zip

Unless there are major problems I expect to make this the 4.6 final release. Main changes are *major* updates to the JSBSim Sopwith Camel FDM.
flug
 
Posts: 219
Joined: Wed Jun 17, 2009 2:06 am

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby flug » Sun Mar 19, 2017 1:00 pm

flug wrote in Sat Feb 18, 2017 4:09 am:* MOVE SCENARIOS TO YOUR LOCATION--WHEREVER THAT MAY BE: As of Version
4.4, Bombable will move scenarios to your location--wherever in
the world that may be! You can re-spawn enemy aircraft, tanks,
ships, etc. from ANY scenario to ANY location. Simply load the scenario you
want, go to the location you want, and when you are ready to engage, select
in the FG menu Bombable/Bombable Options and then "Respawn AI Aircraft" and/or
"Respawn AI Ground/Water Craft". This will move any aircraft, ships, tanks,
jeeps, etc from the scenario to your immediate location, where you can find
and engage them.


I just released version 4.6delta of Bombable, which has these improvements:

- Major upgrades to the JSBSim historically realistic Sopwith Camel, which is completely Bombable-compatible

- A very helpful upgrade to the "Move Scenarios To Your Location" feature--you can move AI aircraft/ships/vehicles from wherever the original scenario was to your location, but DISPERSE them as widely as you wish.

So what I do now, if I'm flying say a WWI aircraft, is load ALL the WWI aircraft scenarios via the AI menu. Then go to Bombable Menu / Bombable Options and "Respawn AI Aircraft Near You, Dispersed".

Enter you Min & Max Dispersal distance. When I load all the WWI Scenarios (about 25 aircraft) I use 5KM min & 45 or 50 KM max.

Aircraft will also be dispersed in elevation--some on the deck, some at 5000, 10000, 15000 feet.

Then you can just cruise around and look for some action. (Use Equipment/Map to locate enemy aircraft; click the "Show Traffic" checkbox.)

Download Bombable 4.6delta from the first post in the topic:

viewtopic.php?f=6&t=5742
flug
 
Posts: 219
Joined: Wed Jun 17, 2009 2:06 am

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby flug » Wed May 03, 2017 6:47 pm

We've been talking about making more realistic AI opponents for Bombable, and heinkill on the ATAG forums gave a really interesting analysis of the AI pilot features of the BOB2 software that may give us some interesting and specific things to work to implement in Bombable:

Buddye on design of the BOB2 AI Maneuver Selection

The design 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...

Here is a summary of how the AI selects from the (more than 80) available maneuvers:

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 (nose to tail, tail to tail, nose to beam, tail to beam or left, right, front, back) This is what makes the AI really 'smart' - it is constantly testing to see if it is 'offensive' or 'defensive' and chooses its response dynamically as the fight progresses.

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. The same I applied to ground attack scenarios, was the aircraft offensive (targets in range, and not being targeted by player or other AI aircraft or AAA) or was it defensive (targets in range but being targeted itself).

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

I created an uber aggressive 'Terminator AI' which only chooses from the offensive tactical set, it never goes defensive, so you might want to try it out. With the tweak to Terminator routines, he was getting “cocky” so I implemented a random spinout feature. The Terminator flies so close to the edge now that he has a chance to “spinout”. This is when you can most easily get him.

I also implemented a new AI feature called “Flying Factor (FF)”. This is the knowledge of the AI pilot to fly a given maneuver (the game tracks the experience of every individual AI pilot in successful or unsuccessful sorties) 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). BOB2 has since 2009 had up to 4 mixed skills within a flight Novice, Veteran, Ace or Hero. So you might get lucky and bag a novice with limited abilities, to then be up against an ace who has the full range of AI talents available to it.

AI Maneuver Selection is the 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) or padlocked by an aircraft within visual line of sight and range. The AI will select a defensive maneuver randomly 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). Of course, the AI will evade the players quicker, if and only if, the AI can see the enemy (remember in BOBII, the AI vision is blocked just like the player's vision is blocked by the cockpit/airframe, wings, sun, clouds and distance). So as in real combat, you have the best chance if you surprise the AI by attacking from a blind spot, with altitude advantage, out of the sun or cloud.

The first key decision to be made by the AI 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 core data considered for both Player and enemy is speed, altitude, and the tactical position of the targeting AI and the AI being targeted with respect to each other.

After selecting either an aggressive or defensive tactic, then a semi random approach is used to select a category (choose good, choose bad, or choose “neither” good nor bad maneuver). This also makes the AI very human, creating the chance that it will choose a 'bad' maneuver in some circumstances. The chance is higher for novice, and lowest for Hero AI.

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

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 maneuvers for selection for the ground attack aircraft like the JU87. The following are BOBII’s complex maneuvers. Highlighted maneuvers can be ordered by the player and are also tied to the radio commands so that the player can order their wingmen to perform the maneouver:

MANOEUVRE_SELECT
MANOEUVRE_LOOKROUND (AI will weave and roll to allow it to try to 'check' in blind spots when in the combat area.)
MANOEUVRE_WELDEDWINGMAN
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
MANOEUVRE_BARRELROLLATTACK
MANOEUVRE_SCISSORS
MANOEUVRE_MILDSCISSORS
MANOEUVRE_TURNINGFIGHT
MANOEUVRE_SPLITS
MANOEUVRE_ZOOMANDDROP
MANOEUVRE_STRAIGHTANDLEVEL
MANOEUVRE_SPINOUT
MANOEUVRE_DIVEFORHOME
MANOEUVRE_GOHOME (Radio command for RTB)
MANOEUVRE_MAKEFORFRIENDLY
MANOEUVRE_MOVEAWAY
MANOEUVRE_QUICKROLL
MANOEUVRE_IMMELMANNTURN
MANOEUVRE_IMMELMANN
MANOEUVRE_ATTACKMYTARGET (Radio command. In ground attack radio menu, if the player has padlocked a target, the AI assigns 2 aircraft if available to attack the padlocked target. If no target is padlocked, the AI assigns 2 aircraft if available to search for ground targets and attack them, within visual range. Similar for air targets in the air attack radio menu context.)
MANOEUVRE_STAYWITHPREY (Radio command which forces AI to ignore eg fighters and concentrate on bombers. The PREY is defined by the mission target type, either fighter, bomber or ground target. Important for BOB because RAF doctrine said pilots were not to deviate from mission objectives to attack targets of opportunity.)
MANOEUVRE_CLIMBFORHOME
MANOEUVRE_STRAIGHTDIVE (for LW, this is a bunt, for the RAF Merlin engine fighters, they will roll to invert, then dive)
MANOEUVRE_OUTSIDELOOP
MANOEUVRE_SHOOTTOFRIGHTEN (eg if AI detects a comrade under attack within range)
MANOEUVRE_SHOOTTOOEARLY
MANOEUVRE_GAINHEIGHT
MANOEUVRE_LAGROLL
MANOEUVRE_EXTENSION
MANOEUVRE_DIVINGROLL
MANOEUVRE_REVERSETURN
MANOEUVRE_SELFASBAIT (or 'drag and bag' in other parlance - AI flying with an AI wingman - one AI will fly steady and slow, luring the player, while its wingman stalks)
MANOEUVRE_JINK
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 (a special manoeuver for the Bf110s)
MANOEUVRE_STEEPDIVE
MANOEUVRE_UPANDUNDER
MANOEUVRE_STALLTURN
MANOEUVRE_SLASHINGATTACK
MANOEUVRE_CLIMBTURN
MANOEUVRE_ROLL360
MANOEUVRE_STRAFFE (if given as a radio command - attack ground targets within visual range, or if player has padlocked a specific target, attack that target)
MANOEUVRE_TRANSITION
MANOEUVRE_PEELOFF
MANOEUVRE_SNAPSHOT
MANOEUVRE_STAYONTAIL (if given as a radio command - attack nearest air target within visual range, or if player has padlocked a specific target, attack that target)
MANOEUVRE_FLYTHROUGHCLOUD (a defensive manouver available if clouds are present - the AI dives for the nearest cloud)
MANOEUVRE_REGROUP
MANOEUVRE_DISENGAGED
MANOEUVRE_SPINRECOVERY
MANOEUVRE_COLLIDE
MANOEUVRE_LAST
MANOEUVRE_ALIGNMENT
MANOEUVRE_DROPANDZOOM
MANOEUVRE_COLLISIONAVOIDANCE
MANOEUVRE_TURNTOHDGANDPITCH (turn to heading, a waypoint command)
MANOEUVRE_SCREWYOUGUYSIMGOINGHOME (when damaged, out of fuel, or low on morale - the AI will still evade if attacked when running for home.).

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 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.

Experience

Each AI pilot/aircraft in the game is assigned a unique identifier. Each time that pilot is included in a sortie their experience score increases. If the sortie is successful (enemy destroyed by squadron>friendly lost) experience is also increased. If the sortie is unsuccessful (enemy destroyed<friendly lost) experience remains the same. Experience determines how many maneuvers the pilot can choose from, skill determines how well they execute them (choose good, choose bad, or choose “neither” good nor bad maneuver). This is the Flying Factor.

Morale

The game tracks the morale of every pilot and squadron/staffel in the game. Losses during combat impact the morale of a pilot and his unit in real time. If the AI pilot achieves a kill, morale is increased for themselves, and for their unit. If the unit takes losses, the AI pilot morale is decreased. When they land if enemy destroyed by squadron>friendly lost, overall morale is increased for the whole unit. If the sortie is unsuccessful (enemy destroyed<friendly lost) overall morale is decreased for the whole unit. An AI pilot's morale level and any losses of their unit during an actual combat, will increase or decrease the likelihood of the pilot choosing a bug-out maneuver ('RTB', 'turn_and_run', 'dive_for_home', 'screw you I'm going home') or a panic maneuver (panic_turn, maneuver_collide, shoot_too_early).
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 - weather: wind speed, and wind direction will affect airspeed, and damage to AI aircraft affects how well the AI can maneuver or what maneuvers are available. A damaged AI will not fly as well as an undamaged AI as engine damage effects airspeed and structural damage limits control surface response (damage is always taken into account in the AI flying performance).


As you can see, he was one detail oriented guy.

But as I said, the success of the BOB2 AI system was building the matrix of offensive and defensive maneuvers and linking them to experience, skill and morale. After that, he was able to more successfully tie radio commands to the relevant maneuvers.
flug
 
Posts: 219
Joined: Wed Jun 17, 2009 2:06 am

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby Bomber » Wed May 03, 2017 8:58 pm

That is an interesting read flug and not just because it was written over two years ago...

AI is an interesting subject with regards combat, one that I've had many private chats about, even my son who's doing a computer science degree enjoys the challenge of creating 'neural net AI',,,,,, don't ask me I've no idea what he's talking about.

here's some work carried out for Outerra



and another techneque for some interesting effects



I think the challenge of AI within FG is an exciting adventure and would love to chat about with you and others.

Regards

Simon
"If anyone ever tells you anything about an aeroplane which is so bloody complicated you can't understand it, take it from me - it's all balls" - R J Mitchel
Bomber
 
Posts: 1933
Joined: Fri Dec 14, 2007 8:06 pm
OS: Windows XP and 10

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby Necolatis » Tue May 09, 2017 9:14 pm

flug, did you change the specification for how missile impact reports should look like to work with Bombable?

Could you maybe give the detailed specification for how the impact report should look like? (is it same as for submodel reports?)
"Airplane travel is nature's way of making you look like your passport photo."
— Al Gore
User avatar
Necolatis
 
Posts: 2233
Joined: Mon Oct 29, 2012 1:40 am
Location: EKOD
Callsign: Leto
IRC name: Neco
Version: 2020.3.19
OS: Windows 10

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby 5H1N0B1 » Thu Jun 01, 2017 10:46 am

Hi,
Could it be possible to correct Warthog and Warthog2 scenarii ? They dosent display the A10 anymore.
To correct this, could you please change in BOMB-SanFranWartHogInvasion.xml and in BOMB-SanFranWartHogInvasion2.xml,
Code: Select all
      <model type="string">AI/Aircraft/A-10-Bombable/Models/A-10.xml</model>

by
Code: Select all
      <model type="string">AI/Aircraft/A-10-Bombable/Models/A-10-model.xml</model>

Thanks in advance.
5H1N0B1
5H1N0B1
"Each day, with every person you meet, there is something to learn"
5H1N0B1
 
Posts: 222
Joined: Thu Aug 30, 2012 10:36 am
Location: France
Callsign: 5H1N0B1
IRC name: _5H1N0B1
Version: GIT
OS: Ubuntu

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby Hooray » Fri Jul 21, 2017 8:37 pm

Bomber wrote in Wed May 03, 2017 8:58 pm:AI is an interesting subject with regards combat, one that I've had many private chats about, even my son who's doing a computer science degree enjoys the challenge of creating 'neural net AI',,,,,, don't ask me I've no idea what


FWIW, FlightGear's built-in scripting language is close enough to JavaScript to "port" ANNs from JavaScript to Nasal within a few minutes of search/replace: http://wiki.flightgear.org/Howto:Neural ... s_in_Nasal
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 12707
Joined: Tue Mar 25, 2008 9:40 am
Pronouns: THOU

Re: AI & MP Dogfighting now working! Bombable ships, aircraf

Postby Hooray » Sat Sep 23, 2017 8:42 pm

Bomber wrote:I think the challenge of AI within FG is an exciting adventure and would love to chat about with you and others.


FWIW, a while ago, the creator of the built-in (hard-coded) "AI traffic" system announced his own plans on revamping (aka rewriting) said AI engine from scratch: http://wiki.flightgear.org/FGTraffic

This was mainly inspired by the realization that there are number of hard-coded restrictions in place that are next to impossible to address in a sane way, many of which were repeatedly rediscovered by end-users over the course of the last 10 years, especially in terms of use-cases involving multiple instances (think multiple machines/screens like those commonly shown at FSWeekend/LinuxTag) and multiplayer setups:

http://wiki.flightgear.org/An_Integrate ... fic_System
http://wiki.flightgear.org/Decoupling_t ... fic_System
http://wiki.flightgear.org/Status_of_AI_in_FlightGear

Speaking in general, many people tend to work around these hard-coded limitations by only using the system to instantiate 3D models which are then controlled from scripting space, which is de-facto what the bombable system is also doing: http://wiki.flightgear.org/Scripted_AI_Objects

Realistically, it seems that the whole "FGTraffic" effort seems to have stalled quite a bit since then - so what is most likely to have an impact on the Bombable addon and "AI in FlightGear" as a whole, are Torsten's development of a dedicated addon "framework", and Richard's work on providing a strong IPC mechanism called "Emesary" - which is to say that the development of these two features alone can be considered to be the foundation for better/stronger AI, including controversial features (aka dog-fighting):

http://wiki.flightgear.org/Addons
http://wiki.flightgear.org/Emesary

In conjunction with the ongoing work on providing a built-in package manager it seems increasingly likely that sooner or later it will also be possible to download/install and manage/update and remove such "addons" using pretty much the same mechanism, like bugman was originally hinting at: http://wiki.flightgear.org/FlightGear_Package_Manager

Regarding the Bombable addon in particular, it would actually make sense to revisit the idea of extracting generic building blocks, as having a dedicated mechanism to control AI entities in a holistic fashion is one of the longest standing feature requests, and so far only the Bombable addon has succeeded at doing this - despite numerous related efforts: http://wiki.flightgear.org/Scripted_AI_Objects

The most recent effort (also built-in/using Nasal) is ThomasS "Ground Services" module: http://wiki.flightgear.org/Ground_Services
Image
Please don't send support requests by PM, instead post your questions on the forum so that all users can contribute and benefit
Thanks & all the best,
Hooray
Help write next month's newsletter !
pui2canvas | MapStructure | Canvas Development | Programming resources
Hooray
 
Posts: 12707
Joined: Tue Mar 25, 2008 9:40 am
Pronouns: THOU

PreviousNext

Return to New features

Who is online

Users browsing this forum: No registered users and 4 guests