AI work?

Talk among developers, and propose and discuss general development planning/tackling/etc... feature in this forum.
Post Reply
-REBEL3-
Bounty Hunter
Bounty Hunter
Posts: 132
Joined: Sun Nov 01, 2009 2:43 am
Location: Alaska

AI work?

Post by -REBEL3- »

Are people still working on the AI coding mess? Some of the last posts on the subject of AI seemed to indicate that the code would need to be re-written (in a Rewriteathon tm. :D ) If the code is going to be rewritten, I might have a few ideas on the way the new AI could be built/organized, but I would like to know if something is actually going on before posting anything.
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: AI work?

Post by pheonixstorm »

Post the ideas anyway. All ideas that can improve the game are welcome. The AI will eventually get a rewrite just not at this time. There are other things that have a higher priority such as a working STABLE windows build and cleaning up the code a bit. A rewrite might happen after the next stable release I don't know.. you can post your ideas here or find the AI thread (can't remember where it is)
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Re: AI work?

Post by chuck_starchaser »

Yeah; frankly I don't think anything's gonna happen with the AI anytime soon; simply because there are sooooo many things to do, and so many of them for which we have a pretty good idea what to do, which is not the case with AI. But as Deus says, speak up. The thread won't get lost, and when the time comes to work on it we'll probably review what's been discussed.
-REBEL3-
Bounty Hunter
Bounty Hunter
Posts: 132
Joined: Sun Nov 01, 2009 2:43 am
Location: Alaska

Re: AI work?

Post by -REBEL3- »

OK, so here's my ideas on the new AI. NOTE-I haven't looked at the current AI much, and I don't have the SVN, so I might be out of date (I use 0.50). I also assume that the game would have a dynamic economy, that we would have more quests the present, etc.

Here's a possible AI system for VS:

Overseer AI-keeps game rolling-does scripted events (Hoffman's Blobs invading, quests, big wars, etc.)

Government AI-Starts wars, controls trade (embargos against enemies, etc.)

System AI-like overseer, but more detailed-does in-system wars-scripted battles (attack, retreat, lure, blockades against planets etc. )

Planet AI-manages Station AIs/ economy on planet/spawns from planet.

Station AI-controls station, controls things spawned from station, controls prices @ station with assist from overseer and government+ dynamic econ.

Fleet AI-coordinates movements between different flightgroups/capships

2 divisions under that-

Capship AI-a lot like station AI, but also controls movement (so, the child of planet AI and Station AI).

Flightgroup AI-decides where the flightgroup will go, and flightgroup actions (attack, defend, etc. Influenced by ship AI flavors in the flightgroup. If all ships are Aggressive flavor, they will attack more then defend.)

Under flightgroup AI, you have ship AI-controls an individual ship-also has some personality traits. Ship AI looks at the AI styles, selects one (when spawned) and uses the behaviors specified in the chosen style (suicidal Uln AI could specify obnoxiously ramming player in your Dodo). :D

Weapons/ship loadout could be partly pilot based -aggressive pilot sacrifices trading space for missiles. eg)

Dynamic economy would be influenced by current events, overseer, and government.


EVERYTHING ELSE-such as the ship physics, collision code, asteroids-would all be UNCONNECTED to the AI. This way, we can change the AI-add new AI "flavors" (aggressive, crazy, trader, etc) without changing anything other then the AI files relating to the AI types. I could see that the type of ship the AI is flying would influence the AI behavior, and vice versa-an aggressive AI would probably be flying a fighter, but if it was flying a trader ship (a Mule), it would probably go pick a fight in it (or at least respond more aggressively if it were attacked).

Disclaimer: I don't know exactly how the current AI system works, but, from what I've seen, it looks like all the entities in VegaStrike have an AI (including asteroids) and that other stuff like faction relations, and the economy is handled by a separate set of programs. These programs are not related to the AI in any way (to my knowledge). However, collision code and physics is related to the AI in some way.
chuck_starchaser
Elite
Elite
Posts: 8014
Joined: Fri Sep 05, 2003 4:03 am
Location: Montreal
Contact:

Re: AI work?

Post by chuck_starchaser »

Sorry I decided to shut myself off the forum for the weekend and try to get cubemaps and shaders and new engine ported to PU. That wasn't hard, but upgrading a couple of models to use them took most of the time; --and I'm not even done yet, after about 30 hours of work.

Good thinking.
I like the idea of overseer AI's at each level. It reminds me of the Theosophical belief in celestial and planetary deities overseeing spiritual evolution, devas, karmic regulators and whatnot. I think it will make much easier to ensure balance and put bounds on the chaos. What we would end up doing, to stop the game dynamics from ending up with one faction controlling the universe, is to have hacks all over the place, probably. But having overseeing AI's is a way of being up-front, deliberate and honest about arbitration issues.

BTW, physics and collisions are loosely connected to AI: AI gets input from collisions, and outputs commands (steering, accel) to the physics; not sure how neatly right now, but will soon use messages and message queues, as the plan is to make the AI run asynchronously.
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: AI work?

Post by pheonixstorm »

Some of the ideas you brought up were touched on in the AI thread. Theres a lot of fine tuning that can be done eventually. If you haven't found it already I will see if I can dig up a link to the AI thread so you can read through it.
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
-REBEL3-
Bounty Hunter
Bounty Hunter
Posts: 132
Joined: Sun Nov 01, 2009 2:43 am
Location: Alaska

Re: AI work?

Post by -REBEL3- »

Yes, please. I read some of the AI thread a while ago, but have no idea where it is now...
-REBEL3-
Bounty Hunter
Bounty Hunter
Posts: 132
Joined: Sun Nov 01, 2009 2:43 am
Location: Alaska

Re: AI work?

Post by -REBEL3- »

Necroposting FTW! :D

I was just thinking about the whole AI/Factions/Economy mess, and decided to make some notes on some ideas I had for a new system. Comments welcome! :D

Overseer AI:
-Overseer AI-keeps game rolling-does scripted events (Hoffman's Blobs invading, quests, big wars, etc.)
-The Overseer AI also does scripted financial events-depressions, economic crashes, etc.
-Also does factional stuff-related to the scripted wars.
*NOTE* the overseer does only scripted events. All procedurally generated events/stuff are handled by the Government AI.*


Government AI:
-Government AI-Starts wars, controls trade (embargos against enemies, etc.)
-Governmental AI also deals with factions-if it hates a certain faction, it might create an embargo against them, or vice versa. Another example-if the pirates have killed lots of LIHW ships lately, then it might go to war against them
-It also deals with the economy-does global changes (more military production, less agricultural production, etc.)

System AI:
-System AI-like government, but local -does in-system wars-procedurally generated battles (attack, retreat, lure, blockades against planets etc.) *NOTE-procedurally gen. battles will need other criteria other then random chance to occur.*
-System AI also deals with factions, but on a local level, rather then a global level.
System AI also deals with economy-but, once again, on a local level.


Station AI:
-Station AI-controls station, controls things spawned from station, controls prices @ station with assist from overseer and government+ dynamic econ.
-Station AI also deals with factions, but on a personal level. (E.g. The PC just killed 5 mining ships. Everybody who spawns, kill him!)
-Station AI sets personal price levels @ itself, with assist from all other AIs.

Planet AI:
NOTE: I'm now thinking Planet AI should be a dupe of Station AI-but used only for planets. This way, if we want to change planets classification w/o having to change the AI, we can.


Note-these guys don't have much to do with economy.
Fleet AI-coordinates movements between different flightgroups/ capships

2 divisions under that-

Capship AI-a lot like station AI, but also controls movement (so, the child of planet AI and Station AI).

Flightgroup AI-decides where the flightgroup will go, and flightgroup actions (attack, defend, etc. Influenced by ship AI flavors in the flightgroup. If all ships are Aggressive flavor, they will attack more then defend.)

Under flightgroup AI, you have ship AI-controls an individual ship-also has some personality traits. Ship AI looks at the AI styles, selects one (when spawned) and uses the behaviors specified in the chosen style (suicidal Uln AI could specify obnoxiously ramming player in your Dodo).

Note: These guys should be influenced by factional relationships, but not to an extreme (unless they are military). For example, even if the Aera love me, if I start shooting down a flight group, the members of the flight group should attack me. Another note=all units should have their own factional relations system. If I have fought them before and killed some of them, they should hate me no matter what (unless there's a scripted reason to do so. Also, wingmen should work this way. If I leave them in the middle of a battle, they should like me less, and their price should go up for those specific wingmen.)
Post Reply