code logs -> 2010 -> Sat, 07 Aug 2010< code.20100806.log - code.20100808.log >
--- Log opened Sat Aug 07 00:00:31 2010
00:02 Derakon [Derakon@Nightstar-1ffd02e6.ucsf.edu] has quit [[NS] Quit: Leaving]
00:03 * TheWatcher ponders trying to do the TIFF writer tomorrow
00:04 You're now known as TheWatcher[T-2]
00:04 * RichardBarrell 's opinion on image formats is now: when in doubt, if you don't need an alpha channel, just write PPM and let (Graphics|Image)magick sort it out. :)
00:05
<@McMartin>
Some of us write software we'd like other people to actually use ;)
00:06
<@McMartin>
And if you're dumping generated images, PNG is currently pretty much the mandatory go-to format, methinks.
00:06 You're now known as TheWatcher[zZzZ]
00:06
< RichardBarrell>
It iiiiis, but have you *seen* how braindead simple PPM is?
00:07
<@McMartin>
Ease of development and ease of use are not the same thing
00:07
< RichardBarrell>
Significantly less trouble than bothering to read libpng's man page.
00:07
<@McMartin>
This is why you have someone else do it for you and use their code~
00:07
<@McMartin>
In this case, TW~
00:08
< RichardBarrell>
There's a smallish set of use cases where the program's going to spend much longer being written than used. Braindead simple formats are good for these.
00:09
<@McMartin>
Yes; this is why I qualified it in my initial statement
00:09
<@McMartin>
Albeit a little glibly
00:09
<@McMartin>
"Some of us write software we'd like other people to actually use" -> "PPM is inappropriate for software being distributed as an end-user product"
00:10
< RichardBarrell>
I tell you it'd be fine if we could just browbeat BillG into having PPM support added to PAINT.EXE
00:10
<@McMartin>
If you're writing a 2D game and want in-game screenshot (or after-action bragscreen or whatever) support, it really ought to be in PNG.
00:10
< Namegduf>
If your reasoning about good practices defaults to the cases where it's okay to be lazy, if it isn't qualified you'll end up being too lazy
00:11
< Namegduf>
Which is generally, but not always, worse than not being as lazy as you could be.
00:11
<@McMartin>
I resent having to open IrfanView or Paint even to convert even from BMP in that case, and I don't think I'm alone.
00:11
<@McMartin>
(JPG is a... tricky... case.)
00:11
< RichardBarrell>
*As* lazy as I could be would be to write PPM and then fork()/exec() convert.
00:12
< Namegduf>
I think "could be" has an automatic "advisably" applied to it.
00:12
< RichardBarrell>
Heheh. ^^
00:13
<@McMartin>
RichardBarrell: If you're a batch program that you know will only need to be run on machines that can be made to have ImageMagick installed, yes, your life is a lot easier
00:16
< RichardBarrell>
Anyways.
00:16
< RichardBarrell>
How's UQM going?
00:17
<@McMartin>
As far as I know, the latest trunk has some netplay tweaks that are still being tested
00:17
< RichardBarrell>
I'd assumed you were still pretty heavily involved.
00:18
<@McMartin>
I am, but activity is low, so I'd have to look up recent history.
00:18
< Rhamphoryncus>
*perk* UQM?
00:18
<@McMartin>
Latest change is last month: "Fixed ship picking order after a simultaneous destruction"
00:18
<@McMartin>
Since the game treats a shofixti that kills someone with the glory device as having lost, even though he hasn't.
00:19
< RichardBarrell>
Arguably. :)
00:19
< RichardBarrell>
Well, not according to *his* definition of "winning", anyway.
00:21
<@McMartin>
The game's - general agreement as to what qualified winning, losing, or drawing in a situation where both fleets are entirely wiped out was not matched by the game's own code for indicating the winner.
00:22
<@McMartin>
Like, when it shows the final screen, the ship destroyed by the glory device is rendered as intact and points are scored for it. That's just incorrect.
00:22
< RichardBarrell>
Yes, I get the concept of why it's a bug.
00:23
< RichardBarrell>
Does the game actually bail out in the middle of processing the frame as soon as it's decided that one of the ships is dead?
00:29 RichardBarrell [mycatverbs@Nightstar-689c9c54.cable.virginmedia.com] has left #code ["ERC Version 5.3 (IRC client for Emacs)"]
00:48 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has quit [[NS] Quit: Z?]
01:00 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code
01:10 cpux- [Moo@Nightstar-20a84089.dyn.optonline.net] has joined #code
01:11 cpux [Moo@Nightstar-20a84089.dyn.optonline.net] has quit [Ping timeout: 121 seconds]
01:11 cpux- is now known as cpux
01:12 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Connection closed]
01:19 * Tarinaky grumbles something about being bored :/
01:43 Derakon[AFK] is now known as Derakon
01:50
< Tarinaky>
'sup Derakon.
02:03
<@Vornicus>
McM: how does it score that situationnow?
02:07
<@McMartin>
Vorn: X-s out both ships, post patch, I believe.
02:07 * McMartin hasn't actually tested it
02:07 * McMartin is *supposed* to be working on the installer and repackaging for 0.7, but FotH has been higher priority when he has time and energy to do hobbywork
02:07
<@McMartin>
Which is getting rarer of late =(
02:24 Derakon is now known as Derakon[AFK]
04:09
< Tarinaky>
It's quiet in here :x
04:12 * Vornicus devours Tarinaky's mind.
04:14
< Tarinaky>
Vornicus: What makes you think there's anything in there? :/
04:16
<@Vornicus>
It was, I admit, a light snack.
04:17
< Tarinaky>
That's more than I'd have expected to find.
04:19 * Vornicus discovers that his timer code is Filled With Lies.
04:19
<@Vornicus>
This isn't all that surprising, it's hackulicious, but...
04:23
<@Vornicus>
It's made up of a bunch of table cells; the cells fill in one at a time. Unfortunately this means that the velocity of cell filling depends on the width the browser has given to the cells.
04:25
<@Vornicus>
...which, in Chrome at least, means that the first so many cells get pixels first.
04:30
<@Vornicus>
So! Tear that out, see about using a single table cell and modifying the width instead.
04:33
< Alek>
wait AHAHHAA I never knew about this!
04:34
< Alek>
apparently, there's a nice little trick you can use to close a window without using the menu or the red x.
04:34
< Alek>
double-click the icon in the top left of the window.
04:34
< Alek>
and apparently it's existed since win 3.11
04:34 * Alek flops over.
04:36
< Tarinaky>
I'm having a lot of trouble with my CPU overheating when I try to play (graphical) games so I was wondering if anyone had any suggestions as to how I can design projects to sidestep this issue. :/
04:38
< Tarinaky>
Specifically the problem is that if one or both cores spend an extended period of time without going idle the temperature rises and my motherboard has an insanely low threshold before it tries to solve the issue by clocking down dynamically... Which results in games being unplayable.
04:38
<@Vornicus>
CPU overheating in realtime computing is primarily caused by using a busywait.
04:42
<@Vornicus>
Avoid busywaits and you won't have any problems.
04:42
<@Vornicus>
--unless you actually /use/ all 17ms.
04:42
<@Vornicus>
Per rame.
04:46
< Tarinaky>
I'm struggling to see how to avoid a busy wait.
04:47
< Tarinaky>
Also. Totally doesn't help I'm having so much trouble getting excited about the projects atm. :/
04:51
< Rhamphoryncus>
Tarinaky: Override the normal speed scaling to be at a level that doesn't overheat
04:51
< Tarinaky>
Rhamphoryncus: I'm underclocking the processor as much as I can without it refusing to boot :/
04:52
< Rhamphoryncus>
... is your fan broken?
04:52
< Tarinaky>
Rhamphoryncus: Nope.
04:52
< Rhamphoryncus>
whole room is a giant pool of sweat?
04:52
< Tarinaky>
No. Although the problem is noticeably worse then it is, as you'd expect.
04:52
< Tarinaky>
*worse when it is
04:53
< Rhamphoryncus>
What's do the temperature sensors say?
04:53
< Tarinaky>
When?
04:53
< Rhamphoryncus>
idle and under load
04:53
< Tarinaky>
Idle, about 51.
04:54
< Tarinaky>
Under load it creeps up to 59 and then the Motherboard starts ramping down the speed to keep it there.
04:54
< Rhamphoryncus>
What kind of CPU?
04:54
< Rhamphoryncus>
Wait, and this is after you've underclocked it?
04:55
< Tarinaky>
Correct.
04:55
< Rhamphoryncus>
What if you take the side panel off?
04:56
< Tarinaky>
It's an almost 3-year old AMD x2, I've forgotten what its designation is but the motherboard thinks it's rated to run at 3GHz.
04:56
< Rhamphoryncus>
*nod*
04:57
< Tarinaky>
Rhamphoryncus: Helps. I bought an extra case fan which would have helped except I had to raise the clock speed by 0.2GHz to get it to boot (presumably due to power issues :/) which meant the effect was zero-sum.
04:57
< Rhamphoryncus>
You can also try pointing a table fan at the side of the case when the panel is removed
04:57
< Tarinaky>
But I can't remove the side of the case if I have the fan installed.
04:57
<@Vornicus>
Perfect.
04:57
< Rhamphoryncus>
wire's not long enough to lie the panel down?
04:57
< Tarinaky>
Rhamphoryncus: Correct.
04:58
< Rhamphoryncus>
that blows
04:58
< Rhamphoryncus>
Anyway, I'd bet on your CPU fan being misinstalled
04:58
< Tarinaky>
That's a possibility given I installed it.
04:58
< Rhamphoryncus>
Maybe it was removed once and reinstalled, ruining the paste?
04:58
< Tarinaky>
But a friend of mine said it looked correct.
04:58
< Tarinaky>
Rhamphoryncus: I've not removed it :/
04:59
< Rhamphoryncus>
Did you use aftermarket paste or just the pad that came with it?
04:59
< Tarinaky>
I don't have any paste to replace the thermal paste that came preapplied.
04:59
< Tarinaky>
The pad that came with it.
04:59
< Rhamphoryncus>
Should be fine then
04:59
< Tarinaky>
Yah, I know.
05:00
< Tarinaky>
I'm trying to make it last till I can find gainful employment.
05:00
< Rhamphoryncus>
PSU fan working?
05:00
< Tarinaky>
Rhamphoryncus: Yes.
05:00
< Tarinaky>
Rhamphoryncus: The motherboard's temperature sensor is reporting only 38.
05:00
< Rhamphoryncus>
Extra case fan shouldn't affect the CPU at all... 'sodd
05:00
< Rhamphoryncus>
hmm that's reasonable. Mine's at 40?C
05:02
< Tarinaky>
I'd try replacing the paste but I don't really know what I'm doing.
05:03 * Vornicus gets his timer working properly.
05:03
< Rhamphoryncus>
I had to learn how to do it recently. Oddly enough it was about the same as the slightly messed up pad I had on before
05:04
< Tarinaky>
I've got time to spare to practise programming but I just can't get excited about doing it like I did back in January :/
05:06
<@Vornicus>
Hokay. Now...
05:06
< Tarinaky>
It's kinda frustrating.
05:07
< Rhamphoryncus>
Tarinaky: Well, even with that overclocking there's still probably speed scaling depending on load
05:07
< Rhamphoryncus>
I use "CPU Frequency Scaling Monitor 2.30.0" applets in gnome to override my speed if I want to
05:07
< Tarinaky>
Rhamphoryncus: I believe I disabled that when I manually set the speed to underclock it.
05:07
< Rhamphoryncus>
some of that stuff you disable could actually make it worse
05:09
< Tarinaky>
Well, it didn't.
05:09
< Tarinaky>
At least, not overall. It takes longer before it starts to crapout now.
05:10
< Rhamphoryncus>
ie if the CPU normally can do 2.2 and scale back to 1.1, but you fix it at 1.6, it'd be better to have both and do a userspace fix to 1.1
05:12
< Tarinaky>
Yes, well. I don't know how to do that.
05:12
< Tarinaky>
It is, seriously, better this way than it was. I used to have trouble with it overheating doing simple desktop actions in Linux for example. :/
05:12
< Tarinaky>
Now I can use YouTube!
05:13
< Tarinaky>
Which was a pretty big success >.>
05:13
< Tarinaky>
Although a few other video streaming sites can still kill it :/
05:17
< Rhamphoryncus>
Oh, disable one core
05:19
< Tarinaky>
I've not seen that option in my BIOS.
05:19
< Rhamphoryncus>
It's not. Linux boot option
05:19
<@Vornicus>
How to tell a good improvement: it requires less code, works faster and in more situations, and gets it more right.
05:19
< Tarinaky>
Ah. Not really very helpful - all my games are Windows based.
05:19
< Rhamphoryncus>
doh
05:20
< Tarinaky>
(inb4 someone says nethack, don't have overheating issues with curses :p)
05:20
< Rhamphoryncus>
http://en.kioskea.net/faq/616-multicore-cpu-how-to-disable-a-core
05:42 AnnoDomini [annodomini@Nightstar-1fac3e84.adsl.tpnet.pl] has joined #code
05:42 mode/#code [+o AnnoDomini] by Reiver
05:48
< Tarinaky>
Now all I need is a game I actually want to play, lol >.>
05:48
< Tarinaky>
'sup Anno.
05:53
<@AnnoDomini>
Blargh.
06:11 AnnoDomini is now known as AD[VikingFestival]
06:15 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has joined #code
06:18 * Alek tosses Taki some old DOS and Win 3.11 games from underdogs or whatnot.
06:18
< Alek>
you might like something.
06:18
< Alek>
depends on your tastes, really.
06:21 AD[VikingFestival] [annodomini@Nightstar-1fac3e84.adsl.tpnet.pl] has quit [Ping timeout: 121 seconds]
06:28
<@McMartin>
X-COM!
06:28
<@Vornicus>
(hidden movement)
06:28
<@McMartin>
"I think you just destroyed the foundations of the US economy over a pile of corn dogs." "What, again?"
06:30
< Orthia>
??
06:30
<@Vornicus>
sounds like sam & max
06:37
<@McMartin>
Yup
06:41
< Tarinaky>
Alek: I think I've pretty much played or looked at all the good games on HotU.
06:42
< Alek>
so look around elsewhere.
06:42
< Alek>
have you played the Dark Forces series?
06:43
< Alek>
which becomes the Jedi Knight series as of game 2. :P
06:46
< Tarinaky>
Unless it runs in dosbox, wine or native linux it's a pain in the arse to play for me.
06:46
< Tarinaky>
And even then, the former two tend to be a pain >.>
06:46
< Tarinaky>
TBH I'm bored and can't really be bothered to do anything :/
06:54
<@McMartin>
Tarinaky: Native Linux: Altitude (PvP 2D airplane combat). Aquaria (Metroid-style underwater adventure).
06:55
< Tarinaky>
I've got Aquaria. I didn't like it :/
06:55
< Alek>
the first runs in dosbox, the second can probably play in either dosbox or wine.
06:55
< Alek>
the third, I dunno yet.
06:56
< Alek>
actually, even the last one is fairly old (circa millennium), so should be playable in wine.
06:56
< Tarinaky>
Never underestimate WINE's ability to suck.
06:56
< Alek>
hrm. I keep thinking I should look up Aquaria, just to see what the fuss was all about.
06:57
<@McMartin>
Aquaria's opening is slow, and its ending is weak, but its midgame is excellent, imo.
06:58
<@McMartin>
Wing Commander Privateer is now confirmed to work in DosBox.
06:58
<@McMartin>
Recently, even.
07:00
< Alek>
uhhuh. $20. not now, thanks.
07:00
< Tarinaky>
Alek: Aquaria?
07:02
< Alek>
yeah.
07:10
< Alek>
WHOA Gratuitous Space Battles Collectors Pack for under $7 this weekend
07:10
< Alek>
SO grabbed!
07:12
< Alek>
$6.24 to be precise
07:14
< Alek>
woo. almost 50 games on steam now.
07:14
< Alek>
counting episodes and expansions, though.
07:22
<@McMartin>
Heh.
07:22
<@McMartin>
Too bad GSB is still basically a screensaver.
07:22
<@McMartin>
But I have very poor impulse control and I wanted to finish my Myst collection anyhow.
07:23
< Alek>
there's expansions and mods, and more in progress.
07:23
< Alek>
there's a fantasy version in the works. >_>
07:23 * Vornicus has 43, not counting the second copy of the four Civ4 games, but counting things that I'd never actually play - Day of Defeat, which came with his HL game.
07:23 * McMartin just cracked 100.
07:23
< Alek>
well, there were a few I only got because they were part of a pack.
07:24
< Alek>
like Battlestations.
07:24
< Alek>
or Hitman.
07:24
<@McMartin>
Defcon and Multiwinia are on that list for me.
07:24
< Alek>
or Kane & Lynch. :P
07:24 * McMartin is a big indie game fan, so his vast collection reflects this.
07:25
<@McMartin>
Of course, the fact that, frex, Sam and Max Across Time And Space counts as five doesn't hurt either.
07:25
< Alek>
heh
07:25
< Alek>
I only pick up deals, mostly.
07:25
<@McMartin>
Me too, but I've been doing this for... two years now? Three?
07:25
<@McMartin>
It adds up.
07:25
< Alek>
cheap games, big packs, and preorder deals.
07:26
< Alek>
I started in June. so there. :P
07:26
<@McMartin>
I think the only game I've paid full price for in my list is Mass Effect 2.
07:26
< Alek>
I'm waiting for the Mass Effect bundle to go on sale again. I missed it last time around. -_-
07:26
<@McMartin>
Heh
07:26 Derakon[AFK] is now known as Derakon
07:26
<@McMartin>
I seem to be the only person on Earth who liked ME2's systems better than ME1's.
07:26
<@McMartin>
Probably because I don't actually like RPGs.
07:26
< Alek>
heh.
07:27
< Alek>
they're DIFFERENT.
07:27
< Orthia>
McM: I think the biggest complaint was the ammunition.
07:27
< Alek>
of course different people will prefer them differently.
07:27
< Orthia>
ME1 made a Bold and Dramatic Move to discard the system of ammunition
07:27
< Alek>
I myself prefer ME1, but oh well.
07:27
< Orthia>
It was, frankly, brilliant.
07:27
<@McMartin>
And replaced it with sitting on your ass~
07:27
< Orthia>
... then ME2 put it back in~
07:27
< Alek>
er.
07:27
< Alek>
ME1 didn't make that move.
07:27
<@McMartin>
In ME2 I spent much more time murdering people.
07:27
< Alek>
KOTOR did.
07:27
< Alek>
XD
07:28
< Orthia>
I can understand upping the action quotent.
07:28
< Orthia>
Simplifying the inventory might also have been good.
07:28
<@McMartin>
Because in ME2 the ammo restrictions meant I was rapid-switching weapons and getting all Dante on my foes.
07:28
< Alek>
imho, ME1 is basically KOTOR with a reskin and a new plot.
07:28
< Alek>
:P
07:28
< Alek>
but still good.
07:28
<@McMartin>
And never running out of ammo unless I did something dumb, or unless I felt like being Australian.
07:28
<@McMartin>
I call ME1 the Real SC3. =P
07:28
< Orthia>
...?
07:28
< Alek>
crocodile hunter? >_>
07:28
< Alek>
... SC3?
07:29
<@McMartin>
Star Control 3.
07:29
< Alek>
hrm.
07:29
< Alek>
never played that series.
07:29
<@McMartin>
They're strictly speaking Spiritual cousins, but hodamn.
07:29
< Alek>
don't have the SLIGHTEST clue what they're like or about.
07:29
< Orthia>
... you make a decent point there, actually.
07:29
<@McMartin>
Both of them are basically "let's take every science fiction cliche in the history of for-fucking-ever and try to make them all consistent"
07:29
< Orthia>
Fly around, do stuff on planets, defeat Unstoppable Big Bad.
07:29
<@McMartin>
Orthia: Don't forget blue-skinned inexplicably humanoid-female sex machines~
07:30
<@McMartin>
Who are psychic~
07:30
< Orthia>
And hawt~
07:30
< Orthia>
hudda hudda
07:30
<@Vornicus>
And have tentacle hair.
07:30
< Orthia>
I don't care about savegames for ME2, all my characters bang the blue chick~
07:30
<@McMartin>
Also, ME1's plot involving Cthulhoid hypertech monsters nomming the galaxy and you showing them what for is basically SC3's plot without the massive retardation.
07:31
<@McMartin>
(Oh, and let's not forget resurrecting an ancient race that doomed the galaxy shortly before humans became Relevant!)
07:33
<@McMartin>
(Actually, the Syreen's primary traits are split between the Asari and the Quarians)
07:34
<@McMartin>
Vornicus: The Syreen don't have tentacle hair, though
07:34
<@Vornicus>
Well, okay.
07:39
< Orthia>
Still cool, though.
07:52
< Rhamphoryncus>
Anybody experienced in doing per-team colouring for units? Only method I can think of is to have a greyscale mask for the chosen teamcolour, applied over the unit's image. That'd probably require a separate image file though
07:54
<@Vornicus>
That's how I'd do it.
07:55
<@Vornicus>
If you need two or more colors, use separate channels.
07:55
< Rhamphoryncus>
ie the red and the blue in the mask file?
07:55
<@Vornicus>
Yeah.
07:56
< Rhamphoryncus>
Sounds like the best option
07:56
< Rhamphoryncus>
The other question is whether to prerender them together or to do so on the fly
07:58
< Rhamphoryncus>
Both have obvious performance issues
07:59
< Rhamphoryncus>
Then again I also want zoom, so I probably have big issues anyway ;)
07:59
<@Vornicus>
Prerender them to textures, I say. You take up more memory that way, sure, but trying to do this on the fly is just crazy, especially with multiple channels.
08:01
< Rhamphoryncus>
When zoomed out there will be a wide variety, but all small
08:01
< Rhamphoryncus>
When zoomed in there will only be a few at a time, but large
08:04 Derakon is now known as Derakon[AFK]
08:06 Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has quit [Connection closed]
08:19
< Zed>
Err.
08:20
< Zed>
You could just do greyscale units
08:20
< Zed>
And then render them in whatever color.
08:20
< Zed>
a la OMF 2097
08:26
<@McMartin>
Palette rewriting in this day and age forces your effective hardware power back 15 years. :grump:
08:31
<@Vornicus>
Yeah, don't do it that way.
08:53
<@McMartin>
http://hkn.eecs.berkeley.edu/~mcmartin/upgrade.png
09:26 Reiver [reaverta@ServerAdministrator.Nightstar.Net] has quit [Ping timeout: 121 seconds]
09:31 Reiver [reaverta@ServerAdministrator.Nightstar.Net] has joined #code
09:31 mode/#code [+qo Reiver Reiver] by ChanServ
09:39 You're now known as TheWatcher
09:49 Attilla [Obsolete@Nightstar-e47f0cc2.threembb.co.uk] has joined #code
09:49 mode/#code [+o Attilla] by Reiver
10:11 Zed [Zed@Nightstar-e4835f03.or.comcast.net] has quit [Client closed the connection]
10:17 * TheWatcher decides he's stared at enough image specs and libraries for now, decides to work on the file cache class
10:38 Zed [Zed@Nightstar-e4835f03.or.comcast.net] has joined #code
11:28 Vornicus is now known as Vornicus-Latens
11:43 Rhamphoryncus [rhamph@Nightstar-bbc709c4.abhsia.telus.net] has quit [Client exited]
11:53 You're now known as TheWatcher[afk]
12:04 Attilla [Obsolete@Nightstar-e47f0cc2.threembb.co.uk] has quit [[NS] Quit: ]
12:44 gnolam [lenin@Nightstar-38637aa0.priv.bahnhof.se] has joined #code
13:10 cpux- [Moo@Nightstar-20a84089.dyn.optonline.net] has joined #code
13:13 cpux [Moo@Nightstar-20a84089.dyn.optonline.net] has quit [Ping timeout: 121 seconds]
13:13 cpux- is now known as cpux
14:12 You're now known as TheWatcher
16:41 Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has joined #code
17:19 Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has quit [Client closed the connection]
17:24 Derakon[AFK] is now known as Derakon
17:33 Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has joined #code
17:47 Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has quit [Connection closed]
17:49 Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has joined #code
18:08 RichardBarrell [mycatverbs@Nightstar-689c9c54.cable.virginmedia.com] has joined #code
18:13 * TheWatcher eyes this
18:13
<@TheWatcher>
... why am I getting different SHA256 results from openssl on different platforms?!
18:15
< RichardBarrell>
Different input or buggy implementation.
18:16
< RichardBarrell>
Probably different input. Are you sure your files' contents are actually identical? Say, try comparing with sha1 and md5 too.
18:19
<@TheWatcher>
Exact same code on both, processing the same string: http://pastebin.starforge.co.uk/325
18:21
< RichardBarrell>
Oh! Haha.
18:21
< RichardBarrell>
The initial portion *is* the same.
18:22
< RichardBarrell>
Your buffer is 512 bits long. You're printing 512 bits of output, but you SHA256 only produces 256 bits of output. :)
18:22
< RichardBarrell>
SHA512_DIGEST_LENGTH <-- :D
18:23
< RichardBarrell>
It's not surprising that the output differs between platforms - you're printing uninitialised memory.
18:23
< RichardBarrell>
Easy mistake to make.
18:24 * TheWatcher facepalm
18:24
<@TheWatcher>
And this is why I shouldn't code half-asleep
18:24
<@TheWatcher>
Thanks
18:25
< RichardBarrell>
Nnnno. You're perfectly allowed to *code* half-asleep.
18:25
< RichardBarrell>
It's just that you're not allowed to QA or deploy while half-asleep. ;)
18:25
< RichardBarrell>
Less than no trouble at all. ^_^
18:26
<@TheWatcher>
I think I will go do somethign less braintaxing for a while, until the tea kicks in...
18:33 Stalker [Z@26ECB6.A4B64C.298B52.D80DA0] has quit [Ping timeout: 121 seconds]
19:03 Stalker [Z@3A600C.A966FF.5BF32D.8E7ABA] has joined #code
19:35 Tarinaky is now known as TotallyNotTarinakyHonest
19:36 TotallyNotTarinakyHonest is now known as Tarinaky
20:32 * McMartin eyes. "Pykour"?
20:34
< RichardBarrell>
Sounds like a snake jumping from rooftop to rooftop.
20:34
< Namegduf>
I like the sound of it.
20:35
< RichardBarrell>
Where'd the name come up? What is, was, or will be this "Pykour?"
20:42 Stalker [Z@3A600C.A966FF.5BF32D.8E7ABA] has quit [Ping timeout: 121 seconds]
20:57 AnnoDomini [annodomini@Nightstar-4d66b42a.adsl.tpnet.pl] has joined #code
20:57 mode/#code [+o AnnoDomini] by Reiver
21:38
< Tarinaky>
Can recommend a dungeon generation algorithm that's easy to implement?
21:38
< Tarinaky>
s/dungeon/maze
21:38
< Tarinaky>
I have a vague recollection of there being one called Hunter something.
21:38
< Tarinaky>
But I can't remember the full name.
21:42
<@Vornicus-Latens>
Mazes... okay here's what you do: Start by choosing a random cell, and put all its edges in a list. Choose one of those edges randomly, delete it from the maze, and add all the edges on that cell to the list... EXCEPT that any edge that's already /in/ the list, remove. So, technically, you're doing symmetric difference.
21:43
< Tarinaky>
I don't quite see how that works.
21:45
<@Vornicus-Latens>
Er, there's two things here. The /maze/, and the /edge list/. The maze is what you delete edges in to make the maze. The edge list is simply the edges that are available to cut through.
21:45
<@Vornicus-Latens>
When you cut through a wall, you add another cell to your maze; this then makes more cells available.
21:46 Vornicus-Latens is now known as Vornicus
21:47
<@Vornicus>
BUT if two cells that you've visited are next to each other, you don't want to cut through taht wall (because of how this is working); this edge is not available, so if it's already /in/ the edge list, you must remove it.
21:47
<@Vornicus>
And it's store time, I'll explain more later.
21:54
< Tarinaky>
Quick, I'm feeling vaguely positive about life and want to capitalise on it by securing a success.
21:54
< Tarinaky>
:p
21:58 Thaqui [Thaqui@27B34E.D54D49.F53FA1.6A113C] has quit [Client closed the connection]
22:15
<@Vornicus>
So where was I.
22:16
<@McMartin>
RichardBarrell: To answer your question from yesterday, the game would not X out the destroyed ship of the non-Shofixti if the game ended as the result of a glory device, even if the explosion went through with a double-kill.
22:21
<@Vornicus>
Okay. 1. pick a (arbitrary, not necessarily random) cell in your maze. Add each edge (so long as it's not also maze-edge, which we'll deal with separately) for that cell to a set of candidate edges. 2. pick a random edge from the candidates, and delete it in the maze. take the cell that that reveals and symmetric-difference its (non-maze-edge) edges with the set of candidate edges. 3. go to
22:21
<@Vornicus>
2, until there are no edges in the candidate set.
22:29
<@Vornicus>
Did that make sense, tarinaky?
22:29
< Tarinaky>
I think I understand now.
22:29
<@Vornicus>
ok good.
22:29
< Tarinaky>
Problem is, I don't think it's what I wanted.
22:30
< Tarinaky>
I wanted something with rooms and corridors.
22:30
<@Vornicus>
Ah.
22:31
<@Vornicus>
Well, okay, here's another alternative. This is Torchlight's method: 1. generate a path via random walk, making sure not to overlap. 2. load this path up with prebuilt rooms and corridors.
22:31
<@Vornicus>
With a bit more work you can make it so you have branching paths and stuff.
22:34
<@Vornicus>
One of your better bets, imo, is to look into AD&D1e's DMG, which had a random dungeon generator.
22:35
< Tarinaky>
I'm less interested in populating it atm.
22:35
< Tarinaky>
I just want to play around with drawing.
22:37 McMartin [mcmartin@Nightstar-dd07698f.pltn13.sbcglobal.net] has quit [[NS] Quit: Kernel upgrade]
22:39 * Vornicus randomly googles "pykour". Holy shit, I've /never/ seen a single word come up with fewer results.
22:40
< Tarinaky>
It's a word?
22:40
<@Vornicus>
I'm just going off McM's thing.
22:51
<@Vornicus>
But, generally. Your task in generating random dungeons is to build a path (possibly branching) and then fill the path in with prebuilt or otherwise-generated rooms.
22:51
< RichardBarrell>
Nethack has a pretty good dungeon generator.
22:52
<@AnnoDomini>
How does NH do it?
22:52
< RichardBarrell>
I don't know. I only know what the results look like. :)
22:52
< RichardBarrell>
I haven't read the maze generator, but most of Nethack's source code is surprisingly pleasant to look at, so I suspect that it will be too.
22:52
<@AnnoDomini>
(I know what it looks like, I've ascended thrice. I'm interested in the how.)
22:52
<@AnnoDomini>
I see.
22:57
< RichardBarrell>
I have a really terrible program in the other emacs buffer which generates fully-connected, the-right-hand-rule-works-in-here mazes.
22:58
< RichardBarrell>
Awww.
22:59
< RichardBarrell>
That pastebin discriminates against robots.
22:59
< RichardBarrell>
http://pastebin.starforge.co.uk/326
23:00
< RichardBarrell>
Please ignore my laziness in just hardcoding BOTTOM and RIGHT instead of actually passing them around.
23:01
<@TheWatcher>
Yeah, I kinda object to my pastbin being used by spambots, so I addeded the bot check >.>
23:02
< RichardBarrell>
TheWatcher: I was just hoping that you'd make it accept "No" too, on the assumption that I might be an honest Martian.
23:03
<@TheWatcher>
Heh
23:08 AnnoDomini [annodomini@Nightstar-4d66b42a.adsl.tpnet.pl] has quit [[NS] Quit: FATIGUE.]
23:08
< RichardBarrell>
One particularly nice thing about Nethack's source is that there's an NH wiki with the entire sources marked up.
23:13 You're now known as TheWatcher[T-2]
23:15 You're now known as TheWatcher[zZzZ]
23:23 McMartin [mcmartin@Nightstar-dd07698f.pltn13.sbcglobal.net] has joined #code
23:23 mode/#code [+o McMartin] by Reiver
23:50 Tarinaky [Tarinaky@Nightstar-f349ca6d.plus.com] has quit [Connection closed]
--- Log closed Sun Aug 08 00:00:32 2010
code logs -> 2010 -> Sat, 07 Aug 2010< code.20100806.log - code.20100808.log >