Should Fighters Be Able to Kill Capitol Ships?

@flavius, on Feb 9 2007, 12:47 AM, said in Should Fighters Be Able to Kill Capitol Ships?:

As plugin developers we must balance two factors in our game design: realism and gameplay. Realism refers more to internal consistency and a game working within the confines it sets for itself, regardless of whether or not those initial constraints are realistic. Gameplay is, of course, the enjoyment the player gets from playing the game. These are often in both opposition and cooperation. A game isn't a lot of fun if it's completely realistic, it is, after all, a game, not a training simulation, but if it is not realistic enough, you loose the suspension of disbelief. This is as true in a fantasy RTS as a modern FPS, or, in our case, a sci-fi RPG.

You all already know that, but I bring it up by way of introduction. The specific question I am thinking about is this:
Should fighters be able to kill capitol ships (carriers, and the like) as easily as they can?

Now I would suggest, in discussing this, we come at it from both realism and gameplay:

  • Realism: In the world we create for the future, how difficult should it be for a fighter to kill a capitol ship?

  • Gameplay: Is it fun to be able to easily kill a capitol ship as a fighter?

Perhaps I should give some examples both modern and sci-fi on different scenarios:

  • Escape Velocity: Nova : More advanced fighters can easily take down some of the less advanced capitol ships (for example, Manta v. Fed Carrier or Fed Destroyer isn't even a fair fight). Across the board patrol-type ships (Starbridge, RAGE Gunship, Fed Gunboat, Valkyrie, Zephyr) are able to take on capitol ships with relative impunity, with the possible exception of maybe the Raven or Scarab. Some members of the community (cough cough Quaanol) can kill Ravens in shuttles.

  • Star Wars : In Star Wars, especially in the books, fighters clearly are dominant, though less so than in Escape Velocity. X-Wings take down Imperial ships around the light capitol ship strength all the time, and occasionally take down Star Destroyers. However, usually it's a squadron of fighters against the Imperial ships. This is partly because the movies were based on World War II air battles, see below.

  • Escape Velocity (Classic): While the vast majority of ships are really fighters, all but the best have a very hard time against the Corvette and Rebel Cruiser and even the best have an incredibly hard time against the Kestral and Federation Cruiser. I would say that the fighters are only slightly dominant.

  • World War II : Here you have three real cases to examine. The first, fighters versus carriers, is clearly in the favor of the fighters, but fighters were often very hard pressed to deliver the strike they needed. Attrition rates of over 50% was not uncommon in the great naval air battles early in the war. In the second case, fighters versus battleships, the numbers are quite different. Heavily armed and armoured battleships were rarely sank by enemy bombers after Pearl Harbor, and Iowa class battleships could take on vast fleets of enemy aircraft quite easily. Lastly we have fairly light naval ships versus capitol ships. In this case barring factors like night strikes, light ships, with the exception of submarines, were fairly ineffectual.

  • Star Trek : Fighters rarely appear, at least in the first few series, and when non-Federation fighters appear, they seem to pose relatively little threat to the Enterprise. Most battles are large capitol ship battles. (Note I'm not a huge Trek fan, so take this with a grain of salt.)

  • Modern Naval Combat : While the aircraft carrier is still a relatively vulnerable target, advances in technology have rendered it much less so. Of course, this is really just theoretical since there haven't been any major naval battles recently.

Ultimately what all of these cases come down to is firepower density. How much firepower can a small craft bring to bear on a larger one. Note that in many of the cases above (WW2, Star Wars, and modern combat) fighters had very limited capacity to effect larger ships, one torpedo in World War II, up to six proton torpedoes in Star Wars. In EVN, the primary weapons available to fighters allowed for them to bring to bear significant firepower on a capitol ship, while capitol ships could bring relatively few weapons to bear on a fighter.

Now, what about gameplay? Which way is it more fun? Ultimately, this is what it comes down to.

To my mind, I would prefer more powerful capitol ships. Strong capitol ships mean that the rewards for progressing in the game go much further. When you can kill almost anything with most ships, then you only need to get about a million credits. However, once you've gotten your million credits, there is nowhere to go, except the missions. Thus, the missions define the majority of the gameplay. I think it would be a better game if you could keep getting different ships to deal with different threats and do different things. For example, if you want to do the whole melee bit, you would get a lighter ship, while if you wanted to see major space battles you would get a capitol ship. Each would have its own special techniques which you would have to figure out. I find in the EVN model, I rush to get a decently outfitted Starbridge and then I can take out anything I need to. This is especially true when the player's ship far outperforms the AI's. I would also advocate giving capitol ships more fighters and more gun spaces. I think that it would lead to more customized ships, and if you weaken fighters you have to make up for it other ways. If two opposing fleets of two carriers a handfull of battleships and a dozen frigates each fought each other with each carrier disgorging three dozen or more fighters I think it would make battles a bit more interesting. (Ignore, for the moment the capabilities of the engine.)

I'm interested in seeing other peoples oppinions.

**Realism as a term doesn't necessarily apply here; given the varying nature of technology and warfare in universes that don't really exist, its all but impossible to determine anything 'realistic' based on anything but our own modern standards.

Still, it is useful for framing the debate.

My opinion is this; very few, if any, fighter vessels (if we define a fighter as a vehicle that is either A. Below a certain mass or B. a craft carried inside the hull of another craft) should be able to destroy capital ships. Quite simply, they wouldn't be able to inflict enough damage upon a vessel of substantially higher mass with lighter armaments. Even with dozens of rockets and missiles a fighter attacking an unshielded bulk cruiser would be able to puncture the hull in only a few places, certainly not enough damage to destroy or even cripple any decently armored warship.

In fact, for my own scenario I've envisioned fighters as lighter skirmish vessels that fight one another much more than they fight larger ships. Most large ships would carry fighters of their own, relying on their strength to eliminate the opponents fighters, then in turn aiding the main vessel in destroying the enemy warship.

Additionally, certain fighters would be designed to eliminate certain opponents. For example, Fighter A would be quick and agile, with light armaments; designed to combat other fighter craft only. They would be all but useless against any other vessels. Fighter B would be slower and more heavily armed, with slightly longer range weapons and improved shields. They would be good against other fighters, but not as much as Fighter A. Fighter B would have enough weaponry to aid in the assault of a warship, if only for distraction and slight hits of damage here or there. Fighter C would be more of an attack bomber. Utterly useless against other fighters, slow and clumsy, but with powerful short and long range projectiles, but virtually no protection by way of laser or mass projectile weapons. Fighter C would be the last launched from a fleet, assuming the enemy fighters would be destroyed. They would then proceed to assault the main craft.

So in essence it would work something like this:

Fighter A: Fighter to Fighter
Fighter B: Fighter to Fighter/Cruiser
Fighter 😄 Cruiser

Also keeping in mind that Fighter A would be obliterated by even light turret fire from a cruiser. Fighter B would be able to sustain the damage marginally better.

Like in various RTS games, having the best match up would hand you easy victory.

_bomb

**

Also, a word of warning to anyone developing a plug: If enemy ships are red to the player (not made aggressive because of his fighters/escorts), the player can take advantage of the "ignoring fighter" behavior mentioned earlier and kill enemy ships with ease so long as he's faster than his enemies so that he can run out of range.

The only cases where the enemy will fight back are if the enemy is kind of small or has fighters of its own in formation.

Moreover, enemy ships' tendencies to focus on the player unless hit by stray bullets makes killing large groups of enemies a whole lot easier if you have NPC escort (fleet vs fleet battles), since then your allies can take on the enemies one at a time.

This is from my experience playing the EVO port.

I'd love to see more improvement in the AI...

sigh

@phyvo, on Mar 7 2007, 05:54 AM, said in Should Fighters Be Able to Kill Capitol Ships?:

Moreover, enemy ships' tendencies to focus on the player unless hit by stray bullets makes killing large groups of enemies a whole lot easier if you have NPC escort (fleet vs fleet battles), since then your allies can take on the enemies one at a time.

It isn't improved AI you need to fix this, but more options in terms of mission ship placement. The typical situation is that the mission ships are already there, see the player first, and target him; and then the aux ships arrive, and won't be targetted except by the enemies they attack.

Of course, EVN makes it more practical to have the old aux ships arrive as missions ships of another parallel mission - but nothing like that's been done in the EVO port. (Anyway, it would be wasteful of resources.) Equally, you could use a series of crons and misns to get just the fleet arrivals you want - but this is also unnecessarily resource intensive.

It is possible to produce good fleet combat with the existing AI. It's just when the player gets involved that things get tricky! I would not want to see AI 'improvements': they are more likely to just open up more holes in AI behaviour. (The 'ignoring fighter' behaviour is itself a result of an 'improvement' between EVO and EVN.)

This post has been edited by pac : 07 March 2007 - 05:14 PM

True, but the problem with that last 'fix' was that it shortsighted, not because improvements in AI are bad. AI researchers are making slow, if steady progress all the time, and heck a computer programmed correctly could challenge Kasparov. The problem then is not in AI itself, but with how that AI is programmed. Thus this AI program we have now is solvable.

Of course, with it being AI a knowledgeable player will be able to push its buttons, but the point is that the AI of EV:N has these gaping holes when it has to face the player. There's no reason why you can't make a better AI which has fewer and smaller holes; other than limited development resources.

The current problem is primarily a targeting problem. The AI has one ship that it focuses on at any time and doesn't pay any heed to any others. It never thinks "Oh this enemy ship is right front of me, therefore I will shoot it instead of the ship I was targeting before which is on the other side of the system". It thinks "Found enemy ship, engaging enemy ship, hit by different ship, attack the ship attacking me" stuff.

(edit) Full quotation unnecessary (/edit)

This post has been edited by Phyvo : 10 March 2007 - 12:13 AM

A good AI is hard to do, even in the situations we're talking about here where the computer only has to be "smart" in very limited circumstances (i.e. flying a ship in battle against other ships, as opposed to, say, figuring out how to walk from Fifth & Main to Third & Broadway). The reason why the EVC and EVO systems worked reasonably well was that they were very simple. Sure, you could abuse them, but there was a straightforward answer to that - outnumber the player! The vast majority of combats in EV missions (in all three games) pit the player and whatever escorts they've accrued against a massively larger force, overcoming AI problems through simple brute force.

When you try to get fancy, in contrast, you leave yourself open to adding "holes" in the AI, like the ones that Pac has pointed out. This doesn't mean that you can't have a fancy AI; merely that making one is hard.

Incidentally, for an example of good 2D spacefighting AI, check out Star Control 2 (Also known in this day and age as The Ur-Quan Masters; it's free!). Every ship type in that game has its own AI, and while some of them are better than others, they all know how to fly their own ships reasonably well. The advantages that the creators of that game had were twofold: first, all combats were duels (i.e. one ship versus one other ship), and second, they knew going in exactly what each ship was. EV has to take into account the possibility of third-party content, and has to write AI routines that will work for all ship types.

But a good AI, I think, is worth it. You don't stop writing a good story because it's hard. You don't stop making graphics because it's hard. Should you then avoid making good AIs because they're hard? I suppose you might if you consider other things to be more important. But good AI can provide the player with more immersion in game and a wider array of challenges.

Think of Halo. Not only is the story itself interesting, but the AI of the enemies have been given good developing time. The grunts will run away and scream, they'll hide behind obstacles to pop out and shoot at you, and you can surprise enemies (making them dumber, but more believable). Though they aren't the brightest, programming that AI was not a walk in the park and took effort that was worthwhile in the end.

Sure a good AI is a good thing to have, but you have to take into account what you're capable of doing. EVC was all made by one man, remember; he did a good job on getting the thing finished , and on decent graphics and verisimilitude, but the story's more or less nonexistent and the AI, as I said, is pretty simplistic. He could have spent a few months making a better AI, or he could have released what he had. Given that what he had worked pretty well, I'm not surprised he went with that option.

@derakon, on Mar 10 2007, 12:05 PM, said in Should Fighters Be Able to Kill Capitol Ships?:

Sure a good AI is a good thing to have, but you have to take into account what you're capable of doing. EVC was all made by one man, remember; he did a good job on getting the thing finished , and on decent graphics and verisimilitude, but the story's more or less nonexistent and the AI, as I said, is pretty simplistic. He could have spent a few months making a better AI, or he could have released what he had. Given that what he had worked pretty well, I'm not surprised he went with that option.

Let's also not forget that the AI of nova is only slightly more advanced than that of the original EV which is 12 years old. The AI was reasonably good for back then, especially considering the computing power available, but since there has not been a ton of advancement since then on the AI for the series, while the rest of the world has big advancements, it is definitely outdated. Still it's fun, and as with most games, an experienced player knows how to defeat the computer.

@erikthered, on Mar 10 2007, 06:30 PM, said in Should Fighters Be Able to Kill Capitol Ships?:

Let's also not forget that the AI of nova is only slightly more advanced than that of the original EV which is 12 years old. The AI was reasonably good for back then, especially considering the computing power available, but since there has not been a ton of advancement since then on the AI for the series, while the rest of the world has big advancements, it is definitely outdated.

'Computing power' really is not a limiting factor on AI sophistication. Not in terms of EV and changes over the last 12 years, anyway.

The main limiting factor on AI is programmer time. It takes a great investment of (highly-skilled) man-hours to produce high-quality AI - and that work also has diminishing returns. As people have noted in this thread, 'improvements' in AI can actually lead to bigger holes in AI behaviour being opened up. So, if you stick with a simple system, you find that it works surprisingly well, and if you try to develop that system further you often end up making it worse (only you don't necessarily know that you've made it worse, until some clever player finds the hole and tells everyone about it).

This (together with project deadlines) is why the vast majority of games (not just in EV's action genre, but strategy games too) substitute 'cheating' on the part of the computer player (giving it extra resources or numbers or whatever) for AI improvement. And who can say that that's a poor choice? After all, what game ever got great sales based on having a highly sophisticated AI which could compete with the player?

@pac, on Mar 10 2007, 02:01 PM, said in Should Fighters Be Able to Kill Capitol Ships?:

'Computing power' really is not a limiting factor on AI sophistication. Not in terms of EV and changes over the last 12 years, anyway.

The main limiting factor on AI is programmer time. It takes a great investment of (highly-skilled) man-hours to produce high-quality AI - and that work also has diminishing returns. As people have noted in this thread, 'improvements' in AI can actually lead to bigger holes in AI behaviour being opened up. So, if you stick with a simple system, you find that it works surprisingly well, and if you try to develop that system further you often end up making it worse (only you don't necessarily know that you've made it worse, until some clever player finds the hole and tells everyone about it).

This (together with project deadlines) is why the vast majority of games (not just in EV's action genre, but strategy games too) substitute 'cheating' on the part of the computer player (giving it extra resources or numbers or whatever) for AI improvement. And who can say that that's a poor choice? After all, what game ever got great sales based on having a highly sophisticated AI which could compete with the player?

Computing power does have a big effect on what you can do with AI in general because you with better computing power, you can have higher limits as to what you can program the AI to do. As an example, look at the difference between the interaction (not graphic) jump from, say, N64 games to modern XBox or whatever. Just because EV didn't take advantage in the increase in power, doesn't mean that they couldn't have. Now, as to whether or not changes would open new holes or not is a different story, but I think that with today's computers, you can add enough to cover any new holes, assuming you had the programmers to do so.

By the way, I always wished the AI would be a little more focused and less easily distracted. Part of the problem is that ships get so easily distracted when attacked in groups, they don't do things that would help them survive. If the AI controled capital ships focused on each fighter one at a time like I do, it can get rid of the fighters much faster without taking as much damage.

This post has been edited by erikthered : 10 March 2007 - 02:59 PM

In terms of EV/O/N, the only real option is to just balance the game between AIs how you want it, and not worry about the player.

@erikthered, on Mar 10 2007, 08:56 PM, said in Should Fighters Be Able to Kill Capitol Ships?:

Computing power does have a big effect on what you can do with AI in general because you with better computing power, you can have higher limits as to what you can program the AI to do. As an example, look at the difference between the interaction (not graphic) jump from, say, N64 games to modern XBox or whatever.

Again, as I tried to explain, computing power is not the limiting factor. You understand what I mean by limiting factor? Yes, to get an AI of a certain sophistication, you would need a certain degree of computing power, and if you had more computing power, you could - in theory - have a more sophisticated AI. But that theoretical limit will never be reached, because there are other factors which limit the sophistication of your AI before you ever get close to that limit. If XBox games have a more developed AI than older console games (and I can't say that I'm aware that that's the case in general), that's likely to be because they have a bigger project team working on them (including more AI programmers). The additional processing power is mostly going to be there for the graphics.

(Remember that most games have a very narrow development window for AI design. Naturally, you can't design really good AI until the rest of the engine is fixed, but then you typically have to stop when it goes to beta. This could be a gap of three months? As a result of this and other factors, most commercial games do not have good AI - and processing power has nothing to do with it.)

There were games of a similar type to EV back when it was released which had better AI than it. To take one example, Ares does not significantly post-date EV. EV's relatively poor AI is not due to the date at which or the technology for which it was made, but a lack of developer time - and, I would argue, the lack of need for it in what is in essence a simple arcade game.

@pac, on Mar 10 2007, 02:01 PM, said in Should Fighters Be Able to Kill Capitol Ships?:

'Computing power' really is not a limiting factor on AI sophistication. Not in terms of EV and changes over the last 12 years, anyway.

The main limiting factor on AI is programmer time. It takes a great investment of (highly-skilled) man-hours to produce high-quality AI - and that work also has diminishing returns. As people have noted in this thread, 'improvements' in AI can actually lead to bigger holes in AI behaviour being opened up. So, if you stick with a simple system, you find that it works surprisingly well, and if you try to develop that system further you often end up making it worse (only you don't necessarily know that you've made it worse, until some clever player finds the hole and tells everyone about it).

How is this different from working on any other part of the game?

Good graphics take a great investment of highly-skilled man-hours.
Good stories take a great investment of highly-skilled man-hours.
A good, bug-free gameplay program takes a great investment of highly-skilled man-hours.

See, the truth of the matter is that, at least how the developers perceive it, players will put up with bad AI more than a bad story, bad graphics, and a buggy gameplay. Therefore developer time is allocated to other aspects of the game, with AI added in as an afterthought most of the time. Not because making AI is "too hard", but because developers chose to not spend much time on it.

Frankly, I think the power of a good AI with proper difficulty levels is more valuable than most people realize. Given a limited amount of resources it would, indeed, reduce the quality of other aspects of the game. But, all that would do is lead to a different type of game, not a worse type of game. It's only worse if you severely imbalance the game elements (you know all those amazing-graphics-no-gameplay games people always complain about?) to the point where they're conflicting with your central (hopefully fun) design.

Now, what if EVN's design was more like EVO's, that is, a platform for fan-made plug-ins? Then you wouldn't need quite as strong of a story element because story is what the fans can add. Hey, you wouldn't need to even finish all aspects of a story because the fans will be more than willing to finish it themselves. Better graphics? Fans can do that too, as graphical updates were released for EV and EVO even before EVN. Thus, if you guided EVN towards more of a platform perspective you would have these extra resources on your hands, resources that could be spent making a decent AI and filling in the holes during the beta.

Instead, ATMOS went the course they did and came up with EVN as it is today. Is it a better game than my above example? Not really, it's just a different type of game occupying the same genre. Perhaps my example above would be more flexible in the end since it relies on the fans, but at the same time it might not draw as many in. Pure speculation, but you can see the cost vs benefit, yes?

Quote

After all, what game ever got great sales based on having a highly sophisticated AI which could compete with the player?

Starcraft and Warcraft III have single player campaigns which would be nothing if the AI was as dumb as a rock. Granted, the general consensus is that the AIs just train the player for serious online play, but the campaigns would have sucked without decent AI. Without the AI these games would have no significant single player element at all, without which I doubt they would have sold nearly as well.

The Chessmaster series of games were also practically selling the AI. Dunno how well they sold, but I remember having Chessmaster 2000 myself.

mrxak said:

In terms of EV/O/N, the only real option is to just balance the game between AIs how you want it, and not worry about the player.

That depends what you're trying to do. I bet you could offer the player a challenge if you formed a plug-in which tested the player's knowledge and ability to exploit the holes that the AI has. Or even his piloting ability. You might give him a slower, more maneuverable ship against faster, less maneuverable ones. This would force the player to recognize his strengths and use them rather than running away and Monty-Pythoning. If it's too easy you can just limit the extra strength the player has. It's entirely possible but I've never seen anyone make such a plug-in. Probably because most people want to write their own stories and don't have enough experience exploiting the AI.

This post has been edited by Phyvo : 10 March 2007 - 11:37 PM

The things about storylines, graphics, hell, even basic programming, is that they are all at some level fairly straightforward. There are well-known ways to write a story, and while they may not get you the next Shakespeare, they'll get you from point A to point B. With just a little practice, you can assemble acceptable models in Blender or a simliar program. Again, they won't be amazing, but they'll do. And programming may be hard to do well , but there's a lot of people out there getting the job done one way or another.

Unfortunately, AI's a different beast. What kinds of things does the AI need to know about? What does it get to know about? Now, how does it prioritize the information it's received, and what should it do about it? Now how do you keep it from changing its mind every frame? Okay, now test it.

I assume you have no idea how hard it is to test a complicated AI.

Fundamentally, AI is a different problem from other game development problems. Sure, a skilled AI developer can do good work, but they're in very short supply. Moreover, while there are some basic techniques you can apply to get a more-or-less working AI (just as there are ways to write stories and make 3D models), they're not especially well-publicized or taught, and they're not remotely universal. After all, an AI that flies a ship in 2D space combat is completely different from an AI that plays Tetris.

I'm ultimately convinced that the only way we're going to get people interested in the AI problem is to let them try to write their own AIs in a sandbox game. Something like EV except that you can modify how the ships behave by reprogramming them, instead of just by picking between fighter, trader, brave trader, and warship (and so on). I'm actually very interested in seeing what a dedicated third-party community could do to AI in a specific game system.

@derakon, on Mar 11 2007, 02:03 AM, said in Should Fighters Be Able to Kill Capitol Ships?:

The things about storylines, graphics, hell, even basic programming, is that they are all at some level fairly straightforward. There are well-known ways to write a story, and while they may not get you the next Shakespeare, they'll get you from point A to point B. With just a little practice, you can assemble acceptable models in Blender or a simliar program. Again, they won't be amazing, but they'll do. And programming may be hard to do well , but there's a lot of people out there getting the job done one way or another.

Unfortunately, AI's a different beast. What kinds of things does the AI need to know about? What does it get to know about? Now, how does it prioritize the information it's received, and what should it do about it? Now how do you keep it from changing its mind every frame? Okay, now test it.

I assume you have no idea how hard it is to test a complicated AI.

Fundamentally, AI is a different problem from other game development problems. Sure, a skilled AI developer can do good work, but they're in very short supply. Moreover, while there are some basic techniques you can apply to get a more-or-less working AI (just as there are ways to write stories and make 3D models), they're not especially well-publicized or taught, and they're not remotely universal. After all, an AI that flies a ship in 2D space combat is completely different from an AI that plays Tetris.

I'm ultimately convinced that the only way we're going to get people interested in the AI problem is to let them try to write their own AIs in a sandbox game. Something like EV except that you can modify how the ships behave by reprogramming them, instead of just by picking between fighter, trader, brave trader, and warship (and so on). I'm actually very interested in seeing what a dedicated third-party community could do to AI in a specific game system.

I used to play a game called RoboWar (bad in the days of os 9) where you programmed little virtual robots that fought each other to the death. It was a good game, but now it's pretty much dead and could use a replacement... though there aren't any, really.

I'll grant that AI is a different sort of beast, but only a different beast in the same way as graphics are different from story, and that, since AI is neglected, not many people have experience with it, and since not many people have experience with it, AI is neglected.

An AI for Tetris and an AI for EV nova are completely different because the way that each game is played is very different. But at the core you have the same problem, and you can solve that problem partially by examining how people play. Once you know what separates a good player from a bad player you have grasped main issue and then the problem becomes one of execution. Though I admit that I've never actually programmed AIs for different games (beyond RoboWar), I know it's based on logical analysis of gathered data, and from that I've discerned that differences in AIs are like differences between painting subjects. To paint a tree accurately requires a different painting skill than a stone monument would require. So in painting too the end result can be quite different though the core problem itself is the same: How to represent a three dimensional object on a two dimensional surface.

If people did pay attention to AI in general then the problem would be exactly as I described before. The thing is no one is really interested in AI unless it turns evil and murders the human populace.

MAN it's way past my bedtime (darn you daylight savings!!!). Please forgive me for any incoherency that might have slipped in.

@phyvo, on Mar 11 2007, 05:26 AM, said in Should Fighters Be Able to Kill Capitol Ships?:

How is this different from working on any other part of the game?

Good graphics take a great investment of highly-skilled man-hours.
Good stories take a great investment of highly-skilled man-hours.
A good, bug-free gameplay program takes a great investment of highly-skilled man-hours.

The difference is what the limiting factor is.

Good stories and bug-free game-play do indeed fall into the same category as AI, in that the limit on how good they can be is based upon how much time is invested in them. (However, both of these generally have a larger time-window for implementation, and are arguably more straightforward tasks than AI design with clearer pay-offs.)

Graphics, for the moment, still do not. For the big commercial projects, the graphics are still ultimately limited by the hardware available. (This may not be that far from changing though.)

My point is that computing power is not now, and was not at the time of EV's release, the limiting factor which controlled the level of quality of the AI.

Quote

Starcraft and Warcraft III have single player campaigns which would be nothing if the AI was as dumb as a rock. Granted, the general consensus is that the AIs just train the player for serious online play, but the campaigns would have sucked without decent AI. Without the AI these games would have no significant single player element at all, without which I doubt they would have sold nearly as well.

My question was, 'what game ever got great sales based on having a highly sophisticated AI which could compete with the player?' And your example is Warcraft ? I don't remember there being anything especially smart about it. Basic, but certainly unable to compete with the player without massive superiority in resources. RTS AIs can occasionally seem good because they're better at the micromanagement - ie, they react faster when their peasants have nothing to do, etc, but I've never seen one do anything clever. Certainly not a key selling point.

Quote

The Chessmaster series of games were also practically selling the AI. Dunno how well they sold, but I remember having Chessmaster 2000 myself.

Now, chess is a much better example!

What do we know about chess? Compared to most computer games, it is simple: only six different types of piece, just 64 different positions they can take up, and every game starts with exactly the same set-up. What is more, the rules of chess have been constant throughout the period in which AI has been being designed. And yet, we also know that producing an AI that can play this structurally simple game better than a human has demanded enormous investment of time and skill over the years! And it's true that, as a result of that, modern chess games now have an AI that can beat absolutely anyone.

Thanks to wikipedia for this quote from 1950 by Claude Shannon (re: the possibilities of future computers): "The chess machine is an ideal one to start with, since: (1) the problem is sharply defined both in allowed operations (the moves) and in the ultimate goal (checkmate); (2) it is neither so simple as to be trivial nor too difficult for satisfactory solution; (3) chess is generally considered to require "thinking" for skillful play; a solution of this problem will force us either to admit the possibility of a mechanized thinking or to further restrict our concept of "thinking"; (4) the discrete structure of chess fits well into the digital nature of modern computers."

So if it took decades of effort by expert programmers (and expert chess players!) to achieve the goal of a computer able to play chess better than any person, how long would it take to achieve the same for a (structurally more complex) computer game? And bear in mind that, as I noted above, in most projects the kind of AI development we're talking about probably has to take place within something like a three month window.

Furthermore, to design quality AI, you need expert players (who were available in considerable quantity since before the first efforts to design chess AI began). Within the time-span of a design project, you don't have anything like the time necessary for expert players (among the testers) to come into being, and then consult with AI developers. It's not by chance that the few games we have which do have above average AI (take Spaceward Ho! as an example), have been stable in terms of their design for a very long time (over 10 years, in Spaceward Ho's case), allowing the kind of feedback loop you need to take place between players and designers.

You're right to point out that developers don't prioritise AI design - but the reasons for that are far more complicated than it just being something players are happy to be without (although I certainly accept that that may be an element).

I see what you mean. I still think people should try though, or AI will remain forever in the clutches of researchers when it has great potential in games. We need more people to experiment with it, such as in the sandbox game Derakon suggested, for people to see it and get experience harnessing it.

I just remembered that there's also a Windows version of RoboWar if anyone is interested in fiddling around with AI. It requires learning a simple programming language, but it's not that hard to get into (though excellent tourny bots could go far beyond 5000 lines).

Sourceforge Linky

@pac, on Mar 11 2007, 09:48 AM, said in Should Fighters Be Able to Kill Capitol Ships?:

The difference is what the limiting factor is.

Good stories and bug-free game-play do indeed fall into the same category as AI, in that the limit on how good they can be is based upon how much time is invested in them. (However, both of these generally have a larger time-window for implementation, and are arguably more straightforward tasks than AI design with clearer pay-offs.)

Graphics, for the moment, still do not. For the big commercial projects, the graphics are still ultimately limited by the hardware available. (This may not be that far from changing though.)

My point is that computing power is not now, and was not at the time of EV's release, the limiting factor which controlled the level of quality of the AI.

I was kinda thinking of games more in line with EVN. In the indie and small-budget world graphics are also limited by time rather processing power. Most small games get around this problem by not shooting for realism, but big budget games, of course, can go for as much realism as they want.

Also, for the record I never tried to say that AI was limited by processing power.

@phyvo, on Mar 11 2007, 04:15 PM, said in Should Fighters Be Able to Kill Capitol Ships?:

Also, for the record I never tried to say that AI was limited by processing power.

I know - that was someone else. 🙂 I was just trying to make the context of my point clear.

@pac, on Mar 11 2007, 10:29 AM, said in Should Fighters Be Able to Kill Capitol Ships?:

I know - that was someone else. 🙂 I was just trying to make the context of my point clear.

You guys seem to be forgetting that in order to beat an expert player at chess, they had to develop a supercomputer. Yeah, you could get Battle Chess or whatever else to take on your average or even good player, but the thinking of the computer took a bit of time (I should know, I played a lot) because of the calculations involved. Given the level of some of the EV/Override/Nova players here, I would consider them to be experts (I may be so bold to include myself in that list, though I am admittedly a little out of practice). Also, though a different situation, there is a reason that the Earth Simulator was the most powerful computer in the world for a few years. It required a lot of power to calculate all of the variables from the climates, forces, etc. In order to cope with the variables that each player brings to the table in Nova, you would need a lot of computing power.

Don't get me wrong, I'm not saying that AI should automatically be better because of the processing evolution. If you don't have programmers who know what there doing, it doesn't matter what you have for processing power. Part of the reason Deep Blue was so good at chess is because it was programmed specifically to beat the best players in the world. But it also works the other way. The best developers in AI for non-gaming purposes use computers much more powerful than those available to the public. The best developers of AI for gaming purposes still have to take into account the processing power of your average computer.

This post has been edited by erikthered : 11 March 2007 - 12:51 PM

@erikthered, on Mar 11 2007, 06:51 PM, said in Should Fighters Be Able to Kill Capitol Ships?:

Don't get me wrong, I'm not saying that AI should automatically be better because of the processing evolution. If you don't have programmers who know what there doing, it doesn't matter what you have for processing power.

Precisely. Processing power is not the limiting factor. Availability of skilled programmer man hours is. Thank you. 🙂