Shard 0.4/dev - Page 4

Shard 0.4/dev

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

Moderators: hoijui, Moderators

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 09 Apr 2010, 02:54

Shard is issuing a blanket area reclaim command. A human player should experience the same behaviour. Go tell an orb to do an area reclaim in the middle of any base and it should reclaim everything in sight, features, enemies, allies, all of them.

For now shard works quite well without orbs
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14408
Joined: 17 Nov 2005, 02:43

Re: Shard

Post by Forboding Angel » 09 Apr 2010, 03:00

AF wrote:Shard is issuing a blanket area reclaim command. A human player should experience the same behaviour. Go tell an orb to do an area reclaim in the middle of any base and it should reclaim everything in sight, features, enemies, allies, all of them.

For now shard works quite well without orbs
Nope, it only reclaims features when issued by a player.

And agreed, shard doesn't really need orbs by any means
0 x

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 09 Apr 2010, 03:02

Then I have no idea why this would be the case. The behaviour seen is not supposed to happen, and is likely an engine bug in that case.
0 x

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 12 Apr 2010, 23:28

In response to network slowdowns in kernel panic and other performance hwonderINg wonder what is taking up the performance, Ill add in some timers and small delays to remove some worst case conditions

Also:

I'll be kind of slow on updates this week and possibly next, I have 2 courseworks and this project to write up and finish for deadlines in the next 2 weeks
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14408
Joined: 17 Nov 2005, 02:43

Re: Shard

Post by Forboding Angel » 13 Apr 2010, 10:39

I haven't noticed any slowdowns in evo, and I've run 7 of them side by side with no noticeable side effects.
0 x

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 13 Apr 2010, 12:22

Kernel Panic by its very nature will make AIs slowdown if they haven't taken certain precautions, because there are so many units, and they're built so quickly, die very quickly, and responses are very fast.
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14408
Joined: 17 Nov 2005, 02:43

Re: Shard

Post by Forboding Angel » 14 Apr 2010, 11:30

Ran 8 shards today in a 5v5 on downriver. No issues.

Also played a 5 humans vs 5 shards on lowtide. We lost :-/
0 x

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 14 Apr 2010, 14:41

I need help collecting statistics for my writeup! If people could fill out this form, it'd help a lot!

http://spreadsheets.google.com/viewform ... YU8xbmc6MA
0 x

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 17 Apr 2010, 11:54

So far 7 people have filled out the questionnaire, thanks!

Some of you put names in the end comment section too, *cookies*

Though addressing some feedback:
  • Dgun support is inevitable, but it wont come till after April when my assignments are all finished
  • Concerns that Shard cannot react to economic changes is an issue I faced with NTai. Its not so much a problem with Shard as an AI, but with the design choice I made for handling engineers in the lua code. It can be changed to an AAI type system via behaviours given an hour or two. Then there's the NTai style universal keywords. Or even both.
  • BA performance is thanks to Kaiserj, and although his setup could be improved, I think he's done a good job considering how little time he's had. I outlined some changes to him along with a DGun behaviour to him which I think will help improve shards gameplay and he liked what he heard ( regarding things like a yield keyword and assist behaviours for nanotowers etc )
  • Grouping of attack units is an issue I'm aware of, I'm still thinking of an appropriate solution as there are various options all with their own benefits and disadvantages. Do I group all the units together with a move command? Do I do a nearest neighbour search and form multiple groups that are already gathered and group the biggest together? Do I allocate a drop zone and send all newly built attack units there? Or do I make attack units automatically seek out other groups and herd them together?
  • Fun vs Killer AI was raised by one or two people, and I know this is a game, so fun is a necessary thing, but there's the desire to chase after the omgwtfpwn AI. I'm still thinking about ways to prevent Shard from sitting in an island of skill, either too strong for new guys ro too weak for training games. I'm toying with an idea to make Shard use its map hack to monitor the enemies resources and make sure it never exceeds or overtakes by a certain amount unless an AI option is flagged to make it as brutal as possible. I'm not going to implement easy/medium/hard however as things aren't black and white. What if medium is too easy and hard is too hard?
0 x

Kerr
Posts: 37
Joined: 27 Feb 2010, 03:18

Re: Shard

Post by Kerr » 19 Apr 2010, 02:00

Im working on the CA overrides, it weas VERY messy before, now it still builds a lot of structures, and doesn't use pylons atm (doesn't need to atm)

I started from the beginning and it plays a lot better now :p


and it isn't quite infinite monkey, i would build a mex pylon right after a mex, and a transfer pylon every so many E structures.
0 x

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14408
Joined: 17 Nov 2005, 02:43

Re: Shard

Post by Forboding Angel » 19 Apr 2010, 15:31

It would make more sense if CA removed the pylon restrictions for AI's.
0 x

User avatar
Pxtl
Posts: 6112
Joined: 23 Oct 2004, 01:43

Re: Shard

Post by Pxtl » 19 Apr 2010, 19:51

Okay, the idea of the AI balancing itself against your econ? That's really, really cool. I totally agree that the "easy/medium/hard" thing is silly, so this kind of auto-adjusting AI concept is brilliant.
0 x

User avatar
KaiserJ
Community Representative
Posts: 3113
Joined: 08 Sep 2008, 22:59

Re: Shard

Post by KaiserJ » 19 Apr 2010, 19:59

ye; my setup could defenitely do with an improvement; it was interesting to adjust things and see what results i could come up with. IMO, the two biggest issues configuring shard with BA were...

-that the commander didn't do anything to defend himself
-that there was no handling of excess economy

those two issues, if/when resolved, would make shard an excellent opponent.

to me, making shard "easier" for new players seems like a bit of a waste of time; we already have plenty of "easy" AIs, i would like to see shard be as effective and deadly as possible, but that's really just opinion.

an interesting note... shard (in the last form i mucked with) would make an excellent teammate; he goes and claims metal and excesses a ton of resources
0 x

iceteea
Posts: 7
Joined: 27 Mar 2010, 14:33

Re: Shard

Post by iceteea » 19 Apr 2010, 21:09

just a little submission: new shard (0.21) doesn't seem to work in network (could it test just on one pc atm, but it worked with 0.1.2)

edit: tried with ca
it does absolutely nothing
0 x

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 20 Apr 2010, 00:06

CA: Don't play as random/core, Kerrs only provided instructions to Shard for Arm.

Kernel Panic: Shard needs to issue Dispatch orders which it doesn't do yet, otherwise network units remain trapped in the buffer as I'm told.

I have to hand in my write up before Thursday so I'm uber busy this week.
0 x

User avatar
JohannesH
Posts: 1793
Joined: 07 Apr 2009, 12:43

Re: Shard

Post by JohannesH » 20 Apr 2010, 10:15

AF wrote: [*]Fun vs Killer AI was raised by one or two people, and I know this is a game, so fun is a necessary thing, but there's the desire to chase after the omgwtfpwn AI. I'm still thinking about ways to prevent Shard from sitting in an island of skill, either too strong for new guys ro too weak for training games. I'm toying with an idea to make Shard use its map hack to monitor the enemies resources and make sure it never exceeds or overtakes by a certain amount unless an AI option is flagged to make it as brutal as possible. I'm not going to implement easy/medium/hard however as things aren't black and white. What if medium is too easy and hard is too hard?[/list]
Go for Killer AI - easy AI isnt fun to play with.

New players tend to not understand they should expand, and if the AI wouldn't expand either cause it watches your income, a beginner might never realise that you indeed can take the whole map in minutes vs a passive opponent.
0 x

User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7003
Joined: 16 Nov 2004, 13:08

Re: Shard

Post by zwzsg » 20 Apr 2010, 10:39

And if the AI expand too fast, it'll cover 4/5 of the maps while the new player would be still looking at his first build menu, wondering what to click first. Stomping newbs hard and fast is not going to make them enjoy the game. Why do the hard core players always think repeated humiliation is the only valid starting experience?

But for now, I'd like shard to concentrate of compatibility with weird mods, reliability, sparcity of CPU & mem used, etc... while aiming for the fiercest playstyle possible. Shackling can always easily be done later.
AF wrote:I'm toying with an idea to make Shard use its map hack to monitor the enemies resources and make sure it never exceeds or overtakes by a certain amount
That's what I did with "Fair KPAI"! I don't know how effective it is at adapting to player level though, it's hard to simulate being a true noob.
0 x

User avatar
1v0ry_k1ng
Posts: 4656
Joined: 10 Mar 2006, 10:24

Re: Shard

Post by 1v0ry_k1ng » 20 Apr 2010, 11:57

personally I think an AI should be as good at the game as possible, the challenge is what makes it fun :regret:
0 x

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 20 Apr 2010, 13:06

Indeed, but I don't want to provide to much of a challenge for one and not enough for another.

The aim is to have Shard play just above where the players skill lies so that the player learns and expands. Ofc there'll be an AI option to allow turning it off, and any half decent player would never flip the switches needed to limit Shards gameplay.

Regarding expansion, someone should write a widget that helps make it obvious to the player that they could have expanded. Perhaps a widget that tells you how far you should have expanded by now, highlighting spots that should be capped already, and the gap between what your income is, and what it could be.
0 x

User avatar
AF
AI Developer
Posts: 20667
Joined: 14 Sep 2004, 11:32

Re: Shard

Post by AF » 20 Apr 2010, 14:44

Someone messaged me asking about the flexibility of Shard and implementing something unusual. Ill post the reply with some edits to it isnt obvious who it is and what they want to do, and some extras I thought of after I sent the message to clarify:
There's nothing stopping you copy pasting shard into a new folder under a new name, giving me a little credit, and building a completely different style of AI on top in lua. Or even just adding the other type stuff into existing Shard, go take a look, all the logic is written in lua files

Or one could use the overrides to override every single file. It would require some modifications to ai.lua but Ill be making changes that remove even that need in 0.23.

So think of Shard more as a framework that happens to have a default implementation. Perhaps I should devise 2 seperate names, Shard and Shard Framework, perhaps Fragment....
As a side note,after July when I graduate and I can open source this, I'll be able to demonstrate C++ AIs using Shards APIs as well as luas.

Regarding the change in 0.23, think of it as a modules.lua in the same style as the behaviours.lua, only they're all loaded at start up and can be added/removed at runtime. One could add to the default modules implementing task queues and attacking, or replace or just remove them and do a new design.

At some point I'll also be adding luasockets.
0 x

Post Reply

Return to “AI”

cron