*cries* Anti-Social spring version!

*cries* Anti-Social spring version!

Here is where ideas can be collected for the skirmish AI in development

Moderators: hoijui, Moderators

Post Reply
User avatar
krogothe
AI Developer
Posts: 1050
Joined: 14 Nov 2005, 17:07

*cries* Anti-Social spring version!

Post by krogothe »

I was happily adding features to KAI and then went out to test it with friends and then realized something: It seems that in this version it is impossible to do almost anything AI-related except by yourself.
I cant have people join my game to help me test KAI as they get an error and crash (why? it worked before and the AI runs from my machine).
I cant let KAI cheat to make it harder/to test it unless im on my own, so no team compstomps.
I cant even post a replay up of KAI showing off something way too cool since anyone who tries to watch it crashes too, even if the whole netcode is already there!


My simple 2 wishes:
-remove the AI check for other players, since it can run from the player that added it. Its pointless making them crash.
-Sent AI cheats in the netcode so people can play multiplayer with cheating AIs

The second isnt that necessary but the first is completely vital. Ive never had such motivation to work on KAI and now i cant test it or show it off :(

I believe this should fairly trivial to fix, but if its not could some one please at least give me a clue how to fix them!
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

^^ I wonder if I should tell? Because the method I know of also exposes a rather unsightly problem that you're not going to like at all, one I dont think I want people to know about incase NTAI public testing is ruled out completely as a result....
User avatar
krogothe
AI Developer
Posts: 1050
Joined: 14 Nov 2005, 17:07

Post by krogothe »

Well i had tried that before and it still didnt work, so i guess im out of luck!!! Thanks for the try anyways...
devs please come down from heaven and save me!!

Okay after some more testing, when trying to watch someone hosting a replay featuring a cheating AI (only getunitdefs and getunitpos, no netcode-breaking stuff), i get the message "cheating ais only allowed in single player" or something. And when trying to watch my own replays of me playing alone i get a DNS server error...

Okay, AIs could maphack and tell their owner the positions of enemy units, but lets be honest, its not like you cant notice an AI is playing! Let them cheat and be challenging for once :wink:
User avatar
FizWizz
Posts: 1998
Joined: 17 Aug 2005, 11:42

Post by FizWizz »

I found it annoying when I tried to host an AAI demo game (I forgot who I was showing it to, but he wanted to see how the AI played first-hand as a spectator) and the joiners got errors that they didn't have the AI. if AI behavior and commands are executed by the player that hosts the AI, then why should everyone have to have the AI?
User avatar
Dragon45
Posts: 2883
Joined: 16 Aug 2004, 04:36

Post by Dragon45 »

AF found a workaround, but the workaround is a security hole! :roll:
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

Lets just say the following problem can occur:

Given a hacked copy of the cursorally groupAI and a debug itnerface logging class such as the one cian posted on fileunvierse but extended to compile, you could shove all of that in a global AI and rename it KAI.dll.

Of course then when krogothe did a playtest with you it would technically work! The problem there is that now you have a huge advantage in that your seeing all KAIs untis on the battlefield as streaks showing what theyr'e doing adn how big they are and where they're goign hwo fats they're going. You can also use all thsi information combined with the debug to reverse engineer KAI as a result, possibly even meddle with KAI by using this false KAI.dll to issue commands..
User avatar
krogothe
AI Developer
Posts: 1050
Joined: 14 Nov 2005, 17:07

Post by krogothe »

AF wrote:
Of course then when krogothe did a playtest with you it would technically work! The problem there is that now you have a huge advantage in that your seeing all KAIs untis on the battlefield as streaks showing what theyr'e doing adn how big they are and where they're goign hwo fats they're going. You can also use all thsi information combined with the debug to reverse engineer KAI as a result, possibly even meddle with KAI by using this false KAI.dll to issue commands..
Its made more sense this time around when you explained it!
However KAI cheats atm, so it wouldnt work either way unfortunately...
User avatar
Azu
Posts: 189
Joined: 09 Apr 2006, 22:47

Post by Azu »

Why not just make the AI smart rather then making it have to cheat to win?
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

*Asks Azu hwo exactly we're going todo that*

*AF also points at the numerous threads he's written discussing such things*

*Then AF remidns Azu that a skirmish AI si nto a tech demo but it's job is to put up as good a fight as it can against the player and possibly even win**
User avatar
Azu
Posts: 189
Joined: 09 Apr 2006, 22:47

Post by Azu »

A program can have instantaneous reaction time, unlimited microing abilities on every single unit at once on every area of the battlefield at once, perfect reflexes, instantly calculate what the best strategy is. Take advantage of this. Human beings cannot do these things, an AI can get a serious edge from them!
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

But we are attempting to take advantage of this, just look at some of the comments I or Krogothe have made about the next versions of our AI's
User avatar
Azu
Posts: 189
Joined: 09 Apr 2006, 22:47

Post by Azu »

If you could take complete advandtage of it, the AI would easily pwn the human, it wouldn't even be much of a match. But if you get the balance of it just right, it could make for a very deficult AND fun game without actually using cheats. I'm not sure how you would go about that though. It would also be neat if you could making a slidebar that people can use to adjust the deficulty to easier or harder to match there specific needs :)
User avatar
krogothe
AI Developer
Posts: 1050
Joined: 14 Nov 2005, 17:07

Post by krogothe »

The thing is humans get advantages over the AI. Ais cant see projectiles so even if you know that big blue laser comes from an anni the AI doesnt. Then theres the whole depth thinking issues, learning and so on.
Its not easy as it seems, though its perfectly possible for a non-cheating AI to beat your average springer.
bamb
Posts: 350
Joined: 04 Apr 2006, 14:20

Post by bamb »

I think the most preferable AI would play mostly like a human. It wouldn't have lightning-quick control everywhere etc... That's just trying to hide the stupidity of the AI.

It doesn't need to cheat. Even currently, if you need more challenge, it can be done by raising it's handicap bar or playing against multiple AI:s, although it's still stupid to see it send streams of lvl 1 units to your turrets to die. :)
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Post by Forboding Angel »

honestly, all I want is a BAI for spring.

Fuck me the BAI was hard. I actually managed to beat it once in ota on hard mode, but only because I managed to take out it's comm and rush it with ak's on one side while attacking with heavies on the other.

Simply caught it in a weak moment. But good goddamn, that ai was the shit.

I don't give a good goddamn whether an ai cheats or not, just make it put up a fight ffs, that's all I want.
IMSabbel
Posts: 747
Joined: 30 Jul 2005, 13:29

Post by IMSabbel »

well, one step would be to give the ai an handicap of 10k or so in spring... (which would somehow bring it to the same level of "insane income cheating" those ta ais used...
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

hmm Someone describe exactly how BAI played the game? I'm sure someone could emulate it in an NTai buildtree then I could look through and make changes to NTai where necessary to take advantage of that...
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Post by Forboding Angel »

Well, the BAI, used seperate econ units that gave it retarded amounts of resources, which can kind of be replicated with handicap, but a normal mex in ota might put out 2.0 but a bai mex would put ut 8-10.

Reason being, that way the ai could motly concentrate on building hordes of units to send. Was the most kick ass ai for ota, period.
User avatar
Caydr
Omnidouche
Posts: 7179
Joined: 16 Oct 2004, 19:40

Post by Caydr »

AA for OTA included a customized Banzai AI. It plays really well. If you've got OTA, give it a shot.

Its strengths came from custom metal extractors only the AI can build which extract 50% (or something) more metal. They also produce 50 energy or so. Same deal for tidal generators, they made a little extra energy and a bit of metal. L2 resource structures aren't modified in any way though (except cloaked fusions which cloak by default rather than by option). In L2 its only advantage was that its factories could build about 100% faster than regular ones - it still had to come up with the resources to build with though.

The AI also put its aircraft on random patrols across the map. This helped to harass enemy units and resource buildings. Since it was rare that they would actually come upon a defended area, by the time they DID stumble upon an enemy base they'd have this whole gigantic unholy armada of like 500 heavy planes, tons of gunships.

Ehh...... yeah so that's what I considered a good AI. I thought it was kinda cleverly designed since all you had to do in order to increase the AI's difficulty was change its limit on "special" metal extractors or whatever; the rest would mostly take care of itself.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Post by AF »

That could easily be done using a custom buildtree that focused on planes + the ".aicheat" command in NTai.

".aicheat" in XE8 will give XE8 full LOS, 100 handicap by default, and unlimited resources untill "aicheat" is sent again and it turns off.

But this is all under the presumption that the AI isnt on a multiplayer game as the cheats will cause desyncs
Post Reply

Return to “AI”