2010-09-09T01:20:51 *** contestbot has joined #aichallenge 2010-09-09T01:20:52 *** ChanServ sets mode: +o contestbot 2010-09-09T01:21:46 *** contestbot changes topic to "" 2010-09-09T01:21:47 in galcon the fleets are a bit more discrete 2010-09-09T01:22:08 i.e., non integer time. 2010-09-09T01:22:11 *** contestbot changes topic to "Official Google AI Challenge: http://ai-contest.com/" 2010-09-09T01:22:27 *** contestbot changes topic to "Official Google AI Challenge: http://ai-contest.com/ || Contest will start Friday September 10th." 2010-09-09T01:22:33 *** Utkarsh has joined #aichallenge 2010-09-09T01:22:33 *** contestbot changes topic to "Official Google AI Challenge: http://ai-contest.com/ || Contest will start Friday September 10th. || Developers wanted, contact j3camero." 2010-09-09T01:22:51 sorry for the spam, it's over 2010-09-09T01:23:03 what i don't like about option #3 is: where do the losing ships "go"? 2010-09-09T01:23:21 antimatroid1: assuming (R,B) and N for the participants... method 1 gives 4N, method 2 gives 3R, method 3 gives 1N 2010-09-09T01:23:34 in all other circumstances it takes 1 ship to kill 1 ship 2010-09-09T01:24:11 yeah, i think it's between 1 and 2 2010-09-09T01:24:18 i personally think #3 is the simplest to resolve 2010-09-09T01:24:25 yeah but it doesn't make any sense 2010-09-09T01:24:34 my pseudo for 2 needs to be changed when fixing up number of ships to a new owner after it was neutral 2010-09-09T01:24:54 i don't think it's that expensive too, just a little tedious 2010-09-09T01:25:09 the intuition about #3 is that each RBN triplet is equally matched and therefore they cancel each other out 2010-09-09T01:25:24 1000R ships attack, 500G ships attack, 499N are present. winner is R with 500 ships, as if the 499N weren't there at all 2010-09-09T01:25:35 i guess that's true 2010-09-09T01:25:54 but if it's a triplet then red shuld have like 500.33333 ships 2010-09-09T01:26:02 a1k0n: that is odd.. it feels like the 499 should count too 2010-09-09T01:26:04 hmm? 2010-09-09T01:26:14 why 500.33333? 2010-09-09T01:26:45 because there isn't a full triplet for the last ship 2010-09-09T01:26:53 or whatever 2010-09-09T01:27:11 right, there's a pair for the last ship 2010-09-09T01:27:14 also equally matched 2010-09-09T01:27:19 *** Utkarsh has quit IRC 2010-09-09T01:27:35 i think it should be each players ships split in half and play each other players ships 2010-09-09T01:27:47 i think that might be equivalent 2010-09-09T01:27:51 (sorry, I'm thinking about that and it seems right atm) 2010-09-09T01:27:51 Or maybe weighted split 2010-09-09T01:29:25 all right, well, in that case jkl's patch is right 2010-09-09T01:30:01 problem still comes with (20, 10) arriving at 20 2010-09-09T01:30:12 i don't (personally) see that as a problem case 2010-09-09T01:30:20 neutral maintains ownership of 0 bots and players 1 and 2 lose their ships 2010-09-09T01:31:01 i don't see any way around it 2010-09-09T01:31:09 yeah, that's what it would do 2010-09-09T01:31:09 i just considered it undesirable intuitively 2010-09-09T01:31:35 anyway, i need to go back to uni and finish this computer graphics assignment i've been neglecting (it's due tomorrow) 2010-09-09T01:31:46 but with that rule, it's strategically a waste to have your ships arrive at the same time anywhere as your opponent 2010-09-09T01:31:53 there is another unbiased option, but it involved randomness 2010-09-09T01:31:53 *** Utkarsh has joined #aichallenge 2010-09-09T01:31:57 right 2010-09-09T01:31:58 you lose ships with no gain 2010-09-09T01:32:05 * AlliedEnvy tries to imagine how weighted split would play it out - 10 sends 5 to each 20, each 20 sends 40/3 to the other 20 and 20/3 to the 10 2010-09-09T01:32:13 i think no matter what that is the case though 2010-09-09T01:32:18 if you fight each other before neutral, or after neutral, then you are at least doing damage to your opponent even if you lose 2010-09-09T01:32:33 but remember that they lose as much as you do 2010-09-09T01:32:42 of course 2010-09-09T01:32:43 jmcarthur: it is anyway, the 1000/500/499 version, it's still better to arrive the next turn rather than the same time. 2010-09-09T01:32:49 Zaphus: yes 2010-09-09T01:32:57 but in the 3-way case, you lose your ships and they would have lost theirs anyway 2010-09-09T01:33:07 i would consider that a potential tactic, not a flaw 2010-09-09T01:33:27 to know when to wait and when not to 2010-09-09T01:33:28 it's frustratingly subtle IMO 2010-09-09T01:33:44 none of the proposed methods would change that 2010-09-09T01:33:49 it means you have to really understand that implementation detail slash game rule to implement a competitive bot 2010-09-09T01:33:51 a1k0n: my favourite, in a sick and twisted way 2010-09-09T01:34:13 in all three cases, it's better to wait an extra turn 2010-09-09T01:34:31 with options 1 or 2, if you send X ships at a planet, you are killing X additional ships of your opponents', period. with option 3, you may be killing 0 additional 2010-09-09T01:34:38 depends on growth rate cough cough 2010-09-09T01:34:55 with all three options, you guarantee to kill maximally if you just wait an extra turn before attacking 2010-09-09T01:34:55 and other factors 2010-09-09T01:35:02 okay, aside from growth rate 2010-09-09T01:35:06 and outside forces 2010-09-09T01:35:09 sure 2010-09-09T01:35:11 :P 2010-09-09T01:35:15 well if you let them take the planet then yeah you have the growth rate to contend with 2010-09-09T01:35:27 so you kill X-G of their ships if you wait 2010-09-09T01:35:28 depends on a few things a1k0n 2010-09-09T01:35:44 can someone help me test the bot? 2010-09-09T01:35:51 !rankings 2010-09-09T01:35:52 jmcarthur: Error: "rankings" is not a valid command. 2010-09-09T01:35:53 sorry, i really have to leave soon 2010-09-09T01:36:01 report in #hypertriangle if you're open to it 2010-09-09T01:36:03 where is philhassey - he could tell us how galcon handles it 2010-09-09T01:36:18 Zaphus: galcon works a little differently in the first place i think 2010-09-09T01:36:26 it still needs to handle it i think 2010-09-09T01:36:32 contestbot: tell later jmcarthur test 2010-09-09T01:36:51 i suspect that official galcon simply picks some arbitrary order for each individual ship to attack 2010-09-09T01:36:55 did that work? 2010-09-09T01:37:00 galcon attacks one ship at a time, probably attacking neutral before each other 2010-09-09T01:37:02 nope 2010-09-09T01:37:08 i would suggest picking first/last sent fleet for fighting first/second 2010-09-09T01:37:15 but then they may have been sent simultaneously as well 2010-09-09T01:37:19 contestbot: later tell jmcarthur test 2010-09-09T01:37:19 amstan: The operation succeeded. 2010-09-09T01:37:23 antimatroid1: they still could ahve been sent simultaneously 2010-09-09T01:37:28 yo contestbot ! 2010-09-09T01:37:37 that worked 2010-09-09T01:37:40 cool! 2010-09-09T01:38:17 amstan: btw, it may be a good idea to prefix contestbot's outputs with a space or two to help prevent bot loops 2010-09-09T01:38:30 or... how about: Both arriving fleets fight the neutrals first, so 499/2 each (toss a coin for the half) then they fight each other so the 1000/500/499 would resolve to 749/250/0 then to 499/0/0 2010-09-09T01:38:47 Zaphus: that would be method 2 2010-09-09T01:38:48 jmcarthur: i don't think that's an option, if you can find something like that please tell me: http://supybook.fealdia.org/devel/ 2010-09-09T01:39:03 oh it's an existing bot 2010-09-09T01:39:04 jmcarthur: Ok, then I like method 2 :-) 2010-09-09T01:39:17 since the fleets are all attacking the *planet* option 2 probably makes the most sense 2010-09-09T01:39:45 well, they are moving *to* the planet. they wouldn't attack anything if nothing was there anyway 2010-09-09T01:39:59 this kind of is a question of what a move fundamentally is 2010-09-09T01:40:02 it's about the equivalent of each individual fighter hitting the planet one at a time from each side 2010-09-09T01:40:19 why one at a time? why not simultaneously? 2010-09-09T01:40:36 the turns make the ships move all at once 2010-09-09T01:40:50 the tough case is: 500/500/499 - who gets the left over ship, R or G ? 2010-09-09T01:40:57 all die 2010-09-09T01:41:08 just like in 500/500/0 2010-09-09T01:41:40 no, my method would have gone: 500/500/499 -> 249/250/0 -> 0/1/0 (kill the neutrals first) 2010-09-09T01:41:46 *** Utkarsh has quit IRC 2010-09-09T01:41:49 that's a great example to make me not like #1, for the record 2010-09-09T01:41:56 as that would leave neutral with 499 ships 2010-09-09T01:42:14 Zaphus: you method is unpredictable 2010-09-09T01:42:17 yeah, that feels like we're doing battles in space, and we dont do that anywhere else 2010-09-09T01:42:18 i'd rather avoid randomness 2010-09-09T01:42:28 randomness == bad 2010-09-09T01:42:29 *your 2010-09-09T01:42:36 jmcarthur: agreed, no good with odd numbers=bad 2010-09-09T01:42:46 Zaphus: method 2 is not actually random 2010-09-09T01:42:57 it would result in all players dying 2010-09-09T01:42:59 so would method 3 2010-09-09T01:43:01 can you point me to the methods again ? 2010-09-09T01:43:05 http://ai-contest.com/forum/viewtopic.php?f=18&t=419&start=0#p2419 2010-09-09T01:43:07 Hmm, perhaps this needs partial ships, at least temporarily during the calculations 2010-09-09T01:43:07 (at ai-contest.com) 2010-09-09T01:43:25 AlliedEnvy: yeah that is one variant that is equivalent to method 2 2010-09-09T01:43:49 "in the 'method 2' equivalence class" i'll call that 2010-09-09T01:44:27 i think half ships competing with each other is the best, i don't like the (20, 10) to neutral 20 result going to 0 owned by neutral, but I see no better option 2010-09-09T01:44:36 and reasonably easy to implement 2010-09-09T01:45:17 and it's still fair given the bots are expected to know that 2010-09-09T01:45:54 what if ownership was defined to change when ships hit 0 on a planet? 2010-09-09T01:45:58 would that make this any easier? 2010-09-09T01:46:29 you mean should a player be able to take ownership of a planet even with no ships left? 2010-09-09T01:46:33 That favors the attacker, slightly 2010-09-09T01:46:49 only shifts number of ships to send by 1 2010-09-09T01:46:52 that confuses the issue when both players attack a planet with equal forces and it all goes to 0 2010-09-09T01:47:03 (20,20) vs. 20 2010-09-09T01:47:05 yeah you're right, scratch that thought 2010-09-09T01:47:17 *** Utkarsh has joined #aichallenge 2010-09-09T01:47:18 ok, so if we go with method 3, how does a green planet fair - it needs different rules right, you merge the planet with the airborne forces for the fight: 1000G, 500R, 499G == 999G 2010-09-09T01:47:25 seemingly easy problem is tricky! 2010-09-09T01:47:56 option 3 stinks 2010-09-09T01:47:56 Zaphus: method 3 is the simplest, IMO. the winner is the one with the most ships, and he loses the number of ships that the second largest force has 2010-09-09T01:48:17 and all other forces lose everything 2010-09-09T01:48:28 yeah. that's a given in any of these 2010-09-09T01:48:35 jmcarthur: but it feels wrong for 500 ships to arrive at a planet that has 499 ships, and 499 red, and it wins 2010-09-09T01:48:36 jmcarthur: But there's vanishing ships in that case 2010-09-09T01:48:47 Zaphus: with only 1 ship! 2010-09-09T01:49:05 AlliedEnvy: RGN triplets cancel out. that's the intuition 2010-09-09T01:49:19 except it isnt intuition when it feels wrong 2010-09-09T01:49:19 and pairs cancel out after one side is gone 2010-09-09T01:49:25 Yes but each winning ship cancels two losing ships 2010-09-09T01:49:39 AlliedEnvy: that is what any 1v1v1 fight must do 2010-09-09T01:49:45 resolve the air battle, then the land battle - thats what my gut says 2010-09-09T01:49:59 Zaphus: so method 1 then 2010-09-09T01:50:25 i think method 1 is the most palatable 2010-09-09T01:50:30 Zaphus: which is the one that will leave 500R,500G,500N at 500N 2010-09-09T01:50:39 even though method 3 might technically be the most fair 2010-09-09T01:50:39 with v1, N 2010-09-09T01:50:39 for me, yeah. just feels more like what I expect when I see the fleets flying in 2010-09-09T01:50:53 N can't send ships 2010-09-09T01:51:22 jmcarthur: players fight each other first 2010-09-09T01:51:22 basically it's giving Neutral the advantage, which is fine because nobody is playing that role... 2010-09-09T01:51:23 but yeah, method 1 doesn't naturally generalize to >2 players unlike method 3 2010-09-09T01:51:23 option 1 2010-09-09T01:51:45 a1k0n: solve the 3 player version after the contest is done :-) 2010-09-09T01:51:57 yeah i'm not too concerned with >2 player games 2010-09-09T01:52:02 i would be down for a second n-player contest a month later 2010-09-09T01:52:08 a1k0n: finally! 2010-09-09T01:52:11 a win! 2010-09-09T01:52:36 on official? 2010-09-09T01:52:38 any way to do a vote using your chat bots ? 2010-09-09T01:52:50 no 2010-09-09T01:52:52 lambdabot can do it, but i have to look up how 2010-09-09T01:52:52 tcp 2010-09-09T01:52:55 still testing... 2010-09-09T01:53:03 @list 2010-09-09T01:53:03 http://code.haskell.org/lambdabot/COMMANDS 2010-09-09T01:53:03 brian-dev? 2010-09-09T01:53:13 still kitani-dev 2010-09-09T01:53:14 err kitani 2010-09-09T01:53:25 i promptly made a bunch of changes. 2010-09-09T01:53:33 so, i wonder if i undid whatever it was that worked... 2010-09-09T01:53:39 @poll-add threeway 2010-09-09T01:53:39 Added new poll: "threeway" 2010-09-09T01:53:49 @poll-choice threeway method1 2010-09-09T01:53:49 Unknown command, try @list 2010-09-09T01:54:02 @choice-add threeway method1 2010-09-09T01:54:03 New candidate "method1", added to poll "threeway". 2010-09-09T01:54:06 @choice-add threeway method2 2010-09-09T01:54:06 New candidate "method2", added to poll "threeway". 2010-09-09T01:54:07 @choice-add threeway method3 2010-09-09T01:54:07 New candidate "method3", added to poll "threeway". 2010-09-09T01:54:21 @vote threeway method3 2010-09-09T01:54:21 voted on "method3" 2010-09-09T01:54:26 * AlliedEnvy is still wondering how a weighted split all-fight-all would turn out 2010-09-09T01:54:38 @vote threeway method1 2010-09-09T01:54:38 voted on "method1" 2010-09-09T01:54:42 *** vikhyat has joined #aichallenge 2010-09-09T01:54:55 we should decide on when to close the poll 2010-09-09T01:55:09 @vote threeway method3 2010-09-09T01:55:09 voted on "method3" 2010-09-09T01:55:22 pretty soon - you need to run the changes on the server for 24 hours if you can, so we can debug it 2010-09-09T01:55:29 i am pretty much indifferent 2010-09-09T01:55:46 method3 generalizes, is fair, and is already implemented in a server patch 2010-09-09T01:55:47 Zaphus: i think only j3camero can do that anyway 2010-09-09T01:56:01 Zaphus: which will not be until tomorrow evening probably 2010-09-09T01:56:13 i expect it'll be argued about on the forums throughout the entire contest 2010-09-09T01:56:19 yeah 2010-09-09T01:56:20 but if it's documented it's done 2010-09-09T01:56:31 we should let the poll continue until something can actually be done 2010-09-09T01:56:40 I don't care about generalizing - and I'm not convinced about 'fair' because it makes the neutral planets effectively 0 whenever two larger fleets come in (they have no effect on the fight) 2010-09-09T01:56:42 i was going to submit a svn branch but i just get 500 errors 2010-09-09T01:56:42 guys, put the poll on the forums, it's much better there 2010-09-09T01:56:43 @vote threeway "method 3" 2010-09-09T01:56:44 usage: @vote 2010-09-09T01:56:50 i think we should at least let it go for several hours in case somebody gets a think 2010-09-09T01:56:58 antimatroid1: not quotes or space 2010-09-09T01:57:06 jmcarthur: put the poll on the forums, it's much better there 2010-09-09T01:57:16 okay okay 2010-09-09T01:57:18 @vote threeway method3 2010-09-09T01:57:19 voted on "method3" 2010-09-09T01:57:23 well 2010-09-09T01:57:34 one has to admit method3 deepens the game tactically 2010-09-09T01:57:40 amstan: the problem is that it hasn't been discussed as deeply there. it's fresh on our minds here 2010-09-09T01:57:54 a1k0n: no, I don't have to admit that... even if it's true :) 2010-09-09T01:57:55 Maybe create a brand new thread on the forums outlining pro's cons of each? 2010-09-09T01:57:55 s/deeply/recently/ :P 2010-09-09T01:58:03 i really have to run, i'll jump on again from uni 2010-09-09T01:58:04 antimatroid1: that would be besrt 2010-09-09T01:58:05 ugh, i was about to go to bed 2010-09-09T01:58:05 yeah i'd say it's pretty in-depth on the forum 2010-09-09T01:58:06 best* 2010-09-09T01:58:25 somebody else will have to do it aside from me 2010-09-09T01:58:30 a1k0n: new thread, clean and at the top 2010-09-09T01:58:34 whoever does it just make sure to be fair 2010-09-09T01:58:46 i would do it, but i really don't have the time, i should have left an hour ago 2010-09-09T01:58:47 i will place my vote tomorrow 2010-09-09T01:58:59 Given how long there is left until the comp starts, choosing anything will be better than whats there now - all three of the methods have arguments for them 2010-09-09T01:59:17 I just want to know what to type into by bot to make it smarter :-) 2010-09-09T01:59:19 yes, there's no argument for "let's have fleets randomly disappear" 2010-09-09T01:59:29 but we still have to wait for j3camero to put it on the server. since we have time anyway, we might as well use it for the poll 2010-09-09T01:59:48 @poll 2010-09-09T01:59:48 Maybe you meant: poll-add poll-close poll-list poll-remove poll-result poll-show pl spell tell 2010-09-09T01:59:51 Zaphus: the contest isn't official started yet anyway :P 2010-09-09T01:59:52 if we have a clean first post in a thread, we have a place to direct complainers the entire contest 2010-09-09T01:59:57 @poll-show 2010-09-09T01:59:57 Missing argument. Check @help for info. 2010-09-09T02:00:03 i will do it tomorrow afternoon if it's not done yet 2010-09-09T02:00:06 i'm closing the poll. we can do this on the forum 2010-09-09T02:00:12 @poll-close threeway 2010-09-09T02:00:12 Poll "threeway" closed. 2010-09-09T02:00:20 @poll-result threeway 2010-09-09T02:00:20 Poll results for threeway (Closed): method3=3, method2=0, method1=1 2010-09-09T02:00:21 ftr 2010-09-09T02:00:23 no, never stop a threeway ! 2010-09-09T02:03:31 i'm torn about a forum poll 2010-09-09T02:03:37 *** kozlovsky has joined #aichallenge 2010-09-09T02:03:43 people are going to be trigger friendly about their vote without really thinking 2010-09-09T02:03:56 could you at least post what is currently possibly considered the better option? 2010-09-09T02:04:00 hmmm, negative ships, that can't be good 2010-09-09T02:04:22 i will write up a detailed post in technical issues tomorrow that can be stickied for moaners to be directed towards 2010-09-09T02:05:59 maybe just write up #3 as the way it's going to go (seems to be favoured here right now). It really doesnt matter in the end as long as it is predictable, it's just rules. you could say that the neutral fleet retreats to another planet and only fights if there are none left, it wouldnt matter - it's just rules 2010-09-09T02:06:40 if there was an obvious best choice, we'd go with it, but I don't think there is 2010-09-09T02:07:01 hence allowing more people to have some say i think makes it "more fair" 2010-09-09T02:09:02 with the exception of time, and that design-by-committee is rarely the best. The more I think about it, the more #3 seems OK to me. 2010-09-09T02:09:58 *** icefox has quit IRC 2010-09-09T02:10:02 *** dhartmei_ has joined #aichallenge 2010-09-09T02:10:18 yes, i initially argued vehemently against it but it has enough advantages that i'm also OK with it 2010-09-09T02:12:02 which was which, again? 2010-09-09T02:12:10 (for those of us just checking in) 2010-09-09T02:14:05 yes, can you repeat, please 2010-09-09T02:16:25 http://ai-contest.com/forum/viewtopic.php?f=18&t=419&start=0#p2419 2010-09-09T02:16:25 (at ai-contest.com) 2010-09-09T02:16:35 the first, second, and third scenarios there 2010-09-09T02:16:46 w00t, 38 turn win against a1k0n 2010-09-09T02:16:56 wish you hadn't told me how simple it was :) 2010-09-09T02:16:57 the third is what seems best though the first is what seems most natural 2010-09-09T02:17:01 haha 2010-09-09T02:17:06 oh, twice! 2010-09-09T02:17:47 hm, i may have to use the most conservative version 2010-09-09T02:17:51 *** Zaphus has quit IRC 2010-09-09T02:19:09 if i run different versions of my bot against each other on map 7, player 1 always wins 2010-09-09T02:20:15 is the map symmetrical? 2010-09-09T02:20:42 it looks symmetrical but i wonder 2010-09-09T02:21:15 oh there are fleet disappearance bugs 2010-09-09T02:21:29 (strangely they are in player 2's favor) 2010-09-09T02:21:50 Ok, I have a very complicated way to get from 1000/500/499 to R wins with 665 2010-09-09T02:21:52 heh and three-way-combat bugs 2010-09-09T02:22:12 *** Scrap has joined #aichallenge 2010-09-09T02:22:18 ok, check this out 2010-09-09T02:22:18 ok this engine is just broken 2010-09-09T02:22:22 where do my fleets go? 2010-09-09T02:22:23 http://www.benzedrine.cx/planetwars/canvas?game_id=1284013064|a1k0n|kitani-dev 2010-09-09T02:22:59 at which turn? 2010-09-09T02:24:40 i may be miss important discussion, but #3 seems ideal 2010-09-09T02:25:31 ah, i lied 2010-09-09T02:26:20 hmm with the rewritten combat resolution it's still biased towards player 1 2010-09-09T02:26:25 #3 is somewhat unnatural as a ship can die without killing another 2010-09-09T02:26:41 i.e. the sum doesn't remain odd/even necessarily 2010-09-09T02:26:49 dhartmei_: agreed unless you consider a three-way-battle where they all kill each other equally 2010-09-09T02:26:50 how can I run ./tcp with java? I was unable to do it... 2010-09-09T02:27:01 with a java bot 2010-09-09T02:27:19 Scrap: make a wrapper script such that you can run with a single filename instead of a java -jar commandline 2010-09-09T02:27:49 I have tried, but it didn't work 2010-09-09T02:28:36 hmm the fleet disappearing might be more fundamental 2010-09-09T02:28:37 *** smhanov has quit IRC 2010-09-09T02:29:01 where are fleets disappearing, in the official engine? 2010-09-09T02:29:10 in the java engine at least 2010-09-09T02:30:47 a1k0n: it says execv: MyBot.sh: failed 2010-09-09T02:31:00 is MyBot.sh executable and does it have #!/bin/sh? 2010-09-09T02:31:20 tcp.c needs a perror("execv") there or something 2010-09-09T02:31:22 a1k0n: Scrap: alternately, put the whole command in quotes 2010-09-09T02:31:33 e.g. "java -jar foo.jar" 2010-09-09T02:31:39 seigen-web: that doesn't work beacuse the whole command is issued as the first argument to execv() 2010-09-09T02:31:56 a1k0n: i forgot about #!bin thanks :) 2010-09-09T02:32:24 a1k0n: You LOSE against a1k0n :( 2010-09-09T02:32:30 if tcp.c used popen instead it'd also work 2010-09-09T02:32:42 You WIN against shredder 2010-09-09T02:32:53 a1k0n :) 2010-09-09T02:32:53 when the evil shredder attacks, those a1k0n boys don't cut 'em no slack 2010-09-09T02:33:16 it was a test. my bot's no good 2010-09-09T02:33:50 (http://www.nesplayer.com/tmnt/cartoon.htm) 2010-09-09T02:34:34 a1k0n: is it possible to watch the fight now? 2010-09-09T02:34:39 http://www.benzedrine.cx/planetwars/canvas?game_id=1284013895|a1k0n|shredder 2010-09-09T02:34:45 http://www.benzedrine.cx/planetwars/getplayer?player=shredder 2010-09-09T02:35:22 thanks 2010-09-09T02:35:36 it's really bad :) 2010-09-09T02:41:19 Scrap: if you want to let it run for a while/stay connected, you can do 2010-09-09T02:41:34 while (true); tcp stuff; sleep x; done; 2010-09-09T02:41:49 *** Umsturz has joined #aichallenge 2010-09-09T02:41:50 where x is some number so you maybe don't get paired against the same guy 2010-09-09T02:43:02 seigen-web thanks. I will do some time later or it is just massacred.. 2010-09-09T02:43:30 aw dude 2010-09-09T02:43:34 ? 2010-09-09T02:43:47 the java code is iterating through an arraylist and removing elements mid way through 2010-09-09T02:43:58 ugh 2010-09-09T02:44:02 so when a battle resolves, another one disappears 2010-09-09T02:44:07 and not in a clever way, right? 2010-09-09T02:44:21 no, in a way that invalidates the iterator it's using 2010-09-09T02:44:41 yuck 2010-09-09T02:44:47 the old code didn't do that actually, it's this rewritten code that does 2010-09-09T02:47:07 *** antimatroidUni has joined #aichallenge 2010-09-09T02:47:20 Well no wonder 2010-09-09T02:48:13 I'm surprised it didn't throw an exception, IIRC usually if you try to modify an iterable it throws one 2010-09-09T02:48:33 hmm, i might be totally wrong here 2010-09-09T02:48:59 *** albert___ has joined #aichallenge 2010-09-09T02:49:34 hey hey hey 2010-09-09T02:49:40 a1k0n: welcome 2010-09-09T02:49:40 hey 2010-09-09T02:50:49 spambert* 2010-09-09T02:52:25 *** contestbot has joined #aichallenge 2010-09-09T02:52:28 *** ChanServ sets mode: +o contestbot 2010-09-09T02:54:55 albert___: i demand a rematch on the official server :) 2010-09-09T02:55:21 *** Zaphus has joined #aichallenge 2010-09-09T03:01:09 *** Zaphus has quit IRC 2010-09-09T03:05:52 oh, ahha, the iterator itself has the remove method, and that works. neat. so that isn't the problem 2010-09-09T03:15:06 *** McLeopold has joined #aichallenge 2010-09-09T03:17:20 *** rwa has joined #aichallenge 2010-09-09T03:18:50 *** s_denchev has joined #aichallenge 2010-09-09T03:19:42 is it possible to determine map number if I know game_id on http://www.benzedrine.cx ? 2010-09-09T03:23:19 yes, view the page source of the canvas page, look for the var data = line, the first part is map_id=maps/map39.txt 2010-09-09T03:25:28 ok, thanks 2010-09-09T03:28:51 * AlliedEnvy keeps coming across other ways to resolve three-way conflicts 2010-09-09T03:29:07 someone just reset benzedrine? 2010-09-09T03:29:09 AlliedEnvy: hit me 2010-09-09T03:29:51 Like if you treat each force as the length of a potential triangle - if it forms a triangle, everyone loses, otherwise the winner is the longest side, with remaining forces minus the sum of the other two sides 2010-09-09T03:30:40 *** aerique has joined #aichallenge 2010-09-09T03:31:27 forms a triangle what? 2010-09-09T03:31:55 Basically, for any player A to win, A > B+C, then what's left is A-B-C 2010-09-09T03:32:41 that is, #1 2010-09-09T03:33:04 It's #1 but with the first rule applied to neutral 2010-09-09T03:34:14 Rather, it treats neutral as just another player 2010-09-09T03:36:15 Take concrete example: neutral=10, red=11, blue=12 2010-09-09T03:36:28 Everyone loses 2010-09-09T03:36:45 oh my god i am dumb 2010-09-09T03:36:51 in the proposed solution blue takes it with 1 2010-09-09T03:37:06 no they don't 2010-09-09T03:37:15 12 - 11 - 10 = -9 2010-09-09T03:37:26 i mean in "method 3" or whatever. 2010-09-09T03:37:34 oh, okay 2010-09-09T03:38:19 With this "triangle" method, neutral keeps it with 0 2010-09-09T03:39:10 so, if blue issues fleet 11 and the fleet 1 it is better then fleet 12 2010-09-09T03:39:18 *then 2010-09-09T03:39:46 Hmm yes 2010-09-09T03:40:59 * Zannick found the bug for issue 72 2010-09-09T03:41:08 totally my fault :( sorry guys 2010-09-09T03:41:27 what really? 2010-09-09T03:42:09 yeah i moved an if block out of a loop and it had a break statement in it 2010-09-09T03:42:22 huh 2010-09-09T03:42:28 what's weird is, even in the rewritten code i see this happening 2010-09-09T03:42:48 no, the rewritten code is where the bug is 2010-09-09T03:42:58 i just posted the fix to issue 72 2010-09-09T03:43:04 which is to remove the break statement 2010-09-09T03:43:18 i mean the rewritten battle code patch from issue 64 2010-09-09T03:43:26 oh 2010-09-09T03:44:11 wait, fleets are disappearing in engine.py, too? 2010-09-09T03:44:28 no, i actually don't know but i'm looking at the rewritten java version 2010-09-09T03:44:51 i have two planets in the center with 20, both with 13-sized fleets from enemies arriving 2010-09-09T03:45:02 on the next frame, one has 12 and the other has 25 2010-09-09T03:45:10 (they're 5-growth planets) 2010-09-09T03:45:24 yeah, the rewritten java version has the bug 2010-09-09T03:45:48 i just can't see how 2010-09-09T03:45:49 namely, if any planet is taken over, no other planet is taken over 2010-09-09T03:46:04 this isn't even a takeover situation 2010-09-09T03:46:13 it's a different fleet-disappearance bug 2010-09-09T03:46:22 oh 2010-09-09T03:49:52 are those the only two fleets landing on that turn? 2010-09-09T03:50:11 i believe so 2010-09-09T03:50:16 yes 2010-09-09T03:50:48 http://code.google.com/p/ai-contest/source/branch?spec=issue77&branch=%2Fbranches%2Fissue64_69_72_73 2010-09-09T03:50:54 http://code.google.com/p/ai-contest/source/diff?format=side&show=review&spec=issue77&r=221&path=%2Fbranches%2Fissue64_69_72_73%2Fplanet_wars%2Fviz%2FGame.java 2010-09-09T03:52:42 GetPlanet(f.DestinationPlanet()) == p) 2010-09-09T03:52:46 i wonder whether that's valid 2010-09-09T03:53:16 *** Palmik has joined #aichallenge 2010-09-09T03:54:10 should be 2010-09-09T03:54:40 ugly, but ends up comparing addresses 2010-09-09T03:54:43 yeah no reason the pointer would change 2010-09-09T03:56:57 well, Planet implements cloneable, maybe it should have a .equals() method 2010-09-09T03:56:59 hm, the code is wrong where it chooses winner and second, but that's not the problem 2010-09-09T03:57:34 how so? 2010-09-09T03:58:47 as it proceeds through the list, if it sees a new max, make it max and what was max make second 2010-09-09T03:59:13 say the fleets are 6 and 5 2010-09-09T03:59:25 first max becomes 6, then 5 is not better than 6... 2010-09-09T03:59:31 oh haha right 2010-09-09T03:59:36 so we end with max=6, second=0 2010-09-09T03:59:39 shit that's probably what's wrong with it 2010-09-09T03:59:55 that's definitely a multiple invasion bug 2010-09-09T04:00:00 or even single 2010-09-09T04:00:13 if there are 20 neutral ships and 13 attacking ships and it sees the 20 but fails to see the 13 2010-09-09T04:00:18 that's what it is. good catch. 2010-09-09T04:00:21 oooh, you're right 2010-09-09T04:03:07 http://paste.lisp.org/display/114374 2010-09-09T04:03:09 that look right to you? 2010-09-09T04:03:11 i'm really tired 2010-09-09T04:03:30 so am i, but I'm commenting on the review 2010-09-09T04:04:10 yay now my bot draws against itself so i think that did it 2010-09-09T04:04:40 that looks fine to me, i was going to do nearly the same thing, but with if (> winner) { } else if (> second) 2010-09-09T04:04:43 oh haha that doesn't work at all 2010-09-09T04:04:53 all planets are stuck at 0 2010-09-09T04:04:57 oh, haha 2010-09-09T04:05:06 you have second and winner lines mixed up in the first case 2010-09-09T04:05:13 ops 2010-09-09T04:05:26 definitely tired 2010-09-09T04:06:47 bug probably exists in python version too eh 2010-09-09T04:07:38 yeah, it's the same code but in python 2010-09-09T04:08:10 yep fixed 2010-09-09T04:08:17 Hmm, does planet become neutral when there are 0 ships at the given planet? 2010-09-09T04:08:25 As it should 2010-09-09T04:08:32 it keeps its owner and continues to grow 2010-09-09T04:08:38 you need one extra to take it 2010-09-09T04:08:54 Hmm... I see, is it intended? 2010-09-09T04:08:59 i believe so 2010-09-09T04:09:04 i'd say so, those rules are explicit 2010-09-09T04:09:09 Ok, thanks 2010-09-09T04:09:14 only if it becomes 0 from three-way battle...which can only happen at the moment with three or more players, afaik 2010-09-09T04:09:47 in the revised code it keeps its owner even in that case 2010-09-09T04:09:56 cool 2010-09-09T04:10:09 wow, i'm tired, too 2010-09-09T04:10:22 i typed "backend/engine.java" the first time 2010-09-09T04:11:54 http://paste.lisp.org/display/114374#1 2010-09-09T04:12:52 lgtm 2010-09-09T04:13:16 ok, committed 2010-09-09T04:14:54 a1k0n, we just had quite the fight 2010-09-09T04:15:19 wow 2010-09-09T04:15:23 i'm going to have to improve my bot 2010-09-09T04:15:35 hahah 2010-09-09T04:15:39 another absurdly entertaining match http://www.ai-contest.com/visualizer.php?game_id=4414986 2010-09-09T04:15:45 there was a stalemate for awhile, I wonder who would have won? 2010-09-09T04:16:13 McLeopold: you mean this match right? http://www.benzedrine.cx/planetwars/canvas?game_id=1284019713|McLeopold|a1k0n 2010-09-09T04:16:20 yep 2010-09-09T04:16:33 owned 2010-09-09T04:17:27 Zannick: hahaha 2010-09-09T04:18:00 my bot tends to win when the opponent really wants the center planet 2010-09-09T04:18:43 a bowl of alphabet soup: http://ai-contest.com/visualizer.php?game_id=4415043 2010-09-09T04:20:04 okay, tomorrow night i'm working on *my* bot 2010-09-09T04:20:17 and not tournament infrastructure 2010-09-09T04:20:23 :P 2010-09-09T04:20:25 i really wanted to figure out why the java viz is sooooo slow at parsing its input tonight 2010-09-09T04:20:32 but i'm way too tired to do that now 2010-09-09T04:20:47 anyway it's unfair to work on your bot and not the tournament until friday. :) 2010-09-09T04:20:49 *** antimatroidUni has quit IRC 2010-09-09T04:21:29 aw, gee, you're going to shame me into more bugfixes, aren't you :) 2010-09-09T04:21:41 *** antimatroidUni has joined #aichallenge 2010-09-09T04:21:43 (while i rewrite my own bot) 2010-09-09T04:22:10 i assigned a handful of things to j3camero to review/commit to trunk 2010-09-09T04:22:12 well if jeff accepts this patch and the revised tournament thing we'll have the worst issues taken care of right? 2010-09-09T04:22:17 unless he asks me to do so 2010-09-09T04:22:40 unless i screwed up the scheduler, too :P 2010-09-09T04:22:51 but i hope he's doing good tests on that 2010-09-09T04:23:11 *** McLeopold has quit IRC 2010-09-09T04:24:00 most of the improvements/fixes are blocking on jeff 2010-09-09T04:24:41 is 'blocked on' for entering people or issue numbers or what 2010-09-09T04:24:41 i figure i'll use that time on my bot 2010-09-09T04:24:57 as in, reviews to patches or commits 2010-09-09T04:25:37 i have two or three separate one-line fixes for bugs waiting on him to put them in trunk himself or give me the okay to do so 2010-09-09T04:26:29 it's too bad you can't promote an issue with a code review 2010-09-09T04:26:40 instead of making a new issue for the code review 2010-09-09T04:26:48 i tried that, yeah :P 2010-09-09T04:27:07 anyway, i should sleep 2010-09-09T04:27:11 good night 2010-09-09T04:27:17 oh dammit janzert updated the patch 2010-09-09T04:30:38 *** acieroid has joined #aichallenge 2010-09-09T04:32:25 *** drewrobb has quit IRC 2010-09-09T04:47:42 is it allowed for a bot to store some data in a file so it would have a memory.. ? 2010-09-09T04:48:00 no I think it cant write data 2010-09-09T04:50:24 why are RemoveShips methods introduced ? What do the do? 2010-09-09T04:50:42 You may not write to files. You may however read from files within your submission directory, which will be the current directory. from the rules 2010-09-09T04:53:42 *** vikhyat has quit IRC 2010-09-09T04:57:59 *** Umsturz has left #aichallenge 2010-09-09T05:05:53 *** vikhyat has joined #aichallenge 2010-09-09T05:17:29 yay! my 40lines bot is winning against all the prebuild bots :D but losing badly against any other :/ 2010-09-09T05:18:26 have anyone tried using the canvas visualizer from benzedrine.cx on local games? 2010-09-09T05:20:35 *** danielvf has quit IRC 2010-09-09T05:27:02 *** danielvf_ has joined #aichallenge 2010-09-09T05:34:00 *** Umsturz has joined #aichallenge 2010-09-09T05:42:49 *** foobarbaz has joined #aichallenge 2010-09-09T05:43:35 Palmik: Have you tried using it locally yet? 2010-09-09T05:43:52 *** danielvf_ has quit IRC 2010-09-09T05:44:17 is it possible to get the logfiles of the games played on the servers? 2010-09-09T05:44:44 i don't want to watch the games using the java thingy but just receive the logs 2010-09-09T05:48:33 *** danielvf has joined #aichallenge 2010-09-09T05:51:00 http://www.ai-contest.com/game_info.php?game_id=xyz 2010-09-09T05:52:29 thanks 2010-09-09T05:52:37 danielvf, well, I have downloaded the server code, found the canvas, but I have to parse the game output somehow I guess... probably using the canvas.c 2010-09-09T05:53:13 Palmik: The canvas client plays the game output 2010-09-09T05:53:28 *** foobarbaz has quit IRC 2010-09-09T05:55:42 well, yeah... but let's say, I have output from running the game locally (using the java engine in starter package for example), what should one do to view it using the canvas instead of ShowGame.jar 2010-09-09T05:57:17 Go here, view source 2010-09-09T05:57:18 http://www.benzedrine.cx/planetwars/canvas?game_id=1283991656|inverselimit|kitani-exp 2010-09-09T05:57:27 See the var data = ? 2010-09-09T05:57:34 `var data =` 2010-09-09T05:58:30 Yep... 2010-09-09T05:58:58 anyone using the cpp starter package? 2010-09-09T05:59:12 I saw someone made a python script as well that you can pipe your playgame too and it will automatically open a browser 2010-09-09T05:59:20 http://github.com/pufuwozu/Planet-Wars-Canvas-Visualizer 2010-09-09T05:59:53 Javache, hmm... that would be handy, will try that :) 2010-09-09T06:00:03 Perfect 2010-09-09T06:05:20 Planet-Wars-Canvas-Visualizer: Daniel Von Fange master * ra8dfe3b / js/visualizer.js : Make the fleets not travel too far, again. - http://bit.ly/afavyQ 2010-09-09T06:09:32 Planet-Wars-Canvas-Visualizer: Daniel Von Fange master * r4c7ee46 / generate.py : Merge remote branch 'pufuwozu/master' - http://bit.ly/9rUQcZ 2010-09-09T06:12:34 *** rwa has quit IRC 2010-09-09T06:18:44 *** albert___ has quit IRC 2010-09-09T06:29:05 Planet-Wars-Canvas-Visualizer: Daniel Von Fange master * r2537dab / (readme.md visualize_localy.py generate.py): Add pufuwozu's local viewer code. Add a readme. - http://bit.ly/cOAV8r 2010-09-09T06:30:04 *** kozlovsky has quit IRC 2010-09-09T06:31:54 I see the visualizer seems setup for up to 4 people, but I couldn't get that to work, is it possible atm? 2010-09-09T06:31:59 Javache: I just realized that at turnspersecond = 1, we see a bots eye view of the game 2010-09-09T06:32:30 danielvf: yup 2010-09-09T06:33:02 what is your idea on getting the game data from the PlayGame.jar to javascript? 2010-09-09T06:33:09 i'm not really clear on that 2010-09-09T06:34:04 Javache: it writes it to standard out so if you don't pipe it to ShowGame.jar you can just grab it. 2010-09-09T06:34:22 aerique: yeah, but it's another thing to get it in a live webpage 2010-09-09T06:34:52 there's probably a cool html5 technology we could use for that ;) 2010-09-09T06:35:40 Well, we need a server of some kind 2010-09-09T06:36:12 Javache, are you making a javascript based visualizer? 2010-09-09T06:36:21 javagamer: we already have one 2010-09-09T06:36:34 danielvf: web sockets would be cool for this 2010-09-09T06:36:47 oh, cool 2010-09-09T06:37:13 javagamer: you can see it in use http://www.benzedrine.cx/planetwars/getplayer?player=McLeopold 2010-09-09T06:37:41 Javache: HAve you seen http://www.appcelerator.com/products/titanium-desktop-application-development/ 2010-09-09T06:38:53 That's just javascript!? It's beautiful. 2010-09-09T06:39:23 Thanks! 2010-09-09T06:39:30 Yes, all javascript 2010-09-09T06:39:35 danielvf: might be worth trying out 2010-09-09T06:39:41 but might be overkill too 2010-09-09T06:40:41 Javache: We could run the official game server python code in there as well. 2010-09-09T06:41:26 and provide the whole system of running the bots etc? 2010-09-09T06:41:32 Yeah 2010-09-09T06:42:06 I like the idea of not being responsible for running the game, and just having to parse it 2010-09-09T06:42:37 We should patch the game runner jar, to stream output, rather than wait until the end 2010-09-09T06:43:00 *** smhanov has joined #aichallenge 2010-09-09T06:43:29 danielvf: have you looked at the websockets? 2010-09-09T06:43:44 we could have the client in the browser connect to a certain port and listen there for input 2010-09-09T06:44:02 Javache: yeah, like you said. 2010-09-09T06:44:04 and a python script in the console that listens for input from the game runner and sends that to the client 2010-09-09T06:44:07 Yup 2010-09-09T06:44:16 Don't even need websockets 2010-09-09T06:44:29 Just slowly hand out stuff over http 2010-09-09T06:44:44 (I've tried it and it works) 2010-09-09T06:45:33 we'll have to look how that works with restaring the gamerunner etc 2010-09-09T06:46:13 brb lunch 2010-09-09T06:46:17 So the local visualizer python thing could open it's own webserver, and then send the user's browser to that port. If we inline the css and javascript into the 2010-09-09T06:46:18 laters 2010-09-09T06:46:33 into the page, then w only need to handle one request 2010-09-09T06:46:52 after that one request, the server would shut down. 2010-09-09T06:47:31 The server would just drag out the last of the page, adding script tags with turn data. 2010-09-09T06:48:04 *** Croccam has joined #aichallenge 2010-09-09T06:48:22 hi 2010-09-09T06:49:12 hi Croccam :) 2010-09-09T06:56:43 *** phreeza has joined #aichallenge 2010-09-09T07:16:15 *** Zaphus has joined #aichallenge 2010-09-09T07:17:19 *** mightybyte has joined #aichallenge 2010-09-09T07:20:14 Is the Rankings page down on purpose, or did I just find a bug ? :-) 2010-09-09T07:29:06 anyone here ? 2010-09-09T07:30:03 Zaphus: rankings look up from here 2010-09-09T07:30:20 I can see them too 2010-09-09T07:31:37 They work on IE, but not Firefox 2010-09-09T07:31:42 was working a few hours ago 2010-09-09T07:33:30 Zaphus benzedrine or official? 2010-09-09T07:33:48 official 2010-09-09T07:34:01 but I have a question about benzedrine to follow that :-) 2010-09-09T07:35:43 *** Vi0 has joined #aichallenge 2010-09-09T07:35:59 are any of you guys using benzedrine ? if so, are you doing it from Windows ? because I can't compile tcp.c - it needs heaps of headers I've never heard of 2010-09-09T07:36:05 heh 2010-09-09T07:36:32 your best bet is probably to put it in a VM 2010-09-09T07:36:35 *** Scrap has quit IRC 2010-09-09T07:36:42 or cygwin but thats a pain 2010-09-09T07:37:06 i'm using it, but from OS X 2010-09-09T07:37:08 Hmm... weird... the local visualisers does not work in rekonq but the online one does :) 2010-09-09T07:42:37 *** s_denchev has quit IRC 2010-09-09T07:42:46 someone should write a python version of tcp.c... maybei i'll do that when i'm home from work 2010-09-09T07:43:10 *** s_denchev has joined #aichallenge 2010-09-09T07:44:06 I'm using it from VirtualBox.. couldnt compile it on windows 2010-09-09T07:45:36 ulope i was thinking just that this morning, too busy as it is though... 2010-09-09T07:46:54 phreeza: I know the feeling. My paid-for work productivity has taken a real dive in the last days... 2010-09-09T07:47:13 *** jaspervdj has quit IRC 2010-09-09T07:47:24 ulope i don't even get paid, but i have to pass ;) 2010-09-09T07:48:02 phreeza: Ah you're a student then I assume? 2010-09-09T07:48:24 yep 2010-09-09T07:56:23 Can someone help me with this: http://pastebin.com/DT5d6Lvp 2010-09-09T07:56:28 *** albert_ has joined #aichallenge 2010-09-09T07:56:33 My C++ is pretty rusty 2010-09-09T07:56:53 I'm just trying to sort a vector of planets by size using the built-in sort function 2010-09-09T07:57:11 *** philipj_ has quit IRC 2010-09-09T07:57:14 javagamer: you need to code a custom order functor 2010-09-09T07:57:45 http://pastebin.com/DT5d6Lvp 2010-09-09T07:57:53 What I posted right before you joined 2010-09-09T07:59:33 albert_ shouldn't you be at work? :) 2010-09-09T08:00:30 http://pastebin.com/sA7hGwhZ <- includes the error I'm getting 2010-09-09T08:00:40 javagamer: what is the error? 2010-09-09T08:00:45 ah :) 2010-09-09T08:00:48 bool Planet::operator< (const Planet& i) const 2010-09-09T08:00:53 phreeza: i am 2010-09-09T08:00:59 :) 2010-09-09T08:01:29 ah i see 2010-09-09T08:01:31 niemeyer.mathepool.RWTH-Aachen.DE/ 2010-09-09T08:01:35 heh 2010-09-09T08:01:53 albert_, I just needed to make it constant? 2010-09-09T08:02:05 the function itself and the parameter 2010-09-09T08:02:48 ah and the declaration is wrong 2010-09-09T08:02:57 javagamer, use pointer to this function http://codepad.org/bnjkijJe as 3rd argument to std::sort 2010-09-09T08:03:09 bool operator< (const Planet& i, const Planet& j); 2010-09-09T08:03:31 Thanks everyone :) 2010-09-09T08:03:48 because you might want to sort the planets by something else in the future :) 2010-09-09T08:04:09 it's 10pm thursday night and i'm at uni finishing off an assignment i've been neglecting due to this comp already 2010-09-09T08:04:12 i think i win :P 2010-09-09T08:04:47 i would do it from home but it's graphics and they want me to use some crappy engine that i have to use a lab mac computer for to ensure it'll work when they try to mark it 2010-09-09T08:08:47 *** kozlovsky has joined #aichallenge 2010-09-09T08:10:07 phreeza: working right now on the ai-contest? :) 2010-09-09T08:10:18 i am already planing and thinking about it 2010-09-09T08:10:23 no, trying to do other things 2010-09-09T08:10:37 i have a few new ideas how to do it very exactly 2010-09-09T08:10:38 but i think about it still 2010-09-09T08:11:04 :) interesting 2010-09-09T08:11:39 i'm surprised you are not using neural nets yet for this :) 2010-09-09T08:12:54 phreeza: that is because i am still thinking that i can solve this exactly 2010-09-09T08:16:33 gah, I wish I had more time to play around 2010-09-09T08:16:55 i've still been trying to set up data structures for retrieving information 2010-09-09T08:17:28 you could wait until the comp. starts :-) who am I kidding 2010-09-09T08:17:46 how would that help? :P 2010-09-09T08:18:02 you could at least do tonights homework 2010-09-09T08:18:31 says the guy who hasnt done a drop of homework for over 20 years... unless you count late night work where I actually get paid :-) 2010-09-09T08:19:09 yeah, assignment is not very fun, it's just to finish off a cs major, i almost considered dropping it and the major the other day 2010-09-09T08:24:28 hmm, the haskell starter package looks neat :) 2010-09-09T08:29:19 New sorting error. This was my ultimate goal and I still can't get it to work: http://pastebin.com/s6iSDKkU 2010-09-09T08:29:27 Trying to sort based on distance to a planet 2010-09-09T08:30:21 *** albert_ has quit IRC 2010-09-09T08:30:43 *** seigen-web has quit IRC 2010-09-09T08:30:45 http://pastebin.com/yjMZS0Jx <- should be slightly clearer 2010-09-09T08:33:54 I tried adding the consts I was missing in my previous problem, but that didn't seem to change anything :/ 2010-09-09T08:35:15 I'm not certain I'm overloading the right operator, this is just based off of some code I found for sorting w/ an object 2010-09-09T08:39:20 shouldn't it be like 2010-09-09T08:39:23 um, I guess the comparison function object (third argument) should not be a pointer (this) but the object itself (*this) 2010-09-09T08:39:53 bool operator<(const myObject &a, const myObject &b)? 2010-09-09T08:40:05 i don't know heaps sorry 2010-09-09T08:40:40 yep, you have to overload < 2010-09-09T08:40:42 Racko: That did it! 2010-09-09T08:40:55 great 2010-09-09T08:41:46 I usually use pointer to bool functions or bool functors, since it gives me more freedom :) 2010-09-09T08:42:52 *** otherAntimatroid has joined #aichallenge 2010-09-09T08:43:02 Well, this depends on the location of a planet so I thought it'd be easier to use an object 2010-09-09T08:43:21 If I used a function I'd have to also use global variables I believe 2010-09-09T08:43:58 The Distance function I was using relied on the position of the object I'm using to compare 2010-09-09T08:44:31 no... you would just make statci member function with signature like this 2010-09-09T08:45:01 static bool Planet::compareByDistance(const Planet& planet1, const Planet& planet2) 2010-09-09T08:46:10 then you could use sord like this std::sort(planets.begin(), planets.end(), Planet::compareByDistance) 2010-09-09T08:46:14 *sort 2010-09-09T08:48:42 the return value is incorrect 2010-09-09T08:49:03 you have to return: -1 for less than, 0 for equal, 1 for greater than - your return can only return 2 values 2010-09-09T08:49:50 if (a for sort's 3rd argument the function or functor usually returns true of the the first argument should stay before the sond 2010-09-09T08:50:15 *before the second 2010-09-09T08:50:27 no, its a three-value return - trust me 2010-09-09T08:50:55 usually you cheat and return b-a; because it's just looking at the sign and zero state 2010-09-09T08:51:48 oh, sorry... i just naturally assumed you were using the inbuilt qsort( ) 2010-09-09T08:51:56 if thats a roll your own sort then ignore me 2010-09-09T08:52:27 it's in-buit std::sort :) 2010-09-09T08:52:46 we were talking about 2010-09-09T08:53:08 huh, ok, never used that one before - I always use qsort 2010-09-09T08:53:44 Javache: Committed the canvas visualizer to a branch on the live site 2010-09-09T08:53:58 Javache: maybe they will put it up today 2010-09-09T08:54:06 Zaphus, does qsort work on stl containers? 2010-09-09T08:55:01 it's data-agnostic, just works on blobs of data... probably not a good idea if you are already using std::sort (which can be faster, it appears... you learn something every day!) 2010-09-09T08:56:56 http://www.cplusplus.com/reference/algorithm/sort/ looks similar to your code, are you in the right namespace ? 2010-09-09T08:57:30 yeah, that is std::sort :) 2010-09-09T08:57:57 I guess javagamer is using it from what he has shown 2010-09-09T08:59:08 That's where I got what I had from 2010-09-09T09:00:12 they are using functor in their example, but you can use normal function and pass pointer to that function as the Comparator... for simple ordering such function is usually enought :) 2010-09-09T09:00:56 *** otherAntimatroid has quit IRC 2010-09-09T09:03:13 He is comparing the input planets with the planet *this is referring to, so a static function is not an option. But a non-static one would do it of course. 2010-09-09T09:03:40 unless I'm wrong, that is^^ 2010-09-09T09:04:13 As I said, my C++ is pretty rusty, but that sounds right Racko 2010-09-09T09:04:53 *** antimatroidUni has quit IRC 2010-09-09T09:05:40 I should pay more attention to the snippets next time :/ 2010-09-09T09:06:07 *** antimatroidUni has joined #aichallenge 2010-09-09T09:10:44 *** idevelop has joined #aichallenge 2010-09-09T09:20:07 *** kozlovsky has quit IRC 2010-09-09T09:20:08 I think our bots should be allowed one taunt per game, which draws on the playback viewer :-) "Die Red Scum!" 2010-09-09T09:22:38 what if you're the red one? 2010-09-09T09:26:01 i propose we get an API function 2010-09-09T09:26:08 getOpponentColor() 2010-09-09T09:32:52 *** danielvf has quit IRC 2010-09-09T09:33:07 *** danielvf has joined #aichallenge 2010-09-09T09:38:12 Zaphus: I propose one taunt per planet capture, that flashes after the capture takes place 2010-09-09T09:41:19 phreeza: nice ! 2010-09-09T09:41:59 *** antimatroidUni has quit IRC 2010-09-09T09:44:53 *** vikhyat has quit IRC 2010-09-09T09:47:01 what ai concepts are you guys using? 2010-09-09T09:47:24 i only know minimax 2010-09-09T09:47:25 I envy you guys that you are already thinking about stuff like mocking your opponent :D 2010-09-09T09:47:31 and i don't think it's a proper one 2010-09-09T09:47:33 *** Umsturz has quit IRC 2010-09-09T09:52:46 Well... I'm working now on something along these lines - 1) calculate number of available ships from all my planets (available ships are those which the planet can spare at the moment) 2) Try to capture planets with those ships to get best (ships/s gained) / ships lost ratio (possibly tweaking this criterion)... dunno if it will work well, and also dunno how it would be called since I do not have much of a " 2010-09-09T09:52:48 scientific background" yet. :D 2010-09-09T09:53:16 *** hornairs has joined #aichallenge 2010-09-09T09:58:11 *** Vi0 has quit IRC 2010-09-09T09:59:58 I am not actually working on my bot (other work, dayjob , etc..) but I am thinking that if my bot can take the biggest central planets it will win :) 2010-09-09T10:01:14 because I think that Distance play a big role in the computation of next orders 2010-09-09T10:02:33 Is it possible to pass a variable number of arguments from one function to another? 2010-09-09T10:03:31 s_denchev, you are right, because the coloser your source planet is to your destination planet, the lower is the chance that the opponent can react in time... there is probably more to it :) 2010-09-09T10:05:08 javagamer, look for variadic functions... I!m sure there is some library for your langugage if it does not support it out of the box 2010-09-09T10:05:45 I'm working in C++, I see how to access each argument individually, but I can't seem to figure out how to pass a variable number of them 2010-09-09T10:07:06 Palmik, I'm just pretty much trying to wrap fprintf for easier debugging 2010-09-09T10:07:09 *** icefox has joined #aichallenge 2010-09-09T10:07:12 javagamer, you might find this helpful http://stackoverflow.com/questions/3555583/passing-variable-number-of-arguments-with-different-type-c 2010-09-09T10:08:42 javagamer, also this might be what you are looking for http://www.cplusplus.com/reference/clibrary/cstdio/vprintf/ 2010-09-09T10:09:30 *** blackskad has joined #aichallenge 2010-09-09T10:10:23 I'm trying to get my output as a file and just want to wrap fprintf to handle all the file specific stuff that won't change so all I have to do is call log(char data[], ...) 2010-09-09T10:10:27 Thanks for the links btw 2010-09-09T10:11:14 *** PurplePanda has joined #aichallenge 2010-09-09T10:12:09 so maybe this? http://www.cplusplus.com/reference/clibrary/cstdio/vfprintf/ it writes to specified file 2010-09-09T10:12:56 you can ofcourse wrap it to some log(char data[], ...) function where the file is set in stone 2010-09-09T10:13:15 Yeah, that's what I'm trying to figure out how to accomplish 2010-09-09T10:13:25 but I think I just found it 2010-09-09T10:13:36 there is an example on the last link 2010-09-09T10:13:38 http://www.cplusplus.com/reference/clibrary/cstdio/vfprintf/ <- someone else trying to do something really similar 2010-09-09T10:14:09 yeah, that's the one :) 2010-09-09T10:14:09 oh wow, thanks 2010-09-09T10:14:12 np 2010-09-09T10:14:36 Looks near identical to what I came up with though, let me look closer 2010-09-09T10:15:33 *** Vi0 has joined #aichallenge 2010-09-09T10:15:39 Was missing the thing in va_end 2010-09-09T10:15:51 Wow, what a simple fix, thanks again! 2010-09-09T10:16:27 oh, and I was using the variable type rather than the name for some reason *facepalm* 2010-09-09T10:17:01 my first attempt is going to be kind of an emergent behavior sort of thing 2010-09-09T10:17:02 I love these contests, they're really improving my C++ 2010-09-09T10:19:36 yeah, it gives you something to focus on (and distracts you from the rest of your life xD) 2010-09-09T10:21:01 *** Umsturz has joined #aichallenge 2010-09-09T10:21:55 *** Vi0 has quit IRC 2010-09-09T10:23:47 *** Zaphus has quit IRC 2010-09-09T10:25:10 yikes, and i'm home 2010-09-09T10:25:22 riding late at night isn't hte most enjoyable activity ever 2010-09-09T10:25:33 how did your project go? :) 2010-09-09T10:25:45 it's mostly done, it's very lame 2010-09-09T10:25:57 just needed enough to hand in 2010-09-09T10:26:16 I have 5 other assignemtns due tomorrow, 3 of which are done, might have to just hand analysis and measure theory in next week 2010-09-09T10:26:47 damn ai competition coming and an ruining my time 2010-09-09T10:27:04 yea srsly 2010-09-09T10:27:56 I am in the office now and instead of doing my job I am thinking for strategies :) 2010-09-09T10:30:39 research assistant work is awesome, if I don't have time, I don't have to work :D 2010-09-09T10:30:46 *** aerique has quit IRC 2010-09-09T10:31:21 I want such a job :) 2010-09-09T10:32:04 and I hope taht soon will have it, because I will finish my Master degree and then will look out for a PhD somewhere in Europe 2010-09-09T10:33:14 i really need to tear my eyes away from this stuff... 2010-09-09T10:34:31 I have no idea what I'm going to do for grad school yet 2010-09-09T10:34:42 i graduate undergrad in a couple of months, then doing an honours year in maths next year 2010-09-09T10:40:35 I'm just about to enroll in university in 11 days (as a student of course), wonder how it will be... 2010-09-09T10:40:58 Palmik: what are you planning to study? 2010-09-09T10:41:42 It's informatics, mostly theory 2010-09-09T10:42:43 take lots of maths, it's awesome 2010-09-09T10:43:54 yeah, I will have to anyway since it's obligatory and I doubt I would grasp the other things without it :) 2010-09-09T10:44:12 *** albert_ has joined #aichallenge 2010-09-09T10:44:17 hmmm, most degrees that require maths just demand people do the first two years of calculus 2010-09-09T10:44:24 it's the abstract maths that I find most enjoyable 2010-09-09T10:44:33 and you start to get a feel of how stuff is actually done 2010-09-09T10:45:04 although sigma-algebras make me want to tear my brains out 2010-09-09T10:45:05 phreeza: your current submitted bot doesnt seem to work/play correctly 2010-09-09T10:45:24 how so? 2010-09-09T10:45:37 just gets confusing rather quickly 2010-09-09T10:45:38 dont know, take a look at the replays 2010-09-09T10:45:45 oh :P 2010-09-09T10:46:00 I'm looking forward to it and am afraid of it a little at the same time :D 2010-09-09T10:46:27 isnt sigma-algebra about probability theory? 2010-09-09T10:46:33 it had a bug 2010-09-09T10:46:38 but i just fixed it 2010-09-09T10:46:53 if you are willing to do the work, you'll be fine, otherwise you probably shouldn't be there in the first place anyway 2010-09-09T10:47:07 hope so :) 2010-09-09T10:47:10 oh damn 2010-09-09T10:47:14 :( 2010-09-09T10:47:21 albert_: yeah sort of, you basically define measurable sets etc. using sigma algebras 2010-09-09T10:47:24 it works here 2010-09-09T10:47:56 i still don't really understand it very much yet though 2010-09-09T10:48:36 phreeza: i mean the replays here: http://ai-contest.com/profile.php?user_id=3891 it seems that your bot does not even start to play 2010-09-09T10:48:43 yea i just saw 2010-09-09T10:48:51 :( 2010-09-09T10:49:12 i wish i could see the logs 2010-09-09T10:49:16 are bots still being disabled on the official server for exceeding the time limit? 2010-09-09T10:51:02 200 turns 2010-09-09T10:51:04 *** vikhyat has joined #aichallenge 2010-09-09T10:51:27 no, i mean does the bot get taken out of playing more games if it exceeds its time limit on a move 2010-09-09T10:51:55 that rule carried over from last comp, but i'm really hoping it'll get changed 2010-09-09T10:56:20 i think currently it's still set up that way 2010-09-09T10:56:33 i wish it would just lose the game 2010-09-09T10:59:18 that's what I think should happen 2010-09-09T11:00:00 *** bss03 has joined #aichallenge 2010-09-09T11:00:07 hey bss03! 2010-09-09T11:01:04 I'm tryin' to get the Haskell starter up to the same level as the other starters. 2010-09-09T11:01:21 While I think about the AI I want to write. 2010-09-09T11:01:54 yeah i'm just starting my own project from scratch because my ai architecture is going to be... fundamentally different from how jasper's starter is laid out 2010-09-09T11:01:56 I don't think I have the Haskell in me to do a graphical viz, but I do want to be able to pit Haskell bots against one another off-line. 2010-09-09T11:02:12 Oh, really, how so? 2010-09-09T11:02:27 bss03: the official starter packages have visualizers included as jar files 2010-09-09T11:02:44 *** Vi0 has joined #aichallenge 2010-09-09T11:02:58 bss03: well.... i don't want to say yet :) 2010-09-09T11:03:30 Okay, that's cool. 2010-09-09T11:03:43 Ah, even the python one includes .jar files for the viz. 2010-09-09T11:04:05 I guess it should be fine to include those in the Haskell starter as well. 2010-09-09T11:04:39 Still, it would be nice not to have to use Java to test my Haskell. Might write a simulartor once I get done translating the exmaple bots. 2010-09-09T11:04:40 yeah just use it 2010-09-09T11:04:54 bss03: btw, there is ongoing work on a much nicer visualizer 2010-09-09T11:05:01 bss03: you've seen the unofficial server yeah? 2010-09-09T11:05:06 @where tcpserver 2010-09-09T11:05:07 http://www.benzedrine.cx/planetwars/ 2010-09-09T11:05:10 http://www.benzedrine.cx/planetwars/ 2010-09-09T11:05:13 oops :P 2010-09-09T11:05:22 @where visualizer 2010-09-09T11:05:22 http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer 2010-09-09T11:06:09 *** albert_ has quit IRC 2010-09-09T11:06:10 bss03: the unofficial server is nice for testing your bot against other competing bots without having to upload and wait. it's all in real time and you can actually use debug output, log files, etc., which is not allowed on the official server 2010-09-09T11:06:36 and the visualizer on the unofficial web site is a lot nicer 2010-09-09T11:06:52 that visualizer will be on the official site soon, i think 2010-09-09T11:07:00 better be 2010-09-09T11:07:02 it's wonderful 2010-09-09T11:07:09 j3camero is all over it 2010-09-09T11:07:16 Ah, the new visualizer sounds cool. But, I want to have the PlayGame.jar part available without Java. 2010-09-09T11:07:23 (Well, maybe.) 2010-09-09T11:07:29 http://www.benzedrine.cx/planetwars/canvas?game_id=1284044423|drewrobb0.1|a1k0n 2010-09-09T11:07:33 that's the visualiser 2010-09-09T11:07:33 bss03: there's a python version of it too that's used for the backend on the server 2010-09-09T11:07:40 of the engine i mean 2010-09-09T11:08:05 bss03: http://code.google.com/p/ai-contest/source/browse/#svn/trunk/planet_wars/backend 2010-09-09T11:08:19 Looks to be like the unofficial server engine is in C. 2010-09-09T11:08:23 bss03: if you are dead set on making a haskell version of the engine, talk to mightybyte. i think he was also interested in working on one 2010-09-09T11:08:54 Nah, C or Python is probably fine; I already have those installed and working well. 2010-09-09T11:09:18 bss03: there is an effort to make that javascript canvas visualizer nicer to use locally, too 2010-09-09T11:09:53 bss03: the plan seems to be along the lines of using the python engine to stream output to the canvas visualizer with an http connection 2010-09-09T11:10:57 it already works locally 2010-09-09T11:11:30 jmcarthur: So what's the status on being able to use Haskell in the contest? 2010-09-09T11:12:07 mightybyte: ghc 6.12.3 just isn't going to happen. i'm trying to convince j3camero to just allow binary submissions 2010-09-09T11:12:38 mightybyte: ubuntu 8.04 just doesn't have the infrastructure for modern ghc and i don't feel like trying to fix that (after trying and failing for two days straight) 2010-09-09T11:12:52 ugh 2010-09-09T11:13:24 mightybyte: the binary submission idea is being taken pretty seriously though. i think we can convince him 2010-09-09T11:13:50 I've done enough playing with it in haskell over the last couple days that if Haskell submissions aren't allowed I'll be much less likely to compete. 2010-09-09T11:14:12 mightybite: lies! it's way too much fun 2010-09-09T11:14:18 i almost dropped last time because i kept hitting problems with ghc 6.8.2 (which the server still has) 2010-09-09T11:14:44 Hmmm, I don't see myself doing anything that 6.8.2 can't do. 2010-09-09T11:14:45 mightybyte: also, we had to disable template haskell on the server last night, just fyi 2010-09-09T11:15:11 mightybyte: i managed to exploit it because the compilation doesn't take place in a sandbox. i think you can see where that goes 2010-09-09T11:15:51 if you're happy with ghc 6.8.2, be my guest 2010-09-09T11:15:54 i was not happy with it last time 2010-09-09T11:16:40 But my problem is that I'm contemplating using some hackage libraries and I wasn't sure whether they'd be available. 2010-09-09T11:16:52 binary submissions would fix that :) 2010-09-09T11:16:57 jmcarthur: Yeah 2010-09-09T11:17:12 i'm using all kinds of libraries 2010-09-09T11:17:15 jmcarthur: Yeah, I saw you talking about exploits last night and I figured you were doing TH. 2010-09-09T11:17:17 premptively 2010-09-09T11:17:44 mightybyte: can you see any reason that ghc-pkg hide template-haskell might be insufficient, btw? 2010-09-09T11:17:50 mightybyte: the issue is mainly runIO 2010-09-09T11:18:12 That seems like it should do the trick, but I could be overlooking something. 2010-09-09T11:18:13 is it possible, that you know of, to import a module in a hidden package by force? 2010-09-09T11:18:24 Not that I know of. 2010-09-09T11:18:27 good 2010-09-09T11:18:29 me either 2010-09-09T11:18:31 I look forward to hearing all the different ways people went about trying to solve this at the end (although from chatter so far it seems people aren't that different), cause last time it was pretty obvious how people went about it, just needed to work out how they evaluated states and handled a few different bits and pieces 2010-09-09T11:18:48 i think my idea will be unique enough 2010-09-09T11:18:59 not so sure about effectiveness... 2010-09-09T11:19:00 antimatroid1: I think this contest has more potential for variation. 2010-09-09T11:19:17 yeah, more tactical variety, but maybe not as much visual variety 2010-09-09T11:19:24 tron has the nice property of being very pretty 2010-09-09T11:19:39 I think these games are fun to watch. 2010-09-09T11:19:41 yeah, but this has the benefit of being fucking awesome 2010-09-09T11:20:02 *** Croccam has quit IRC 2010-09-09T11:20:10 I've wanted to write a program to play games like this for quite some time. 2010-09-09T11:20:11 these games will certainly be more fun to watch once there are some really good bots up 2010-09-09T11:20:21 yeah me too 2010-09-09T11:20:24 i love RTS AI 2010-09-09T11:20:27 *** idevelop has quit IRC 2010-09-09T11:20:28 me too, these competitions are making me consider running off to do ai in grad school 2010-09-09T11:20:39 i'm already intending to go the game theory route anyway 2010-09-09T11:20:41 Well, this isn't really RTS 2010-09-09T11:20:54 *** hornairs has quit IRC 2010-09-09T11:20:57 not by the modified mechanics, no 2010-09-09T11:21:20 but then again, what RTS AI is truely real time, from the AI's point of view? 2010-09-09T11:21:30 not that many, at least in games 2010-09-09T11:21:36 Yeah 2010-09-09T11:21:46 Everything has to be discretized at some point. 2010-09-09T11:22:24 my AI actually is going to be approaching this in a way that doesn't even care whether it's real time or not 2010-09-09T11:22:39 if we were to make it continuous time it would be pretty easy to adapt my idea to it 2010-09-09T11:23:04 and in fact that probably gives away some of my approach :) 2010-09-09T11:23:17 If ghc isn't available, any chance we could submit by using "via-c" option to ghc? 2010-09-09T11:23:29 bss03: i don't know about that 2010-09-09T11:23:36 *** rwa has joined #aichallenge 2010-09-09T11:23:57 Plus, I'm not sure I know how to make a statically linked executable with ghc, so I imagine my binary solutions would be missing a number of .so files. :P 2010-09-09T11:23:58 i considered it last time, but there's all sorts of libraries and stuff that have to be linked in too, plus the somewhat limited way you can compile things at all 2010-09-09T11:24:19 is anybody doing some form of actual search of the decision tree? 2010-09-09T11:24:37 phreeza: albert claims to have an idea to actually solve the game 2010-09-09T11:24:55 searching the game tree as is is futile 2010-09-09T11:25:00 definitely 2010-09-09T11:25:04 jmcarthur yea hes a friend of mine, i've been discussing that with him 2010-09-09T11:25:09 if you want to do that, you need to start reducing the number of ideal strategies on each turn 2010-09-09T11:25:15 but certain properties about this game seem similar to a linear programming problem or something 2010-09-09T11:25:19 *** albert_ has joined #aichallenge 2010-09-09T11:25:32 speak of the devil 2010-09-09T11:25:33 I thought about searching the game tree, but it seems a bit complex. 2010-09-09T11:25:44 back :) 2010-09-09T11:25:46 You'd have to severely limit the "legal moves". 2010-09-09T11:25:51 yea i think on a per turn basis it is really futile 2010-09-09T11:25:52 is there any implementation of the game engine in c++? 2010-09-09T11:25:54 still seemed like there was too much information for simplex to me 2010-09-09T11:26:01 but maybe there is some kind of abstraction 2010-09-09T11:26:20 albert_: to make sure i'm not putting words into your mouth, you were saying earlier that you suspect there is a way to solve the game? 2010-09-09T11:26:29 yes, he did say that 2010-09-09T11:26:56 antimatroid1: yeah i'm not sure exactly what sort of closed form solution there might be 2010-09-09T11:27:10 My first simplification was going to be analysing the game in a rest state -- assuming the existing fleets complete their movement and no more fleets are spawned. 2010-09-09T11:27:12 i have a few ideas where one might come from 2010-09-09T11:27:14 but i dunno 2010-09-09T11:27:18 jmcarthur: yes i think there is. at least in theory, i'm not sure if you can calculate it fast enough 2010-09-09T11:27:23 ah 2010-09-09T11:27:32 yeah, i'm 100% sure there is in theory :P 2010-09-09T11:27:35 well, yeah der :P 2010-09-09T11:27:43 Then limit commands to one order, and advance the game state as if the flight were instantaneous. 2010-09-09T11:28:13 Then fix fleet sizes. Still, even with all of that the game tree would be huge. 2010-09-09T11:28:18 bss03 i think assuming instantaneous flight is problematic 2010-09-09T11:28:43 i do that right now and its the main problem i have 2010-09-09T11:28:51 has anyone tried logic resolution on this problem? 2010-09-09T11:29:02 especially in the beginning its crucial to build momentum faster than the oponent 2010-09-09T11:29:03 as in solving it analytically? 2010-09-09T11:29:07 i have, it's fucking complicated 2010-09-09T11:29:10 there are sooo many variables 2010-09-09T11:29:19 Oh, yes, with those simplifications, the scores for some states would be quite off, but probably not degenerate enough to mess you up. 2010-09-09T11:29:40 Have any of you guys played the linux version of this game called Konquest? 2010-09-09T11:29:40 any description of the game logic in prolog or so? 2010-09-09T11:29:41 IT would definitely cause some horizon issue, where you thought a move was good and instead it sucks. 2010-09-09T11:29:42 *** s_denchev has quit IRC 2010-09-09T11:29:58 this is frustrating, my old bot, which is a modification of the example i made in about 15 minutes, is still doing way better than my new one :) 2010-09-09T11:30:15 albert_ if you can read python there's a svn tree of containing an engine. 2010-09-09T11:30:36 bss03: yea but i need an implementation in c++ 2010-09-09T11:30:43 ok i probably will recode it in c++ 2010-09-09T11:31:04 i will put it online somewhere in case someone else is interested. i think it might be quite useful 2010-09-09T11:31:15 albert_: so i am guessing you want to extrapolate with the exact rules? 2010-09-09T11:31:29 i also wonder if maybe monte carlo methods could work... 2010-09-09T11:32:02 Konquest adds one more dimension to the game. Each planet has a kill percent that governs the effectiveness of fleets sent from that planet. 2010-09-09T11:32:03 monte carlo minimax, sth like that 2010-09-09T11:32:15 albert_ The python version, much like the java version, does not care what langauge the bots are in. 2010-09-09T11:32:20 I've been trying to decide whether I think that added dimension makes the game simpler or more complex. 2010-09-09T11:32:30 phreeza: yea. at least some game path. i will try to simplify the code so that i can calculate a resulting gamestate in linear time based on a set of commands 2010-09-09T11:32:33 albert_ It just "exec"s the process and feed it data. 2010-09-09T11:32:54 bss03: yea i know. but i need to calculate some possible game trees 2010-09-09T11:33:30 phreeza: monte carlo still will only touch a *very* tiny portion of all possible games, of course 2010-09-09T11:33:32 Ah, recoding in your language of choice is probably the way to go then. 2010-09-09T11:33:48 how are you guys setting up fleets? I couldn't traverse a priority queue, so I have an ordered vector that adds new fleets in from the back 2010-09-09T11:33:48 yea exactly :) 2010-09-09T11:33:53 phreeza: it was hard enough in tron (i did monte carlo with UCT) 2010-09-09T11:34:32 jmcarthur yea, i'm hoping maybe because of the "linearity" of the whole thing it still might be effective 2010-09-09T11:34:42 antimatroid1: yea or an ordered list if you need fast insertion at the end/front 2010-09-09T11:34:43 and i merge fleets with the same arrival time 2010-09-09T11:34:47 The engine is fairly simple anyway. Trip length is just ceil(cartian_distance). Conquest is just subtraction, abs, etc. 2010-09-09T11:35:19 bss03: i set up a vector of distances for indexing first move rather than pinging the egine for that over and over and over 2010-09-09T11:35:21 for example it would be good enough to have a sample above and below the critical amount of ships sent to conquer a planet to get the basic idea of the outcome 2010-09-09T11:36:12 phreeza: so you mean have sort of interpolation between samples to obtain the final set of commands? 2010-09-09T11:36:24 jmcarthur: how did it work out there? minimax seems much more feasible in tron 2010-09-09T11:36:25 between *good* samples, i mean 2010-09-09T11:36:43 phreeza: it worked pretty well. i didn't have time to finish my bot though, so i only got 105th place 2010-09-09T11:36:49 phreeza: 3rd place out of the haskell entries at least 2010-09-09T11:37:05 i got jewed over by that time limit rule 2010-09-09T11:37:12 phreeza: i believed then and now that minimax was actually inappropriate for tron 2010-09-09T11:37:16 i didn't even realise it caused dq till it happened 2010-09-09T11:37:41 but i got too busy to add mixed strategies to my bot 2010-09-09T11:37:42 jmcarthur: really, there its just 3 choices per turn, right? 2010-09-09T11:37:47 jmcarthur: I disagree, you can add more to it, but you need the tree 2010-09-09T11:37:50 *** Umsturz has left #aichallenge 2010-09-09T11:38:00 *** drewrobb has joined #aichallenge 2010-09-09T11:38:05 *** Umsturz has joined #aichallenge 2010-09-09T11:38:08 it was worth separating out chambers etc. 2010-09-09T11:38:10 antimatroid1: a game tree is fine. minimax is not :P 2010-09-09T11:38:19 jeez my old bot just won against a1k0n 2010-09-09T11:38:33 chambers were kind of separated emergently in my code 2010-09-09T11:39:12 minimax was fine i swear 2010-09-09T11:39:26 provided you got the payoff function decent 2010-09-09T11:39:33 and didn't stop after one of your moves 2010-09-09T11:39:40 there was a whole thread about this, wasn't there? 2010-09-09T11:39:46 no idea :P 2010-09-09T11:39:57 somebody came up with a good example against minimax 2010-09-09T11:40:24 where and optimal eval function would still result in minimax giving the wrong move 2010-09-09T11:40:26 *an 2010-09-09T11:40:52 hmmm, okay 2010-09-09T11:40:58 the main argument in that thread in favor of minimax was people guessing that situations like that were rare 2010-09-09T11:41:05 but nobody provided evidence of that 2010-09-09T11:43:34 in fact, i speculate that if a bot could determine whether its opponent was using minimax then it could exploit it 2010-09-09T11:43:56 i found that old thread, but the informative images are missing :( 2010-09-09T11:44:06 i dunno, you are guarenteed to do at least as well as you expect 2010-09-09T11:45:21 i ended up finding it rather tricky to keep my game tree zero sum 2010-09-09T11:45:26 *** rwa has quit IRC 2010-09-09T11:46:44 what's the link to that page? 2010-09-09T11:46:55 i still doubt the fact that you can break the answer it gives you 2010-09-09T11:47:00 if your opponent is using minimax then it could miss an opportunity to minimize your second best move. that is after minimizing your best move, your second best move becomes your best move. if your bot is aware of this, then it can exploit that, since the moves are actually simulataneous 2010-09-09T11:47:15 *simultaneous 2010-09-09T11:47:17 h/o 2010-09-09T11:47:22 *** blackskad has quit IRC 2010-09-09T11:47:32 here's the whole thread, sans images http://ai-contest.com/forum/viewtopic.php?f=8&t=331 2010-09-09T11:48:33 i worded that badly 2010-09-09T11:48:40 i had a better phrasing during the contest 2010-09-09T11:49:13 oh i see 2010-09-09T11:49:34 i do think it'd happen that rarely that it'd almost be too costly to look for 2010-09-09T11:49:40 ]]]]] 2010-09-09T11:49:49 simplex on a 3x3 matrix isn't that expensive 2010-09-09T11:49:53 (lol, child) 2010-09-09T11:49:55 *** blackskad has joined #aichallenge 2010-09-09T11:50:08 no 2010-09-09T11:50:14 simplex on larger matrices would be 2010-09-09T11:50:38 just use 3x3 simplex on each node of the game tree to evaluate the node 2010-09-09T11:50:47 and on the root node use it to determine the mixed strategy 2010-09-09T11:51:11 where each node is both player's moves rather just one, of course 2010-09-09T11:51:21 *** seigen has joined #aichallenge 2010-09-09T11:51:45 So how long until the tcpserver's viewer replaces the main sites? 2010-09-09T11:52:02 i think you may have just told me how your new bot is going to work? :P 2010-09-09T11:52:07 nope 2010-09-09T11:52:11 too many branches 2010-09-09T11:52:19 i'm doing something entirely different 2010-09-09T11:53:00 seigen: soon, i hope 2010-09-09T11:53:11 yeah, i've just been playing around on paper with what we do know and trying to see what I can reasonably calculate 2010-09-09T11:53:19 *** coventry has joined #aichallenge 2010-09-09T11:53:27 i think this one will inherently require more heuristics 2010-09-09T11:53:29 i think it's a matter of making use of the available information better than the other player 2010-09-09T11:53:30 jmcarthur: awesome. I'm so impressed by how with it the organizers are. 2010-09-09T11:53:33 rather than searching 2010-09-09T11:53:37 which is great because it means there will be a lot more variety! 2010-09-09T11:53:54 seigen: it helps that everything is open source :) 2010-09-09T11:54:07 jmcarthur: another bonus point for the organisers 2010-09-09T11:54:14 jmcarthur: which is really an enlightened choice for running a contest like this! Other universities that try and do all this stuff... 2010-09-09T11:54:18 j3camero++ amstan++ 2010-09-09T11:54:19 jmcarthur: Yeah, I agree. I think that will also result in less public discussion about engine internals before the contest is over. 2010-09-09T11:54:47 jmcarthur: Most uni. CS departments have a submit/build/run/report thing for their student projects -- how many expose that source? Like zero. 2010-09-09T11:54:47 erm... engine internals are so much more important for this game 2010-09-09T11:54:53 it's going to be a central topic 2010-09-09T11:55:06 yeah, the engine is much more complex this time around 2010-09-09T11:55:23 how to handle netural conflicts is going to be asked over and over and over.. 2010-09-09T11:55:33 Although, it seems like it is easier to infer engine internals from watching games this time around. 2010-09-09T11:55:37 the vote thread is going to have to be stickied 2010-09-09T11:55:39 netural? 2010-09-09T11:55:55 nuetered planets 2010-09-09T11:56:12 lol 2010-09-09T11:56:21 phreeza: it's still undecided how to handle what happens when ships from both boths arrive at a neutral planet at the same time 2010-09-09T11:56:31 both bots* 2010-09-09T11:56:39 ah that thing, yea... 2010-09-09T11:56:42 oh, sorry :P 2010-09-09T11:56:45 There's a patch in the queue that should resolve that. 2010-09-09T11:57:03 is that the wrong patch? :P 2010-09-09T11:57:04 Neutral conflicts? 2010-09-09T11:57:12 a1k0n said he was going to merge it into a branch last night. Not sure whether he did. 2010-09-09T11:57:17 i did. 2010-09-09T11:57:20 it turned out to be buggy. 2010-09-09T11:57:26 but i fixed the bugs with some help. 2010-09-09T11:57:29 :( 2010-09-09T11:57:48 http://code.google.com/p/ai-contest/issues/detail?id=77 2010-09-09T11:57:55 oops http://code.google.com/p/ai-contest/source/branch?spec=issue77&branch=%2Fbranches%2Fissue64_69_72_73 2010-09-09T11:59:09 n = planet.ships - fleet.ships; if n < 0 then planet.owner = fleet.owner; planet.ships = -n; else planet.ships = n, right? 2010-09-09T12:00:02 bss03: it's a bit more tricky than that 2010-09-09T12:01:53 *** Palmik has quit IRC 2010-09-09T12:02:56 drewrobb: looking decent early on again :P 2010-09-09T12:03:30 *** dhartmei_ has quit IRC 2010-09-09T12:04:04 Some of the games are > 2 players? 2010-09-09T12:04:23 no 2010-09-09T12:04:24 bss03: no, but a fight could include both players and neutral forces 2010-09-09T12:04:36 *** coventry` has joined #aichallenge 2010-09-09T12:05:09 bss03: http://ai-contest.com/forum/viewtopic.php?f=18&t=419 2010-09-09T12:06:53 yeah it a decent start 2010-09-09T12:07:11 nobodies expecting much so far 2010-09-09T12:07:17 (Apologies for the repeat question; If nobody knows, I will check for myself when I can create an account.) Can a python submission include custom C extension modules? 2010-09-09T12:07:29 drewrobb: yeah you are hard to kill :) 2010-09-09T12:07:47 i can't believe my bot actually won the last one 2010-09-09T12:07:56 *** Palmik has joined #aichallenge 2010-09-09T12:08:11 coventry: can the python interpreter use them without installing them? 2010-09-09T12:08:14 my bot doesn't go for the kill sometimes 2010-09-09T12:08:52 i expect it to be worth just checking that if you have time 2010-09-09T12:09:00 Yes, they're just shared libraries. 2010-09-09T12:09:25 coventry: it's probably okay then. i'm actually trying to push for allowing arbitrary binaries 2010-09-09T12:09:36 although it usually doesn't matter if you get deadlocked but cane them on number of ships 2010-09-09T12:09:37 Thanks. 2010-09-09T12:09:40 coventry: it's probably okay if it technically works, that is 2010-09-09T12:09:57 coventry: might want to ask j3camero though 2010-09-09T12:09:59 jmcarthur: It definitely works with a standard python install. 2010-09-09T12:10:14 coventry: he will be around this evening 2010-09-09T12:10:20 jmcarthur: OK, will do. 2010-09-09T12:10:29 i would be surprised if it wasn't ok, but definitely worth checking 2010-09-09T12:10:45 *** mtcbot has joined #aichallenge 2010-09-09T12:10:59 @ask j3camero coventry wants to know if he's allowed to use custom C extension modules in his python submission. this seems to me to be equivalent to allowing arbitrary binaries, which you know i would like to see as well :) 2010-09-09T12:11:00 Consider it noted. 2010-09-09T12:11:05 *** JCS^ has joined #aichallenge 2010-09-09T12:12:49 coventry: i think the server runs 64 bit ubuntu 8.04, for the record, so you need 64 bit modules (unless python is 32 bit for some reason) 2010-09-09T12:14:16 jmcarthur: that sounds workable. 2010-09-09T12:14:46 Hey, does anyone else have fleets just disappear on reaching a planet? 2010-09-09T12:15:02 My friend saw it happen yesterday and I'm seeing it right now 2010-09-09T12:15:10 They don't subtract, they just vanish 2010-09-09T12:15:14 there have been a lot of reports of that 2010-09-09T12:15:15 where abouts? 2010-09-09T12:15:53 aw, ebrahim informed me on reddit that he won't be participating this time 2010-09-09T12:16:01 he had a good bot in the last one 2010-09-09T12:16:08 yeah, i was going to say 2010-09-09T12:16:14 did he give a reason? 2010-09-09T12:16:19 not enough time he said 2010-09-09T12:16:28 neither do i 2010-09-09T12:16:33 he shows more restraint than i 2010-09-09T12:16:36 but this kind of trumps other stuff 2010-09-09T12:16:38 i don't have the time at all :P 2010-09-09T12:16:46 and look what i'm doing instead of making money@! 2010-09-09T12:17:05 i seriously considered dropping one of my majors just to spent more time on the bot aha 2010-09-09T12:17:08 The disappearing fleet happened on my first move 2010-09-09T12:17:12 but i'm just going to man up 2010-09-09T12:17:15 i have seen the fleets dissapearing bug a bunch 2010-09-09T12:17:24 hirded 2010-09-09T12:17:27 thirded, even 2010-09-09T12:17:31 I doubt this is related, but my confirmation email similarly disappeared 2010-09-09T12:18:04 antimatroid1: would be awesome if you could make this an independent study course 2010-09-09T12:18:25 or whatever equivalent your uni may have 2010-09-09T12:18:29 nah, too many units to take alrady 2010-09-09T12:18:40 and my uni "computing" department sucks 2010-09-09T12:18:45 mine did too 2010-09-09T12:18:50 horrible experience 2010-09-09T12:18:54 didn't learn a thing there 2010-09-09T12:19:06 learned a million times more from my spare time 2010-09-09T12:19:33 i was rather lazy pre uni and didn't really know anything (no programming, didn't even do top maths in year 12), then it was like hang on this stuff is actually lots of fun, so I've been playing catch up ever since 2010-09-09T12:20:36 hello 2010-09-09T12:20:41 hey! 2010-09-09T12:20:58 morning sir 2010-09-09T12:21:26 jmcarthur: Dave you written a game simulator in Haskell yet? 2010-09-09T12:22:16 so was the irc channel active all of last contest? knowing this is here now is going to make me all the more sucked in to the competition 2010-09-09T12:22:23 Yes, it was. 2010-09-09T12:22:51 mightybyte: no, but i will have to do some amount of that just for my bot. it will be an unusual one though. not sure if it would generalize to a full engine or visualizer very well 2010-09-09T12:22:54 Oh, I don't know how long it was up, but it was up for at least a good portion of the contest. 2010-09-09T12:23:05 drewrobb: yeah this was *very* active 2010-09-09T12:23:16 almost all of it 2010-09-09T12:23:20 it's a huge drain on productivity 2010-09-09T12:23:24 yeah :P 2010-09-09T12:23:24 Yep 2010-09-09T12:23:34 i really missed out :( 2010-09-09T12:23:37 both for the bot and for other stuff 2010-09-09T12:23:44 Although, it's also a great source of ideas. 2010-09-09T12:23:51 it really is 2010-09-09T12:23:56 i expect the irc channel is going to explode in about a weeks time 2010-09-09T12:23:58 at least i'm no longer in school this time, although don't know if that is good or bad 2010-09-09T12:24:01 a lot of stuff is discussed here that never makes its way to the forums 2010-09-09T12:24:27 drewrobb: I'm currently in the second half of a 150% load semester, with entries closing like right at the end of exams :| 2010-09-09T12:25:15 *** albert_ has quit IRC 2010-09-09T12:25:31 although I'm glad you guys are going into winter while it's heading into summer here :) 2010-09-09T12:25:46 Oh, it just dawned on me that the contest runs until the end of November. Until now I had been assuming it was only going to be two weeks or so. 2010-09-09T12:25:55 ouch 2010-09-09T12:26:13 nope, it's longer than last time 2010-09-09T12:26:22 and that makes me happy and sad at the same time 2010-09-09T12:26:36 :D 2010-09-09T12:27:09 i need to make a word schedule so i can juggle this stuff 2010-09-09T12:27:13 *work schedule, even 2010-09-09T12:27:26 i can't even handle the concept of a diary 2010-09-09T12:27:31 heh 2010-09-09T12:27:32 let alone a set schedule 2010-09-09T12:27:49 In C++ when I call pw.Planets() can I count on the planets being ordered by ID? 2010-09-09T12:28:48 jmcarthur: Yeah, me too. Looks like I'm not going to accomplish very much else in the next three months. 2010-09-09T12:29:51 i can't seem to get people interested at my uni to participate 2010-09-09T12:29:56 javagamer: Use the source. I'm not sure. 2010-09-09T12:30:24 It looks like it, just wanted to confirm before I start relying on it. I guess I'm confident enough as is 2010-09-09T12:32:55 javagamer: The planets are ordered as parsed from the server message (e.g. the map). 2010-09-09T12:34:19 javagamer: Which is their id then. The id seems to be mostly synthetic, it's not in the "P" message. 2010-09-09T12:34:50 phreeza: you dev'ing right now? 2010-09-09T12:34:54 Racko, they'll always be ordered the same way, right? 2010-09-09T12:35:34 I want to maintain references to the planets across turns and it's taking me some time setting this up 2010-09-09T12:35:52 Is it just me, or do others think that RageBot is written all wrong. 2010-09-09T12:35:53 the game specification does not guarantee that planets maintain the same order. 2010-09-09T12:36:09 It should just print out "RAGEQUIT!" and exit, ignoring all input. 2010-09-09T12:36:48 lol 2010-09-09T12:37:09 javagamer: Track them by position; they shouldn't move or overlap. 2010-09-09T12:37:20 bss03, great idea! 2010-09-09T12:37:52 Oh, wait, that's not such a great idea. I forgot positions are floating point numbers. 2010-09-09T12:38:01 Hmmm.... 2010-09-09T12:38:11 but it's good enough ;) 2010-09-09T12:38:13 think of it will a fully connected graph 2010-09-09T12:38:13 IDs would also be faster if I knew they would stay the same 2010-09-09T12:38:16 like* 2010-09-09T12:38:18 Comparing floating point for equality does not always give you what you want. 2010-09-09T12:38:18 damn it's late 2010-09-09T12:39:03 Late? It's only 11:40 AM! ;) 2010-09-09T12:39:15 2 40am* :P 2010-09-09T12:39:56 18:39 2010-09-09T12:40:00 one of the biggest problems i've seen so far as has been the lack of a semi-formal specification for the game 2010-09-09T12:40:01 Um, are we allowed to put comments in the stuff we send to the server? 2010-09-09T12:40:16 yes to comments 2010-09-09T12:40:23 The Haskell code seems to support using '#' as a comment-to-end-of-line character. 2010-09-09T12:40:28 But, I didn't see that in the rules. 2010-09-09T12:40:44 the server is just going to compile your code 2010-09-09T12:40:59 the compiler will throw the comments out, same as any other time :P 2010-09-09T12:41:01 bss03: the spec says there may be comments 2010-09-09T12:41:03 Sorry, I meant the commands the client outputs. 2010-09-09T12:41:33 bss03: http://code.google.com/p/ai-contest/wiki/PlanetWarsFileFormats 2010-09-09T12:41:37 you don't really want to :P, output is sloooow 2010-09-09T12:41:47 http://www.ai-contest.com/problem_description.php -- doesn't say anything about comments. Is there a better reference I should be looking at? 2010-09-09T12:42:05 bss03: oh you mean from your bot? 2010-09-09T12:42:19 bss03: the game state / maps are allowed to have comments. not sure about your bot output 2010-09-09T12:42:30 engine.py is a great reference :P 2010-09-09T12:43:59 engine.py doesn't allow them. 2010-09-09T12:44:14 engine.py says if you don't have exactly 3 space-separated tokens on your line, you faill. 2010-09-09T12:44:45 haha 2010-09-09T12:45:11 woah ELO on dhartmei was just renormalized or something 2010-09-09T12:45:26 oh you *are* talking about the client output 2010-09-09T12:45:28 In the subversion repository, what are the ssh keys in planet_wars/backend for? 2010-09-09T12:45:30 yeah, no comments there i'm sure 2010-09-09T12:45:38 coventry: ssh keys? :o 2010-09-09T12:45:40 Would be nice to be able to include them and have them in the replay file; for later analysis and stuff. 2010-09-09T12:45:55 bss03: yeah, no logging on the server 2010-09-09T12:45:56 Maybe document your AI's "thought process". 2010-09-09T12:46:00 bss03: that's what the tcp server is good for 2010-09-09T12:46:01 jmcarthur: yep, including the private ones. 2010-09-09T12:46:20 coventry: :o 2010-09-09T12:46:53 @tell j3camero coventry reports that there are ssh keys in planet_wars/backend, including private ones. i'm not sure what's up with that 2010-09-09T12:46:54 Consider it noted. 2010-09-09T12:46:56 http://code.google.com/p/ai-contest/source/browse/trunk/planet_wars/backend/vm_id_rsa -- Private key material. 2010-09-09T12:47:19 that's probably bad 2010-09-09T12:47:24 *** s_denchev has joined #aichallenge 2010-09-09T12:47:25 But, it might be passphrase protected. 2010-09-09T12:47:46 if it's to be used by a program i doubt that 2010-09-09T12:48:36 Perhaps it's used to communicate with the jailed bot process. See, e.g. vm_sadbox.py in the same directory. 2010-09-09T12:49:09 *** mtcbot has quit IRC 2010-09-09T12:49:11 woah wait, the sandbox is qemu?! 2010-09-09T12:49:16 If so, I wonder whether a jailed bot could ssh to the other bot's jail and mess it up. :-) 2010-09-09T12:49:29 hmm 2010-09-09T12:49:32 grep'ing a checkout for vm_id_rsa and jail_id_rsa could give some insight into their importance. 2010-09-09T12:49:46 yeah 2010-09-09T12:50:01 * bss03 searches for QEMU exploits. (J/K!) 2010-09-09T12:50:31 *** kozlovsky has joined #aichallenge 2010-09-09T12:51:15 woot, so happy when i beat a1k0n 2010-09-09T12:51:18 i hope it's at least using kvm for speed 2010-09-09T12:52:07 Depends on the set-up, but most modern distributions of QEMU will automatically use /dev/kvm if they can open it. 2010-09-09T12:52:12 it doesn't look like kvm is being used... 2010-09-09T12:52:14 oh? 2010-09-09T12:52:17 i thought it required a flag 2010-09-09T12:53:15 amstan: around? 2010-09-09T12:53:37 amstan: do you know if the server has kvm? it would probably make the qemu sandboxes much faster 2010-09-09T12:53:48 There's a compiler flag for automatically doing it now, IIRC. 2010-09-09T12:53:59 amstan: assuming that qemu will automatically use it as bss03 suggests 2010-09-09T12:54:25 bss03: what about in the qemu for ubuntu 8.04? it's a bit old... 2010-09-09T12:55:05 It looks like there's an iptables command in create_jail_users.py which prevents outgoing packets from the jailed user. 2010-09-09T12:55:07 Haven't used Ubuntu 8.04 is quite a while, so I'm not sure. 2010-09-09T12:55:23 coventry: ah that's good 2010-09-09T12:55:28 Even if it turns out they are already using it, it would be nice to double-check, I think. 2010-09-09T12:55:36 coventry: there should also be many system calls blocked 2010-09-09T12:55:45 ideally 2010-09-09T12:56:21 @ask j3camero does the server have kvm and does the install qemu use it? it would be much faster for the sandboxes than plain qemu 2010-09-09T12:56:21 Consider it noted. 2010-09-09T12:56:24 * javagamer is so excited he can put the formal CS knowledge he learned over the summer to use. 2010-09-09T12:56:56 he's gonna have a lot of messages when he gets back :P 2010-09-09T12:57:41 *** coventry has quit IRC 2010-09-09T13:00:44 jmcarthur: how do i check? 2010-09-09T13:01:54 amstan: you can probably see if kvm is running by doing something like: lsmod | grep kvm 2010-09-09T13:02:06 amstan: that doesn't say whether qemu is actually using it though 2010-09-09T13:02:35 lsof /dev/kvm and see if the qemu process(es) are listed. 2010-09-09T13:02:36 amstan: old versions of qemu i think require a special build flag for it. would need to do some googling 2010-09-09T13:02:36 no lines outputted, so i guess you're out of luck 2010-09-09T13:02:56 dang. that means we have an opportunity to speed things up a lot :) 2010-09-09T13:03:25 bss03's suggestion is better than mine ;) 2010-09-09T13:03:35 but if the kvm module isn't loaded anyway then it won't say anything useful 2010-09-09T13:03:37 jmcarthur: ideally, for the next competition we can do a rewrite of everything 2010-09-09T13:03:58 amstan: well, fortunately this should not require a rewrite. just some new software installed 2010-09-09T13:04:12 hm, looks like half the old games on benzedrine.cx are purged 2010-09-09T13:04:14 jmcarthur: write a proposal and we'll see 2010-09-09T13:04:17 alright 2010-09-09T13:04:34 we need to get more organized somehow.. 2010-09-09T13:04:43 suggestions? 2010-09-09T13:04:48 seigen: i was deving until about an hour ago but have stopped now, cooking 2010-09-09T13:04:59 it'd help if j3camero took off work today 2010-09-09T13:08:51 it's issue 83, for the record 2010-09-09T13:09:05 @where issues 2010-09-09T13:09:06 http://code.google.com/p/ai-contest/issues/list 2010-09-09T13:09:44 *** Umsturz has quit IRC 2010-09-09T13:10:01 jmcarthur: how do you measure cpu time in that sandbox? 2010-09-09T13:10:35 amstan: Someone needs to be a benevolent dictator and make decisions on all the key issues. 2010-09-09T13:10:51 amstan: you are asking about quantitatively testing for speed increases? 2010-09-09T13:10:55 mightybyte: that's j3camero, but it seems like he's pretty busy 2010-09-09T13:11:05 jmcarthur: no.. it's for the 1 second time limit 2010-09-09T13:11:30 That job would also involve aggressive prioritization of issues. 2010-09-09T13:11:33 amstan: oh. probably however you would do it outside of the sandbox 2010-09-09T13:11:43 ok 2010-09-09T13:12:18 amstan: i know that a process can set a SIGALRM on itself for CPU time 2010-09-09T13:12:22 the sadbox 2010-09-09T13:12:58 hmm... i wonder if subprocesses also contribute to that cpu time 2010-09-09T13:13:02 the probably do 2010-09-09T13:13:41 i wonder if we could make the tournament engine launch wrapper processes around the bots that monitor the bots' cpu times by monitoring their own 2010-09-09T13:13:52 i highly doubt ITIMER_VIRTUAL includes subprocess cpu time 2010-09-09T13:14:06 :( 2010-09-09T13:14:24 Is there some hash_map I'm supposed to use in C++? I included , but am getting deprecated warnings 2010-09-09T13:14:32 getrusage will tell you subprocess time iirc 2010-09-09T13:14:47 RUSAGE_CHILDREN 2010-09-09T13:15:09 javagamer: ext/hash_map and ext::hash_map i believe 2010-09-09T13:16:56 a1k0n: that only works for subprocesses that have terminated 2010-09-09T13:17:05 a1k0n, ext looks like the wrong namespace, and either ways I still get the deprecated error :/ 2010-09-09T13:19:08 jmcarthur: oh weird. sure enough 2010-09-09T13:19:45 oh __gnu_cxx is the namespace. barf. 2010-09-09T13:20:45 thanks 2010-09-09T13:22:39 javagamer, or you can try your luck with std::unordered_map I think that newer versions of gcc define it, not sure about vsial studio's compiler 2010-09-09T13:23:17 Will the contest servers have it? 2010-09-09T13:23:19 why is albert gone from the tcp server rankings?? 2010-09-09T13:23:28 I'm using GCC 2010-09-09T13:23:44 javagamer, dunno what is the version of gcc... but it's even on versions as old as 4.0 asi i juts found 2010-09-09T13:23:57 *version of the contest server 2010-09-09T13:24:39 Palmik, javagamer: gcc version 4.2.4 (Ubuntu 4.2.4-1ubuntu4) 2010-09-09T13:24:42 javagamer, http://stackoverflow.com/questions/2732543/boostunordered-map-support-by-gcc look here... there is even talk about what a1k0n proposed 2010-09-09T13:24:55 amstan, thanks .) 2010-09-09T13:25:23 phreeza: just curious, you seemed to be crashing a lot. 2010-09-09T13:25:46 seigen: ah, yes :) 2010-09-09T13:28:43 @where tcpserver 2010-09-09T13:28:43 http://www.benzedrine.cx/planetwars/ 2010-09-09T13:31:08 dang, epic game http://www.benzedrine.cx/planetwars/canvas?game_id=1284048551|drewrobb0.1|a1k0n 2010-09-09T13:31:32 hmmm, i don't think sleep is happening tonight 2010-09-09T13:32:33 apparently the "suppression field" tactic doesn't work 2010-09-09T13:33:01 *** s_denchev has quit IRC 2010-09-09T13:33:33 hahaha it looked like 13 ships captured a planet of 100 or so 2010-09-09T13:33:36 the nuts and bolts are very important, which aren't even properly clarified yet, so it's hard to say what will and wont work :P 2010-09-09T13:33:41 but the arrow was hiding the third digit 2010-09-09T13:34:01 canvas needs an xor drawing mode or something 2010-09-09T13:34:08 (maybe it has one) 2010-09-09T13:34:14 so.. how's contest bot doing? 2010-09-09T13:34:37 is the game engine combining players fleets with same arrival times yet? 2010-09-09T13:35:31 now what exactly is intended by that? are you talking about the output from the engine to the client? 2010-09-09T13:35:40 because if you are that could really throw some clients off 2010-09-09T13:35:52 those which are expecting to see exactly what they said 2010-09-09T13:36:06 the information is the same 2010-09-09T13:36:17 i'm not necessarily opposed to it 2010-09-09T13:36:23 the game engine has always combined arriving fleets by player 2010-09-09T13:36:25 it's just something to consider 2010-09-09T13:36:28 otherwise meh, but I'm not not spamming fleets if it's allowed 2010-09-09T13:36:55 it has not yet combined fleets equal in source, dest, and time remaining 2010-09-09T13:37:23 it is of my opinion one currently has a stupid advantage in sending fleets of size 1 2010-09-09T13:37:29 provided they have the time to send that 2010-09-09T13:38:04 even if a bot issues N 1-ship fleets to the same planet in one turn, it will be better off to think of that as 1 unit of 10 2010-09-09T13:38:08 s/10/N 2010-09-09T13:38:26 what advantage? 2010-09-09T13:38:44 Zannick: yes, but dependent on how the other bot handles fleets, it could cripple them, otherwise it still increases the time for the other bot to process it 2010-09-09T13:39:05 even a marginally intelligent bot will merge fleets on its own 2010-09-09T13:39:14 honestly sending lots of 1 fleet slows down the app so it would make sense for the client to want to optimize those away 2010-09-09T13:39:15 and if the other bots are beating some people just by crippling them, whereas they might get the luck win on your for not spamming, then you kind of get to the point where everyone spams 2010-09-09T13:39:21 or ignore them completely 2010-09-09T13:39:41 that's why i'm saying combine them, and make it irrelevant (just a waste of your time) to send multiple fleets 2010-09-09T13:39:47 i'm convinced 2010-09-09T13:40:00 *** alex79 has joined #aichallenge 2010-09-09T13:40:05 i was planning on working on that later, yes. 2010-09-09T13:40:17 What is fun is tricking bots into wasting time on planets that they are far away from 2010-09-09T13:40:40 icefox: I think traps will be awesome for this :D 2010-09-09T13:40:45 traps? 2010-09-09T13:40:48 sure 2010-09-09T13:40:59 like set bait and then strike? 2010-09-09T13:41:01 try to convince the other player to make a move 2010-09-09T13:41:02 that you can counter 2010-09-09T13:41:03 ah 2010-09-09T13:41:06 some bots put a higher priority on planets the other side owns 2010-09-09T13:41:08 yeah 2010-09-09T13:41:34 i don't think exploiting other bots' gullibility is something my bot will do for a while 2010-09-09T13:41:49 i tend to just write a bot 2010-09-09T13:41:53 then upload and make tweaks 2010-09-09T13:41:55 fine tune on paper 2010-09-09T13:42:05 rather than incrementally code one, i end up rewriting too much 2010-09-09T13:42:16 i'm going to go for solid play first (on unrealistic assumption that my opponent is as smart as i am) 2010-09-09T13:42:24 :P 2010-09-09T13:42:29 you guys have played galcon a bit i expect? 2010-09-09T13:42:36 just a little 2010-09-09T13:42:45 i'm not of the opinion that human play resembles bot play enough to be relevant 2010-09-09T13:42:47 i got to the point of beating level 10 single player 2010-09-09T13:42:51 the special levels still owned me 2010-09-09T13:43:05 no, but it was nice to sort of get a feel as to what got me crushed and what didn't 2010-09-09T13:43:24 special levels? 2010-09-09T13:43:31 *** Umsturz has joined #aichallenge 2010-09-09T13:43:32 there are more levels past 10 2010-09-09T13:44:30 How do you guys deal with the first move? So far I have settled on just not doing anything the first move to see what they other guys strategy is, but it seems like a waste (especially against myself) 2010-09-09T13:45:08 i think that is probably a bad idea in general 2010-09-09T13:45:10 String playbackString = ""; 2010-09-09T13:45:11 int ch; 2010-09-09T13:45:11 try { 2010-09-09T13:45:11 while ((ch = System.in.read()) >= 0) { 2010-09-09T13:45:11 playbackString += (char)ch; 2010-09-09T13:45:13 hahahahahhahaaaaaaaaaaaaaa 2010-09-09T13:45:23 early in the game is when the opponent is least likely to be able to reach you, so you can expand most safely 2010-09-09T13:45:30 wow! 2010-09-09T13:45:44 icefox: terrible first move 2010-09-09T13:45:53 that's absolutely awesome, a1k0n 2010-09-09T13:46:05 jmcarthur: not always the case, sometimes the starter planets are very close to the center 2010-09-09T13:46:05 that is why showgame takes an hour to load a game 2010-09-09T13:46:05 we need to punish j3camero severely for this one 2010-09-09T13:46:09 try taking some of the neutral planets closest to you that are most appealing, and maybe contempalte battling for the planets of equal distance that are appealing 2010-09-09T13:46:17 Zannick: yeah, least likely, not always 2010-09-09T13:46:54 i wouldn't bother with center planets on the first turn, personally 2010-09-09T13:46:59 oh wow that is some nice code 2010-09-09T13:47:01 if would consider it for the *second* turn 2010-09-09T13:47:23 jmcarthur: might be worth getting closer to them 2010-09-09T13:47:35 sending your entire fleet minus 1 to the enemy planet is a pretty destructive first move 2010-09-09T13:47:47 yes, nobody suggested that :P 2010-09-09T13:48:19 yeah, but if they do it at the same time then a 3-way kills everything off. if you just wait one turn before going for center planets then you might be able to just wipe out a huge force or avoid a huge force at all just because they bothered with nearby planets instead 2010-09-09T13:48:30 then you own two 5 planets one far away with 1 fleet and one near the baddies with a bunch 2010-09-09T13:48:42 controlling the center planet is how my bot wins at the moment 2010-09-09T13:48:47 that's why i'm saying go for the planets for which you are closer than the enemy 2010-09-09T13:48:55 yeah that'd be okay 2010-09-09T13:49:02 it still depends though 2010-09-09T13:49:04 but it can only take it if the other bot goes for it first 2010-09-09T13:49:32 if the enemy waits for you to make that move first it can send the appropriate number of ships to perfectly wipe yours out. it just slightly more expensive for planets closer to you than them 2010-09-09T13:50:06 that growth rate is nice to take advantage of 2010-09-09T13:50:18 there are variables involved that change the optimal move there 2010-09-09T13:50:22 the longer you are there before the enemy arrives, the more expensive the enemy force must be to win 2010-09-09T13:50:26 yeah of course 2010-09-09T13:50:39 not a good long term strategy, but a decent one 2010-09-09T13:50:49 i want winning strategies 2010-09-09T13:50:52 not decent ones :P 2010-09-09T13:51:04 i want a decent winning strategy 2010-09-09T13:51:10 start moves, vs mid and end game 2010-09-09T13:51:39 Java java = new Java(); 2010-09-09T13:52:01 wat 2010-09-09T13:52:22 a1k0n: just rewrite it from scratch. it would be easier :P 2010-09-09T13:52:22 Marklar marklar = new Marklar(); 2010-09-09T13:52:47 System.in.readline() :P 2010-09-09T13:53:01 have people been making use of the symmetry of the game? 2010-09-09T13:53:31 well planet position wise 2010-09-09T13:53:36 contestbot: seen j3camero 2010-09-09T13:53:36 amstan: I have not seen j3camero. 2010-09-09T13:54:12 what, rewrite java from scratch? :P 2010-09-09T13:54:27 antimatroid1: have you seen my bot? 2010-09-09T13:54:29 antimatroid1: are all maps guaranteed to be symmetrical? 2010-09-09T13:54:40 jmcarthur: yep 2010-09-09T13:54:46 ah, that's nice 2010-09-09T13:54:52 kind of has to be 2010-09-09T13:55:00 planet id 0 is always the center 2010-09-09T13:55:03 well, to be fair, sure, but that doesn't mean it's the case :P 2010-09-09T13:55:06 Zannick: I haven't 2010-09-09T13:55:10 ah 2010-09-09T13:55:19 *** ulope has left #aichallenge 2010-09-09T13:55:30 antimatroid1: look for bswolf on ai-contest 2010-09-09T13:55:37 it is a very dumb bot 2010-09-09T13:55:57 ahhh, I never quite understood why you asked to be yourself handicapped? 2010-09-09T13:56:11 ok now i'm just running java out of heap space trying to read stdin 2010-09-09T13:56:18 why is this so hard? 2010-09-09T13:56:53 antimatroid1: what do you mean? 2010-09-09T13:57:37 wasn't that you who posted in the forums saying turn lengths should depend on language used? 2010-09-09T13:57:38 Zannick: If planet id 0 is the center what is 1? 2010-09-09T13:58:11 antimatroid1: no. 2010-09-09T13:58:26 i think i might be happy with it, now. 2010-09-09T13:58:27 BufferedReader returns null when it's at EOF, not an IOException. goddamn thing lies. 2010-09-09T13:58:38 Umsturz: 2x+1 and 2x+2 are copies of each other placed at random 2010-09-09T13:58:40 oh i just can't read 2010-09-09T13:58:49 lol 2010-09-09T13:59:00 turns out there's a BasicWolf 2010-09-09T13:59:04 http://www.ai-contest.com/forum/viewtopic.php?f=18&t=443&sid=8eb626e78224c37794b6063824b7f93c 2010-09-09T13:59:13 oh yes, i saw that name 2010-09-09T13:59:40 perhaps i should be "Zannick" or "jokeserver" on the forums and in the contest 2010-09-09T13:59:47 lol i never saw his last comment on that thread 2010-09-09T13:59:49 Zannick: thx, so the only constant is 0 : ( 2010-09-09T14:00:08 Umsturz: well, the starting first player planet is always 1, and the second player's is 2... 2010-09-09T14:00:25 * Zannick -> afk 2010-09-09T14:00:26 i swear i've seen other maps 2010-09-09T14:00:32 sweet! 2010-09-09T14:00:43 where player 1 and 2 weren't planet 1 and 2 2010-09-09T14:00:46 but i could be wrong 2010-09-09T14:01:02 how can we verify that? 2010-09-09T14:01:36 could come in quite handy that info 2010-09-09T14:02:38 meh, i have to scan through the planets when I set up anyway 2010-09-09T14:03:37 have we considered generating a variety of challenging maps to get right strategically, or just so it offers a lot of variety? 2010-09-09T14:04:11 like integer grid games would be kind of weird, or lots of large growth planets, etc. 2010-09-09T14:04:50 yeah i'm curious about non-random maps, myself 2010-09-09T14:04:55 jmcarthur: there.. i made it remember most of the stuff: 2010-09-09T14:05:05 `where tcpserver 2010-09-09T14:05:19 contestbot: where tcpserver 2010-09-09T14:05:20 amstan: tcpserver could be http://www.benzedrine.cx/planetwars/. 2010-09-09T14:05:29 hmm.. stupid char 2010-09-09T14:05:39 the distances with lattice games are weird though 2010-09-09T14:05:43 with the way it's defined 2010-09-09T14:05:45 i think? 2010-09-09T14:06:04 i think lots of planets near each player but a huge gap between them might be interesting 2010-09-09T14:06:15 since it would give bots a lot of time to prepare for a strike 2010-09-09T14:06:32 there is a map thats like that 2010-09-09T14:06:35 i will try to generate some maps over the weekend that might provide various avenues for achieving the best result 2010-09-09T14:06:47 (it's friday morning here already) 2010-09-09T14:07:24 a big circle could be fun 2010-09-09T14:07:37 maybe with a single high yield planet in the middle 2010-09-09T14:07:49 equidistance from all other planets 2010-09-09T14:08:00 *equidistant 2010-09-09T14:08:44 http://code.google.com/p/ai-contest/source/branch?spec=issue84&branch=%2Fbranches%2Fissue78 2010-09-09T14:08:51 *** vikhyat has quit IRC 2010-09-09T14:09:28 what about a cirlce, with a high growth point in the circle, but not in the centre, just equally spaced from the two players starting position 2010-09-09T14:09:43 contestbot: later tell dhartmei the link to the forums on this page is broken(http://www.benzedrine.cx/tron/), use ai-contest.com/forums it should work 2010-09-09T14:09:43 amstan: The operation succeeded. 2010-09-09T14:09:55 god java is so enterprisy 2010-09-09T14:10:19 antimatroid1: that could be neat too 2010-09-09T14:10:40 CodeReviewIssueTrackingManager codereviewissuetrackingmanager = new CodeReviewIssueTrackingManager() 2010-09-09T14:10:56 another idea: a straight line of planets with players starting at the ends 2010-09-09T14:11:02 bahahah 2010-09-09T14:11:05 boring to watch maybe 2010-09-09T14:11:14 but maybe some interesting strategies 2010-09-09T14:11:15 a1k0n: i'm so glad i don't program in Java anymore. 2010-09-09T14:11:15 yeah okay, i think there needs to be a set of novelty maps 2010-09-09T14:11:24 and perhaps put the more interesting ones in the final tournament 2010-09-09T14:11:27 a goatse map 2010-09-09T14:11:34 novelty maps at the least might be easier to analyze for strategy ideas 2010-09-09T14:11:41 i'm going to start using java pretty soon so i can hadoop up some shit 2010-09-09T14:11:52 ugh 2010-09-09T14:11:59 if I never touch java again my life will be alright 2010-09-09T14:12:09 i hate to say this, but i think javascript has passed java. 2010-09-09T14:12:12 *** JCS^ has quit IRC 2010-09-09T14:12:18 which may not be because javascript has advanced 2010-09-09T14:12:24 but because java went backwards... 2010-09-09T14:12:40 both have advanced 2010-09-09T14:12:51 java has always been at least this bad :P 2010-09-09T14:13:06 and javascript actually has almost nothing to do with java 2010-09-09T14:14:36 awesome if there's a tie the fucking java engine gives it to player 2 2010-09-09T14:15:21 ... 2010-09-09T14:15:52 (not always, there seems to be a subtle fleet account bug) 2010-09-09T14:16:36 ... 2010-09-09T14:16:53 we need to just make a mo' betta engine 2010-09-09T14:17:00 i'm considering... 2010-09-09T14:17:09 seriously, why haven't you guys just rewritten the engine for this effort? :P 2010-09-09T14:17:19 yarly 2010-09-09T14:17:26 no way 2010-09-09T14:17:38 oh dear god, that's been a long time 2010-09-09T14:18:22 *** JCS^ has joined #aichallenge 2010-09-09T14:21:41 *** ulope has joined #aichallenge 2010-09-09T14:22:12 hmm, i'm wrong, player 2 does have more ships in flight somehow 2010-09-09T14:23:05 2 fleets? 2010-09-09T14:23:20 there are like 50 fleets so it'd hard to keep track 2010-09-09T14:23:40 yeah, but there could be two of the "same" fleet that appears to just be one 2010-09-09T14:23:50 i know the original viewer did that when I tried it 2010-09-09T14:24:11 i really need to make up my mind about whether I can be bothered shifting 'i's 2010-09-09T14:25:59 Thanks to whoever pointed me to unordered_map 2010-09-09T14:26:07 Think I've got it working now 2010-09-09T14:29:58 this is definitely a tie 2010-09-09T14:31:34 a1k0n: i've had a few ties. it's weird. 2010-09-09T14:31:45 but the java engine is saying player 2 won 2010-09-09T14:31:53 i just parsed out the game state by hand, and no way 2010-09-09T14:32:26 i'm running my bot against itself and player 2 always wins 2010-09-09T14:33:23 ugh the input from clients is also quadratic 2010-09-09T14:33:28 Does the java engine support ties? 2010-09-09T14:33:32 it does 2010-09-09T14:33:41 i've had it happen, i just can't tell what's wrong here 2010-09-09T14:35:24 i might see if i can generate some random maps tomorrow that meet other symmetries as well 2010-09-09T14:37:12 i think we can generate fair symmetric maps that aren't always symmetric about the line "separating" the two players 2010-09-09T14:37:22 i think that'd be a decent idea for generating contest maps 2010-09-09T14:38:36 just pick any random line through the centre point of the line joining them, and have the planets be symmetric across that 2010-09-09T14:38:38 *** JCS^ has quit IRC 2010-09-09T14:39:01 and reversed* maybe? 2010-09-09T14:41:40 toss up the way in which the planets are then id'd, and players wouldn't necessarily be able to just "assume" symmetry so easily 2010-09-09T14:43:10 i don't see how assuming symmetry is even all that helpful 2010-09-09T14:43:33 *** Scrap has joined #aichallenge 2010-09-09T14:44:05 Anyone else having trouble reaching www.benzedrine.cx? I can't ping it or get a cxn to port 80 from two different networks. 2010-09-09T14:44:37 seems down 2010-09-09T14:44:56 aw 2010-09-09T14:44:59 jmcarthur: reduce the amount of information 2010-09-09T14:46:17 *** JCS^ has joined #aichallenge 2010-09-09T14:46:44 coventry`: works for me (I'm in germany) 2010-09-09T14:48:09 works for me too 2010-09-09T14:48:28 antimatroid1: the only information that can reduce that i can think of is distances between planets. all other information changes dynamically. doesn't seem that helpful to me 2010-09-09T14:52:08 *** JCS^ has quit IRC 2010-09-09T14:52:23 i just had a wonderful idea :D 2010-09-09T14:52:38 *** Joel__ has joined #aichallenge 2010-09-09T14:52:49 but it was strategy realted :P 2010-09-09T14:52:50 What is your local DNS result for www.benzedrine.cx? Yesterday, I could reach it from one network, but not the other, because the IP address for it in DNS was different. I could reach it by replacing www.benzedrine.cx with raw ip address returned by DNS on the other network. Today, the ip addresses are the same on both networks, and I think equal to the one I had trouble with yesterday. 2010-09-09T14:53:09 i can access it 2010-09-09T14:53:56 213.3.30.106, same as what's in tcp.c 2010-09-09T14:54:12 contestbot: dns www.benzedrine.cx 2010-09-09T14:54:13 amstan: 213.3.30.106 2010-09-09T14:54:22 Yeah, I'm getting 62.65.130.153 on both networks. Something's wrong with its DNS. 2010-09-09T14:54:57 *** Joel__ has quit IRC 2010-09-09T14:55:00 Whois databas 2010-09-09T14:55:01 e is provided by Christmas Island Internet Administration Limited ("CiiA"). 2010-09-09T14:55:15 nameservers: insomnia.benzedrine.cx gandalf.nazgul.ch 2010-09-09T14:55:18 213.3.30.106 works for me, too. 2010-09-09T14:55:23 contestbot: web title http://downforeveryoneorjustme.com/www.benzedrine.cx 2010-09-09T14:55:29 amstan: It's not just you! 2010-09-09T14:55:58 i like that domain name, gandalf . nazgul 2010-09-09T14:56:16 huh. i don't get the 62.65 from either ns 2010-09-09T14:57:27 how can I debug my bot? It times out all the time and I don't know what is wrong with it.. 2010-09-09T15:01:09 *** JCS^ has joined #aichallenge 2010-09-09T15:01:52 Scrap: output stuff to files, use the local tournament engine, or the tcp one 2010-09-09T15:01:59 contestbot: where tcpserver 2010-09-09T15:01:59 amstan: tcpserver could be http://www.benzedrine.cx/planetwars/. 2010-09-09T15:06:06 *** ratatata has joined #aichallenge 2010-09-09T15:06:59 *** eren_ has joined #aichallenge 2010-09-09T15:07:53 a1k0n: you made changes on the bot input reader? are these changes public? 2010-09-09T15:08:11 JCS^: http://code.google.com/p/ai-contest/source/branch?spec=issue84&branch=%2Fbranches%2Fissue78 2010-09-09T15:08:20 thanks 2010-09-09T15:09:04 there is a similarly bad thing in PlayGame's input reader but it's much less impacting (it's building a single line of text one character at a time -- there are other much slower things in the engine than that) 2010-09-09T15:09:48 *** Tomsik has joined #aichallenge 2010-09-09T15:10:06 *** eren_ is now known as ratatata 2010-09-09T15:10:19 so lambdabot is here already? 2010-09-09T15:10:31 contestbot: help where 2010-09-09T15:10:31 seigen: (where ) -- Alias for "whatis $*". 2010-09-09T15:10:47 contestbot: help whatis 2010-09-09T15:10:47 seigen: (whatis [] []) -- Looks up the value of in the factoid database. If given a number, will return only that exact factoid. is only necessary if the message isn't sent in the channel itself. 2010-09-09T15:11:16 Tomsik: you can thank jmcarthur 2010-09-09T15:12:14 hmmm, i wouldn't be surprised if this game can be solved anymore 2010-09-09T15:13:04 > repeat "ha" 2010-09-09T15:13:04 ["ha","ha","ha","ha","ha","ha","ha","ha","ha","ha","ha","ha","ha","ha","ha"... 2010-09-09T15:13:07 Hi all 2010-09-09T15:13:20 > concat.repeat $ "ha" 2010-09-09T15:13:21 "hahahahahahahahahahahahahahahahahahahahahahahahahahahahahahahahahahahahaha... 2010-09-09T15:13:55 Is anyone working on the game scheduler? 2010-09-09T15:14:30 there's a patch in the pipeline 2010-09-09T15:14:34 contestbot: rankings 2010-09-09T15:14:35 amstan: Top 10 players: albert(600), a1k0n_(569), cheese_bot(465), zaphus(322), phreeza(318), inverselimit(286), seigen(281), UloPee(192), mistabell(68), galcon(16) 2010-09-09T15:14:44 rankings feature is back 2010-09-09T15:15:13 * a1k0n shakes his fist at albert 2010-09-09T15:15:51 just a random question about ranking anythng like this, what about removing higher points for higher ranking players, but running lots of round robins amoungst players near each other, and adjusting the leader board based on those results 2010-09-09T15:16:58 antimatroid1: http://en.wikipedia.org/wiki/Elo_rating_system 2010-09-09T15:17:11 Elo is a very well thought out system 2010-09-09T15:17:47 the scheduling part of your idea isn't that bad though 2010-09-09T15:17:57 but i don't think a round robin is really necessary 2010-09-09T15:18:16 just as long as your bot tends to play against bots near it in rank 2010-09-09T15:18:41 a1k0n: do you want me to remove your _ 2010-09-09T15:18:46 Tomsik: concat.repeat == cycle 2010-09-09T15:18:48 Anyone care to help me with my unordered map, it seems like it's almost working: http://pastebin.com/Qry0QgUq 2010-09-09T15:19:15 are you on windows? use notepad++ 2010-09-09T15:19:32 wait, dw 2010-09-09T15:19:38 that's not the same map i was thinking of 2010-09-09T15:20:32 a1k0n: No wonder it was slow. I was having a hard time imagining what they could have done to make it that slow. 2010-09-09T15:20:50 i may want to change my username at some point 2010-09-09T15:20:59 but i have not decided for sure 2010-09-09T15:21:06 amstan: please 2010-09-09T15:21:38 the slowest thing in the actual game engine now is that it opens, writes, and closes the log file for each line it logs 2010-09-09T15:21:41 javagamer: looks like you are calling an undefined constructor (the one without arguments) 2010-09-09T15:21:53 *** FusionX has joined #aichallenge 2010-09-09T15:21:57 a1k0n: ouch 2010-09-09T15:22:00 yuck 2010-09-09T15:22:13 amstan: while you're on that could you remove te second e from mine? 2010-09-09T15:22:17 contestbot: rankings 2010-09-09T15:22:18 amstan: Top 10 players: albert(602), a1k0n(571), cheese_bot(468), zaphus(322), phreeza(321), inverselimit(295), seigen(282), UloPee(193), mistabell(68), galcon(13) 2010-09-09T15:22:22 the actual game engine.py doesn't keep logs, i think? 2010-09-09T15:22:27 k.. nothing blew up 2010-09-09T15:22:35 Racko, I'm not sure exactly how or why it's calling that though. It seems to be trying to make a copy of the planets when I put them in the hash map, but I just want it to have references to them. 2010-09-09T15:22:52 ulope: i need your userid 2010-09-09T15:22:58 UloPee 2010-09-09T15:23:22 contestbot: rankings 100 2010-09-09T15:23:23 amstan: Error: Cannot do that many players. 2010-09-09T15:23:26 contestbot: rankings 30 2010-09-09T15:23:27 amstan: Top 30 players: albert(602), a1k0n(571), cheese_bot(468), zaphus(322), phreeza(321), inverselimit(295), seigen(282), UloPe(193), mistabell(68), galcon(13), Max(-50), j3camero(-65), Mathnerd314(-240), jdonland(-285), bswolf(-438), rmotome(-501), amstan(-515), jeff_cameron(-516), dtkatch(-525) 2010-09-09T15:23:32 there 2010-09-09T15:23:37 amstan: thanks 2010-09-09T15:23:56 javagamer: ah, wait. The unordered_map does it. You need to change the type of the map to std::tr1::unordered_map and store the adressof the planet (&(planetsBySize[i])) 2010-09-09T15:24:13 *** aerique has joined #aichallenge 2010-09-09T15:24:19 Racko, thanks! :D 2010-09-09T15:24:24 no problem 2010-09-09T15:25:11 Racko, it's saying the template argument is invalid :/ 2010-09-09T15:25:17 think i'm gonna abandon my bot and start it fresh tomorrow 2010-09-09T15:25:44 javagamer: sry, Planet* 2010-09-09T15:25:49 not *Planet 2010-09-09T15:26:06 jmcarthur: that is what I do with about all of my projects ^^ 2010-09-09T15:28:19 yeah me too 2010-09-09T15:28:58 Racko, almost works, now I just have this: http://pastebin.com/J6ZnC6fg 2010-09-09T15:29:08 It looks like it wants me to write my own hash function :/ 2010-09-09T15:29:16 *** Tomsik has quit IRC 2010-09-09T15:30:32 contestbot: learn botrepo as http://github.com/amstan/contestbot 2010-09-09T15:30:32 amstan: An error has occurred and has been logged. Please contact this bot's administrator for more information. 2010-09-09T15:30:39 ... 2010-09-09T15:30:50 right.. 2010-09-09T15:30:51 javagamer: possible. One would need to read the docs to be sure. But there are other languages requiring it. Haskell for example 2010-09-09T15:33:33 *** contestbot has joined #aichallenge 2010-09-09T15:33:34 *** ChanServ sets mode: +o contestbot 2010-09-09T15:33:40 there.. now it's happy 2010-09-09T15:33:47 contestbot: learn botrepo as http://github.com/amstan/contestbot 2010-09-09T15:33:47 amstan: The operation succeeded. 2010-09-09T15:33:59 requiring the programmer to provide a hash function. Are you using ? 2010-09-09T15:34:30 haskell doesn't even encourage hash tables 2010-09-09T15:35:24 I didn't mean to imply that^^ 2010-09-09T15:35:51 just confused is all :) 2010-09-09T15:36:01 *** pgpaskar_ has joined #aichallenge 2010-09-09T15:36:07 :o 2010-09-09T15:36:08 wow that is a lot of people 2010-09-09T15:36:12 I finally has teh internets! 2010-09-09T15:36:13 hi! 2010-09-09T15:36:18 pgpaskar_: yeah, a little more and we can beat #csc 2010-09-09T15:36:23 lol. 2010-09-09T15:36:23 pgpaskar_: oh.. watch this: 2010-09-09T15:36:25 contestbot: rankings 2010-09-09T15:36:26 amstan: Top 10 players: albert(606), a1k0n(573), cheese_bot(470), zaphus(325), phreeza(319), inverselimit(295), seigen(292), UloPe(193), mistabell(67), galcon(12) 2010-09-09T15:36:30 oic 2010-09-09T15:36:37 fookin coop site 2010-09-09T15:36:40 will not take my userid pw 2010-09-09T15:37:11 pgpaskar_: we're having some issues with the forums, apparently IE users can't load anything more than the logo 2010-09-09T15:37:26 pgpaskar_: what changes did you do on the logo? what could of caused this? 2010-09-09T15:37:26 lol i've written a cummulative 356 lines of code that i'm about to throw away 2010-09-09T15:37:46 could have 2010-09-09T15:38:22 amstan: ? 2010-09-09T15:38:41 nothing all i did was comment out a div element that was irrelevant 2010-09-09T15:38:57 and i tested it in firefox and safari.. not IE... i can find the changes and undo them 2010-09-09T15:39:09 pgpaskar_: well.. we have to figure it out 2010-09-09T15:39:15 ok 2010-09-09T15:39:48 wtf is my password 2010-09-09T15:39:59 *** you mean :) 2010-09-09T15:40:02 javagamer, looking at this http://publib.boulder.ibm.com/infocenter/comphelp/v9v111/index.jsp?topic=/com.ibm.xlcpp9.aix.doc/standlib/stl_unordered_map.htm it should not be needed to provide your own hash 2010-09-09T15:41:03 checking it out, thanks 2010-09-09T15:41:13 pgpaskar_: this is the second time i refresh it for you... 2010-09-09T15:41:15 amstan: set my password to something 2010-09-09T15:41:21 well it wont fucking send me an email 2010-09-09T15:41:24 pgpaskar_: can you just remember it? 2010-09-09T15:41:25 what am i supposed to do 2010-09-09T15:41:33 no because i didnt get a chance to change it last time 2010-09-09T15:42:46 javagamer: http://www.boost.org/doc/libs/1_44_0/doc/html/unordered/hash_equality.html ... under "Custom Types" is an example for a hash function for points 2010-09-09T15:43:31 amstan: do you have an email address where i can mail you something? 2010-09-09T15:43:31 dhartmei: You have 5 new messages. '/msg lambdabot @messages' to read them. 2010-09-09T15:43:43 jmcarthur: any news on who's the owner of lambdabot? i would like them to change the @ char to something else 2010-09-09T15:43:50 javagamer: (you do need to provide one, there are only default implementations for primitive types and such) 2010-09-09T15:43:53 dhartmei: amstan@ai-contest.com 2010-09-09T15:44:37 Racko, wow a perfect example, thanks! 2010-09-09T15:44:49 you're welcome 2010-09-09T15:45:30 contestbot: tell later Mathnerd314 check out the bot 2010-09-09T15:45:30 amstan: Error: I haven't seen later, I'll let you do the telling. 2010-09-09T15:45:39 contestbot: later tell Mathnerd314 check out the bot 2010-09-09T15:45:39 amstan: The operation succeeded. 2010-09-09T15:47:06 amstan: lambdabot is used in lots and lots of channels. changing things would be counterproductive for a lot of people. if you wanted to run your own lambdabot server it could be okay i guess 2010-09-09T15:47:20 this specific instance of lambdabot i mean 2010-09-09T15:47:32 if you want the source you can get it from here: 2010-09-09T15:47:34 @where lambdabot 2010-09-09T15:47:34 http://www.cse.unsw.edu.au/~dons/lambdabot.html 2010-09-09T15:47:49 Hmm... this looks pretty boost specific. Oh well, I can just switch to using boost 2010-09-09T15:47:50 jmcarthur: contestbot now does very similar things 2010-09-09T15:48:10 amstan: are you wanting contestbot to have the @ syntax? 2010-09-09T15:48:16 yeah 2010-09-09T15:48:41 *** lambdabot has left #aichallenge 2010-09-09T15:49:29 dang, that means all the @tells that i did earlier are gone now 2010-09-09T15:49:38 well, won't be mentioned anyway 2010-09-09T15:49:53 they are probably still stored if i ever bring lambdabot back 2010-09-09T15:50:14 hmm, so only one instance is powering whole freenode, nice :P 2010-09-09T15:50:24 jmcarthur: @later tell nick message 2010-09-09T15:50:26 how do you make him join specific channel? :) 2010-09-09T15:50:32 well, there are more instances, but that nick is all just one instance in all channels you see it in 2010-09-09T15:50:41 amstan: i know, but i don't remember all of them now :P 2010-09-09T15:51:10 Palmik: that's something you can only do if you are authenticated to do it 2010-09-09T15:51:18 I see :D 2010-09-09T15:51:37 i actually have a dirty trick to do it. i was never actually given the privs 2010-09-09T15:51:42 but i shouldn't spread it around 2010-09-09T15:52:10 lamdabot is not a particularly secure bot :\ 2010-09-09T15:52:10 No problem, I understand that :) 2010-09-09T15:52:57 wow, lambdabot is only in three channels right now! 2010-09-09T15:53:05 i guess a lot of people are running their own instances now 2010-09-09T15:53:17 it used to be that she was in like 20 or so channels 2010-09-09T15:53:25 including oddball ones like #perl 2010-09-09T15:53:45 (presumably due to pugs i guess) 2010-09-09T15:55:12 contestbot: later tell danielvf viz1.2 active! 2010-09-09T15:55:12 dhartmei: The operation succeeded. 2010-09-09T15:56:35 dhartmei: any chance of getting rid of example? 2010-09-09T15:56:53 it's not running anymore, is it? 2010-09-09T15:56:53 wait, so if a planet is occupied by a player (not neutral) and the other player zeros the ships out, who owns it? 2010-09-09T15:56:58 http://github.com/ihodes/ai-contest-planet-wars-clj 2010-09-09T15:57:07 A clojure starter package :) 2010-09-09T15:57:20 dhartmei: ah ok, I didn't check just now 2010-09-09T15:57:38 i was running it when there were <2 players, it's not needed anymore :) 2010-09-09T15:57:56 amstan: i fixed the forums link in the tron page, thanks 2010-09-09T15:58:02 1R vs. 1G vs. 0N ==> ? 2010-09-09T15:58:03 jmcarthur, the previous player 2010-09-09T15:58:06 ah 2010-09-09T15:58:16 I asked this question and this answers is what I was iven :) 2010-09-09T15:58:19 okay, so i can't just use the 3-way code for all cases 2010-09-09T15:58:21 *given 2010-09-09T16:00:06 hmm the visualizer on benzedrine.cx is missing the player legend now 2010-09-09T16:01:13 Just noticed that plants with 0 that get sent 1 ship stay at 0 when the 1 ship arrives 2010-09-09T16:02:49 let me check the 1.2 html 2010-09-09T16:03:31 contestbot: where repo 2010-09-09T16:03:31 amstan: repo could be http://code.google.com/p/ai-contest/. 2010-09-09T16:04:04 icefox: that's weird 2010-09-09T16:04:24 icefox: who owns the planet immediately before the ship arrives? 2010-09-09T16:04:31 no one 2010-09-09T16:04:37 icefox: so it's neutral? 2010-09-09T16:04:41 yup 2010-09-09T16:04:45 okay, that is weird 2010-09-09T16:04:56 i was going to blame growth if a player had owned it 2010-09-09T16:06:08 a1k0n: fixed 2010-09-09T16:09:07 oh wait, i *can* use the 3-way generically 2010-09-09T16:09:29 anyone against having a separate #aichallenge-dev channel? 2010-09-09T16:09:30 i just have to make it always default to the previous owner if it breaks even, whether neutral or not 2010-09-09T16:09:49 i'd rather it be in one place, personally 2010-09-09T16:09:56 people will be reporting bugs here a lot anyway 2010-09-09T16:10:05 and discussing them, hence 2010-09-09T16:10:16 jmcarthur: ok, related: would it be a bad idea to advertise this room on the main page? 2010-09-09T16:10:24 not at all, IMO 2010-09-09T16:10:30 ok 2010-09-09T16:10:52 i am used to very large channels, myself 2010-09-09T16:10:59 kind of like it 2010-09-09T16:11:05 always interesting stuff happening 2010-09-09T16:11:24 *** danielvf has quit IRC 2010-09-09T16:11:39 and i think it would be counterproductive to hide our open-sourcey discussion about the backend and engines and stuff 2010-09-09T16:12:40 contestbot: later tell j3camero there are public *and* private ssh keys in the repo. just making sure that's intentional... 2010-09-09T16:12:40 jmcarthur: The operation succeeded. 2010-09-09T16:12:53 ^^ remembered one of the things 2010-09-09T16:15:17 *** seigen has quit IRC 2010-09-09T16:16:58 @where visualizer 2010-09-09T16:16:58 ulope: Error: No factoid matches that key. 2010-09-09T16:17:31 ah.. i guess all the wheres are gone for now 2010-09-09T16:17:34 ulope: what do you expect visualizer to point to? a demo? or its repo? 2010-09-09T16:18:10 amstan: good question. I knew someone set it to the repo, but maybe a demo page with a link to the repo would be better 2010-09-09T16:18:28 ulope: umm ok 2010-09-09T16:18:40 actually.. nvm 2010-09-09T16:19:28 contestbot: learn visualizer as repo:http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer demo:http://csclub.uwaterloo.ca/~amstan/aichallenge/canvas-visualizer/ 2010-09-09T16:19:28 amstan: The operation succeeded. 2010-09-09T16:19:43 @where visualizer 2010-09-09T16:19:43 amstan: visualizer could be repo:http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer demo:http://csclub.uwaterloo.ca/~amstan/aichallenge/canvas-visualizer/. 2010-09-09T16:20:16 amstan: hm repo:http:// doesn't seem to be clickable 2010-09-09T16:20:31 contestbot: learn visualizer as repo: http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer || demo: http://csclub.uwaterloo.ca/~amstan/aichallenge/canvas-visualizer/ 2010-09-09T16:20:31 amstan: The operation succeeded. 2010-09-09T16:20:53 better? 2010-09-09T16:20:58 ;) 2010-09-09T16:21:13 *** kozlovsky has quit IRC 2010-09-09T16:21:40 *** kozlovsky has joined #aichallenge 2010-09-09T16:22:07 *** danielvf has joined #aichallenge 2010-09-09T16:26:16 dhartmei: what security do you implement for the tcp server? can anyone just go on it and claim they're someone else? 2010-09-09T16:26:58 yes, i rotate old games after 12-24 hours. so far, this has worked fine. people use username1 username2 etc. for different versions of their bots 2010-09-09T16:27:34 i guess a password could be added, and some registration thing, but so far everyone has acted like adults :) 2010-09-09T16:27:53 a graph of the growth rate of the two users would be something to add to the js page. 2010-09-09T16:28:04 *** kozlovsky has quit IRC 2010-09-09T16:29:45 @where visualizer 2010-09-09T16:29:45 jmcarthur: visualizer could be (#1) repo:http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer demo:http://csclub.uwaterloo.ca/~amstan/aichallenge/canvas-visualizer/, or (#2) repo: http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer || demo: http://csclub.uwaterloo.ca/~amstan/aichallenge/canvas-visualizer/. 2010-09-09T16:29:51 ... 2010-09-09T16:29:59 oh.. darn 2010-09-09T16:30:31 contestbot: forget visualizer 2 2010-09-09T16:30:31 amstan: The operation succeeded. 2010-09-09T16:30:35 @where visualizer 2010-09-09T16:30:35 amstan: visualizer could be repo:http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer demo:http://csclub.uwaterloo.ca/~amstan/aichallenge/canvas-visualizer/. 2010-09-09T16:30:38 personally i was pretty happy with contestbot just being for things like rankings 2010-09-09T16:30:39 there 2010-09-09T16:30:50 seems like this was some duplication of effort :P 2010-09-09T16:31:15 amstan: to be one one who nitpicks: you deleted the one with the clickable urls :) 2010-09-09T16:31:24 no!! 2010-09-09T16:31:50 amstan: so how do I check out the bot? 2010-09-09T16:32:01 contestbot: where botrepo 2010-09-09T16:32:01 amstan: botrepo could be http://github.com/amstan/contestbot. 2010-09-09T16:32:11 *** dhartmei has quit IRC 2010-09-09T16:32:15 oh.. wait.. you mean the commands: 2010-09-09T16:32:21 contestbot: where bottopic 2010-09-09T16:32:21 amstan: bottopic could be http://ai-contest.com/forum/viewtopic.php?f=19&t=436. 2010-09-09T16:32:33 amstan: it was a pun :p 2010-09-09T16:32:59 so both of those are useful 2010-09-09T16:34:07 anyone from here playing on galcon.com flash one? 2010-09-09T16:35:31 Utkarsh: i was hooked on that yesterday 2010-09-09T16:41:41 *** aerique has quit IRC 2010-09-09T16:42:53 *** zaphus has joined #aichallenge 2010-09-09T16:47:34 *** Vi0 has quit IRC 2010-09-09T16:47:36 *** zaphus has quit IRC 2010-09-09T16:53:51 *** blackskad has quit IRC 2010-09-09T16:57:33 *** Palmik has quit IRC 2010-09-09T17:01:16 Can I have an #if in a #define ? 2010-09-09T17:03:10 you should be able to 2010-09-09T17:03:42 you'd probably want to use the #define in a #if #else block 2010-09-09T17:03:56 agreed 2010-09-09T17:06:22 I considered that and am pretty sure it wouldn't work, though what I'm trying to do is rather unnecessary 2010-09-09T17:07:40 ?? 2010-09-09T17:08:06 I'll pastebin the code once I get it working 2010-09-09T17:11:22 Actually, this really isn't worth it. 2010-09-09T17:14:15 *** Scrap has quit IRC 2010-09-09T17:16:30 I was just trying to avoid some if statements in my debugging code. I have it log something only if the debugging level is over some constant for each message and I was trying to use #if s to comment out he line if the debugging level was too low. 2010-09-09T17:17:59 yeah for debugging i do something like #if DEBUG #define debug(...) #else #define debug(...) #endif 2010-09-09T17:18:43 the else case defines the debug statement as empty so it's removed everywhere in the code 2010-09-09T17:18:44 i don't do log levels. not much point, for me 2010-09-09T17:18:51 s/for me/to me/ 2010-09-09T17:19:31 i've used a set of bit flags 2010-09-09T17:20:27 jmcarthur: I guess that depends how you use logging. my current bot spews out about 20-50 lines per planet per turn if i run it on DEBUG, so obviously i usually use INFO 2010-09-09T17:21:06 i rarely do logging at all, actually 2010-09-09T17:21:27 i will add traces here and there if i hit a problem, and then remove them promptly after 2010-09-09T17:22:19 Right now I have 2-3 lines per planet per turn 2010-09-09T17:22:37 I just know I'll run into problem later and want to use the debugging code I wrote, so I'm keeping it in 2010-09-09T17:22:58 dont unocupied planets increase in pop? 2010-09-09T17:23:10 no 2010-09-09T17:23:10 Nope 2010-09-09T17:23:14 hi Cyndre :) 2010-09-09T17:23:20 hihi 2010-09-09T17:23:26 oh you appeared yesterday didn't you? 2010-09-09T17:23:32 i'm mixing up who i've seen and who i haven't seen yet 2010-09-09T17:23:40 accounts cant be created? 2010-09-09T17:23:44 not yet 2010-09-09T17:23:47 it's not open yet 2010-09-09T17:23:51 officially starts tomorrow 2010-09-09T17:23:52 I see people fighting 2010-09-09T17:23:56 yeah, beta testers 2010-09-09T17:24:07 cool 2010-09-09T17:24:08 if you ask nicely you could possible get in later 2010-09-09T17:24:16 by asking j3camero when he's around 2010-09-09T17:24:23 nah, havent even started yet 2010-09-09T17:24:29 been sick home from work since tuesday 2010-09-09T17:24:30 :( 2010-09-09T17:24:32 aw 2010-09-09T17:24:36 at least you have a job :( 2010-09-09T17:24:55 remember how I was writting software last year for monitoring cable modems? 2010-09-09T17:25:03 nope 2010-09-09T17:25:04 :P 2010-09-09T17:25:10 hmmm - well I was :) 2010-09-09T17:25:33 and did a presentation last week and nailed it 2010-09-09T17:26:08 your out of school now jmcarthur? 2010-09-09T17:27:13 *** Umsturz has left #aichallenge 2010-09-09T17:27:20 i was last time too 2010-09-09T17:27:33 hmmm, think I have you confused then - were you working last time? 2010-09-09T17:27:38 yeah 2010-09-09T17:27:48 in fact, work made me unable to finish my bot in time :\ 2010-09-09T17:28:07 so then what happened? 2010-09-09T17:28:17 i could have probably been around, i figure, 30-50th place, but i ended up in 105th instead 2010-09-09T17:28:20 oh, i got laid off 2010-09-09T17:28:25 that was better then me 2010-09-09T17:28:34 there's actually some corporate politics and stuff involved 2010-09-09T17:28:37 it all kind of sucks 2010-09-09T17:28:48 that sucks - did some incompetent boob that would have placed 1k+ get to keep his job? 2010-09-09T17:29:11 i didn't really work with any incompetent boobs at least 2010-09-09T17:29:12 thats the problem is the real smart people dont waste time on politics and ass kissing 2010-09-09T17:29:17 it was a bunch of smart people 2010-09-09T17:29:19 thats a good thing :) 2010-09-09T17:30:21 so what did you do then before? 2010-09-09T17:30:34 antitamper software 2010-09-09T17:30:39 mostly kernel programming 2010-09-09T17:30:58 kind of a boring job actually, but the workplace was great 2010-09-09T17:30:58 and no luck in job search? and how longs it been? 2010-09-09T17:31:37 I see a1k0n is still at yahoo regardeless of his parpicitation in the google ai contest 2010-09-09T17:31:43 i've been searching for a bit over a month now. i have a fair bit of money saved up, so can afford to be picky (and have been picky!) for now 2010-09-09T17:31:57 nice, what kind of job are you looking for? 2010-09-09T17:32:02 yeah he got a lot of offers but instead just moved to a better position within his company 2010-09-09T17:32:25 oooo so it actually paid off to spend his free time on it :) grats if your listening in a1k0n 2010-09-09T17:32:28 i'm been on the hunt for functional programming jobs. have had an interview and a few prospects so far, but nothing solic 2010-09-09T17:32:30 *solid 2010-09-09T17:32:51 a1k0n actually phrased it as "literally changed his life" 2010-09-09T17:33:18 grats man - and persoanlly I would rather be in your position then mine right now - currently sysadmin/market/phone support for isp/writting my software that will take me out of that hell hole 2010-09-09T17:33:22 wow 2010-09-09T17:33:27 the company i interviewed with seemed nice, but i think i don't really want to be in finance... 2010-09-09T17:33:55 jmcarthur: probably because a contest like that takes the politics out of it and leaves little to doubt 2010-09-09T17:34:00 currently i'm taking a brief hiatus from the job hunt to try my hand and making some money from a web app i'm working on 2010-09-09T17:34:14 but then this contest resurfaced... 2010-09-09T17:34:16 cool - live yet, or sharring info about it? 2010-09-09T17:34:21 nah 2010-09-09T17:34:27 *** dmj has joined #aichallenge 2010-09-09T17:34:31 jmcarthur: consider this furthering your job search (look at a1k0n ) 2010-09-09T17:34:43 Cyndre: only if i win! :P 2010-09-09T17:34:44 *** McLeopold has joined #aichallenge 2010-09-09T17:34:46 i'm not counting on it 2010-09-09T17:34:46 Cyndre: thanks 2010-09-09T17:35:11 jmcarthur: if you put 80 hours a week into it I am sure you could win 2010-09-09T17:35:23 i had a really really tempting offer from goldman sachs, and everyone seemed really cool and super smart 2010-09-09T17:35:28 even then i'm not sure. there are a lot of smart people around :) 2010-09-09T17:35:33 but i also don't really want to be in finance. per se. 2010-09-09T17:35:34 a1k0n, so litterly changed your life? I am so happy to hear that for you 2010-09-09T17:35:45 Cyndre: yep. moved to the bay area. 2010-09-09T17:35:47 a month ago. 2010-09-09T17:35:50 cool 2010-09-09T17:36:02 yet again congrats 2010-09-09T17:36:03 a1k0n: yeah, there are nice jobs in finance, but my inhibitions are more... ethical 2010-09-09T17:36:05 just getting into my new job, doing some cool antispam algorithms... 2010-09-09T17:36:08 a1k0n 2010-09-09T17:36:14 i don't feel right making money out of "thin air" 2010-09-09T17:36:22 you won the last contest right? 2010-09-09T17:36:28 lol, i read that as "antispasm algorithms" 2010-09-09T17:36:32 and then the contest came along again and consumed my subconscious mind which was previously working on the problem for my job 2010-09-09T17:36:42 Cyndre: yep 2010-09-09T17:37:12 make sure to explain to them until you win this contest you can not fully be focused on the antispam algorithms and they should allow you to work on it durring normal hours 2010-09-09T17:37:51 heh! my boss is totally understanding, and he's trying to get some of my coworkers to enter 2010-09-09T17:37:52 i love the irony of something that was distracting you so much from you job got you better placement at said job 2010-09-09T17:38:19 i told my manager about the contest yesterday 2010-09-09T17:38:23 i work with a bunch of machine learning dudes 2010-09-09T17:38:29 and about how i was doing all sorts of bugfixing in my free time 2010-09-09T17:38:31 i don't think they'll be able to stay away 2010-09-09T17:38:32 very nice 2010-09-09T17:38:41 he was amused that that's what i chose to be doing on my own time 2010-09-09T17:38:48 heh 2010-09-09T17:39:10 *** McLeopold has quit IRC 2010-09-09T17:39:14 Zannick: no time alloted durring the day and felt the need to fix them? 2010-09-09T17:39:35 no, at home after work 2010-09-09T17:39:54 Hey, anyone know if numpy is installed/allowed on the contest server? 2010-09-09T17:39:54 jmcarthur: so yeah, even if you don't win this contest you should write a blog post about what you did and get it on reddit 2010-09-09T17:39:58 thats what I mean - felt the "need" to fix them and did it in your time because no time was given to you 2010-09-09T17:40:16 there are lots of interesting jobs out there with people who don't have time to wade through resumes looking for smart people 2010-09-09T17:40:34 and finding someone who does this in spare time is win for themn 2010-09-09T17:40:39 *** drewrobb has quit IRC 2010-09-09T17:41:05 Moreover resumes do a bad job of demonstrating smart 2010-09-09T17:41:08 a1k0n: and personally resumes dont really seperate people out all that well 2010-09-09T17:41:15 yeah they're terrible 2010-09-09T17:41:34 Wow, I just realized I C++'s built-in sort isn't adaptive :/ 2010-09-09T17:42:08 i'm amused that javagamer isn't not using java, but then again i feel like this is deja vu 2010-09-09T17:42:11 *is not 2010-09-09T17:42:54 Yeah, I did C++ last time too, the name is only b/c java was the first real language I learned 2010-09-09T17:43:05 java is not a real language 2010-09-09T17:43:17 Thought you might say that 2010-09-09T17:43:20 nobody speaks it in the wild 2010-09-09T17:43:30 it's synthetic 2010-09-09T17:43:50 (ah but you thought i was going to contrast it with haskell, didn't you! thought you had me figured out!) 2010-09-09T17:44:14 i'm speaking java: Haskell haskell = new Haskell() 2010-09-09T17:44:18 ok, i'll stop 2010-09-09T17:44:21 gibberish 2010-09-09T17:44:25 heh 2010-09-09T17:44:43 C++ doesn't have a built-in adaptive sort, right? 2010-09-09T17:44:55 it doesn't have much built in at all 2010-09-09T17:45:00 what like qsort? sort in ? 2010-09-09T17:45:09 Yeah 2010-09-09T17:45:26 I think I'll probably just use insertion sort, it should work well enough 2010-09-09T17:45:36 those are built in 2010-09-09T17:45:49 i maen, depending on what you're sorting you are probably well-served with qsort 2010-09-09T17:45:54 I know it has qsort and sort, but neither are adaptive 2010-09-09T17:45:57 adaptive how? 2010-09-09T17:46:08 oh, like working well on pre-sorted stuff 2010-09-09T17:46:11 inverselimit: yes, should be 2010-09-09T17:46:15 Yeah 2010-09-09T17:46:38 Not sure how accurate of a benchmark this is, but it seems to make a good case for insertion sort http://www.sorting-algorithms.com/nearly-sorted-initial-order 2010-09-09T17:46:43 ulope: excellent, thank you 2010-09-09T17:46:47 is there any limit on the number of turns for a game? 2010-09-09T17:46:50 C90 defines heapsort, mergesort, and qsort 2010-09-09T17:47:00 Which doesn't happen to be very difficult to add 2010-09-09T17:47:07 *** seigen has joined #aichallenge 2010-09-09T17:47:10 Utkarsh: yes, and it's currently 200, but i don't know if it will ever change or not 2010-09-09T17:47:24 god the python engine do_time_step function is dense and verbose and long 2010-09-09T17:47:36 the letters run together 2010-09-09T17:47:38 a1k0n: ah okay.. 2010-09-09T17:47:59 and does anyone know if the ruby version on the server was finalised yet? 2010-09-09T17:48:08 a1k0n, nice to know, but seems insertion still wins out, thanks though 2010-09-09T17:53:33 so what are some good strategies for this game? 2010-09-09T17:55:13 yes 2010-09-09T17:55:34 we don't know yet :P 2010-09-09T17:56:14 cool, Im going to go afk and write some ideas on paper and then plan it out 2010-09-09T17:56:31 btw, its an adictive game without the ai bots added in 2010-09-09T17:58:30 if my interpretation of the engine is correct, if you send all of a planet's ships away, you still own the planet and it still grows more ships, right? 2010-09-09T17:58:43 yes 2010-09-09T17:58:48 thanks 2010-09-09T18:05:11 contestbot: rankings 2010-09-09T18:05:12 ratatata: Top 10 players: albert(563), phreeza(510), a1k0n(495), cheese_bot(436), zaphus(386), seigen(254), inverselimit(237), UloPe(199), mistabell(62), galcon(21) 2010-09-09T18:05:20 *** alex79 has quit IRC 2010-09-09T18:07:21 *** JCS^ has quit IRC 2010-09-09T18:09:20 did java visualizer get updated since yesterday? *not the .js one 2010-09-09T18:11:47 *** JCS^ has joined #aichallenge 2010-09-09T18:11:55 *** Queue29 has joined #aichallenge 2010-09-09T18:16:00 *** Scrap has joined #aichallenge 2010-09-09T18:16:15 does anybody know, if there will be multiple orders with the same source and destination, they would be summed up or overwritten? 2010-09-09T18:16:38 javagamer: Mergesort is almost as fast on nearly sorted items. 2010-09-09T18:16:55 javagamer: Insertion sort is horrible on reverse sorted items. 2010-09-09T18:17:37 Scrap: no, there has been some discussion about merging them but it's not happening right now 2010-09-09T18:18:06 bss03: http://en.wikipedia.org/wiki/Timsort 2010-09-09T18:18:30 ulope: thanks. That's sad.. 2010-09-09T18:19:12 heh i just commented about that on the forum 2010-09-09T18:19:20 it does not now, but it probably wouldn't be hard to write a patch 2010-09-09T18:19:55 same source, destination, and number of turns 2010-09-09T18:20:21 i've been thinking about writing such a patch 2010-09-09T18:20:42 since it doesn't make any difference in terms of battle.. merging should be the way to go, especially with a time limit for clients in place 2010-09-09T18:20:45 you could also just merge them on input in your client and not care if it's inefficient for others 2010-09-09T18:20:48 a1k0n: number of turns doesn't matter just same src & dst in the same turn 2010-09-09T18:21:09 well, right, number of turns to destination, not from source 2010-09-09T18:21:14 i was originally against merging because it could be confusing for clients to see a different state than they put out, but i have since been convinced otherwise 2010-09-09T18:21:17 er 2010-09-09T18:21:20 whatever, it's equivalent 2010-09-09T18:21:34 that's what i meant anyway :) 2010-09-09T18:21:42 ulope: I like that Timsort. 2010-09-09T18:21:43 *** phreeza has quit IRC 2010-09-09T18:22:16 Of course they are only equivalent if the battle resolution stuff gets cleaned up 2010-09-09T18:22:18 ulope: I'm sure it's implemented to be worst-case n log n anyway. 2010-09-09T18:22:22 mergesort also has a better worst-case than quicksort, but in practice quicksort implementations can make worst-case extremely rare 2010-09-09T18:22:29 ulope: true! 2010-09-09T18:22:58 s/if/when/ 2010-09-09T18:23:07 it better get cleaned up 2010-09-09T18:23:29 bss03: there was a comparison with some huge datasets somwhere a few weeks ago where timsort compared very favorably 2010-09-09T18:24:01 jmcarthur: true 2010-09-09T18:24:09 for visual purposes, the source of a fleet is still significant 2010-09-09T18:24:55 i would hate to have two fleets from opposite sides of the map merge just because they will arrive at the same target in the middle of the map at the same time 2010-09-09T18:25:04 in a visual, i mean 2010-09-09T18:25:06 i hope j3camero has time to review/commit on all these issues tonight and can put out new starter packs 2010-09-09T18:25:52 ooh, there should be a "last updated" note on the starter packages page 2010-09-09T18:25:57 jmcarthur: I would think that only fleet with the same src/dst get merged 2010-09-09T18:25:58 i feel like he'll be overwhelmed 2010-09-09T18:28:11 ulope: exactly like that. would be great.. 2010-09-09T18:28:32 *** tapwater has joined #aichallenge 2010-09-09T18:29:29 *** drewrobb has joined #aichallenge 2010-09-09T18:32:20 someone needs to code this up too: http://code.google.com/p/ai-contest/issues/detail?id=87 2010-09-09T18:32:26 perhaps i will take a peek 2010-09-09T18:32:52 oh, that's probably easy 2010-09-09T18:33:08 i haven't looked at the schema at all 2010-09-09T18:33:19 er, maybe 2010-09-09T18:33:30 i'd have to look at the sql commands that generate the rankings page 2010-09-09T18:33:50 it's joiney 2010-09-09T18:33:54 but it should be just select elo from rankings where userid=x 2010-09-09T18:34:50 who's hackin on their tcpserver bot? 2010-09-09T18:35:11 i haven't touched mine since yesterday 2010-09-09T18:35:24 dhartmei: have you considered adding the while (true); do tcp; ..etc. invocation to the tcp.c? 2010-09-09T18:35:32 dhartmei: in the comments, i mean. 2010-09-09T18:35:38 seigen: me, but i feel i've run into a bit of a dead end 2010-09-09T18:35:47 Is is bad for my AI to run monkey sort of the list of planets when deciding where to go? ;) 2010-09-09T18:36:23 i'm sure it wins to many existing strategies 2010-09-09T18:38:22 select score from rankings where username=x 2010-09-09T18:38:52 the problem is the rankings table contains many old rankings 2010-09-09T18:38:55 a1k0n: why do people keep saying random SQL queries? 2010-09-09T18:39:20 oh so you have to find the rankings for the current submission? 2010-09-09T18:39:40 ooh, current submission, yeah. 2010-09-09T18:39:41 Mathnerd314: trying to figure out how to put opponents' elo score on the profile game lists 2010-09-09T18:39:45 i was thinking just by username 2010-09-09T18:40:25 well, submission id, that could have old values or nothing... 2010-09-09T18:40:32 er. hm. 2010-09-09T18:40:40 ulope: what kind of dead end? 2010-09-09T18:41:01 if it isn't the current submission, leave opp. elo blank? 2010-09-09T18:41:05 okay this schema is crazy 2010-09-09T18:41:08 seigen: The I've-coded-myself-into-a-hole kind ;) 2010-09-09T18:41:21 well each person has an elo regardless 2010-09-09T18:41:26 i think just doing what i said is good enough 2010-09-09T18:42:00 related: http://code.google.com/p/ai-contest/issues/detail?id=88 2010-09-09T18:42:14 *** madsy has quit IRC 2010-09-09T18:42:15 seigen: Lots of branching based on not well established metrics.. that kind of thing 2010-09-09T18:42:31 *** madsy has joined #aichallenge 2010-09-09T18:42:58 ulope: so you're trying lookahead? 2010-09-09T18:44:10 i may be in the minority here, but i think there may be a straightforward & provably best economic strategy. NPV of discounted future ship production, or something 2010-09-09T18:44:18 seigen: A bit but so far it's not working too well, very many things can happen during a 10 or 20 turn flight 2010-09-09T18:44:39 add it to the game trackig - the elhoo f each player as the game starts 2010-09-09T18:44:57 2 more columns in the table 2010-09-09T18:45:54 seigen: hm.. thats somethin to think about 2010-09-09T18:46:57 Cyndre: perhaps it should be the most recent elo of that particular submission rather than at the time of the match (but where it freezes when the opponent uploads a new bot, of course) 2010-09-09T18:47:52 jmcarthur: thats why I would store it at time of game start - then you see the elho of the bot you fought, not the current bot 2010-09-09T18:48:15 oh 2010-09-09T18:48:38 the elo of the bot you fought is probably still available if the user uploads a new bot 2010-09-09T18:48:40 maybe like a submissionId tied to the playerId with unique elhos 2010-09-09T18:48:43 elo 2010-09-09T18:49:05 but it probably won't have the elo that it had at the time 2010-09-09T18:49:16 besides, elo is not updated game-by-game 2010-09-09T18:49:45 and submission ids are tied to player ids 2010-09-09T18:50:29 so store the submission id at the time of game start, then select elo based on submission id 2010-09-09T18:50:35 which is probably already done 2010-09-09T18:50:52 yeah, games are recorded as submission id vs submission id 2010-09-09T18:51:21 yeah but unfortunately elo score is calculated afterward 2010-09-09T18:51:40 we need a submission id -> elo score table and i think elo is only stored per user 2010-09-09T18:51:49 but actually 2010-09-09T18:51:54 if you resubmit all your games disappear anyway 2010-09-09T18:52:21 so it's still accurate to use the player ranking in the game table 2010-09-09T18:53:07 a1k0n: look at backend/process_ratings.py 2010-09-09T18:53:29 i just had three games in a row with galcon 2010-09-09T18:53:38 the actual table only puts submission id, not user id 2010-09-09T18:53:45 oh huh 2010-09-09T18:55:38 danielvf: you around? 2010-09-09T18:56:06 well that's perfect 2010-09-09T18:56:22 another proposal related to rank: http://code.google.com/p/ai-contest/issues/detail?id=89 2010-09-09T18:57:57 wow they use 3 stddevs? 2010-09-09T18:58:04 that would be invariably negative with bayeselo 2010-09-09T18:58:41 are you sure? 2010-09-09T18:58:42 i think if we just used mean - the '-' that'd be ok; it'd give a bonus to having played more games 2010-09-09T18:58:53 http://www.benzedrine.cx/planetwars/getratings 2010-09-09T18:59:03 you have to play a lot of games for those + and - to converge 2010-09-09T18:59:16 + and - are the stddev, are they? 2010-09-09T18:59:18 *aren't 2010-09-09T18:59:26 i thought they were 95% confidence interval 2010-09-09T18:59:30 which is different 2010-09-09T18:59:36 i guess they're the con.. yeah, so what is that, 3 stddevs already? 2010-09-09T18:59:42 maybe 2010-09-09T18:59:44 *** Zaphus has joined #aichallenge 2010-09-09T19:00:32 so yeah, elo - '-', and then renormalize so that the minimum is 0 is probably best 2010-09-09T19:01:36 i wonder what the confidence interval was on the top 10 last time 2010-09-09T19:01:50 we were never told, afaik 2010-09-09T19:01:57 yeah, and i probably don't want to know 2010-09-09T19:02:03 it would be nice to know that they were not overlapping 2010-09-09T19:02:15 i think that is unlikely 2010-09-09T19:02:32 it can always be made so by playing enough matches 2010-09-09T19:02:55 yeah. but i doubt there were the 500 matches or so necessary to get a +/- 20 2010-09-09T19:03:03 * jmcarthur shrugs 2010-09-09T19:04:51 i do believe that bayeselo can also report a true stddev 2010-09-09T19:05:09 at least some sample output here shows stddev http://remi.coulom.free.fr/Bayesian-Elo/ 2010-09-09T19:05:58 oh, but it's for a different kind of stat i think 2010-09-09T19:09:01 *** dmj has quit IRC 2010-09-09T19:09:02 yeah for simulations i guess? that might be a useful thing 2010-09-09T19:10:44 yo guys, how can i check c# version, any ideas? 2010-09-09T19:10:49 actually, that's a pretty cool feature on its own 2010-09-09T19:11:36 will mono -V do it? 2010-09-09T19:12:13 *** dmj has joined #aichallenge 2010-09-09T19:13:04 *** jens has joined #aichallenge 2010-09-09T19:13:12 *** dmj is now known as dmj111 2010-09-09T19:13:32 *** jens is now known as Guest19921 2010-09-09T19:14:08 *** Guest19921 is now known as JensTi 2010-09-09T19:14:27 you know what i would like? pgn files from the server! 2010-09-09T19:14:53 could be included with whatever replay tarballs are put up 2010-09-09T19:15:19 or whatever format is being used for bayeselo 2010-09-09T19:16:27 How come I can't do this: Planet tmp; ? 2010-09-09T19:16:56 that invokes the Planet::Planet() constructor 2010-09-09T19:16:58 there's no default constructor for planet 2010-09-09T19:17:10 So, I can't have it uninitialized? 2010-09-09T19:17:24 try to use Planet tmp = null; 2010-09-09T19:17:51 wouldn't that have to be Planet *tmp = null? i'm no C++ guru 2010-09-09T19:18:20 jmcarthur: you'd be defining a Planet* 2010-09-09T19:18:24 yeah 2010-09-09T19:18:24 Apprently null was not declared in this scope 2010-09-09T19:18:28 NULL 2010-09-09T19:18:28 hey, since the server code is open source, is it ok for us to put up our own server to do some tests on? 2010-09-09T19:18:31 *** Mathnerd314 has quit IRC 2010-09-09T19:18:31 but i thought null was only valid for pointers 2010-09-09T19:18:31 [since his nick is javagamer, i'm supposing he is using java o.o ] 2010-09-09T19:18:39 JCS^: no it's C++ 2010-09-09T19:18:40 Heh, nope C++ 2010-09-09T19:18:44 sorry, lol 2010-09-09T19:18:47 *** javagamer is now known as javagamer_usingC 2010-09-09T19:18:50 ahah 2010-09-09T19:19:01 cppgamer 2010-09-09T19:19:03 :P 2010-09-09T19:19:09 *** javagamer_usingC is now known as javagamer_Cpp 2010-09-09T19:19:21 Hope that clears up some confusion 2010-09-09T19:19:35 haha, ok. now I know 2010-09-09T19:19:39 javagamer_Cpp: so.. why aren't you cppgamer? 2010-09-09T19:19:40 you could add a default constructor to the Planet class in PlanetWars.h 2010-09-09T19:19:41 JensTi: it's fine if you can manage it 2010-09-09T19:19:58 amstan: good question 2010-09-09T19:20:12 cool, who in here is actually (involved with) running the project? 2010-09-09T19:20:13 maybe because of the problems java had last contest 2010-09-09T19:20:22 JensTi: a lot of us are contributing in various way 2010-09-09T19:20:23 JensTi: i'm one of the organizers 2010-09-09T19:20:24 s 2010-09-09T19:20:36 amstan: which problems? 2010-09-09T19:21:02 JCS^: with the tracking time, our sandbox method made all the java entries time out randomly 2010-09-09T19:21:08 it was impossible to have a bot with java 2010-09-09T19:21:12 ok, well, I've set up a version of your code amstan, and it still had some google analitics tags in it, so sorry if I show up in your stats, I removed them ;) 2010-09-09T19:21:26 JensTi: probably not an issue 2010-09-09T19:21:29 oh, you fixed it? 2010-09-09T19:21:48 JensTi: so.. you've setup a site with our code? cool, where? 2010-09-09T19:21:52 http://zeus.ugent.be/challenge 2010-09-09T19:21:54 amstan: was "sadbox" an intentional typo? 2010-09-09T19:21:55 orly? 2010-09-09T19:22:01 i need some php tested 2010-09-09T19:22:06 Zannick: no, lol, "sandbox" 2010-09-09T19:22:07 er, intentional or typo? 2010-09-09T19:22:23 because all the code is for "user_sadbox" 2010-09-09T19:22:25 I like the sadbox :p 2010-09-09T19:22:27 which i find amusing 2010-09-09T19:22:38 me2 2010-09-09T19:22:41 JensTi: there is also an unofficial server that works fundamentally differently, if you weren't aware of it 2010-09-09T19:22:45 @where tcpserver 2010-09-09T19:22:45 jmcarthur: tcpserver could be http://www.benzedrine.cx/planetwars/. 2010-09-09T19:22:45 JensTi: tell j3camero when he gets online, he's the founder 2010-09-09T19:23:03 sadbox is sad 2010-09-09T19:23:05 amstan: it is online, just noticed it doesnt really work without the trailing slash 2010-09-09T19:23:10 http://zeus.ugent.be/challenge/ 2010-09-09T19:23:27 http://img.myconfinedspace.com/wp-content/uploads/tdomf/53880/sadbox-500x375.jpg 2010-09-09T19:23:42 a1k0n: lol.. that's a real sadbox 2010-09-09T19:23:57 heh 2010-09-09T19:24:27 JensTi: if you're the type of guy who can go into these things, fix/add stuff, we'd love to have you onboard 2010-09-09T19:24:45 amstan: I just noticed 2 little typo;s and reported them 2010-09-09T19:24:58 but I'd like to get the visualization working 2010-09-09T19:25:00 review comments? http://paste.lisp.org/display/114403 2010-09-09T19:25:22 contestbot: later tell j3camero look! unofficial contest: http://zeus.ugent.be/challenge/ 2010-09-09T19:25:22 amstan: The operation succeeded. 2010-09-09T19:25:34 bbiab 2010-09-09T19:26:48 amstan: not to much linking please, I only made 10 jailed users and it doens't work if there's more people in the rankings then I have jail_users :P 2010-09-09T19:27:10 just wanted to let you ask what credits I have to give or something 2010-09-09T19:27:14 prolly gonna change the frontpage 2010-09-09T19:31:52 !where tcp 2010-09-09T19:32:02 contestbot: where tcp 2010-09-09T19:32:02 JCS^: Error: No factoid matches that key. 2010-09-09T19:32:08 contestbot: where tcpserver 2010-09-09T19:32:08 JCS^: tcpserver could be http://www.benzedrine.cx/planetwars/. 2010-09-09T19:32:18 *** inverselimit has quit IRC 2010-09-09T19:33:11 JensTi: ask j3camero 2010-09-09T19:33:33 Hey guys, is there any way to get a windows version of tcp.c for the tcpserver ? I can't be bothered setting up linux just to do that :-) (it doesnt compile, missing several headers) 2010-09-09T19:34:42 Zaphus: someone posted a java version in the forum thread 2010-09-09T19:35:07 Can't we just use netcat? 2010-09-09T19:36:06 you could make it work over irc 2010-09-09T19:36:09 Zaphus: i've made a simple client with java, http://www.ai-contest.com/forum/viewtopic.php?f=18&t=424#p2616 2010-09-09T19:36:16 but preferably in another channel 2010-09-09T19:37:36 hm the tcpserver web interface seems to be a bit overloaded atm 2010-09-09T19:38:41 12 username 101 385 540 1 0% 257 0% 2010-09-09T19:38:57 we all know who that is 2010-09-09T19:39:42 great 2010-09-09T19:39:46 "username"? :P 2010-09-09T19:39:56 @ranking 2010-09-09T19:39:57 jmcarthur: Error: "ranking" is not a valid command. 2010-09-09T19:39:59 @rankings 2010-09-09T19:40:00 jmcarthur: Top 10 players: albert(565), a1k0n(470), phreeza(436), cheese_bot(434), zaphus(408), seigen(303), inverselimit(248), mistabell(81), galcon(9), Max(4) 2010-09-09T19:40:04 @rankings 20 2010-09-09T19:40:05 jmcarthur: Top 20 players: albert(565), a1k0n(470), phreeza(436), cheese_bot(434), zaphus(408), seigen(303), inverselimit(248), mistabell(81), galcon(9), Max(4), j3camero(-52), Mathnerd314(-211), jdonland(-244), bswolf(-422), rmotome(-492), jeff_cameron(-500), amstan(-517), dtkatch(-520) 2010-09-09T19:40:17 contestbot: alias add ranking ranikings 2010-09-09T19:40:17 amstan: The operation succeeded. 2010-09-09T19:40:26 ranikings? 2010-09-09T19:40:32 darn.. 2010-09-09T19:40:48 contestbot: alias remove ranking 2010-09-09T19:40:48 jmcarthur: The operation succeeded. 2010-09-09T19:40:49 contestbot: alias add ranking rankings 2010-09-09T19:40:50 amstan: The operation succeeded. 2010-09-09T19:40:56 !ranking 2010-09-09T19:41:00 @ranking 2010-09-09T19:41:01 amstan: Top 10 players: albert(565), a1k0n(470), phreeza(436), cheese_bot(434), zaphus(408), seigen(303), inverselimit(248), mistabell(81), galcon(9), Max(4) 2010-09-09T19:41:06 nice 2010-09-09T19:41:06 Shouldn't the old rank stay in the list until the first game of a new bot is run? 2010-09-09T19:41:12 !ranikings 2010-09-09T19:41:17 @alias add rank rankings 2010-09-09T19:41:17 jmcarthur: The operation succeeded. 2010-09-09T19:41:27 @alias add ranks rankings 2010-09-09T19:41:27 jmcarthur: The operation succeeded. 2010-09-09T19:42:30 Zannick: usernam (who also went through a few different names) was an epic complainer in the last one 2010-09-09T19:42:38 oh 2010-09-09T19:42:52 aka accoun 2010-09-09T19:42:55 aka dress 2010-09-09T19:43:39 I'm back for a few 2010-09-09T19:45:34 *** inverselimit has joined #aichallenge 2010-09-09T19:47:03 I think the wiki needs to be linked from somewhere on ai-contest.com 2010-09-09T19:47:26 bss03 - where is the wiki? 2010-09-09T19:47:37 Heck, maybe link to the whole Google Code project; it's got some very useful stuff. 2010-09-09T19:47:57 http://code.google.com/p/ai-contest/w/list -- wiki 2010-09-09T19:48:11 http://code.google.com/p/ai-contest/ -- Google Code project 2010-09-09T19:48:22 Ah 2010-09-09T19:48:30 anyone know which map this one is? http://www.benzedrine.cx/planetwars/canvas?game_id=1284075663|drewrobb0.1|UloPe-02 2010-09-09T19:48:55 ulope: The pretty one? 2010-09-09T19:49:33 yeah. But which one of the 100 starter pack maps is it? 2010-09-09T19:49:47 The canvas viz. doesn't work in my browser. I have run other Canvas-based stuff before. 2010-09-09T19:49:57 bss03: What browser> 2010-09-09T19:50:00 My error is: http://brains.s3.amazonaws.com/posts/2010/vis1.2/js/visualizer.js?v=1: TypeError: Attempt to use a non-function object or a value as a function. 2010-09-09T19:50:01 and version? 2010-09-09T19:50:09 Konqueror 4.4 2010-09-09T19:50:17 It also failed in IceWeasel 3.0 2010-09-09T19:50:38 ulope: Can you grep the maps for 9.531475 ? 2010-09-09T19:50:54 bss03: any line numbers? 2010-09-09T19:51:10 *** Racko has quit IRC 2010-09-09T19:51:26 Not that I've been so far. But, I don't usually troubleshoot JS bugs. 2010-09-09T19:51:45 If you know where I can look in FF/IW or Konq I'll gladly did it out for you. 2010-09-09T19:52:02 danielvf: good idea. but it doeasn seem to be there 2010-09-09T19:52:38 Bummer 2010-09-09T19:52:39 danielvf: Found it. Line 103. 2010-09-09T19:53:07 aren't those random maps? 2010-09-09T19:53:08 danielvf: ctx.fillText is not a function in IceWeasel 3.0.6 2010-09-09T19:53:20 Ah 2010-09-09T19:53:30 since there's a script to make 100 maps and add them to the db 2010-09-09T19:54:20 JensTi: this map has come up before. But i guess dhartmei generated them himself 2010-09-09T19:54:30 danielcf: I'll try moving to IW 3.5.11 2010-09-09T19:54:31 that's what I meant 2010-09-09T19:54:39 :) 2010-09-09T19:54:39 contestbot: what visualizer 2010-09-09T19:54:39 amstan: visualizer could be repo: http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer || demo: http://csclub.uwaterloo.ca/~amstan/aichallenge/canvas-visualizer/.. 2010-09-09T19:54:40 bss03: Is iceweasel 3.0 equivalent to firefox 3.0 ? 2010-09-09T19:54:41 bss03: Okay 2010-09-09T19:54:58 ulope: Same code, different U-A string. 2010-09-09T19:55:11 Yeah. well FF 3.0 is quite ancient 2010-09-09T19:55:19 i can confirm this, konqueror does not want to work 2010-09-09T19:55:30 you should try 4.0 2010-09-09T19:55:36 beta 2010-09-09T19:55:39 or at least 3.6 2010-09-09T19:55:52 *** Mathnerd314 has joined #aichallenge 2010-09-09T19:55:53 it's the future man 2010-09-09T19:56:13 meh.. firefox slowly betrayed me 2010-09-09T19:56:41 Nah if it weren't for firebug I wouldn't touch firefox anymore at all. Chromium is the new cool kid 2010-09-09T19:56:46 Mathnerd314: Hiya 2010-09-09T19:56:58 I perfer to use Debian Stable, fewer bugs that way. 2010-09-09T19:57:13 bss03: but fewer features also... 2010-09-09T19:57:19 I'm running some stuff out of testing now though, since the next release has been frozen. 2010-09-09T19:57:43 ulope: I would rather my computer work consistently. 2010-09-09T19:57:45 I just tried canvas visualizer on laptop, and its too big vertically imo 2010-09-09T19:57:54 ulope: Crashes irk me. 2010-09-09T19:58:32 ulope: Lack of features doesn't -- I think far too many "new features" are poorly though-out and don't work well. 2010-09-09T19:58:57 danielvf: hi. so, I was playing with the visualizer, and noticed that keyboard step back/forward seems to lag 2010-09-09T19:59:16 Lag? 2010-09-09T19:59:20 ulope: actually.. the element inspector in chromium is pretty up to par on the features 2010-09-09T19:59:52 bss03: well to each his own but I wouldn't want to be stuck in the glacial release speed of debian 2010-09-09T19:59:59 danielvf: yeah, like I hold down the arrow, and when I release it the visualization keeps moving 2010-09-09T20:00:33 Lol, let me try that 2010-09-09T20:00:41 ulope: It's not glacial. It's (on average) more often than Ubuntu LTS releases. 2010-09-09T20:01:10 amstan: Yeah I know but it still has enough rough edges to drive me nuts in no time (e.g. editing css rules in the elements inspector is a major pain) 2010-09-09T20:01:17 ulope: And the release is supported about as long as an enterprise distribution. 2010-09-09T20:01:27 bss03: Well I wouldn't use LTS for anything else than a server 2010-09-09T20:02:04 ulope: I value the same things in a dekstop I value in a server. Reliability. 2010-09-09T20:02:17 Mathnerd314: you are using the version here? http://www.benzedrine.cx/planetwars/canvas?game_id=1284076768|ademar|drewrobb0.1 2010-09-09T20:02:20 Mathnerd314: I tried that, instant response 2010-09-09T20:02:21 bss03: but then I'm only using linux on servers so I can't really talk. has been a while since i tried linux desktop 2010-09-09T20:02:25 Mathnerd314: and what browser> 2010-09-09T20:03:09 what is this other server that is running at Zeus ? can I trust if I upload code it won't be copied for someone elses bot ? 2010-09-09T20:03:39 danielvf: firefox 4.0b4, but I have a slow computer 2010-09-09T20:03:55 Ah. 2010-09-09T20:04:27 Oh man. Sorry for leaving the outstanding code reviews all day long, guys! Busy day at work. I am going to get on those right now and focus on them! 2010-09-09T20:04:39 yay 2010-09-09T20:04:41 one more coming 2010-09-09T20:04:43 j3camero: Sounds best 2010-09-09T20:04:47 Thanks for submitting all these changes and issue updates! I will trunk through them as fast as possible! 2010-09-09T20:04:50 j3camero: you're going to have a long night 2010-09-09T20:05:02 a1k0n: I know man. I will get er done though. 2010-09-09T20:05:10 Zaphus: it's only intended for our personal use, zeus is a workgroup of the ghent university, and we'd just like our own environment to play in 2010-09-09T20:05:22 I have access to all code uploaded to that server 2010-09-09T20:05:32 at least a lot of it is linus torvald style integration work instead of having to code everything himself 2010-09-09T20:05:35 a1k0n: it's the least I can do for all the people who were generous enough to spend time submitting changes, to merely get through the changes and merge them as appropriate. 2010-09-09T20:06:07 j3camero: Any hope for sumitting stuff in Haskell? I've been doing a lot of work on the Haskell starter package. 2010-09-09T20:06:12 I won't use any of it normally :P, I wanna make my own bot 2010-09-09T20:06:20 bss03: ghc 6.8.2 is up and working 2010-09-09T20:06:33 not the ideal version, but that's what we have 2010-09-09T20:06:35 bss03: the open secret is that haskell support is already turned on. Try submitting your package. Would you like to make an account? 2010-09-09T20:06:55 jmcarthur: Ah, oh, cool. I didn't relize that. I can work with 6.8.2, I bet. 2010-09-09T20:06:58 bss03: like i said earlier, i'm also pushing for arbitrary binaries :D 2010-09-09T20:07:09 j3camero: we need an official resolution on a corner case in the spec though 2010-09-09T20:07:31 *cough*method3*cough* 2010-09-09T20:07:37 a1k0n: okay, hit me. 2010-09-09T20:07:37 j3camero: I tried to make an account already, it said I had to wait until the contest actually opened. 2010-09-09T20:07:38 * jmcarthur sends subliminal messages 2010-09-09T20:07:41 (the "what happens when both players reach a neutral planet at the same time" question) 2010-09-09T20:07:43 Where in the source tree is the java game player? 2010-09-09T20:07:46 j3camero: http://ai-contest.com/forum/viewtopic.php?f=18&t=419&start=0 2010-09-09T20:07:49 bss03: I just opened account creation. Go ahead and create an account.\ 2010-09-09T20:08:00 j3camero: we are mostly in agreement on irc about the patch referred to in http://code.google.com/p/ai-contest/issues/detail?id=64 2010-09-09T20:08:02 j3camero, I never got my email! 2010-09-09T20:08:11 it may be controversial 2010-09-09T20:08:29 i think the one person who disagreed with it on irc was Zaphus (ping so he can speak up if he wishes) 2010-09-09T20:08:40 jmcarthur: That's the method where all the fleets fight at once, the biggest wins, ships remaining difference between top two? 2010-09-09T20:08:46 right 2010-09-09T20:08:49 j3camero: it is the third method ("players and neutral all fight at once") referred to in jmcarthur's post here: http://ai-contest.com/forum/viewtopic.php?f=18&t=419&start=0#p2419 2010-09-09T20:08:49 ships woot - registered 2010-09-09T20:09:11 are the neutral planets going to increase in ships when the contest starts? 2010-09-09T20:09:29 the biggest advantage method3 has right now is that it's implemented, tested, bugfixed, and tested 2010-09-09T20:09:30 jmcarther: That seems the best one, really easy to generalize to n players as well. 2010-09-09T20:09:46 j3camero: is account creation officially open or these are still test accounts? (coz I'm waiting on my uni to be added to list) 2010-09-09T20:09:59 a1k0n: okay, reading now... will make an executive decision based on collective advice in a few minutes. 2010-09-09T20:10:11 ratatata: you can keep those accounts after it's open 2010-09-09T20:10:15 j3camero: awesome, thanks 2010-09-09T20:10:22 ratatata: i can deal with univ stuff, post on the forums 2010-09-09T20:10:28 ratatata: talk to amstan about adding universities. Go ahead and create your account now and we may be able to update your school later. 2010-09-09T20:10:56 *** tapwater has quit IRC 2010-09-09T20:10:58 j3camero: oh yes, i got contestbot updated, it should of messaged you with some messages from ppl 2010-09-09T20:11:02 amstan: already did post on forums.. I believe it's not even on the last page anymore :) 2010-09-09T20:11:11 Although the 3rd method says no bais, it is biased in favor of attacking a turn later 2010-09-09T20:11:14 ratatata: in fact, i'll do those right now 2010-09-09T20:11:32 danielvf: all of them are biased for that 2010-09-09T20:11:42 Except 2 2010-09-09T20:12:06 amstan: great, thanks.. I guess I'll wait a little more so you don't have to edit my school later etc 2010-09-09T20:12:06 jmcarthur: actulay 2010-09-09T20:12:07 danielvf: wouldn't you always rather your opponent have to fight off neutral by himself? maybe i need to think about it first 2010-09-09T20:12:23 jmcarthur: you are right 2010-09-09T20:12:29 I think "no bias" means there's no different srategies for Player 2 than for Player 1. 2010-09-09T20:12:41 bss03: the bias is for or against neutral 2010-09-09T20:12:48 jmcarthur: It is however the lease biased against attacking now. 2010-09-09T20:13:10 danielvf: i agree with that, but that's just because it's the most biased against neutral 2010-09-09T20:13:16 which i actually point out in the post :P 2010-09-09T20:13:59 jmcarthur: how about we leave it undefined - if two fleets attack at the same time, the world ends 2010-09-09T20:14:08 yes, it must be avoided at all costs 2010-09-09T20:14:09 @slap Mathnerd314 2010-09-09T20:14:10 jmcarthur: Error: "slap" is not a valid command. 2010-09-09T20:14:14 Lol 2010-09-09T20:14:19 contestbot is worse than lambdabot 2010-09-09T20:14:20 jmcarthur: Error: "is" is not a valid command. 2010-09-09T20:14:23 that proves it 2010-09-09T20:14:28 !! 2010-09-09T20:14:30 jmcarthur: lol.. 2010-09-09T20:14:37 :P 2010-09-09T20:14:41 jmcarthur: what do you want slap to do? 2010-09-09T20:14:45 jmcarthur: lambdabot is gone? :-( 2010-09-09T20:14:58 *** Croccam has joined #aichallenge 2010-09-09T20:15:00 Mathnerd314: amstan wanted contestbot to have the @ syntax 2010-09-09T20:15:06 so i had to make lambdabot leave 2010-09-09T20:15:17 if two fleets arive at a neutral planet first (one fleet from each player) how is it decided whos get removed first? 2010-09-09T20:15:32 Cyndre: That's what we are discussing 2010-09-09T20:15:32 that is the question! 2010-09-09T20:15:33 amstan: it's supposed to pick a random mean action to perform against the target nick 2010-09-09T20:15:38 Cyndre: Good question! 2010-09-09T20:15:51 to red or to green, that is the question 2010-09-09T20:15:52 jmcarthur: make a plugin 2010-09-09T20:15:57 should timestamp the command 2010-09-09T20:16:00 not worth it 2010-09-09T20:16:03 Cyndre: I think we have 3 methods. One actually encourages you to have a slightly smaller fleet than your opponent. 2010-09-09T20:16:04 who initiated first is removed first 2010-09-09T20:16:20 ooh, that would be... awful 2010-09-09T20:16:24 yeah, cause they have a longer trip ahead of them and are tired 2010-09-09T20:16:30 Cyndre: that hurts 2010-09-09T20:16:31 or a main command queue we all submit to 2010-09-09T20:16:42 and its just dealt with in order 2010-09-09T20:16:50 I think using non-Integer travel times would solve things for all reasonable cases. 2010-09-09T20:16:57 Cyndre: that's not the point of a turn based game :P 2010-09-09T20:16:58 Naah 2010-09-09T20:16:59 bss03: which one encourages you to have a smaller fleet? 2010-09-09T20:17:03 bss03: no, the map is symmetric 2010-09-09T20:17:07 Okay, which of these three methods do people think is going to produce the richest game? Is there any method which will totally discourage conflict? Ideally, we would pick the method that encourages conflict in a 1v1 scenario. Which method is that? 2010-09-09T20:17:25 jmcarthur: The one where the larger fleet fights neutral first. 2010-09-09T20:17:27 JensTi: this one isnt really turn based - because we can issue more commands then 1 and at any time 2010-09-09T20:17:33 bss03: none of them do that 2010-09-09T20:17:40 i think it's a sufficiently rare thing except for the center planet that it doesn't matter a *whole* lot honestly, but it needs to be specified 2010-09-09T20:17:42 I have a C++ issue (something's wrong with my code, not the starter code), would Technical Issues be the right place to put it? 2010-09-09T20:17:48 The second method I read in the forum did. 2010-09-09T20:17:50 a1k0n: I'm with him 2010-09-09T20:17:57 a1k0n: I'm with you 2010-09-09T20:18:09 I don't think there is going to be a huge gameplay difference 2010-09-09T20:18:10 bss03: no, the second method is where *both* players fight neutral jointly 2010-09-09T20:18:12 a random number will encourage you to submit fleets that land at the same time on neutral planets 2010-09-09T20:18:20 bss03: neutral damages them both equally 2010-09-09T20:18:22 Which method did we say had a working implementation already? 2010-09-09T20:18:29 j3camero: that would be the third 2010-09-09T20:18:31 the third. 2010-09-09T20:18:31 jmcarthur: That was the *first* method I read. 2010-09-09T20:18:34 or have a 1 red, 1 blue, 1 red 2010-09-09T20:18:35 ? 2010-09-09T20:18:42 danielvf: We could just go with #3, since there is a patch for that. 2010-09-09T20:18:43 jmcarthur: The one with fractional losses (temporarily). 2010-09-09T20:18:47 bss03: isn't the first one where the players fight each other first? 2010-09-09T20:18:49 Method 3 is also the easiest to understand, and semingly the fairest. 2010-09-09T20:19:02 bss03: oh, i'm talking about the post where i state properties for them 2010-09-09T20:19:08 bss03: the ordering of that is method 1, 2, and 3 2010-09-09T20:19:20 link to the different methods? 2010-09-09T20:19:33 j3camero: I think all of them have implemetations floating around, none are too difficult to implement. 2010-09-09T20:19:44 Cyndre: http://ai-contest.com/forum/viewtopic.php?f=18&t=419&start=0#p2419 2010-09-09T20:19:45 jmcarthur: Link to your post? 2010-09-09T20:19:46 jmcarthur: I disagreed with method 3, then I thought about it, then I agreed with it :-) 2010-09-09T20:19:47 bss03: http://ai-contest.com/forum/viewtopic.php?f=18&t=419&start=0#p2419 2010-09-09T20:19:58 Zaphus: same here 2010-09-09T20:20:08 as i've said, i think method 3 is least palatable initially but ultimately fair 2010-09-09T20:20:26 Zaphus: :D 2010-09-09T20:20:40 i preferred method 2 at first, even as i wrote out method 3 2010-09-09T20:20:59 but then i changed my mind after writing out all the properties of them and having so much trouble with method 2 2010-09-09T20:21:08 what about where its just a foreach(fleet _attacking_planet) {subtract 1 from planet and fleet} 2010-09-09T20:21:08 i *still* don't have it under my thumb 2010-09-09T20:21:08 method 3 means if you send ships at a neutral planet, you are definitely going to make it easier to take over whatever else happens 2010-09-09T20:21:14 (Separate discussion, where is the source to the java game player) 2010-09-09T20:21:14 when I first read method 3, I was like, that's silly, it doesn't seem like a space battle would ever work like that. 2010-09-09T20:21:26 It seems like we're reaching consensus around method 3. Should we go with that? 2010-09-09T20:21:27 Cyndre: that would be method 3 2010-09-09T20:21:35 *** Croccam has quit IRC 2010-09-09T20:21:38 you could have other methods 2010-09-09T20:22:01 j3camero: Yes. I don't think it's going to be worth extensive testing to see what happens to gameplay 2010-09-09T20:22:01 danielvf: http://code.google.com/p/ai-contest 2010-09-09T20:22:03 j3camero: I think so, 3 may not be a true simulation of a space battle... but thats not what this is about. 2010-09-09T20:22:04 But, I support it now. It seems like it might increase the overall reduction in ship count, but that seems fair. 2010-09-09T20:22:05 Cyndre: method 3 simulates rounds of fighting where each triplet of P1, P2, and N cancel out, followed by rounds with pairs for the remaining two fleets 2010-09-09T20:22:11 danielvf: trunk/planet_wars/viz/ 2010-09-09T20:22:11 "War is Hell." 2010-09-09T20:22:24 JensTi: yeah there are others, but they are all more complicated, afaik 2010-09-09T20:22:52 a1k0n: I don't see playGame 2010-09-09T20:23:00 there isn't a PlayGame.java 2010-09-09T20:23:13 a1k0n: My bad 2010-09-09T20:23:13 it's a collection of other junk in there 2010-09-09T20:23:18 Yup, see it now 2010-09-09T20:23:25 a1k0n: don't blame me. It's not my code! 2010-09-09T20:23:41 Okay, method 3 it is. 2010-09-09T20:23:50 Cool 2010-09-09T20:24:13 it is Decided(tm) 2010-09-09T20:24:16 * jmcarthur codes furiously 2010-09-09T20:24:19 a1k0n: can you help me by closing all issues and patches that deal with methods other than method 3? I hear there's patches for all kinds of methods floating around. 2010-09-09T20:24:24 * bss03 congratulates jmcarthur for winning the Google A.I. Challenge Ambiguous Resolution of Neutral Conflicts Challenge. 2010-09-09T20:24:39 in that case, accept issue 77 2010-09-09T20:24:40 the GAICARNCC? 2010-09-09T20:24:40 woot 2010-09-09T20:24:41 * danielvf claps 2010-09-09T20:24:47 heh 2010-09-09T20:25:00 go jmcarthur 2010-09-09T20:25:02 j3camero: there's only one actual implementation on teh tracker (for both java and python) 2010-09-09T20:25:09 j3camero: I took all your source code and put it on a server for personal use with some friends (informatics group of university ghent) 2010-09-09T20:25:09 I was wondering if we need to have a special link or so? you can see it here: http://zeus.ugent.be/challenge/ 2010-09-09T20:25:45 Anyone mind if I make playgame.jar stream the playback string each turn, rather than all at once at the end? 2010-09-09T20:26:03 not only do i not mind, i want that 2010-09-09T20:26:10 danielvf: go ahead; though it will conflict with a patch i made which got merged with another and hasn't been merged to trunk :( 2010-09-09T20:26:11 danielvf: I think that would be preferred. 2010-09-09T20:26:19 i should have just made it do that instead 2010-09-09T20:26:26 a1k0n: I'll wait then. 2010-09-09T20:26:33 danielvf: http://code.google.com/p/ai-contest/issues/attachmentText?id=69&aid=-7945911163044006275&name=stringbuffer.patch&token=5a22689e276bfe5df90b48ac32e6ffe4 2010-09-09T20:26:36 danielvf: you could branch from a1k0n's branch 2010-09-09T20:26:39 a1k0n: Till your's is merged in. 2010-09-09T20:26:56 if we are fairly certain that we will want it merged in anyway... 2010-09-09T20:27:00 yeah acutally you could just commit to issue_69_etc 2010-09-09T20:27:16 j3camero: Any idea when updated started packs with new playgame.jar and showgame.jar will be out ? 2010-09-09T20:27:42 a1k0n: Pulling issue_69... 2010-09-09T20:27:43 issue64_69_72_73, what a stupid branch name 2010-09-09T20:27:51 lol 2010-09-09T20:27:54 ^ that's the correct one 2010-09-09T20:28:21 a1k0n: Okay 2010-09-09T20:28:40 Zaphus: I will try to update the codebase as much as possible tonight, and I will regenerate everythign and push it live tonight before bedtime. 2010-09-09T20:29:00 Okay, I am going to be out of this chat for a while, while I focus on clearing code reviews. Any last words? 2010-09-09T20:29:16 Go for the code reviews. 2010-09-09T20:29:19 Also, I need advice on which order to tackle these code reviews. Are there any of them that suggest conflicting changes? 2010-09-09T20:29:24 the python game engine patch i am submitting has not been tested by me FYI 2010-09-09T20:29:38 Cool a1k0n. 2010-09-09T20:29:42 j3camero: nothing conflicting conceptually but there might be code conflicts 2010-09-09T20:29:54 a1k0n: good to know. 2010-09-09T20:29:57 visualizer is totally independent 2010-09-09T20:30:10 actually it shares a lot of code with PlayGame.jar 2010-09-09T20:30:32 j3camero: OTOH all the java code i submitted is pretty well tested now. :) 2010-09-09T20:31:03 oh and you'll have to jump around in revisions to see the entirety of the actual code review request 2010-09-09T20:32:09 Mathnerd314: http://ai-contest.com/profile.php?user_id=3892 2010-09-09T20:32:52 ratatata: last chance for adding your school before i close phpmyadmin 2010-09-09T20:34:02 amstan: fine, other than link going to "invalid organization ID" 2010-09-09T20:34:16 Mathnerd314: yeah, that's not related to me 2010-09-09T20:34:29 amstan: Hrm, I'm not in school anymore. 2010-09-09T20:34:36 amstan: Should I use my Alma Matter? 2010-09-09T20:34:49 alma matter? 2010-09-09T20:35:43 The school I graduated from. 2010-09-09T20:35:48 a1k0n: did you know the engine is still doing the one byte reads from the clients? 2010-09-09T20:35:52 University of Arkansas, Fayetteville. :P 2010-09-09T20:36:03 bss03: you could just leave it as other then 2010-09-09T20:36:11 Yeah, probably should. 2010-09-09T20:36:14 danielvf: yep, http://code.google.com/p/ai-contest/source/branch?spec=issue84&branch=%2Fbranches%2Fissue78 2010-09-09T20:36:28 (see latest comment and commits) 2010-09-09T20:36:28 Ah. Okay 2010-09-09T20:36:56 i have three branches open now 2010-09-09T20:37:02 I've got to run - If anyone else wants to make the live game engine output that would be great 2010-09-09T20:37:56 (Where by live, I mean, once per turn) 2010-09-09T20:38:47 1 FPS hardly seems live. :) 2010-09-09T20:39:05 Lol, I'm back 2010-09-09T20:39:30 a1k0n: so which branch should I work off of? 2010-09-09T20:40:04 phreeza: When is you new bot going to be able to beat your old bot? :P 2010-09-09T20:40:56 Boo. No Control.Monad.State? Sacrilige. 2010-09-09T20:41:12 bss03: yuck! 2010-09-09T20:41:28 bss03: i remember in the last contest i had to include a lot of hackage libraries in with my submission 2010-09-09T20:41:34 PlanetWars.hs:30:7: 2010-09-09T20:41:36 Could not find module `Control.Monad.State': 2010-09-09T20:41:37 Use -v to see a list of the files searched for. 2010-09-09T20:41:38 Failure: output file MyBot was not created 2010-09-09T20:42:06 bss03: i'm working on a patch to handle binaries premptively. maybe its existence could hurry things along :) 2010-09-09T20:42:48 jmcarthur: Any easy way to get the source for a hackage module? Besides C+P from the Haddock Source output? 2010-09-09T20:43:30 bss03: you can run cabal unpack mtl 2010-09-09T20:43:52 danielvf: issue6492349283489 2010-09-09T20:44:09 danielvf: that's the one which conflicts with what you want to do, and what youw ant to do supersedes it anyway 2010-09-09T20:44:18 Ah 2010-09-09T20:44:22 That'll work. 2010-09-09T20:47:29 a1k0n: are you sure none of these code reviews conflict conceptually? There is a whole mess of issues that are superceding one another and such. 2010-09-09T20:47:51 a1k0n: you seem to have been looking at it for a while, I will follow your advice on what order I should tackle these in. 2010-09-09T20:48:56 j3camero: i think the most important is the 64_69_etc_etc branch 2010-09-09T20:49:07 this is most invasive to the engine etc 2010-09-09T20:49:28 danielvf is proposing an extension which supersedes what's in there now, but that's ok 2010-09-09T20:49:44 Someone link to an awesome looking game. I finally got IW 3.5 installed, I want to see if the Canvas viz. works. 2010-09-09T20:49:47 I'm going to wait until merge 2010-09-09T20:49:48 i should have made a separate branch for the output stuff. 2010-09-09T20:50:13 working on graphing for canvas 2010-09-09T20:50:28 j3camero: pw_numships is utterly trivial, no reason not to merge (the C++ code could use a lot more help than that actually) 2010-09-09T20:50:49 j3camero: canvas visualizer adds the current canvas visualizer without changing anything else on the site, so it'd be invisible to users 2010-09-09T20:51:02 j3camero: issue78 is a bunch of optimizations which i'd like to get into the next starter pack 2010-09-09T20:51:11 j3camero: gamelist_elo is totally untested but what we've wanted forever 2010-09-09T20:51:14 Okay I am starting with the canvas viz change then. 2010-09-09T20:52:44 j3camero: Good. I need to test that with real data on the real site. If there's a problem hopefully I can get in a new branch tonight. 2010-09-09T20:54:03 *** contestbot has joined #aichallenge 2010-09-09T20:54:04 *** ChanServ sets mode: +o contestbot 2010-09-09T20:55:17 you really need to get some of that stuff built and rolled out so that the testers can check it before the contest goes live. It's already Friday 10th where I am :-) 2010-09-09T20:56:47 j3camero: i assigned you to a number of one-line changes i didn't think needed branches 2010-09-09T20:57:09 * Zannick -> home 2010-09-09T20:58:43 *** Racko has joined #aichallenge 2010-09-09T20:58:51 Zannick: yep I saw a few. I already fixed on of them. I will get through them all tonight. 2010-09-09T21:01:49 j3camero: but tonight will be Friday for half the planet! 2010-09-09T21:01:57 ahaha 2010-09-09T21:02:03 yeah and all your times are in GMT 2010-09-09T21:02:19 Oh damn, so it's already launch day. 2010-09-09T21:02:31 lol, just let the man review code. :P 2010-09-09T21:04:21 danielvf I am just merging the new viz with trunk. Gonna push it live in a few minutes. Let's see if it works. That was a hasty code review, so I hope nothing breaks. In the future, I will try to make code reviews more timely and orderly. 2010-09-09T21:05:01 j3camero: NP. This one shouldn't break live site 2010-09-09T21:07:06 danielvf: yep, I agree. 2010-09-09T21:07:15 It's pretty low risk. 2010-09-09T21:07:29 And breaking the live site is not the end of the world either. I ahve done it so many times. 2010-09-09T21:07:47 if only there were a backup site that talks to the db 2010-09-09T21:11:38 j3camero: I'm running a copy of your site with a couple of friends for personal use to try our bots against each other 2010-09-09T21:11:41 There could be some day. 2010-09-09T21:11:42 is that ok? 2010-09-09T21:11:52 you can view it here http://zeus.ugent.be/challenge/ 2010-09-09T21:12:25 JensTi: I am so glad to hear that. I was hoping it would be easy enough to do that that other people would do it. That would really spur a lot of development too. You should bug me later to get added as a committer so you can contribute any changes you make. 2010-09-09T21:12:50 hehe, wel I spent some time reverse engineering your database table :P 2010-09-09T21:12:59 yeah a schema dump would be helpful 2010-09-09T21:13:08 show create table 2010-09-09T21:13:21 but I made a post about it on our wiki 2010-09-09T21:13:21 https://zeus.ugent.be/wiki/Aichallenge 2010-09-09T21:13:26 works now :) 2010-09-09T21:13:26 Yes, I will add a schema dump. 2010-09-09T21:13:27 also some of the static info that's stored in it like the languages 2010-09-09T21:13:40 don't think I'll be far of 2010-09-09T21:14:07 JensTi: that is so cool. That is more than okay. Maybe we could arrange something where you're mirroring the implementation to provide a backup web server, or maybe even load balance the traffic? 2010-09-09T21:14:38 i think he just wants to run a private competition 2010-09-09T21:14:53 well I'm just running it as a test now :P 2010-09-09T21:15:17 it would disqualify me from results probably 2010-09-09T21:15:17 danielvf: your changes are live. Can you find us a replay and let us see it? 2010-09-09T21:15:25 since I would have acces to other people's bots 2010-09-09T21:15:39 JensTi: that's true. You're right. 2010-09-09T21:15:58 http://ai-contest.com/visualizer_canvas.php?game_id=4415559 2010-09-09T21:16:01 JensTi: I am always looking around for ways to eliminate single points of failure, even if that means eliminating myself. 2010-09-09T21:16:05 seems to be missing css? 2010-09-09T21:16:12 add the trailing slash 2010-09-09T21:16:19 https://zeus.ugent.be/wiki/Aichallenge/ 2010-09-09T21:16:23 my bad 2010-09-09T21:16:24 woah what 2010-09-09T21:16:31 that replay is going crazy 2010-09-09T21:16:36 whoa yeah 2010-09-09T21:16:40 i think it's confused about which planet is which 2010-09-09T21:16:42 Press refresh? 2010-09-09T21:16:47 yeah refreshing fixed the css 2010-09-09T21:16:48 nem 2010-09-09T21:16:50 Its running on a virtual machine on a client in our basemant that's getting proxied 2010-09-09T21:16:51 Yeah, something is doofed 2010-09-09T21:16:57 yeah! 2010-09-09T21:17:10 that's really cool looking at least 2010-09-09T21:17:24 i bet the turns remaining and total turns on each fleet is reversed 2010-09-09T21:17:25 Sometimes ships go very slowly too. 2010-09-09T21:17:34 or something like that 2010-09-09T21:17:36 Hmmm 2010-09-09T21:17:38 Maybe 2010-09-09T21:17:43 something like the turn count is wrong or something? 2010-09-09T21:18:13 That would explain the speeding up 2010-09-09T21:18:19 guessing dhartmei reverseengineered the output format wrong and the vizualizer used his format 2010-09-09T21:18:20 yeah, what's going on? http://ai-contest.com/visualizer_canvas.php?game_id=4415957 2010-09-09T21:18:33 *** Mathnerd314 has quit IRC (Ping timeout: 258 seconds) 2010-09-09T21:18:47 Yep, something is not quite right. But overall it shows lots of promise. 2010-09-09T21:18:53 hmm those visuals don't even work here 2010-09-09T21:19:08 I used the java version to work off of. 2010-09-09T21:19:13 danielvf: maybe poke at it a bit, I am going to context switch to the next code review to unblock other people atm. 2010-09-09T21:19:22 Yup. right thing to do 2010-09-09T21:19:34 it also isn't giving player names. is that intended? 2010-09-09T21:19:47 jmcarthur: it does if i refresh 2010-09-09T21:19:47 perhaps JensTi can help us with testing changes 2010-09-09T21:19:56 danielvf: you are on the right track. 2010-09-09T21:19:59 a1k0n: not for me.. 2010-09-09T21:20:00 er duh, 'Player A' 2010-09-09T21:20:04 yeah 2010-09-09T21:20:08 danielvf: maybe work with JensTi 2010-09-09T21:20:17 well, I'm off on holiday for 2 weeks starting this sunday :P 2010-09-09T21:20:25 oh ha 2010-09-09T21:20:28 lol 2010-09-09T21:20:33 it needs to lookup the winner and loser ids 2010-09-09T21:21:07 er nm, they're right there 2010-09-09T21:21:14 nplayer_one=a1k0n\\nplayer_two=cheese_bot 2010-09-09T21:21:29 danielvf: for further changes, start a new branch. 2010-09-09T21:21:37 j3camero: Okay 2010-09-09T21:21:51 *** phreeza has joined #aichallenge 2010-09-09T21:21:57 danielvf: I am going to close the current branch, since it did actually live up to its intended purpose. The new issues are separate. 2010-09-09T21:22:04 yesssssssssssssss 2010-09-09T21:22:06 but some of my fellow zeus member will gladly help you out i think, our chairman helped create the canvas visualizer ;) 2010-09-09T21:22:08 my bot is #1 on the official site 2010-09-09T21:22:13 ahh 2010-09-09T21:22:17 you just beat me for it 2010-09-09T21:22:26 @rankings 2010-09-09T21:22:27 amstan: Top 10 players: a1k0n(668), albert(610), zaphus(514), cheese_bot(482), seigen(407), inverselimit(331), phreeza(267), mistabell(215), gvsmirnov(206), UloPe(115) 2010-09-09T21:22:29 oh wait, wrong list 2010-09-09T21:22:31 a1k0n: it is! 2010-09-09T21:22:49 oh wow dmj toppled me from benzedrine.cx 2010-09-09T21:23:51 a1k0n: but you would be beating him if it was using the modified ranking formula at least :) 2010-09-09T21:23:59 for now 2010-09-09T21:24:01 i just ran the numbers for that :) 2010-09-09T21:24:04 lol 2010-09-09T21:38:47 *** contestbot has joined #aichallenge 2010-09-09T21:38:48 think of it as quantum interference 2010-09-09T21:38:48 *** ChanServ sets mode: +o contestbot 2010-09-09T21:39:14 no, better, the uncertainty principle 2010-09-09T21:39:20 j3camero: which website? 2010-09-09T21:39:33 JensTi: was that a response to my question? hehe 2010-09-09T21:39:38 uhu 2010-09-09T21:39:45 :D 2010-09-09T21:40:05 j3camero: the official one? 2010-09-09T21:40:17 phreeza: yeah. It's open source. Would you like committer access? 2010-09-09T21:41:06 j3camero: I submitted 3 small typo's as zeuswpi, since that happened to be the account I was logged in with 2010-09-09T21:41:08 j3camero: If it can wait a few hours sure, but i'm about tho go to bed 2010-09-09T21:41:17 j3camero: its 3:30 am here 2010-09-09T21:41:25 I was wondering, how much jail_users do you have? 2010-09-09T21:41:46 phreeza: no problem. Bug me about it tomorrow. I will remember you. We are moving as fast as we can, but we need your help if we're going to move faster! 2010-09-09T21:41:48 JensTi: i think 10 2010-09-09T21:42:07 JensTi: we have 10 now, for no real reason. We could have 250 if we wanted to. 2010-09-09T21:42:15 I had two in the beginning and noticed it broke when a 3rd person entered 2010-09-09T21:42:35 and worked again after I made an extra jail_user 2010-09-09T21:42:58 JensTi: not sure why that would happen. My workaround it to have a lot of jail_users and periodically run planet_wars/backend/release_all_jail_users.py 2010-09-09T21:42:59 j3camero: ok cool. Its good pointing that out, the "Google" in the name makes it sound like it would be more centraly organuzed i guess. 2010-09-09T21:43:29 phreeza: not at all. It's just a bunch of hobos who work for no money. I am lying on my couch right now doing code reviews. 2010-09-09T21:43:55 Okay, I am going AFK for 20 minutes to eat something. I will be back and I will clear the rest of the code reviews, I promise! 2010-09-09T21:44:01 j3camero: heheh cool, but how is it sponsored by google then? 2010-09-09T21:44:04 Laters 2010-09-09T21:44:38 phreeza: some of us are former/current google employees, campus reps, and they give us a tiny bit of money to pay for a few servers. 2010-09-09T21:45:31 *** amstan__ has joined #aichallenge 2010-09-09T21:45:31 *** ChanServ sets mode: +o amstan__ 2010-09-09T21:45:39 sigh.. stupid internets 2010-09-09T21:45:56 j3camero: ah i see. one more thing: whom do i need to bug to modify my profile? 2010-09-09T21:46:09 phreeza: me 2010-09-09T21:46:15 phreeza: i need your userid first 2010-09-09T21:46:31 amstan__: 3891 2010-09-09T21:46:48 i'd like my country to be Germany 2010-09-09T21:47:28 phreeza: can you get me the id for that? 2010-09-09T21:47:55 64 2010-09-09T21:48:23 phreeza: k 2010-09-09T21:48:27 done 2010-09-09T21:48:35 can I also add an about? 2010-09-09T21:48:58 ok 2010-09-09T21:49:05 anything else/ 2010-09-09T21:49:07 something like "I'm a physics student from Aachen, Germany. My blog is at http://phonons.wordpress.com/" 2010-09-09T21:49:11 thats all 2010-09-09T21:49:22 *** amstan has quit IRC (Ping timeout: 272 seconds) 2010-09-09T21:49:26 done 2010-09-09T21:49:28 *** amstan__ is now known as amstan 2010-09-09T21:49:40 j3camero: another question, about the time parameter 2010-09-09T21:49:53 doesn't seem to be seconds or minutes? 2010-09-09T21:50:10 amstan: i think you changed my organization, not my country :D 2010-09-09T21:50:14 when starting the tournament manager and compiler_deamon 2010-09-09T21:50:14 it says maryland now 2010-09-09T21:50:41 phreeza: sorry, by habit 2010-09-09T21:50:52 phreeza: i think it's right now 2010-09-09T21:51:19 yea org is right but country is still european union 2010-09-09T21:51:58 Planet-Wars-Canvas-Visualizer: Daniel Von Fange master * r723fc8b / (css/style.css index.php js/visualizer.js): Adding a graph for fleet totals. - http://bit.ly/dbQaNS 2010-09-09T21:52:43 JensTi: time parameter is milliseconds 2010-09-09T21:52:51 1000 = 1 second 2010-09-09T21:53:15 phreeza: this time, i promise! lol 2010-09-09T21:53:34 amstan: nice, thanks! 2010-09-09T21:53:40 ok off to bed 2010-09-09T21:53:59 to dream of analytical solutions to this mess ;) 2010-09-09T21:54:25 Working on graphing 2010-09-09T21:54:26 http://brains.s3.amazonaws.com/posts/2010/vis1.3/index.html 2010-09-09T21:55:02 is the java applet thing getting replaced? 2010-09-09T21:55:55 PurplePanda: For people using Firefox, Safari, and Chrome. 2010-09-09T21:56:21 yeah thats me :D 2010-09-09T21:57:18 For those that are interested, I've been reliably informed that GalCon resolves conflicts by throwing the two sides at the planet first, then duking it out with the remaining ships. Phil could give more info 2010-09-09T21:58:26 Zannick: this is about the parameters used to start tournament manager ? 2010-09-09T21:58:28 danielvf: nice! looking forward to more of that 2010-09-09T21:58:46 surprisingly linear, i thought it would look more exp 2010-09-09T21:58:54 it looks more like 5-10sec for 1 value to me 2010-09-09T21:59:08 *** seigen_ has joined #aichallenge 2010-09-09T21:59:09 JensTi: oh 2010-09-09T21:59:12 Eh ? 2010-09-09T21:59:33 JensTi: yeah, the tournament manager appears to take seconds 2010-09-09T21:59:58 *** jerkyface03 has joined #aichallenge 2010-09-09T22:00:05 Hi 2010-09-09T22:00:13 Anyone around? 2010-09-09T22:00:15 danielvf: I like the graphing. any chance of a vertical line moving across the graph showing where the playback is currently up to ? 2010-09-09T22:00:20 Is tomorrow the deadline for signing up? 2010-09-09T22:00:27 phreeza: all exponentials look lineair in the beginning ;) 2010-09-09T22:00:28 Zaphus: the next feature 2010-09-09T22:00:46 Zaphus: but I'm going to be working on the live site first. 2010-09-09T22:00:47 jerkyface03: tomorrow is the start of signing up, you'll be able to sign up for the next couple of months 2010-09-09T22:01:10 danielvf: live site - yay, it needs some lovin' 2010-09-09T22:01:31 JensTi: not really, they are actually self-similar 2010-09-09T22:01:32 I'm not a part of any organization listed. Is it possible for me to team up with a friend or do I have to solo it? 2010-09-09T22:01:45 JensTi: just a question of scaling 2010-09-09T22:03:03 Also, if tomorrow is the start of signing up, why is the 'Current Rankings' section of the site active? 2010-09-09T22:03:14 sign ups open tomorrow im excited :) 2010-09-09T22:03:35 jerkyface03: Testing 2010-09-09T22:04:36 danielvf: did you figure out the vis problem on the official server? 2010-09-09T22:04:42 Yup 2010-09-09T22:04:49 Silliest thing. 2010-09-09T22:04:49 coo 2010-09-09T22:05:02 seconds ago, as a mater of fact 2010-09-09T22:05:06 daneilvf: You work on the project? Can you tell us how many people have signed up already? 2010-09-09T22:05:12 i gtg, bbl 2010-09-09T22:05:18 laters 2010-09-09T22:05:33 jerkyface03: It's only people who have gotten into the testing 2010-09-09T22:05:35 Right right... 2010-09-09T22:05:46 ademar: i don't know if you're in here, but i'm really tired of playing you on the tcpserver :( 2010-09-09T22:07:00 *** jerkyface03 has quit IRC (Quit: Page closed) 2010-09-09T22:08:50 *** Mathnerd314 has joined #aichallenge 2010-09-09T22:09:23 so i didn't do the last one... how quickly does the arms race progress once they open it up? 2010-09-09T22:09:33 Hey Guys, did the offical server get updated today ? my bot seems to be getting a new game every couple of minutes, instead of every 30+ minutes like it was previously (not complaining!) 2010-09-09T22:10:04 they may have added more instances? 2010-09-09T22:10:27 They certainly fixed something 2010-09-09T22:11:04 isn't it just because theres more people on it? 2010-09-09T22:11:28 no, other way around - more people equals less games for your bot - they take physical time 2010-09-09T22:11:46 nope 2010-09-09T22:11:53 it's not working flat out 2010-09-09T22:11:55 it 2010-09-09T22:12:12 it's just doing a battle once in a while 2010-09-09T22:12:18 but I'm seeing multiple simultaneous games - 2 games started 8 seconds apart - and the games will have run longer than 8 seconds, so more CPUs 2010-09-09T22:12:36 my testgames take like 2-3seconds 2010-09-09T22:13:12 Someone want to research the best way to detect if a browser supports canvas well? 2010-09-09T22:14:02 I'm thinking more CPUs 2010-09-09T22:14:06 my testgames take a while... 2010-09-09T22:14:13 contestbot: rankings 2010-09-09T22:14:14 seigen_: Top 10 players: a1k0n(657), albert(612), seigen(609), zaphus(451), cheese_bot(396), inverselimit(331), gvsmirnov(281), mistabell(246), phreeza(221), UloPe(136) 2010-09-09T22:14:18 danielvf: IIRC you just test that it has a getContext method 2010-09-09T22:14:22 woo! 2010-09-09T22:14:22 *** JCS^ has quit IRC (Ping timeout: 255 seconds) 2010-09-09T22:14:29 Mathnerd314: thanks 2010-09-09T22:16:22 danielvf: is the canvas visualizer live somewhere? 2010-09-09T22:16:42 *** rwa has joined #aichallenge 2010-09-09T22:16:42 On the tcp server 2010-09-09T22:17:00 http://www.benzedrine.cx/planetwars/canvas?game_id=1284075663%7Cdrewrobb0.1%7CUloPe-02 2010-09-09T22:17:04 for example 2010-09-09T22:17:23 JensTi: Really, 2-3 seconds for a whole match ? wish I could run it that fast on my machine, mine often take minutes to complete (150+ turns) 2010-09-09T22:17:49 well, I'm wondering 2010-09-09T22:18:00 I'm also running tournament manager 2010-09-09T22:18:14 and it starts a game cpu usage of 100% for 3 seconds 2010-09-09T22:18:20 and then it seems to do nothing for 10mins 2010-09-09T22:19:35 danielvf: love it on the tcp server! i was having problems with the applet one on linux 2010-09-09T22:19:56 *nods 2010-09-09T22:20:07 it's also on the official server, using a different link, but it's not working correctly 2010-09-09T22:20:08 http://ai-contest.com/visualizer_canvas.php?game_id=4415957 2010-09-09T22:20:15 You can run the canvas one localy - check the readme. 2010-09-09T22:20:29 JensTi: that's broken at the moment. Working on fix 2010-09-09T22:23:05 hmm, i seem to be over-defending. 2010-09-09T22:23:16 *** tapwater has joined #aichallenge 2010-09-09T22:23:19 danielvf: thanks for the link! 2010-09-09T22:23:34 Does anyone have updated playgame.jar and showgame.jar files with the latest patches in them - I can't build Java right now but want to test those locally 2010-09-09T22:24:24 a1k0n does, but he's out 2010-09-09T22:24:34 Zaphus: that's next on j3camero 's list though 2010-09-09T22:25:17 danielvf: ok, guess I have to wait... it's just that it's lunchtime here (Friday) and I wanted to leave the machine testing for a while :-) 2010-09-09T22:25:24 Yup 2010-09-09T22:25:30 Zaphus: the starters packages on the site seem updated last 2hours 2010-09-09T22:26:04 JensTi: Which ones, the C++ is two days old 2010-09-09T22:26:25 JensTi: and thats the broken one too :-) 2010-09-09T22:26:34 Zaphus: I just updated to revision 239 and got the cpp_starter package with it 2010-09-09T22:26:44 I updated 2hours ago 2010-09-09T22:28:03 Oh, you mean the Git site? not the website ? 2010-09-09T22:28:07 svn 2010-09-09T22:28:20 Okay back. Next code review! 2010-09-09T22:28:21 ah, I was looking at the website 2010-09-09T22:28:55 no website ass well 2010-09-09T22:28:56 U www/starter_packages/cpp_starter_package.zip 2010-09-09T22:28:58 contestbot: topic add http://contestbot.hypertriangle.com/ 2010-09-09T22:28:58 *** contestbot changes topic to "Official Google AI Challenge: http://ai-contest.com/ || Contest will start Friday September 10th. || Developers wanted, contact j3camero. || http://contestbot.hypertriangle.com/" 2010-09-09T22:29:09 maybe you need to clear your cache? 2010-09-09T22:29:33 JensTi: That must have been it, persistance pays off - thanks 2010-09-09T22:29:42 cpp_starter_package.zip1.0 MBr238Today (50 minutes ago)cameron.jp 2010-09-09T22:29:44 time for testing and pizza ;-) 2010-09-09T22:29:56 amstan: get that exhibition match feature going yet? :) 2010-09-09T22:30:15 tapwater: well.. what do you mean by that? 2010-09-09T22:30:34 amstan: for contest bot 2010-09-09T22:30:45 tapwater: define exhibition match 2010-09-09T22:31:14 @contestbot: playmatch 2010-09-09T22:31:15 tapwater: Error: "contestbot:" is not a valid command. 2010-09-09T22:31:19 returns link 2010-09-09T22:31:23 to replay. 2010-09-09T22:31:25 :D 2010-09-09T22:31:37 that would be neat 2010-09-09T22:31:47 tapwater: something needs to be done server side, that returns gameid if 2 players are given 2010-09-09T22:31:57 return the lastest game between the two opponents, if any 2010-09-09T22:32:14 tapwater: since contestbot has no connection to the database directly 2010-09-09T22:32:26 or it could do some heavy html scraping 2010-09-09T22:32:27 ah, ok 2010-09-09T22:32:29 which might suck 2010-09-09T22:32:32 just sayin, would be a nice feature 2010-09-09T22:32:49 i could look into that though 2010-09-09T22:32:53 thinking about it 2010-09-09T22:33:02 jmcarthur: a json interface would be nice 2010-09-09T22:33:05 When viewing a game on the website is there any way to see what map is being played? 2010-09-09T22:33:10 jmcarthur: none of this stuff: http://github.com/amstan/contestbot/blob/master/rankings.py 2010-09-09T22:33:42 amstan: yuck 2010-09-09T22:33:54 *** JCS^ has joined #aichallenge 2010-09-09T22:33:55 mightybyte: you can surf to game_info.php?game_id= the id of playing match 2010-09-09T22:34:00 that will show you info 2010-09-09T22:34:04 amstan: of course, with something like this it could just be a game id without json around it at all 2010-09-09T22:34:19 JensTi: Ahh, cool. 2010-09-09T22:34:26 jmcarthur: json would be nice though 2010-09-09T22:34:28 yeah 2010-09-09T22:34:40 mightybyte: f.ex. http://ai-contest.com/game_info.php?game_id=4415957 2010-09-09T22:34:50 map id = 684 2010-09-09T22:34:54 @where repo 2010-09-09T22:34:54 amstan: repo could be http://code.google.com/p/ai-contest/. 2010-09-09T22:34:54 ok, the playgame.jar in the new c++ starter kit still seems to have the same bug where a fleet is lost (do a Ragebot vs Ragebot on map 44 to see it) 2010-09-09T22:34:56 if that's anything to you :P 2010-09-09T22:35:50 JensTi: Yeah, but that map id doesn't help me. It either needs to be the contents of the raw game file, or the filename of one of the maps in the starter packs. 2010-09-09T22:35:57 Zaphus: is that supposed to be fixed yet? 2010-09-09T22:36:43 *** ratatata has quit IRC (Remote host closed the connection) 2010-09-09T22:36:58 *** ratatata has joined #aichallenge 2010-09-09T22:36:59 yeah, the id's should map somehow thought, if you can identify one map maybe you can find the mapping 2010-09-09T22:37:03 j3camero: I'd have assumed so, it's a pretty huge bug - but there's no info in those starter packs to say what version or fixes are implemented so no way to know (pulling from the website) 2010-09-09T22:37:22 But the ids might not even be maps that are in the starter pack. 2010-09-09T22:38:01 uhu 2010-09-09T22:40:10 a1k0n: I switched the live website to the branch gamelist_elo. It's broken the profiles, but I think it's an easy fix. I will try to commit a fix to your branch. 2010-09-09T22:40:11 Blah, I hate to bring in the entire mtl just for Control.Monad.State. 2010-09-09T22:40:39 But then again, I hate to re-implement Control.Monad.State in my bot. 2010-09-09T22:40:50 someone just break the profile viewer on the site? 2010-09-09T22:40:54 * bss03 wonders if there's a Control.Monad.State equivalent in base. 2010-09-09T22:40:58 * seigen_ reads. nevermind! 2010-09-09T22:41:00 bss03: last year i just brought it all in 2010-09-09T22:41:06 bss03: no there is nothing like tha tbuilt in 2010-09-09T22:41:14 *that built 2010-09-09T22:42:09 j3camero: Visualizer should be fixed 2010-09-09T22:42:38 gtg 2010-09-09T22:45:20 danielvf: where is the fix? In a new branch? Can you point me to it? 2010-09-09T22:45:35 Made code review 2010-09-09T22:45:53 http://code.google.com/p/ai-contest/source/browse/#svn/branches/92-canvas_visualizer_bugfix 2010-09-09T22:47:00 Awesome, thanks. That will be next I suppose. 2010-09-09T22:47:26 Zaphus: they have fixed something 2010-09-09T22:47:31 server was sleeping most of the time 2010-09-09T22:47:33 danielvf: looks like it works for me? 2010-09-09T22:47:47 jmcarthur: Dragging in MTL it is then. 2010-09-09T22:47:50 now it's running on full capacity :) 2010-09-09T22:48:14 JensTi: did they? It looks like the profile page is still broken. 2010-09-09T22:48:36 jmcarthur: I feel confident I could write Control.Monad.State if needed so there's no point in writing it. If that makes sense. 2010-09-09T22:49:07 bss03: hopefully j3camero approves binary submissions. then we wouldn't have to worry about all this 2010-09-09T22:49:32 bss03: i'm currently just writing as though i can submit a binary, hoping that ends up being the case 2010-09-09T22:51:10 how do i access the data the visualizer uses? 2010-09-09T22:51:42 oh, ok: http://ai-contest.com/game_info.php?game_id=4415957 2010-09-09T22:51:43 amstan: (04:29:31 AM) JensTi: mightybyte: f.ex. http://ai-contest.com/game_info.php?game_id=4415957 2010-09-09T22:52:08 amstan: from the games table, each row has a playback column with all that in it 2010-09-09T22:54:46 JensTi: how hard was it to set up? i'm wanting to contribute some patches for the web end of things, but i have no way to test 2010-09-09T22:55:17 jmcarthur: it was hard to figure out all the database tables and field names 2010-09-09T22:55:24 just running and fixing bugs 2010-09-09T22:55:28 bug Ive got this for you 2010-09-09T22:55:28 https://zeus.ugent.be/wiki/Aichallenge 2010-09-09T22:55:48 how come this is down? 2010-09-09T22:55:49 http://ai-contest.com/visualizer_canvas.php?game_id=4415957 2010-09-09T22:56:51 JensTi: eek. a lot of work. i don't even have a web server or mysql installed. not sure i want to go through the trouble 2010-09-09T22:57:08 i think i will just try writing blind... 2010-09-09T22:57:39 jmcarthur: I started of with a clean virtual machine, that's all you'll need to do 2010-09-09T22:57:56 took me about 10hours 2010-09-09T22:58:02 but you've got the guide :P 2010-09-09T22:58:03 ugh 2010-09-09T22:58:31 well, thanks for your help. if i do decide to do it eventually then i will use your guide, for sure 2010-09-09T22:58:36 I should just have asked for a db chema 2010-09-09T22:58:37 shema 2010-09-09T22:59:02 may I ask where is the 'guide'? 2010-09-09T22:59:06 scheme 2010-09-09T22:59:21 https://zeus.ugent.be/wiki/Aichallenge 2010-09-09T23:00:25 *** inverselimit has quit IRC (Quit: Leaving) 2010-09-09T23:01:08 amstan: hey could you by chance email me a copy of ratings.txt from the server? i'm gonna play around with process_ratings.py 2010-09-09T23:01:23 jmcarthur: ratings.txt? huh? 2010-09-09T23:01:25 amstan: Jake.McArthur@gmail.com if you can do it :) 2010-09-09T23:01:32 amstan: it's the output from bayeselo 2010-09-09T23:02:13 http://ai-contest.com/visualizer.php?game_id=4417282 - any way to find out what happened there ? classed as a draw, but I find it hard to believe both bots failed on the first turn! 2010-09-09T23:02:19 jmcarthur: it looks like this http://pastebin.com/uHbitV2k 2010-09-09T23:02:57 JensTi: well, i know what it looks like, but i'm wanting the official one so i can match up what i'm doing with bots i'm more familiar with 2010-09-09T23:03:01 jmcarthur: http://pastebin.com/4MvZSfJw 2010-09-09T23:03:03 to make sure my results are making intuitive sense 2010-09-09T23:03:11 amstan: thanks! 2010-09-09T23:04:48 amstan: how did site repair go? 2010-09-09T23:04:56 or is it still broken in IE? 2010-09-09T23:05:07 pgpaskar_: working on the bot now 2010-09-09T23:05:31 @amstan: does this look like a bug http://ai-contest.com/visualizer.php?game_id=4417282 both bots failing on first turn or something, and mine has never failed a game 2010-09-09T23:05:32 Zaphus: Error: "amstan:" is not a valid command. 2010-09-09T23:05:44 amstan: does this look like a bug http://ai-contest.com/visualizer.php?game_id=4417282 both bots failing on first turn or something, and mine has never failed a game 2010-09-09T23:06:00 Zaphus: i don't know, sorry 2010-09-09T23:06:32 there's no feedback from the server as to why a game ends - I think thats going to be a problem if games like that happen 2010-09-09T23:06:42 Zaphus: you can pull the game string 2010-09-09T23:06:50 better yet 2010-09-09T23:06:53 ill do it 2010-09-09T23:08:21 really??? lol: it doesn't have winner name in here: http://ai-contest.com/game_info.php?game_id=4415957 2010-09-09T23:08:51 pgpaskar_: thanks, I think we need to indicate to the end user if a bot times out or does an illegal move (not to the bot, to the human looking at the website) 2010-09-09T23:10:01 Oh pgpaskar_ it's been a while. 2010-09-09T23:10:06 Nice to see you. 2010-09-09T23:10:31 Yeah 2010-09-09T23:10:34 Just got internet.... 2010-09-09T23:10:35 :| 2010-09-09T23:10:49 == Zaphus 2010-09-09T23:11:08 that would require adding a column to the schema for the game table 2010-09-09T23:11:15 Zaphus: the game crashed 2010-09-09T23:11:18 there are no recorded moves 2010-09-09T23:11:28 well there are 2010-09-09T23:11:32 but that is it 2010-09-09T23:11:41 http://ai-contest.com/game_info.php?game_id=4417282 2010-09-09T23:11:42 or adding to the end of the playback string something the visualizer ignores 2010-09-09T23:11:42 check it 2010-09-09T23:12:14 it does not finish the first turn so this leads me to beleive that one of the bots made an illegal move 2010-09-09T23:12:19 im not sure if there is a waytoverify that though 2010-09-09T23:12:20 Zannick: agreed, It's really important to give the end user the info they need, otherwise the forums will light up with questions that cannot be answered, and it promotes ill feeling and distrust 2010-09-09T23:12:35 pgpaskar_: likely both of them 2010-09-09T23:12:40 since neither is present 2010-09-09T23:13:03 pgpaskar_: the odds of that are very low (both doing illegal move on first turn) - wish we could somehow replicate these matches so we can see what went wrong 2010-09-09T23:13:48 the playback needs to have that info in there, I have no way of knowing what happened in that match, so I'm going to blame the game engine - as would my opponent 2010-09-09T23:14:21 See the issue here is that if any of the bots use randomness there is no way to replay the match... 2010-09-09T23:14:33 But it might be benficial to record any errors that occur 2010-09-09T23:14:40 pgpaskar_: no, the issue is that there is no record of what happened 2010-09-09T23:14:48 I'm not sure if j3camero has a method of tracking these issues 2010-09-09T23:15:12 I have not had a hand in the backend development. I also need to work on that front-end some more now that i have internet and free time once lectures begin! 2010-09-09T23:15:19 oh how I have missed you Waterloo 2010-09-09T23:15:34 pgpaskar_: you could make sure you can replicate matches, if you do use randomness, use a static seed 2010-09-09T23:15:42 pgpaskar_: then you can replicate stuff locally 2010-09-09T23:15:43 j3camero: we've got a match where, apparently, it ended on the very first turn in a draw, between bots that have not failed before http://ai-contest.com/visualizer.php?game_id=4417282 we need some way to debug that and to give feedback to teh user as to why it stopped 2010-09-09T23:15:47 but that would not replicate THESE matches unfortunately 2010-09-09T23:15:50 pgpaskar_: problem is that there's no way to replicate CPU time 2010-09-09T23:16:03 You need the exact conditions which is too much work to replicate 2010-09-09T23:16:15 better to try to plan for future incidents than dwell on the ones which have already occured 2010-09-09T23:16:30 well.. no.. he could try replicating that match right now 2010-09-09T23:16:45 pgpaskar_: Just try it again, it cant hurt. Mine uses no randomness 2010-09-09T23:17:39 i guess that could be tried..... in the mean time i need to shower while lacking cold water 2010-09-09T23:17:43 what fun this new house is ~ . ~ 2010-09-09T23:18:02 okay, i'm looking into the complaint that ranks are kind of strange using bayeselo before the elo score settles down a bit. see this issue for a little background on what i'm looking into: http://code.google.com/p/ai-contest/issues/detail?id=89 the database appears to currently have fields for "rank" (ordering) and for "score" (estimated elo score, currently). there are a few ways i could approach 2010-09-09T23:18:04 this. i could (a) use the modified scoring system proposed in the issue to determine the rank but leave the score in the database the same, (b) use the modified score in place of the actual elo score, or (c) have a new column added to the table to store the modified score and have both that value and the elo score to show in various places 2010-09-09T23:18:07 i like (b) the least 2010-09-09T23:18:56 danielvf: heads up. I am going to svn switch the live website to your latest branch so we can have a look at the new visualizer before merging to trunk. 2010-09-09T23:19:05 this could also be combined with http://code.google.com/p/ai-contest/issues/detail?id=88 (show confidence intervals of elo scores on profile pages), especially if (c) is chosen and the database is modified anyway 2010-09-09T23:19:55 personally i think (a) would be a nice balance between effort and payoff, although it could confusingly result in elo scores not being in order with rank 2010-09-09T23:20:14 which would probably require an FAQ entry 2010-09-09T23:20:42 jmcarthur: Any new information on Haskell support? 2010-09-09T23:20:45 the result of (a) would be basically that bots move up the ranks slowly even if their elo score is jumping all over the place 2010-09-09T23:20:48 scores not in Elo order would be strange 2010-09-09T23:20:59 Zaphus: *estimated* elo order 2010-09-09T23:21:16 true, but it still looks strange to the casual observer 2010-09-09T23:21:19 mightybyte: i've submitted a small patch to allow arbitrary binaries, but it requires both approval and changes to the database 2010-09-09T23:21:44 Zaphus: hence the need for something being added to the faq :\ 2010-09-09T23:21:58 jmcarthur: Ok. I hope that passes. 2010-09-09T23:22:25 Zaphus: on the other hand, it would likely make the relative ranks of the bots feel more natural, especially when looking at bots that have played very few matches vs. those that have played many matches 2010-09-09T23:22:31 jmcarthur: Out of curiosity, what GHC features are you using that aren't in the version they're running? 2010-09-09T23:22:35 nobody reads faq's - you're catering for thousands of people possibly. 2010-09-09T23:22:40 if we're talking about ranking systems 2010-09-09T23:22:45 we could take go kgs's approach 2010-09-09T23:22:56 Zaphus: it could perhaps be cleared up by saying that the scores are "estimated elo scores" rather than just "elo scores" 2010-09-09T23:22:58 they leave a "?" next to your username until you've played a couple games 2010-09-09T23:23:03 jmcarthur: If you use the modified score for the ranking, why not just show it instead of Elo - if its the number we use then thats what people should see ? 2010-09-09T23:23:42 also, players's ranks that have a "?" change much more than a non-"?" would 2010-09-09T23:23:58 Zaphus: because ultimately the elo score denotes your true ability. the ranking is just a way of saying "we know with 99% probability that the bot is at least this good" 2010-09-09T23:24:03 tapwater: thats what I've done in Elo scoring systems in teh past (real world stuff) 2010-09-09T23:24:13 Whoops. Accidentally nuked the prod website. I be fixing this now... 2010-09-09T23:24:46 well, actually, that's a bad way to word the ranking 2010-09-09T23:24:51 j3camero: yes... i tought my script was bad.. 2010-09-09T23:24:52 lol j3camero 2010-09-09T23:25:03 "whoops" 2010-09-09T23:25:04 he made a new java viz or 2010-09-09T23:25:06 other technology? 2010-09-09T23:25:12 pgpaskar_: javascript canvas 2010-09-09T23:25:16 @what visualizer 2010-09-09T23:25:16 amstan: visualizer could be (#1) http://github.com/DanielVF/Planet-Wars-Canvas-Visualizer, or (#2) http://csclub.uwaterloo.ca/~amstan/aichallenge/canvas-visualizer/. 2010-09-09T23:25:17 Zaphus: there is an argument to be made that the modified score could be used in place of elo score, yes 2010-09-09T23:25:17 jmcarthur: I don't buy that, it either is your ability so show it, or it's not (not confident) so dont show it. the modified score should equal the Elo score when confidence is high, right ? 2010-09-09T23:25:19 does ie support this 2010-09-09T23:25:26 pgpaskar_: apparently not 2010-09-09T23:25:37 Zaphus: xbox live shows the modified value and *not* your actual score, in fact 2010-09-09T23:25:39 this was the reason we bothered with java 2010-09-09T23:25:48 Zaphus: so you may be right that it's better to use the adjusted one 2010-09-09T23:25:49 *** ratatata_ has joined #aichallenge 2010-09-09T23:26:08 website down? 2010-09-09T23:26:14 pgpaskar_: personally i don't think the visualizer is an essential thing 2010-09-09T23:26:17 jmcarthur: am I right thinking they would eventually be very similar numbers ? once confidence is high ? 2010-09-09T23:26:18 pgpaskar_: ie users will be forwarded to the java viz 2010-09-09T23:26:21 ratatata_: yeah.. j3camero nuked it by mistake 2010-09-09T23:26:25 haha did you join just to ask that ratatata ? 2010-09-09T23:26:39 Zaphus: yes. the only difference is that you will gradually rise in rank rather than jump around 2010-09-09T23:26:56 no.. I also nuked my own comp.. original ratatata is logged in but window just disappeard :D 2010-09-09T23:27:08 jmcarthur: that does seem better, more like what you would expect to see 2010-09-09T23:27:23 Zaphus: if you were to play infinite games they would be the same number 2010-09-09T23:27:24 aw shit 2010-09-09T23:27:27 amstan: did you ever discover the IE issues on the forums? 2010-09-09T23:27:41 how do i rollback a commit? 2010-09-09T23:27:43 pgpaskar_: no, i told you, i am not working on that 2010-09-09T23:27:51 is it still a problem? 2010-09-09T23:27:57 apparently it is 2010-09-09T23:28:01 Zannick: what version control system? 2010-09-09T23:28:04 svn 2010-09-09T23:28:06 does anybody else have any thoughts on this elo stuff? 2010-09-09T23:28:09 svn revert -r 2010-09-09T23:28:16 then pick a revision 2010-09-09T23:28:31 *** philipj_ has joined #aichallenge 2010-09-09T23:28:34 Subcommand 'revert' doesn't accept option '-r [--revision] arg' 2010-09-09T23:28:35 :< 2010-09-09T23:28:41 oh wait no 2010-09-09T23:28:50 sorry no thats wrong 2010-09-09T23:28:54 svn merge -r 2010-09-09T23:28:56 jmcarthur: can you roll out the change quickly to the live site, and we can witness it in action ? or do an alternate page showing the difference - so we can see what it would look like ? 2010-09-09T23:28:58 i'll summarize it this way: would you guys prefer an estimated elo score that jumps around a bit before settling down or one that slowly rises without jumping around? 2010-09-09T23:29:01 svn revert is for reverting to current revision 2010-09-09T23:29:05 *** asloane has joined #aichallenge 2010-09-09T23:29:09 jmcarthur, just pick a scoring system and stick with it: having two will just cause confusion/ irritation 2010-09-09T23:29:17 Queue29: yeah, i'm leaning to that now 2010-09-09T23:29:22 the system is down 2010-09-09T23:29:31 Queue29: they are the same scoring system technically, but only one of the two should be shown, regardless 2010-09-09T23:29:33 jmcarthur: Slowly rises, nobody likes to see someone leap into 3rd spot with only losses to their name 2010-09-09T23:29:42 Zannick: success? 2010-09-09T23:29:45 *** ratatata__ has joined #aichallenge 2010-09-09T23:30:05 Wow shit, did anybody else see that? 2010-09-09T23:30:18 Zaphus: the problem with a separate page for comparison is that the most feasible way for me to make the change directly changes the score that is put into the database, so it would have to be visible on the main ranking page 2010-09-09T23:30:23 pgpaskar_: i can't figure it out 2010-09-09T23:30:37 Zannick: svn revert -R . 2010-09-09T23:30:40 I just accidentally rm -rf *'ed the whole website on the prod server. That was not a good idea. Let's never do that again. Everybody please remind me every day. 2010-09-09T23:30:40 err no 2010-09-09T23:30:45 svn merge -r . 2010-09-09T23:30:48 omg how did i fail that twice 2010-09-09T23:30:54 Zaphus: i have a snapshot of the ratings file from earlier which includes confidence intervals and game counts. i could should that next to the adjusted scored if you want to see 2010-09-09T23:31:00 *could show 2010-09-09T23:31:03 svn: Second revision required 2010-09-09T23:31:09 jmcarthur: Just do it then, now is the time to see it in action and change if its broken, not after it goes live 2010-09-09T23:31:20 oh god dammit Zannick sorry im so newb at svn now 2010-09-09T23:31:21 *** ratatata_ has quit IRC (Ping timeout: 252 seconds) 2010-09-09T23:31:24 j3camero: dang, nice work 2010-09-09T23:31:25 Zaphus: well, i'll just show a pasted text file first ;) 2010-09-09T23:31:26 svn merge -rHEAD: . 2010-09-09T23:31:28 Zannick: you do a merge like so http://svnbook.red-bean.com/en/1.0/ch04s04.html 2010-09-09T23:31:34 :-) 2010-09-09T23:31:38 i don't actually have code yet, but it would be an easy fix 2010-09-09T23:31:40 seigen: thank goodness for svn and Gmail. 2010-09-09T23:31:45 s/fix/patch/ 2010-09-09T23:32:01 the gui tools have spoiled me 2010-09-09T23:32:03 j3camero: so i accidentally had a minor change in a trunk file i just committed 2010-09-09T23:32:04 curse you tortoise svn 2010-09-09T23:32:05 *** ratatata has quit IRC (Ping timeout: 252 seconds) 2010-09-09T23:32:12 so i'm trying to revert it but svn sucks 2010-09-09T23:32:16 *** ratatata__ is now known as ratatata 2010-09-09T23:32:18 svn: Not enough arguments provided; try 'svn help' for more info 2010-09-09T23:32:19 j3camero: If it was git, the site would have been back up faster. ;) 2010-09-09T23:32:35 ah, i need . at the end 2010-09-09T23:32:39 maybe 2010-09-09T23:33:03 mightybyte: yay git 2010-09-09T23:33:18 i would like to move to git next contest 2010-09-09T23:33:18 if it were git or hg branching would not be so hax 2010-09-09T23:33:33 arg svn merge 2010-09-09T23:33:48 Zannick: don't worry about it if it's minor. Just adopt practices to minimize the risk of accidentally committing to trunk in the future. 2010-09-09T23:33:59 Skipped missing target: 'Game.java' 2010-09-09T23:34:02 ;_; 2010-09-09T23:34:07 contestbot: game 4415957 2010-09-09T23:34:08 amstan: Game played at 2010-09-09 20:16:34, on map 684, 123513 beat 123520. http://ai-contest.com/visualizer.php?game_id=4415957 2010-09-09T23:34:20 mightybyte: nah, the issue was the key files that are not under version control. Git wouldn't help there. 2010-09-09T23:34:23 it seems to be back up 2010-09-09T23:34:39 so it seems to be using the java visualizer.... problems? 2010-09-09T23:34:39 Some files are intentionally not in the repo, sicne they have db passwords and such. 2010-09-09T23:34:54 i still can't undo the change 2010-09-09T23:34:55 pgpaskar_: idk why 2010-09-09T23:35:15 Does anyone have the link for that problematic game replay on the new visualizer lying around? 2010-09-09T23:35:24 i saw a couple 403s or something a little while back 2010-09-09T23:35:33 I just svn switched to the new new visualizer, and I wanna take a look. 2010-09-09T23:35:53 asloane == a1k0n? 2010-09-09T23:36:08 a1k0n=a1k0n 2010-09-09T23:36:08 yeah, on my phone 2010-09-09T23:36:09 contestbot: game 4415957 2010-09-09T23:36:10 amstan: Game played at 2010-09-09 20:16:34, on map 684, 123513 beat 123520. http://ai-contest.com/visualizer.php?game_id=4415957 2010-09-09T23:36:13 oh phone version 2010-09-09T23:36:15 lol 2010-09-09T23:36:20 will be back in earnest shortly 2010-09-09T23:36:20 darn, it's supposed to have canvas.. 2010-09-09T23:36:58 http://ai-contest.com/visualizer_canvas.php?game_id=4415957 2010-09-09T23:37:17 that is far better 2010-09-09T23:37:52 aha, i see it 2010-09-09T23:38:01 my cpu liked the java on better 2010-09-09T23:38:08 but it's not supposed to be lazy 2010-09-09T23:38:12 so good :) 2010-09-09T23:38:29 java one was running at a low low framerate 2010-09-09T23:38:40 it used to be animated properly but idk what happened to that lol. 2010-09-09T23:39:01 JensTi: Looks nice, the graph is very handy 2010-09-09T23:39:18 Zaphus: it's not my doing :P 2010-09-09T23:39:18 *** mistabell has joined #aichallenge 2010-09-09T23:39:29 I just bring up the links 2010-09-09T23:39:38 sexy: http://ai-contest.com/visualizer_canvas.php?game_id=4417773 2010-09-09T23:40:11 chromium is much smoother then ff3 2010-09-09T23:40:16 very cool 2010-09-09T23:40:46 Should we put this new viz into trunk? 2010-09-09T23:40:51 for sure 2010-09-09T23:40:52 I think we should 2010-09-09T23:40:53 I think so 2010-09-09T23:40:58 Let it be done 2010-09-09T23:41:00 keep the java one only for IE users i guess 2010-09-09T23:41:06 burn all other traces of it, it is an abomination 2010-09-09T23:41:30 but can we then please get the star background back on the canvas? :P 2010-09-09T23:41:36 In his comments, it says that it falls back to Java for people who have no canvas. I dunno if this part works properly. 2010-09-09T23:42:04 needs some stars in the background :-) any way to do a keyline around the text, or dropshadow ?, you can't see your fleets when they are over a planet of the same color. Draw black text at x+1, y+1, then draw colored text at x,y 2010-09-09T23:42:48 hi (trying to catch up) 2010-09-09T23:42:58 j3camero: If you open this link http://ai-contest.com/visualizer_canvas.php?game_id=4417753 in firefox it is the new viz, in IE it is the old one, so I guess it works 2010-09-09T23:43:04 j3camero: did the elo branch work at all? 2010-09-09T23:43:35 and yeah, i will share my updated PlayGame/ShowGame jars 2010-09-09T23:43:50 back to the old version: http://ai-contest.com/visualizer_canvas.php?game_id=4417773 this is hilarious. Looks like blue is getting some extra ships from somewhere out in deep space. 2010-09-09T23:44:22 a1k0n: the elo branch works, but there is a problem. I commented on the review. 2010-09-09T23:44:24 deus ex machina 2010-09-09T23:45:05 whoa 2010-09-09T23:45:09 * AlliedEnvy considers writing his bot in Lua, does the server support it? 2010-09-09T23:45:09 that is an interesting bug 2010-09-09T23:45:09 XD 2010-09-09T23:45:09 ahh, i see. yeah, i was wondering how slow those queries would be 2010-09-09T23:45:17 Zaphus: here is a comparison of estimated elo score and adjusted score. i put the number of games played by each bot to the side also for clarity: http://hpaste.org/fastcgi/hpaste.fcgi/view?id=29844#a29844 2010-09-09T23:45:25 anybody else who wants to see: ^^ 2010-09-09T23:45:26 AlliedEnvy: you could just upload the source to lua.. :) 2010-09-09T23:45:27 i...don't see anything happening in that game 2010-09-09T23:45:56 j3camero: That game doesn't appear to be rendering correctly for me. 2010-09-09T23:46:03 jmcarthur: how did you get confidence? 2010-09-09T23:46:14 a1k0n: i just cheated and used '-' :\ 2010-09-09T23:46:17 it is 94 turns of 100 vs 100 and no fleets or growth 2010-09-09T23:46:20 bss03: it's okay. It's the old one. I am about to update it in trunk. 2010-09-09T23:46:39 a1k0n: I suppose so, seems kinda hacky though 2010-09-09T23:46:39 jmcarthur: from the official site or benzedrine.cx? 2010-09-09T23:46:49 a1k0n: those are from official 2010-09-09T23:47:20 *** contestbot has joined #aichallenge 2010-09-09T23:47:21 *** ChanServ sets mode: +o contestbot 2010-09-09T23:47:26 g'night all. Congratulations and good luck on a smooth launch tomorrow! 2010-09-09T23:47:39 Zaphus: yeah, those people will be heavily penalized, but then shoot up pretty quick 2010-09-09T23:48:16 it's sorta awesome that galcon has the baseline elo score near 0 2010-09-09T23:48:20 jmcarthur: Thats perfect, its not a penalty, it's just that you naturally start at the bottom as most people would expect (although I imagine it will be higher than the bottom for most) 2010-09-09T23:48:21 heh 2010-09-09T23:48:24 right 2010-09-09T23:48:33 well no 2010-09-09T23:48:39 it's likely to be very near the bottom 2010-09-09T23:48:44 rather than near the middle as it is now, i think 2010-09-09T23:48:49 it does not automatically go to _canvas.php on my chrome :-( 2010-09-09T23:49:00 jmcarthur: yes, bottom 10% or so anyway, allowing for some stupid bots in there 2010-09-09T23:49:05 i guess 2010-09-09T23:49:12 oh snap 2010-09-09T23:49:17 Zaphus: i did it wrong though :P 2010-09-09T23:49:34 it's supposed to change things about 3 times as much, if i go by the trueskill rule i mentioned 2010-09-09T23:49:38 j3camero: Error: uncaught exception: [Exception... "An invalid or illegal string was specified" code: "12" nsresult: "0x8053000c (NS_ERROR_DOM_SYNTAX_ERR)" location: "http://ai-contest.com/visualizer/js/visualizer.js?v=1 Line: 89"] 2010-09-09T23:49:46 lemme try this again 2010-09-09T23:49:56 jmcarthur: but '-' is about 3sigma 2010-09-09T23:50:00 oh 2010-09-09T23:50:01 nevermind 2010-09-09T23:50:03 :) 2010-09-09T23:50:07 Zaphus: it's right, nevermind 2010-09-09T23:50:10 (very roughly) 2010-09-09T23:50:14 yeah, close enough 2010-09-09T23:50:26 slightly... less than 3 sigma, right? 2010-09-09T23:50:31 ok, I have to ask (to no-one in particular). whats with the Elo scores that go from -ve to +ve ? I've always seen scores that center around the 1200 mark, and a floor of maybe 200-400 2010-09-09T23:50:48 pgpaskar_: you know your game_data.php, does the protocol tell me a way to get the winner's name? 2010-09-09T23:50:50 by always I mean in other Elo implementations in the real world 2010-09-09T23:50:54 Zaphus: well, the only thing that matters is the difference between scores of opponents 2010-09-09T23:50:55 i don't want id, i want name 2010-09-09T23:50:56 winner= 2010-09-09T23:51:03 pgpaskar_: that's id 2010-09-09T23:51:04 so you can shift the entire range arbitrarily 2010-09-09T23:51:10 Zaphus: no idea, but i don't really care. these are still at least reliable relatively 2010-09-09T23:51:11 a1k0n: I know mathematically thats true, but for human beings it's not 2010-09-09T23:51:27 yeah, so i guess it could just add 1000 or something 2010-09-09T23:51:34 hmm. true. you may need to look that up on the database somehow 2010-09-09T23:51:39 okay, so you guys think i should make the patch and submit it for review then? just make it take the place of elo? 2010-09-09T23:51:47 i did not write that file tbh i havent written much of anything to my dismay 2010-09-09T23:51:54 *** seigen_ has quit IRC (Ping timeout: 252 seconds) 2010-09-09T23:52:04 well, take the place of the median estimated elo 2010-09-09T23:52:11 it's still technically going to drift toward elo 2010-09-09T23:52:12 jmcarthur: well, i'm a little concerned for the final results 2010-09-09T23:52:24 Okay, the new canvas visualizer is pushed to the live web server. Yay for danielvf! 2010-09-09T23:52:33 i'd rather have it use the mode or mean after all games that will have been played are played 2010-09-09T23:52:46 a1k0n: point 2010-09-09T23:52:47 cuz #1 might lose just because of the erratic behavior of hits opponents 2010-09-09T23:52:58 (widening his confidence interval) 2010-09-09T23:53:07 a1k0n: then again, i'd rather the standard deviation be really tiny by the end anyway 2010-09-09T23:53:24 yeah but it's definitely going to have overlaps at 95% confidence 2010-09-09T23:53:34 :\ 2010-09-09T23:53:41 if the last contest was anything to go by, when #2-#6 had like a 10-elo-point spread 2010-09-09T23:53:59 yeah but we have no idea what those confidence intervals actually were 2010-09-09T23:54:23 well, judging from benzedrine.cx's typical results, i'd say they were at least +/- 20 2010-09-09T23:54:35 then again they did have a shitload more games so maybe not 2010-09-09T23:54:52 amstan, j3camero: i know you guys wanted to avoid revealing the confidence intervals from the last tournament, but if you guys have that data around it would be nice to have in context of this conversation 2010-09-09T23:55:03 it might be good to show. 2010-09-09T23:55:06 a1k0n: so how would you resolve that - both methods risk the leader being 'wrong' 2010-09-09T23:55:21 well, the mean is the most probably least-wrong answer 2010-09-09T23:55:50 a1k0n: you could always do a 9-match playoff to decide the overall winner, or something like that 2010-09-09T23:55:53 but for the live contest, it totally makes sense to use the lower bound just to compensate for various numbers of games 2010-09-09T23:55:53 it is the "most likely correct" answer, i think 2010-09-09T23:56:17 a1k0n: would could just use this for the live contest and worry about it again as the end approaches 2010-09-09T23:56:23 so i think we should use the lower bound as jmcarthur suggests, and then just disable that for the final contest 2010-09-09T23:56:34 *** mistabell has quit IRC (Quit: Page closed) 2010-09-09T23:56:51 j3camero: amstan: is the schema for the games table fixed or can i add a column for error messages? 2010-09-09T23:56:52 (as long as the organizers are on board with that) 2010-09-09T23:57:03 a1k0n: agreed, there's time to make that decision if required (I'd assume) 2010-09-09T23:57:58 *** contestbot has joined #aichallenge 2010-09-09T23:57:59 *** ChanServ sets mode: +o contestbot 2010-09-09T23:58:09 so weird, is it just some games that break the canvas viz? 2010-09-09T23:58:26 *** hornairs has joined #aichallenge 2010-09-09T23:59:10 ooh, i like the graph at the bottom of the viz 2010-09-09T23:59:56 graph++