Jump to content
Eternal Lands Official Forums
Sign in to follow this  
phoenix83

Get Rid Of Ant Petition

Recommended Posts

I love the ants, it's great that they r back :o

 

I like the idea of guards think it's a missing piece specialy in WSC.

Share this post


Link to post
Share on other sites

Guards would be nice! I think we could come up with some great ideas for the ants.

 

And btw. I would donate some equipment for the guards :o

Share this post


Link to post
Share on other sites
i dont know about any1 else but i was sitting at the beam point in Isla Prima and saw 2 character called Ant_Queen and Ant_49 just walking backward and forward and he was driving me crazy

 

so i say we get rid of these bots cause they r a pain in the ass. any1 agree or disagree then post it on here

160835[/snapback]

 

/Mr T mode on

No way, yo crazy foo'! You gonna git thrown!

 

/Mr T mode off

 

Ants are k3\/\/1 and I didn't even have a chance to say hi to them since they've been re-implemented (haven't played yet). So bugger off t3h antz0rz.

Share this post


Link to post
Share on other sites

So is the ant code publicly available? (Couldn't find it in CVS, but, then, I didn't really dig too deeply). If not, are you willing to say what sort of learning algorithm they use?

Share this post


Link to post
Share on other sites
So is the ant code publicly available?  (Couldn't find it in CVS, but, then, I didn't really dig too deeply).  If not, are you willing to say what sort of learning algorithm they use?

161231[/snapback]

The code was written solely by Learner. Therefore, he owns it and it is not distributed with the client or by CVS.

 

AFAIK, there is an equation that is used to determine the result of desires. Ant's follow the success trails (they have certain functions that are predetermined) of other ants, and learn from that.

 

Learner will shed more light on this, but from what he's told me, they are pretty cleverly coded.

 

The ants rock ;)

Share this post


Link to post
Share on other sites

They also have files they use as DB's for tracking information about maps, objects, and combat. Along with their desires, data, and what they see around them, they also use random numbers extensively. Their view of the world is only what is around them, not the entire map, so the map portion of their data includes tracks left by previous ants, so an Ant that found food leaves a food track behind it as it walks away, other ants can see that and if they are hungry they usually decide to follow it.

 

Since all of the ants are run by a single program and all of their memories are shared, each additional ant doesn't take much memory. The program is about 122k of compiled code and currently it is using 109M of RAM to give you an idea of just how big their data set is they use to help make decisions. With 6 Ants running I occasionally see 1% cpu usage though.

 

Of course if they get used for guards or similar, a cut down version that doesn't track as much would get used. No reason for the guards to be tracking as much data or for every map since they will only be on a few maps.

Share this post


Link to post
Share on other sites

Jeeze, 109M for six ants?! That's potentially a huge amount.

So, according to my calculations:

109/6 = 18.6"

Therefore, at this point in time, using the data that they have so far gathered, one ant uses roughly 18M of RAM. And I assume that this amount increases the more they learn?

 

;)

Share this post


Link to post
Share on other sites

Most of that space is shared data that doesn't increase based on how many ants are running. I've run 30 ants without any problems. What increases the memoy usage the most is the count of the number of maps that Ants are on or were on recently. As the number of maps goes up, I'll have to get more aggressive on releasing the old maps.

 

Edit: each square on a map currently requires 48 bytes of data! That is for all of the tracks and flags for knowledge.

Share this post


Link to post
Share on other sites

So the ants will forget (or, you'll delete the data) how to walk on certain maps?

 

Release the source ;)

Share this post


Link to post
Share on other sites

The last yhing you want is lots of other people having access to this code! We have enough problems with people doing illegal macroing in the client now.

Share this post


Link to post
Share on other sites
The last yhing you want is lots of other people having access to this code! We have enough problems with people doing illegal macroing in the client now.

161245[/snapback]

Heh, I completely agree. I was kidding ;)

Im just intruiged by the AI thats all :D Of course, if everyone had this code all hell would break loose.

Share this post


Link to post
Share on other sites

FYI, they know about 16 maps currently, and WS alone requires 28M. I'll have to make the map loading more dynamic before the second continent is released or my memory usage will double.

Share this post


Link to post
Share on other sites
FYI, they know about 16 maps currently, and WS alone requires 28M. I'll have to make the map loading more dynamic before the second continent is released or my memory usage will double.

161256[/snapback]

LOL, indeed.

 

What sort of information does it store? Locations of where to go, harvest spots? Is it not because your storing binary data that this information is so hefty in size?

Share this post


Link to post
Share on other sites

That only helps with a limited number of ants, or if they cluster on the same map(s)

Share this post


Link to post
Share on other sites
LOL, indeed.

 

What sort of information does it store? Locations of where to go, harvest spots? Is it not because your storing binary data that this information is so hefty in size?

161265[/snapback]

Up to 16 different trails, (up to 4 harvest trails which have extra data)critical object info, flags, usage counter (age), and other data. It's all in binary, Uint16 except for flags which is Uint32. Trails do contain information so they know how long it is.

Share this post


Link to post
Share on other sites
Up to 16 different trails, (up to 4 harvest trails which have extra data)critical object info, flags, usage counter (age), and other data. It's all in binary, Uint16 except for flags which is Uint32.

161269[/snapback]

So optimisation is out of the question then? :)

Share this post


Link to post
Share on other sites

Might have to consider going to a DB & cache system for this information so that the entire map doesn't need to be loaded.

Share this post


Link to post
Share on other sites

Hmmm, since these ants have been known to wander into PK maps I wonder if it's possible for them to learn and react to threats? In other words, imagine this scenario:

 

1) Player on PK map sees an ANT.

2) Player Kills said ant.

3) Ants recognise particular player as a threat.

4) Ants converge on Threat.

5) Suddenly player finds him/herself swarmed with ants while on the PK map.

6) after set amount of time the Ants memorys of that persons threat level goes down and things are back the way that they were before.

 

Just a thought.

Share this post


Link to post
Share on other sites

Caching of map info wouldn't be a bad idea, that'd certainly save space (obviously).

 

Deson, thats a fantastic idea. Surely, because the Ants share the memory and data, they can all know of certain 'threats'.

Share this post


Link to post
Share on other sites

Yes, I think Learner mentioned before that the ants remember who kills them. *goes to hunt down post*

Share this post


Link to post
Share on other sites

Ants already call for help when attacked.

 

And their data includes combat information for animals/monsters/players, this is what they think of bears:

Level   Attempts  Wins  Losses   %  Att Exp Def Exp
Overall   4485     96     4389   2%  127450  9597
1            0      0        0   0%       0     0
2           39      0       39   0%       0     0
3           69      0       69   0%       0     0
4          126      0      126   0%      54     0
5          124      0      124   0%      73     0
6          131      0      131   0%     278     0
7          202      1      201   0%     374     0
8          237      0      237   0%     997     0
9          268      2      266   0%    1471     7
10         310      0      310   0%    3437    36
11         331      2      329   0%    5428    14
12         224      1      223   0%    5101   114
13         444      1      443   0%   10196     0
14         176      0      176   0%    4977     5
15         301      4      297   1%   13304     0
16         417      8      409   1%   21371     0
17         218      6      212   2%   11678     0
18         242      9      233   3%   12909   344
19         244     13      231   5%   13206  1107
20         229      8      221   3%   14929  5090
21          73     11       62  15%    4000  1279 
22          40     12       28  30%    1802   522 
23           6      2        4  33%     405   174 
24           9      3        6  33%     413   174 
25          16      5       11  31%     543   246 
26           1      1        0 100%     192   405 
27           8      7        1  87%     312    80 

I won't define this data, most is obvious or guesable except how I get the Level. Like I've said, they track lots of data to use in their decision making process.

Share this post


Link to post
Share on other sites

Then there are the poor snakes:

Overall  131902  129235  2667  97%  1641201  2703002

Thats 129k snakes they know they have killed!

Share this post


Link to post
Share on other sites
Then there are the poor snakes:

Overall  131902  129235  2667  97%  1641201  2703002

Thats 129k snakes they know they have killed!

161279[/snapback]

:)

 

How long have the ant's been back in action.....a week or so?

Share this post


Link to post
Share on other sites

Do they store data for specific individuals whom attack? or Players in general? If specific person then do you feel that the "swarm" effect could be done?

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×