code logs -> 2018 -> Tue, 11 Sep 2018< code.20180910.log - code.20180912.log >
--- Log opened Tue Sep 11 00:00:26 2018
00:03 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds]
00:15 ErikMesoy1 [Bruker@Nightstar-hq72t5.customer.cdi.no] has joined #code
00:18 ErikMesoy [Bruker@Nightstar-hq72t5.customer.cdi.no] has quit [Ping timeout: 121 seconds]
00:36 Derakon[AFK] is now known as Derakon
00:40 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has joined #code
00:40 mode/#code [+o himi] by ChanServ
01:01 Kindamoody is now known as Kindamoody[zZz]
01:04 celmin|away is now known as celticminstrel
--- Log closed Tue Sep 11 01:36:02 2018
--- Log opened Tue Sep 11 01:43:16 2018
01:43 TheWatcher [chris@GlobalOperator.Nightstar.Net] has joined #code
01:43 Irssi: #code: Total of 33 nicks [25 ops, 0 halfops, 0 voices, 8 normal]
01:43 mode/#code [+o TheWatcher] by ChanServ
01:43 Irssi: Join to #code was synced in 15 secs
--- Log closed Tue Sep 11 02:23:11 2018
--- Log opened Tue Sep 11 02:59:58 2018
02:59 TheWatcher [chris@GlobalOperator.Nightstar.Net] has joined #code
02:59 Irssi: #code: Total of 31 nicks [24 ops, 0 halfops, 0 voices, 7 normal]
02:59 mode/#code [+o TheWatcher] by ChanServ
02:59 Orthia [quassel@Nightstar-ksqup0.co.uk] has joined #code
03:00 mode/#code [+o Orthia] by ChanServ
03:00 Irssi: Join to #code was synced in 25 secs
03:17
<&McMartin>
... oh wait, these meshes are nothing but triangles
03:17
<&McMartin>
Mine is an evil laugh!
03:18
<&ToxicFrog>
Randomizer now ingests inventory, emits list of all places you can get to and what they contain.
03:18
<&ToxicFrog>
The rest is now all UI.
03:18
<&McMartin>
You're writing a randomizer for something, but I seem to have missed what.
03:19
<@macdjord>
McMartin: Metroid of some vintage, I beleive.
03:19
<&ToxicFrog>
Oh, and handling can-escape?
03:19
<&ToxicFrog>
"randomizer" was a typo
03:20
<&ToxicFrog>
I'm writing a hint system for existing randomizers.
03:20
<&McMartin>
Ah. Now I know it's MP1. :)
03:20
<&McMartin>
Also, in shocking news
03:20
<&McMartin>
I picked up a used, obsolete tech book for $5
03:20
<&McMartin>
It actually still has the CD in the back.
03:21
<&ToxicFrog>
It takes as input a game description (location -> prerequisites for entry map, item deduplication and pseudo-item tables), a randomizer seed description (location -> item), and an inventory (list of visited locations)
03:21
<&ToxicFrog>
And from that figures out what locations you can now reach
03:22
<&ToxicFrog>
The ultimate goal is an interactive program that lets you ask questions like "what major items can I reach with my current inventory" or "which zones have accessible items, and how many"
03:22
<&McMartin>
That seems like it might fall down in cases where you don't know that, to choose a non-random example, a certain area can be run backwards
03:22
<&ToxicFrog>
McMartin: this information should be in the reachability map, which is extracted from the randomizer itself
03:23
<&ToxicFrog>
So if the randomizer doesn't know that an area can be run backwards in the first place, it won't generate layouts that require you to do so
03:23
<&McMartin>
OK.
03:23
<&McMartin>
... extracted?
03:23
<&ToxicFrog>
(that said, the MP1 randomizer is fairly sophisticated in this regard and takes into account alternate routes, reverse phendrana, etc even for glitchless runs)
03:24
<&McMartin>
Are there standardized randomizer generators?
03:24
<&ToxicFrog>
It has about 2100 lines of typescript defining functions of the form "can we reach this room given this inventory" and, for some rooms, "can we exit this room given this inventory and room contents"
03:24
<&ToxicFrog>
I have written a thing to conver this to a pile of clojure and, eventually, a pile of json
03:24
<&ToxicFrog>
(the MP2 randomizer has a bigass binary blob that appears to be a partially postprocessed chunk of the MP2 data files; that's going to be all sorts of fun to convert)
03:25
<&ToxicFrog>
So, no, there is not a standardized randomizer generator, at least for Metroid Prime, and there is no standardized format for the reachability map. It's all bespoke.
03:25
<&ToxicFrog>
If it weren't this project would be done already.
03:26
<&ToxicFrog>
The project so far is ~50 lines of clojure for the actual logic and ~150 lines of lua to convert typescript into clj (defmethod) calls.
03:27
<&ToxicFrog>
My ultimate goal is to emit json so that a given game can be described by a rules file (item and reachability maps) and randomizer layout file (location to item map).
03:27
<&ToxicFrog>
But for now I just want it up and running before Alex insists we play another round of MP1 so that I know where to go~
03:28
<&ToxicFrog>
Another benefit of having this will be that it'll be able to automatically check exit requirements and thus go "you can get to this room, but you shouldn't, because you'll softlock the game"
03:29
<&ToxicFrog>
And I may special-case in a check for the thermal visor control tower bug.
03:31
<&McMartin>
Oh wait, my faith in humanity is restored to normal levels
03:32
<&McMartin>
There is a gigantic crack running through the CD
03:34
<&McMartin>
And yet, that does not seem to have stopped me from copying off all the data on it, even though imaging it is a non-starter.
03:35
<&McMartin>
I guess that does count as "Very Good Condition" after all.
03:41 * ToxicFrog feeds in the route from the current run of MP1 as a test, checking after each item, and gets results that perfectly accord with the game experience so far
03:41
<&ToxicFrog>
(it's a Pretty Weird Experience that has me with the missiles, morph ball, boost ball, spider ball, phazon suit, wave beam, and ice beam after like twelve rooms)
03:41
<&ToxicFrog>
(but no bombs!)
04:19 VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has quit [[NS] Quit: Leaving]
04:20 VirusJTG [VirusJTG@Nightstar-42s.jso.104.208.IP] has joined #code
04:20 mode/#code [+ao VirusJTG VirusJTG] by ChanServ
05:11 celticminstrel is now known as celmin|sleep
05:18 Derakon is now known as Derakon[AFK]
06:30 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has joined #code
06:30 mode/#code [+qo Vornicus Vornicus] by ChanServ
07:21 ErikMesoy1 is now known as ErikMesoy
07:21 mode/#code [+o ErikMesoy] by ChanServ
07:44 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has quit [Ping timeout: 121 seconds]
07:56 macdjord is now known as macdjord|slep
09:28 JustLurk [justbob@ServerAdministrator.Nightstar.Net] has joined #code
09:28 JustBob [justbob@Nightstar.Customer.Dissatisfaction.Administrator] has quit [NickServ (RECOVER command used by JustLurk)]
09:28 mode/#code [+o JustLurk] by ChanServ
09:28 JustLurk is now known as JustBob
09:41 Kindamoody[zZz] is now known as Kindamoody
10:29 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has joined #code
10:42 Degi [Degi@Nightstar-tibk8o.dyn.telefonica.de] has joined #code
11:38
<~Vornicus>
Why is it that writing testing code is so pleasant and yet I avoid it so hard
11:58
<~Vornicus>
I guess some of these things the structures I need to verify are ...quite large, but
13:59 celmin|sleep is now known as celmin|away
15:35 Vash [Vash@Nightstar-sjaki9.res.rr.com] has joined #code
16:50 Degi [Degi@Nightstar-tibk8o.dyn.telefonica.de] has quit [Ping timeout: 121 seconds]
18:08 Degi [Degi@Nightstar-tibk8o.dyn.telefonica.de] has joined #code
19:47 Degi [Degi@Nightstar-tibk8o.dyn.telefonica.de] has quit [Ping timeout: 121 seconds]
20:14 JustLurk [justbob@ServerAdministrator.Nightstar.Net] has joined #code
20:14 JustBob [justbob@Nightstar.Customer.Dissatisfaction.Administrator] has quit [NickServ (RECOVER command used by JustLurk)]
20:14 mode/#code [+o JustLurk] by ChanServ
20:14 JustLurk is now known as JustBob
21:51 Degi [Degi@Nightstar-tibk8o.dyn.telefonica.de] has joined #code
22:09 domtron [domtron@Nightstar-r8ehsd.ct.charter.com] has joined #code
22:30 Vash [Vash@Nightstar-sjaki9.res.rr.com] has quit [Connection closed]
22:32 Vornicus [Vorn@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
22:47 domtron_ [domtron@Nightstar-r8ehsd.ct.charter.com] has joined #code
22:48 domtron [domtron@Nightstar-r8ehsd.ct.charter.com] has quit [Connection closed]
22:48 domtron_ [domtron@Nightstar-r8ehsd.ct.charter.com] has quit [Connection closed]
23:35 Emmy [Emmy@Nightstar-9p7hb1.direct-adsl.nl] has quit [Ping timeout: 121 seconds]
23:50 himi [sjjf@Nightstar-1drtbs.anu.edu.au] has joined #code
23:50 mode/#code [+o himi] by ChanServ
--- Log closed Wed Sep 12 00:00:28 2018
code logs -> 2018 -> Tue, 11 Sep 2018< code.20180910.log - code.20180912.log >

[ Latest log file ]