2011-04-14T00:00:42 looks good 2011-04-14T00:02:51 Okay, I suppose that's that for this meeting. Any more topics that need addressing at this moment? 2011-04-14T00:03:11 j3camero: nope, it's all good i think 2011-04-14T00:03:23 i posted on the forums, i pinged the mailing list about it 2011-04-14T00:06:09 amstan: http://csclub.uwaterloo.ca/~j3camero/contest/fall2009/results.php 2011-04-14T00:06:17 There's you at the top! 2011-04-14T00:06:28 *** antimatroid has quit IRC (Ping timeout: 250 seconds) 2011-04-14T00:06:30 j3camero: yes, but this is blank: http://csclub.uwaterloo.ca/~j3camero/contest/fall2009/player_history.php?user_id=266 2011-04-14T00:06:45 Oh neat jbroman came 3rd, while presumably also a first year student. 2011-04-14T00:07:47 j3camero: something fishy there.. 1, the db doesn't seem to work, and 2: jbroman is 4th in first year students, while 3rd overall, how's that possible 2011-04-14T00:07:58 I am just looking through the website for RPS contest. Christ that was a lot of work. I basically learned PHP as I was building that thing. 2011-04-14T00:08:20 aichallenge: McLeopold epsilon * r95faa1b / (3 files): a little php cleanup - http://bit.ly/i0AjFp 2011-04-14T00:08:24 good times.. 2011-04-14T00:08:40 I don't know. I may have dumped some of the content as static HTML to future proof it. 2011-04-14T00:09:12 j3camero: we can do that, but let's secure the data first.. 2011-04-14T00:09:30 j3camero: http://ants.zeroviz.us/latest/ 2011-04-14T00:09:46 look at the cell maze 2011-04-14T00:09:48 McLeopold: oh man.. i was just reading those deleted lines, they use addslashed to prevent sql injection, that's bad 2011-04-14T00:10:38 is it? I think some are still in there... 2011-04-14T00:11:07 McLeopold: probably, addslahses is not secure for this, mysql_real_escape_string should be used 2011-04-14T00:11:27 or parametric 2011-04-14T00:11:30 prepared statements would be best, but I didn't see that in php 2011-04-14T00:14:05 Love the map pastebin 2011-04-14T00:14:06 aichallenge: McLeopold epsilon * rd745494 / (3 files): removed addslashes in favor of mysql_real_escape_string - http://bit.ly/esHYuK 2011-04-14T00:14:18 yeah, pastemapbin? 2011-04-14T00:14:29 yep :) 2011-04-14T00:14:41 That's my site for learning django 2011-04-14T00:14:51 you know, for zeta... 2011-04-14T00:14:59 oh, decent 2011-04-14T00:15:15 Cell maze is cool 2011-04-14T00:15:16 man.. i wish i would actually have a project like that, i have to get good at django too 2011-04-14T00:15:34 I can put it on github 2011-04-14T00:15:41 We could make it a submodule 2011-04-14T00:15:58 aichallenge: sigh epsilon * r75463d7 / worker/engine.py : Fix error where bots was undefined in the finally clause in engine.py - http://bit.ly/hdN4j5 2011-04-14T00:15:59 aichallenge: sigh epsilon * r8979256 / ants/ants.py : Stop updating score history after a player dies (and ensure they don't get any more points) - http://bit.ly/fsU70x 2011-04-14T00:16:01 but not until after beta launch 2011-04-14T00:18:05 *** chris___0076 has joined #aichallenge 2011-04-14T00:18:25 cool 2011-04-14T00:21:01 *** McLeopold has quit IRC (Quit: Leaving.) 2011-04-14T00:21:29 *** chris__0076 has quit IRC (Ping timeout: 246 seconds) 2011-04-14T00:27:19 *** j3camero has quit IRC (Quit: leaving) 2011-04-14T00:35:05 *** chris___0076 has quit IRC (Ping timeout: 250 seconds) 2011-04-14T00:39:36 amstan: is it possible to put the channel logs on github so that it is easier to download updates? 2011-04-14T00:39:59 sigh: umm... kinda of a daily commit? 2011-04-14T00:40:09 sure 2011-04-14T00:43:03 ok, i'll look into it 2011-04-14T00:43:43 thanks :) I like being able to grep the logs, it's just downloading updates is a pain :P 2011-04-14T00:47:05 sigh: oh, yes.. i agree, grep is cool 2011-04-14T00:47:12 there's a way to make the bot grep, i believe 2011-04-14T00:59:09 *** antiuni has quit IRC (Quit: Page closed) 2011-04-14T01:06:06 *** Ttech has quit IRC (Read error: Operation timed out) 2011-04-14T01:15:20 *** Mathnerd314 has quit IRC (Read error: Connection reset by peer) 2011-04-14T01:16:07 *** Ttech has joined #aichallenge 2011-04-14T01:28:47 *** amstan_ has joined #aichallenge 2011-04-14T01:28:47 *** ChanServ sets mode: +o amstan_ 2011-04-14T01:29:15 *** amstan has quit IRC (Ping timeout: 260 seconds) 2011-04-14T01:30:57 *** antimatroid has joined #aichallenge 2011-04-14T01:36:23 *** ahmedhelal has quit IRC (Read error: Connection reset by peer) 2011-04-14T01:37:42 we have a new scoring method? 2011-04-14T01:39:28 no 2011-04-14T01:40:21 amstan: "Score is going to be determined by how many enemy ants are killed. This might be adjusted after the launch." that is wrong :) 2011-04-14T01:40:29 amstan_: ^ 2011-04-14T01:42:35 it should be something like... "Score is going to be determined by how much you contribute to enemy ants deaths. This might be adjusted after the launch." 2011-04-14T01:42:49 plus there is the food bonus 2011-04-14T01:43:14 although after having played a few games locally, the food bonus is a LOT if the game ends fairly early 2011-04-14T01:43:15 where did he write that? 2011-04-14T01:43:23 in the announcements in the forum 2011-04-14T01:43:24 antimatroid: that's what I said earlier 2011-04-14T01:43:51 food bonus is just going to be a complicated way of just saying that the last player remaining wins 2011-04-14T01:43:56 yep 2011-04-14T01:44:15 so it makes sense to take out all the complicatedness 2011-04-14T01:44:36 i agree 2011-04-14T01:44:41 it should be as simple as possible 2011-04-14T01:44:59 cool, if you agree then I can count on your evangelising to everyone else 2011-04-14T01:45:09 :P 2011-04-14T01:45:09 what's the issue? 2011-04-14T01:45:11 live ants counting? 2011-04-14T01:45:41 what issue? 2011-04-14T01:46:10 you want me to fight for what exactly? :P 2011-04-14T01:46:35 fight for just saying that if there is one player remaining they just win 2011-04-14T01:46:39 i can live with whatever now that we have cool battle resolution 2011-04-14T01:46:52 haha 2011-04-14T01:47:46 my time in melbourne is almost up! 2011-04-14T01:48:00 when do you move? 2011-04-14T01:48:11 flight on saturday 2011-04-14T01:48:51 nice, have you got a place to live yet? :P 2011-04-14T01:49:18 for the first two months, yes 2011-04-14T01:49:38 during that time, I have to find something permanent 2011-04-14T01:50:11 are you working right in the city? 2011-04-14T01:50:27 that'd be slightly painful 2011-04-14T01:50:37 yeah 2011-04-14T01:50:51 I'll aim to find something close to the city 2011-04-14T01:51:08 good luck :P 2011-04-14T01:51:11 it's so expensive 2011-04-14T01:51:12 :) 2011-04-14T01:51:31 I hardly have any expenses so I can afford to spend a bit more on rent 2011-04-14T01:51:54 yeah fair enough 2011-04-14T01:52:17 jmcarthur has been awfully quiet lately 2011-04-14T01:52:26 i wonder if he also moved/is moving 2011-04-14T01:52:48 i remember him looking for jos 2011-04-14T01:52:52 *jobs 2011-04-14T01:52:55 yeah he went away for an interview 2011-04-14T01:55:12 ah well, people do have lives outside of this channel it seems :) 2011-04-14T02:08:18 antimatroid: btw, I fixed it so that dead players can't increase their score anymore 2011-04-14T02:08:26 :) 2011-04-14T02:08:42 have we got collided ants giving out points to surrounding enemy ants? 2011-04-14T02:09:05 i really do think that's the ideal thing 2011-04-14T02:09:21 no 2011-04-14T02:09:33 do you agree that it makes sense? 2011-04-14T02:09:39 sure 2011-04-14T02:09:41 I might have a look at that tomorrow, if I have time 2011-04-14T02:09:46 yep 2011-04-14T02:09:51 it's not vital anyway 2011-04-14T02:09:53 not atm 2011-04-14T02:23:42 antimatroid: if ants collide, who scores the points? 2011-04-14T02:23:56 sigh: any enemies in range, including on that square 2011-04-14T02:24:02 if no enemies are in range, no one 2011-04-14T02:24:59 in range after everyone has moved? 2011-04-14T02:25:17 yes, i would just add them to lists of dead ants if they already exist? 2011-04-14T02:25:24 then just give points out all at the same time 2011-04-14T02:25:50 what about ants which collide in other squares 2011-04-14T02:25:53 but in range 2011-04-14T02:26:10 yep, they all get to give and receive points 2011-04-14T02:26:22 same as ants that die from battle etc. 2011-04-14T02:26:36 i'm open to other opinions there 2011-04-14T02:26:39 but that's what i had in mind 2011-04-14T02:26:51 ok 2011-04-14T02:27:09 slightly tricky because I can just reuse the nearby_ants method 2011-04-14T02:27:27 does nearby ants check that square as well? 2011-04-14T02:28:08 the engine doesn't care about nearby friends which makes it slightly easier to do that 2011-04-14T02:28:15 because you don't have to not count yourself 2011-04-14T02:28:18 *because I can't just reuse 2011-04-14T02:28:55 a much simpler method is to just allow enemy ants colliding on the same square to give points to each other 2011-04-14T02:29:05 that might have been what you had in mind? 2011-04-14T02:29:25 nah, that just makes things more complicated in degenerate cases 2011-04-14T02:29:32 nevermind, I know a easy way to do it 2011-04-14T02:29:53 ...? 2011-04-14T02:29:55 *** phire has quit IRC (Ping timeout: 260 seconds) 2011-04-14T02:33:31 aichallenge: sigh epsilon * r508db7c / ants/ants.py : Distribute score for ants which die by colliding with other ants - http://bit.ly/fgl4Bo 2011-04-14T02:33:57 antimatroid ^^ 2011-04-14T02:34:11 isn't that what i said above? :P 2011-04-14T02:34:32 what? 2011-04-14T02:34:40 a much simpler method is to just allow enemy ants colliding on the same square to give points to each other 2011-04-14T02:35:02 I was talking about the implementation 2011-04-14T02:35:25 the result is exactly what you specified 2011-04-14T02:35:45 oh no... it doesn't just check for enemies in the same squre 2011-04-14T02:36:03 it checks for all enemies even if they collided in other squares 2011-04-14T02:36:26 in range 2011-04-14T02:38:17 *** berak has joined #aichallenge 2011-04-14T02:49:06 sigh: does it give points to all enemies in range after moving? 2011-04-14T02:49:10 including ants that die from battle? 2011-04-14T02:49:39 yes 2011-04-14T02:57:09 :) 2011-04-14T02:58:45 *** smellyhippy has quit IRC (Quit: Take your stinking clause off me you damn dirty predicate!) 2011-04-14T03:02:01 *** sigh has quit IRC (Remote host closed the connection) 2011-04-14T03:21:44 ergh, it's infuriating reading a thread on reddit about economics 2011-04-14T03:31:46 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T03:33:32 *** berak has joined #aichallenge 2011-04-14T03:35:04 *** ltriant has quit IRC (Quit: Computer has gone to sleep) 2011-04-14T03:36:20 *** Ice_Harley has joined #aichallenge 2011-04-14T03:38:40 hmmm anyone know anything about linguistics? 2011-04-14T03:39:02 do people analyse the structure of vocal languages that result in the accents we see when people talk in different languages? 2011-04-14T03:39:54 i have a personal more general rule 34 that would imply they do 2011-04-14T03:41:21 *** amstan_ has quit IRC (Ping timeout: 246 seconds) 2011-04-14T03:47:46 *** smellyhippy has joined #aichallenge 2011-04-14T03:52:34 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T03:53:31 *** berak has joined #aichallenge 2011-04-14T03:55:36 *** aerique has joined #aichallenge 2011-04-14T03:57:07 *** woudshoo` has joined #aichallenge 2011-04-14T03:59:43 *** woudshoo` has quit IRC (Read error: Connection reset by peer) 2011-04-14T04:02:35 *** woudshoo has joined #aichallenge 2011-04-14T04:15:52 *** dr- is now known as lotus 2011-04-14T04:16:38 *** lotus is now known as dr- 2011-04-14T04:17:28 *** dr- is now known as lotus 2011-04-14T04:17:31 *** lotus is now known as dr- 2011-04-14T04:31:05 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T04:31:05 *** Naktibalda has joined #aichallenge 2011-04-14T04:33:34 *** berak has joined #aichallenge 2011-04-14T04:42:41 *** boegel has joined #aichallenge 2011-04-14T04:51:17 *** Stocha has joined #aichallenge 2011-04-14T04:51:38 i don't see the point in giving point for colliding ants of same color. 2011-04-14T04:51:49 and i don't think you can collide ants of different colors. 2011-04-14T04:52:16 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T04:52:20 Ants of same color that collide means poor/buggy bot. So what's the point in giving points for that ? does that means the opponent fight good ? 2011-04-14T04:53:18 arguably killing ants from a poor bot that don't collide suffer the same issu. The neighbors will be doubly advantage. once for scoring easilly. And twice for the free ground 2011-04-14T04:57:06 *** berak has joined #aichallenge 2011-04-14T05:11:58 Stocha: depending on food spawning you can collide 2011-04-14T05:12:29 Stocha: it also means you can't kamakazee two of your ants that are likely to be taken out 2011-04-14T05:12:36 so as to not give points to the enemy 2011-04-14T05:12:42 unless you're out of range of course 2011-04-14T05:17:41 it sounds both complicated and not very important to earn point for suicidals ants. 2011-04-14T05:18:14 antimatroid: ant can't walk on food 2011-04-14T05:18:20 can it? 2011-04-14T05:18:25 no it can't 2011-04-14T05:18:29 reading the spec it can't. 2011-04-14T05:18:46 if you have a.b at the start of the turn, they can collide 2011-04-14T05:18:49 but the turn resolution phase wasn't explicit last time i checked 2011-04-14T05:19:12 of course food should be spawned after movements occurs 2011-04-14T05:19:31 a*.b consider that at the end of a turn 2011-04-14T05:19:37 at the start of the next turn you would have aa.b 2011-04-14T05:19:42 i mean food tranformation to ant occurs after movement resolution 2011-04-14T05:19:47 and food apears after that. 2011-04-14T05:20:09 where is there a collision in here antimatroid ? 2011-04-14T05:20:19 then a and b move onto the same square 2011-04-14T05:20:30 collision 2011-04-14T05:20:32 yeah but that's next turn 2011-04-14T05:20:38 so it's a regular collision 2011-04-14T05:20:44 ah you mean it's possible to have collisions ? 2011-04-14T05:20:47 yes 2011-04-14T05:20:52 fighting collisions. 2011-04-14T05:21:03 they are all called collisions 2011-04-14T05:21:09 what about it giving no point ? 2011-04-14T05:21:19 what do you mean? 2011-04-14T05:21:40 before those ants died and no points were given, now points are given to any enemies in range of all ants that die, from colliding or battles 2011-04-14T05:21:44 i mean a and b are resolved as collided, and fighting resolution + socring occurs after that 2011-04-14T05:22:57 scoring fight is hard enough without those bordline cases. 2011-04-14T05:23:10 what do you mean? 2011-04-14T05:23:34 it's easy to do this generally to handle all cases 2011-04-14T05:23:39 what do i mean by not earning any point for anyone when ant collide ? 2011-04-14T05:23:55 " scoring fight is hard enough without those bordline cases." 2011-04-14T05:24:00 by easy you mean : it amounts to 0 more line of code right ? 2011-04-14T05:24:25 i mean that you have to precise how you will do the scoring for normal damage fight resolution. 2011-04-14T05:24:43 if an ant dies, add it to the set of dead ants, when assigning points, iterate through the set of dead ants and give points to any enemies in range 2011-04-14T05:24:45 pretty simple? 2011-04-14T05:25:09 so i you do 1/3 damage, is the same as doint 2/1 damage ? 2011-04-14T05:25:17 what? 2011-04-14T05:25:18 if there are three players 2011-04-14T05:25:34 one do 1/3 damage to one ant. And another one do 2/1 damage to that same ant 2011-04-14T05:25:41 both player get the same number of points ? 2011-04-14T05:25:48 i don't understand 2011-04-14T05:25:55 can you give my an example of what you're referring to 2011-04-14T05:25:58 if an ant die in a turn, can this ant earn points ? 2011-04-14T05:26:03 yes 2011-04-14T05:26:14 a.b.c 2011-04-14T05:26:19 a.b.. 2011-04-14T05:26:27 b dies, a and c get 1/2 a point 2011-04-14T05:26:27 where a b c are different colors 2011-04-14T05:26:32 oh hang on 2011-04-14T05:26:53 i suspect just b dies 2011-04-14T05:26:57 well i misspelled my idea. But it's a case also :p 2011-04-14T05:27:02 a.b.c 2011-04-14T05:27:06 a.... 2011-04-14T05:27:28 b dies, a gets 2/3 points and c 1/2 2011-04-14T05:27:30 1/3** 2011-04-14T05:28:07 anyway you have to precises all those cases people might wonder about. And illustrate them. 2011-04-14T05:28:14 Colliding ants will add to that. 2011-04-14T05:28:21 unless it gives no points. 2011-04-14T05:28:38 *** jaycobcoleman has joined #aichallenge 2011-04-14T05:29:20 The damage rule is complex enough that i would advise having to independant implementations, and see if they aggress all the time during the game. 2011-04-14T05:29:39 it's not like it is easy to spot mistake just by looking at the game. 2011-04-14T05:29:50 same goes with scoring. 2011-04-14T05:29:56 feel free to do that testing for yourself 2011-04-14T05:30:00 it is a good idea 2011-04-14T05:30:03 but it also depend on damage. 2011-04-14T05:31:12 I don't know python :'( 2011-04-14T05:31:22 you can learn python by looking at it 2011-04-14T05:31:34 i have looked at it. I still don't know it :p 2011-04-14T05:31:38 python is practically reading 2011-04-14T05:31:43 well, maybe not well, but you can learn it enough to put something together 2011-04-14T05:31:46 i know java. I'm too old to learn new tricks. and have 0 time for that. 2011-04-14T05:31:59 java is magic to me 2011-04-14T05:32:07 if you want me to make an implementation in java, no problem :) 2011-04-14T05:32:15 then you'll have to call it somehow. 2011-04-14T05:32:24 but it doesn't sound trivial to integrate. 2011-04-14T05:32:30 i don't touch java 2011-04-14T05:32:37 unless you things is very modular langage wise. 2011-04-14T05:33:18 jaycobcoleman: java is really only disguised c++ 2011-04-14T05:34:07 minus all the cool shit 2011-04-14T05:34:12 Yeah I'll figure it out sooner or later 2011-04-14T05:34:27 I'm just relatively new to OOP 2011-04-14T05:34:39 and minus all the bad shit also :p 2011-04-14T05:34:46 i'm trying hard to break free from oop 2011-04-14T05:34:49 but it's so natural 2011-04-14T05:34:57 Stocha: can't argue there :P 2011-04-14T05:34:57 oop isn't worth it. 2011-04-14T05:35:02 study functionnal programming. 2011-04-14T05:35:08 then learn to do that with c++ and java. 2011-04-14T05:35:26 Perfect. That's exactly what I can do 2011-04-14T05:35:35 i couldn't live without operator overloading 2011-04-14T05:36:04 Design patterns are only disguised functionnal paradigms 2011-04-14T05:36:05 Matrix C = sum(A, product(B, power(D, 3))); just doesn't appeal to me 2011-04-14T05:36:24 how do write that in haskell ? 2011-04-14T05:36:35 as opposed to Matrix C = A + B*(D^3); 2011-04-14T05:36:40 i don't know haskell 2011-04-14T05:36:55 i am really annoyed at those brackets 2011-04-14T05:37:05 but i can't overload operator precedence D: 2011-04-14T05:37:55 ehhh I don't remember much about haskell 2011-04-14T05:38:52 i really want to just make my own language, but so much mehffort! 2011-04-14T05:39:16 and my own unicode with maths symbols/relations and the greek alphabet 2011-04-14T05:39:32 I think we all do at one point or another 2011-04-14T05:42:16 computer langages are the same since 1950. only ides and libs have evolved. And paradigms. 2011-04-14T05:42:38 A modern assembly langage would do as well as c++. if not better. with nice ides. 2011-04-14T05:43:39 I would love to start at machine code and build a language from there 2011-04-14T05:43:54 it's what every language do. 2011-04-14T05:44:07 arguable functional maybe less. 2011-04-14T05:44:16 antimatroid: you seem to fret over minor syntax quite a lot 2011-04-14T05:44:21 but java c c++ are just nice looking macro assemblers 2011-04-14T05:45:06 I just mean that everything is based off of something else. Forget everything else 2011-04-14T05:45:16 Stocha: there are quite a few DSP i have worked with where the asm is better than C 2011-04-14T05:45:34 I love the FFT instruction 2011-04-14T05:45:44 so that confirms my intuition then delt0r 2011-04-14T05:46:11 yea 2011-04-14T05:46:24 well also you often only need a very small "program" 2011-04-14T05:46:49 so there is really no complexity to manage 2011-04-14T05:47:01 is FFT fast fourier transform or ? 2011-04-14T05:47:06 yea 2011-04-14T05:47:19 typically fixed point 2011-04-14T05:48:24 i know nothing about signal processing :p 2011-04-14T05:48:40 i only know logical bit operations really. 2011-04-14T05:48:58 it seems to work okay with ant game :p 2011-04-14T05:51:40 *** phire has joined #aichallenge 2011-04-14T05:57:27 hi phire. We now have an official fighting rule. 2011-04-14T05:57:59 cool 2011-04-14T06:02:30 *** FireFly has joined #aichallenge 2011-04-14T06:06:26 *** jaycobcoleman has quit IRC (Quit: Page closed) 2011-04-14T06:07:15 how is your bot going phire ? 2011-04-14T06:08:06 *** phire has quit IRC (Remote host closed the connection) 2011-04-14T06:09:48 delt0r_: I am quite pedantic about nice notation for maths too :P 2011-04-14T06:13:44 *** Stocha has quit IRC (Ping timeout: 252 seconds) 2011-04-14T06:45:16 *** antimatroid has quit IRC (Read error: Connection reset by peer) 2011-04-14T06:45:29 *** antimatroid has joined #aichallenge 2011-04-14T07:02:18 *** Eruonen has joined #aichallenge 2011-04-14T07:07:38 *** Ice_Harley has quit IRC (Ping timeout: 252 seconds) 2011-04-14T07:14:09 *** stocha has joined #aichallenge 2011-04-14T07:14:43 *** stocha has quit IRC (Client Quit) 2011-04-14T07:21:12 *** needsch has joined #aichallenge 2011-04-14T07:52:15 *** Ice_Harley has joined #aichallenge 2011-04-14T07:52:48 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T07:55:33 *** berak has joined #aichallenge 2011-04-14T08:25:07 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T08:26:36 *** berak has joined #aichallenge 2011-04-14T08:56:45 *** sigh has joined #aichallenge 2011-04-14T08:59:52 *** needsch has quit IRC (Quit: Leaving.) 2011-04-14T09:04:11 *** needsch has joined #aichallenge 2011-04-14T09:07:52 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T09:09:44 *** amstan has joined #aichallenge 2011-04-14T09:09:44 *** ChanServ sets mode: +o amstan 2011-04-14T09:13:40 *** berak has joined #aichallenge 2011-04-14T09:18:19 *** amstan has quit IRC (Ping timeout: 260 seconds) 2011-04-14T09:34:26 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T09:37:15 *** berak has joined #aichallenge 2011-04-14T10:02:20 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T10:03:35 *** berak has joined #aichallenge 2011-04-14T10:13:46 *** sigh has quit IRC (Remote host closed the connection) 2011-04-14T10:28:38 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T10:30:35 *** berak has joined #aichallenge 2011-04-14T10:48:57 *** Stocha has joined #aichallenge 2011-04-14T10:49:16 hi in there 2011-04-14T10:49:23 how is everyones bot progressing ? 2011-04-14T10:49:53 now that rules are quite settled, it should be more comfortable to build some prototypes 2011-04-14T10:51:17 where is the announcement about rules? 2011-04-14T10:52:44 found it 2011-04-14T10:55:54 *** aerique has quit IRC (Quit: ...) 2011-04-14T10:56:28 it's hidden :p 2011-04-14T11:07:16 *** amstan_ has joined #aichallenge 2011-04-14T11:07:16 *** ChanServ sets mode: +o amstan_ 2011-04-14T11:07:55 antimatroid: ping 2011-04-14T11:07:56 *** amstan_ is now known as amstan 2011-04-14T11:18:23 *** boegel has quit IRC (Quit: *poof!*) 2011-04-14T11:23:25 *** Frontier has joined #aichallenge 2011-04-14T11:25:14 amstan_: pong 2011-04-14T11:25:27 antimatroid: what should i change that to then? 2011-04-14T11:25:39 something like i suggested below it 2011-04-14T11:27:22 antimatroid: http://ai-contest.com/forums/viewtopic.php?f=21&t=1364&start=10 2011-04-14T11:27:31 you might want to explain what that means 2011-04-14T11:29:05 what what means? 2011-04-14T11:29:28 how the scoring system works 2011-04-14T11:30:31 it's on the specs page clearly :\ 2011-04-14T11:30:49 it has been for ages 2011-04-14T11:32:07 antimatroid: ok 2011-04-14T11:32:24 *** Ice_Harley has quit IRC (Ping timeout: 252 seconds) 2011-04-14T11:34:00 antimatroid: ok, now that we have the rules set, could we finish the content? 2011-04-14T11:34:15 what do you mean? 2011-04-14T11:34:26 i think sigh is keen on simplifying the food bonus 2011-04-14T11:34:31 and i don't disagree with him 2011-04-14T11:34:48 content from the wiki, for putting it on the website 2011-04-14T11:39:25 i'll have a look after, but that should be alright 2011-04-14T11:44:01 mm okay, it's probably clear enougth the scoring rule. my bad. 2011-04-14T11:45:08 antimatroid: i'm alive! 2011-04-14T11:45:13 jmcarthur: yay! 2011-04-14T11:45:20 *** woudshoo has quit IRC (Ping timeout: 260 seconds) 2011-04-14T11:45:21 do you have a haskell starter pack for us? 2011-04-14T11:45:22 jmcarthur: where have you been? :P 2011-04-14T11:45:23 but i won't be able to participate at all this time, most likely 2011-04-14T11:45:26 did you get your job? 2011-04-14T11:45:39 *** boegel has joined #aichallenge 2011-04-14T11:45:39 i have an offer. will be moving and crap probably during the contest 2011-04-14T11:45:44 why does a disconected bot doesn't earn point anymore though ? 2011-04-14T11:45:47 ah, you are like sigh then :P 2011-04-14T11:45:55 like the bot time out, it doesn't receive point. 2011-04-14T11:45:56 *** boegel has quit IRC (Read error: Connection reset by peer) 2011-04-14T11:46:00 even if it has far more ants. 2011-04-14T11:46:01 Stocha: because they're out of the game 2011-04-14T11:46:10 i haven't accepted yet, but i don't have anything else going on right now, so i will probably take it 2011-04-14T11:46:13 their score freezes once they're out 2011-04-14T11:46:21 i don't see the point. it complicates the scoring. 2011-04-14T11:46:22 *** boegel has joined #aichallenge 2011-04-14T11:46:23 jmcarthur: fair enough :) 2011-04-14T11:46:27 *** delt0r_ has quit IRC (Read error: Operation timed out) 2011-04-14T11:46:42 so looks like i'll be jumping into the finance industry in NYC 2011-04-14T11:46:48 it doesn't complicate the scoring, just freeze an ants score if they timeout/crash 2011-04-14T11:46:50 let's say a player that timed out, is still in the game as long as it have ant. It simply auto pass the no move order to all ant. That seems simpler. 2011-04-14T11:46:59 ah, at least there's potential money there for you :P 2011-04-14T11:47:02 i find that more fair also. 2011-04-14T11:47:06 i have contemplated running off to finance 2011-04-14T11:47:11 finance 'industry' *cough* 2011-04-14T11:47:16 they like functional programmers :) 2011-04-14T11:47:22 Frontier: lol 2011-04-14T11:47:30 Frontier: heh 2011-04-14T11:47:50 seems everyone here is going finance 2011-04-14T11:47:52 Frontier: have you seen the meeting summary? 2011-04-14T11:47:54 jeff, bocsi was 2011-04-14T11:47:56 i'm not sure if i'll like it. we'll see 2011-04-14T11:48:11 mightybyte too 2011-04-14T11:48:31 amstan: I've seen it. If you need some visualizer support for the damage option, I'm open for ideas. 2011-04-14T11:48:49 the current visualiser is not good ? 2011-04-14T11:48:58 shouldn't the visualizer handle any kind of battle resolution? 2011-04-14T11:48:58 but yeah, i'm forced to declare my starter abandonware :( 2011-04-14T11:49:05 the idea is to make it more obvious what the battle rules are watching a game 2011-04-14T11:49:07 it is good, but you don't see the damage on the enemy ants 2011-04-14T11:49:09 jmcarthur: can we have a link for it? 2011-04-14T11:49:16 i'm not sure how to do it though, without flashing up the amount of damage to each ant? 2011-04-14T11:49:19 i have terrible luck with IRL vs. ai challenges 2011-04-14T11:49:22 perhaps that could be an option? 2011-04-14T11:49:57 i thought about filling the ant square with some pattern, bar, color whatever 2011-04-14T11:50:01 the visu will have to calculate the score independently of the server engine. 2011-04-14T11:50:11 amstan: sure. i'm not extremely happy with it. it's over-engineered right now, and i was going to tone it back down. also unless somebody else wants to pick it up i doubt the library format will work out as intended 2011-04-14T11:50:13 getting a link 2011-04-14T11:50:29 jmcarthur: i don't care, i just want a link, i'll post it as an issue 2011-04-14T11:50:52 Stocha: or the replay file would need extra information about the damage dealt to each ant in each turn 2011-04-14T11:51:00 how would you flash the damage antimatroid ? 2011-04-14T11:51:09 like 0,4885843 up the ant's head ? 2011-04-14T11:51:20 amstan: http://darcsden.com/jmcarthur/ants-bot 2011-04-14T11:51:30 frontier: that will make it larger. 2011-04-14T11:51:31 jmcarthur: cool, thanks 2011-04-14T11:51:37 i'm rather embarassed by it, but i'll swallow my pride 2011-04-14T11:51:40 a floating point number with 1dp should suffice, rounding down 2011-04-14T11:51:45 Frontier: maybe reasonably larger though. 2011-04-14T11:52:00 0,5 damage then ? 2011-04-14T11:52:10 0,5? 2011-04-14T11:52:14 or 0,4 i guess. not sure what rounding down means :p 2011-04-14T11:52:17 oh, you use , for .? 2011-04-14T11:52:20 i use my previous example 2011-04-14T11:52:25 *** McLeopold has joined #aichallenge 2011-04-14T11:52:25 ho yeah probably 2011-04-14T11:52:27 0.5 2011-04-14T11:52:37 0.4885843 then :p 2011-04-14T11:52:41 yeah 2011-04-14T11:52:44 antimatroid, we use it, too 2011-04-14T11:52:47 so we say an ant dies if 10 damage 2011-04-14T11:52:49 i would just represent that as 4.8 2011-04-14T11:52:54 Frontier: you guys are wrong :P 2011-04-14T11:52:55 and then we go with one diggit 2011-04-14T11:52:58 ./s 2011-04-14T11:53:12 an ant dies with 1.0 damage or more 2011-04-14T11:53:15 5*10^-1 then? 2011-04-14T11:53:17 that would mean 4.8 yeah 2011-04-14T11:53:44 with 10 damage, you got an easier way with representing damage :p 2011-04-14T11:53:44 *** superflit has joined #aichallenge 2011-04-14T11:54:00 0.48 the 0 is of no sure 2011-04-14T11:54:00 antimatroid: c = a + b*(d^3) -- valid haskell even for home-grown matrices :) 2011-04-14T11:54:01 use 2011-04-14T11:54:06 we could go with 100 actually 2011-04-14T11:54:12 so that make it 48 damage. 2011-04-14T11:54:19 jmcarthur: can i set operator precendece? 2011-04-14T11:54:22 yes 2011-04-14T11:54:30 i really need to learn haskell moar 2011-04-14T11:54:30 anyway damage is not realated to score is it ? 2011-04-14T11:54:33 no it isn't. 2011-04-14T11:54:38 but those operators are already defined anyway. just overload them via type classes :) 2011-04-14T11:54:43 it's a principled overloading 2011-04-14T11:54:44 do we need to represent damage ? 2011-04-14T11:55:04 Stocha: the idea was to make it visually easier to see what is happening i think 2011-04-14T11:55:12 representing score would be better. But trickyer. 2011-04-14T11:55:14 it isn't strictly necessary, but may help people understand what's going on 2011-04-14T11:55:31 not really, then flash up how many points each ant got 2011-04-14T11:55:38 then simply surround with an aura if ennemy is in range 2011-04-14T11:55:50 Ah you want people to be able to figure out the rule visually. 2011-04-14T11:55:58 infixr 8 ^ -- example of setting precedence in haskell 2011-04-14T11:56:04 for the ^ operator 2011-04-14T11:56:07 yeah then an optionnal damage number form 0 to 99 2011-04-14T11:56:25 and an aura for showing what ants are in ennemy range. 2011-04-14T11:56:45 But then you need some way of showing what is happening score wise. 2011-04-14T11:56:51 antimatroid: make sure you use a vcs or something 2011-04-14T11:56:52 the problem being it is quite complex. 2011-04-14T11:56:53 mm 2011-04-14T11:57:03 amstan: what for? 2011-04-14T11:57:06 unless you put positive score over ants that gain some 2011-04-14T11:57:13 antimatroid: ghc also accepts unicode input :) 2011-04-14T11:57:18 that would be another flashing number option. 2011-04-14T11:57:23 antimatroid: for editing the haskell starter 2011-04-14T11:57:24 jmcarthur: unicode is wrong :P 2011-04-14T11:57:27 are flashing number easy to do ? 2011-04-14T11:57:29 ha 2011-04-14T11:57:30 frontier: ? 2011-04-14T11:57:39 amstan: you don't want me to play around with it, i know almost no haskell 2011-04-14T11:57:46 oh, ok 2011-04-14T11:58:01 it doesn't have enough maths symbols (for all, exists, relations etc.) or the greek alphabet 2011-04-14T11:58:03 clearly it is wrong 2011-04-14T11:58:05 what map size does the current visu supports also ? 2011-04-14T11:58:07 i'm sorry for dumping it :( 2011-04-14T11:58:08 element of relation 2011-04-14T11:58:22 antimatroid: it does have forall, exists, etc... 2011-04-14T11:58:39 o rly, now i need to get them on my keyboard 2011-04-14T11:58:47 i don't understand why they aren't already on my keyboard :( 2011-04-14T11:58:50 antimatroid: i use agda-mode's input method 2011-04-14T11:58:57 antimatroid: so i can just type \forall and \exists 2011-04-14T11:58:58 Stoach: i was afk 2011-04-14T11:59:28 is it easy to do flashing numbers frontier ? 2011-04-14T11:59:40 and a soret of aura for ants in ennemy radius ? 2011-04-14T12:00:02 we would need two optional flashy numbers. One for damage taken. And one for score earned by ants. 2011-04-14T12:00:09 * antimatroid looks up agda mode 2011-04-14T12:00:20 Then probably the protocol should be upgraded for the engine to send those values. 2011-04-14T12:00:21 antimatroid: it will appear gibberish to you, but here is a valid agda module: http://www.cse.chalmers.se/~nad/listings/lib-0.5/Relation.Binary.html#1 2011-04-14T12:00:42 antimatroid: by agda-mode i just mean the emacs mode for the agda language. i just ripped the input method so i could use it with haskell 2011-04-14T12:01:18 Maybe only show the flashy numbers when in zoom mode ? 2011-04-14T12:01:39 oh god, haskell is wonderful 2011-04-14T12:01:41 just so confusing 2011-04-14T12:01:53 agda != haskell, to be clear 2011-04-14T12:02:18 yes, but c++ yells at me too much 2011-04-14T12:02:22 and doesn't do enough 2011-04-14T12:02:28 Stocha: Well, it is easy to add anything to the animation sequence if you can live with it playing as fast as the replay. 2011-04-14T12:02:48 haskell isn't confusing once you have a month or two of solid experience under your belt 2011-04-14T12:02:50 i had a problem the other day where i can't index matrix of bools as matrix[location] because you can't return a reference to an element in a vector of bools 2011-04-14T12:02:50 rage 2011-04-14T12:02:53 *** amstan has quit IRC (Ping timeout: 250 seconds) 2011-04-14T12:03:03 *** boegel has quit IRC (Quit: *poof!*) 2011-04-14T12:03:42 If the replay is long and sped up the flash might be very short. 2011-04-14T12:03:46 well in haskell everything is passed by value anyway, so such references are unnecessary :P 2011-04-14T12:04:08 How you you access an element in a matrix? 2011-04-14T12:04:19 with a function 2011-04-14T12:04:36 why not just use an operator? 2011-04-14T12:04:46 it's the same isn't it? really 2011-04-14T12:04:47 (if you really want random access in the first place) 2011-04-14T12:04:55 yeah, it's the same 2011-04-14T12:05:04 operators are typically just binary functions with a different syntax 2011-04-14T12:05:15 you can even take a normal function and use it infix if you wrap it in backticks 2011-04-14T12:05:22 yeah i know that 2011-04-14T12:05:24 5 `mod` 3 2011-04-14T12:05:32 can you define an operator to be infix by default? 2011-04-14T12:05:39 i don't like having the put ` around it 2011-04-14T12:05:57 you mean a normal identifier? 2011-04-14T12:06:03 so you could say 5 mod 3? 2011-04-14T12:06:06 not in haskell 2011-04-14T12:06:08 yeah 2011-04-14T12:06:08 you can in agda 2011-04-14T12:06:11 Fontier: there is a step by step feature in the replay has there not ? 2011-04-14T12:06:14 *** amstan has joined #aichallenge 2011-04-14T12:06:14 *** ChanServ sets mode: +o amstan 2011-04-14T12:06:15 Stocha: Since the replay can theoretically be played backwards (and I would make that possible if it was requested) or at any speed, flashing numbers that should probably be displayed 1 second in any case don't fit in too well. 2011-04-14T12:06:23 in agda you can even define mixfix stuff, like if_then_else_ 2011-04-14T12:06:24 that's silly :\ why not let people define the type of operator it is? 2011-04-14T12:06:27 Stocha: there is, do you think the same as I do? 2011-04-14T12:06:39 fontier: my opinion is that it is enough that people "can" figure out score and damage. Not that it's very user friendly to do so :p 2011-04-14T12:06:49 antimatroid: it's determined by whether its identifier is made up of symbols or alphanumerics 2011-04-14T12:07:18 you can make symbols prefix by wrapping in parens and alphanumerics infix by wrapping in backticks 2011-04-14T12:07:49 you mean +(a, b)? isn't it + a b by default? 2011-04-14T12:07:53 no 2011-04-14T12:07:57 where did i learn that? 2011-04-14T12:07:57 for +, infix is default 2011-04-14T12:07:59 hmmm 2011-04-14T12:08:04 (+) a b 2011-04-14T12:08:05 Frontier: personnaly i would go : number are optional, and only show on zoom mode for one turn (unless you think it can be meaningfull in normal mode) 2011-04-14T12:08:07 would be the other way 2011-04-14T12:08:10 ah yeah 2011-04-14T12:08:11 so the damaged ant would flash up a damage number and the attackers would flash up a score number if they killed the ant 2011-04-14T12:08:31 Fontier: yeah. 2011-04-14T12:08:44 Fontier: but i'm notoriously bad at making good looking stuff :p 2011-04-14T12:09:01 Stocha: I already have that mode where it draws letters over ants. I have to see how it mixes. 2011-04-14T12:09:14 Frontier: i think the numbers would be only marginally usefull. But the "ennemy is in range" aura i would like to have. 2011-04-14T12:09:21 oh 2011-04-14T12:10:03 jmcarthur: i am hopefully going to be doing gsoc, so i may not have much time either, haskell may need to wait till summer 2011-04-14T12:10:11 I think with 8 players even people with normal color sight may have problems to distinguish certain colors. 2011-04-14T12:10:21 Fontier: damage and score is not exclusive 2011-04-14T12:10:24 i think 4 players would be fine 2011-04-14T12:10:50 Stocha: hmm, that would be up to 3 text lines on a single ant :p 2011-04-14T12:10:58 If we could rule out the max number of players that would be good for visualizer stuff i think. 2011-04-14T12:11:25 Fontier: what about making the 3 options exclusives ? or letter view /numbers exclusives ? 2011-04-14T12:11:32 or damage/score exclusive ? 2011-04-14T12:11:55 Stocha: I'm not sure. I implemented everything quite flexible now. Player numbers aren't a problem except for the obvious color confusion. 2011-04-14T12:12:05 okay 2011-04-14T12:12:20 have you try a 256x256 game with 1000 turn and 8 players ? 2011-04-14T12:12:31 i think it would be hard on the visualizer 2011-04-14T12:12:49 Stocha: That sounds good. Maybe I should implement buttons that open menus, like the 'caption' menu, or the 'display mode' menu 2011-04-14T12:12:49 like you need 2gb to use it, and wait 5 minutes for it loading :p 2011-04-14T12:13:12 Stocha: I didn't like the loading times and removed them 2011-04-14T12:13:13 I think the idea is that numbers score and damage would only be used for "debugging" 2011-04-14T12:13:48 Fontier : let's stress test your visu a bit and see what it can handle easilly / acceptably then ? 2011-04-14T12:14:18 I think 256x256 maps, with increasing number of hunter bots and 1000 turn long is good for that. 2011-04-14T12:16:43 What I don't like about 1000 turns and large maps is that the games become a big bunch of colored pixels flashing up. You have a hard time to follow individual ants or see animations. Planetwars was better there since you could start your 1000 ships from a small number of planets only. 2011-04-14T12:16:45 Frontier: what's the deal with games going really fast if they're more than 200 turns long? 2011-04-14T12:16:57 it's almost impossible to watch the games on "play" and see what is happening :P 2011-04-14T12:17:13 antimatroid: Someone once said that games should take no more than one minute to watch. 2011-04-14T12:17:26 is it possible to provide a scroll bar people can use to adjust how fast it goes? 2011-04-14T12:17:32 i think pw had something like that in the end 2011-04-14T12:17:42 a scrollbar? really? 2011-04-14T12:17:46 antimatroid: if you want it slower, you can drag the mouse 2011-04-14T12:17:48 whatever, slider 2011-04-14T12:17:49 I remember + and - 2011-04-14T12:18:01 + and - is fine too 2011-04-14T12:18:01 everyone wants features on the visualizer, it's hilarious 2011-04-14T12:18:13 we don't want to have it look like the space shuttle 2011-04-14T12:18:16 amstan: It's inspiring ^^ 2011-04-14T12:18:19 we've gotta keep Frontier on his toes :P 2011-04-14T12:18:24 i guess 2011-04-14T12:19:09 frontier: like you skip frames 2011-04-14T12:19:21 fontier: you still have to skip them fast enough though 2011-04-14T12:20:13 We want a very easy simple view for going through games. And then more precise if we need to understand what's going on. Like the zoom 2011-04-14T12:20:22 Stocha: I don't have frames in a fixed rate. I interpolate between the two frames that are around a time x. Frame 1 may be at x - 10 seconds, and frame 2 at x + 2.1 seconds 2011-04-14T12:20:23 although the 10x10 zoom is a bit brutal :p 2011-04-14T12:20:41 uh 2011-04-14T12:20:44 janzert: when are you available? i'll need some help getting to know your install scripts 2011-04-14T12:20:55 The zoom is 20x20 btw ;) 2011-04-14T12:20:56 janzert: are you ok this weekend? 2011-04-14T12:21:07 ah. that's even more brutal then. 2011-04-14T12:21:22 That is because 10x10 is already the maximum zoom in unzoomed mode 2011-04-14T12:21:39 would it be possible to have like a mouse wheel that zoom (x+1)(x+1) at a time ? 2011-04-14T12:21:54 uh ? 2011-04-14T12:22:06 i'm not sure i used last version or anything. 2011-04-14T12:22:21 Oo ... well if browsers don't catch some combination of Shift+Alt+Strg+Mouse-Wheel that would work. 2011-04-14T12:22:26 contestbot: later tell i'm looking at getting buildbot going, i'll need some help to get to know your setup scripts, when are you available to irc? is this weekend ok? 2011-04-14T12:22:26 amstan: Error: That is an invalid IRC nick. Please check your input. 2011-04-14T12:22:38 Well after this round of "feature" the visualiser should be finish. Because rules won't evolved a lot now. 2011-04-14T12:22:39 hehe 2011-04-14T12:22:44 contestbot: later tell janzert i'm looking at getting buildbot going, i'll need some help to get to know your setup scripts, when are you available to irc? is this weekend ok? 2011-04-14T12:22:44 amstan: Ready to serve, my lord. 2011-04-14T12:23:03 Fontier: make the wheel optional if possible. 2011-04-14T12:23:04 * amstan always wondered if contestbot would send tells to random nicks that don't exist 2011-04-14T12:23:15 what is strg ? 2011-04-14T12:23:23 ctrl, sorry 2011-04-14T12:23:49 ah. simple mouse wheel is already taken i suppose :p 2011-04-14T12:23:51 ConTRtroL=STeueRunG 2011-04-14T12:24:06 maybe... to srcoll the page? :p 2011-04-14T12:24:06 then don't use mouse wheel. use control + arrow ? 2011-04-14T12:24:23 or anything that suit the zooming 2011-04-14T12:24:36 i don't know how it's done usually 2011-04-14T12:24:47 scrolling elements of pages isn't that uncommon 2011-04-14T12:24:51 surely there is a common pattern for zooming in there 2011-04-14T12:25:07 and scrolling yes. 2011-04-14T12:25:15 it's also a good way of allowing people to stumble across the feature :p 2011-04-14T12:25:47 ah you have a deutchen ctrl then :p 2011-04-14T12:26:07 ctrl+left jumps multiple pages back in history and ctrl+up selects the next hyperlink 2011-04-14T12:26:20 Can not javascript or whatever u used override key stroke mouse wheel strokes ? 2011-04-14T12:26:55 Stocha: unfortunately not. usually they are both executed 2011-04-14T12:27:05 Use two buttons i guess. 2011-04-14T12:27:34 or split in two the one you already have. 2011-04-14T12:27:45 *** bhasker has joined #aichallenge 2011-04-14T12:28:46 I'll add another magnifying glass and put a + and - in the center 2011-04-14T12:30:39 and then zoom 2x from the current size (which will be 10 at max on a large screen or small map) up to 20x20. 2011-04-14T12:31:26 But first I think I should make the zoomed mode a bit faster by only drawing what is visible. 2011-04-14T12:32:17 *** Kingpin13 has joined #aichallenge 2011-04-14T12:32:44 Frontier: can there be a way to scroll with keystrokes ? :p 2011-04-14T12:32:46 the map 2011-04-14T12:33:11 *** McLeopold1 has joined #aichallenge 2011-04-14T12:33:17 (i would find it easier sometime, for the 20x20 zoom at least :p ) 2011-04-14T12:33:21 i'm trying right now 2011-04-14T12:33:40 up/down will scroll the web page 2011-04-14T12:33:48 *** McLeopold has quit IRC (Ping timeout: 240 seconds) 2011-04-14T12:33:51 *** ahmedhelal has joined #aichallenge 2011-04-14T12:33:53 there is no AZ on zoom mode as it stand. 2011-04-14T12:34:29 there is: http://marco-leise.homedns.org/antgui/stable/visualizer.php?game_id=2 2011-04-14T12:34:47 I tested in Opera, Firefox and Chrome. 2011-04-14T12:34:53 what will be the maximum minimum density for initial food ? 2011-04-14T12:35:22 antimatroid: ^ 2011-04-14T12:35:47 i had an old version :p 2011-04-14T12:36:13 i tested in safari max os x. 2011-04-14T12:36:15 seems to work now. 2011-04-14T12:36:23 i don't have the problems i used to have 2011-04-14T12:36:51 *** McLeopold1 is now known as McLeopold 2011-04-14T12:37:07 Frontier: :) 2011-04-14T12:37:22 *** Chris_0076 has joined #aichallenge 2011-04-14T12:37:26 Stocha has a question about the initial food that I cannot answer 2011-04-14T12:37:40 yeah that was for mcleopold i guess :) 2011-04-14T12:37:44 Stocha: we've already answered this, we don't know 2011-04-14T12:37:51 what's up? 2011-04-14T12:37:53 for the moment you can assume all land squares as an upper bound 2011-04-14T12:38:00 so initial food is 0% map and up to 100% map. 2011-04-14T12:38:09 no water squares for confusion? :( 2011-04-14T12:38:11 in reality i suspect we will start with almost no food present 2011-04-14T12:38:17 100% map might be overdoing it a bit though 2011-04-14T12:38:28 i mean 100% ground map :p 2011-04-14T12:38:41 that makes quite a lot of ants to care for :p 2011-04-14T12:38:41 chain reactions are cool to watch 2011-04-14T12:38:43 in the games i have run, the maps are flooded if you start with too much food and have spawning 2011-04-14T12:38:49 and flooded maps are boring 2011-04-14T12:39:05 i used up to 90% in my testings. 2011-04-14T12:39:28 it's a setting among others. it should be decided up front, and offers varity. 2011-04-14T12:39:29 Frontier: did i give you replay files where i literally started with like 50% food? 2011-04-14T12:39:29 *** delt0r_ has joined #aichallenge 2011-04-14T12:39:37 like say 80% of initial ground is a maximum. 2011-04-14T12:39:47 then people can tune their engine to be sure not to go out of time. 2011-04-14T12:39:48 much lower than that 2011-04-14T12:39:58 i think we could almost start with 0 food 2011-04-14T12:40:01 if we're doing spawning 2011-04-14T12:40:15 0 start is certainly an intersting setting. But not very diverse. 2011-04-14T12:40:32 it has the problem of people coming across each other near the start and just offing each other 2011-04-14T12:40:37 you could go for 0 - 1000 up to 80% map size. 2011-04-14T12:40:40 antimatroid: Yes I watched a game where the map was flooded pretty much 2011-04-14T12:40:52 i still think it should be quite small, and I think we might need to decrease the spawn rate too 2011-04-14T12:41:14 what's is spawning ? ah you mean spawning food. 2011-04-14T12:41:19 yep 2011-04-14T12:41:44 the there is the question of how food spawn. :p 2011-04-14T12:42:01 I think you would go for 1 food/player per turn as the basis. but maybe variety can be added. 2011-04-14T12:42:06 I'd say 5% ground coverage should be the max starting food 2011-04-14T12:42:20 1% seems to work quite well 2011-04-14T12:42:24 0-5% ground ? with a upper cap ? 2011-04-14T12:42:34 i think variety is good :p 2011-04-14T12:42:39 Stocha: that's the current rate for spawning, i'm worried it's too high though 2011-04-14T12:42:41 4% gets a little crowded with dumb bots 2011-04-14T12:42:44 5% doesn't sound like that much 2011-04-14T12:42:52 Stocha: you would be surprised 2011-04-14T12:43:00 i am fine with capping it at 5 for the moment 2011-04-14T12:43:15 Real games will be far faster than random bots /hunter bots :) 2011-04-14T12:43:24 antimatroid: are you happy with the battle resolution now? :) 2011-04-14T12:43:25 not necessarily 2011-04-14T12:43:33 McLeopold: couldn't be happier :) 2011-04-14T12:43:34 okay i'm fine with 5% max too, let's see how it goes for a 256x256 full ground map 2011-04-14T12:44:04 that's 3200 food at start. 2011-04-14T12:44:05 it's also the weekend for me 2011-04-14T12:44:07 :D 2011-04-14T12:44:19 Stocha: see, even that's pretty much too much 2011-04-14T12:44:30 then let's 5% capped at 1000 ? 2011-04-14T12:44:39 0-5% capped at 1000 ? 2011-04-14T12:44:45 nah, leave it at 5% 2011-04-14T12:44:56 the idea is to have a wide net to start with that can be restricted 2011-04-14T12:44:58 maybe there won't be 256x256 full ground maps also :p 2011-04-14T12:45:11 it's better to restrict the rules when improving rather than changing them 2011-04-14T12:45:24 About the spawning, will you allow assymetrical spawn ? 2011-04-14T12:45:33 yes, you can do symmetric spawning already 2011-04-14T12:45:47 i don't want anything to do with asymmetric maps or spawning, it's too random, impossible to test with etc. 2011-04-14T12:45:50 i know that. i wonder about assymetrical 2011-04-14T12:45:55 okay. 2011-04-14T12:46:09 so you'll have to decide spawn / turn ratio then. 2011-04-14T12:46:14 *** Naktibalda has quit IRC (Quit: ChatZilla 0.9.86.1 [Firefox 4.0/20110318052756]) 2011-04-14T12:46:16 it could have some randomness built in also. 2011-04-14T12:46:32 what do you mean by randomness? 2011-04-14T12:46:36 let's say some game have 10% to 30% chance of each turn being a spawn turn. 2011-04-14T12:46:42 Do you all agree that large maps are good? Because I think it will look confusing and prefer 80x60. 2011-04-14T12:46:53 so a 10% game, will have 10% for each turn to be spawning food symetrically 2011-04-14T12:46:54 Frontier: what's a large map? 2011-04-14T12:47:10 256x256 is large. 2011-04-14T12:47:11 100x100 and larger 2011-04-14T12:47:23 i don't want much smaller than 80x80 2011-04-14T12:47:24 i think we need large games, if only to see that they add nothing. 2011-04-14T12:47:31 and we've capped at 256x256 for the moment 2011-04-14T12:47:33 we need very small maps too. 2011-04-14T12:47:47 256x256 seems reasonable max in my testing. 2011-04-14T12:47:54 bigger won't add anything 2011-04-14T12:47:59 yeah, let's test every size and then see what is most interesting. 2011-04-14T12:48:01 unless you go for very huge number of player. 2011-04-14T12:48:16 I think map diversity if very important. 2011-04-14T12:48:16 that will be best done with a beta server/tcp 2011-04-14T12:48:22 but at some point it might not do much 2011-04-14T12:48:24 put on a bunch of maps and play a bunch of games and ask what people think 2011-04-14T12:48:33 for example maybe 128x128 and 256x256 are the same. 2011-04-14T12:48:47 in my 1vs1 testing i had that feeling kinda. 2011-04-14T12:48:52 if we want to hide the number of players, we need to use 120x240/120 i think 2011-04-14T12:48:59 although food density with fixed rate is lower in bigger maps. and such. 2011-04-14T12:49:00 * Frontier wonders why noone asked for coordinate hints on mouse-over in the visualizer 2011-04-14T12:49:08 actually, not if we use like 4/6 2011-04-14T12:49:17 whats 120x240/120 ? 2011-04-14T12:49:28 either x240 or x120 2011-04-14T12:49:31 lcm(2,3,4,5,6,8) 2011-04-14T12:49:40 uh ? 2011-04-14T12:49:53 is that symetricall stuff vocabulary ? 2011-04-14T12:49:56 the number of rows for example is divisible by the number of players 2011-04-14T12:50:07 why not add some buffer zones ? 2011-04-14T12:50:16 so if the dimensions aren't divisible by every possible number of players, people get information about how many players there might be 2011-04-14T12:50:21 maybe that's not possible i don't know :p 2011-04-14T12:50:23 antimatroid: If you scew the squares you can have the total number of squares equal the lcm. 2011-04-14T12:51:01 what does scew means ? 2011-04-14T12:51:11 oh my spelling 2011-04-14T12:51:15 does it means starting is not square shaped ? 2011-04-14T12:51:36 McLeopold: how is your symmetric map gen going? 2011-04-14T12:51:45 i like both types of maps 2011-04-14T12:51:58 There is already a java symmetric map generator version. i saw it. 2011-04-14T12:52:06 McLeopold: my bot can expand like 4-5 times faster than hunter bot too :) 2011-04-14T12:52:21 shearing I mean 2011-04-14T12:52:45 i think there should be some variety in map generator codes. Maybe like base random walker be the default, and then 10% probability of triggering special generators. Like the labyrinth style. 2011-04-14T12:52:51 or lower than 10% in some cases maybe. 2011-04-14T12:53:05 Can we do this: http://ants.zeroviz.us/Kl0Kh/ on a much smaller map as well? 2011-04-14T12:53:32 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T12:53:37 do what? 2011-04-14T12:53:48 how many player is there on this map frontier ? 2011-04-14T12:54:07 10 2011-04-14T12:54:10 What are the constraints for map size and symmetricals. 2011-04-14T12:54:25 you can have maybe more symetrical home than you have players also 2011-04-14T12:54:29 to blurr the data. 2011-04-14T12:54:31 but the map size is 100x120, so this is no proof 2011-04-14T12:54:36 *** berak has joined #aichallenge 2011-04-14T12:54:37 is this actually symmetric? http://ants.zeroviz.us/Kl0Kh/ 2011-04-14T12:54:43 it won't be worth than the randomness for assymetrical bots strength. 2011-04-14T12:54:49 there's 7 ppl 2011-04-14T12:54:55 amstan: It irritated me too 2011-04-14T12:55:05 amstan: it is yes 2011-04-14T12:55:09 I though: HOW the fuck is this possible?!?!? 2011-04-14T12:55:14 amstan: yes it is :) 2011-04-14T12:55:31 Frontier: group theory got me the answer 2011-04-14T12:55:31 how is what possible ? 2011-04-14T12:55:31 i'll take your word for it, lol 2011-04-14T12:55:46 it looks like it is i mean. 2011-04-14T12:55:49 the order of an element of the cartesian product of two groups is the lcm of hte orders of each element 2011-04-14T12:56:24 and now for non-math students 2011-04-14T12:56:24 uh ? 2011-04-14T12:56:28 and of course is itself a group 2011-04-14T12:56:35 Frontier: +1 2011-04-14T12:56:57 don't you mathematician have easy to pronounce word for easy to understand stuff ? 2011-04-14T12:57:00 hmm okay 2011-04-14T12:57:28 like levenstein distance = edit distance 2011-04-14T12:57:46 if you have rows and row_translate, the number of translates it takes to get back into the same square from repeated translations is rows/gcd(rows, row_translate) 2011-04-14T12:57:54 you don't have to remember all the name of the contributing mathematicians do you 2011-04-14T12:58:07 does that make sense? 2011-04-14T12:58:18 where gcd would be greater common divisor 2011-04-14T12:58:21 yep 2011-04-14T12:58:23 yes it does, because I thought about that earlier 2011-04-14T12:58:39 but can't you add somme buffer zones ? 2011-04-14T12:58:48 without breaking the symmetry too much. 2011-04-14T12:58:53 then, the idea is to have row_translate and col_translate so that if you take a location, n repeated translations will get you back to the exact same square 2011-04-14T12:58:59 like say you have your symetric map. You add a row. 2011-04-14T12:59:00 symmetry is not to be broken 2011-04-14T12:59:26 where n is the number of players 2011-04-14T12:59:53 i also make sure no two players start in the same row or column, as it's visually more appealing and makes food spawning easier 2011-04-14T12:59:58 so i you build a 8 player symmetrical stuff, and only put 4 on it. it won't be symmetrical anymore ? 2011-04-14T13:00:04 *** bhasker has quit IRC (Quit: bhasker) 2011-04-14T13:00:13 but that's just a matter of making sure the order of row translations is the same as for col translations 2011-04-14T13:00:27 Stocha: depending on which players you remove, no 2011-04-14T13:00:54 There is no solution from N payer symetrical down to p player symmetrical ever ? 2011-04-14T13:01:06 why would you need to? 2011-04-14T13:01:08 without changing the map only the number of spawned players 2011-04-14T13:01:17 to hide the number of players. 2011-04-14T13:01:27 or at least blurr it. 2011-04-14T13:01:30 you wouldn't always be able to restrict it to less players 2011-04-14T13:01:52 if number of new players divides the old number you might 2011-04-14T13:01:58 but i'm not promising that 2011-04-14T13:02:02 symetricall is to much bother :p 2011-04-14T13:02:07 no it's not 2011-04-14T13:02:14 what about a mix of symetrical and asymetrical then ? 2011-04-14T13:02:20 antimatroid: would the row and the col each have to be lmc(2,3,4,5,6,8) on such maps? 2011-04-14T13:02:21 that's the plan 2011-04-14T13:02:21 like 80 symmetric, and 20% assymetric ? 2011-04-14T13:02:28 ah 2011-04-14T13:02:30 but everyone that has used asymmetric so far has said the results are too random 2011-04-14T13:02:40 the result are random. 2011-04-14T13:02:40 Frontier: yes 2011-04-14T13:02:47 but i wonder about "too random" 2011-04-14T13:02:52 but if we used say just 4/6 players, your lcm is much lower 2011-04-14T13:03:17 i certainly was able to assert the relative strength of my bot 1vs1 on assymetrical map. 2011-04-14T13:03:27 with quite some precision i would add. 2011-04-14T13:03:37 Stocha: it's harder when there are a few thousand quite different bots 2011-04-14T13:04:05 The pairing usually goes be some clever pairing schemes 2011-04-14T13:04:27 as long as it 1vs1 i'm confident about the rankings; For 100 000 games and more. 2011-04-14T13:04:32 even with 5000 players. 2011-04-14T13:04:42 and clever pairing. 2011-04-14T13:04:42 *** bhasker has joined #aichallenge 2011-04-14T13:04:49 bhasker: :) 2011-04-14T13:04:57 i no nothing of multiplayer though. i certainly can't figure it . 2011-04-14T13:05:34 the current scoring method doesn't work for 1v1 when the game doesn't end before max turns 2011-04-14T13:05:35 i have a litle time, i should work on my litle v2 bot i suppose. see you. 2011-04-14T13:06:10 1vs1 match should be mixed in though. like at least 10% of the games. 2011-04-14T13:06:22 if only to blur the number of player. 2011-04-14T13:06:44 well the scoring does work for 1vs1. It's only dum. 2011-04-14T13:06:56 but you can make bot to try to maximize their scores. 2011-04-14T13:07:17 haha 2011-04-14T13:07:19 hey anti 2011-04-14T13:07:23 hows it been 2011-04-14T13:07:34 *** Stocha has quit IRC (Quit: Page closed) 2011-04-14T13:07:34 not too bad, except i have a cold and winter is coming :( 2011-04-14T13:07:40 what about you? 2011-04-14T13:09:12 winter is coming? that must be an awesome thing.. over 10C temps have started here and I already miss winter 2011-04-14T13:10:11 amstan: wtf is wrong with you? 2011-04-14T13:10:22 no man.. winter's the best 2011-04-14T13:10:34 it would be if we got enough snow for me to snowboard 2011-04-14T13:10:39 but we don't, so it just sucks 2011-04-14T13:11:04 *** bhasker has quit IRC (Quit: bhasker) 2011-04-14T13:14:32 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T13:16:40 *** berak has joined #aichallenge 2011-04-14T13:20:01 *** amstan has quit IRC (Ping timeout: 250 seconds) 2011-04-14T13:30:53 *** stocha has joined #aichallenge 2011-04-14T13:31:12 @later amstan you should correct your forum message on scoring to make it compatible with scoring spec. 2011-04-14T13:31:13 stocha: No! 2011-04-14T13:31:28 @later tell amstan you should correct your forum message on scoring to make it compatible with scoring spec. 2011-04-14T13:31:28 stocha: Ready to serve. 2011-04-14T13:31:34 what no. you are a robot. don't say no ! 2011-04-14T13:32:04 say escuse master, i may have been unworthy of your clear phrasing. Or something like that. 2011-04-14T13:32:07 really. 2011-04-14T13:36:18 stocha: contestbot owes us nothing 2011-04-14T13:40:07 *** stocha has quit IRC (Quit: Page closed) 2011-04-14T13:40:48 *** Blkt has joined #aichallenge 2011-04-14T13:41:17 good evening everyone 2011-04-14T13:41:46 *** nann has quit IRC (Read error: Connection reset by peer) 2011-04-14T13:45:18 *** Apophis has joined #aichallenge 2011-04-14T14:10:24 contestbot: do you have a conciousness? 2011-04-14T14:10:24 Frontier: Error: You must be registered to use this command. If you are already registered, you must either identify (using the identify command) or add a hostmask matching your current hostmask (using the "hostmask add" command). 2011-04-14T14:17:53 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T14:20:32 *** berak has joined #aichallenge 2011-04-14T14:31:32 *** McLeopold has quit IRC (Ping timeout: 250 seconds) 2011-04-14T14:34:45 *** bhasker has joined #aichallenge 2011-04-14T14:38:53 *** needsch has quit IRC (Quit: Leaving.) 2011-04-14T14:40:30 *** McLeopold has joined #aichallenge 2011-04-14T14:42:18 *** needsch has joined #aichallenge 2011-04-14T14:53:37 *** Naktibalda has joined #aichallenge 2011-04-14T14:54:14 *** boegel has joined #aichallenge 2011-04-14T14:56:11 *** AlliedEnvy_ has joined #aichallenge 2011-04-14T14:56:40 *** AlliedEnvy has quit IRC (Read error: Operation timed out) 2011-04-14T14:57:49 *** Blkt has quit IRC (Ping timeout: 240 seconds) 2011-04-14T15:08:24 http://i.imgur.com/yu4ii.jpg 2011-04-14T15:08:29 that is my new favourite image of all time 2011-04-14T15:14:08 *** Accoun has quit IRC () 2011-04-14T15:28:01 *** Accoun has joined #aichallenge 2011-04-14T15:29:49 *** amstan has joined #aichallenge 2011-04-14T15:29:49 *** ChanServ sets mode: +o amstan 2011-04-14T15:32:40 what version of mysql is in contest server? 2011-04-14T15:34:04 it will be whatever is standard on latest ubuntu 2011-04-14T15:34:29 Naktibalda: what happened to your repo? it's full of cherry picks 2011-04-14T15:34:34 sql dump looks like it was made by 4.0 or earlier 2011-04-14T15:35:10 amstan: you better tell me how to synchronize it with main repo without dropping and recreating :) 2011-04-14T15:35:23 I think the current sql dump is mostly hand made, you'd have to as McLeopold about it 2011-04-14T15:35:30 Naktibalda: you might have to do that 2011-04-14T15:35:50 Naktibalda: but when it's clean, all you have to do is pull from us and push to yours 2011-04-14T15:35:58 ask McLeopold, even 2011-04-14T15:36:29 I tried to use Fork queue :) 2011-04-14T15:36:55 Naktibalda: that's really the bad tool, i have no idea why they have that.. 2011-04-14T15:37:14 Naktibalda: i maybe could fix it, if you could give me push access to it 2011-04-14T15:40:14 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T15:48:35 *** berak has joined #aichallenge 2011-04-14T16:08:44 *** andy_ has joined #aichallenge 2011-04-14T16:13:40 *** boegel has quit IRC (Quit: Leaving) 2011-04-14T16:18:48 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T16:21:21 *** berak has joined #aichallenge 2011-04-14T16:44:54 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T16:48:28 *** berak has joined #aichallenge 2011-04-14T16:52:04 *** Naktibalda has quit IRC (Quit: ChatZilla 0.9.86.1 [Firefox 3.6.16/20110323143040]) 2011-04-14T16:53:06 *** Blkt has joined #aichallenge 2011-04-14T16:58:18 *** andy_ has quit IRC (Quit: Page closed) 2011-04-14T17:10:52 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T17:11:36 *** berak has joined #aichallenge 2011-04-14T17:18:54 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T17:19:37 *** berak has joined #aichallenge 2011-04-14T17:52:23 *** FireFly has quit IRC (Quit: swatted to death) 2011-04-14T18:00:00 *** delt0r___ has joined #aichallenge 2011-04-14T18:01:06 *** delt0r_ has quit IRC (Ping timeout: 240 seconds) 2011-04-14T18:04:47 *** berak has quit IRC (Read error: Connection timed out) 2011-04-14T18:05:35 *** berak has joined #aichallenge 2011-04-14T18:08:05 *** berak has quit IRC (Client Quit) 2011-04-14T18:29:56 *** ltriant has joined #aichallenge 2011-04-14T18:33:36 *** Kingpin13 has quit IRC (Quit: You're a kitty!) 2011-04-14T19:09:59 *** mceier has quit IRC (Quit: leaving) 2011-04-14T19:14:51 *** dlila has joined #aichallenge 2011-04-14T19:17:44 *** Chris_0076 has quit IRC (Ping timeout: 246 seconds) 2011-04-14T19:23:21 *** needsch has quit IRC (Quit: Leaving.) 2011-04-14T19:28:28 *** sigh has joined #aichallenge 2011-04-14T19:30:23 *** Chris_0076 has joined #aichallenge 2011-04-14T19:35:03 *** dlila has quit IRC (Quit: Leaving) 2011-04-14T20:07:45 *** superflit has quit IRC (Quit: superflit) 2011-04-14T20:09:10 *** McLeopold has left #aichallenge 2011-04-14T20:33:05 *** Cyndre has quit IRC (Quit: Leaving) 2011-04-14T20:37:51 crazy, tonight a table quiz question was, what is the capital of Tasmania, and I didn't know. 2011-04-14T20:38:40 although we have at least one Tassies here on IRC with whom I talk regularly. 2011-04-14T20:52:59 *** bhasker has quit IRC (Quit: bhasker) 2011-04-14T20:57:19 *** Frontier has quit IRC (Quit: Leaving.) 2011-04-14T21:04:25 *** McLeopold has joined #aichallenge 2011-04-14T21:29:12 *** Eruonen has quit IRC () 2011-04-14T21:43:45 lol 2011-04-14T21:50:07 *** antimatroid has quit IRC (Ping timeout: 250 seconds) 2011-04-14T22:26:09 *** antimatroid has joined #aichallenge 2011-04-14T22:43:21 *** antimatroid has quit IRC (Read error: No route to host) 2011-04-14T22:43:40 *** antimatroid has joined #aichallenge 2011-04-14T22:48:18 Frontier 2011-04-14T22:48:23 s not here for me to have a go at him :( 2011-04-14T22:51:39 good night people 2011-04-14T22:51:47 *** Blkt has quit IRC (Remote host closed the connection) 2011-04-14T22:53:04 jmcarthur: please don't tell me function names can't be overloaded in haskell? 2011-04-14T22:53:21 but don't lie to me either :P 2011-04-14T23:00:35 actually, i guess that wouldn't work with functions all taking one parameter? 2011-04-14T23:00:37 hmmm bugger okay 2011-04-14T23:09:53 antimatroid: they can't in python 2011-04-14T23:10:00 also... i'm pretty sure they can in haskell 2011-04-14T23:10:07 amstan: i hate python :P 2011-04-14T23:10:11 isn't that one of the cool thinkings in haskell? 2011-04-14T23:10:14 well, dislike, i hate java 2011-04-14T23:10:16 you can do stuff like fib 1 = 1? 2011-04-14T23:10:40 that's pattern matching isn't it? 2011-04-14T23:10:45 i'm not sure 2011-04-14T23:46:11 amstan: yes, you can 2011-04-14T23:46:40 yay, i know something about haskell! 2011-04-14T23:46:51 heh 2011-04-14T23:50:34 so... apparently minecraft can take 1.8GB huge screenshots 2011-04-14T23:50:39 TGA files 2011-04-14T23:50:46 any idea what to open them with without crashing 2011-04-14T23:50:50 i have 4GB of ram 2011-04-14T23:55:54 antimatroid: overloading is facilitated by type classes 2011-04-14T23:57:45 antimatroid: but even so, it doesn't work by number of arguments. it works by type. 2011-04-14T23:58:12 antimatroid: (and interestingly, not only the types of the arguments, but also the type of the result) 2011-04-14T23:59:24 jmcarthur: that was my point, you can't overload with a different lot of parameters? 2011-04-14T23:59:31 also, it's intended to be a principled kind of overloading. you shouldn't be using it just because you want two functions to have the same name. you should be using it because there is something general that you want to capture over many types 2011-04-14T23:59:46 antimatroid: there are type system tricks to do it, but they are ugly and fragile