2014-06-03T00:51:03 *** floWenoL has joined #aichallenge 2014-06-03T00:54:19 *** floWenoL_ has quit IRC (Ping timeout: 264 seconds) 2014-06-03T01:58:55 *** amstan has quit IRC (Quit: Konversation terminated!) 2014-06-03T02:35:03 *** AlliedEnvy has quit IRC (Ping timeout: 276 seconds) 2014-06-03T02:48:00 *** AlliedEnvy has joined #aichallenge 2014-06-03T03:27:27 *** mceier has quit IRC (Read error: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number) 2014-06-03T03:29:30 *** mceier has joined #aichallenge 2014-06-03T04:33:48 *** mleise has quit IRC (Read error: Connection reset by peer) 2014-06-03T05:39:43 amstan: spoke to sigh, he'll be busy when the meeting is on and probably wont really have time to help out but will be keeping an eye on things 2014-06-03T05:40:02 @later tell amstan spoke to sigh, he'll be busy when the meeting is on and probably wont really have time to help out but will be keeping an eye on things 2014-06-03T05:40:02 antimatroid1: Ready to serve. 2014-06-03T06:26:15 *** smiley1983 has quit IRC (Ping timeout: 252 seconds) 2014-06-03T06:58:43 *** flag has quit IRC (Ping timeout: 265 seconds) 2014-06-03T08:24:41 *** crxz0193 has quit IRC (Ping timeout: 252 seconds) 2014-06-03T09:03:58 *** smiley1983 has joined #aichallenge 2014-06-03T10:08:26 *** crxz0193 has joined #aichallenge 2014-06-03T10:18:12 *** smiley1983 has quit IRC (Remote host closed the connection) 2014-06-03T10:31:54 *** smiley1983 has joined #aichallenge 2014-06-03T10:42:33 *** asdf has joined #aichallenge 2014-06-03T10:47:20 *** mceier has quit IRC (Quit: leaving) 2014-06-03T10:48:15 *** kilae has joined #aichallenge 2014-06-03T10:50:58 *** mceier has joined #aichallenge 2014-06-03T11:24:12 *** AlliedEnvy has quit IRC (Ping timeout: 240 seconds) 2014-06-03T11:36:54 *** AlliedEnvy has joined #aichallenge 2014-06-03T11:50:51 *** AlliedEnvy has quit IRC (Read error: Connection reset by peer) 2014-06-03T11:51:10 *** crxz0193 has quit IRC (Quit: Leaving) 2014-06-03T12:08:37 *** AlliedEnvy has joined #aichallenge 2014-06-03T12:12:50 *** AlliedEnvy has quit IRC (Ping timeout: 245 seconds) 2014-06-03T12:38:19 *** foRei has joined #aichallenge 2014-06-03T12:47:18 *** centrapheta has joined #aichallenge 2014-06-03T12:47:56 *** centrapheta has left #aichallenge ("Leaving") 2014-06-03T14:17:22 *** amstan has joined #aichallenge 2014-06-03T14:17:22 *** ChanServ sets mode: +o amstan 2014-06-03T14:28:29 *** Scooper has joined #aichallenge 2014-06-03T15:37:49 *** flag has joined #aichallenge 2014-06-03T16:15:45 *** Accoun has quit IRC (Ping timeout: 245 seconds) 2014-06-03T16:19:52 *** Accoun has joined #aichallenge 2014-06-03T17:09:18 *** amstan_ has joined #aichallenge 2014-06-03T17:09:18 *** ChanServ sets mode: +o amstan_ 2014-06-03T17:09:31 *** amstan_ has quit IRC (Read error: Connection reset by peer) 2014-06-03T17:09:40 *** amstan_ has joined #aichallenge 2014-06-03T17:09:40 *** ChanServ sets mode: +o amstan_ 2014-06-03T17:18:03 *** kilae has quit IRC (Quit: ChatZilla 0.9.90.1 [Firefox 29.0.1/20140506152807]) 2014-06-03T17:23:51 *** mceier has quit IRC (Ping timeout: 240 seconds) 2014-06-03T17:42:41 *** mceier has joined #aichallenge 2014-06-03T18:02:29 *** amstan_ has quit IRC (Quit: Konversation terminated!) 2014-06-03T19:15:59 *** contestbot has joined #aichallenge 2014-06-03T19:15:59 *** ChanServ sets mode: +o contestbot 2014-06-03T19:16:25 *** flag_ has joined #aichallenge 2014-06-03T19:16:37 *** aerique_ has joined #aichallenge 2014-06-03T19:16:42 *** ZanniqlcKzxkq has joined #aichallenge 2014-06-03T19:20:28 *** flag has quit IRC (Write error: Broken pipe) 2014-06-03T19:20:29 *** aerique has quit IRC (Write error: Broken pipe) 2014-06-03T19:20:32 *** amstan has quit IRC (Remote host closed the connection) 2014-06-03T19:20:33 *** Zannick has quit IRC (Remote host closed the connection) 2014-06-03T19:34:42 *** amstan_ is now known as amstan 2014-06-03T19:36:57 *** ZanniqlcKzxkq is now known as Zannick 2014-06-03T19:58:17 Zannick: that's a lot of extra letters 2014-06-03T20:07:25 *** Scooper has quit IRC (Quit: Leaving) 2014-06-03T20:19:42 amstan: it happens 2014-06-03T20:31:49 *** aarossig has joined #aichallenge 2014-06-03T20:50:31 *** McLeopold has joined #aichallenge 2014-06-03T20:50:42 McLeopold: woah! hello! 2014-06-03T20:50:47 hi 2014-06-03T20:51:07 McLeopold: how have you been? 2014-06-03T20:51:26 good 2014-06-03T20:51:52 saw the invite so I thought I'd join and see what's up 2014-06-03T20:51:59 heh 2014-06-03T20:51:59 Cool 2014-06-03T20:52:32 hopefully jeff shows up too, i was talking to him today, so good chance 2014-06-03T20:52:39 also.. he wanted to have the meeting as well 2014-06-03T20:53:23 *** a1k0n has joined #aichallenge 2014-06-03T20:53:42 even more cool people! 2014-06-03T20:53:52 where? 2014-06-03T20:54:14 i have to put the kids to bed so i cant really participate 2014-06-03T20:54:14 more people that are cool? or cooler people? :P 2014-06-03T20:54:18 but ill lurk 2014-06-03T20:54:31 McLeopold: more people that are cool 2014-06-03T20:55:48 even more people in cold environments 2014-06-03T20:55:48 Good turn out so far! 2014-06-03T20:56:51 the only other people left are antimatroid and cameronj 2014-06-03T21:01:19 I'm here, but going to cook a snack so will catch up 2014-06-03T21:01:24 antimatroid1: cool 2014-06-03T21:01:33 * amstan looks at cameronj 2014-06-03T21:01:59 Hello AI Challenge! 2014-06-03T21:02:03 yeah! 2014-06-03T21:02:15 (The audience cheers.) 2014-06-03T21:02:17 Hello! 2014-06-03T21:03:00 It's nice to see everyone after a bit of a break 2014-06-03T21:03:27 I must say, there are quite a few familiar nicks here. 2014-06-03T21:03:32 *** xathis has joined #aichallenge 2014-06-03T21:03:51 xathis: yeah! ants winner 2014-06-03T21:04:01 hi! 2014-06-03T21:04:15 so what are we discussing? 2014-06-03T21:04:31 Should we get started? There's no formal agenda but I had a few things I wanted to say. 2014-06-03T21:04:33 Just typing to register my internet in helping out (I wrote the C starter pack last time); I'll be back in 30 minutes 2014-06-03T21:04:37 interest* 2014-06-03T21:05:46 Cool! Yeah, let's get started. 2014-06-03T21:06:21 Before saying much about structure or agenda or anything I want to start by thanking all the people who have made past ai challenges happen. 2014-06-03T21:06:31 Thanks guys! Sometimes I didn't say it enough :-) 2014-06-03T21:07:57 After the first one or two contests it became completely unrealistic to run them solo. By the most recent Ants contest, I actually wrote almost none of the code, as many of you know. 2014-06-03T21:08:50 Basically all I did was go shake my tin cup to get money from Google. It was the participants themselves, and especially a few really hardcore contributors, who actually did the work. 2014-06-03T21:09:07 So, thank you. It's massively appreciated. 2014-06-03T21:09:24 I will tell a quick anecdote to drive home how much I love you all. 2014-06-03T21:10:49 thank you for shaking your tin cup 2014-06-03T21:10:54 heh 2014-06-03T21:11:05 There was a point when the contest was first going massively international, whereas before it was mostly contained to the University of Waterloo. It was like 1 AM, we were on the reddit frontpage, and we only had this one weak-ass webserver with 1-2 GB of memory that I got just to save money. And I knew nothing of apache. 2014-06-03T21:11:23 So, the site is completely down. Inaccessible. 2014-06-03T21:11:35 And I'm losing my mind trying to figure out what to do 2014-06-03T21:11:56 So I come into this very IRC channel and just asked for help 2014-06-03T21:12:13 I figure its an AI programming contest there has got to be someone around who knows wtf to do 2014-06-03T21:12:33 So I think it was janzert who started helping me by PM. 2014-06-03T21:13:06 After a few minutes this degenerated into him, the expert, just chatting me random commands that I didn't understand and me chatting back the output. 2014-06-03T21:13:27 it might have been danielvf 2014-06-03T21:13:37 So I just gave him sudo and asked him to fix it. And he did. The site came back up, we were still catching that reddit wave, and the contest expanded massively in one day. 2014-06-03T21:13:47 Oh sorry you're right. It was danielvf. 2014-06-03T21:13:51 That's awesome 2014-06-03T21:14:18 Yeah I figured the site is already down, I have nothing to lose. Time to give root to random people from IRC. 2014-06-03T21:14:24 lol 2014-06-03T21:14:29 Oh yeah, should be fine. 2014-06-03T21:15:03 That worked so well that I found and promoted about a half-dozen people in the same way over the next few days. 2014-06-03T21:15:31 Anyways, story time is over. Just wanted to tell that story to drive home how much I worship all of you, and how much I truly need you. 2014-06-03T21:16:50 Thanks Jeff, I believe I can speak for the community and say that everyone appreciates your leadership. Shaking the tin can sounds simple, but I am sure it is more complicated than that. 2014-06-03T21:17:10 In terms of other agenda items, things I've seen suggested: is there going to be another contest, and when. Should we use the existing code or start again. What will be google's role. What game to pick. Similar format to previous contests or something different. 2014-06-03T21:18:21 Can we start on the first one? Is there going to be another contest? 2014-06-03T21:18:44 if no, the rest of this meeting is kind of moot 2014-06-03T21:19:12 I can safely say that I am committed to making another contest reasonably soon. I have an idea for a contest of a slightly modified format which I hope will draw one or two orders of magnitude more players. Google's role is as yet undetermined but I'm working on that. 2014-06-03T21:19:50 after ants finished, aarossig and I were thinking to get a non profit organization going to help channel to money flow without being sketchy(through personal accounts) but at the time we just didn't have time to invest in that 2014-06-03T21:20:14 now we're going to be joining google, and we hope we can use some time for aichallenge 2014-06-03T21:20:24 At this point, I probably don't have the time to manage that (for at least a couple of months.. moving). It is still a cool idea 2014-06-03T21:21:08 perhaps in the fall/winter? 2014-06-03T21:21:23 from an infrastructure perspective, if we run this in 20% time, we'd either have to run it on internal infrastructure, or on the external google compute/appengine/whatever 2014-06-03T21:21:26 that timeline seems reasonable, from my standpoint 2014-06-03T21:21:40 frankly, the latter will be better if we want to still stay open source 2014-06-03T21:22:02 Zannick: that would be awesome, if we can use that system 2014-06-03T21:22:13 Yeah, the latter of Zannick's options sounds best 2014-06-03T21:22:18 Zannick: how easily do people get access to the 20% time? 2014-06-03T21:22:43 So I'm limited in what I can say about it, temporarily, but there has been some discussion within the company and there is some support. It looks like we can get a reasonable amount of server power for free, if not infinite. 2014-06-03T21:23:08 cameronj: do you have a game in mind, or just a format? what is the format? 2014-06-03T21:23:41 I agree with Zannick's suggestion. I want to keep this open source, which means we have to write it for infrastructure available to the public, not google internal. 2014-06-03T21:23:42 antimatroid1: you just work it out with your manager. has to be related to google. 2014-06-03T21:24:03 antimatroid1: are you a googler too? 2014-06-03T21:24:08 hmm? 2014-06-03T21:24:09 McLeopold: sketchy incomplete design doc. https://docs.google.com/document/d/1qnZBQCjY_iz4EU9yUGFWpXgIBmqnGbZ6eCf8mqXXs80/edit?usp=sharing 2014-06-03T21:24:20 not a googler 2014-06-03T21:24:35 in any case, i know the cloud people will be happy to have a large internal customer 2014-06-03T21:24:38 and not a particularly skilled programmer either, the only things i can really help with are map gens and c++ starter bots :P 2014-06-03T21:24:47 McLeopold: I should add that this is just a draft design doc I'm throwing together. I don't mean to impose my idea on the contest. Of course we should see several ideas. 2014-06-03T21:24:54 janzert and mcleopold did most of the work for ants 2014-06-03T21:25:02 cameronj: very, very interesting 2014-06-03T21:25:19 i don't know any of it besides appengine from another 20% project, but there's tons of support since we can reach out to the appropriate teams and find docs, etc 2014-06-03T21:25:27 amstan: do you remember a discussion I had with you regarding a "Programmers MMO" a few months back? 2014-06-03T21:25:46 aarossig: yeah 2014-06-03T21:26:04 My first impression is we can't use existing code because we never did massive player games. 2014-06-03T21:26:13 cameronj: i've been idly thinking about a cooperative game 2014-06-03T21:26:47 If we execute their code on the server.. we might solve a lot of the cheating problems like multiple connections to "see further". I had some issues with my ideas. 2014-06-03T21:27:05 To settle an earlier topic -- does Fall (approx Oct 2014) sound like a good time to aim for? 4 months from now. 2014-06-03T21:27:21 I was thinking January of 2015, personally... 2014-06-03T21:27:29 cameronj: it might be close 2014-06-03T21:27:39 the last one we launched got delayed a bunch of times 2014-06-03T21:27:52 Sorry, that design doc is not the "final idea". We should see lots of ideas and formats and then decide later. I don't want to run this thing like a dictator :-) 2014-06-03T21:27:54 secondly, we'll need to go through cdibona for open-source approval 2014-06-03T21:28:01 which shouldn't be terrible 2014-06-03T21:28:22 Zannick: cool. Can you whip up a doc to convey the idea? 2014-06-03T21:28:50 cameronj: of the coop game? i haven't thought about it that much 2014-06-03T21:29:01 This is more complicated that before. I don't think a launch date should be the target. I think you need to setup a series of milestones and try to achieve those. Don't set the next date until the next milestone is met. 2014-06-03T21:29:01 Zannick: nothing formal needed. You see the doc I just shared. Diagrams hand drawn in mspaint (actually KolourPaint but whatever :-) ) 2014-06-03T21:29:14 McLeopold: that's a good plan 2014-06-03T21:29:16 lemme put it on my todo list and i'll get something in a week or so 2014-06-03T21:29:34 McLeopold: you have a lot of experience with the current codebase, how do you feel about it? 2014-06-03T21:29:41 McLeopold raises a valid point. It does sound wiser to me to establish milestones without due dates. 2014-06-03T21:29:52 McLeopold: back in 2010 we were thinking to replace it with a new codebase, but eventually we just went with the old one 2014-06-03T21:30:02 McLeopold: i know you patched it a lot after that though 2014-06-03T21:30:13 though... php... 2014-06-03T21:30:21 I think it would be cool to go new.. with something this interesting it would be fun for me. 2014-06-03T21:30:23 It's meant for many games with a beginning and end. A continuously running game is something different. 2014-06-03T21:30:40 we won't be using php if we go with google cloud, just saying :P 2014-06-03T21:31:01 Zannick: I think it would be nice to use not-PHP in general. 2014-06-03T21:31:03 yeah, I'm not event worried about the PHP side of stuff, that was just the web site 2014-06-03T21:31:04 Zannick: so we would have to redesign most of it to run in python? 2014-06-03T21:31:08 The back end was python 2014-06-03T21:31:19 We could go with the existing format of many short rounds. Doesn't have to be MMO. The only lure of that concept for me is that we can make it into a game that's also fun for humans to play, potentially drawing a much larger crowd. 2014-06-03T21:31:35 You must have read my mind 6 months ago.. 2014-06-03T21:31:38 i do like the humans idea 2014-06-03T21:31:46 amstan: appengine is really very good to write in python + a django-like formatting system 2014-06-03T21:31:53 The current database would work if you did rounds. 2014-06-03T21:32:05 Everyone is in the next round together 2014-06-03T21:32:32 I'm not sure how trueskill will do with a game of 20,000 players :) 2014-06-03T21:32:34 cameronj: are you guys intending to start working on the codebase again yourselves or expecting people to still be around with time to do it? It's not clear to me who is sticking their hand up to say they've got time to work on this stuff 2014-06-03T21:32:44 appengine is also potentially free or low cost for us within google 2014-06-03T21:33:12 i wouldn't mind coding 2014-06-03T21:33:22 cameronj: if this was to be an MMO.. how do the newer bots catch up to the older ones who have been playing for a while? 2014-06-03T21:33:31 i've done boring stuff in the past, i really want to actually do code now 2014-06-03T21:33:37 antimatroid1: the intent is for those of us at google to get 20% time approval for the project 2014-06-03T21:34:21 Zannick: yep, i've been fantasizing about that since i got my offer 2014-06-03T21:34:26 antimatroid1: good point. I think many of us are pretty jammed with our day jobs in general. I feel confident that I can contribute enough time to get a simple system up and running end to end. Once people can actually play with it and see the leaderboard I find that's when the open source contributors really start to be empowered. 2014-06-03T21:34:26 Yeah, I am interested in coding as well. I am interested in the web side of things. 2014-06-03T21:34:29 AI challenges are a type of recruiting :) 2014-06-03T21:35:05 cameronj: the only thing about contributors after that point is that they need to want to jump in at the deep end 2014-06-03T21:35:26 aarossig: good question. I have some ideas for maintaining balance and keeping it fun for small players. Going to explain that in the Balance section of my doc. 2014-06-03T21:35:28 cameronj: what i observed at the last few times we launched is that only a limited set of people actually know what's going on in the backend 2014-06-03T21:35:56 i would like it to be more accessible 2014-06-03T21:37:01 amstan: agreed. We need to do whatever possible to remove obstacles for people who are eager to contribute. 2014-06-03T21:37:39 Okay I know we said no timeline, but I figure planning the scope such that we think we can launch something in Jan 2015 would be good. 2014-06-03T21:37:57 Okay, cool. I agree with no-timeline.. but a rough estimate is always nice. 2014-06-03T21:38:18 i'm with mcleopold and think that's a bad idea 2014-06-03T21:38:26 Meta comment: let's try to cover any remaining basics in the next 15 mins to keep this under an hour, so people can move on in their days if they need to. 2014-06-03T21:39:21 so what are the requirements to start a new contest? 2014-06-03T21:39:22 antimatroid1: I think we're generally agreed. I think due dates, or even target dates, are useless in this kind of project. Let's not have them. Milestones instead. Just saying let's not bite off 3 years worth of work. 2014-06-03T21:39:39 there's computing power, which we'll hadle at google through meetings and such 2014-06-03T21:39:42 antimatroid1: I believe having a rough idea will help us manage scope, even if it ends up being June 2015. 2014-06-03T21:40:08 i think it'd be better to get the ball rolling a bit more first before considering possible months 2014-06-03T21:40:19 picking a game, ideally we want to only iron this out completelly near the end, otherwise everyone who peeked in the beta will have an advantage 2014-06-03T21:40:21 we've no idea how much work will be involved 2014-06-03T21:40:41 the infrastructure should really be the first part 2014-06-03T21:40:42 then there's the framework stuff, which i'm not sure how much we have to replace 2014-06-03T21:40:59 perhaps we can reimplement an old game? 2014-06-03T21:41:10 do you think that is possible given our current suggestion? 2014-06-03T21:41:16 and once we like it we can replace it with the new game 2014-06-03T21:41:28 i have always been in favour of letting people continue fight out old games on a website somewhere 2014-06-03T21:41:31 that said.. it wouldn't be bad if we could still run some old games even after the end 2014-06-03T21:41:36 or an official tcp server for old games or whatnot 2014-06-03T21:42:07 aarossig: what is? 2014-06-03T21:42:18 we definitely need an official tcp server too 2014-06-03T21:42:18 amstan: the MMO concept 2014-06-03T21:42:21 I agree with what amstan is saying. I think picking a game (including an overall format for the contest) is the first step. How should we do this? I want to get everyone's ideas on the table and then also have a process for choosing a single coherent design. 2014-06-03T21:42:33 Before, all participants were running on the same server. This would need to be changed. 2014-06-03T21:42:50 i think the framework should be done without a game in mind, better for future games 2014-06-03T21:42:55 I think amstan suggested that we pick the game at the end. Am I correct? 2014-06-03T21:42:55 cameronj: what happened before is that we knew the game for 8 months before the game launched 2014-06-03T21:43:11 cameronj: picking the game should be one of the last things ideally 2014-06-03T21:43:33 cameronj: unless there's big changes to the framework that need to be made to accomodate that game(like the mmo concept) 2014-06-03T21:43:38 but just knowing we want all contestants in one game is enough right now 2014-06-03T21:44:37 What do you guys think of a real-time game instead of a turn-based one? Like when each bot can constantly be feeding input like their direction of motion? 2014-06-03T21:44:49 flag_: very difficult to implement 2014-06-03T21:44:54 It would add some variety to past contests 2014-06-03T21:44:55 flag_: yeah, i was thinking an asteroids like game 2014-06-03T21:45:02 Yeah, I believe that would be difficult as well. In the end, it will be discrete 2014-06-03T21:45:11 there were prototypes for turn based asteroids, not sure how you'd do real time though? 2014-06-03T21:45:28 antimatroid1: a lot of turns, optional turns 2014-06-03T21:45:39 still gonna have to have discrete steps 2014-06-03T21:45:40 Well the game engine would listen on a number of sockets 2014-06-03T21:45:45 I don't think we want to be trying to solve latency issues 2014-06-03T21:45:47 antimatroid1: exactly. 2014-06-03T21:45:47 and each bot would have a max amount of processor time 2014-06-03T21:46:06 I'm seeing the suggestion that we make a general framework so that we can plug individual game engines in. That way we get some reusability. Massively lowers the variable cost of each new contest but at the expense of a large initial fixed cost. I am eager to have such a framework, with the caveat that we guard against too much premature generalization. 2014-06-03T21:46:07 all of our previous games were pseudo-real time by having lots of ticks 2014-06-03T21:46:08 But yeah I see how that would be hard 2014-06-03T21:46:14 one of the best aspects about these contests is the ease of understanding the io and how to write a simple bot 2014-06-03T21:46:47 we will lose a large number of contestants if that doesn't stay 2014-06-03T21:46:52 cameronj: in an MMO game, how would you rank the bots? how would you rank them over time? 2014-06-03T21:47:01 I can prepare a design doc for the next meeting that proposes such a general multi-game framework. That will be my homework. 2014-06-03T21:47:20 cameronj: I agree with you regarding the framework. 2014-06-03T21:47:23 (i was pretty pushy with my opinion for ants, I don't mind so much now, just offering my opinion) 2014-06-03T21:48:03 antimatroid1: I agree with what you're saying, but I don't think real-time would make IO hard 2014-06-03T21:48:24 no i know, was just adding that comment :) 2014-06-03T21:48:27 antimatroid1: I see us keeping the simple io over stdin/stdout. You're right, that feature is key and did drive participation. 2014-06-03T21:48:38 Zannick: wait.. how would app engine work with user submitted bots? we would still need some kind of linux access for the workers 2014-06-03T21:48:54 they can't all be python 2014-06-03T21:49:06 amstan: appengine is frontend only 2014-06-03T21:49:15 amstan: seems like these are similar to ec2 2014-06-03T21:49:20 google compute is backend-only 2014-06-03T21:49:22 amstan: there is Google Compute. Similar to EC2 in that you're basically renting "a server". There may be other options too. 2014-06-03T21:49:30 ic 2014-06-03T21:49:37 amstan: https://cloud.google.com/products/compute-engine/#pricing 2014-06-03T21:49:49 what makes google compute not applicable for front-end? 2014-06-03T21:50:04 cameronj: how would you do ranking? trueskill was a large part of the contest last time 2014-06-03T21:50:17 amstan: it's not designed for hosting websites? 2014-06-03T21:50:55 Here's a list of major components off the top of my head: submission,compilation,main game engine,client bot controllers (jail),game scheduler,game scorer (results),database structure,javascript game client,javascript game replayer,web site 2014-06-03T21:51:06 Another point on having a framework with plug and play game engines. This would also allow us to address amstan's point about revealing the actual game closer to the public launch. We could keep the final game engine hidden to some degree, while using a simpler one as a standin for testing and such. 2014-06-03T21:51:43 i am in favour of the game being known publicly as soon as anyone else knows 2014-06-03T21:51:49 so that those helping out are still able to compete 2014-06-03T21:52:05 McLeopold: let's deal with the details of ranking and scheduling later. Suffice it to say there is a way. Players could be sorted in real time according to how many units they have, how much territory they control, how close is their closest unit to the center of the map... 2014-06-03T21:52:25 ranking has always caused problems 2014-06-03T21:52:39 Thx for the list McLeopold. Very helpful for forming a plan. 2014-06-03T21:52:44 my bot will have a huge army at the corner of the map and a little spy guy in the center of the map 2014-06-03T21:53:12 amstan: Won't your little spy need a defense against the rest of the players? ;) 2014-06-03T21:53:15 Haha 2014-06-03T21:53:19 aarossig: he'll just run around 2014-06-03T21:53:28 \o/ 2014-06-03T21:53:53 Okay we need to formally wrap this up so those people who need to move on can do so. 2014-06-03T21:54:06 Of course feel free to chill and argue afterwards. I will be doing so :-) 2014-06-03T21:54:18 So what got decided? 2014-06-03T21:54:29 we need to write some docs about what we want from this framework 2014-06-03T21:54:48 at the same time we need to figure out what resources we have available 2014-06-03T21:55:40 That sounds about right 2014-06-03T21:55:50 it would be ideal if there code which matches bots and figures out where they're playing (ie. on the same server or not as per mcleopolds comments before) could be swapped around depending on the type of game, so there isn't a separate framework for each type of game 2014-06-03T21:55:54 as for game... i suggest to delay that as much as possible, in order to maintain the openness while not divulging the game too early 2014-06-03T21:56:06 (1) We're likely having another contest. (2) Google is likely to be supportive. (3) The next milestone is to agree on a game and an overall format for the contest. (4) The tournament software should have some level of generality to ease the making of future contests. 2014-06-03T21:56:06 i guess the framework could just be designed to run tron, planetwars, and ants for the initial implementation 2014-06-03T21:56:17 I see 2 major changes to the existing framework: 1) how to get everyone in the same game, you'll need socket code that we don't have. 2) what to do with the results of a game, or status of the game if continuous 2014-06-03T21:56:23 Nailing down the requirements of this framework early will help. 2014-06-03T21:56:46 cameronj: I disagree with 3) Don't determine the game yet. Don't even think about the final game yet. 2014-06-03T21:56:52 i would be plenty happy with an initial framework with tron and planetwars on it 2014-06-03T21:57:19 i'd be happy to just redo tron and call it a day :P 2014-06-03T21:57:23 Zannick: yeah.. something that runs on appengine, then we know it's possible and cool 2014-06-03T21:57:25 MMO tron :D 2014-06-03T21:57:26 I *think* I have a decent hold on the design of a multi-game tournament manager. I promise a design doc by the next meeting. 2014-06-03T21:57:28 * antimatroid1 is still bitter about that disqualification :p 2014-06-03T21:57:30 antimatroid1: yep! seems easiest 2014-06-03T21:57:43 McLeopold: 2 rabbits with 1 stone 2014-06-03T21:58:06 McLeopold: i believe we're discussing a framework to run the tourney games, rather than a tcp server. the old game runner didn't use sockets, just pipes 2014-06-03T21:58:11 get it running on the new containerized GCE, with compilation and sandboxing as McLeopold mentioned, amd thats a lot of the work 2014-06-03T21:58:41 a1k0n: btw you no longer at Google? 2014-06-03T21:58:54 yeah i quit a year and a half ago.. 2014-06-03T21:59:01 didnt i tell you? 2014-06-03T21:59:04 amstan: what 2 rabbits? 2014-06-03T21:59:09 Yeah I noticed a few months back when I couldn't find you in the directory. 2014-06-03T21:59:16 McLeopold: ease of tron + mmo capabilities 2014-06-03T21:59:20 also amstan and aarosig are joining? cool 2014-06-03T21:59:27 a1k0n: yeah 2014-06-03T21:59:35 Yes they just joined recently. 2014-06-03T21:59:38 Yeah, starting in a couple of weeks. 2014-06-03T21:59:58 So, last item... when is the next meeting? 2014-06-03T22:00:05 yeah, so milestone 1 should be resurrect an old game so that bots from different servers can participate 2014-06-03T22:00:25 heh.... i pretty much have no time till like 3-4 weeks from now 2014-06-03T22:00:38 I could probably join on tuesdays at this time. 2014-06-03T22:00:43 I expect the agenda will be to get everyone's ideas about the game/format on the table, but not too choose. 2014-06-03T22:00:51 yeah.. next week might be fine, but might be too early 2014-06-03T22:00:55 but I won't be able to do any coding and so on 2014-06-03T22:01:06 for 3 - 4 weeks as amstan mentioned.. lol 2014-06-03T22:01:15 that sounds like the most sensible plan to me.. cant really design a framework around the vague idea of some game 2014-06-03T22:01:29 a1k0n sure you can :P 2014-06-03T22:01:36 cameronj: so, if a few of us say not to choose a game yet, are you going to listen? 2014-06-03T22:01:41 ...without overgeneealizing 2014-06-03T22:01:45 we need to know what kind of game (ie. 1 vs 1, all vs all etc.) but otherwise 2014-06-03T22:02:11 a1k0n: you want to generalise if you don't want to rewrite the framework every time we run a contest 2014-06-03T22:02:20 refactor! 2014-06-03T22:02:24 just model the game as a function from player list -> points list 2014-06-03T22:02:30 adapter pattern! 2014-06-03T22:02:48 IAIChallenge 2014-06-03T22:02:54 McLeopold: yes I will listen. If we're doing a general multi-game framework then let's put off the choice of a specific game indefinitely for now. 2014-06-03T22:03:13 how feasible is all vs. all? 2014-06-03T22:03:23 we need to find out 2014-06-03T22:03:29 so whats this about an MMO? this is the first ive heard that idea 2014-06-03T22:03:30 thus, that should be milestone 1 2014-06-03T22:03:39 i'm very hesitant 2014-06-03T22:03:45 antimatroid1: all as in all the contestants at the same time? or all as in ants(eg 8)? 2014-06-03T22:03:51 like with 6000 bots, how the F would the engine process that amount of info? 2014-06-03T22:03:53 youd have to sort of partition the map 2014-06-03T22:03:54 antimatroid1: It is a good question. All vs. All could be 1M players 2014-06-03T22:03:56 i would rather focus on the max n players game 2014-06-03T22:04:20 Zannick: what's the max? 2014-06-03T22:04:40 What if it was divided into "worlds" of a maximal size? 2014-06-03T22:04:48 a1k0n: The MMO idea comes from this random partial idea I threw out there: https://docs.google.com/document/d/1qnZBQCjY_iz4EU9yUGFWpXgIBmqnGbZ6eCf8mqXXs80/edit?usp=sharing 2014-06-03T22:04:52 * amstan is thinking runescape 2014-06-03T22:04:54 while google could easily scale to process a world of 1M players, i'm not sure a game with one winner makes any sense this way 2014-06-03T22:05:00 aarosig: itd be like ants then 2014-06-03T22:05:02 * aarossig is thinking runescape so hard 2014-06-03T22:05:17 Zannick: yeah, I agree, which was why I was asking about ranking 2014-06-03T22:05:18 McLeopold: 2? 6? small values of n, like ants or planet wars 2014-06-03T22:05:50 But, what if it was a stock trading game? Doesn't that make sense as MMO? With obvious ranking? 2014-06-03T22:06:14 okay, that makes more sense than a 2d environ 2014-06-03T22:06:24 McLeopold: It does, but we might need to reset "the market" occasionally to allow the new bots to compete. 2014-06-03T22:06:28 secretly tie it with bitcoin prices and trade what the bots tell you to, lol 2014-06-03T22:06:47 aarossig: so that would be the "round" then 2014-06-03T22:06:50 Personally, I think the 2-player games we've had so far were actually the most interesting. There might be a risk of trying to be too clever. 2014-06-03T22:06:57 McLeopold: effectively, yeah. 2014-06-03T22:07:28 my cooperative game ideas were: ATC, and commerce. 2014-06-03T22:07:41 at a super high level 2014-06-03T22:07:56 That brings up an interesting idea.. We might have hourly games. Your last submission of the previous hour is entered into the next hour of gaming. 2014-06-03T22:08:02 that reminds me, we have a wiki page: https://github.com/aichallenge/aichallenge/wiki/Game-Ideas 2014-06-03T22:08:05 Feel free to replace hour with 10 minutes, 20 minutes, whatever you think is reasonable. 2014-06-03T22:08:21 Is janzert around? 2014-06-03T22:08:30 yeah i was thinking there must be some sort of epoch 2014-06-03T22:08:31 McLeopold: no, he's a little busy 2014-06-03T22:08:37 McLeopold: he was a few days ago though 2014-06-03T22:09:33 ants was pretty chaotic in the sense of sensitive to starting conditions.. this would be much more 2014-06-03T22:10:33 especially if center territory is the objective and you start in the corner with a million other players on the map 2014-06-03T22:11:27 a1k0n: I agree. We might have to devise the game to take this into account. 2014-06-03T22:12:25 i personally think it'd be good to stick to games with a finite number of turns and not all players in at once 2014-06-03T22:12:34 agreed 2014-06-03T22:12:39 as nice as other games would be, I don't don't think it's feasible 2014-06-03T22:12:45 just* don't 2014-06-03T22:12:53 easier to reason about and score 2014-06-03T22:13:32 if we are to attempt something more difficult though, then we need to work out how to rank bots, issue bots with information, have the engine handle the amount of info etc. before committing too much to the idea 2014-06-03T22:13:58 i can just imagine it being a horribly slow process to get even a small amount of game play done 2014-06-03T22:14:29 even with the simpler games ranking is FAR from perfect 2014-06-03T22:14:40 yeah.. it was awesome when you could submit a bot and immediately see 10 games it just played 2014-06-03T22:15:13 In the last contest the top 10 was extremely volatile even in the last few hours 2014-06-03T22:15:26 for example ranking isn't independent of the order in which games are played, ie. losing to xathis when he's ranked 1000 in round 1 doesn't do shit for you, losing to him when he's ranked 1 in round 24 or whatever helps you 2014-06-03T22:15:32 and it doesn't go back and account for that later 2014-06-03T22:15:55 didnt that change with the bayesian version of elo? 2014-06-03T22:16:07 we used trueskill last time 2014-06-03T22:16:10 it was based on whole history, not current values 2014-06-03T22:16:14 oh yeah 2014-06-03T22:16:18 I was pretty happy with the rankings last time, but I definitely think the way of ranking bots is far from ideal (I imagine ideal in this sense is impossible much like with arrow's impossibility theorem with social voting) 2014-06-03T22:16:23 trueskill is bayesian and online 2014-06-03T22:16:26 because of more than 2 players 2014-06-03T22:16:49 but it doesn't look at the whole history 2014-06-03T22:17:02 yeah. in theory it could 2014-06-03T22:17:05 so perhaps we should scale back, just design the framework around the games we already ran before 2014-06-03T22:17:17 If it is a continuous game, then we don't need separate ranking 2014-06-03T22:17:23 yes, and if we got a solid framework for that, it'd be easy to churn out new contests 2014-06-03T22:17:43 start simple 2014-06-03T22:17:51 i feel part of the problem last time was the framework was just old, and a ton of it had to be rewritten, but not all of it 2014-06-03T22:17:56 if everyone is in planetwars, then your rank is your production per step 2014-06-03T22:17:58 I am interested in this.. 2014-06-03T22:18:28 i wouldn't mind starting with a simple game, even if we already did it before 2014-06-03T22:18:29 would you be out if you lose all planets and ships right at the start? 2014-06-03T22:18:31 contest over? 2014-06-03T22:18:31 just to test the framework 2014-06-03T22:18:37 i suppose planetwars could be mmo 2014-06-03T22:18:45 amstan: amazebot? 2014-06-03T22:18:45 amstan: the biggest rewrite was database changes for multiplayer games. the second was proper jails for bots 2014-06-03T22:18:53 aarossig: that's trivial i think 2014-06-03T22:18:53 both can still be used 2014-06-03T22:19:10 I like the idea of a bot being tested in lots of different environments, rather than one very long drawn out conservative game 2014-06-03T22:19:12 McLeopold: that's cool 2014-06-03T22:19:17 brb. Going to grab some food. Back in 15 ish. 2014-06-03T22:19:24 Will catch up when I return. 2014-06-03T22:19:27 ok 2014-06-03T22:19:29 antimatroid1: yeah, if someone took over, then a new round starts 2014-06-03T22:19:43 so then how do you rank bots across rounds? 2014-06-03T22:19:52 you don't 2014-06-03T22:20:01 isn't the idea here to run a contest agian? 2014-06-03T22:20:04 each round you can see how your bot did 2014-06-03T22:20:13 the final contest is 1 game that you need to win 2014-06-03T22:20:36 yeah that's what I was suggesting I don't really like 2014-06-03T22:20:38 we're confusing each other now 2014-06-03T22:22:28 What do you think is more important if you can only choose one? MMO or a game a human can play in? 2014-06-03T22:22:53 i don't think of either of those as core features 2014-06-03T22:23:11 I like the MMO concept, I just don't know how feasible it is. 2014-06-03T22:23:20 well, those are cameronj's main ideas for the next contest 2014-06-03T22:23:46 and as i said before i'd rather get the database, worker, and site set up before starting work on a game 2014-06-03T22:24:07 I agree, I'm not talking about a game 2014-06-03T22:24:21 humans being able to compete against bots doesn't really matter imo 2014-06-03T22:24:50 Well, humans playing is cameronj key distinguishing feature 2014-06-03T22:24:54 i do like being able to do human input against my bot for debugging purposes though 2014-06-03T22:25:05 writing infrastructure to handle an MMO game is unexplored territory 2014-06-03T22:25:26 it would definitely be a big success if anything semi-workable was made 2014-06-03T22:25:33 it does sound very exciting 2014-06-03T22:26:09 i think it'd need a more realistic goal than "get to the centre of the map against 6000 other people" though :P 2014-06-03T22:26:36 the human idea is interesting but there are a few things we would need to discuss. Namely: how much time does a human turn take? How do we prevent them from executing a bot. 2014-06-03T22:27:00 aarossig: why would it matter if a human decided to use a bot in a human vs. bot game? :P 2014-06-03T22:27:15 it sounds first like a feature for a local client 2014-06-03T22:27:17 if we give a human 10 minutes to make a move and a bot 10s.. that might be unfair 2014-06-03T22:27:21 If turned based, the bot still get's 1 second. The human can have a resonable period that's adjusted, say 1 minute? 2014-06-03T22:27:33 note that i also think of a tcp server as non-core 2014-06-03T22:27:42 (if the human cheats and executes a bot rather than clicking a button on a mouse) 2014-06-03T22:28:06 humans can run bots, we wouldn't be able to enforce anything anyway 2014-06-03T22:28:21 Zannick: why? 2014-06-03T22:28:39 it's just input from an outside source rather than a compiled and controlled bot 2014-06-03T22:28:40 antimatroid1: the main feature of the system is the main tourney game 2014-06-03T22:29:10 would it be possible to have the main tourney run like a tcp server but using bots on contest servers? 2014-06-03T22:29:12 only bots are in the final contest, human's playing is just for fun and not ranked 2014-06-03T22:29:34 McLeopold: Okay, that fixes everything. 2014-06-03T22:29:42 that way you just set up the tcp server infrastructure and a way to use that from the contest servers for contests 2014-06-03T22:29:42 antimatroid1: it's possible but i think cloud would frown on using so many ports 2014-06-03T22:29:50 ah yep fair enough 2014-06-03T22:30:28 you can have a game engine control 8 bots and send all their orders in to the main game engine server 2014-06-03T22:31:05 that's basically the new piece that would need to be written 2014-06-03T22:32:06 i'd still rather use a master-worker model than a master-manager-worker model 2014-06-03T22:32:12 you basically just writting a web server/rest api 2014-06-03T22:32:30 I was thinking rest.. 2014-06-03T22:32:34 well, without the http 2014-06-03T22:32:40 whatever :P 2014-06-03T22:32:54 i don't know rest; i think like an SRE 2014-06-03T22:33:11 our main system is master-slave via paxos 2014-06-03T22:33:37 I'm out for a few hours, I'll catch up later. Also, I'm probably not going to be able to code much this time around. 2014-06-03T22:33:42 i wrote a simple master-worker distribution for a side project once 2014-06-03T22:33:56 that's pretty much all i know how to do :) 2014-06-03T22:33:59 McLeopold: alright, cya 2014-06-03T22:34:06 McLeopold: we'll talk again next time 2014-06-03T22:38:07 so... there's 3 ways to implement the framework then: old way(same stuff that could run the old contests), implement the mmo functionality too and tcp 2014-06-03T22:41:30 i would still be on the catious side and just implement the old way, just to prove the concept that we can have a self sustaining contest on the new servers 2014-06-03T22:41:58 Is there any particular argument against doing another 2-player game a la PlanetWars/Tron? Is everyone just bored of that king of thing? 2014-06-03T22:42:29 I am open to mostly anything, but I do like the idea of multiplayer games. 2014-06-03T22:43:17 * janzert waves 2014-06-03T22:43:21 sorry I didn't make it 2014-06-03T22:43:24 janzert: hi 2014-06-03T22:43:29 janzert: McLeopold was asking about you 2014-06-03T22:43:50 janzert: don't miss cameronj's intro speech 2014-06-03T22:44:20 yeah, I'll try and read the whole archive 2014-06-03T22:46:13 *** xathis has quit IRC (Quit: Page closed) 2014-06-03T22:46:37 I am heading off to bed. Good meeting, we should plan for another one. 2014-06-03T22:47:59 *** aarossig has quit IRC (Read error: Connection reset by peer) 2014-06-03T22:59:05 *** flag_ has quit IRC (Quit: Lost terminal) 2014-06-03T23:00:39 well.. thank you everyone for joining the talk 2014-06-03T23:00:43 i'm going to bed as well 2014-06-03T23:00:55 *** amstan changes topic to "AI Challenge (sponsored by Google): http://aichallenge.org || Channel Logs: http://contestbot.aichallenge.org || Code Repo: http://github.com/aichallenge/aichallenge || Stay Tuned!" 2014-06-03T23:15:45 *** smiley1983 has quit IRC (Ping timeout: 245 seconds) 2014-06-03T23:16:36 *** smiley1983 has joined #aichallenge 2014-06-03T23:17:13 *** amstan has quit IRC (Quit: Konversation terminated!) 2014-06-03T23:18:29 Made it through the archive, good to see so many back and ready to go again 2014-06-03T23:21:36 One note from me and maybe part of it is just my lack of understanding, but I think some organizational issues really need to get sorted out before moving forward on a framework design/game direction or anything else. Not just because I think the issues need to get sorted out but because I think it's going to have an effects on the foundational decisions for the rest of it. 2014-06-03T23:23:04 e.g. if we go to completely in house google architecture is it even possible to have the contestant submissions in any language under the sun? I don't think it is if we're under app engine at least? 2014-06-03T23:24:15 i still believe it'll work to make appengine frontend, gcompute backend, with the db in between 2014-06-03T23:25:07 great 2014-06-03T23:25:13 we do not want the appengine app to perform the hard work 2014-06-03T23:25:44 that makes sense 2014-06-03T23:26:00 I'm not familiar with gcompute is that a public thing? 2014-06-03T23:26:08 google compute engine 2014-06-03T23:26:19 google's ec2 competitor, basically 2014-06-03T23:26:24 ahh, ok 2014-06-03T23:26:32 but tied into everything else 2014-06-03T23:26:37 or tyable 2014-06-03T23:27:08 i tried using it for a small thing way before it launched but never got sufficiently into it to really learn it 2014-06-03T23:27:46 so standard vm with linux of some sort? that would certainly work then. 2014-06-03T23:27:51 yeah 2014-06-03T23:28:50 anyway great to see things moving forward, 2014-06-03T23:29:09 unfortunately I'm going to disappear pretty much completely for the next month 2014-06-03T23:29:40 although it may work out to meet cameronj in person during that time 2014-06-03T23:31:32 *** foRei has quit IRC (Read error: Connection reset by peer) 2014-06-03T23:34:26 one tech note before I go to bed, I think it would be interesting to look into using docker container's for "advanced" user submissions all submission jails internally 2014-06-03T23:35:18 also stripe ctf has done some nice work on making secure jails for contestants