2011-03-19T00:00:26 maybe, see if you can come up with an example 2011-03-19T00:01:05 first i'm talking about Fight method 1 2011-03-19T00:01:17 then i'll post a .gif and you tell me if got it wrong (again) :p 2011-03-19T00:04:36 here i posted the gif in place of the old one for fightin method 1 in my exotic rule thread 2011-03-19T00:04:43 basically it happens 2011-03-19T00:05:00 (how do i ascii draw in there ? ) 2011-03-19T00:05:20 x.x meets 2011-03-19T00:05:28 .o. 2011-03-19T00:05:35 in a corridor vertically 2011-03-19T00:05:42 so if you have map like 2011-03-19T00:06:05 ... 2011-03-19T00:06:12 |.| 2011-03-19T00:06:16 |.| 2011-03-19T00:06:23 |.| 2011-03-19T00:06:29 you can block that 2011-03-19T00:07:02 here the alone ant dies because he as pow 1/2 2011-03-19T00:07:11 whereas the two ennemies have power 1 2011-03-19T00:07:20 (to use the power metaphor :p ) 2011-03-19T00:07:44 you should post on the forum, I'm not the best person to talk to about this 2011-03-19T00:07:59 or wait till antimatroid gets here, he's always happy to argue his case :) 2011-03-19T00:10:24 i hope janzert will proof reading my thing before antimatroid points out i'm buggy :p 2011-03-19T00:10:43 haha 2011-03-19T00:12:17 *** bhasker has quit IRC (Quit: bhasker) 2011-03-19T00:17:43 ah tu es francais sigh ? :p 2011-03-19T00:17:53 I think every i near paris. 2011-03-19T00:17:57 Evry 2011-03-19T00:19:36 nope 2011-03-19T00:20:16 server nodes are liers then :p 2011-03-19T00:20:49 when xxx go against o it give x.x... 2011-03-19T00:20:54 sound weird 2011-03-19T00:21:33 i guess i would have done some mistakes again :'( 2011-03-19T00:24:04 a well now that i look frame by frame it seems coorect 2011-03-19T00:27:25 *** Stocha2 has joined #aichallenge 2011-03-19T00:28:29 *** Stocha has quit IRC (Ping timeout: 251 seconds) 2011-03-19T00:49:53 L0ud3en 2011-03-19T00:50:01 FARK 2011-03-19T00:50:11 fucking ubuntu 2011-03-19T00:50:19 * antimatroid goes and changes passwords 2011-03-19T00:56:27 ergh, i think i'm safe now 2011-03-19T00:56:29 that was shit 2011-03-19T00:56:42 *** Stocha2 has quit IRC (Quit: Page closed) 2011-03-19T00:57:11 *** kaemo has quit IRC (Ping timeout: 240 seconds) 2011-03-19T00:59:18 sigh: have a conversation with me :P 2011-03-19T00:59:25 i want to get that off people's screens anyway ahah 2011-03-19T01:02:32 <_flag> antimatroid: Can I have a link to those non-randomish (I don't know how else to describe them) maps you posted recently? 2011-03-19T01:02:34 jmcarthur: chebyshev 2011-03-19T01:03:47 _flag: the maps or the map gen? 2011-03-19T01:03:59 the mapgen is rather messy, i'd like to clean that up first 2011-03-19T01:04:03 http://pastebin.com/cgk3adBk 2011-03-19T01:04:06 there's some such maps 2011-03-19T01:04:24 they're just made with a whole bunch of random walks 2011-03-19T01:04:26 <_flag> Yeah that's what I was looking for. 2011-03-19T01:04:38 <_flag> Is that what the final maps are going to look like or are you still deciding? 2011-03-19T01:05:33 we haven't had any serious bots made yet, so we have no idea what will work best 2011-03-19T01:05:56 expect the map gen to change even from the start of the contest, although hopefully we can cast a wide net and bring it in early in this contest 2011-03-19T01:06:13 we're going to try asymmetric maps too 2011-03-19T01:06:21 i'm going to have a go at making some reasonably fair ones today 2011-03-19T01:06:54 <_flag> okay, I'm writing sort of a preliminary phase of a serious bot now so that's why I'm wondering 2011-03-19T01:07:10 i would advise against doing too much serious stuff before we lock more rules down 2011-03-19T01:07:18 and or parameters 2011-03-19T01:07:29 <_flag> Yeah, I'm avoiding battle resolution or anything that's up in the air 2011-03-19T01:07:35 or don't complain when what you wrote doesn't work :) 2011-03-19T01:07:40 <_flag> I wont :) 2011-03-19T01:11:07 *** kaemo has joined #aichallenge 2011-03-19T01:35:23 antimatroid: I too have had focus issues with ubuntu... 2011-03-19T01:35:44 McLeopold: it was cause i logged on and thought it hadn't, so went for round 2 2011-03-19T01:35:52 but it had in fact logged in, i think i've changed anything important 2011-03-19T01:36:01 most of my important things don't use that password anyway 2011-03-19T01:36:22 well, unlocked 2011-03-19T01:39:16 *** skynetz has quit IRC (Quit: .) 2011-03-19T01:50:27 mcleopold: i've got both my random and random_walk map gens working fast as shit now 2011-03-19T01:50:35 i'm going to do asymmetric ones tonight 2011-03-19T02:07:06 antimatroid: haha 2011-03-19T02:07:27 i'm going to do both random and random walks for that too 2011-03-19T02:07:43 antimatroid: a colleague of mine at work managed to box his setup so much that everything he typed was echoed in irc 2011-03-19T02:07:54 for random walks, i'll do what i am now, but repeatedly start each walk in the same symmetric position in each players start places 2011-03-19T02:08:08 sigh: that would be horrid :P 2011-03-19T02:08:43 it was funny :) 2011-03-19T02:09:49 antimatroid: also, are you ok with the symmetric food thing? I will push it if you are 2011-03-19T02:10:34 I changed it so that it no longer iterates over the entire map, but it didn't change the performance 2011-03-19T02:26:12 sigh: i haven't run the engine, but push it for now 2011-03-19T02:26:19 if it's broken it can be fixed later 2011-03-19T02:29:42 aichallenge: sigh epsilon * r329a384 / ants/ants.py : Change do_food_symmetric to match antimatroid's spec - http://bit.ly/eREU4h 2011-03-19T02:29:43 aichallenge: sigh epsilon * r398df47 / ants/ants.py : Store pending_food in a dictionary so that we don't need to iterate over the entire map - http://bit.ly/eoFsBF 2011-03-19T02:29:46 aichallenge: sigh epsilon * rb2fdc07 / ants/ants.py : Merge branch 'symmetric-food' into epsilon - http://bit.ly/dTlmMl 2011-03-19T02:30:46 i'm curious as to the difference in speed for battle options 2011-03-19T02:30:52 but 1 is broken for current engine yeah? 2011-03-19T02:31:00 not sure 2011-03-19T02:31:14 once i've got asymmetric maps done i'll take a look at some of the engine stuff 2011-03-19T02:31:26 except my python coding is horrible 2011-03-19T02:31:30 in regards to performance, we can optimise once the specs are down 2011-03-19T02:31:43 what do you want to do in the engine? 2011-03-19T02:31:55 ^^ that, speed things up :P 2011-03-19T02:32:38 don't worry about that until everything else is sorted out 2011-03-19T02:33:29 it's more important to have it clear, well-defined and bug free right now 2011-03-19T02:35:12 yeah fair call 2011-03-19T02:35:26 i need to go through and clean up the specs page 2011-03-19T02:35:37 i've sort of being trying to hold that off for things to get clearer too 2011-03-19T02:35:47 i don't want to revise things too many times, it's a bit painful 2011-03-19T02:36:01 :) 2011-03-19T02:36:04 plus i've been busy :P 2011-03-19T03:11:21 http://pastebin.com/ifAYXrNi 2011-03-19T03:11:26 some small asymmetric random walk maps 2011-03-19T03:28:59 sigh: how are you finding your basis set 2011-03-19T03:29:08 i just realised when making my map generator that I need to get a specific one 2011-03-19T03:29:16 what do you mean? 2011-03-19T03:29:35 i need to paint out from a player and find the basis with minimum average distance to that player 2011-03-19T03:29:38 the code should be pretty clear either way 2011-03-19T03:29:38 well, close enough 2011-03-19T03:29:53 not just start iterating through the grid and pick elements that haven't been touched yet 2011-03-19T03:30:32 i'm writing a find_basis function now, i'll pastebin it when i'm done 2011-03-19T03:30:37 ok 2011-03-19T03:31:33 but this function is what I am doing to find the things: https://github.com/sigh/aichallenge/blob/symmetric-food/ants/ants.py#L667 2011-03-19T03:31:50 if anything is unclear about that, let me know 2011-03-19T03:39:23 http://pastebin.com/GnTU9QJp 2011-03-19T03:40:33 ergh, sorry about the lack of highlighting 2011-03-19T03:40:43 http://pastebin.com/pr1u9YWL 2011-03-19T03:41:22 what does this return? 2011-03-19T03:42:23 a set of squares around player 0 (a_loc) that never translate to each other but all of them translate to every location on the map 2011-03-19T03:42:58 yes, but what does it mean? 2011-03-19T03:43:00 so then when spawning food symmetrically, i would order that set, then go through and place land in that square and each of it's translated locs 2011-03-19T03:43:13 it is just arbitrary, or does it relate to player positions in anyway 2011-03-19T03:43:22 for example, you are using a stack, not a queue 2011-03-19T03:43:33 it gives you (i think) one of the basises that minimises the average distance to player a 2011-03-19T03:43:48 i should be using a queue, shit my bad 2011-03-19T03:43:55 ahhh 2011-03-19T03:43:59 ok, makes more sense now :) 2011-03-19T03:44:00 i think i'm doing that everywhere aha 2011-03-19T03:44:35 actually, i'm not sure it matters 2011-03-19T03:44:54 stack will give some wierd mutated blob of an area 2011-03-19T03:45:04 ah yeah it would 2011-03-19T03:45:16 it doesn't matter for other things? 2011-03-19T03:45:25 depends what the other things are 2011-03-19T03:45:25 it probably does, hmm 2011-03-19T03:45:28 yeah 2011-03-19T03:47:17 btw, instead of "while stack != []:" just use "while stack:" and "if foo == False:" => "if not foo:" 2011-03-19T03:47:55 in general don't compare things to [], False, True, empty, etc 2011-03-19T03:54:48 either way, how does the engine know what your basis set it, and also, this will mean that much of the map is not spanned by the basis? 2011-03-19T03:55:07 ^^ antimatroid 2011-03-19T04:02:49 http://pastebin.com/hCidri3S 2011-03-19T04:03:18 err i forgot to remove a map worry, it partitions the map and takes one of the sets 2011-03-19T04:03:47 you would probably want to do yours with wall blocking 2011-03-19T04:04:08 you will cover the entire map too i think 2011-03-19T04:10:27 *** Stocha has joined #aichallenge 2011-03-19T04:13:44 *** Stocha has quit IRC (Client Quit) 2011-03-19T04:14:00 *** delt0r___ has joined #aichallenge 2011-03-19T04:15:53 *** delt0r_ has quit IRC (Ping timeout: 255 seconds) 2011-03-19T04:18:35 *** delt0r___ has quit IRC (Ping timeout: 255 seconds) 2011-03-19T05:11:28 *** Stocha has joined #aichallenge 2011-03-19T05:14:37 *** amstan has quit IRC (Ping timeout: 250 seconds) 2011-03-19T05:38:04 *** delt0r_ has joined #aichallenge 2011-03-19T05:42:37 Stocha: i have started making asymmetric maps, it's hard to make them reasonably fair 2011-03-19T05:42:57 i'm just cleaning up my symmetric code, then i'll start working on my basis idea with asymmetric 2011-03-19T05:52:16 * antimatroid thinks 120x120 might be the magic number for dimensions if we end up using symmetric maps 2011-03-19T05:53:14 you can have 2-6 players then and not be giving people any information about how many players there might be or r,ctranslate 2011-03-19T05:54:26 actually, you can do that on 60 2011-03-19T05:55:13 so you could have {60,120,180}x{60,120,180} with no_players in {2,3,4,5,6} and not give people any information about no_players or r/ctranslate just off the number of rows and cols 2011-03-19T05:56:31 well, they could work out which no_players has more possible starting positions, but bleh by then 2011-03-19T06:23:36 *** mceier has joined #aichallenge 2011-03-19T06:37:02 *** Stocha has quit IRC (Ping timeout: 252 seconds) 2011-03-19T06:48:30 antimatroid: why is the default spawnradius = 2? 2011-03-19T06:48:43 ask mcleopold? :P 2011-03-19T06:48:48 ie, why spawn on diagonals? 2011-03-19T06:48:50 we were using smaller values before 2011-03-19T06:48:51 heh 2011-03-19T06:49:20 are you changing code atm? 2011-03-19T06:49:20 just that with 2 you can spawn through walls, if the wall is on a diagonal 2011-03-19T06:49:25 i might push my symmetric map gen 2011-03-19T06:49:40 I'm just rewriting do_attack_occupied properly 2011-03-19T06:49:41 spawning and battle can happen over water 2011-03-19T06:49:56 since everyone is talking about it 2011-03-19T06:50:00 i wouldn't mind spawn =1, although i vaguely remember there maybe being a problem with that 2011-03-19T06:50:06 what I asked you has nothing to do with my rewrite 2011-03-19T06:50:31 can i push now, or does that make things annoyingly messy? 2011-03-19T06:51:49 eh? are you touching the engine? 2011-03-19T06:52:33 ^^ antimatroid 2011-03-19T06:52:41 no 2011-03-19T06:52:50 i don't know git properly yet? :P 2011-03-19T06:52:55 then push as much as you like 2011-03-19T06:53:22 if you are working on files that no one else is touching then there is never a problem 2011-03-19T06:53:27 ah okay cool 2011-03-19T06:53:34 even if you are working on the same file, git is very good at merging 2011-03-19T06:54:00 and if there are conflicts you probably want to push first so that the other guys has to resolve the conflicts and not you :P 2011-03-19T06:54:40 antimatroid: if you are not busy can you have a quick look at do_attack_occupied: https://github.com/sigh/aichallenge/blob/attack_rewrite/ants/ants.py#L449 2011-03-19T06:55:21 I have other changes elsewhere I want to make before I push, but it would be nice if I can get your thoughts on this one 2011-03-19T06:59:52 sigh: in a minute, first of all i messed things up 2011-03-19T07:00:01 heh 2011-03-19T07:00:27 i went and commited stuff locally before pulling, now "Your branch is ahead of 'origin/epsilon' by 2 commits." when i call git status 2011-03-19T07:00:31 how do i fix? :P 2011-03-19T07:00:44 lol, they're playing ship to shore theme song on jjj 2011-03-19T07:01:07 well, sounded like it anyway 2011-03-19T07:01:35 hmm, i can think of an option, delete my local git and re pull everything 2011-03-19T07:01:52 easiest? if not slightly over the top :P 2011-03-19T07:03:49 antimatroid: that should be expected if you have local commits 2011-03-19T07:03:52 what are you trying to do? 2011-03-19T07:04:46 *** needsch has joined #aichallenge 2011-03-19T07:04:55 "Your branch is ahead of 'origin/epsilon' by 2 commits." just means that you have 2 commits in your local repo that haven't been pushed up to origin/epsilon 2011-03-19T07:07:42 *** antimatroid has quit IRC (Ping timeout: 264 seconds) 2011-03-19T07:16:50 *** antimatroid has joined #aichallenge 2011-03-19T07:17:21 sigh: sorry, nothing was going through, your logic seems right to me 2011-03-19T07:17:40 are you talking about my code? 2011-03-19T07:17:47 although i think your naming of a variable "power" that is the reciprocal of what green tea defined it as is a little confusing 2011-03-19T07:17:48 yeah 2011-03-19T07:18:12 what would you name it, I'm open for suggestions 2011-03-19T07:18:17 I couldn't think of a good name 2011-03-19T07:19:00 enemies 2011-03-19T07:19:01 min_enemy_enemies? 2011-03-19T07:19:05 that isn 2011-03-19T07:19:11 t amazing, but slightly more descriptive 2011-03-19T07:19:51 min_enemy_enemies is confusing :P 2011-03-19T07:20:12 yeah 2011-03-19T07:20:17 maybe a bit better though 2011-03-19T07:20:28 i'm pretty sure that's the bit that confuses people 2011-03-19T07:20:35 the enemies enemies part 2011-03-19T07:21:52 everyone seems fine going up to the point of counting up enemies in range, then you say now they die if they have geq as many enemies as an enemy in range has and they're like hitler "wtf, you just made that up didn't you" and then jmcarthur is like yeah, actually 2011-03-19T07:22:02 haha 2011-03-19T07:22:17 and then and then and then :) 2011-03-19T07:22:26 i understand it (obviously, since I just coded it), but I don't fully understand the rational behind it 2011-03-19T07:23:08 you can't survive the battle if you are overpowered 2011-03-19T07:23:18 that would be an intuitive rationale? 2011-03-19T07:23:40 yeah, but I don't get why this equates with overpowered 2011-03-19T07:24:04 you have less ants in the battle 2011-03-19T07:24:18 I mean, something like #num_enemies > #num_friends is closer to what I imagine is the meaning of overpowered 2011-03-19T07:24:22 it's a bit weird, but it results in cool strategies 2011-03-19T07:24:40 yeah, but that doesn't block collisions :P 2011-03-19T07:24:51 block collisions? 2011-03-19T07:25:18 with battle radius greater than like 2, you can't have enemies collide 2011-03-19T07:25:23 (depending on food spawning) 2011-03-19T07:25:39 with options 1 or 2 2011-03-19T07:25:58 you might be onto something though 2011-03-19T07:26:04 we could just allow collisions then do that 2011-03-19T07:26:22 i could probably be happy to go to that, although i still think option 1 would be awesome 2011-03-19T07:26:38 collisions current eliminate ants before the attacks start 2011-03-19T07:26:46 it also means your ants need to be right in the fight, not just backing a single ant up 2011-03-19T07:27:26 which option? 2011-03-19T07:27:26 i still want different information about collided and battled dead ants 2011-03-19T07:27:36 option 1 vs your option above 2011-03-19T07:28:22 i don't care for information about ants that died during a collision, but i do for ants that died during battle, but currently to work out what ants died from which i need to support more than one ant per square 2011-03-19T07:28:54 i don't understand why mcleopold is opposed to changing the line identifier for those 2011-03-19T07:29:23 *** chris__0076 has joined #aichallenge 2011-03-19T07:31:42 *shrug* 2011-03-19T07:32:07 *** Chris_0076 has quit IRC (Ping timeout: 255 seconds) 2011-03-19T07:32:44 bleh my internet is being annoying 2011-03-19T07:33:00 i can't even authenticate my ssh thing with github atm, it just times out 2011-03-19T07:36:34 *** Stocha has joined #aichallenge 2011-03-19T07:40:35 ennemy surrouding a friendly unit i name "weakness". Although i guess that naming it "number_of_surrounding_ennemies" would be fine too :p 2011-03-19T07:41:18 *** antimatroid has quit IRC (Ping timeout: 264 seconds) 2011-03-19T07:44:24 *** antimatroid has joined #aichallenge 2011-03-19T07:45:11 so you die one of your ennemies is as weak or less weak than you. 2011-03-19T07:45:49 although i don't like options 1, i find it to easy onto the going at war strategie. Compared to option 2 with distance 0 (aka ant dies when on same square) 2011-03-19T08:05:20 Stocha: have you fixed your animations? 2011-03-19T08:05:23 i want to see them :P 2011-03-19T08:24:21 *** helo_ has joined #aichallenge 2011-03-19T08:29:36 *** Frontier has joined #aichallenge 2011-03-19T08:44:42 i have another version yes 2011-03-19T08:44:45 it's online now 2011-03-19T08:44:53 feel free to pick up the bugs :p 2011-03-19T08:45:11 i reused the old post though 2011-03-19T08:45:21 and didn't care illustrating the random fighting anymore. 2011-03-19T08:45:36 i think Rule2/ 0 distance is superior anyway :p 2011-03-19T08:46:12 I can generate whatever animation setting you need, feel free to ask 2011-03-19T08:46:21 (send a private message on the forum or just type in there :p ) 2011-03-19T08:47:34 I don't think you would have much luck sending people messages on the forums 2011-03-19T08:47:42 it's not a place many people keep much of an eye on 2011-03-19T08:48:29 yeah, i figured that after having typed it in :p 2011-03-19T08:48:54 The occasionnal wanderer would hang around the forum though. So it is important. 2011-03-19T08:49:34 thoses games are kinda hypnotic, i spend half my day staring blankly at them :p 2011-03-19T08:49:49 I really should do something about it :pp 2011-03-19T08:51:29 i learned only yesterday that there was a log for the tchat also. That make it total different. 2011-03-19T08:51:39 It should be emphasized 2011-03-19T09:05:37 i guess i need to score the games somehow now. In order to compare bots strategies and consequencyes of fighting rules more rationnaly 2011-03-19T09:06:00 let's do just that then ? yeah i agree. Me too. 2011-03-19T09:07:09 aichallenge: sigh epsilon * r41fdf7d / ants/ants.py : Rewrite do_attaack_occupied - http://bit.ly/fUqBjq 2011-03-19T09:07:12 aichallenge: sigh epsilon * r51989e3 / ants/ants.py : find_enemy does not require a range of distances - http://bit.ly/hMbVmi 2011-03-19T09:07:15 aichallenge: sigh epsilon * rcc66a7a / ants/ants.py : Rewrite do_attack_closest, in particular fix scoring - http://bit.ly/e2mjEl 2011-03-19T09:07:17 aichallenge: sigh epsilon * r19b3b31 / ants/ants.py : Better variable names for do_attack_* methods - http://bit.ly/fiw4Oz 2011-03-19T09:07:20 aichallenge: sigh epsilon * rb5040da / ants/ants.py : Made do_attack_closest code shorter and cleaner - http://bit.ly/gUavaj 2011-03-19T09:12:05 *** olexs has joined #aichallenge 2011-03-19T09:20:35 aichallenge: sigh epsilon * rbba634c / ants/ants.py : Do killing of ants in the inner loop of do_attack_closest with a note explaining why this is order-independent - http://bit.ly/fEJikt 2011-03-19T09:20:55 ok, finished rewriting the attack methods 2011-03-19T09:21:41 now both methods are implemented properly, I think... and hopefully the code is now clear without compromising performance 2011-03-19T09:22:52 cool :) 2011-03-19T09:24:27 *** helo_ has quit IRC (Quit: Page closed) 2011-03-19T09:32:46 Stocha: i don't understand how you think option 2 with attack radius = 0 is more challenging than option 1? 2011-03-19T09:34:58 option 2 can't do radius = 0, colliding ants are already killed off before the attack phase 2011-03-19T09:35:47 that's the point :) 2011-03-19T09:36:16 Option2/ rad=0 aka Ant dies in same square 2011-03-19T09:36:21 Well, it's more challenging 2011-03-19T09:36:33 You can't just shoot in straight line and hope to always hit. 2011-03-19T09:36:49 you have to target your opponent ants, and track them somehow 2011-03-19T09:53:13 <_flag> Uh... 2011-03-19T09:53:41 <_flag> By track them you mean move in their general direction? 2011-03-19T10:08:20 i mean trying to catch them 2011-03-19T10:08:40 if you only move in there direciton you are not sure to hit with Option2/Rad0 2011-03-19T10:09:41 the best is probably to go with a few ant bunching together in fact 2011-03-19T10:10:16 Also i made some tests. With 200 turn 80x80 Option2Rad0 currently runs Tens times faster 2011-03-19T10:10:35 with 500 turn 80x80 it is more like hundreds of time faster or more. 2011-03-19T10:10:40 errrr... 2011-03-19T10:10:47 (that was with 4 bots about same strength also) 2011-03-19T10:10:50 it's not more challenging than option 1 2011-03-19T10:11:00 i fee it is. 2011-03-19T10:11:02 feel 2011-03-19T10:11:12 but that's my opinion :) 2011-03-19T10:11:31 sigh: i liked join so much i wrote my own for c++ :P 2011-03-19T10:11:33 I find it harder to organize efficiently the killing with Rule2/Rad0 2011-03-19T10:11:47 what is join ? 2011-03-19T10:12:03 my version, join(char, vector) 2011-03-19T10:12:18 that's a function or a bot ? :p 2011-03-19T10:12:22 no 2011-03-19T10:12:44 it's for placing the char value between each of the vector elements and returning it all as a string 2011-03-19T10:12:57 antimatroid: http://www.boost.org/doc/libs/1_46_1/doc/html/string_algo/reference.html#header.boost.algorithm.string.join_hpp 2011-03-19T10:13:00 it's something i do often and is messy to do 2011-03-19T10:13:10 sigh: i don't like varying from std 2011-03-19T10:13:15 hehe 2011-03-19T10:13:17 or any languages standard library 2011-03-19T10:13:44 not unless i really really have to, or it's to use something, not to set up something i can use into the future 2011-03-19T10:14:20 I posted some stat on winning rate (most end at the end) of my three bots playing on 4 player games. 2011-03-19T10:14:29 in my exotic rules thread 2011-03-19T10:15:27 *** sigh has quit IRC (Remote host closed the connection) 2011-03-19T10:15:35 Conclusion : when there is a STRONG difference in level, a hundred games make that crystal clear (randomBot has 0 win with two instance running in each games :p ) 2011-03-19T10:17:02 that thing is php to me sigh :p 2011-03-19T10:18:29 *** sigh has joined #aichallenge 2011-03-19T10:18:53 sigh, do you have the option of Rule2/Radius=0 ? 2011-03-19T10:19:06 because that's the only one i like in rule 2 :p 2011-03-19T10:19:30 Stocha: no, but it is easy to modify the code to do so 2011-03-19T10:19:55 just set the attack function to a noop :P 2011-03-19T10:19:59 If you run intense experiments, really hope someone will dig into that option :p 2011-03-19T10:20:31 cause i really like it better (since it make testing so much pleasant and speedy also :p ) 2011-03-19T10:20:48 and you don't have to pull out your hair wondering if you made it right hehe. 2011-03-19T10:21:39 Stocha it is also the same as option 1 with radius 0 so just do: --attack occupied --attackradius2 0 2011-03-19T10:22:36 okay. so it is in :p 2011-03-19T10:23:15 although i won't spend the time to set up a pithon / etc server in the comming day i guess. I'll rely on others reporting. 2011-03-19T10:23:59 anyway, I'm going to sleep 2011-03-19T10:24:00 night 2011-03-19T10:24:21 *** sigh has quit IRC (Remote host closed the connection) 2011-03-19T10:26:12 it isn't option 1 with radius 0 2011-03-19T10:26:53 it is the case that the engine will already kill all colliding ants, but that isn't option 1 with r=0 2011-03-19T10:27:26 Stocha: have you even read what the scoring method is? 2011-03-19T10:28:41 when i did it wasn't finnalized 2011-03-19T10:29:04 or are you talking about ranking ? 2011-03-19T10:29:19 I'm mostly trying to see how noisy the game is :p 2011-03-19T10:29:42 let me check again your spec 2011-03-19T10:31:30 oh yeah. I just don't understand it then 2011-03-19T10:31:40 and it hardly apply to Option2/Radius0 i guess. 2011-03-19T10:31:56 So i'll keep using number of ants at the end of the game. 2011-03-19T10:33:49 that is pretty much the scoring method that's been decided upon 2011-03-19T10:33:55 it's been like that for quite some time 2011-03-19T10:34:27 it makes the most sense with option 1 i think, but i don't really count that as a reason for using 1 2011-03-19T10:35:34 I guess in most cases it will be equivalent to counting the number of ant at the end of the game anyway. hopefully 2011-03-19T10:36:04 because that's certainly the scoring function i will use if i try to make trees or anything smart. 2011-03-19T10:52:57 you would want to do a little more than that 2011-03-19T10:53:17 i have extravagent ideas for my tree, we'll see how they end up going 2011-03-19T11:02:35 *** ravic has quit IRC (Ping timeout: 252 seconds) 2011-03-19T11:03:36 *** ravic has joined #aichallenge 2011-03-19T11:08:14 *** Stocha has quit IRC (Quit: Page closed) 2011-03-19T11:09:05 i have no ideas 2011-03-19T11:09:24 i haven't had much time to think about this stuff 2011-03-19T11:58:33 *** chris__0076 is now known as chris_0076 2011-03-19T12:13:52 *** McLeopold has quit IRC (Quit: Leaving.) 2011-03-19T12:16:05 *** delt0r___ has joined #aichallenge 2011-03-19T12:17:28 *** delt0r_ has quit IRC (Ping timeout: 255 seconds) 2011-03-19T13:01:00 *** amstan has joined #aichallenge 2011-03-19T13:01:00 *** ChanServ sets mode: +o amstan 2011-03-19T13:15:54 *** olexs1 has joined #aichallenge 2011-03-19T13:17:14 *** olexs has quit IRC (Ping timeout: 248 seconds) 2011-03-19T13:33:10 *** Naktibalda has joined #aichallenge 2011-03-19T14:03:51 *** chris_0076 has quit IRC (Read error: Connection reset by peer) 2011-03-19T14:04:02 *** chris_0076 has joined #aichallenge 2011-03-19T14:10:14 *** boegel has joined #aichallenge 2011-03-19T14:16:55 *** Stocha has joined #aichallenge 2011-03-19T14:24:27 *** Stocha has quit IRC (Quit: Page closed) 2011-03-19T14:37:41 *** sigh has joined #aichallenge 2011-03-19T15:01:41 *** olexs1 has quit IRC (Quit: Leaving.) 2011-03-19T15:02:19 *** _flag <_flag!~flag@69-165-173-172.dsl.teksavvy.com> has quit IRC (Quit: Lost terminal) 2011-03-19T15:50:38 *** McLeopold has joined #aichallenge 2011-03-19T15:50:46 *** McLeopold has left #aichallenge 2011-03-19T15:50:54 *** McLeopold has joined #aichallenge 2011-03-19T16:01:19 *** Frontier has quit IRC (Ping timeout: 240 seconds) 2011-03-19T16:01:57 jmcarthur: if you used a continous torus instead of a torus, you'd possibly be able to define some notion of scalar multiplication 2011-03-19T16:02:11 not really sure how you'd do it, but might work, then you'd probably end up with a vector space 2011-03-19T16:02:26 instead of a discrete torus* 2011-03-19T16:02:52 yes 2011-03-19T16:02:56 i think that might form a vector space 2011-03-19T16:03:15 i generally like continuous things better. they usually benefit from some nicer properties 2011-03-19T16:03:46 *** Frontier has joined #aichallenge 2011-03-19T16:04:18 hmm, i don't mind, i used to say that but i've had a lot of fun with finite stuff too 2011-03-19T16:04:33 mostly because graph theory is so much fun 2011-03-19T16:08:09 *** mceier has quit IRC (Quit: leaving) 2011-03-19T16:12:02 *** Accoun has quit IRC () 2011-03-19T16:18:34 *** sigh has quit IRC (Remote host closed the connection) 2011-03-19T16:18:41 *** boegel has quit IRC (Quit: Leaving) 2011-03-19T16:21:15 *** choas has joined #aichallenge 2011-03-19T16:24:22 *** olexs has joined #aichallenge 2011-03-19T16:26:08 *** Accoun has joined #aichallenge 2011-03-19T16:26:13 *** me0w has joined #aichallenge 2011-03-19T16:50:03 *** me0w has quit IRC (Quit: leaving) 2011-03-19T16:57:11 *** davidd has quit IRC (Read error: Operation timed out) 2011-03-19T16:57:16 *** davidd has joined #aichallenge 2011-03-19T17:28:17 *** choas has quit IRC (Quit: leaving) 2011-03-19T17:42:00 *** Kingpin13 has joined #aichallenge 2011-03-19T17:50:54 *** antimatroid has quit IRC (Quit: Leaving.) 2011-03-19T17:53:51 *** antimatroid has joined #aichallenge 2011-03-19T18:03:40 this is silly :\ 2011-03-19T18:03:43 git wont work 2011-03-19T18:03:58 antimatroid: problem? 2011-03-19T18:04:08 i've changed my api token since changing the password and put in a new ssh key 2011-03-19T18:04:28 amstan: i accidentally typed my password in here yesterday when i was logging in 2011-03-19T18:04:29 api token? 2011-03-19T18:04:33 now i can't login 2011-03-19T18:04:38 well i can login 2011-03-19T18:04:39 what api token? 2011-03-19T18:05:03 when you set up git you have an api token that you configure git with 2011-03-19T18:05:09 that changes if you change your password 2011-03-19T18:07:21 *** Stocha has joined #aichallenge 2011-03-19T18:13:31 *** amstan_ has joined #aichallenge 2011-03-19T18:13:31 *** ChanServ sets mode: +o amstan_ 2011-03-19T18:14:34 *** amstan_ has quit IRC (Client Quit) 2011-03-19T18:14:35 *** amstan__ has joined #aichallenge 2011-03-19T18:14:35 *** ChanServ sets mode: +o amstan__ 2011-03-19T18:14:35 antimatroid: The API token is for the GitHub API only – I don't think it's involved in the basic stuff (e.g. git pull/push) at all. 2011-03-19T18:16:06 jbroman: maybe, whatevers happening i can't pull or push :\ 2011-03-19T18:16:12 or authenticate with the ssh server 2011-03-19T18:16:19 antimatroid: Your SSH key is correct? 2011-03-19T18:16:27 yes, i just redid it before 2011-03-19T18:16:52 how do you set it at the command line? 2011-03-19T18:16:57 Set what? 2011-03-19T18:17:04 like i did something there the other day, maybe that's screing it 2011-03-19T18:17:17 Your SSH key is stored in ~/.ssh 2011-03-19T18:17:24 yeah i know that 2011-03-19T18:17:41 but the other day someone told me to add it at the command with something line ssh-key "my passphrase" 2011-03-19T18:17:50 but my passphrase is still the same 2011-03-19T18:20:45 nevermind, i'm retarded 2011-03-19T18:20:54 Hmm? 2011-03-19T18:21:02 i somehow didn't copy my email to the end of the ssh key 2011-03-19T18:21:22 i don't know how one does that with a copy paste :P 2011-03-19T18:25:10 *** amstan__ has quit IRC (Ping timeout: 255 seconds) 2011-03-19T18:26:26 *** amstan has quit IRC (Ping timeout: 250 seconds) 2011-03-19T18:29:04 *** Stocha has joined #aichallenge 2011-03-19T18:29:43 hello there what's up ? 2011-03-19T18:31:02 WTF 2011-03-19T18:31:14 Stocha: (sorry not you) 2011-03-19T18:31:23 jbroman: the website lost my email off the end again :\ 2011-03-19T18:31:50 antimatroid: And it's still not letting you connect, huh? 2011-03-19T18:32:03 it let me connect 2011-03-19T18:32:14 I think it automatically takes off the email address. 2011-03-19T18:32:24 (Which, IIRC, is only intended as a human-readable label.) 2011-03-19T18:32:25 i pulled stuff etc. then i went to push my symmetric map gen then bam no love again 2011-03-19T18:32:36 Wait, it worked and then stopped? 2011-03-19T18:32:36 maybe it is just my internet being really shitty atm 2011-03-19T18:32:39 yes 2011-03-19T18:32:48 If this persists, contact GH support. 2011-03-19T18:33:15 Does "ssh git@github.com" work? 2011-03-19T18:33:19 git sound like a pain to use :p 2011-03-19T18:33:24 aichallenge: Nick Ham epsilon * r1a944f3 / (ants/mapgen/symmetric_mapgen.py ants/mapgen/mapgen.py): added the random walk symmetric map generator - http://bit.ly/hWvLhN 2011-03-19T18:33:26 i think my internet screwed up there 2011-03-19T18:33:40 (It should read you your git username back and nothing else.) 2011-03-19T18:33:50 jborman: that wasn't working either, but did just then 2011-03-19T18:33:53 Stocha: Not nearly as much as CVS or SVN. 2011-03-19T18:33:55 can you build up .gif in python easily ? 2011-03-19T18:34:05 Stocha: it's not too bad (at least what i know so far) 2011-03-19T18:34:12 Stocha: Sure, there are imaging libraries. 2011-03-19T18:34:19 have someone (me or mcleopold) walk you through the setup 2011-03-19T18:34:46 would it be easy to show some .gif of the current engine work and starter bot behaviors on the forums ? 2011-03-19T18:35:12 like what? 2011-03-19T18:35:38 like what what ? 2011-03-19T18:35:52 like what what what? 2011-03-19T18:35:52 gifs don't give you much information 2011-03-19T18:35:56 it moves too fast to see anything 2011-03-19T18:36:08 you can go frame by frame 2011-03-19T18:36:24 i can do it. (because the soft is preinstalled but well :p ) 2011-03-19T18:37:06 http://pastebin.com/gTXP4mhf 2011-03-19T18:37:06 I think it would be cool to see what you guys are woking on, at, to be able to comment or something. 2011-03-19T18:37:13 those are maps i just made with what i just pushed 2011-03-19T18:37:33 yeah, but ascii reading is hard on the brain of the feeble minded :p 2011-03-19T18:37:51 ergh, sorry, dimensions are too large for pastebin 2011-03-19T18:37:56 although it is informative when you want to try hard. 2011-03-19T18:38:52 is the map mazy enough ? 2011-03-19T18:38:55 http://pastebin.com/HA6EfpUm 2011-03-19T18:38:57 attempt 2 2011-03-19T18:38:57 i can't tell 2011-03-19T18:39:21 the first part seems okay to me :p 2011-03-19T18:40:16 it seems to really like 3 player maps 2011-03-19T18:40:28 i should knock that up to 4 again, bleh :P 2011-03-19T18:41:13 i think i like it. 2011-03-19T18:41:20 but still a gif would be easier to read :p 2011-03-19T18:41:43 *** mceier has joined #aichallenge 2011-03-19T18:41:53 these are easier to make as a human 2011-03-19T18:42:44 now if you just would simplify the scoring and fighting ... and give a tcp server, i would try to put a bot online :p 2011-03-19T18:43:14 the scoring is good 2011-03-19T18:43:17 Although i still need to build a credible bot. 2011-03-19T18:43:36 The scoring i totally don't understand the why and how :p 2011-03-19T18:44:14 Tell me i shall be the only remaining player, that i understand 2011-03-19T18:44:31 tell me that i should try (have the most ant) and i may still understand. 2011-03-19T18:44:38 the scoring really only makes sense for option 1 2011-03-19T18:44:47 but if you have to keep some record per ant killed or something. I'm lost :p 2011-03-19T18:44:52 each ant involved in killing an enemy gets an equal proportion of the ants points 2011-03-19T18:45:20 that's unbelievably complicated. What does this rule bring to the table precisely ? 2011-03-19T18:45:36 Compared to "most ant win" ? 2011-03-19T18:45:44 you want to have more of your ants in each battle 2011-03-19T18:45:52 do you ? 2011-03-19T18:45:58 you do more work in killing an enemy, you get more points 2011-03-19T18:46:11 how do u prove that assertion ? 2011-03-19T18:46:19 if you have aa.b..c 2011-03-19T18:46:19 should a and c both get the same amount of points? 2011-03-19T18:46:22 i mean, if you are the only remaining you win anyway. 2011-03-19T18:46:31 if you got killed to early, you loose anyway. 2011-03-19T18:46:36 (i hope ...) 2011-03-19T18:46:36 no, you don't necessarily win if you are the last remaining colony 2011-03-19T18:46:50 if you sit in a corver and let everyone else kill each other, you probably wont win 2011-03-19T18:46:51 Are you sure of that ? 2011-03-19T18:46:52 in case of mutual suicide 2011-03-19T18:47:08 depending on the food bonus etc. 2011-03-19T18:47:21 although i think the food bonus could amlmost be scrapped 2011-03-19T18:47:43 But what make you think this rule has any practical sense ? 2011-03-19T18:47:52 i mean that is certainly not obvious to me. 2011-03-19T18:47:55 what do you mean by practical sense? 2011-03-19T18:48:05 I mean ensure some nice property 2011-03-19T18:48:11 an interesting objectif 2011-03-19T18:48:19 and a miningfull modelization. 2011-03-19T18:48:20 err what 2011-03-19T18:48:42 meaningfull modelization of the intresteing objective 2011-03-19T18:48:44 it's an ai contest, the idea is to get a strategically interesting game so that interesting ideas can be played around with and people can learn 2011-03-19T18:48:53 not to model something realistic 2011-03-19T18:49:12 So you want to model a game, that people will try to solve. 2011-03-19T18:49:31 lol, they wont solve it 2011-03-19T18:49:46 still, you want to able to build up a server easilly. And for people to understand the spec and be able ton confront them easilly. 2011-03-19T18:50:11 people can naively treat option 1 as get as many ants near an enemy as possible 2011-03-19T18:50:16 that's pretty easy to program for 2011-03-19T18:50:27 I mean, you can always come up with very twisted scoring and moving rules. But it is not that that make things interesting. 2011-03-19T18:50:41 they're not that twisted 2011-03-19T18:51:16 They would not, if they had been applyed for years, and everyone was happy with them. 2011-03-19T18:51:24 like starcraft rules or something. 2011-03-19T18:51:33 new rules had to start some time 2011-03-19T18:51:34 :\ 2011-03-19T18:51:38 they changed the rules a lot though, in the past 15 years. 2011-03-19T18:51:47 a fair bit of thought has been put into them 2011-03-19T18:51:52 such stand for diablo, or WarCraft online 2011-03-19T18:52:01 Though are by no mean sufficient. 2011-03-19T18:52:14 you need experiments, and user feed back. 2011-03-19T18:52:31 a lot of them. 2011-03-19T18:52:48 Stocah: path finding is important, but dead easy 2011-03-19T18:52:55 So the question would be : how to collect them fast and efficient :p 2011-03-19T18:53:14 I've seen so many games with AI poor at path finding. 2011-03-19T18:53:28 are all those people idiot ? (well it may be the case, but well) 2011-03-19T18:53:34 you can just paint outwards from ants to find the shortest path to a given location 2011-03-19T18:53:39 Have you a good AI path finder to show ? 2011-03-19T18:53:52 you can actually do that at the start for each ant over the whole grid and use that to backtrack a shortest path 2011-03-19T18:54:00 Working with thoses maps you showed here. 2011-03-19T18:54:14 it's the same algorithm i use everwhere 2011-03-19T18:54:17 Did u tryed it ? 2011-03-19T18:54:28 i've used it for many many things 2011-03-19T18:54:33 okay. 2011-03-19T18:55:13 I would be happier if you could show me though :p 2011-03-19T18:55:27 i hate to believe without first hand experience. 2011-03-19T18:55:40 you just add an ants location to a queue, then paint outwards (move to unaccessed land squares) from that and mark how many moves it's taken to get to there, then you can just track back from an objective square to squares with access 1 less till you get back to your ant for a shortest path 2011-03-19T18:56:17 But you have to be carefull that your ant don't step over each other also ? 2011-03-19T18:56:20 if you paint the whole map, you can take any land square and backtrack a shortest path 2011-03-19T18:56:40 You can solve it for a single ant maybe. 2011-03-19T18:56:50 but here you don't necessarilly know the map. 2011-03-19T18:56:56 yes, avoiding collisions is trivial, you may want to iteratively paint the "current" state after moving each ant 2011-03-19T18:56:57 and you have to care for hundreds of ants. 2011-03-19T18:57:08 Trivial, what do you mean ? 2011-03-19T18:57:20 you mean like solving go is trivial ? 2011-03-19T18:57:25 it's implemented in starter pack 2011-03-19T18:57:28 it's like not walking onto water 2011-03-19T18:57:30 because if you build the whole tree, the best move is obvious. 2011-03-19T18:57:33 don't walk onto a square containing an ant 2011-03-19T18:57:35 simple 2011-03-19T18:57:43 How is that simple ?? 2011-03-19T18:57:47 Stocha: no it isn't 2011-03-19T18:58:01 you don't always have a pure strategy nash equilibria (or a single one) for a game 2011-03-19T18:58:03 when you want to move hundreds of ants through tiny labyrinthic corridors 2011-03-19T18:58:17 For go it is. 2011-03-19T18:58:30 yet i've heard the game is far from trivial. 2011-03-19T18:58:44 Because in practice, people got no clue what to do :) 2011-03-19T18:58:49 you can either potentially miss valid moves with naive blocking 2011-03-19T18:58:52 or allow ant pushing 2011-03-19T18:59:15 you are talking about fighting rule there ? 2011-03-19T18:59:19 or path finding ? 2011-03-19T18:59:20 i am referring to potentially missing some moves for a trivial blocking avoidance 2011-03-19T18:59:40 collision avoidance** 2011-03-19T18:59:55 I don't know, collision avoidance don't seem trivial to me. 2011-03-19T19:00:03 maybe i'm just too inexperienced. 2011-03-19T19:00:11 what is your experience? 2011-03-19T19:00:30 I mean it's easy to do. But is it easy to do whie maintaining an efficient collony action 2011-03-19T19:00:43 it is intended that a first year uni student should be able to get started and make a simple bot 2011-03-19T19:00:43 well have some years of serving beers in a bar. 2011-03-19T19:01:23 that's it though, i don't agree with making the game so simple that it's easy to make a bot that will rank highly 2011-03-19T19:01:35 it makes the results too messy if all the bots are pretty much the same 2011-03-19T19:01:40 that i understand. And with the starter package, you just have to download them, and you already have a bot. 2011-03-19T19:02:02 yeah, and you really don't have to full handle the battle options if you want to do a simple bot 2011-03-19T19:02:08 But complicating the rule, doesn't make it so that making a top bot will be hard. 2011-03-19T19:02:09 just work on moving your ants towards your enemies 2011-03-19T19:02:18 no, it's not complicating the rule 2011-03-19T19:02:23 it will transform into implementing the rule without bug :p 2011-03-19T19:02:26 it's a rule we found that has really cool properties 2011-03-19T19:02:34 it's not hard to implement it 2011-03-19T19:02:53 The lighter the rule, the likier people will try to build tree and other neet stuff. 2011-03-19T19:02:53 the whole contest can partially be called one of the one with the best bugs 2011-03-19T19:03:12 tree's will be the rule for this 2011-03-19T19:03:21 if you rule take one full sec to solve only one potential move, that will let the bot only make simple choices. 2011-03-19T19:03:29 for ants close to fighting, depending on how large we allow the colonies to grow 2011-03-19T19:03:41 so there you want a rule that is easy to compute. 2011-03-19T19:03:46 option 2 is the slow one to compute 2011-03-19T19:03:48 1 is fairly fast 2011-03-19T19:03:55 also it makes the server go faster. 2011-03-19T19:04:03 yes, i agree with that 2011-03-19T19:04:14 it's one of the reasons i stated in the forums for preferring 1 to 2 2011-03-19T19:04:36 Counting ennemies in the radius of each friendly ant isn't fast. Unless you have nice optimization under your leaves. 2011-03-19T19:05:08 Killing ant arriving one same square, IS fairly fast. 2011-03-19T19:05:13 and simple to test. 2011-03-19T19:05:21 so you can go with your bot's ai, and tree solver. 2011-03-19T19:05:35 rather than wondering if your implementation of the fighting rule is conform. 2011-03-19T19:06:05 I implemented the fighting rule. And got it wrong. (hopefully it si right now, but i have no idea; And don't care to dig into it) 2011-03-19T19:06:08 yes, that's much faster, but it's boring for actual fighting 2011-03-19T19:06:16 I think heard you ran into the same trouble ! 2011-03-19T19:06:24 i didn't write it 2011-03-19T19:06:30 But how is rule 1 not boring ? 2011-03-19T19:06:36 i really miss that part totally. 2011-03-19T19:06:44 because you actually need to set up your front lines when fighting each othe 2011-03-19T19:06:50 it sure is boring to test. I know i tryed. 2011-03-19T19:06:54 and bunch up and everything i've stated a million times 2011-03-19T19:07:05 but you can just block. 2011-03-19T19:07:11 no you can't 2011-03-19T19:07:17 so the best starting position will own. 2011-03-19T19:07:35 blocking isn't fully possible and is really hard to do well 2011-03-19T19:07:41 It is possible to a sigle ant against two right ? 2011-03-19T19:07:48 kill 2011-03-19T19:07:51 i'm still expecting asymmetric maps to fail miserably tbh 2011-03-19T19:08:00 it is possible to kill a single ant without loosing any right ? 2011-03-19T19:08:05 yes 2011-03-19T19:08:15 what are the criteria for "failing" here ? 2011-03-19T19:08:27 but it's not possible to statically place your ants such that an enemy couldn't kill some of them coming from a particular direction 2011-03-19T19:08:29 I mean the practical one. One i could do some batch to test for. 2011-03-19T19:08:42 Yeah but the map gives constraint 2011-03-19T19:08:55 what if the map prevent coming from the right direction ? 2011-03-19T19:09:02 then you have full block. 2011-03-19T19:09:10 no, you misunderstand 2011-03-19T19:09:17 of the key point yes, but it is blocked; With two or three ants. 2011-03-19T19:09:25 i mean any direction, but you are going to be trying to block a particular side 2011-03-19T19:09:32 you come in from the back and you rip them to shreds 2011-03-19T19:09:37 but presumably that's their safe zone 2011-03-19T19:09:40 what if you can't 2011-03-19T19:09:46 can't what? 2011-03-19T19:09:51 what if there are no other path 2011-03-19T19:10:01 you have to go one exact path, and it is blocked. 2011-03-19T19:10:02 my point is they can't block you 2011-03-19T19:10:11 they can't block you 2011-03-19T19:10:13 not statically 2011-03-19T19:10:20 and dynamically is a guessing game, which is fine by me 2011-03-19T19:10:27 but your rule number 1 allow blocking. 2011-03-19T19:10:35 give me an example 2011-03-19T19:10:37 when the map is suited. 2011-03-19T19:10:41 a static example 2011-03-19T19:10:42 okay 2011-03-19T19:10:44 not a moving gif 2011-03-19T19:10:47 let b be an ant 2011-03-19T19:10:50 and a 2011-03-19T19:10:53 bbbb 2011-03-19T19:10:58 let . be a path 2011-03-19T19:11:04 and ? a wall 2011-03-19T19:11:09 % = wall 2011-03-19T19:11:13 b.b 2011-03-19T19:11:14 use the format of my maps i post 2011-03-19T19:11:20 they are valid map files 2011-03-19T19:11:20 %.% 2011-03-19T19:11:23 %.% 2011-03-19T19:11:25 %.% 2011-03-19T19:11:26 do it in pastebin 2011-03-19T19:11:37 no you have a, and you come frome soutgh 2011-03-19T19:11:44 i have no pastebin 2011-03-19T19:11:50 it's a website 2011-03-19T19:11:59 how do i go there ? 2011-03-19T19:12:00 you might be right with the current radius 2011-03-19T19:12:04 pastebin.com 2011-03-19T19:12:11 it doesn't depend on the raduis 2011-03-19T19:12:23 it does 2011-03-19T19:12:31 try blocking view view radius = 2 2011-03-19T19:12:39 what do i do in there ? 2011-03-19T19:12:50 view here is fighting raduis right ? 2011-03-19T19:13:33 ah crap, now i'm confused 2011-03-19T19:13:34 so we go for 4 square fighting radius ? 2011-03-19T19:13:41 maybe it does allow blocking 2011-03-19T19:13:53 there is a solution to that 2011-03-19T19:14:02 carve the maps with a 2x2 block 2011-03-19T19:14:11 I don'"t how you can avoid it, if an ant may be killed without killing at least another. 2011-03-19T19:14:20 (unless it's probabilistic) 2011-03-19T19:14:23 i mean the actual blocking 2011-03-19T19:14:38 i'm pretty sure you can't block passages of width > 2 2011-03-19T19:14:50 yeah, but i have to think hard to figure that it will work with the rule also :p 2011-03-19T19:14:56 ah maybe. 2011-03-19T19:15:02 but you still can block =1 2011-03-19T19:15:17 and what makes you think not having passage of size 1 is fun or challenging ? 2011-03-19T19:15:44 2 is still small too 2011-03-19T19:16:00 that would only need to be done if games were just stalling from everyone blocking 2011-03-19T19:16:14 but i think it'd be fine to allow small passage blocking at first and see what happens 2011-03-19T19:16:20 yeah, but that means that if you want to have a tricky map, you probably gone need it twice as large :p 2011-03-19T19:16:41 nah, i think it'd be alright 2011-03-19T19:16:51 Yeah, doing the blocking might not be easy to program in, or always usefull. 2011-03-19T19:16:53 you walk the block around 1 square at a time 2011-03-19T19:16:57 not 2 2011-03-19T19:18:04 I think it's quite a constrain. And it's only on the guess that rule 1 might be easy to calculate (which at least need a lot of time put in it i think) 2011-03-19T19:18:09 aichallenge: Marco Leise epsilon * r0555224 / (6 files in 3 dirs): added option to save current settings; clicking the timeline works now - http://bit.ly/dK2d2j 2011-03-19T19:18:44 so let me try to block a 2 space corridor then :p 2011-03-19T19:18:57 what is the fighting radius ? 2011-03-19T19:19:06 sqrt(5) atm 2011-03-19T19:19:12 what's that ? 2011-03-19T19:19:19 so 2 diamond with horse moves 2011-03-19T19:19:34 5*5 ? 2011-03-19T19:19:36 should i visualize that? :) 2011-03-19T19:19:53 Frontier: that's actually a pretty good idea 2011-03-19T19:20:01 ah 5 is the thing okay 2011-03-19T19:20:02 same with food a different tinge? 2011-03-19T19:20:10 Stocha: sqrt(5) 2011-03-19T19:20:19 attack radius^2 = 5 2011-03-19T19:20:21 yeah i need a picture :) 2011-03-19T19:20:34 i just can't draw that from my head :p 2011-03-19T19:20:41 unfortunately 2011-03-19T19:20:43 it was both on my bind for some time, but i need an algorithm to create only the outline of all ant's fight radius combined 2011-03-19T19:20:54 .vvv. 2011-03-19T19:20:55 vvvvv 2011-03-19T19:20:55 vvavv 2011-03-19T19:20:57 etc. 2011-03-19T19:21:06 .vvv. 2011-03-19T19:21:10 vvvvv 2011-03-19T19:21:16 vvvv 2011-03-19T19:21:24 no 2011-03-19T19:21:28 i didn't get it :p 2011-03-19T19:21:31 .vvv. 2011-03-19T19:21:35 vvvvv 2011-03-19T19:21:36 i got it :D 2011-03-19T19:21:39 Frontier: paint outwards 2011-03-19T19:21:39 .vvv. 2011-03-19T19:21:48 from all ants simultaneously 2011-03-19T19:21:59 then mark the square as attack square 2011-03-19T19:22:31 antimatroid: i think it is better to use outlines for these 2011-03-19T19:23:11 (i have fog of war already drawing shaded squares, maybe you have seen that) 2011-03-19T19:23:27 oh, here's an idea, just add a circle around each ants loc and have it as a clickable option to turn it on/off? 2011-03-19T19:23:43 i haven't seen that, got a link? :P 2011-03-19T19:23:48 that would work 2011-03-19T19:24:03 http://marco-leise.homedns.org/antgui/work/visualizer.php?game_id=2#visualizer 2011-03-19T19:24:29 what is the current sq sighting distance ? 2011-03-19T19:24:45 yeah that's cool 2011-03-19T19:24:55 sqrt(93) i think 2011-03-19T19:25:07 ..OOO.. OOOOO ..OOO.. 2011-03-19T19:25:51 Frontier: <3 the visualier 2011-03-19T19:25:55 i hadn't seen it in quite some time 2011-03-19T19:25:56 i'm color blind 2011-03-19T19:26:07 Stocha: no joke? 2011-03-19T19:26:10 *** kaemo has quit IRC (Read error: Connection reset by peer) 2011-03-19T19:26:16 it's quite frequent 2011-03-19T19:26:23 it is 2011-03-19T19:26:41 i've been in a mission with thre colorblind out of 8 people in the team :p 2011-03-19T19:26:47 if i should change the brightness of green and red, tell me 2011-03-19T19:27:02 Not all color blind have the same perception i think 2011-03-19T19:27:11 can you see that properly? 2011-03-19T19:27:14 besides, i wouldn't be able to explain to you :) 2011-03-19T19:27:20 i don't know 2011-03-19T19:27:28 :P 2011-03-19T19:27:30 i doesn't strike me as being cristal clear 2011-03-19T19:27:37 i can't make out food and ants sometimes. 2011-03-19T19:27:59 and can't really make out ant teams from one another. 2011-03-19T19:28:15 but that's the problem with multiplayer i guess. 2011-03-19T19:28:26 unless you start to give some shape to your ants or something. 2011-03-19T19:28:31 wait till we have games with 26 players ^^ 2011-03-19T19:28:38 or allow the user to choose the colors 2011-03-19T19:28:58 lol, not likely 2011-03-19T19:29:15 or put a flag (like america / france/ south army) on each ant. 2011-03-19T19:29:23 some patterns. 2011-03-19T19:29:28 Stocha: I thought about that too 2011-03-19T19:29:41 anyway that sound a bit complicated for what; 5% user at most. 2011-03-19T19:29:54 that would be 250 person. 2011-03-19T19:30:07 problem is always the resolution, unless I set the square size to a fixed number 2011-03-19T19:30:20 Frontier: what's your max game size atm? 2011-03-19T19:30:25 but with 26 team even average guy might begin to have trouble :p 2011-03-19T19:30:54 antimatroid: there is no max dimension, but i don't check if the game actually fits on screen. the smallest square size is 1 pixel 2011-03-19T19:31:42 okay, so we'll see what it is later easily enough 2011-03-19T19:31:53 Socha: That's right, yet - just in case - i created a color selection app to find good colors: http://marco-leise.homedns.org/antgui/work/visualizer/colors.html 2011-03-19T19:32:18 Frontier: how hard would zooming be, people could play on HUGE maps then, at least locally 2011-03-19T19:32:48 *** olexs has quit IRC (Read error: Connection reset by peer) 2011-03-19T19:33:20 that would actullay be quite cool 2011-03-19T19:33:32 people can upload their own .png for what their ants will be displayed as 2011-03-19T19:33:47 must be tiny, otherwise reverts to just assigning the player a colour 2011-03-19T19:34:04 i think blocking is still possible 2011-03-19T19:34:13 Stocha: example, pastebin 2011-03-19T19:34:14 antimatroid: ^^ you never fail to give me good ideas 2011-03-19T19:34:21 although it could be hard to get the right conditions :p 2011-03-19T19:34:35 Frontier: i don't know how well it'd work without zooming :P 2011-03-19T19:34:44 it's a bit tedious to make. And have little practical value i think 2011-03-19T19:34:51 even better would be to allow them to give files for an animated ant like with out other ants game :P 2011-03-19T19:35:13 Stocha: it's not that hard 2011-03-19T19:35:20 McLeopold also had the idea that we get rid of the border and display the game on the whole screen with the duplicated parts in darker shade 2011-03-19T19:35:32 start with a grid of .'s then delete/add as you need 2011-03-19T19:35:48 Frontier: that's what i originally meant by border :P 2011-03-19T19:36:43 still the mere solving is tedious. Not to mention i may have the diamond wrong. and the ascii is tedious. 2011-03-19T19:36:49 I just imagine what people may come up with when they are allowed to upload their own graphics 2011-03-19T19:37:31 I would like you to benchmark your fighting resolution with 400 hundreds ants and show it's always in O(n) also. 2011-03-19T19:37:33 Stocha: watch that game frontier linkes 2011-03-19T19:37:40 the winning player is not the one with the most ants at the end 2011-03-19T19:37:51 *** olexs has joined #aichallenge 2011-03-19T19:38:02 Frontier: walking pensises 2011-03-19T19:38:27 is the winner the one that really played the best game ? is it really the strongest bot ? 2011-03-19T19:38:27 we could threaten people with disqualification for inappropriate images 2011-03-19T19:38:37 as i told, i can't read out the game myself :p 2011-03-19T19:38:46 *** sigh has joined #aichallenge 2011-03-19T19:38:47 Stocha: it's the bot that had the most ants kill enemies 2011-03-19T19:38:49 is there a zoom anywhere ? 2011-03-19T19:39:03 yeah but was that the strongest bot, or the smartest one ? 2011-03-19T19:39:07 no, but you can use the button below 'save' 2011-03-19T19:39:09 or was it the dumbest ? 2011-03-19T19:39:12 and press F11 in your browser 2011-03-19T19:39:25 Stocha: green would have won if the game went longer (which they will) 2011-03-19T19:39:36 F11 does nothing good on a mac :p 2011-03-19T19:39:41 but to that point, i think blue did a better job at engaging in battles 2011-03-19T19:39:58 so how is your scoring "fair" ? 2011-03-19T19:40:09 more fair than counting ants i mean. 2011-03-19T19:40:20 if the game goes long enougth that would be the same 2011-03-19T19:40:28 Frontier: actually, now i'm confused 2011-03-19T19:40:35 only you have to keep your opponnent up engouth that you can do good score. 2011-03-19T19:40:36 are the scores just the length of the bars? 2011-03-19T19:40:42 no 2011-03-19T19:40:47 there is no score other than the lines? 2011-03-19T19:41:01 *** Meatkat has joined #aichallenge 2011-03-19T19:41:06 Frontier: you removed the scores :P 2011-03-19T19:41:13 i though lines where numbers of ants ! that seemed only natural :) 2011-03-19T19:41:31 no, the lines are the scores 2011-03-19T19:41:35 which is also natural :P 2011-03-19T19:41:54 but i think it should really display the actual scores too 2011-03-19T19:42:08 lol, I need some speaking gfx in front of the graqphs 2011-03-19T19:42:24 Frontier: what's the deal with no scores? 2011-03-19T19:42:39 the scores are in the lower graph 2011-03-19T19:42:42 maybe it took up too much memory ? 2011-03-19T19:42:43 REALLY :p 2011-03-19T19:43:00 no, actual integer score values too :P 2011-03-19T19:43:04 lower graph ? 2011-03-19T19:43:21 imo that is essential with the scoring method 2011-03-19T19:43:34 oh i though each ant accumlated some score and gave it to the killer or something. 2011-03-19T19:43:37 well, how can i display them in a graph? would the final scores be enough? 2011-03-19T19:44:00 what are the graph right now measuring ? 2011-03-19T19:44:19 the colored bars are the number of ants, the graph shows the scores 2011-03-19T19:44:48 Frontier: ideally i'd like to be able to iterate across one state and see the score change so i can see the outcome of battles 2011-03-19T19:44:56 and see the score change without computing it myself 2011-03-19T19:45:37 i was just thinking it'd almost be nice if the arrows had 2 pushes per move, first push does walks and collisions removals, then you see the state before battle, then the next push shows the state after battle 2011-03-19T19:45:40 with the scores updated 2011-03-19T19:45:49 but that doesn't matter much 2011-03-19T19:46:33 i would like to see the game go faster, is it possible ? 2011-03-19T19:46:38 the big problem is that there is no limit on the number of players. the display of 9 score values would break any layout 2011-03-19T19:47:02 Frontier: max no players per row, then just display at the top of the map? 2011-03-19T19:47:13 *** chris__0076 has joined #aichallenge 2011-03-19T19:47:23 Stocha: there is no option at the moment. I set the speed to 1 turn per second, but never longer than a minute 2011-03-19T19:47:26 Frontier: i know, do 2 line bar things 2011-03-19T19:47:33 and label them "ant counts" "scores" 2011-03-19T19:48:08 what are the playing bots ? 2011-03-19T19:48:49 i suspect blue green and yellow are mcleopolds hunter bots 2011-03-19T19:48:52 They are 3 HunterBots and my own Bot which is losing in the lower right 2011-03-19T19:49:15 hunter go for food and ennemy within sight radius ? 2011-03-19T19:49:35 what do your bot do ? :p 2011-03-19T19:49:42 another thing with option 1, you don't want to just charge into battle, you want to dance around each other trying to pick each other off under a better death ratio 2011-03-19T19:49:46 *** chris_0076 has quit IRC (Ping timeout: 255 seconds) 2011-03-19T19:49:53 which would make fights quite cool to watch when people set their bots up well enough 2011-03-19T19:50:23 it's too slow to compute, and too hard to testcase. 2011-03-19T19:50:35 I've tried a few things, but my bot always loses. It goes for food mostly and walks around randomly when it has nothing better to do 2011-03-19T19:50:48 then maybe it's not that fun. But that only time will tell. 2011-03-19T19:51:06 Frontier: try playing with battle option 1? :P 2011-03-19T19:51:15 sigh fixed it last night so that it now works 2011-03-19T19:51:19 stop walking 100% randomly then :) 2011-03-19T19:51:27 get some objectives in life. 2011-03-19T19:51:34 ^^ :P 2011-03-19T19:51:35 hehe 2011-03-19T19:51:54 could have been slightly better :P 2011-03-19T19:52:04 /s/objectives/direction 2011-03-19T19:52:28 antimatroid: btw, I was reading the logs, the two options aren't that different in efficiency when they look at the same side radius in my (very brief) profiling 2011-03-19T19:52:33 i don't speak english to well. 2011-03-19T19:53:02 what do you mean sigh ? 2011-03-19T19:53:04 sigh: that surprises me 2011-03-19T19:53:12 maybe there aren't many rounds in the fights? 2011-03-19T19:53:18 how did you profile ? 2011-03-19T19:53:24 i imagine that'd get worse as bots get better, how much is the question 2011-03-19T19:53:34 in my current implementation the nearby_ants calculation is the expensive one, and it is calculated once per ant 2011-03-19T19:53:49 you can do that slightly quicker 2011-03-19T19:54:00 Stocha: in python with -m cProfile 2011-03-19T19:54:12 scan above, blow, to the right, then update for both ants when you find a match 2011-03-19T19:54:15 yeah you could probably make something clever to get time. Because ant only move one square per turn at most. But still it sounds tricky to test in any case. 2011-03-19T19:54:27 antimatroid: sure, but it is the same for both methods, so it's a moot point 2011-03-19T19:54:39 ah you compared the speed of the algorithm. Not the ingame efficiency then :) 2011-03-19T19:54:40 i know, i was referring to speeding that up 2011-03-19T19:54:42 okay i got it. 2011-03-19T19:54:51 it's not a huge improvement, but a bit 2011-03-19T19:55:02 that's the kind of thing we can go through and try later for improvements 2011-03-19T19:55:12 what about not counting the ennemies in range ? :p 2011-03-19T19:55:13 *** Meatkat has quit IRC (Ping timeout: 264 seconds) 2011-03-19T19:55:51 thermonuclear ants was a good option too. 2011-03-19T19:56:10 you have to place it well, then you explode it at the whole map. 2011-03-19T19:56:13 or half the map. 2011-03-19T19:56:32 the one that need the least auto-exploded ant wins. 2011-03-19T19:57:13 then if an ant is taken into the radius it explode in turn. 2011-03-19T20:00:06 *** olexs has quit IRC (Quit: Leaving.) 2011-03-19T20:00:29 it's 1 am here. 2011-03-19T20:00:37 let's say a make a bot quick, and i go to bed ? 2011-03-19T20:02:23 *** olexs has joined #aichallenge 2011-03-19T20:08:42 sigh: that nearby_ants function looks mighty awful? 2011-03-19T20:08:57 wouldn't it be better to at least just paint outwards from each ant and count enemies? 2011-03-19T20:09:03 *shrug* McLeopold wrote it 2011-03-19T20:09:11 no painting is far worse 2011-03-19T20:10:59 painting looks at less squares, but it has a much higher overhead 2011-03-19T20:11:15 what's painting ? 2011-03-19T20:11:28 you draw the disk ? 2011-03-19T20:12:18 same as breadth-first search in this context 2011-03-19T20:12:26 you could also try to hash the map. 2011-03-19T20:12:33 break it into sub regions 2011-03-19T20:12:45 and you got a cut reduction when there are no neraby ennemies 2011-03-19T20:12:46 :p 2011-03-19T20:12:58 which i guess is most of the time. 2011-03-19T20:13:05 yes, I've thought about that... there's a bunch of stuff to try 2011-03-19T20:13:08 anyway, save the performance for later 2011-03-19T20:13:18 need to get the specs down 2011-03-19T20:13:28 i think the first thing to try is to not count the ennemies. 2011-03-19T20:13:54 try to not count the enemies? 2011-03-19T20:13:58 that's one hell of a trouble solver 2011-03-19T20:14:03 yeah you know 2011-03-19T20:14:14 it speeds up the server side, and the client side 2011-03-19T20:14:21 it make the game actually understandable 2011-03-19T20:14:44 and, you can spend your time building bot, not debugging obscure ennemie counting optimization. 2011-03-19T20:15:21 of course there is the litle matter of building a fighting rule that does not need counting ennemies. 2011-03-19T20:15:37 but it seems far more time efficient. 2011-03-19T20:16:06 sry, i really should go to bed. see u later :p 2011-03-19T20:16:10 *** delt0r_ has joined #aichallenge 2011-03-19T20:16:13 see you 2011-03-19T20:16:29 *** Stocha has quit IRC (Quit: Page closed) 2011-03-19T20:17:41 *** delt0r___ has quit IRC (Ping timeout: 255 seconds) 2011-03-19T20:19:36 *** Naktibalda has quit IRC (Quit: ChatZilla 0.9.86.1 [Firefox 3.6.15/20110303170601]) 2011-03-19T20:35:49 *** mceier has quit IRC (Quit: leaving) 2011-03-19T20:40:32 *** chris___0076 has joined #aichallenge 2011-03-19T20:41:20 *** dlila has joined #aichallenge 2011-03-19T20:42:50 *** dlila has quit IRC (Client Quit) 2011-03-19T20:43:20 *** chris__0076 has quit IRC (Ping timeout: 255 seconds) 2011-03-19T20:44:31 *** nann has joined #aichallenge 2011-03-19T20:46:34 jbroman: i'm trying to do something in c++ but not sure if it's possible :P 2011-03-19T20:47:31 *** Apophis has joined #aichallenge 2011-03-19T20:47:38 i want a template that is a template object itself, but i also want to use that template inside my template, bleh examples are better 2011-03-19T20:47:38 template //this works 2011-03-19T20:47:39 template > // i want something like that 2011-03-19T20:47:50 *** Apophis_ has quit IRC (Ping timeout: 255 seconds) 2011-03-19T20:48:12 i want to be able to call 2011-03-19T20:48:13 Engine > and have Engine know that i'm using doubles as payoffs without saying Engine, double> 2011-03-19T20:48:37 am i kidding myself? 2011-03-19T20:49:38 *** nann has quit IRC (Ping timeout: 255 seconds) 2011-03-19T20:56:18 antimatroid: My instinct is that this is either impossible or a bad idea (because I might have a game type for which only doubles make sense as the payoff, so I don't make it a type parameter, or I might have a game type that needs multiple type parameters). 2011-03-19T20:56:34 I may fiddle with it a little more, and I am hardly a C++ guru, so who knows? 2011-03-19T20:58:57 Might be better-solved with inheritance. 2011-03-19T21:00:40 *** chris___0076 has quit IRC (Quit: Leaving) 2011-03-19T21:04:49 *** Kingpin13 has quit IRC (Quit: You're a kitty!) 2011-03-19T21:05:50 i.e. make Engine have a field where it stores an GameBaseClass, so an Engine could hold an NGame etc. 2011-03-19T21:07:17 Also, the idea of nested templates terrifies me. 2011-03-19T21:09:17 antimatroid: I'm decided on the battle option now 2011-03-19T21:10:50 antimatroid: what do you use to track everyone's timezone? 2011-03-19T21:12:06 antimatroid tracks people's timezones? 2011-03-19T21:12:29 he was using something to list the local time of people in the group 2011-03-19T21:12:48 amstan should build that into contestbot 2011-03-19T21:12:59 i don't have the timezone stuff set up anymore 2011-03-19T21:13:13 since you switched os's 2011-03-19T21:13:15 McLeopold: decided on what for battle option? 2011-03-19T21:13:17 yeah 2011-03-19T21:13:22 i could add them in easily, just haven't yet 2011-03-19T21:13:48 McLeopold: you can add timezones to your standard calender now in ubuntu 2011-03-19T21:13:50 Okay, so I have a friend who is 17 and just starting to program. We went over the ants game together today. 2011-03-19T21:14:35 that's a good idea 2011-03-19T21:14:40 sigh that is 2011-03-19T21:14:40 He's programmed his own multiplayer snake game in javascript, and mine sweeper in python, to give you a sense of his ability. 2011-03-19T21:14:54 *** needsch has quit IRC (Quit: Leaving.) 2011-03-19T21:15:24 So, I'm using his option as the acid test for if our game is too complex or not enough 2011-03-19T21:16:17 we're putting him at bare beginner stage yes? he doesn't need to be able to win, only be able to make reasonable improvements while learning lots and get started easily 2011-03-19T21:16:27 Right 2011-03-19T21:17:06 anyway, go on :) 2011-03-19T21:17:08 So, here it is. He doesn't really get the "occupied" method. He had some questions about how it really worked. 2011-03-19T21:17:35 Also, he can see easily that the "closest" option is a game where it's just about getting food faster, and doesn't think it would be fun. 2011-03-19T21:18:18 He thinks, what would be intuitive, is that you should be able to have nearby ants help you out so that your ant is stronger. 2011-03-19T21:18:28 yeah, sigh suggested that yesterday 2011-03-19T21:18:43 i think the only reason we didn't go with that was to avoid collisions yeah? but we can just allow them 2011-03-19T21:18:56 I've never cared about avoiding collisions. 2011-03-19T21:19:03 i'm willing to go with that battle option 2 2011-03-19T21:19:07 too** 2011-03-19T21:19:07 aha 2011-03-19T21:19:13 But there are quite a few that think it is a problem, for some reason. 2011-03-19T21:19:18 i think you might find that is the compromise 2011-03-19T21:19:26 yeah, I said yesterday that intuitively an ant is more powerful if #friends > #enemies 2011-03-19T21:19:53 right, if we could just get that logic, and totally prevent blocking, we'd be okay 2011-03-19T21:19:58 just in contrast to calling the name "power" in occupied 2011-03-19T21:20:03 i'll play around with that idea 2011-03-19T21:20:11 He then suggested maybe it should just be probabilistic 2011-03-19T21:20:17 lol 2011-03-19T21:20:18 no, not prob 2011-03-19T21:20:49 But from a macro point of view, that is what the newbie wants. A chance to break the lines if the send enough. 2011-03-19T21:21:02 yep 2011-03-19T21:21:10 do you want me to implement #friends > #enemies? 2011-03-19T21:21:13 i came in as a complete newb for tron 2011-03-19T21:21:16 sigh: yes 2011-03-19T21:21:19 yes, at least to see 2011-03-19T21:21:26 what you want to call it 2011-03-19T21:21:42 My only though is to have hit points, each ant spreads damage out, and there is slight healing per turn 2011-03-19T21:21:52 is it going to be >= or >? 2011-03-19T21:22:06 how do we do scoring for this method? 2011-03-19T21:22:10 sigh: i did friend > enemies at the start 2011-03-19T21:22:13 the current scoring method really only makes sense for option 1 2011-03-19T21:22:45 someone give this method a name 2011-03-19T21:22:51 i'm thinking 2011-03-19T21:22:57 you get to work, i'll get you a good name :P 2011-03-19T21:23:06 http://ai-contest.com/forum/viewtopic.php?f=21&t=1243&start=10#p8558 2011-03-19T21:23:43 If we did it, plus stepping on each other kills, then that may be good. But I still believe there may be trivial blocking formations. 2011-03-19T21:23:57 did what? 2011-03-19T21:24:07 friends > enemies 2011-03-19T21:24:13 yeah, i'm thinking about scoring now 2011-03-19T21:24:19 that forum post has to sample games with that logic 2011-03-19T21:24:20 i think collided ants need scores assigned too 2011-03-19T21:24:41 we decided on that, but I never put it in 2011-03-19T21:24:54 which post? there's a whole page :P 2011-03-19T21:25:08 oh sorry 2011-03-19T21:25:09 sample games 2011-03-19T21:25:20 i don't need to see the games to understand the battle logic :P 2011-03-19T21:25:45 but I don't think sigh has seen them 2011-03-19T21:25:46 actually, keep the current scoring 2011-03-19T21:25:48 I'm calling it the "support" method, you die if you have more enemies than support 2011-03-19T21:25:54 that makes sense 2011-03-19T21:25:57 it's like easier battle with scoring encouraging the behaviour of option 1 2011-03-19T21:26:07 I think that would be easier for newbies to understand as well 2011-03-19T21:26:38 and it's easy to understand the scoring method i think, scan around a dying ant and give points to ants in range 2011-03-19T21:26:39 So, unless we add objectives, or hit points, I think option 2 is out. 2011-03-19T21:27:13 i'm happy to just go with this option and current scoring, i do think points need to be assigned for colliding ants 2011-03-19T21:27:20 A game of finding food faster has not appealed to anyone I've talked to. 2011-03-19T21:27:41 finding food fastest while not exact is fairly trivial to do well 2011-03-19T21:28:23 if we're going for a game with so many components, i think it's good to have many components to strategy (that aren't too complicated) and see what happens 2011-03-19T21:28:56 which is why i like all the balance etc. from option 1, and i think we'd still have all (at least most) of that 2011-03-19T21:30:14 have you guys got time to talk scoring collided ants? or are you busy? 2011-03-19T21:32:26 there's a few options: 2011-03-19T21:32:27 1. if there is more than one players ants in the square, assign 1 point to each of the players 2011-03-19T21:32:27 2. if there is more than one players ants in the square, assign the enemies of each ants points and give them to the player 2011-03-19T21:32:27 3. treat each collided ant as dead in the same set of dead ants from battle then assign scores all at once 2011-03-19T21:37:10 i think 2 might be easiest to understand while going along with everything else 2011-03-19T21:38:12 McLeopold: have you considered splitting the food bonus among the remaining ants rather than players? 2011-03-19T21:38:32 It only applies with 1 bot left 2011-03-19T21:38:58 or if another bot crashed, in which case they shouldn't get the bonus 2011-03-19T21:39:07 sigh: btw, I never implemented it 2011-03-19T21:39:19 implemented what? 2011-03-19T21:39:35 the food bonus 2011-03-19T21:39:41 do we need it? 2011-03-19T21:39:52 yeah we do 2011-03-19T21:39:52 ABSOLUTELY 2011-03-19T21:39:59 :P 2011-03-19T21:40:01 okay 2011-03-19T21:40:09 :) 2011-03-19T21:40:09 what is food bonus? 2011-03-19T21:40:48 if the game ends before maxturns, the last alive player (if there is one) gets points for every food square in existence and that would have spawned and every ant that's on the grid from a crashed bot 2011-03-19T21:41:05 i see 2011-03-19T21:41:12 McLeopold: is that correct? 2011-03-19T21:41:16 yes 2011-03-19T21:41:25 so we need to know the spawn rate for a game 2011-03-19T21:41:36 i think we're doing n land squares per turn? 2011-03-19T21:42:00 it'll be n land squares every x turns i think 2011-03-19T21:42:14 so maybe program the engine to have some x variable for food spawning 2011-03-19T21:42:37 maybe even allow people to set that, and allow them to turn food spawning off with that as -1 or something? 2011-03-19T21:43:13 aichallenge: sigh epsilon * r31de313 / (ants/ants.py ants/playgame.py): Implement do_attack_support - http://bit.ly/gERym6 2011-03-19T21:43:17 ok, implemented 2011-03-19T21:44:07 sigh: if you look at the ants.py history, you'll see my version :) 2011-03-19T21:44:30 heh 2011-03-19T21:45:01 can you give me a commit version to look at, I don't know how to hunt through history well 2011-03-19T21:45:06 no comments on scoring collided ants? :( 2011-03-19T21:45:22 i think it needs to be done as collisions will happen quite a bit 2011-03-19T21:45:28 jmcarthur and I came up with a scheme 2011-03-19T21:46:09 if enemy ants are in range, then they split the pot 2011-03-19T21:47:08 if the colision is just friendlies 2011-03-19T21:53:24 looking at the starter bots play with "support" method, I like it 2011-03-19T21:54:33 let me pull it and look... 2011-03-19T21:56:03 one on one ants still annihilate each other 2011-03-19T21:56:24 but a group of ants can destroy things without dieing 2011-03-19T21:56:55 did you implement them dying if they collide? 2011-03-19T21:57:15 no, that has always happened before the attack phase 2011-03-19T21:57:23 when resolving orders, remember 2011-03-19T21:57:26 so, yes :) 2011-03-19T21:58:48 *** sente has quit IRC (Ping timeout: 250 seconds) 2011-03-19T22:00:07 *** sente has joined #aichallenge 2011-03-19T22:00:40 antimatroid: even though collisions are calculated before the attack function, they still created "attack groups" that were scored normally. 2011-03-19T22:02:31 McLeopold: say what? 2011-03-19T22:02:45 you were asking about scoring collisions 2011-03-19T22:02:51 so scores are already assigned for ants that collide? 2011-03-19T22:02:54 I'm not sure if I answered your question 2011-03-19T22:03:00 yes 2011-03-19T22:03:04 ah, that's alright then 2011-03-19T22:03:08 just not if the collision is friendlies 2011-03-19T22:03:10 i thought we were just ignoring that 2011-03-19T22:03:16 yeah okay 2011-03-19T22:03:28 eh? engine doesn't give scores to colliding ants 2011-03-19T22:03:30 what if 2 a ants land on the same square as a b ant? 2011-03-19T22:03:40 if you are talking about the current implementation 2011-03-19T22:03:50 sigh: It did we I last touched it :) 2011-03-19T22:04:04 did it? 2011-03-19T22:04:14 maybe I screwed it up, let me check 2011-03-19T22:04:36 yes, I had a conflict dict that contained the "attack groups" that the scoring function used 2011-03-19T22:05:20 what happened to do_score? 2011-03-19T22:05:35 I've never seen that method 2011-03-19T22:05:43 I'm sure I never removed it 2011-03-19T22:07:27 McLeopold: I checked out ants.py as it was right before my first ever commit and I don't see anything that you are talking about 2011-03-19T22:07:57 *** _flag <_flag!~flag@69-165-173-172.dsl.teksavvy.com> has joined #aichallenge 2011-03-19T22:08:27 there is no do_score method and colliding ants aren't scored 2011-03-19T22:08:33 huh, I guess I did the scoring the the attack function and never did put it in the collision code 2011-03-19T22:08:46 there used to be do_score awhile ago 2011-03-19T22:09:03 sigh: does an "attack group" make sense? 2011-03-19T22:09:16 it's the set of ants that are all killed at once 2011-03-19T22:09:29 but it may only make sense for the closest method 2011-03-19T22:09:32 how about just make it simple, if an ant dies then all nearby enemies get points 2011-03-19T22:10:00 only if they contributed to the kill, which in the occupied method is the same as what you said 2011-03-19T22:10:07 brb 2011-03-19T22:11:44 anyway, I'm pretty certain I never removed functionality... only added stuff and refactored 2011-03-19T22:51:28 *** nullkuhl has joined #aichallenge 2011-03-19T22:51:47 *** nullkuhl has left #aichallenge ("Konversation terminated!") 2011-03-19T22:53:04 *** amstan has joined #aichallenge 2011-03-19T22:53:04 *** ChanServ sets mode: +o amstan 2011-03-19T22:53:10 hello 2011-03-19T22:57:58 <_flag> hello 2011-03-19T22:58:23 HELO 2011-03-19T23:04:12 <_flag> ELO 2011-03-19T23:04:15 *** amstan has quit IRC (Ping timeout: 252 seconds) 2011-03-19T23:11:13 *** tapwater has joined #aichallenge 2011-03-19T23:15:17 *** tapwater has quit IRC (Client Quit) 2011-03-19T23:18:08 *** tapwater has joined #aichallenge 2011-03-19T23:43:55 *** olexs has quit IRC (Quit: Leaving.) 2011-03-19T23:55:33 *** tapwater has left #aichallenge 2011-03-19T23:56:39 *** amstan has joined #aichallenge 2011-03-19T23:56:39 *** ChanServ sets mode: +o amstan