Page 5 of 6

Posted: 27 Jan 2006, 20:40
by krogothe
Hope this enlightens people:
http://taspring.clan-sy.com/phpbb/viewt ... 3488#53488

control, then fun, cool AIs, not the other way around!

Posted: 28 Jan 2006, 02:41
by Gabba
krogothe wrote:Hope this enlightens people:
http://taspring.clan-sy.com/phpbb/viewt ... 3488#53488
control, then fun, cool AIs, not the other way around!
I watched your demo, and I see better now how group AIs could be used for small exploits, just like expert players took advantages of the unfixable bugs in TA, only this would require less skill.

I think we're still far from a group AI that plays the game for you and makes you unbeatable, though. For instance, in your replay the commander d-gunned your radar tower. If this kind of thing happens in your back it could be catastrophical. And Rockos firing at planes could destroy a few of your mexxes in the process. I know this AI was a quick job, but still... the more it can do, the more mistakes it can do.

Anyways if you can design a control scheme that checks which AIs are present and checksums them, it would be nice. We should have a list of "officially approved" group AIs, such as the metal maker one. Maybe also a list of "officially under evaluation" ones, that people will be less afraid to see in use than ones that come from nowhere.

Posted: 28 Jan 2006, 02:48
by mongus
AF, this is a constructive (well almost) dialog on weather or not group ais should be able to be blocked from server side.

so i dont see its really wrong, except for:

Krogothe, as someone else said, nonoblobs is something more of:

"who can press this button faster wins"

(im not saying its not fun, or challenging, it is, but human vs human, or ai vs ai, its impossible to win vs an ai in nonoblobs, granted.)

There is no surprise then, that any ai will be the best at it.

I wont even try to beat an ai in nanoblobs... altougth i did try once, versus greennail, we were playing fine, (ofcourse he was bout to own me) i did a very crappy attack, and later he intended another on me, but i stopped it, then i sent 3 pyros to his base (ashpen) and then game disconnected, the "smoke clouds of disconnection" bug appeared and he disconnected, he said his connection blowed to hell witht the game.

altougth he also told me the pyros blowed a lot of stuff (i couldnt see that), even a lab.

he was using kblobs ai.



OTOH, a really different thing is an strategy game, where there is lots of important decisions to take, weighting the current situation and proposed strategy. Its a complex thing that goes way forward to what is placing mexes growing resources, or knowing what is the most powerfull unit in given lab.

The fact you think its differenty, prooves you have not played the game enough to know it.

and lastly krogothe.
i agree with gabbas argument (in first post) on why a helper ai, is not (yet) as "helpfull", thus cant make stuff better than humans.
The dangerous ones are the ones that tell you the best places to, so you can do them yourself, preventing it from doing stupid things...
what things can your ai tellme where to place rigth?

and based on what criteria?

for example where to put one hlt?

I grant you an ai can tell you the best distribution to place metal extractors, given a static resource, but can it tell the rigth order to do so? or at what time in game to perfom such mexing opperations?

doubt it.

about the other post, i didnt even see it, but there is ppl saying you basically removed the "autotarget" tag from the dgun weapon O_O

btw, even ntai, that uses dgun wisely, dguns its own stuff. :evil:

And remember krogothe, my argument is not in the line of

"An ai will never play as good or better than a human"

but more in the line,

"it can be done, but it has not been done yet, its hard to do, and will take time and effort, lets not blame the current group ais yet, better learn to use them! (until we get real issues)"

So, :/, why you effort in generate such a negative thing?, just to win this thread's argument?... that is even evil.

edit: well saw the replay, even when its impressive the accuracy, i think that "trajectory extrapolation" for weapons over targets, is already into spring.

look at how does pupop cannons fire. it goes for the possition the unit "will be" for when the bullet arrives the target.

you can "bounce" popup shots bc of this. i do sometimes.

and, isnt that dgun range extended? like its more of aa dgun range, not xta.

about the reasons "boundled" into the replay for us to "realize".

1.- human player would make this better.

2.- only an asshole will think ais are possibly harmfull and do this stuff.

well dont see much point to answer to that, its already answered in this thread, just bringed them here bc it is cheap one cant respond you in your replay.

that trick can be avoided if airplanes do a bit more manuovering on "icoming projectile" or something.

btw, rockos already do that. they extrapolate the trajectory.

your trick has more to do with "permitting" the unit to aim before the enemy is in its fire line.

its rather interesting, this should be even implemented.

lol

http://www.fileuniverse.com/?p=showitem&ID=2288

Posted: 28 Jan 2006, 05:16
by Chocapic
for example where to put one hlt?
using the human abstraction on best hlt spot you can make an ai to allways pick the best spot for it as fast as a blink of an eye (just teach it the concepts)
but can it tell the rigth order to do so? or at what time in game to perfom such mexing opperations?
the code to do this is more complex, but the idea is the same as the above mentioned.
btw, even ntai, that uses dgun wisely, dguns its own stuff. Evil or Very Mad
what the demo was about was a "Dgun aimbot groupAI" and the part of not dgunning your own stuff is a piece of cake (quite more cpu consuming though)
lets not blame the current group ais yet, better learn to use them! (until we get real issues)
this is what were trying to avoid...

Code: Select all

btw, rockos already do that. they extrapolate the trajectory.

your trick has more to do with "permitting" the unit to aim before the enemy is in its fire line.
have you ever dgunned a hawk ? (will you ever dgun a hawk if i give you 50 attempts ? lol...)

All and all the demo is just to show what groupAi's can make and to be honest its just the beginning , i cant really imagine yet what can you do with it that humans cant do as good as it does therefore give quite some advantage to who uses them and decreasing game fun ,etc...
Its a stratregy game you should pretty much do all decisions , as for the metalmaker ai (its just the point that it would be very attention consuming for you to be switching it on and off all the time ) by wich comparing to a mex placing ai its not really the same because a good mex placing ai will allways prevent from choosing badspots! (where's the stratregy ????, its just an example..).

Posted: 28 Jan 2006, 06:14
by mongus
the dgun trick can be performed changing the weapon definittions.

here, a popup cannon kills a hawk.

its tweaked, can aim air, weapon vel 600, a good los, and range 4000.

if i only knew how to tell a weapon must "extrapolate" (what popups do to normally). i could tell the dgun to do this and as it has straigth line, piece of cake to aim it.

There are additional "tricks" you can do to help in this.

for example, you can FPS the plane, and pilot it in a straigth line to the dgun, that will make aiming easier for the engine.

The dgun thing is more of a "spring engine trick" than group ai.
somehow the "enviroment" in wich the group ais can run was broken.

about programming the "perfect" placement for things.. i know it can be done, but its not that easy to do.

also, would that take into account that you dont need the "perfect" place, but (for example in brazilian battlefield) to be hidden of enemys popups, but in the entrance of the base?..

i know, what i can say now is very narrow minded, and may make the task easier to you to tell me "can be done this way".

personally i have not the time to think in all the different "situations" you can have when placing defenses, i know its possible to do it. its programable.. yeah sure.

we can simulate all natural catastrophes in a huge puter with awesome soft... sure it can be done.

the thing is who will do that with the pourpouse of "cheating" in this strategy game.. pff.

only a guy that wants to "proove" he has the skills or that its "possible" to do it, and its bad!!

Posted: 28 Jan 2006, 06:14
by Kelson
I've played quite a few games that completely abstract away from the nitty gritty details of 'where precisely to place builders', 'how to make my units fire', and many other little issues we currently contend with in TA:Spring. They are still fun. They're still complex. They still require strategy. I fail to see how turning TASpring into one of these would make it 'unfun'...(not to claim we should).

As I pm'd you, GroupAIs can break the game - but no more so than someone modding the source (and that would be just as easy to distribute - not to mention undetectable). On the whole the danger of a GroupAI...versus straight up cheating...is marginal at best.

Posted: 28 Jan 2006, 19:56
by XigXag
I'm not in favor of "banning" game-unbalancing GroupAIs, and here's why. It's a non-problem that is very easily manageable.

First of all, who decides what is "game-unbalancing?" Some people probably think that the Metal Maker GroupAI is cheating. It's going to be different for everybody.

Secondly, there seems to be a feeling out there that somebody will write some Aimbot-type script that will make the dreaded "noobs" invincible. This is highly unlikely for reasons already given by others (primarily because TA Spring is an RTS, not an FPS). But even if someone writes the GroupAI equivalent of Deep Blue, there are ways to mitigate it.

Here's my idea. The Spring engine would contain code such that when any player uses a particular GroupAI for the first time (and only the first time), a global chat message is generated. The message would say something like, "Player X uses GroupAI Y." The engine would get the GroupAI name from the GroupAI script. Aha! you say. This would allow unscrupulous folks to spoof the name of their evil, game-unbalancing GroupAI, perhaps calling it "Metal Maker" instead of "Darth Vader."

BUT! If the other players see this on their chat channels:

Player n00bz0r uses GroupAI: Metal Maker
Player n00bz0r uses GroupAI: Metal Maker
Player n00bz0r uses GroupAI: Metal Maker
Player n00bz0r uses GroupAI: Metal Maker

...knowing as they do that each GroupAI only generates ONE global chat message (the first time it is used), then everybody would know that Player n00bz0r is using 3 spoofed GroupAIs. Why would he spoof them? Possibly because he's... CHEATING? The scorn of your fellow players would be the incentive not to spoof. (OR, the Spring code could prevent players from running identically-named GroupAIs simultaneously.)

Now I can hear you saying, well, couldn't somebody package all the horrible, cheaty GroupAIs into one script, so there's only one innocent-seeming chat message generated? And to this I would answer: Good luck with that. The more stuff you cram in there, the more it will lag and crash, especially if the components came from different sources. And eventually, even if it does "work," there comes a point where it's so obvious that you're cheating (this game does have replays, after all) that spoofing is irrelevant.

I also would like to present a case FOR cheaty GroupAIs. Many people like to play games with their kids (and vice versa). Wouldn't it be fun to load up your interested-but-unskilled kid with a bunch of helper bots so they can at least participate on some level? (Of course if they enjoy it, they can learn how to play for real.) Just a thought.

-XigXag

p.s. I apologize if this has already been suggested, I don't have time to read all the posts at the moment.

p.p.s. Note to Krogothe: I find myself turned off by your level of rhetoric. "My metal class can improve ANY player's mex placement from WHATEVER_LEVEL to PERFECT." Sheesh! I want to disagree with you just out of spite.

Posted: 28 Jan 2006, 21:10
by Chocapic
I've said what i wanted to say and will only say one more thing:
Question : why do i enjoy so much specing very good players ?
Answer: because apart from the mega owning game (not allways),its beatifull the way they can control everything evertime and keeping their focuse on the most important thing in that time , so why do we need groupAi's ?

I rest myself at peace away from this everlasting topic though, and i hope the groupAi's that "you" are creating will improve and fun enhance the game instead of doing the otherway around.
Only time will tell me if am i right or wrong about groupAi's damaging gameplay , allthough i hope very much that i am wrong and that this comunity has the best from groupAi's (after all why not wait and see ? i may be wrong, history as told me that good guys tend to beat bad guys)

:wink:

Posted: 28 Jan 2006, 21:27
by mongus
so why do we need groupAi's ?
wanna see devastating gameplay?

make the Central Buil work in my machine 100% of games i play.

do i want to use it? why?

because it takes building to a hole different level of organization.

its not about clicking 2839283982 guard/unguard orders

its not about clicking 7123782738 times every constructor

its not about throwing a stupid queue at it and win the game just bc

its not about queuing, at all

Its about base planning

Its about wise Resource management

Its about efficiency

Its about what tha heck, is what i could ever wish my const units to do.


Actually, i think group ais are taking the place of "interfaces", yes more advanced interfaces for different types and kinds of tasks.

Finally in an evolved stage, some group ais will become "group ais/guis".

so why? bc actually, what a computer can do for us IS very cool and amazing.
and not plain "cheating" as it has been tried to be put in here.

Posted: 29 Jan 2006, 00:36
by Argh
This is an interesting topic. I've left it alone, because I was waiting to see if we'd see any real proof that GroupAIs were really a threat. Krogothe's post was a good demonstration that, indeed, we have a very serious problem here.

Here'd be my thoughts:

1. Anything that can cause a unit to no longer obey TDF/FBI/COB restrictions is cheating. Period.

If GroupAIs can do so... which is what Krogothe seems to have demonstrated here... then they need to be reigned in. Because if he can make the DGUN attack planes through a GroupAI, then something is broken. My feeling, however, is that this is something that's broken in Spring itself, which will probably get fixed.

2. Anything that does not cause a unit to disobey TDF/FBI/COB restrictions is not cheating. TDF/FBI/COB are the rules, folks. Break them, and you're cheating. Stay within those limits... and no, that's not cheating. It might be called interface enhancement, a crutch for the weak, etc.... but it's not really cheating. Because then you're just using an AI to do the things that humans can already do... and the real question is whether there's anything that AIs can do that's remotely a threat to a skilled human player. I have yet to see any evidence of that.

Now, do I care about uber-efficient mex-placers? No. Do they make a big difference? No. AIs use them, and I kick their buttocks. Because there are a lot've things that are far more important than efficient mex placement.

Do I care about GroupAIs that supposedly automate building structures/bases? Nope... at least, not until somebody shows me an AI that will build bases that make any real sense. Submarine's getting closer, with the newest version of AAI, but it's still not quite there yet.

Do I care about GroupAIs that will supposedly attack/defend for me? Good grief, no- thus far, AIs are pretty horribly ineffective attackers, and are massively inefficient. I happily invite players to try using such AIs and get owned when their crutch fails.

Do I care about AIs that will build buildings for me? As of now, I haven't seen a single AI that can build structures in a way that makes any real sense, so... um... no.

Do I care about AIs determining what a given construction bot will do? I have yet to see an AI that does this any better than people can, with the obvious exception of NanoBlobs, which was designed to create parity between humans and the AI, through rules that gave it a chance to excel in the one way that AIs will always excel- the sheer number of orders they can give per second. The next version will be, perversely, much less built around parity... I'm going to swing the opposite direction, and the final build will contain things I doubt that the AI designers will be able to get their units to use properly for awhile, like capturing, and will purposefully make production require intelligent, chained decisions, to make it a little trickier- AIs that just build random things will just plain not work. I hope that the next version teaches the AI developers a few things that are present in bigger, more complex mods like AA, but aren't very easy to see, in such complicated messes- NanoBlobs, if nothing else, has been a good experimental environment to explore certain problems in a very clean environment.

Posted: 29 Jan 2006, 02:30
by Kelson
I think Argh laid it out pretty well a fundamental point many people seem to be missing - GroupAIs are just an interface and, non-cheating ones, can't do anything a human can't do. I specify that last part becaues that is the only section of GroupAIs I think need controlling...but that is impossible. A GroupAI that fires the dgun and hits planes does the same thing a human can do from first person mode...and as I explained in the other thread, I don't see that breaking the game in any case, even if it were to be perfected to make completely rational decisions about when to dgun. Hell, I'd probably still manually control my commander - and I don't normally fps him to use the dgun (though I have dgunned attacking planes). I normally micromanage where most of my units fire, even though they'll automatically do it themselves. I do it because I have certain objectives to meet and, in my opinion, though they might be doing the best damage they can (or whatever metric they're using), I have my own and think something else is a bigger priority.

I would say that'll always be true though. Even if I had a perfect, guaranteed optimal GroupAI for building and mex placment, I'd still manually build my beginning mexes and buildings - many humans are like that. The GroupAI I use will be good for handling simple, small tasks so I don't need to worry about them anymore - upgrading Mexes to Mohos, covering a large region with metal extractors with a construction team, utilizing metal makers when it is optimal, or staying in formation.

Posted: 29 Jan 2006, 07:12
by Maelstrom
The attitude many of you seem to be taking is that just cause there is nothing bad out there now, we shouldnt worry. What ever happened to that saying that prevention is better than cure? Fix this possible problem before it actually becomes a problem. Is that really a bad thing?

Posted: 29 Jan 2006, 08:11
by Kelson
There are bad things out there. I have bad things. Now that we have that out of the way...
Kelson wrote:GroupAIs are just an interface and, non-cheating ones, can't do anything a human can't do. I specify that last part becaues that is the only section of GroupAIs I think need controlling...but that is impossible.
I didn't think it was necessary to explain why it is impossible to control GroupAIs, but I'll comment on it now - it is impossible to prevent cheating in TASpring. By its very nature, TASpring gives free access to its code to everyone. This allows lots of people to join in and help the application grow. Unfortunately, it also permanently prevents any ability to prevent cheats.

Suppose we modify the client to prevent GroupAIs completely...then I could modify it to enable them. We're giving people the recipe for the game, they're free to modify it however they want. To those of you claiming it'll require more programming knowledge etc etc...I disagree completely. The application would have had to be built from the ground up with security in mind to even imagine trying such a thing.

I've said several times that GroupAIs could be hazardous, and I doubt there is anyone who would disagree with that. Despite that, I don't think we should try to control them more than they already are (the interface is pretty good so far), since that is ultimately a fruitless venture. Think about it like this...you want to control GroupAIs to prevent cheating. Fair enough. Unfortunately, the only change is that normal players will have a harder time using GroupAIs...cheaters will have it just as easy. Nothing good will come of it.

Posted: 29 Jan 2006, 08:27
by Argh
I have no problems with prevention. I also don't panic when I'm not seeing any evidence that there's something to worry about. We're in a stage where there is something worth worrying about, I'll agree with that- but I'm still not really worried that GroupAIs will lead to wholesale havoc.

Let's be real here- if somebody wants to hack Spring and cheat, it's not going to be hard. Everything from taking less damage from hits to having maxxed-out resources to never missing a shot is totally possible- the only things preventing these things from happening are, quite frankly, the goodwill and good sportsmanship of players, and the Spring engine's relative newness.

GroupAIs that allow for behaviors that are outside of TDF/FBI/COB limitations are worth worrying about, now that we have a basic proof that they're possible. Krogothe's proof-of-concept, while crude and not something a hyper-competitive player wanting a real "edge" would be tempted by, is worth worrying about. Not because the Commander d-gunned a plane... that's a really stupid waste of Energy. But... what if every unit that was really designed to be artillery-only could also "morph" into AAA if a GroupAI told it to? What if units that have angle limitations quit obeying them, allowing them to fire high-velocity, high-damage weapons on low arcs? Ok, that's worth worrying about.

Are AIs that build my base for me worth worrying about? Not at this time.

I mean... c'mon here... there's a world of difference between some newbies playing a game where KAI/NTAI/OTAI/AAI/whateverAI is running the economy (very badly, in my tests) and the player directs the combat, or nudges it along in the "right direction".

Sooooo what? Is this any different than multiple players running the same team? Well, yes, it is- when two humans are running the same team, most of their moves will make sense ;)

If somebody can "pwn nubs" with this "amazing strat", ok. But they are NOT going to beat a human who knows what they're doing- I'm not the world's strongest OTA player, but I am not even breaking a sweat. For example... has anybody BUT me noticed that you can completely own any of the current AIs by just putting defenses near open metal spots? It's hilariously effective, because wasting even one builder makes the AI waste construction time on building more... and any second-wave guys you kill are a bonus, time/resource-wise. Try it, it's very funny to watch what happens when a machine tries to be efficient in a really inefficient way ;)

When AIs can build decent economies, direct half-way intelligent attacks, build units in clusters that make sense, and build defenses that don't fall apart under even minor assaults... then, gosh, should we worry? Not a chance! Because, even then, we're not talking Deep Blue here- these AIs won't be beating skilled players. Sorry, but in any mod that features OTA-like play, I have never even broken a sweat trying to defeat multiple AIs. Even when they eventually get around to building nukes, I will not fear them, because they will build them and suck their economies dry... same with Bert/Tim ... or whatever equivalents there are out there. Go right ahead... use a "crutch" that will cripple you, I dare you.

Should newbies worry? Nah. Not even them. Why? Because the newbies that rely on such lame crutches will never become skilled, whereas newbies who take the time to learn proper play will, and will start winning. Simple as that, really.

Now, should we worry... if AIs are allowed to cheat? Well, yessiree... but only in games where the server has allowed cheating in the first place.

Compared to the wholesale cheating that is likely to occur when/if Spring really takes off in popularity, this is a pretty minor worry overall. I totally agree the Krogothe's post shows that there are some fairly easy things that can be done with GroupAIs that are cheating, but these loopholes should be relatively easy to fix.

Posted: 29 Jan 2006, 19:55
by mongus
Maelstrom wrote:The attitude many of you seem to be taking is that just cause there is nothing bad out there now, we shouldnt worry. What ever happened to that saying that prevention is better than cure? Fix this possible problem before it actually becomes a problem. Is that really a bad thing?
ahum.

in the case of this "infection", we should not worry about, but try to make it grow, as healthy as possible.

why?

even the (bad intentionated) "semi-exploit" krogothe found, is barely harmfull.

Instead, it adds to a hole new gameplay.

So, if this was bad intentionated, imagine the positive things can be done in the same subject with better intentions.

Adding checksum and "enable-dissable" system only adds to the cramp, makes spring more bloated, takes dev time, and all of that bc of something that is barely harmfull? dah.

that system can even be disabled as easy, it has been said.

so its double bother about something that cant be helped, and that finally is not "the devil" as someone has tried to put it.
what if every unit that was really designed to be artillery-only could also "morph" into AAA if a GroupAI told it to?
In this subject, there was work already done.
Inmolators, (core heavy plasma cannon), was originally able to shot without restrictions, at incredible ranges, way farther than "designated" range. (yes i did use this "feature" and was quite good artyllery man :D).

now, that cannon cant be aimed at "free air", it aims a specific unit or the plain ground.

that way you cant aim it in angles it would destroy things out of its range.

The thing is making group ais agree to that restrictions too.

Posted: 30 Jan 2006, 03:59
by CrowJuice
If we ever get an non-cheating uber-AI then it would be a system resource hog. That is my prediction.
Chocapic wrote:
for example where to put one hlt?
using the human abstraction on best hlt spot you can make an ai to allways pick the best spot for it as fast as a blink of an eye (just teach it the concepts)
That sounds very complex if you gonna make it as smart as a vertren.

Posted: 30 Jan 2006, 10:01
by Tobi
Let's be real here- if somebody wants to hack Spring and cheat, it's not going to be hard. Everything from taking less damage from hits to having maxxed-out resources to never missing a shot is totally possible- the only things preventing these things from happening are, quite frankly, the goodwill and good sportsmanship of players, and the Spring engine's relative newness.
You're wrong here, this is pretty hard at the moment because anything but information hacks will cause the simulation to go out of sync unless you manage to distribute your hacked exe to all other players...

Same deal for a GroupAI that tries to modify the UnitInfo (the data from TDF/FBI/COB).

Posted: 30 Jan 2006, 11:36
by Kelson
Tobi wrote:Same deal for a GroupAI that tries to modify the UnitInfo (the data from TDF/FBI/COB).
He didn't mean for the GroupAIs to modify the UnitInfo. Rather, by controlling units via FPS mode, it is possible for GroupAIs to ignore the restrictions as assigned in the TDF/FBI/COB files, which is (mostly) true.

Posted: 01 Feb 2006, 00:31
by mongus
i think that ai krogothe showed, does trick tdfs.

Slow Reply to Old Stuff

Posted: 10 Feb 2006, 14:34
by DRB
Long time ghost. First time poster.

Once apon a time, me and Argh sat down and designed and built nanblobs one evening. Honestly, I passed out on the couch while he finished the first build. He has been updating it since, and it has changed a lot.

I can say with 100% certainty, that there has never been a build of nanoblobs with any ai I have ever seen that a human player could not beat 1 vs. 1. I only say this because I have lost a fair amount of sleep proving this.

Of the ai's, I have had the most trouble with Krog's off and on. Props to Krog - among other things, he had an AI version that could play it up within hours of the first version being posted.

I have read through this thread. I must say the most constructive thing I have read was what Swiftspear said a while ago; I hope someone goes crazy and builds a great AI playtool so we can strip the code out and improve our existing AI's.

Past that, the only usefull suggestion I can make is that maybe the best place for group ai's is as mod content - that makes participation in games that may include them transparent and completely controllable, but still lets people who bother create whatever version of Spring they want to. Simply, if anyone wants to make a mod that includes group ai's and actually spends the time to do it, I think thats great. If they are fun, I'll try them. If not, well, we play games for fun, right?

For me, that is the best thing about mods. We all have a vision of this game we would like to play. Some people have the fortitude to create them. If they post them on the web, we have the privilege of trying that vision. I've never seen anyone forced to download a mod - much less playing one online. Talking about our ideas of what that vision looks like is a good thing. Making decisions about what should or should not be in an engine based on our own vision is ... a little more presumption then I would choose to commit.