#uwadv@irc.freenode.net logs for 28 Dec 2002 (GMT)

Archive Today Yesterday Tomorrow
Underworld Adventures homepage


[00:26:53] <-- wjp has left IRC ("Zzzz...")
[02:31:02] <-- Dark-Star has left #uwadv ()
[02:51:26] --> Eldron has joined #uwadv
[03:31:32] <Coren_> Auuugh! Why is it people keep being SO fscking aggressive about MP3?!?
[10:54:44] --> yot has joined #uwadv
[11:52:08] <Eldron> eh?
[12:01:12] --> wjp has joined #uwadv
[12:01:12] --- ChanServ gives channel operator status to wjp
[13:23:31] <-- Eldron has left IRC (Read error: 54 (Connection reset by peer))
[14:19:50] --> vividos has joined #uwadv
[14:19:50] --- ChanServ gives channel operator status to vividos
[14:19:58] <vividos> hi there
[14:22:02] <wjp> hi
[14:24:54] --> Dark-Star has joined #uwadv
[14:29:24] * vividos guesses the Infinity Engine is from Baldur's Gate
[14:29:35] * wjp nods
[14:29:42] <wjp> why?
[14:31:12] <vividos> just read it on #exult
[14:31:20] <vividos> (or rather the logs :)
[14:34:55] <vividos> wjp, did you already commit the "make install" changes?
[14:35:31] <wjp> no changes were necessary :-)
[14:35:45] <vividos> ah right :)
[14:35:53] <wjp> the problem turned out to be a bug in automake, not in the Makefile.am's :-)
[14:36:20] <vividos> yes, I remembered your mail, that are the best changes :)
[14:36:38] <wjp> for some obscure reason it used different logic for determining where the scripts go and where the binaries go
[14:37:21] <wjp> so it put the lowercase scripts in /usr/bin/linux, and uwadv itself in /usr/bin.. *sigh* :-)
[14:40:34] <vividos> :)
[14:41:15] <vividos> automake is weird but most of the time it seems to work
[14:43:39] <vividos> afk
[14:58:34] --> phlask has joined #uwadv
[14:58:34] --- ChanServ gives channel operator status to phlask
[14:58:40] <vividos> back
[14:58:44] <vividos> hi phlask!
[14:58:52] <phlask> hi vividos
[14:59:22] <phlask> I'm glad to see that the project is still very much alive (or at least this channel is)
[14:59:28] <phlask> :)
[14:59:50] <vividos> well, the channel is more alive than the CVS
[14:59:57] <vividos> s/alive/active
[15:00:10] <wjp> hi
[15:00:17] <phlask> hi wjp
[15:00:29] <vividos> how are you doing, phlask?
[15:00:57] <phlask> I'm doing fine. Still a bit busy with another project and my new job though
[15:01:56] <vividos> a new job is always a good thing
[15:02:21] <phlask> well, not always - but in this case it is indeed
[15:02:47] <phlask> So what are you up to right now?
[15:03:48] <vividos> I'm currently finishing my diploma thesis. when that's done, I can get back to coding
[15:06:04] <phlask> ah ok. I can indeed imagine that getting a dimploma is somewhat more important than adding a few lines of code to uwadv
[15:08:28] <phlask> darn... are there any Win32API gurus here by any chance?
[15:16:20] <vividos> yes :) and yes, I'm a bit familiar with win32api
[15:17:09] <phlask> ah good. I've run into a nasty problem on a personal project.
[15:17:11] <Coren_> Hey! MICHAEL! You're still alive! :-)
[15:17:49] <vividos> Coren_: of course :)
[15:18:13] <Coren_> Aren't theses fun? : -)
[15:18:37] <phlask> A message box is shown for a modeless dialog box and I want to activate the messagebox (i.e.: make it the currently active window)
[15:19:15] <phlask> when I hit the taskbar button for the dialog there is no problem, Windows figures out the the dialog is disabled and activates the messagebox instead
[15:19:27] <Coren_> Have you guys seen my new font? :-)
[15:20:01] <wjp> Coren_: trying to increase your survey size to 6? :-)
[15:20:05] <phlask> but I can't do it from code. ActivateWindow and alike will activate the dialog even though it is disabled
[15:20:06] * Coren_ hcuckles.
[15:20:39] <Coren_> wjp: Hey, I *like* my font! :-)
[15:21:20] <Coren_> wjp: I'm working on armor and the paperdoll right now, but that's not quite ready for primetime yet.
[15:21:39] <vividos> phlask: well, there are at least 3 functions to bring windows to the top or something. I'll look into MSDN ...
[15:22:21] <phlask> yes I know... I've tried setforegroundwindow & setactivewindow
[15:22:33] <vividos> there also is BringWindowToTop()
[15:22:50] <Coren_> vividos: Heh. When MS will assimilate the proper technology, you win32 guys won't have to bother-- you'll just be linked to the Collective knowledge. :-)
[15:23:07] <vividos> phlask: oh, and there is SetWindowPos, too :)
[15:23:08] <phlask> yes tried that one too... they all activate the dialog instead of the messagebox
[15:24:01] <Coren_> wjp: I've simplified showing off the new font anyways; I put a screenshot on the low page. :-)
[15:24:11] <vividos> maybe the HWND for the messagebox can be found out - when calling ::MessageBox() with the dialog's hwnd, it should be a child of it
[15:25:23] <phlask> Well.. that is true, but I can't imagine that Windows itself would go through all this trouble just to activate the right dialog when clicking a taskbar button
[15:25:57] <vividos> and you could try to use MB_APPLMODAL or one of the other values
[15:26:16] <phlask> for the messagebox you mean?
[15:26:21] <vividos> yes
[15:26:58] <phlask> the thing is... when I activate the dialog using the taskbar (or task manager) it works fine... I just can't simulate the same bahaviour in my own code
[15:27:42] <vividos> hmm, right
[15:28:16] <vividos> maybe a ShowWindow() for the main dialog works. after all I guess the OS does something like that
[15:28:37] <Coren_> Doesn't MS describe the behavior of their window manager in detail in some document?
[15:28:44] <phlask> Hmm, I could try that
[15:29:07] <phlask> Coren_: yes... this is just a user error (the user being me)
[15:33:02] <phlask> ShowWindow doesn't seem to do the trick
[15:35:12] <vividos> even with different show params?
[15:35:53] <phlask> yeah... I've tried SW_SHOW and SW_SHOWNORMAL
[15:36:10] <phlask> the other ones don't make sense in this scenario
[15:36:43] <vividos> what about SW_SHOWNA or SW_RESTORE?
[15:37:15] <vividos> of course you could monitor the window messages for your dialog with Spy++ and figure out what the differences are
[15:37:27] <phlask> no I can't... it is a dialog
[15:37:46] <phlask> but I can of course spy on some other window
[15:39:40] <vividos> you should be able to spy on dialogs, as they have a hwnd
[15:41:42] <phlask> I agree... I SHOULD be able to do that - but I can't
[15:43:16] <vividos> what exactly is the problem?
[15:44:37] <phlask> Spy++ won't allow me to view the message stream of dialogs
[15:45:13] <vividos> but it finds the hwnd of the dialog?
[15:45:20] <phlask> of course
[15:46:06] <phlask> Weird... I think that this used to work just fine
[15:47:11] <vividos> maybe it's because the messagebox is already showing?
[15:47:23] <phlask> Nah... I can't spy on any dialog
[15:47:35] <vividos> that indeed is strange
[15:47:39] <phlask> must be some new WinXP feature I guess - or I ought to get me a new version of Spy++
[15:48:01] <vividos> ah, xp :) might be the reason why it doesn't work
[15:48:25] <phlask> it ain't a big deal anyhow... I can just view what messages a regular window receives when it is activated
[15:52:40] <phlask> ow well... I'll figure this out some other time then. It is saturday after all. Thanks for the help so far vividos
[15:54:19] <phlask> I'm out of here too for now... see you guys!
[15:55:32] <-- phlask has left IRC ()
[16:09:59] <vividos> have to go again. bye!
[16:11:17] <wjp> bye
[16:11:45] <-- vividos has left IRC ("~\o He was a skater boy / she said "see you later boy" / He wasn't good enough for her ~\o")
[16:12:56] <wjp> lol
[16:30:26] <Coren_> Hey, he stole that from me, typo included! :-)]
[16:31:42] <Coren_> AAAAAAUGH!
[16:31:55] <Coren_> I *hate* *hate* *hate* *hate* the Granny 3d format.
[16:32:09] <Coren_> Well, actually, I might not hate it so much if I had documentation.
[17:06:10] --> wjp_ has joined #uwadv
[17:06:14] <-- wjp has left IRC (Read error: 104 (Connection reset by peer))
[17:06:38] --- wjp_ is now known as wjp
[17:06:40] --- ChanServ gives channel operator status to wjp
[17:07:53] <Coren_> I almost, but not quite, manage to have weapons stick to the end of the skeleton. :(
[17:08:07] <Coren_> Armor works fine, though.
[17:54:35] --> Eldron has joined #uwadv
[17:54:46] <Coren_> Hey Eldron
[17:55:57] <Eldron> hey
[18:02:49] <Coren_> Is this true? A.B.B-1 = A where A and B are nonsingular matrices and B-1 is the inverse of B?
[18:03:23] <Coren_> Or is it only true for A.B-1.B = A?
[18:05:29] <wjp> both are true
[18:05:39] <wjp> inverses are by definition two-sided inverses
[18:05:41] <Coren_> That's what I tought.
[18:05:54] * Coren_ doesn't get why his code doesn't work, then.
[18:06:06] <wjp> B is square, I hope? :-)
[18:06:13] * Coren_ chuckles.
[18:06:33] <Coren_> IIRC, any non-square matrix is by definition singular, no?
[18:07:19] <wjp> not sure; I don't think singular was defined in my linalg classes for non-square matrices
[18:07:40] <Coren_> Singular means that for AB there cannot be a matrix X for which ABX=A
[18:07:55] <Coren_> B being singular means...
[18:08:04] <wjp> then there's still non-square matrices that are non-singular
[18:08:40] * Coren_ tries to figure out a way this can be true with non-square matrices and fails.
[18:09:13] <wjp> say that A is a 1x1 matrix
[18:09:31] <wjp> and B a 2x1 matrix { { 1 }, { 0 } }
[18:09:48] <wjp> then let X be the 1x2 matrix { { 1, 0 } }
[18:09:58] <wjp> oh, I mixed up B and X I think
[18:10:07] <Coren_> Yes, but I get your point.
[18:10:50] <Coren_> There is something wrong with my definition, I think, because I'm fairly certain that { { 1 }, { 0 } } should be singular.
[18:11:04] <wjp> in my linalg book singular is simply defined as not invertible
[18:11:05] <Coren_> But this all dates soooo long ago.
[18:11:15] <wjp> and non-square matrices cannot be invertible
[18:11:50] <wjp> (A is invertible: there is a C st AC = CA = I)
[18:12:03] <Coren_> I would expect your book is correct and my brain got confused between the axiom and a conclusion derived from it. :-)
[18:12:25] <wjp> it's all just definitions, anyway
[18:12:29] * Coren_ nods.
[18:12:40] <wjp> it's what you do with them that matters :-)
[18:12:52] <Coren_> Oh, wait, I think I see a nastyevilmeanbug in my invert()
[18:13:08] * wjp hands Coren_ a flyswatter
[18:13:23] <wjp> (hmm, is that an english word? :-) )
[18:13:45] <Coren_> Yes.
[18:14:08] <Coren_> Ah. Silly me.
[18:14:32] <Coren_> I think I found my problem; I forget my invert() function inverts the matrix in place. :-)]
[18:15:12] <wjp> ah, that could cause interesting problems :-)
[18:16:26] <Coren_> I should probably write myself a goot matrix library one day instead of reinventing the wheel everytime I do some 3d code. :-)
[18:16:56] <wjp> sounds like a good idea :-)
[18:16:56] <Coren_> Wooowoo! It works.
[18:17:25] <Coren_> Note to self: if I want to use B and B-1, make a copy of B before inverting it. :-)
[18:18:13] <Coren_> There goes the last problem I had with Granny 3D models; sticking stuff at the end of bones. :-)
[18:19:02] <Coren_> Doesn't look /perfect/, but those models were never meant to be seen from so close.
[18:21:49] <Coren_> More typo fixes in CHANGELOG and README?
[18:22:16] <wjp> yeah :-)
[18:24:21] <Coren_> You can see the paperdoll holding a short sword in cvs now. :-)
[18:24:32] <Coren_> Next is being able to actually put items on and off. :-)
[18:25:55] * wjp takes a peek
[18:26:14] <wjp> hey, he's walking too :-)
[18:26:49] <Coren_> Ah, true, I just changed his animation sequence to 1020 (walking) to make sure the sword followed the hand right-- the default idle anim doesn't have the hand moving much.
[18:27:33] <Coren_> look at paperdoll.cc:122 if you want to fiddle with the ani_seq value. :-) Valid numbers can be found in data/granny.dat
[18:28:03] <Coren_> He has hair too, now. :-)
[18:29:39] <Coren_> 1400 and 1401 are amusing. :-)
[18:30:27] <wjp> can you set the animation from the console?
[18:30:33] <wjp> or does it need a recompile?
[18:30:55] <Coren_> Right now it needs a recompile, you lemme fix this real quick, this is amusing enough to be worth it. Hang on
[18:34:35] <Coren_> commited
[18:34:48] <Coren_> debug.paperdoll.anim is new the var (also d.p.a)
[18:35:07] <Coren_> Or deb.paper.a or debug.p.anim, or whatever. :-)
[18:35:43] <wjp> :-)
[18:37:20] <wjp> lol
[18:37:45] <wjp> those are great :-)
[18:38:01] <Coren_> I deserve no credit for them, they are OSI's.
[18:38:16] <wjp> I know :-)
[18:39:07] <Coren_> I haven't actually stolen all of the ones I could; but the others are less usful. 'clapping', 'wave', 'wave_distant', 'hug', etc. :-)
[18:39:22] <Coren_> The dancing are also quite useless, but I really wanted them. :)
[18:39:52] <Coren_> Hmmm. Just for kicks, I'll add a cvar for changing the model entirely. :-)
[18:40:00] <Coren_> I'll have to remove the sword for that though.
[18:45:32] <Coren_> commited.
[18:45:40] <Coren_> Though some of the models are a bit large.
[18:47:31] <Coren_> d.p.model, in case you hadn't guessed
[18:47:33] <Eldron> coren, you should make low read .blend format, so you can steal my models instead as they get ready :)
[18:47:48] <Coren_> Don't worry, Eldron, that's the plan! :-)
[18:48:01] <Eldron> hehe
[18:48:33] <Coren_> I plan to coax/bully/beg you to do the ones that are UW2 specific after you're done with uwadv's too. :-)
[18:49:01] <Eldron> I like doing models for a purpose though, so I prolly will :)
[18:49:15] <Eldron> its nice for experience
[18:49:23] <Coren_> I'm glad you're doing the gazer first, too, because I keep getting flak over the U9/UO3D gazer. :-)
[18:49:29] <Eldron> lol
[18:49:49] <Eldron> texturing the gazer is quite a mess, because of its spherical shape
[18:50:13] <Coren_> I expect it is. Look at LoW's lever to see the extent of my modeling ability. :-)
[18:50:37] <Eldron> eh lever?
[18:50:52] <Coren_> I expect the format you use exports the skeleton and animates with that?
[18:51:27] <Coren_> Or are you going to animate the mesh directly?
[18:51:38] <Eldron> its animation through skeleton
[18:51:40] <Eldron> bones..
[18:51:45] <Coren_> Goodie.
[18:51:56] <Coren_> I already have all the code to animate skeletons.
[18:52:24] <Eldron> but blender lacks exporting to lots of formats..
[18:52:41] <Coren_> wjp: look at model 104, anim 1300 (death). You can't see all of it because of the size but I really love the arachnid death. :-)
[18:52:41] <Eldron> thats why it would be nice if low could read .blend :)
[18:53:36] <Coren_> Eldron: I have managed to mostly understand and use Granny 3D's proprietary, secret format-- I don't expect blender will be much harder. Especially since I guess the format is actually published and known. :-)
[18:54:17] <Coren_> LoW already reads two different 3d model file formats-- what's a third? :-)
[18:54:40] <Eldron> heh..
[18:54:55] <Eldron> well, blend is from what I know, just a dump of the memory structure..
[18:56:39] <Coren_> Ouch.
[18:56:50] <Coren_> The Blender file format is closely tied in to the Blender executable (it is just a memory dump, really), and it changes with almost every release.
[18:57:44] <Coren_> That complicates thing. Is there /some/ format you can export to that is not lossy?
[18:57:47] <wjp> ack! that's dreadful
[18:58:04] <wjp> that's pretty much how U8 did saves... *shudder*
[18:58:04] <Eldron> well.. I dunno if its like that.. It doesn't change that dramaticly :)
[18:58:19] <Coren_> That quote is from the Blender site. :-)
[18:58:24] <Eldron> heh
[18:58:25] <Eldron> oh..
[18:58:35] <Eldron> Well, no format exports all the things that the model needs..
[18:58:50] <Eldron> some go without bones.. other goes without uv coordinates..
[19:01:06] <Coren_> Hmmm.
[19:01:23] <Coren_> Well, I guess I'll have to try to find some specs for the version you have. :-)
[19:02:15] <Eldron> yes.. 2.25
[19:13:09] <Coren_> This is odd.
[19:13:54] <Coren_> The Blender people seem to expend significant effort trying to actively *prevent* people from using blender-created models with other tools.
[19:14:50] <Eldron> weird
[19:14:54] <wjp> the current blender people or the old (pre open source) blender people?
[19:15:08] <Coren_> That's hard to say.
[19:15:25] <Eldron> well, must be pre..
[19:15:45] <Eldron> since blender is a game making kit thingie.. godforbid..
[19:15:53] <Coren_> Browsing the source reveals layers and layers of complexity to reading the file format which is incompatible with the naive approach of almost-memory-dump.
[19:16:14] <Coren_> Almost as though it was willingly obfuscated.
[19:16:28] <Eldron> the source is messy..
[19:17:06] <Coren_> This is beyond messy-- the *point* of a file format non-design like dumping memory almost unchanged is that it is trivial to implement.
[19:17:48] <Coren_> Which is why so many tools that do not care about interoperability do that. (Like U8, says Willem)
[19:18:35] <Coren_> But the load/save code of Blender is intricate and complicated, which means the file format is stable but possibly willingly obfuscated.
[19:19:15] <Coren_> I.e.: stating that the file format is nearly a memory dump is an outright lie. The data is massages throughly before being written and read.
[19:19:23] <Coren_> massaged.
[19:20:41] <Coren_> And from what I've read of comments from people attempting to write import/export plugins, there are enough holes in the API exposed to Python to make it near impossible to do right.
[19:21:02] <Coren_> This may, of course, be legacy of the pre-open source team.
[19:21:21] <Eldron> :D
[19:21:52] <Coren_> But I find no indication anywhere of any attempt by the current Blender people to document/clean up the file format.
[19:23:05] <Coren_> None of this, of course, mean that I can't read and use .blender files mind you. :-)
[19:23:20] <Coren_> I have the source, which is a damn sight better than what I had with Granny files. :)
[19:23:47] <Eldron> well, good then..
[19:24:22] <Coren_> I still can't help but feel, looking at it, that it was written with the intent of making it hard to understand what the exact file format it.
[19:25:06] <Coren_> Which makes it no different than every other 3d model file format I've ever seen. :-)
[19:26:30] <Coren_> At any rate, the claim that "it's just a memory dump, really" is an outright lie.
[19:34:31] <Coren_> I found *one* project of a lib to read .blend files, and it appears defunct. :(
[20:45:29] <yot> Coren :}
[20:45:42] <yot> my favourite haxx0r hehe
[20:45:55] * Coren_ smiles.
[20:46:00] <Coren_> Hey there, Yot.
[20:46:30] <yot> I really begin to hate the Krondor disassembly
[20:46:41] <yot> only pointer typecasting :|
[20:47:04] * Coren_ grins.
[21:26:56] <wjp> hm, inventory icons seem broken
[21:41:46] <-- Coren_ has left IRC ("using sirc version 2.211+KSIRC/1.2.1")
[21:42:53] --> Coren_ has joined #uwadv
[22:37:16] --> Telemachos has joined #uwadv
[22:37:16] --- ChanServ gives channel operator status to Telemachos
[22:37:25] <Telemachos> evening ;=
[22:38:47] <Eldron> hello
[22:43:25] <wjp> hi
[22:44:29] <Telemachos> anything new on any of the projects?
[22:52:54] <wjp> Coren_ has a new font for LoW ;-)
[22:53:35] <Telemachos> heh.. hows that for a big news.. ;)
[22:54:31] <wjp> LoW has a lot of other new features too, of course :-)
[22:54:56] <wjp> Pentagram finally got some actual code, too, the last month
[23:02:59] <-- yot has left IRC ()
[23:04:00] <Telemachos> looking forward to pentagram... I was one of the few who actually ended up liking pagan
[23:04:13] <Telemachos> after a few starts that is ;)
[23:05:49] <Eldron> heh, u8 was my first, and favorite ultima..
[23:06:10] <Eldron> it had the drama and bittersweet feeling that I couldn't find in the others..
[23:13:45] <Telemachos> very dark and rainy :)
[23:16:58] <Eldron> sorcerer party was the darkest..
[23:17:32] <Eldron> especially when you brought the 'truename' to that sorcerer, so she could summon a demon
[23:17:41] <Eldron> hearing the screams :)
[23:17:57] <Eldron> and the wonderful music in the background..
[23:18:03] <Eldron> that was true art..
[23:23:10] <Telemachos> he heh
[23:43:07] <wjp> time for me to go
[23:43:09] <wjp> g'night
[23:43:28] <-- wjp has left IRC ("Zzzz...")
[23:52:54] * Coren_ also enjoyed U8 for the darker athmosphere... and I liked the fact that it took some, er, compromises in unwavering following of the virtues. ;-)
[23:53:23] <Coren_> Telemachos: The LoW's new font looks soooo cool.
[23:56:47] <Coren_> I can understand why people who got U8 pre-patch were miffed, though, I tought it was a bit too much jumping myself and I played /post/ patch.
[23:57:29] <Eldron> lots of reloading..
[23:57:38] <Eldron> prepatch was a nightmare..
[23:58:29] <Eldron> even more of a nightmare when I did not know what the transport device was for :)