#nuvie@irc.freenode.net logs for 26 Sep 2006 (GMT)

Archive Today Yesterday Tomorrow
Nuvie homepage


[01:22:27] --> SB-X has joined #nuvie
[09:47:41] <-- SB-X has left IRC (Read error: 110 (Connection timed out))
[09:53:59] --> SB-X has joined #nuvie
[09:58:35] <Kirben> Nuvie cvs (main branch) just crashes on startup here:
[09:58:47] <Kirben> Program received signal SIGSEGV, Segmentation fault.
[09:58:48] <Kirben> 0x004998e3 in MapWindow::boundaryFill (this=0x27eb018,
[09:58:48] <Kirben> map_ptr=0x31a0020 '' <repeats 94 times>, ""...,
[09:58:48] <Kirben> pitch=1024, x=4387, y=9) at MapWindow.cpp:953
[09:58:49] <Kirben> 953 if(*ptr != 0)
[09:58:51] <Kirben> Current language: auto; currently c++
[10:00:53] <SB-X> Hi Kirben. I havn't seen any changes to the main branch nuvie cvs in several weeks, but I havn't tried running it lately either. (my copy is out of date)
[10:00:57] <SB-X> it's odd to be crashing on startup
[10:01:10] <SB-X> because im not sure anything was changed affecting startup
[10:01:17] <Kirben> I have not tried running it for a few weeks either.
[10:01:29] <SB-X> ah k
[10:02:29] <SB-X> the only recent change I see is in U6Shape.cpp by luteijn
[10:05:47] <Kirben> Can you reproduce crash?
[10:10:58] <SB-X> not right now, i'll have to get a clean copy of nuvie cvs because it doesn't happen on the old version I have
[10:11:31] <SB-X> i'll try to reproduce the crash in a little while
[10:32:55] --> Yuv422 has joined #nuvie
[10:33:02] <SB-X> Hello, Eric.
[10:33:25] <Yuv422> hi Joseph
[10:33:30] <Yuv422> How's it going?
[10:33:41] <SB-X> Kirben gets a crash on startup with nuvie cvs. Can you reproduce it?
[10:33:55] <Yuv422> hmm
[10:34:00] <Yuv422> let me have a look
[10:34:35] <SB-X> it's in MapWindow::boundaryFill(), the only recent change I see to the main branch of nuvie cvs is in U6Shape.cpp by luteijn
[10:37:00] <Yuv422> just checking out the head
[10:38:51] <Yuv422> building
[10:41:38] <Yuv422> wow I get a major stack explosion
[10:41:49] <Yuv422> 8859 stack frames. ;-)
[10:43:30] --> Yuv422_ has joined #nuvie
[10:43:30] <-- Yuv422 has left IRC (Read error: 104 (Connection reset by peer))
[10:43:45] --- Yuv422_ is now known as Yuv422
[10:48:13] <SB-X> are you going to read through them all?
[10:48:25] <SB-X> i assume not
[10:48:56] <SB-X> would that be from an infinite loop?
[10:49:27] <Yuv422> looks like it
[11:05:23] <Yuv422> ok it works at 2006-08-29
[11:12:14] <Yuv422> It breaks at 2006-09-02
[11:13:57] <SB-X> oh, the changes to U6Shape.cpp by luteijn are on 2006-09-07, so maybe it's caused by one of my changes
[11:16:14] <Yuv422> http://sourceforge.net/mailarchive/forum.php?thread_id=30440877&forum_id=32575
[11:16:18] <Yuv422> found it
[11:19:26] <Yuv422> uint8??
[11:20:13] <Yuv422> neither of those values fit in uint8
[11:20:18] <Yuv422> or am I missing the point
[11:23:54] <SB-X> I don't see how the behavior is changed there.
[11:24:01] <SB-X> with my change
[11:24:09] <SB-X> oh, you're not missing the point
[11:24:12] <Yuv422> 1024 won't fit into a uint8
[11:24:14] <SB-X> sorry, i forgot to change it to uint16
[11:24:25] <SB-X> i had some other values there before :|
[11:24:28] <Yuv422> hehe
[11:25:03] <Yuv422> why did you need to change it from pieter's version?
[11:26:12] <SB-X> didn't need to, but it makes more sense to me that way, and it moves the map pitch outside of the function
[11:26:51] <Yuv422> but then you're relying on a global variable
[11:26:53] <SB-X> so it could theoretically be changed in the future, or other functions could be added that use map_pitch
[11:27:07] <Yuv422> hmm
[11:27:11] <SB-X> (if less readable
[11:27:13] <SB-X> )
[11:27:16] <SB-X> so?
[11:27:47] <SB-X> oops i typed that wrong, i was going to add that it is a little less readable
[11:27:54] <SB-X> sorry
[11:28:01] <Yuv422> hehe yeah that's what I was thinking
[11:28:05] <Yuv422> :)
[11:28:07] <SB-X> i like map pitch as a constant though
[11:28:14] <Yuv422> inline ifs are a bit evil
[11:28:42] <SB-X> more parenthesis just make them harder to read
[11:29:29] <Yuv422> does your method limit the use due to the macro
[11:29:41] <SB-X> what do you mean?
[11:29:56] <Yuv422> can you use it in the same context as before
[11:30:19] <SB-X> yes, map_pitch means the same thing as it does to MapWindow
[11:30:33] <SB-X> it would be more readable if using two constants instead of the array: surface_map_pitch and dungeon_map_pitch
[11:30:57] <Yuv422> map_pitch[SURFACE]
[11:31:07] <Yuv422> map_pitch[DUNGEON]
[11:31:31] <SB-X> no that's not necessary, surface has to be 0 in that array anyway
[11:31:53] <Yuv422> ok
[11:32:09] <SB-X> since it's only two values, there's not much point to having the array
[11:32:35] <Yuv422> how about just defines then
[11:33:24] <SB-X> i guess I was originally going to add an element to the array for each dungeon level, but decided to reduce it to two elements since every dungeon is 255x255 squares
[11:34:15] <SB-X> is there an effective difference between defines and global constants?
[11:34:32] <Yuv422> there is if you don't optimise
[11:34:50] <SB-X> ok, either way is fine with me
[11:35:02] <SB-X> SURFACE_MAP_PITCH
[11:35:05] <SB-X> DUNGEON_MAP_PITCH
[11:35:13] <Yuv422> :)
[11:37:06] <SB-X> sorry about the confusion (and creating that crash bug)
[11:37:24] <SB-X> my local copy has the same code and doesn't crash on startup
[11:37:34] <Yuv422> np
[11:37:36] <Yuv422> strange
[11:37:50] <Yuv422> win or linux?
[11:37:54] <SB-X> linux
[11:37:57] <Yuv422> -Wall
[11:41:45] <SB-X> isn't that in the makefile now?
[11:42:12] <Yuv422> I haven't built nuvie via the cmdline for a while
[11:42:51] <SB-X> oh, well I normally do but my local copy wont compile at the moment
[11:43:25] <Yuv422> :(
[11:47:27] <-- Kirben has left IRC ("System Meltdown")
[11:50:04] --> Kirben has joined #nuvie
[12:18:43] <-- Kirben has left IRC (Read error: 60 (Operation timed out))
[12:25:10] <-- Yuv422 has left IRC (Read error: 104 (Connection reset by peer))
[12:25:24] --> Yuv422 has joined #nuvie
[12:41:10] <Yuv422> can you set obj status from a converse script
[12:41:19] <Yuv422> ?
[12:53:02] <SB-X> no
[12:53:06] <SB-X> not directly
[12:54:53] <Yuv422> cool
[12:55:05] <Yuv422> I'm removing all the engine loc bits from obj
[12:55:23] <Yuv422> and converting everything over to my new nuvie_status loc bits
[12:55:52] <Yuv422> with new unified get/set methods on Obj
[12:56:09] <Yuv422> so no more bit operations on status
[12:56:13] <Yuv422> for object locations
[12:57:39] <Yuv422> there's lots of 0x18 magic numbers in the code
[12:57:45] <Yuv422> I'm removing them now
[12:57:46] <Yuv422> :)
[12:59:00] <-- servus has left IRC (Read error: 60 (Operation timed out))
[13:00:43] <SB-X> WAH?!
[13:01:14] <Yuv422> :)
[13:01:37] <SB-X> oh that's fine
[13:01:39] <Yuv422> trust me it's making everything cleaner
[13:01:43] <SB-X> although i like my pos status flags
[13:01:54] <SB-X> yeah i believe you
[13:01:55] <Yuv422> pos status?
[13:02:12] <SB-X> position flags
[13:02:22] <SB-X> OBJ_STATUS_ON_MAP
[13:02:27] <Yuv422> is that another name for engine location?
[13:02:34] <SB-X> i dont know
[13:02:40] <Yuv422> instead of OBJ_LOC_MAP
[13:02:40] <SB-X> is engine location another name for pos status flags?
[13:02:52] <Yuv422> I think so
[13:03:35] <SB-X> you know, if you do (obj->status&OBJ_STATUS_POS_MASK)>>3 you would get the same thing as your new nuvie_status loc bits
[13:04:02] <Yuv422> not really because I use 3 bits for pos
[13:04:08] <SB-X> WAH?!
[13:04:17] <SB-X> oh, yeah... I knew that :p
[13:04:26] <Yuv422> there is no notion of none in the original
[13:04:28] <Yuv422> :)
[13:04:45] <SB-X> you could make none 4 then
[13:04:56] <SB-X> so, it's close enough :)
[13:05:02] <Yuv422> #define OBJ_LOC_NONE 0
[13:05:02] <Yuv422> #define OBJ_LOC_INV 1
[13:05:03] <Yuv422> #define OBJ_LOC_MAP 2
[13:05:03] <Yuv422> #define OBJ_LOC_INV_READIED 3
[13:05:03] <Yuv422> #define OBJ_LOC_CONT 4
[13:05:54] <SB-X> can you change inv_readied to just readied please? since we don't combine these any more, we'll know what that means
[13:06:14] <Yuv422> righto
[13:06:30] <SB-X> thanks
[13:06:51] --> servus has joined #nuvie
[13:19:33] <SB-X> Whew... Nuvie finally compiles again for me. But it doesn't really work much at all with my new targeting changes, yet.
[13:19:51] <Yuv422> my nuvie is a bit of a mess too
[13:20:00] <Yuv422> lots of status changes going in
[13:20:03] <SB-X> hehe
[13:21:49] <SB-X> since I'll be committing this to the main branch, I'll need clean it up some more to get the glitches out first (it even crashes sometimes when selecting a target for drop, get, or even moving around)
[13:23:06] <SB-X> i forgot that mapwindow only sends relative coords to event when you click the mouse button, so I have to maintain a state of what kind of input is expected, and convert those to absolute coords if necessary
[13:44:29] <SB-X> brb
[13:44:32] <-- SB-X has left IRC ("*casts gate travel*")
[13:57:47] <Yuv422> ok I'm off to bed
[13:58:21] <Yuv422> I've got the new nuvie_status code going
[13:58:47] <Yuv422> I'll do some testing tomorrow
[13:59:00] <Yuv422> then I might commit to my scripting branch
[13:59:08] <Yuv422> cya
[13:59:28] <-- Yuv422 has left IRC ()
[13:59:36] --> SB-X has joined #nuvie
[14:00:11] <SB-X> heh, just missed Yuv422 leaving again
[15:25:30] --> servus_ has joined #nuvie
[15:25:47] <-- servus has left IRC (Read error: 110 (Connection timed out))
[15:55:36] --> mr_pirate has joined #nuvie
[15:55:44] <-- mr_pirate has left IRC (Read error: 104 (Connection reset by peer))
[17:04:12] <-- SB-X has left IRC (Read error: 104 (Connection reset by peer))
[17:40:27] --> wjp has joined #nuvie
[18:51:38] --- servus_ is now known as servus
[22:33:34] --> Kirben has joined #nuvie