Hard Light Productions Forums

Modding, Mission Design, and Coding => FS2 Open Coding - The Source Code Project (SCP) => Topic started by: diamondgeezer on April 19, 2003, 09:10:47 pm

Title: AI... again
Post by: diamondgeezer on April 19, 2003, 09:10:47 pm
You know how, left to their own devices, AI bombers will fly up to a target and then just sit there unleashing the fury with their lasers? Well, fair enough they usually crash in to their target but we'll ignore that for now :)

Anyway, I was wondering if bombers could be made to make more convincing 'runs' against a big ship. Also, how's the rest of the AI improvement stuff comming along?

----------
Diamond Geezer has no problem with heights
Title: AI... again
Post by: IceFire on April 19, 2003, 09:42:42 pm
Gosh...after playing online a bunch of times...I thought only Adam Pletcher of Volition and myself were the only people to actually use the afterburner bomb attack on capital ships.

Alas, someone else does.
Title: AI... again
Post by: CP5670 on April 19, 2003, 09:52:29 pm
I saw almost everyone do that when I used to play online... :p

I think the main problem with the bombers is that if you tell the AIs to attack a ship, they will completely ignore all other targets and go after that ship alone even if they are being pummelled by something else that they could probably destroy if they actually tried to attack it. This shows up with fighters as well but is especially noticeable for bombers.

Also, bombers seem to use their afterburners much less than fighters do and rather simply cruise around. :p
Title: AI... again
Post by: LtNarol on April 19, 2003, 09:52:50 pm
maybe hardcode into AI behavior a no-fullstop-while-attacking kinda thing? keep them moving as is sensible?  this could get pretty complicated though, it seems that AIs now just move until they're within a certain distance and then just stop, maybe disallow speeds under say 30ms while attacking a target and just tie that in with new collision avoidence code?
Title: AI... again
Post by: diamondgeezer on April 19, 2003, 11:40:32 pm
That could work... assuming it's codeable :)

--------------
Diamond Geezer does his fair share of the washing up
Title: AI... again
Post by: Vasudan Admiral on April 20, 2003, 12:52:11 am
just a quick idea:
i wonder how random maneuvers would improve the ai's capabilities, ie. if a fighter is being persued, it will pick a random series of hard-coded (or even better-tbled) maneuvers.(eg. barrel roll twice, hard port bank etc)
i guess a tbl entry would go something like this:
Code: [Select]

$Situation: being_chased
$IFF: Hostile
$Maneuver1: barrel_roll
$AI_Levels: EASY, MODERATE, HARD ;ai levels in which to use this maneuver most
+fd_thrust=100 300 ;percentage of total thrust to apply to maneuver and for how long in milli-seconds
+WHILE:rt_bank=360 100 ;pitch, bank and yaw turns would be in degrees to turn and how hard to apply turn in % (thus controlling how fast and wide the turn would be)

$Maneuver2: stop_invert
$AI_Levels: MODERATE, HARD
+fd_thrust=0 100 ;kills thrust for a second
+WHILE:up_pitch=180 100 ;turns as fast as possible 180 degrees over which begins WHILE the stop instruction is being carried out
+THEN:fd_thrust=200 250 ;puts full burner speed (thus 200%) on AFTER the invert
etc.

i think this would allow a lot of flexibility in ai terms because you could have simple or complex maneuvers to perform based on difficulty level (or it could be applyed to AI setting. eg. $AI_Levels: Lieutenant, Captain, Major, Colonel etc.)
you could also have lists of possible maneuvers for situations like bombing runs, attack in wings etc.

i suggest this after seeing freelancer ai when persued-while it's slightly better than FS's fly-in-a-big-loop-to-try-and-get-around-behind-the-persuer tactic, it's still a very predictable constant barrel roll with the occasional burst of speed in a random direction.

so, would this be at all possible? or am i about to get toasted?
i would like to try implementing it, but i am only beginning to learn the basics of C, and havn't touched C++ as of yet. :(
Title: AI... again
Post by: Fury on April 20, 2003, 02:01:59 am
Quote
Originally posted by IceFire
Gosh...after playing online a bunch of times...I thought only Adam Pletcher of Volition and myself were the only people to actually use the afterburner bomb attack on capital ships.

Alas, someone else does.

What? :wtf: People do not use afterburners in bombing runs? :wtf:  Their loss. :p
Title: AI... again
Post by: IPAndrews on April 20, 2003, 05:06:49 am
Quote
Originally posted by LtNarol
maybe hardcode


Never use these two words in close proximity when talking about FS2 AI. This is what has killed the AI system in the first place. Please add any new behaviour patterns using flags. Really, all AI behaviours should have corresponding flags with the original FS2 AI classes of fighter, bomber etc... just being short cuts to select a subset of behaviours.

I'm going to keep saying this until people listen :P
Title: AI... again
Post by: LtNarol on April 20, 2003, 09:04:13 am
Quote
Originally posted by IPAndrews
Never use these two words in close proximity when talking about FS2 AI. This is what has killed the AI system in the first place. Please add any new behaviour patterns using flags. Really, all AI behaviours should have corresponding flags with the original FS2 AI classes of fighter, bomber etc... just being short cuts to select a subset of behaviours.

I'm going to keep saying this until people listen :P
If you meant using a new tbl for this, I'm all for it, but keep in mind that using a new tbl or even modifying ai.tbl means a hell of a lot more work than hardcoding a few maneuvers.  In our situation, something that complex may not be the best idea as the coders have other things to do with their time as well.  Think practical, not ideal. :nod:
Title: AI... again
Post by: IceFire on April 20, 2003, 09:09:30 am
This is the one thing that I thought the StarLancer AI (and the FreeLancer) had over FreeSpace's.  The fact that the AI had manuvers to pull.  Even if the manuvers are something repetitive, having the ability to give the AI some tricks to pull...a hard loop around to get on your tail, a barrel role to evade fire, a couple of evasive manuvers to follow if someone is on their tail and some tactics for the attacking vessels to use to follow a ship doing this.

These would be worthy additions to the code for sure.
Title: AI... again
Post by: diamondgeezer on April 20, 2003, 09:18:35 pm
Quote
Originally posted by LtNarol
Think practical, not ideal. :nod:

Then we end up with a game which looks stunningly beautiful, but in which the AI's crash in to things every five seconds

-------------
Diamodn Geezer is confident he could beat Zylon Bane in a fight
Title: AI... again
Post by: LtNarol on April 20, 2003, 09:38:35 pm
Quote
Originally posted by diamondgeezer
Then we end up with a game which looks stunningly beautiful, but in which the AI's crash in to things every five seconds
You, sir, have a very unique definition of practical :p

I was thinking more along the lines of hardcoding a few simpler tricks rather than tie in another tbl, which in this case would probably end up being overly complex and extremely messy.
Title: AI... again
Post by: IPAndrews on April 21, 2003, 06:18:24 am
Nonsense. The AI code is big and scary but it's not particularly complicated. In the end you've got decisions on what AI behaviours to employ based on broadly defined ship types. We're suggesting taking it a step lower and giving behaviour flags or table entries. 99% of the AI code would remain unchanged. The lines that make the decisions about which chunks of code to use would change.

I'll try and have a look at it myself over the summer holidays.
Title: AI... again
Post by: Sesquipedalian on April 21, 2003, 03:36:54 pm
And what happens when, with improved AI, everyone's missions are thrown out of balance?  Improvements to the AI should be applyed to new AI classes in the ai.tbl, and not to those already present.
Title: AI... again
Post by: LAW ENFORCER on April 21, 2003, 04:20:11 pm
I belive AI should only be set in fred however the diffrent tactics n moves etfc should be in the AI table. Do we have to use those anoying captain, colnal AI levels as they are just horrible! It should be ACE, Mofo, KicknnN!, Shut yo mouth, just bring it!
:cool: :nod:
J/K but is there any degree of renaming the AI classes with out killing the system becasue I would work better with my own classifications (even if it was just in my copy of fred...).
Title: AI... again
Post by: karajorma on April 21, 2003, 04:50:35 pm
Quote
Originally posted by LAW ENFORCER
I belive AI should only be set in fred however the diffrent tactics n moves etfc should be in the AI table. Do we have to use those anoying captain, colnal AI levels as they are just horrible! It should be ACE, Mofo, KicknnN!, Shut yo mouth, just bring it!
:cool: :nod:
J/K but is there any degree of renaming the AI classes with out killing the system becasue I would work better with my own classifications (even if it was just in my copy of fred...).


Okay. Either I`m misunderstanding something or that is the singularly most stupidly useless SCP modification I`ve ever heard suggested!

Why would anyone want to waste there time changing that (assuming that it can`t be changed on the tables at the moment anyway).

I can understand adding new classes, having more or better ones but changing the names? Why on Earth would you want to do that? :confused:
Who's going to see it? Just you! The player never sees it and the time you`ve spent re-editing the tables would have been better spent just learning how the current ones work.
Title: AI... again
Post by: Sesquipedalian on April 21, 2003, 07:11:04 pm
Quote
Originally posted by LAW ENFORCER
I belive AI should only be set in fred however the diffrent tactics n moves etfc should be in the AI table. Do we have to use those anoying captain, colnal AI levels as they are just horrible! It should be ACE, Mofo, KicknnN!, Shut yo mouth, just bring it!
:cool: :nod:
J/K but is there any degree of renaming the AI classes with out killing the system becasue I would work better with my own classifications (even if it was just in my copy of fred...).

:wtf:
Have you actually looked in the ai.tbl?
Title: AI... again
Post by: IPAndrews on April 22, 2003, 03:13:36 am
I think he was kidding about the names. The point about screwing up everyone's mission balance is a fair one. The solution is to keep the original AI code and interpret the existing ship type flags to be subsets of the new AI flags or options which means the game is running exactly the same code that it was running before.

Only now you have a mechanism for adding new AI behaviours and mixing behaviours from different ship types. No more need for hard coded "Gunship AI". It becomes a table problem. One that's easily resolved at that.
Title: AI... again
Post by: LAW ENFORCER on April 22, 2003, 05:15:22 pm
Well I was partialy jokeing but was really wondering (and was expecting people to say this part not "OMG A STUPID POST") if it could be done in like 5 mins (well I dont know do I? i helps me work!!! OK?!!?)

If its hard for you to do then disregard... simple as that - dont get so worked up over it, relax a bit... its not going to happen...
to your friends anyway...:wink:
Title: AI... again
Post by: diamondgeezer on April 23, 2003, 02:24:57 am
Law Enforcer strikes again.

Look, it's this simple - open up your AI table and edit away. You've got a maximum of 40 slots to fill, so you won't need to overwrite what's all ready there. The stats are all explained within the table, so there really is nothing difficult about it. Happy modding.
Title: AI... again
Post by: TrashMan on April 23, 2003, 03:20:12 am
Quote
Originally posted by Sesquipedalian
And what happens when, with improved AI, everyone's missions are thrown out of balance?


Wouldn't your wingmen than allso be better?
Title: AI... again
Post by: Black Wolf on April 23, 2003, 03:42:05 am
Quote
Originally posted by TrashMan


Wouldn't your wingmen than allso be better?


Not better enough...

It's one of my pet hates in FS2 - to balance the Players overwhelmingly superior intelligence, you need to put a ridiculously huge number of enemy fighters in the mission, which, were they flown by reasoning, intelligent human beings (or hell, even trained Chimps) would probably be capable of overwhelming the player. Anything that fixes this even slightly would be a godsend, and should most definitely be a prioirty for all you coder types.

But the mission balance poin is a fair one, though the solution has already been suggested, namely the addition of a new set of ai settings that use the new maneuvers. This would be even better that altering the standards for another reason outside mission balance - remember the Vasudan Ace from FS1? Wouldn't it have been cool if he'd made Ace because he flew like a superior pilot, as opposed to simply flying in a better fighter?
Title: AI... again
Post by: diamondgeezer on April 23, 2003, 03:52:40 am
Quote
Originally posted by Black Wolf
remember the Vasudan Ace from FS1? Wouldn't it have been cool if he'd made Ace because he flew like a superior pilot, as opposed to simply flying in a better fighter?

Chiggy von Richtofen has him beat on both counts ;7
Title: AI... again
Post by: LAW ENFORCER on April 23, 2003, 08:59:59 am
Quote
Originally posted by diamondgeezer
Law Enforcer strikes again.

Look, it's this simple - open up your AI table and edit away. You've got a maximum of 40 slots to fill, so you won't need to overwrite what's all ready there. The stats are all explained within the table, so there really is nothing difficult about it. Happy modding.


You don't like me, do ya?
Title: AI... again
Post by: Sesquipedalian on April 23, 2003, 04:22:09 pm
Quote
Originally posted by TrashMan


Wouldn't your wingmen than allso be better?
Yes, but imagine these common scenarios:

Alpha wing versus Capricorn, Aries, and Scorpio wings:

Using the original AI, the mission is balanced so that Alpha 1 can take care of of Capricorn and Scorpio by himself (more or less), while the rest of Alpha wing eliminates Aries.  With the AI improved to be, let's say, twice as good as it is now,  Alpha 1 can only take care of Capricorn by himself, while the rest of Alpha wing still takes care of Aries.  This leaves Scorpio still flying around decimating the good guys.  But of course, since Scorpio is doing this at the same time as the other two bad guy wings are also present, what we have is the rapid annihilation of Alpha wing before they can even get around to killing one or two baddies.

Alpha wing bombing a Ravana

Using the original AI, it was largely Alpha 1's responsibility to destroy the Ravana, as the rest of Alpha wing managed to fire off two rounds in the time it took the player to fire six.  Six rounds from Alpha 1, and two from each of the other three ships in the wing means that Alpha 1 contributed fully half of the fury.  With the AI improved to twice its current abilities, the rest of Alpha wing release four rounds in the time it takes Alpha 1 to fire six.  This means the Ravana dies much, much more quickly.  Too quickly, and that equals bad.
Title: AI... again
Post by: Stryke 9 on April 24, 2003, 01:02:07 am
So... the argument runs something like this?

Person A: Here's an easy way to make bomber AIs about ten times better.

Person B: Noooo! We NEED the AIs to be stupid because we can't kill 400 ships at a time if the AI isn't a cretin!


You know, I don't know that I even need to say anything here. But I will anyway, because THAT IS THE LAMEST FRIGGIN' ARGUMENT AGAINST A MODIFICATION I HAVE EVER HEARD. I mean, honestly- "Noo! We can't fix the graphics, because then old low-poly ships will look bad by comparison!" "Noo! We can't add functions to the interface because old custom interfaces might not feature them!"

How weak can ya get? You're fighting against AI bombers that suddenly aren't pathetically inept? GET BETTER. You allied with them, taking down a now-useless cruiser? For that matter, the capship AI could stand a good tweaking, but FIX THE MISSION. It's not like 99% of the campaigns have even come out yet, and hence can't stand a five-second fix.


You know, if you still can't outsmart a couple dozen AI ships when the only major upgrade is that they don't go out of their way to make themselves sitting ducks, maybe you kinda suck at the game. I've played AI enhancements in other games that were far more radical than this, with imbecilic AIs becoming, with some tuning, better than most players I've seen (E2150's SuperStorm comes to mind, painfully). I've had my ass handed to me every time by most of them, but more often than not it's been pretty much a fair fight, and people manage to beat them. Just because you're used to potshotting 400 ships in fifteen minutes with hardly a shot in your direction doesn't mean that the game's unplayable if you make the still rather dumb AI slightly better.


But that's enough. This isn't RL, so I can't smack people upside the head, and hence this gets tiresome even faster. Make it an option if some people want to stay in self-esteem camp and never get any better.
Title: AI... again
Post by: CP5670 on April 24, 2003, 02:21:04 am
Now that was a classic example of a completely ignorant post. :D

First of all, in many cases this will have nothing to do with the skill of the player. For example, there is certainly a lot more room for improvement for the bomber AI than the capital ship turret AI. Suppose that both are tweaked to their maximum capacity, so the difference between the old and new bomber AIs is much greater than that between the capship turret AIs. The AI bombers can now take down a destroyer in a quarter of the time that they use to take. This will throw the game balance out of whack in a number of missions, including some of those in the main campaign; the missions are designed for the AIs to be morons and they must be so in order to work correctly (i.e. as the designer intended), even apart from the player's skill. If the play balancing from the player's point of view is taken into account, we will have loads of missions that were fine before but now become either ridiculously easily or brutally difficult.

Then you talk about a five second fix? Say more like five hours, and that is for relatively simple missions; try making a mission yourself and you will see that it cannot be balanced so quickly (heck, I have had to test some of my missions over 65 times for play balancing). And anyway, nobody is opposing making changes to the AI - of course everyone would like to see that - but rather to let the mission designer choose whether or not to use the new AI.
Title: AI... again
Post by: karajorma on April 24, 2003, 03:41:07 am
Agree with you there CP. Did you even read the thread Stryke? If you had you`d realise that the arguement is not between those who want to improve the AI verses those who don`t.

The arguement is between those who want to hardcode the AI improvements and those who want the improvements done via a system of tables so that we preserve the old AI settings while adding new ones.

Your entire arguement was completely off topic to this and was pretty ignorant to boot. Of course we all want to improve the AI for freespace but are you volenteering to go through the entire main campaign and fix every mission for the play balance issues that hardcoding the AI modifications would cause?
 If you think this is a five minute modification you`re obviously dreaming. You would have to edit EVERY single mission.

Whats more your idea breaks the golden rule. Don`t break combatability. Why should we follow your stupid suggestion when we can put the AI modifications when we can put the AI upgrades into a table and then CHOOSE if we want to play the campaign with upgraded AI or not rather than forcing everyone to do so whether they want to or not.

Next time try to understand the topic before you go off on a rant about how stupid everyone else is.
Title: AI... again
Post by: TrashMan on April 24, 2003, 04:46:58 am
Well.... I agree (to a certain point) with both sides....

Anyway, even with upgreaded AI, your fighters could be set on major or general, thus your fighters could take care of 2 wings...

Game balance...could be solved on 10 ways!
;7 (less enemy wings, less waves, lower ai setting, worse weapons, better weapons(player&allies), better placement......etc....)

And all should be in the table....better that way...
Title: AI... again
Post by: LAW ENFORCER on April 24, 2003, 11:34:49 am
It did sound like they were arguing againt improving any AI

The table option sounds fine though keep the original AI and make FRED select the new as default for new missions and have the old name (Old AI for crap players):drevil:
Title: AI... again
Post by: karajorma on April 24, 2003, 11:56:55 am
Quote
Originally posted by LAW ENFORCER
It did sound like they were arguing againt improving any AI


Only if you don`t read it properly. An arguement against hardcoding could easily be mistaken for an arguement against improvement if you aren`t paying attention.

But what kind of moron would have a problem with the SCP adding improved AI settings while leaving the old ones alone?

It's generally a good idea to give long time members the benifit of the doubt and assume that they aren`t being morons when they post something and try to look at it from another angle first (unless they have proved time and again that they are morons of course . ;7 )
Title: AI... again
Post by: IceFire on April 24, 2003, 06:43:12 pm
Having designed missions where the tables were changed has taught me that in all but a few rare cases...a change to the balance of anything can MASSIVELY impact on the balance and indeed the entire structure of the mission.

A mission that played with an acceptable level of difficulty under one system suddenly becomes impossibly hard.  Hours later after attempting to find a new balance that actually works the mission may be salvaged or it may have to be thrown out almost entirely.

Before you open up and let forth a burst from the clouds, think about that.

I think any changes should be enabled rather than hard coded into the system.  Having the ability to give different AI types (as coded by a table) sets of manuvers and predefined patterns would be useful in countless ways.  Even the earliest of Wing Commander's seemed to have certain AI codes for different fighters that gave each fighter not only its own stats but manuvers that worked best for the fighter.  I'd love to be able to give the Shivans distinctive manuvers that emphasize their firepower and their selfless disregard for individual life while making the Vasudans and Terran pilots more cautious and precise in their attacks.

That'd add a whole level of atmosphere that doesn't presently exist.
Title: AI... again
Post by: LAW ENFORCER on April 24, 2003, 07:04:11 pm
I dont re-read the rull thread so i forget how poeple were talkiong before:rolleyes:

That one above sounds about right! And good too!


mmmmm shivan fighters killing everything by sending wave after wave of ships at Alpha 1.... hummmm.... wait!;)

yeah I see it, could strike that Would make it _really_ good!
Title: AI... again
Post by: Stryke 9 on April 24, 2003, 07:10:28 pm
Kara: No. I've seen what games look like with smarter AIs. The game is considerably harder with the old setups, but it's not insurmountable. And yes, I did read the entire thread. It's a lame argument. You ARE arguing against making the AI better- you're just saying it can maybe be better in some cases, if you go into the tables and activate it. Which is pretty weak, considering how much of a pain in the ass editing tables when you just want to play the game properly would be.

Things like the Aeos Affair might become unplayable with a hardcoded AI advance, but it was damn near unplayable anyway. It was made to be that way. Any reasonable mission, such as the main campaign ones, will be fine.

And it's a bad idea to have table flags for exactly that reason: compatiblility. What happens when you combine a setup with the "smart" AI assumed to be on and one that doesn't? Such as in a campaign. You'll get unplayable missions on one end or the other, that's what.

But, of course, we can't consider that.

CP: Five seconds. Select an excess wing, hit delete. Or set the respawn rate to one or two. Believe me, I've had to simplify missions before- I used to have quite a love of suicide missions, and would stick in 100 gun turrets right near the player's start point or swarms of fighters that made the game next to impossible unless you did one specific thing I had in mind- and when the people I FREDed for in campaigns found they were useless, I had to go fix them. Any campaign that's still under construction, the mission creator will still be around, and will know exactly what can go and what has to stay, and can delete all the unnecessaries if need be.

On something, a complete work like the main FS2 campaign, it'd take more doing since they were messy with their sexps and made just about everything vital to the mission. But then, like I said, the main FS2 campaign hardly requires handicapping- the few missions that were actually hard didn't involve bombers, they generally involved capships and time limits. Hell, I suck at flight sims, and I finished the original first time in a couple hours.

But you all are really overestimating the power of AI upgrades. Even when they're not intentionally suicidal, they're still really stupid.
Title: AI... again
Post by: CP5670 on April 24, 2003, 08:41:03 pm
Quote
CP: Five seconds. Select an excess wing, hit delete. Or set the respawn rate to one or two. Believe me, I've had to simplify missions before- I used to have quite a love of suicide missions, and would stick in 100 gun turrets right near the player's start point or swarms of fighters that made the game next to impossible unless you did one specific thing I had in mind- and when the people I FREDed for in campaigns found they were useless, I had to go fix them. Any campaign that's still under construction, the mission creator will still be around, and will know exactly what can go and what has to stay, and can delete all the unnecessaries if need be.


Either you were really lucky and got it right on the first try or you were editing very simple missions. What usually happens when you try something like that is that the game messes up in the other direction (things become too easy), so you need to fine tune the sizes, armaments, waves, arrival intervals and all that until everything is nearly perfect again. For any of my missions I know this will take two hours at the very least, since I will have to try all sorts of different combinations and playtest them over and over again. I have had to do this quite a few times already when the balance was incorrect and am not too keen on seeing all that time and work go to waste due to a compulsory change in the AI.

Quote
On something, a complete work like the main FS2 campaign, it'd take more doing since they were messy with their sexps and made just about everything vital to the mission. But then, like I said, the main FS2 campaign hardly requires handicapping- the few missions that were actually hard didn't involve bombers, they generally involved capships and time limits. Hell, I suck at flight sims, and I finished the original first time in a couple hours.


Well of course the sexps are going to be vital to the mission, and that applies to any mission out there; that's why they are in the mission in the first place. :p Some of the (relatively) tougher ones I can remember are Slaying Ravana and Bearbaiting, which could get a bit tricky on hard or insane. If the AI bombers in those performed like actual humans, you can pretty much just sit at your starting point in the whole mission; the AIs would do the job for you. On the flip side, you have some of those convoy defense missions becoming insanely tough because you are outnumbered by something like ten to one and everyone is flying better than they used to.

Quote
But you all are really overestimating the power of AI upgrades. Even when they're not intentionally suicidal, they're still really stupid.


Not if the upgrades deal with what has been talked about around here recently, such as the improved close-up dogfight tactics or non-suicidal bombing (i.e. actually retaliating if attacked during a bombing run). Even if every AI just gets in two shots on you as opposed to none before being destroyed, that would change a lot of things after 30 or so repeats of that (since there are all of the fighters). Besides, you have changed your argument around since before; you were saying earlier that the solution to this is to just get better. :rolleyes:
Title: AI... again
Post by: Stryke 9 on April 24, 2003, 09:14:58 pm
Not really- it still is. The FreeSpace AI is terrible, but AIs don't get whole worlds better. If you can't beat an AI, even a relatively smart one, then you aren't very good. And considering how most people here have been hanging around the FS forums for at least two years, if they still can't beat an AI nine times out of ten they should move on to another game and try their luck again.


You ever play, say, Falcon 3? Set it on "ace" level sometime and fly with a standard loadout on realistic mode- and you get a crappy old 486 machine that's better than you get on multiplayer here half the time. Doesn't mean that the game was unplayable, even with overwhelming enemy forces. Hell, people still play that thing.

And if you pumped up your missions with BoE syndrome, well then, it's your own damn lookout. It's not like that's the ONLY way to make missions challenging, it's just the only completely uncreative and boring way. Now, at least, you won't be so bored.:p

I mean, really. Knocking over 300 enemy fighters like ninepins. Whoop ****ing pee. If that's all the campaigns are gonna be, I don't wanna play them anyway. I have more interesting and productive uses of my time, like watching paint peel.
Title: AI... again
Post by: IceFire on April 24, 2003, 09:59:04 pm
Quote
Originally posted by Stryke 9
Not really- it still is. The FreeSpace AI is terrible, but AIs don't get whole worlds better. If you can't beat an AI, even a relatively smart one, then you aren't very good. And considering how most people here have been hanging around the FS forums for at least two years, if they still can't beat an AI nine times out of ten they should move on to another game and try their luck again.


You ever play, say, Falcon 3? Set it on "ace" level sometime and fly with a standard loadout on realistic mode- and you get a crappy old 486 machine that's better than you get on multiplayer here half the time. Doesn't mean that the game was unplayable, even with overwhelming enemy forces. Hell, people still play that thing.

And if you pumped up your missions with BoE syndrome, well then, it's your own damn lookout. It's not like that's the ONLY way to make missions challenging, it's just the only completely uncreative and boring way. Now, at least, you won't be so bored.:p

I mean, really. Knocking over 300 enemy fighters like ninepins. Whoop ****ing pee. If that's all the campaigns are gonna be, I don't wanna play them anyway. I have more interesting and productive uses of my time, like watching paint peel.


For all that FreeSpace 2's AI is blatantly idiotic, everyone here HAS to admit that it is proficient.  Your wingmen are capable of nailing the enemy and the enemy is very good at killing your wingmen.  Some games you have a balance where neither the AI on the enemy or friendly side is proficient at anything but either dodging or firing guns and in FS2 we do have a bit of a sample of both.  Its not shocking, its not awe inspriing co-ordinated tactics or anything, but its not bad and it works.

I also don't think BoE type missions will be the only ones that suffer from a hardcoded AI change.  Any mission will be changed by an AI improvement.  That wing of Shivan fighters that attacks your transport that you used to wipe out in the first pass just nailed your transport and killed a wingman before you managed to score enough hits on the first guy to kill him.  That'd change the balance of a 9 ship engagement...rather than the 25 ship (in a given moment) engagement you might see in a more BoE style mission.

Simplifying a simple mission is easy.  Sure...wipe out a wing, make their weapons weaker, drop the AI skill level....not a problem.  I can do that without any trouble.  Its when you've got a very complex and specific interplay of events (such as many of the missions I've created for BWO that emphasize both action and specific scripted events) when changing elements becomes difficult.  As I said, I've done it...and I had to rework the entire mission.  Sometimes its just easier to do.

When you have 40+ missions to do it on...its no longer a simple task.  I don't want to see my work on BWO for instance be invalidated by an improved AI set that I can't define.  I'd actually love to use an improved AI set in BWO for some circumstances...but if its out of my control then its hard for me as the designer to make the missions work.

The concept of "proper" missions (ala FS2 missions) is also a bit of a strange one.  What defines proper?  How would a Volition made mission stand up any better than say one of mine that I've spent the hours on to make play properly with balance and interest?  You really cannot make those claims at all...any mission that is well designed is done with an art and a science towards a specific balance with and against the player.  Failing to achieve that makes the mission either too difficult or too easy.  Changing a variable inevitably changes the entire mission....its rediculous to assume that Volitions missions would stand up any better than some of our mission designers who have also done outstanding work and have superb values for design.
Title: AI... again
Post by: Stryke 9 on April 24, 2003, 10:06:38 pm
Hmm... yeah, the capship defense missions would be trickier with a better AI. Newer missions should feature a better AI and stronger capships anyway (yeah, it's real likely someone's gonna spend a tenth of a planet's economy on a set of cruisers crewed by 400 men and with all the best tech, when they can each be taken down fairly easily by one guy in a ****ty old fighter with a few missiles. I assume this had more to do with the failure to adapt to the fact that shielding multiplies the effective HP of a fighter by quite a bit, as unshielded fighters are pretty accurate relative to a capship as far as ability goes).

But I don't know what you're talking about the AI being proficient at killing itself. At the highest level it's not too bad, but it's still not exactly impressive at it. If anything, it looks like me about half a year. And that's when it's orchestrating it itself. When it's up against humans- woof, no competition. Even newbies can take out a wing of AIs on the top level.
Title: AI... again
Post by: Sesquipedalian on April 24, 2003, 11:05:36 pm
Well, I took a little peak at the AI code and got a basic grasp on how it works.  As has been well and ably argued already, an across-the board changing of the AI will trash every mission created in the last five years.  A table based activation however, is stupidly easy.  

No matter how we implement it, when new code is written for e.g. better maneuvering (i.e. barrel rolls, jinking, etc.), it will be necessary to specify which sorts of new maneuvers are used, and how well, by different AI classes.  This is done by reading the numbers in the ai.tbl and plugging them into the code that controls the AI's action, and there is no reason to change that system.  By adding a new string to ai.tbl entries, we can specify how well any given AI class uses the new maneuvers without affecting the code for the old maneuvers.  Whereas the old entries in the ai.tbl would continue to read like this:
Code: [Select]
$Name: General
$accuracy: 0.8 0.85 0.9 0.95 1.0
$evasion: 40, 50, 60, 80, 100
$courage: 40, 50, 60, 80, 100
$patience: 40, 50, 60, 80, 100

the new entries would have an extra string attached, like this:
Code: [Select]
$Name: New_AI_Class
$accuracy: 0.8 0.85 0.9 0.95 1.0
$evasion: 40, 50, 60, 80, 100
$courage: 40, 50, 60, 80, 100
$patience: 40, 50, 60, 80, 100
[b]$maneuvering: 40, 50, 60, 80, 100[/b]


The new maneuvers would use the values entered in the new $maneuvering string instead of the $evasion values.  If the string is not present in an entry, the new maneuvers are not used.

Why make big problems out of little problems?
Title: AI... again
Post by: Stryke 9 on April 24, 2003, 11:19:41 pm
Because we can.
Title: AI... again
Post by: karajorma on April 25, 2003, 03:55:00 am
Quote
Originally posted by Stryke 9
Kara: No. I've seen what games look like with smarter AIs. The game is considerably harder with the old setups, but it's not insurmountable. And yes, I did read the entire thread. It's a lame argument. You ARE arguing against making the AI better- you're just saying it can maybe be better in some cases, if you go into the tables and activate it. Which is pretty weak, considering how much of a pain in the ass editing tables when you just want to play the game properly would be.


So in other words you`re too lazy to edit the tables and you think that everyone else should suffer cause of that?

5 minutes after the AI improvements are published someone will release an upgraded table. Stick that in your data directory and pretend it's hard coded into the game.

 Sesquipedalian :  Is there any way to use flags as well so that Vasudans barrel roll but shivans don't?
Title: AI... again
Post by: Sesquipedalian on April 25, 2003, 02:11:52 pm
I think that would be harder, and require a reworking of the system.  Right now it just assumes that all options are available to all AI, with only the effectiveness of each one determined by the numbers in the table.  To make barrel rolls seperate from jinking, for example, one would have to have different strings in the table entry for each type of maneuver.  If we start down that road, the number of strings will multiply rapidly, and things will get very messy very quickly.
Title: AI... again
Post by: diamondgeezer on April 25, 2003, 02:53:37 pm
So, getting back to the original question - could bombers be made to not just sit there at point-blank range? That was all I asking. Why do my threads in here always turn in to such big arguments?
Title: AI... again
Post by: karajorma on April 25, 2003, 04:01:54 pm
Cause you`re trouble :D
Title: AI... again
Post by: Sesquipedalian on April 25, 2003, 09:30:28 pm
Quote
Originally posted by diamondgeezer
Why do my threads in here always turn in to such big arguments?
Because you ask all the really good questions.
Title: AI... again
Post by: IceFire on April 25, 2003, 10:39:54 pm
Quote
Originally posted by Sesquipedalian
I think that would be harder, and require a reworking of the system.  Right now it just assumes that all options are available to all AI, with only the effectiveness of each one determined by the numbers in the table.  To make barrel rolls seperate from jinking, for example, one would have to have different strings in the table entry for each type of maneuver.  If we start down that road, the number of strings will multiply rapidly, and things will get very messy very quickly.

What if the numbers were used to corrispond to manuver types available?

So a value of 40 is barrel roll.  And 41 is barrel roll and looping and that sort of thing.  Doesn't have to be super specific...just enough to give some different options.
Title: AI... again
Post by: Sesquipedalian on April 26, 2003, 12:38:03 pm
Well, that would be a complete reworking of the system.  Right now the values involved are plugged into the equations used by the AI for controlling its actions.  What you are describing is more like a flag system.

However, that does give me an idea for how it could be done if we really wanted to...

We could have the new $maneuvering string to determine how effectively the AI executes the new maneuvers available to it, and also have optional strings added on after it saying things like "+barrellroll: no" if we wanted a specific AI not to execute a specific sort of move.  Then perhaps we could code in an extra line onto new maneuvers telling it to make sure there isn't a "+barrellroll: no" string present for that AI class before going on to perform the action.

This would be more managable than making an entire new string for each maneuver, in that we only need to deal with one new set of numbers, and only those maneuvers which are specifically negated would not be used.

All that having been said, I don't understand why one wouldn't want the Shivans to do barrel rolls. :wtf:
Title: AI... again
Post by: LAW ENFORCER on April 26, 2003, 04:43:09 pm
I guess saying which classes you dont want to have AI stuff is eiser and less messy than say which ones you want to have it. Its there any disadvantages to that way?

and they might not be shivans, infact (unless your a aformentioned 'crap player') they WON'T be shivans...
Title: AI... again
Post by: karajorma on April 26, 2003, 07:10:48 pm
Quote
Originally posted by Sesquipedalian
All that having been said, I don't understand why one wouldn't want the Shivans to do barrel rolls. :wtf:


Should have stated more clearly that it was just an example :) Of course I'll want the shivans to barrel roll.
Title: AI... again
Post by: diamondgeezer on April 27, 2003, 04:05:55 am
*does barrel roll*

Wheeee!