code logs -> 2013 -> Mon, 08 Jul 2013< code.20130707.log - code.20130709.log >
--- Log opened Mon Jul 08 00:00:31 2013
00:08 Reiv [NSwebIRC@Nightstar-95746c1f.kinect.net.nz] has joined #code
00:08 mode/#code [+o Reiv] by ChanServ
00:24 You're now known as TheWatcher[T-2]
00:33 Derakon is now known as Derakon[AFK]
00:36 You're now known as TheWatcher[zZzZ]
00:46
<~Vornicus>
TF: am I correct that the github -- last updated 6 months ago -- is the official repo?
00:52 himi [fow035@D741F1.243F35.CADC30.81D435] has joined #code
00:52 mode/#code [+o himi] by ChanServ
00:59 ktemkin[awol] is now known as ktemkin
01:15
<&ToxicFrog>
Vornicus: yes. These new updates will go up sometime monday.
01:15
<~Vornicus>
ok
01:16
<&ToxicFrog>
This will be the 1.1.3 release, and then I work on backreferences for 1.2
01:22 Derakon[AFK] is now known as Derakon
01:26
<&ToxicFrog>
1.1.3 is mostly internal code cleanup and a big documentation update, and filling in some gaps in the unit tests
01:26
<&ToxicFrog>
Although it does add a new feature (pad with specific value)
01:31
<&ToxicFrog>
1.2 is going to be backreferences and crossreferences.
01:32
<@Reiv>
backreferences?
01:32
<~Vornicus>
heck, crossreferences?
01:39
<&ToxicFrog>
Backreferences: references within the format string to fields read earlier. E.g., rather than:
01:39
<&ToxicFrog>
count = vstruct.unpack(fd, "u4", true); toc = vstruct.unpack(fd, "%d * { ...toc entry... }" % count)
01:39
<&ToxicFrog>
You go:
01:40
<&ToxicFrog>
toc = vstruct.unpack(fd, "count:u4 $count * { ... }")
01:43
<&McMartin>
Oh hey, speaking of github
01:43
<&McMartin>
I should push my C++ purge
01:43
<~Vornicus>
Does this mean I need to push my C++ binge?
01:43 Derakon [Derakon@Nightstar-a3b183ae.ca.comcast.net] has quit [Client exited]
01:45
<@Reiv>
ToxicFrog: Explain that sans code, if you don't mind.
01:46
<@Reiv>
I'm not entirely sure what that was meant to be doin'.
01:49
<&ToxicFrog>
Reiv: ok, you know what vstruct is already, right?
01:50
<&ToxicFrog>
So, normally field sizes and repetition counts are hard-coded in the format string.
01:51
<&ToxicFrog>
If you need to vary the size of something at runtime, you splice that into the format string with %d or string concatenation.
01:51
<@Reiv>
nyet
01:51
<&ToxicFrog>
If you need to determine it based on the contents of the thing you're unpacking, well, you do one unpack call to get the size, splice that into a format string, then do another call.
01:51
<@Reiv>
It seems my C++ has dissolved into ectoplasm. Which is sad, because I once wrote a game of chess in the thing.
01:52
<@Reiv>
right
01:52
<&ToxicFrog>
With a backreference, you can say "read a value; now use that value as the basis for something later in the format" in a single call to unpack.
01:52
<&ToxicFrog>
Also, this is Lua, not C++.
01:52
<@Reiv>
OK
01:52
<&ToxicFrog>
As for what it does - are you familiar with python's "struct" lib?
01:52
<@Reiv>
So it's a speed optimisation thing?
01:53
<@Reiv>
... Probably.
01:53
<&ToxicFrog>
A programmer time optimization thing.
01:53
<&ToxicFrog>
It makes the intent of the format string clearer and means you only need one format string for something that is logically a single struct.
01:53
<&ToxicFrog>
The high-level goal for this feature is "make variable-length stuff painless"
01:54
<@Reiv>
Right.
01:54 * McMartin completes The Murderings, though the language stats don't agree.
01:54
<&McMartin>
https://github.com/michaelcmartin/monocle
01:56
<&ToxicFrog>
It will probably also be slightly faster due to e.g. only needing to create one parser context.
01:56
<&ToxicFrog>
...once the readahead code is smart enough to take this stuff into account.
01:56
<&ToxicFrog>
Until then it will actually be slower.
01:56
<@Reiv>
McMartin: ... I recall you writing a moderately lengthly piece on why you shouldn't write your own game language unless you had really good reasons not to use one that is pre-existent and Good Enough.
01:56
<@Reiv>
I see you are now in fact writing a game engine.
01:57
<@Reiv>
What, then, are your Really Good Reasons?~
01:57
<@Namegduf>
XD
02:03
<&ToxicFrog>
Reiv: oh yeah, as for what it is - it's a library for reading and writing binary data formats.
02:03
<&ToxicFrog>
Specifically, it's a language that lets you describe a mapping between a binary format and lua data structures.
02:04
<&ToxicFrog>
It was written because existing libraries for this purpose don't support formats like 24-bit ints, or fixed point values, or bitpacks.
02:11
<@Reiv>
I see.
02:13 Azash_ [ap@Nightstar-339920e6.net] has joined #code
02:13 Netsplit *.net <-> *.split quits: VirusJTG, @Tamber, @gnolam, @himi, Typh|offline, ErikMesoy|sleep, @Zemyla, ^Xires, RichyB, @Azash, (+2 more, use /NETSPLIT to show all of them)
02:13 gnolam_ [lenin@Nightstar-b2aa51c5.cust.bredbandsbolaget.se] has joined #code
02:13 FurryHelix [tamber@furryhelix.co.uk] has joined #code
02:13 Chutzpah [Moltare@583787.FF2A18.190FE2.4D81A1] has joined #code
02:13 gnolam_ is now known as gnolam
02:13 Typherixf [Typherix@Nightstar-7dc8031d.mi.comcast.net] has joined #code
02:13 Netsplit over, joins: himi
02:13 mode/#code [+o gnolam] by ChanServ
02:13 SyloqAgain [Syloq@B4EC54.59F324.016BDA.8CB0A3] has joined #code
02:14 mode/#code [+o himi] by ChanServ
02:14 Netsplit over, joins: VirusJTG
02:14 SyloqAgain is now known as Syloq
02:14 Netsplit over, joins: RichyB
02:14 mode/#code [+o Syloq] by ChanServ
02:15 Netsplit over, joins: ^Xires
02:18 Zemyla [zemyla@Nightstar-8fbb7981.compute-1.amazonaws.com] has joined #code
02:18 mode/#code [+o Zemyla] by ChanServ
02:19 RichyB [RichyB@D553D1.68E9F7.02BB7C.3AF784] has quit [[NS] Quit: Gone.]
02:23 RichyB [RichyB@D553D1.68E9F7.02BB7C.3AF784] has joined #code
02:43 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [[NS] Quit: Program Shutting down]
03:05
<~Vornicus>
TF: I understood what a backreference is, but what's a crossreference?
03:20
<&ToxicFrog>
Vornicus: sorrry, forgot to explain that
03:20
<&ToxicFrog>
A reference in a format string to another previously defined format string
03:21
<&ToxicFrog>
Useful when the same struct type appears in several places as a field in other structs
03:30
<~Vornicus>
aha
03:43 Kindamoody[zZz] is now known as Kindamoody
04:23
<@Alek>
"Did you hear, they found a new Mayan calendar in Mexico?" "Finally they renewed their license."
04:29 ErikMesoy [Erik@A08927.B4421D.FE7332.704AA5] has joined #code
04:33 Derakon [Derakon@Nightstar-a3b183ae.ca.comcast.net] has joined #code
04:33 mode/#code [+ao Derakon Derakon] by ChanServ
04:58
<&ToxicFrog>
Yay, tile info reporting is working
04:58
<&ToxicFrog>
And reveals that I have no goddamn idea why walls aren't always appearing
05:10
< Syka>
ToxicFrog: this sounds like you're making an XCOM mod
05:12
<&ToxicFrog>
No, I'm working on http://funkyhorror.ancilla.ca/toxicfrog/projects/shockmap2/maps/07.html
05:12
< Syka>
ahh
05:12
< Syka>
it was just that xcom sounds like something that "oh god the walls arent there" would be a problem
05:13
< Syka>
ToxicFrog: what is this for? seems doomesque
05:13
<&ToxicFrog>
Yeah, in this case, well
05:13
<&ToxicFrog>
Consider this: http://funkyhorror.ancilla.ca/toxicfrog/projects/shockmap2/maps/03.html
05:13
<&ToxicFrog>
There is meant to be a room in the middle of that empty space!
05:14
< Syka>
to find the room, you must be the room
05:14
< Syka>
become one with the room
05:16
<&ToxicFrog>
This is because a lot of walls are implied by having adjacent tiles with floor/ceiling heights that don't match up, and a lot of the floor/ceiling heights are not as recorded in the map file but must be calculated from that + the slope parameters.
05:16
<&ToxicFrog>
And it's System Shock.
05:16
<@Alek>
'Client ordered a couple IBM Storwize v7000 units, each with a hundred 900GB drives, 20 1TB drives, and 10 400GB SSDs. We were asked what we thought of it. And I could think of nothing more safe to say than "I fapped, thanks."'
05:18
<&ToxicFrog>
SUDDEN BLINDING INSIGHT
05:19 Derakon is now known as Derakon[AFK]
05:20
<&ToxicFrog>
...there are now more walls.
05:20
<&ToxicFrog>
But not all the walls.
05:20
<&ToxicFrog>
Wtf.
05:21 Syka [the@A6D346.0419D1.2A436C.C00996] has quit [Connection closed]
05:23 Syka [the@A6D346.0419D1.2A436C.C00996] has joined #code
05:23 * iospace gives ToxicFrog ALL THE WALLS
05:23
< Syka>
fffff
05:23
< Syka>
i have power back in all my switches
05:23
< Syka>
move server's UPS to it
05:24
<&ToxicFrog>
ADDITIONAL BLINDING INSIGHT
05:24
< Syka>
my microserver is set up to auto shutdown upon power loss
05:24
< Syka>
:C
05:26 * Alek patpats the Syka.
05:26
<&ToxicFrog>
...all the walls in deck 3 now render.
05:26
<&ToxicFrog>
Deck R, however, still thinks that the reactor core is open plan.
05:29 PinkFreud [WhyNot@NetworkAdministrator.Nightstar.Net] has joined #code
05:29 mode/#code [+o PinkFreud] by ChanServ
05:30
<@Alek>
isn't it? XD
05:31 * Alek flashbacks to all the open-plan reactors.
05:31
<@Alek>
Like Cloud City.
05:34
<&ToxicFrog>
Hmm.
05:35
<@Alek>
or the Cryostasis ship, North Wind.
05:35 Typherixf is now known as Typh|offline
05:36
<&ToxicFrog>
Ok, so tile shape 6, slope control 3 tiles are not correctly calculating the tile edges.
05:41 celticminstrel [celticminst@Nightstar-8403057e.dsl.bell.ca] has quit [[NS] Quit: KABOOM! It seems that I have exploded. Please wait while I reinstall the universe.]
05:42 celticminstrel [celticminst@Nightstar-8403057e.dsl.bell.ca] has joined #code
05:42 mode/#code [+o celticminstrel] by ChanServ
05:43 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has joined #code
05:45
<&ToxicFrog>
Progress! All the walls are rendering now, but in the wrong places.
05:48
<~Vornicus>
pff
05:55 * Vornicus pokes at his MOR optimizer some more
05:59
<~Vornicus>
I was trying to... ah, yes. I needed to figure out how to template my optimize routine so it works for the things I'm passing into it
06:01
<@Alek>
"Who could have imagined that the innocent phrase 'user:pass' would change so drastically in a client that supported smilies?"
06:02 Turaiel[Offline] [Brandon@Nightstar-7dc8031d.mi.comcast.net] has quit [Ping timeout: 121 seconds]
06:02 Turaiel[Offline] [Brandon@Nightstar-7dc8031d.mi.comcast.net] has joined #code
06:07 _ [Karono@Nightstar-a97724cd.optusnet.com.au] has joined #code
06:07 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has quit [NickServ (GHOST command used by _)]
06:07 _ is now known as Karono
06:08 Netsplit *.net <-> *.split quits: ErikMesoy, Turaiel[Offline]
06:09 Netsplit over, joins: ErikMesoy, Turaiel[Offline]
06:26 Kindamoody is now known as Kindamoody|afk
07:17 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has quit [[NS] Quit: *.net *.split... kidding]
07:24
<&McMartin>
17:54 <@Reiv> McMartin: ... I recall you writing a moderately lengthly piece on why you shouldn't write your own game language unless you had really good reasons not to use one that is pre-existent and Good Enough.
07:24
<&McMartin>
17:54 <@Reiv> I see you are now in fact writing a game engine.
07:24
<&McMartin>
17:54 <@Reiv> What, then, are your Really Good Reasons?~
07:24
<&McMartin>
Those are, in fact, two different things.
07:26
<&McMartin>
As for "why your own engine" - I like SDL, for the most part. But I don't like *using* SDL.
07:27
<&McMartin>
SDL_mixer in particular is super-finicky and obnoxious
07:29
<&McMartin>
Game Maker's build products are kind of obnoxious to distribute. It's fine as far as it goes, but it invents a language used nowhere else and it's really annoying to use.
07:29
<&McMartin>
I have the relevant experience that means Game Maker is optional for me, but I've never really done the work.
07:30
<&McMartin>
So here I am, Doing The Work, and also doing so in a way that means that I can bind wacky languages to it, and playing with wacky languages is also a thing I like to do.
07:33
<&McMartin>
So depending on what you're asking...
07:34
<&McMartin>
(1) Monocle isn't creating a new language; it's the opposite. It's trying to make every language that exists be usable as a game scripting/development language.
07:34
<&McMartin>
(2) If I even spoke out against writing your own engine, it would have needed to be qualified with "... unless writing an engine was the goal", because game design and game engine writing are two totally different things.
07:41
<&McMartin>
As for "why are you considering abandoning GM:S for Dapper Delver", most of that is that the end results aren't quite as compatible as I'd like, and some of the platforms I'd like to support would require paying a hundred dollars or so. Furthermore, its content creation and organization tools are starting to become inconvenient. Monocle actually started as a set of game maker interoperation tools.
07:42 himi [fow035@D741F1.243F35.CADC30.81D435] has quit [Operation timed out]
07:42 * Vornicus yays for McM
07:44
<&McMartin>
I suspect the thing you're remembering is http://mcmartin.livejournal.com/125009.html - this also includes the reasons to not use it~
07:47 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has joined #code
08:17 celticminstrel [celticminst@Nightstar-8403057e.dsl.bell.ca] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
09:09 AverageJoe [evil1@Nightstar-4b668a07.ph.cox.net] has joined #code
09:37 AverageJoe [evil1@Nightstar-4b668a07.ph.cox.net] has quit [[NS] Quit: Leaving]
10:10 You're now known as TheWatcher
10:17 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
10:17 mode/#code [+o himi] by ChanServ
10:27 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has quit [Ping timeout: 121 seconds]
10:43 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has joined #code
11:02 Syloq [Syloq@NetworkAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
11:24 Syloq [Syloq@B4EC54.59F324.016BDA.8CB0A3] has joined #code
11:24 mode/#code [+o Syloq] by ChanServ
11:37 Kindamoody|afk is now known as Kindamoody
12:11 cpux [cpux@Nightstar-98762b0f.dyn.optonline.net] has quit [Connection reset by peer]
12:48 ktemkin is now known as ktemkin[awol]
13:08 Kindamoody is now known as Kindamoody|out
13:35 Orth [orthianz@3CF3A5.E1CD01.B089B9.1E14D1] has joined #code
13:36 Orthia [orthianz@3CF3A5.E1CD01.B089B9.1E14D1] has quit [Ping timeout: 121 seconds]
13:39 Orth [orthianz@3CF3A5.E1CD01.B089B9.1E14D1] has quit [[NS] Quit: Going dooooown...]
13:39 Orthia [orthianz@3CF3A5.E1CD01.B089B9.1E14D1] has joined #code
13:39 mode/#code [+o Orthia] by ChanServ
13:55 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving]
14:19
<&ToxicFrog>
I figured out what I did wrong on the drive to work today, and it is so, so, so stupid and obvious that it's a good sign I should have gone to bed two hours earlier than I did.
14:21
<@iospace>
heh
14:21 * iospace is currently without a test board!
14:45 * ToxicFrog left his decompressed ARCHIVE.DAT on his laptop :(
15:04 celticminstrel [celticminst@Nightstar-8403057e.dsl.bell.ca] has joined #code
15:04 mode/#code [+o celticminstrel] by ChanServ
15:18
<@iospace>
ToxicFrog: yay us!
15:23 * ToxicFrog sends the OSPO 26 patches to review :D
15:27
<&ToxicFrog>
(the fruits of that labour over the weekend, BTW: http://funkyhorror.ancilla.ca/toxicfrog/ss1/maps/00.html )
15:35 james2 [james@B19C04.153C2B.1E1EC6.676148] has joined #code
15:38 james2 [james@B19C04.153C2B.1E1EC6.676148] has quit [[NS] Quit: leaving]
15:39 FurryHelix is now known as Tamber
15:39 mode/#code [+o Tamber] by ChanServ
16:07 Syka [the@A6D346.0419D1.2A436C.C00996] has quit [Ping timeout: 121 seconds]
16:12 Syka [the@949DD1.9BD845.03F6C2.8AF39B] has joined #code
17:16 Syka [the@949DD1.9BD845.03F6C2.8AF39B] has quit [[NS] Quit: leaving]
17:16 Syka [the@Nightstar-fcd32cba.iinet.net.au] has joined #code
18:38 _ [Karono@Nightstar-a97724cd.optusnet.com.au] has joined #code
18:38 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has quit [Connection reset by peer]
18:38 _ is now known as Karono
19:09 Karono [Karono@Nightstar-a97724cd.optusnet.com.au] has quit [[NS] Quit: zzz]
19:42 Derakon[AFK] is now known as Derakon
19:44 ktemkin[awol] is now known as ktemkin[work]
19:57 Kindamoody|out is now known as Kindamoody
20:56
<&ToxicFrog>
Woot! I now have permission to ignore the review process when pushing updates to vstruct.
20:57
< Azash_>
\o/
20:57 Azash_ is now known as Azash
21:06 Kindamoody is now known as Kindamoody[zZz]
21:18
< jeroud>
What's the review process?
21:33
<&ToxicFrog>
jeroud: send diffs to the OSPO, wait for them to approve (usually takes <1h).
22:04 ErikMesoy is now known as ErikMesoy|sleep
22:10 * Derakon still maintains an iron-fisted grip over Pyrel's repository.
22:10
<&Derakon>
Mostly because nobody can follow the %$*&ing style guide.
22:11 * ToxicFrog cuts file size by 60% by emitting JSON and assembling the HTML at runtime.
22:52 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
22:54 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code
23:22 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code
23:22 mode/#code [+qo Vornicus Vornicus] by ChanServ
23:57 You're now known as TheWatcher[T-2]
--- Log closed Tue Jul 09 00:00:38 2013
code logs -> 2013 -> Mon, 08 Jul 2013< code.20130707.log - code.20130709.log >

[ Latest log file ]