code logs -> 2013 -> Fri, 10 May 2013< code.20130509.log - code.20130511.log >
--- Log opened Fri May 10 00:00:46 2013
00:04 Derakon [Derakon@Nightstar-a3b183ae.ca.comcast.net] has quit [Ping timeout: 121 seconds]
00:04 Derakon [Derakon@Nightstar-a3b183ae.ca.comcast.net] has joined #code
00:04 mode/#code [+ao Derakon Derakon] by ChanServ
00:27 Derakon [Derakon@Nightstar-a3b183ae.ca.comcast.net] has quit [Ping timeout: 121 seconds]
00:28 Derakon [Derakon@Nightstar-a3b183ae.ca.comcast.net] has joined #code
00:28 mode/#code [+ao Derakon Derakon] by ChanServ
00:30 himi [fow035@0C0840.B22E58.E3471A.E028A1] has quit [Ping timeout: 121 seconds]
01:00 You're now known as TheWatcher[T-2]
01:18 Kindamoody[zZz] is now known as Kindamoody
01:24 You're now known as TheWatcher[zZzZ]
01:58 himi [fow035@D741F1.243F35.CADC30.81D435] has joined #code
01:58 mode/#code [+o himi] by ChanServ
02:44 ToxicFrog|W`rkn is now known as ToxicFrog
02:45 VirusJTG_ [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code
02:46 VirusJTG_ [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [[NS] Quit: Program Shutting down]
02:47 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [Ping timeout: 121 seconds]
02:48 Turaiel[Offline] is now known as Turaiel
03:18 RichyB [richardb@58734C.5279B7.EA7DF8.107330] has quit [[NS] Quit: >:3 This is BunThulhu. Copy him into your quit message to help him take over the Internet.]
03:18 RichyB [richardb@58734C.5279B7.EA7DF8.107330] has joined #code
04:03 RichyB [richardb@58734C.5279B7.EA7DF8.107330] has quit [Ping timeout: 121 seconds]
04:29
<~Vornicus>
...depth first is better. There are situations where finding /one/ solution tells me about the validity of that puzzle; if one of the strands touches itself or there's a hole, then we know that the puzzle isn't a valid one because of multiple or gappy solutions.
06:36 Derakon is now known as Derakon[AFK]
07:12 celticminstrel [celticminst@Nightstar-e83b3651.cable.rogers.com] has quit [[NS] Quit: And lo! The computer falls into a deep sleep, to awake again some other day!]
07:34 AverageJoe [evil1@Nightstar-4b668a07.ph.cox.net] has joined #code
07:37 syksleep is now known as Syk
07:38 Turaiel is now known as Turaiel[Offline]
08:19 AverageJoe [evil1@Nightstar-4b668a07.ph.cox.net] has quit [[NS] Quit: Leaving]
08:42 You're now known as TheWatcher
08:45 Kindamoody is now known as Kindamoody|afk
09:14
<~Vornicus>
(because in the absence of holes, breadth-first reaches all the solutions as its very last steps through the solution tree; depth first will hit one pretty early on)
10:02 himi [fow035@D741F1.243F35.CADC30.81D435] has quit [Ping timeout: 121 seconds]
11:07 RichyB [richardb@58734C.5279B7.EA7DF8.107330] has joined #code
11:20
<@EvilDarkLord>
Vornicus: Are you making a search framework or something?
11:22 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code
11:22
<~Vornicus>
Yeah. I'm searching for all the numberlink puzzles of particular size
11:23
<~Vornicus>
(such that there are no non-trivial links, only one solution, and that solution has no empty squares)
11:35
<~Vornicus>
One component of this is the solver: I need to find the soluion(s). Reason for this is twofold: obviously I need to find the ones with solutions, but the existence of even an invalid solution says that you may be able to add another number pair to the puzzle.
11:39
<~Vornicus>
I chose depth-first because it gets me the first solution as early as possible. If a solution manages to meet certain conditions - the existence of a hole, or a strand that touches itself - I know that 1. the board given is not a good board but 2. there might be more complicated boards starting with this one that are good boards.
12:06 * TheWatcher eyes work, eyes this database schema
12:06 * TheWatcher sighs
12:10
<@TheWatcher>
I wonder what it's like to develop systems and /not/ have the requirements change. Got so used to that happening that I'm instinctively trying to predict all likely changes and set up everything accordingly.
12:16 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving]
12:23 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
12:23 mode/#code [+o himi] by ChanServ
15:48 ToxicFrog is now known as ToxicFrog|W`rkn
17:06 Derakon [chriswei@Nightstar-a3b183ae.ca.comcast.net] has joined #code
17:06 mode/#code [+ao Derakon Derakon] by ChanServ
17:10 * Derakon ponders display code for Pyrel, and how that interacts with the engine and the "content code".
17:11
<&Derakon>
The game engine makes few assumptions about how the game works -- mostly that there are creatures and items and creatures can carry/equip items, stuff like that.
17:11
<&Derakon>
Game logic is all handled in the "content code", which currently exists solely as a series of scripts that are invoked when trigger conditions are met.
17:11
<&Derakon>
So e.g. monster AI is a script that is invoked when the monster's update() function is called.
17:12
<&Derakon>
This works fine as long as I'm permuting the game world, but it falls down a bit when it comes time to permute the display.
17:12
<&Derakon>
For example, ideally I'd like a script that describes what stats should be displayed on-screen (e.g. player HP, STR/INT/WIS/DEX/CON/CHA, etc.).
17:13
<&Derakon>
But I can't think of a way to do that that's not hacky...
17:14
<&Derakon>
I mean, I could allow the UI layer to "reserve" chunks of the display for custom overlays, and then attach a script to the player creature that tells a reserved chunk what to show -- but then I've made assumptions about how the display layer works.
17:14
<&Derakon>
(Ideally I'd like to be able to replace the display layer with e.g. a first-person 3D renderer without having to change any code elsewhere)
17:15
<&Derakon>
On the flipside, I could have the display layer just inherently assume that there are stats it needs to show...but then if the game content changes, the display code also has to be changed.
17:15
<&Derakon>
Is there even a good solution here? Mumble mutter...
17:27
<&Derakon>
Mph, I guess the fundamental issue is that I need either display code that knows about the game, or game code that knows about the display, and both options are somewhat distasteful. Damn.
17:28
<&ToxicFrog|W`rkn>
I don't think there is - the display layer needs to know what stats etc it is to show, because this will be different depending on what interface you're using.
17:28
<&ToxicFrog|W`rkn>
Even if the "important" stats are the same, how and when they're displayed will be different depending on whether you're doing a touchscreen interface vs. tty vs KBM tiled vs. 3d or whatever
17:28
<&ToxicFrog|W`rkn>
Yeah, pretty much that
17:28
<&ToxicFrog|W`rkn>
Of those, I think display code needing to know about the game is the lesser of those evils
17:28
<&Derakon>
You're probably right.
17:29
<&Derakon>
It saves having to create a bunch of interfaces between the game and display layers just so that the game can tell the display how to show things.
17:29
<&Derakon>
Must go to a meeting now. BBL.
18:04 Turaiel[Offline] is now known as Turaiel
18:17
<&Derakon>
Always nice to have one of these group meetings where I actually understand what people are talking about. >.>
18:18 Kindamoody|afk is now known as Kindamoody
18:52 Syk is now known as syksleep
19:20 Kindamoody is now known as Kindamoody[zZz]
19:44 Derakon [chriswei@Nightstar-a3b183ae.ca.comcast.net] has quit [[NS] Quit: leaving]
20:12
<&ToxicFrog|W`rkn>
TIL that if syslogd hangs you are completely, irrevocably fucked.
20:13
<@froztbyte>
rofl
20:13
<@froztbyte>
it's pretty fun, isn't it?
20:13
<@froztbyte>
there's a couple of things in systems which we take for granted, and when they 'splode..
20:13
<@froztbyte>
(another fun one: have a broken switchroot that doesn't pivot right)
20:16
< RichyB>
ToxicFrog|W`rkn: really? Aww.
20:16
< RichyB>
I thought you were supposed to communicate with syslogd so that messages would get dropped instead.
20:16
< RichyB>
Or is that only for when you're talking to a remote syslogd?
20:16
< RichyB>
Er, communicate with syslogd via UDP.
20:19
<&ToxicFrog|W`rkn>
RichyB: well, here's the issue.
20:19
<&ToxicFrog|W`rkn>
If syslogd is still up, but hung, attempts to write to /dev/log will block forever.
20:19
<&ToxicFrog|W`rkn>
(if you're talking to a remote syslog it's fine, the request will time out)
20:19
<&ToxicFrog|W`rkn>
Anyways, this means that anything that attempts to log events will also block forever.
20:20
<&ToxicFrog|W`rkn>
Like your mail server.
20:20
<&ToxicFrog|W`rkn>
Or sshd.
20:20
<&ToxicFrog|W`rkn>
Or sudo
20:20
<&ToxicFrog|W`rkn>
In particular, if you don't already have a root shell, you now have no way of getting one.
20:27
< RichyB>
Bummer.
20:27
< RichyB>
Is there a rationale for blocking the process trying to write to /dev/log rather than throwing the message away?
20:28
< RichyB>
Wait, back up. How did you even manage to hang syslogd?
20:28
<&ToxicFrog|W`rkn>
And I don't have /proc/sysrq-trigger user-writeable, for obvious reasons.
20:28
<&ToxicFrog|W`rkn>
I have no idea! /dev/log has a pretty big buffer, I have no idea how long it was hung for before stuff actually stopped working.
20:28
< RichyB>
:(
20:29
<&ToxicFrog|W`rkn>
The rationale is that UNIX domain sockets are meant to lossless, like named pipes. If you want nonblocking or timeout operation you have to explicitly set it up.
20:29
<&ToxicFrog|W`rkn>
For syslogd specifically, you don't want to lose potentially important messages because syslogd is waiting on disk as it flushes 40k of debug output from sshd -vvv or something.
20:31
< RichyB>
Yeah, but /dev/log is a ohhh wait, it's a socket.
20:32
< RichyB>
I misread the output of "ls" and thought that it was a character device.
20:32
< RichyB>
If it were the latter then it would've been possible to have a kernel policy for sometimes dropping messages so that the system can be brought back.
20:34
<&ToxicFrog|W`rkn>
As it is I think I'm going to have to wait until I get home and then hook up a keyboard and sysrq it.
20:34
< RichyB>
Ah well. Control-Alt-F1 to get to a real VTY, then control-alt-delete to get the system to cleanly reboot? Save your filesystem.
20:34
< RichyB>
Oh, remote machine.
20:34
<&ToxicFrog|W`rkn>
Yeah. And I don't think I have CAD set up to reboot it.
20:35
<&ToxicFrog|W`rkn>
CASrREISUB should work, though.
20:49 You're now known as TheWatcher[afk]
20:56 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has joined #code
20:56 mode/#code [+qo Vornicus Vornicus] by ChanServ
21:12 ToxicFrog|W`rkn [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [Operation timed out]
21:23 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has joined #code
21:23 mode/#code [+ao ToxicFrog ToxicFrog] by ChanServ
21:50 Vornicus [vorn@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: Leaving]
21:55 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [Ping timeout: 121 seconds]
22:31 You're now known as TheWatcher
22:32 RichyB [richardb@58734C.5279B7.EA7DF8.107330] has quit [Ping timeout: 121 seconds]
22:34 himi [fow035@Nightstar-5d05bada.internode.on.net] has quit [Ping timeout: 121 seconds]
22:47 himi [fow035@Nightstar-5d05bada.internode.on.net] has joined #code
22:47 mode/#code [+o himi] by ChanServ
22:50 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has joined #code
23:08 ToxicFrog [ToxicFrog@ServerAdministrator.Nightstar.Net] has quit [[NS] Quit: ZNC - http://znc.in]
23:19 VirusJTG [VirusJTG@Nightstar-09c31e7a.sta.comporium.net] has quit [Client closed the connection]
23:19 VirusJTG [VirusJTG@2B12AA.572255.206A2A.901581] has joined #code
23:31 You're now known as TheWatcher[T-2]
23:32 RichyB [richardb@Nightstar-86656b6c.cable.virginmedia.com] has joined #code
23:39 You're now known as TheWatcher[zZzZ]
23:47 Derakon[AFK] is now known as Derakon
23:50 Turaiel is now known as Turaiel[Offline]
--- Log closed Sat May 11 00:00:00 2013
code logs -> 2013 -> Fri, 10 May 2013< code.20130509.log - code.20130511.log >

[ Latest log file ]