#nuvie@irc.freenode.net logs for 5 Aug 2007 (GMT)

Archive Today Yesterday Tomorrow
Nuvie homepage

[01:11:18] --> Kirben has joined #nuvie
[01:33:00] <-- Kirben has left IRC ()
[01:41:46] --> Yuv422 has joined #nuvie
[01:45:55] --> Kirben has joined #nuvie
[01:57:08] <luteijn> MD / SE / U6 all have different size portraits
[01:58:05] <Yuv422> Ouch
[01:58:13] <Yuv422> I guess that figures
[02:00:16] <luteijn> And of course nuvie is hardcoded for U6.. improving that part now..
[02:00:29] <Yuv422> cool, thanks luteijn
[02:00:41] <Yuv422> I think MD has overlays on portraits too
[02:04:54] <Yuv422> brb system restart.
[02:05:02] <-- Yuv422 has left IRC ()
[02:10:11] --> Yuv422 has joined #nuvie
[02:34:56] <luteijn> overlays on portraits? like a scribbled on mustache and glasses?
[02:35:59] <Yuv422> the portrait borders
[02:36:15] <Yuv422> or are they part of the portrait?
[02:39:50] <luteijn> the portraits have a little circle.. The whole UI for SE and MD needs a lot of work anyway, SE/MD use different tiles for it than U6
[02:43:23] <Yuv422> yeah
[03:03:00] <luteijn> maybe data/spells.nsl should have the lua script path (instead of the script for the old magic system)
[03:06:36] <Yuv422> I might merge the contents of that file into the scripting itself
[03:08:20] <luteijn> the magic.lua script already has most of the contents, (just not the comments). But looks like at the moment spells.nsl is still used to let the engine side of things know what spells are available, what reagents they need etc.
[03:08:36] <Yuv422> yes
[12:24:20] <Yuv422> luteijn: I think there is a small typo in converse.cpp
[12:26:00] <Yuv422> line 453
[12:26:15] <Yuv422> gametype=NUVIE_GAME_U6
[12:27:05] <Yuv422> it was causing my version to crash when talking to a second unmet npc
[12:28:26] <Yuv422> not too sure why it causes the crash as gametype should be NUVIE_GAME_U6 anyway
[12:28:42] <Yuv422> maybe gametype is somthing else in this class.
[12:33:52] <Yuv422> looks like the single '=' is making gametype 0
[12:34:08] <Yuv422> so it bombs on the next talk
[12:34:53] <Yuv422> which is strange as the NUVIE_GAME_U6 define is 1
[12:37:42] <Yuv422> I've finally made Obj a proper class
[12:37:45] <Yuv422> \:-)
[12:37:48] <Yuv422> :-)
[12:38:04] <Yuv422> and moved it into it's own set of files
[12:48:07] <Kirben> Current Nuvie CVS crashes on startup, back trace at http://members.optusnet.com.au/wormmon/nuvie.txt (Not very helpful, due to corruption occuring).
[12:48:50] <Yuv422> Hey Kirben
[12:48:54] <Yuv422> that's no good
[12:53:04] <Yuv422> I'm not seeing any startup crash on my PPC copy
[12:53:48] <Yuv422> I'll see if I can install Mingw on my xp machine tomorrow
[12:53:57] <wjp> no crash on startup for me either
[12:54:10] <Yuv422> Hey wjp
[12:54:14] <wjp> hi
[12:55:22] * Yuv422 hates heap smashing bugs
[12:56:46] <wjp> I see a couple of valgrind warnings about updateAmbience, but those have been in there for ages
[12:57:01] <wjp> (IIRC, they check the in-game time before it has been set or something)
[12:57:16] <Yuv422> ah k
[12:57:26] <Yuv422> that doesn't sound healthy
[13:02:42] --> SB-X has joined #nuvie
[13:02:49] <Yuv422> hi SB-X
[13:03:56] <SB-X> hello!
[13:04:41] <SB-X> "<luteijn> overlays on portraits? like a scribbled on mustache and glasses?" <- hehe
[13:04:52] <Yuv422> ;-)
[13:04:53] <SB-X> that's what i was thinking of too
[13:05:05] <SB-X> something along those lines
[13:05:32] <Yuv422> Kirben: are you running any save games?
[13:05:51] <SB-X> so yeah I read the log, is this crash different then the other one?
[13:05:51] <Yuv422> maybe something in your current save is causing the crash
[13:06:22] <Yuv422> the other crash was at shut down IIRC
[13:06:33] <SB-X> oh, that's right
[13:06:35] <Yuv422> and my crash was due to a typo in Converse
[13:07:06] <Kirben> No saved games.
[13:07:13] <Yuv422> ah k
[13:11:03] <Yuv422> Kirben: do you get any output to stdout.txt?
[13:11:32] <SB-X> at the very least it should tell us at what point it crashes
[13:12:15] <Yuv422> it might get a little further if it doesn't flush on every printf
[13:12:52] <SB-X> without more information i can only think of the standard "try with sound disabled", which you probably already did :)
[13:13:19] <SB-X> does nuvie print anything to stderr?
[13:13:38] <Yuv422> don't think so
[13:13:54] <SB-X> ok
[13:14:28] <Yuv422> I'm off to bed now
[13:14:44] <Yuv422> I'll try to have a look at it in win32 tomorrow
[13:14:46] <Kirben> Last stdout.txt:
[13:14:47] <Kirben> Init Magic: Tremor I: vpy
[13:14:53] <Yuv422> hmm
[13:15:23] <Yuv422> next line should be Loading Original Game:
[13:16:20] <Yuv422> a lot happens at that point
[13:16:22] <Yuv422> ;-)
[13:18:26] <SB-X> we need more messages
[13:18:41] <Yuv422> maybe it is a problem with MD or SE
[13:18:50] <SB-X> to add more output messages, i mean
[13:19:14] <Yuv422> maybe a file or directory requirement has crept in
[13:19:27] <SB-X> it still needs u6_save afaik
[13:19:35] <SB-X> but that would print an error
[13:19:41] <Yuv422> yeah
[13:20:00] <Yuv422> ok I'm off now
[13:20:02] <Yuv422> cya
[13:20:08] <SB-X> bye
[13:20:19] <-- Yuv422 has left IRC ()
[14:11:45] <-- Kirben has left IRC (Read error: 110 (Connection timed out))
[15:02:20] <-- SB-X has left IRC ("*casts gate travel*")
[15:36:07] <luteijn> a few things (Conversation related for the most part) use fprintf to print to stderr, most debug is just using plain printf, so to (usually buffered) stdout. I'd prefer stderr for debug, and stdin/stdout for commands from the 'console' directly to the program..
[19:33:39] --> SB-X has joined #nuvie
[21:12:36] <luteijn> ould it be a good or a bad idea to convert all the printf(-statements to fprintf(stderr,-statements?
[21:23:25] <SB-X> hi, i think it's a good idea, but i'd ask yuv first
[21:24:58] <SB-X> I had the same idea as you, that errors and debug output (pretty much all the output Nuvie has now) should go to stderr, so I started adding those fprintf statements, but stopped when I noticed that the standard for Nuvie was to put everything to stdout.
[21:25:28] <SB-X> either way, having everything go to the same buffer makes it easier to find errors
[21:25:56] <luteijn> Actualyl to have both stderr and stdout can cause the messages to be printed out of order ;)
[21:26:24] <SB-X> I mean direct all output to one or the other, rather than use both.
[21:26:56] <luteijn> I think we both meant the same thing.
[21:27:08] <SB-X> oh ok :)
[21:27:26] <SB-X> Maybe if Nuvie gets a console in the future, it's output should go to stdout and everything else go to stderr.
[21:27:57] <SB-X> otherwise for a graphical application, the application window itself is "stdout"
[21:28:23] <luteijn> When I made the first magic engine, I used console input. It's a lot easier to debug that way..
[21:28:43] <SB-X> why? does that get logged anywhere?
[21:30:37] <luteijn> mostly to enter e.g. a target moonphase or name of a spell.
[21:31:28] <luteijn> instead of figuring out how to use the msgscroll for input
[21:31:45] <SB-X> i mean why is it easier to debug
[21:31:59] <SB-X> also i was going to ask you a question about Armageddon the other day, but have forgotten it
[21:33:09] <luteijn> well for debugging the scripts I'd interact with the console instead of spending a lot of time to make a 'graphical' interface to the new functionality.
[21:34:16] <luteijn> If it was important you'll probably remember it sometime (probably when it's too late )
[21:35:06] <SB-X> I forgot it a while ago, only remembered that I was going to ask. :)
[21:36:17] <luteijn> I might not even know the answer anyway
[21:38:58] <SB-X> nonsense, you know everything about the arcane arts
[21:43:35] <luteijn> There's not much I know about the armageddon spell anyway. You get it from the wisps, it's the first spell of the 8th circle so probabl quality of the scroll is 16*7 + 0. Invocation is VCBM, and you need one of each reagent. It kills everyone but LB and yourself, turning them into neat little equipment piles if I recall correctly. I wonder if it also sets a flag to prevent random encouters or just deletes all eggs and if it affects wisps...
[21:49:38] <SB-X> Thanks for the knowledge dump!
[21:50:53] <SB-X> Do you think Nuvie should allow entering mantra words in any order?
[21:52:39] <luteijn> the original allowed you to, and I think I made a comment about that somewhere..
[21:52:39] <SB-X> I found a bunch of old Nuvie shots on an old disk that I was planning to upload.
[21:53:55] <SB-X> ?
[21:54:06] <luteijn> the interesting thing is that in game.exe the letters for the incantation are given in the 'right' order, so not sorted into alphabetic order.
[21:58:08] <luteijn> screenshots go into web/images/shots/full/ and a 320x200 version in /web/images/shots
[21:59:09] <luteijn> also update shots.dat; the format should be obvious from the already present entries, except maybe the Category letter.
[22:02:38] <luteijn> IIRC the categories are A(rchive-only) F(rontpage-material) and D(evelopment), although only F is checked for. IF they are old shots, you might not want to appear on the frontpage..
[22:03:34] <SB-X> did you mean not to upload a fullsize version of the cga screenshot?
[22:04:16] <SB-X> (in other words is that the resolution you run nuvie at, or did you just forget to upload both)
[22:04:36] <luteijn> Well, that shot was made at x1 scaling, so the full version is the same as the 320x200 one. Actualyl I think all of the shots currently are at x1
[22:04:45] <SB-X> yep, most anyway
[22:04:53] <luteijn> this is becasue originally they all rotated to the frontpage.
[22:05:00] <SB-X> I don't know how you see anything at that scale. I have to run Nuvie at at least 2x scale to do anything useful.
[22:05:53] <luteijn> Well, I often play over VNC and just scale the whole desktop if needed.
[22:07:48] <SB-X> oh, that's convenient
[22:08:21] <SB-X> perhaps yuv uses a 32" monitor
[22:09:48] <luteijn> I think he plays at x2 too, his CGA shots were at x2 I think. actually a 14" monitor would work, as long as you run at 320x200.. Worked fine 15 years ago ;)
[22:12:39] <SB-X> Good point, I hadn't thought of that. Nuvie desperately needs a fullscreen option.
[22:14:52] <luteijn> maybe we can add all kinds of resizing options where you drag the window bigger, and the map gets stretched. And/or you could detach the status areas.. .
[22:15:32] <luteijn> probably better fix the basic functionality first though.
[22:19:45] <SB-X> yeah, im working on keybinder for event and moving input actions to another file right now
[22:21:52] <SB-X> I thought about how to go about detaching the status views a few weeks ago. You can only create one window with SDL, but we can fork multiple instances of Nuvie to show the views.
[22:22:11] <SB-X> Like you said that's nothing to worry about for a while.
[22:22:42] <luteijn> I think I was busy with the blue moongates, but stopped because I wanted the event system to mature a little before hacking anything in to control moongate appearance and disappearance (depending on which moons are in the sky). I think moongates already work, just don't get pulled up by the moons, so there's only one open (at spirituality shrine)..
[22:23:29] <luteijn> ;) -- if (!player) printf("Argh!!\n");
[22:24:08] <luteijn> that's from SongAdPlug.cpp.
[22:25:03] <SB-X> heh
[22:25:18] <luteijn> it happily continues afterwards.. But I guess this won't ever be triggered because the line above altead dereferences player ;)
[22:25:20] <SB-X> that's kind of appropriate for Ultima but its not very helpful there
[22:25:29] <SB-X> because of that
[22:25:40] <SB-X> that reason*
[22:26:45] <luteijn> if it printed Argh first, then crashed on a null pointer dereference it might be a little more clear; then again, it's printf, so probably wouldn't come out of the buffer before crashing..
[22:28:51] <SB-X> did you ever work on U6O some more?
[22:32:08] <luteijn> Only a little, I have the client source for windows, but I can't really get it to link properly. Probably need a different compiler or something. MS too confusing for me.. I remember using Borland C years ago, now it's all Visual this, .NET.
[23:00:10] <luteijn> ./conf/misc.h:#define PERR(x) printf(x)
[23:06:36] <SB-X> that's only used by Configuration
[23:11:07] <luteijn> but it would be useful everywhere.. I guess it could be defined in nuvieDefs.h instead, and then used everywhere. (and printing to stderr)
[23:15:36] <SB-X> yup
[23:17:05] <luteijn> moved. now to replace all the fprintf(stderr, instances once again, to PERR(
[23:20:49] <SB-X> k, that's all that's needed now
[23:20:51] <SB-X> for now*
[23:21:21] <SB-X> i mean, you dont need to change it to print to stderr yet
[23:21:29] <luteijn> in the future maybe add a debuglevel (with a cut-off level controllable form console)
[23:22:12] <SB-X> that's the plan :)
[23:22:40] <SB-X> maybe everything that goes to the MsgScroll now should be duped to stdout
[23:25:07] <luteijn> that would make sense now...
[23:51:45] <luteijn> lua scripting uses io.write to write information to stdout.