--- Log opened Sun Jan 13 00:00:23 2008 |
00:24 | | You're now known as TheWatcher[T-2] |
00:28 | | You're now known as TheWatcher[zZzZ] |
01:41 | | DiceBot [~Reiver@Nightstar-21973.xdsl.xnet.co.nz] has joined #Code |
03:02 | | gnolam [lenin@Nightstar-10613.8.5.253.static.se.wasadata.net] has quit [Quit: Z?] |
05:42 | | Vornicus-Latens is now known as Vornicus |
05:59 | < Vornicus> | Ooh, simcity is now gpl |
06:00 | < Reiver> | ! |
06:00 | < Reiver> | Sweet. |
06:01 | | mode/#code [-o+o Vornicus Vornicus] by Vornicus |
06:01 | <@Vornicus> | http://www.donhopkins.com/home/micropolis/ <--- have fun. |
06:01 | | mode/#code [+oooooo Attilla C_tiger EvilDarkLord McMartin[adventures] MyCatVerbs Serah] by Vornicus |
06:01 | | mode/#code [+oov Syloqs-AFH ToxicFrog DiceBot] by Vornicus |
06:27 | | Syloqs-AFH [Coder@Admin.Nightstar.Net] has quit [Connection reset by peer] |
06:56 | | Forj [~Forj@203.211.126.ns-3357] has joined #code |
06:57 | | mode/#code [+o Forj] by ChanServ |
06:57 | | Forj [~Forj@203.211.126.ns-3357] has quit [Quit: Gone] |
07:19 | <@MyCatVerbs> | Vornicus: it's been that way for a while. >_> |
07:19 | <@MyCatVerbs> | Vornicus: apparently. But hey, I didn't know that either. |
09:11 | | You're now known as TheWatcher |
09:29 | | gnolam [lenin@85.8.5.ns-20483] has joined #Code |
09:29 | | mode/#code [+o gnolam] by ChanServ |
09:54 | | McMartin[adventures] is now known as McMartin |
10:11 | | MyCatVerbs [~mycatverb@Nightstar-13709.lurkingfox.co.uk] has quit [Ping Timeout] |
10:30 | | * Vornicus fiddles with the catan thing. needs to actually write the data, so he can test it. |
10:32 | <@McMartin> | Heh |
10:32 | <@McMartin> | Write a program to generate the data! |
10:32 | <@Vornicus> | I'm already writing a program to use the data! |
10:32 | < Reiver> | What format do ye require the data in? |
10:33 | <@Vornicus> | Reiver: it's gonna be csv |
10:34 | < Reiver> | Ah, nice |
10:34 | <@Vornicus> | Well, for this iteration |
10:35 | <@Vornicus> | I need to translate it into database later. |
10:35 | <@C_tiger> | Doesn't rules-of-ajax require you to have it in XML? |
10:35 | <@C_tiger> | :P |
10:36 | | * Vornicus bites c |
10:36 | <@McMartin> | XML is not for humans. |
10:36 | <@McMartin> | "Let's say you have a problem. Then you think -- I know! I'll use XML! Now you have two problems." |
10:36 | <@C_tiger> | Awww.... |
10:37 | <@C_tiger> | I don't even understand this whole AJAX concept really. |
10:38 | <@McMartin> | The short form is "XML is something you have programs read and generate." |
10:39 | <@McMartin> | Working directly with XML is extremely unpleasant, even in largely human-friendly forms like XHTML. |
10:39 | <@C_tiger> | But vorn is like a computer. |
10:39 | <@C_tiger> | He can do it :P |
11:14 | | * Vornicus fiddles. pushes terrain and resource things into other csvs. |
11:39 | | MyCatVerbs [~mycatverb@81.174.167.ns-23005] has joined #code |
12:11 | | * Vornicus futzes with the csvs, hates it. |
14:39 | <@ToxicFrog> | csvs? |
14:40 | <@ToxicFrog> | Oh. CSVs. |
14:48 | <@Vornicus> | Really has to be a nicer way to go from CSVs to objects. |
14:48 | <@Vornicus> | ...wait a second, classes are first-class, I can pass them to functions. |
14:49 | | AnnoDomini [AnnoDomini@Nightstar-29311.neoplus.adsl.tpnet.pl] has quit [Quit: When the end is near, pants on the west rune, and step on the east.] |
14:51 | | * Vornicus can write a function that given the name of a CSV, and a class, will create a list of objects of the class, one from each row of the CSV. |
14:51 | <@Vornicus> | but too late, I already dumped the data into the program, I just have to write the code now. |
14:54 | | AnnoDomini [AnnoDomini@Nightstar-29311.neoplus.adsl.tpnet.pl] has joined #Code |
14:54 | | mode/#code [+o AnnoDomini] by ChanServ |
15:16 | | * Vornicus fiddles with possible methods for token randomization. In order for a token randomizer to work, it must place the 6s and 8s so they are not adjacent. |
15:17 | <@Vornicus> | I could fill randomly and then retry if there's adjacency... |
15:17 | <@Vornicus> | or I could check adjacency as I go and filter the available tokens... |
15:18 | <@Vornicus> | or I could place the 6s and 8s first, filtering available regions, and then place everything else. |
15:23 | <@Vornicus> | ...the first one sucks. The second one is a little bit better but you can still have a failure; you may run out of tokens to place. |
15:25 | <@Vornicus> | (consider, for instance: http://vorn.dyndns.org/~vorn/catan/3/ <--- tilt your head left and fill tokens left-right top-bottom; when you hit the hex with 4 on the forest, place a 6 or 8, and have one 6 or 8 left over, and then get to the mountain without placing the remaining red token) |
15:28 | <@Vornicus> | I do not believe it possible to fail the third one. |
15:28 | <@Vornicus> | In any known scenarios, anyway |
15:29 | <@Vornicus> | (I am certain it is not for standard; 5-6 player it also seems implausible) |
15:34 | <@Vornicus> | gah, found one where it's possible. |
15:35 | <@Vornicus> | (4-player "Oceans", scenario 5 in the Seafarers book.) |
15:41 | | * Vornicus checks the standard setup for failure counts. |
15:55 | <@Vornicus> | ...oh my god |
15:56 | <@Vornicus> | >>> print checks, fails |
15:56 | <@Vornicus> | 3876 3344 |
15:56 | <@Vornicus> | 86%. |
15:57 | | * Vornicus determines that that method is not sane. |
16:16 | <@Vornicus> | okay, a "check after each one" thing is much better. |
16:45 | <@Vornicus> | (118 of 650 attempts fail check-after-one - 18.1%) |
16:54 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has quit [Client exited] |
16:56 | | ToxicFrog [~ToxicFrog@Admin.Nightstar.Net] has joined #code |
16:56 | | mode/#code [+o ToxicFrog] by ChanServ |
18:05 | <@Vornicus> | ...does not lend itself to particularly simple implementation, though - I need to get the adjacency graph, and apply it repeatedly; with the all-or-nothing setup it's just shuffle until it works. |
18:05 | <@Vornicus> | ...which now that I think about it still needs the adjacency graph. |
18:12 | <@Vornicus> | Hell. Der, you did this. How? |
18:12 | <@Vornicus> | Der isn't here. |
19:47 | | Derakon [~Derakon@Nightstar-8000.hsd1.wa.comcast.net] has joined #code |
19:47 | | mode/#code [+o Derakon] by ChanServ |
19:47 | <@Derakon> | S'up? |
19:47 | <@Vornicus> | So, I'm trying to write the "randomize tokens" code for my Settlers thing. |
19:48 | <@Derakon> | Are you doing the ABCDEFG... thing that the normal board does? |
19:48 | <@Vornicus> | Yeah, and that one's easy. |
19:48 | <@Vornicus> | It's the randomize one that is hard. |
19:48 | <@Derakon> | Ahh. |
19:48 | | * Derakon tries to remember the logic he did. |
19:48 | <@Derakon> | It might be O(infinity)... |
19:49 | <@Vornicus> | mainly because I'm apparently /never/ guaranteed to be able to get all the red ones on there. |
19:49 | <@Derakon> | How d'you figure? |
19:50 | <@Vornicus> | (you can for the classic shape and most shapes I've seen, but there is at least one Seafarers map where certain situations can prevent you from placing all the red ones.) |
19:50 | <@Derakon> | What do you mean by "prevent you from placing the red numbers"? Are you applying some constraint like "red numbers can't be adjacent" or something? |
19:50 | <@Vornicus> | That's the game rules constraint. |
19:50 | <@Derakon> | Okay. |
19:51 | <@Derakon> | Well, here's a thought - go through and place everything without concern for that rule. Then, find adjacent red numbers, and swap one of them with a non-red that isn't adjacent to any reds. |
19:52 | <@Vornicus> | ...oh, of course. |
19:52 | | * Vornicus thinks he can always do that. |
19:52 | <@Derakon> | It seems plausible. |
19:53 | <@C_tiger> | And if you can't, reject and restart. |
19:54 | <@Vornicus> | It's actually, I think, the official way of doing it. |
19:54 | <@Derakon> | Heh. |
19:54 | <@C_tiger> | The number of situations where tokens are acceptable have to greatly outweigh the number of situations where they are not. |
19:54 | <@Vornicus> | Makes my life much simpler; means randomize_terrain and randomize_tokens are both just shuffles. |
19:54 | <@Vornicus> | C: oh, I wish. |
19:55 | <@Vornicus> | 86% of random token layouts on the classic map fail. |
19:56 | <@C_tiger> | Right, that's why the classic version suggests ABC... |
19:56 | <@Vornicus> | Exactly. They did that math for you. |
19:56 | <@Derakon> | Did you calculate that percentage, or is it empirical? |
19:57 | <@Vornicus> | I calculated it. |
19:57 | <@C_tiger> | But if they tell you to randomize, they can't have 90ish percent fail. |
19:57 | <@Vornicus> | 3344 of 3876. |
19:57 | <@C_tiger> | Or at least be insoluble. |
19:57 | <@Vornicus> | They tell you you /can/ randomize if you want, and that you may need to swap tokens to get it acceptable. |
19:57 | <@Derakon> | Does that include all possible desert locations? Because a desert in the middle will prevent more adjacencies than a desert on the edge. |
19:58 | <@Vornicus> | Der: this is just counting the 19C4 possible locations of the red tiles. |
19:58 | <@Derakon> | Ahh. |
19:58 | <@Derakon> | Assuming that the desert is somewhere the reds aren't. Fair enough. |
19:59 | <@Vornicus> | from the almanac for original settlers: "Alternatively, you can use a fully random set-up. Place 1 token on each land hex. Start at one corner of the island, and place the number tokens in random order. In such case, the tokens with the red numbers must not be next to each other. You may have to swap tokens to ensure that no red numbers are on adjacent hexes." |
20:00 | <@Vornicus> | Shuffle, then swap. Not hard. |
20:02 | <@Derakon> | Okay, if you've got that sorted out, I'ma go play vidjagames. |
20:02 | <@Derakon> | Have fun. |
20:02 | <@Vornicus> | Thank you. |
20:03 | <@Derakon> | No prob. |
20:03 | | Derakon is now known as Derakon[AFK] |
20:53 | | Syloq [~Syloq@Admin.Nightstar.Net] has joined #code |
20:54 | | Syloq is now known as Syloqs-AFH |
21:06 | | Vornicus is now known as Finerty |
21:56 | | AnnoDomini [AnnoDomini@Nightstar-29311.neoplus.adsl.tpnet.pl] has quit [Ping Timeout] |
22:03 | | AnnoDomini [AnnoDomini@83.21.47.ns-4296] has joined #Code |
22:04 | | mode/#code [+o AnnoDomini] by ChanServ |
22:53 | | Derakon[AFK] is now known as Derakon |
--- Log closed Mon Jan 14 00:00:29 2008 |