#nuvie@irc.freenode.net logs for 28 Jun 2012 (GMT)

Archive Today Yesterday Tomorrow
Nuvie homepage


[00:10:56] --> Kirben has joined #nuvie
[00:26:41] <-- Kirben has left IRC ()
[00:42:29] --> Kirben has joined #nuvie
[03:06:43] <-- CIA-5 has left IRC ()
[03:16:39] --> CIA-68 has joined #nuvie
[03:24:04] <-- Malignant_Manor has left IRC (Quit: ChatZilla 0.9.88.2 [Firefox 13.0.1/20120614114901])
[11:47:52] --> TheCycoONE has joined #nuvie
[13:06:11] --> Dominus1 has joined #nuvie
[13:07:04] <-- Dominus has left IRC (Ping timeout: 244 seconds)
[13:07:25] --- Dominus1 is now known as Dominus
[13:38:55] <-- Kirben has left IRC ()
[18:04:48] <-- ChanServ has left IRC (shutting down)
[18:05:35] --> ChanServ has joined #nuvie
[19:22:30] --> Dominus1 has joined #nuvie
[19:22:43] <-- Dominus has left IRC (Killed (kornbluth.freenode.net (Nickname regained by services)))
[19:22:43] --- Dominus1 is now known as Dominus
[20:37:49] --> Malignant_Manor has joined #nuvie
[21:21:34] --> Yuv422 has joined #nuvie
[21:22:32] <Malignant_Manor> Were you able to reproduce the problem?
[21:22:44] <Yuv422> hey Malignant_Manor
[21:22:52] <Yuv422> I'll try now
[21:24:06] <Yuv422> how far north should i walk?
[21:24:20] <Malignant_Manor> Basically, It seems to happen a lot when walking around the combat going on between Moonglow and the Lycaeum
[21:24:39] <Malignant_Manor> Sometimes I can't even get through.
[21:24:40] <Yuv422> hmm
[21:24:51] <Yuv422> I walked right by that
[21:24:53] <Malignant_Manor> Other times I can go back and forth.
[21:24:54] <Yuv422> no problem
[21:25:03] <Yuv422> could I have a copy of your save
[21:25:19] <Malignant_Manor> It is in the tracker
[21:25:27] <Yuv422> cool
[21:25:35] <Malignant_Manor> It even happens with my save that is from the beginning
[21:25:57] <Malignant_Manor> created by Nuvie (not the original engine either)
[21:28:00] <Malignant_Manor> I'd walk all the way north to the guard and cross section and then try to come back.
[21:28:16] <Yuv422> ok
[21:29:15] <Yuv422> hmm look like a got the freeze
[21:29:31] <Malignant_Manor> I get hanging and seg fault
[21:29:36] <Malignant_Manor> at different times
[21:30:19] <Malignant_Manor> At least you can Ctl-C out of GDB to see what the loop is. (if it is an endless loop)
[21:30:32] <Malignant_Manor> You can also run Valgrind.
[21:31:00] <Malignant_Manor> I'm won't feel like setting up a Linux environment for awhile.
[21:35:03] <Yuv422> if you want a quick way to see what's going on in the lua script you can remove the comment from the function dbg() in init.lua
[21:35:14] <Yuv422> then it starts printing lots of debug message
[21:35:17] <Yuv422> s
[21:35:17] <TheCycoONE> is nuvie pretty in valgrind, or scary
[21:35:26] <Yuv422> hehe
[21:35:41] <Yuv422> I'm too scared to look
[21:36:10] <Yuv422> I'd like to think it is a well behaved application
[21:36:15] <TheCycoONE> heh
[21:36:38] <TheCycoONE> might be best before you end up with some impossible to clean data structure (exult cache lists?)
[21:36:49] <Yuv422> yeah
[21:37:03] <Malignant_Manor> Exult has ever expanding memory.
[21:37:23] <Malignant_Manor> Nuvie does great on memory from what I've seen.
[21:38:37] <Yuv422> looks like the hang is from an endless loop in script
[21:38:45] <Yuv422> in the flee worktype
[21:39:13] <Malignant_Manor> The segfault seemed to be from deletion of a temporary obj
[21:39:30] <Yuv422> yeah
[21:39:40] <Yuv422> in the chunk cleanup
[21:39:49] <Yuv422> I'll start with the hang
[21:39:55] <Yuv422> as I can reproduce that
[21:40:13] <wjp> did someone say valgrind?
[21:40:19] <Yuv422> hehe
[21:40:20] <wjp> anything I can test to help?
[21:40:34] <Yuv422> wjp is our resident valgrind expert
[21:40:38] <Malignant_Manor> Yeah
[21:40:42] <TheCycoONE> fancy
[21:40:43] <wjp> it was clean last time I tried MD or SE, except for that 1 egg thing
[21:40:59] <wjp> and by "valgrind expert" I think you mean "runs Linux"? ;-)
[21:41:07] <Yuv422> hehe
[21:41:11] <Malignant_Manor> Or any unix
[21:41:17] <Malignant_Manor> -like
[21:41:32] <TheCycoONE> that's why you could fix my linux compile error quickly then
[21:42:17] <Yuv422> wjp: could you try running valgrind and walking over a chunk boundary
[21:43:10] <Malignant_Manor> You might need to move away from temp items
[21:43:10] <wjp> where's the nearest one to the start?
[21:43:31] <Yuv422> yeah
[21:43:43] <wjp> how do I get temp items?
[21:43:48] <Malignant_Manor> alt-314 1 5 (moonglow)
[21:43:56] <Malignant_Manor> Walk north from there.
[21:44:25] <Yuv422> or kill the gargs at the start of the game
[21:44:42] <Yuv422> and walk south till you see the engine cleanup in the logs
[21:47:34] <wjp> gargoyles killed, got key from LB, ...
[21:48:36] <wjp> right, one error in ObjManager::temp_obj_list_clean_area
[21:49:29] <Yuv422> cool
[21:50:28] <Malignant_Manor> How do you extract the shape files into something GIMP can read?
[21:50:35] <wjp> ==18288== Invalid read of size 8
[21:50:35] <wjp> ==18288== at 0x4D273F: ObjManager::temp_obj_list_clean_area(unsigned short, unsigned short) (ObjManager.cpp:1500)
[21:50:39] <wjp> [...]
[21:50:41] <wjp> ==18288== Address 0x94585c0 is 16 bytes inside a block of size 24 free'd
[21:50:44] <wjp> [...]
[21:51:03] <Dominus> Malignant_Manor: do you want to fix the read dirt and make it brown? :)
[21:51:23] <wjp> ==18288== by 0x4D23F1: ObjManager::temp_obj_list_remove(Obj*) (ObjManager.cpp:1453)
[21:51:27] <Dominus> Yuv422: I made that SDL 1.2.15 framework *just* for you!!!
[21:51:47] <Yuv422> Dominus: I haven't tried it yet. Sorry
[21:51:52] <Dominus> (not really but after Malignant_Manor goated me... :))
[21:53:18] <Dominus> Yuv422: don't mind me, I'm dead tired and shouldn't really post. I made that framework for xu4 mostly and just wanted to share - no need to feel guilty :)
[21:53:20] <Malignant_Manor> I didn't even realize the link would make you do that.
[21:53:42] <Yuv422> :)
[21:53:56] <wjp> Yuv422: I think the problem is simply doing "*obj" (derefencing the iterator) after you already removed the entry from the list
[21:54:04] <wjp> (in temp_obj_list_clean_area)
[21:54:05] <Yuv422> ah
[21:54:14] <Dominus> Malignant_Manor: don't pretend!!! you are trying to copy me when I try to make exult devs code stuff or wjp to do stuff on pentagram (not that I'm very successful atm :))
[21:54:21] <Yuv422> I thought I fixed those bugs
[21:54:25] <Yuv422> must have missed one
[21:55:00] <wjp> easy to fix at least :-)
[21:55:22] <Malignant_Manor> I just saw the link was related to the fullscreen problem
[21:55:39] <Dominus> :)
[21:55:56] <Malignant_Manor> I didn't know you never finished xu4 SDL frameworks
[21:56:27] <Dominus> as I wrote I'm bordering on trolling I think
[21:56:31] <Malignant_Manor> I was pretty blatant with the do doc work conversion stuff for me.
[21:56:54] <Malignant_Manor> I want it possible to have different tilesets. (Lacks ability)
[21:57:40] <wjp> Yuv422: yes, moving that dereference back a bit gets rid of the valgrind error
[21:58:24] <Yuv422> I thought what I was doing there was safe
[21:58:47] <-- TheCycoONE has left IRC (Quit: vanishing is fun)
[21:58:54] <Yuv422> because the tmp_obj is incremented before the delete
[21:58:56] <wjp> obj is an invalid iterator after the remove_obj_from_map call
[21:59:02] <Yuv422> ah
[21:59:14] * Yuv422 slaps head
[21:59:18] <Yuv422> of course
[22:00:53] <wjp> I can just commit this local fix, if you want
[22:01:26] <Yuv422> yes please.
[22:01:28] <Yuv422> :-)
[22:02:07] <Yuv422> looks like you'll need to fix temp_obj_list_clean_level() and temp_obj_list_clean_area()
[22:02:11] * wjp nods
[22:02:53] <Malignant_Manor> Now if only you had the time and inclination go fix all the Exult Valgrind warnings.
[22:03:05] <Malignant_Manor> You might go insane before finishing.
[22:03:19] <Yuv422> Malignant_Manor: It looks like there is a code line in wt_flee that isn't subtracting movement points
[22:03:45] <Malignant_Manor> So that's our loop.
[22:03:52] <Yuv422> yeah
[22:04:22] <Yuv422> move actor mouse from (919,458) towards (921,458) now at (919,458) dir=2
[22:04:22] <Yuv422> perform_worktype(mouse dex = 27 mpts = 13).
[22:04:22] <Yuv422> wt = WT_FLEE
[22:04:23] <Yuv422> move actor mouse from (919,458) towards (921,458) now at (919,458) dir=0
[22:04:23] <Yuv422> perform_worktype(mouse dex = 27 mpts = 13).
[22:04:23] <Yuv422> wt = WT_FLEE
[22:06:05] <Yuv422> I think I've found the spot
[22:06:10] <CIA-68> nuvie: 03wjpalenstijn * r1365 10/nuvie/trunk/ObjManager.cpp: Fix temp object deletion
[22:06:37] <Malignant_Manor> When I tried adding talk flag lua editing, I ran into problems with str_bsearch or the function that calls it not returning the proper index.
[22:07:12] <Malignant_Manor> I ended up using the Actor. version instead.
[22:08:08] <Yuv422> yeah you to add your field in alphabetical order
[22:08:21] <Malignant_Manor> It is alphabetical
[22:08:29] <Malignant_Manor> I didn't realize that
[22:08:46] <Yuv422> hehe maybe I should put in a comment about that ;-)
[22:09:00] <Malignant_Manor> That still doesn't explain it
[22:10:29] <Malignant_Manor> It can still get something that starts with "s" working that is behind "wt"
[22:11:07] <Malignant_Manor> Just weird behavior when things are out of alphabetical order. I guess
[22:11:26] <wjp> there's no guarantee bsearch will fail when things are out of order :-)
[22:12:26] <Malignant_Manor> I'm wondering if I should comment out or just remove the clear_talk_flag lua function since it will be unlikely to be used.
[22:13:34] <Malignant_Manor> I also found out that LUA doesn't wait to call the function. It was easy enough to add it to the bye section of NPC dialog anyway.
[22:13:47] <Malignant_Manor> I fixed seance so it works better than the original.
[22:14:14] <Malignant_Manor> You can now talk to dead party members instead of it just complaining about them not being on screen.
[22:14:29] <Yuv422> hehe cool
[22:14:32] <Malignant_Manor> I need to test this on egg npcs though
[22:14:50] <Yuv422> like guards?
[22:14:51] <Malignant_Manor> to make sure there is no issue
[22:14:53] <Malignant_Manor> yeah
[22:15:04] <Malignant_Manor> I'm not sure what the quality will be.
[22:15:47] <Malignant_Manor> maybe other dead things too
[22:19:08] <Yuv422> there are some free conversation slots in u6
[22:19:11] <Yuv422> that we could use
[22:19:20] <Yuv422> after guards/shrines etc
[22:19:25] <Yuv422> and before the temp actors
[22:20:07] <Malignant_Manor> I'm just hopping it doesn't bring up a random npc.
[22:20:58] <Yuv422> wjp: thanks for the fix
[22:21:20] <Yuv422> I was contacted by Dungy yesterday
[22:21:33] <Yuv422> he is interested in doing an interview with the Nuvie team
[22:21:39] <Yuv422> on IRC
[22:23:35] <Malignant_Manor> Guard brings up guard dialog on seance
[22:24:39] <Yuv422> :)
[22:25:10] <Malignant_Manor> dead gargoyles bring up nothing
[22:25:23] <Malignant_Manor> (random shrine gargoyles)
[22:25:43] <wjp> Yuv422: you're welcome
[22:40:00] <Malignant_Manor> Eric, that's updated web documents.
[22:40:24] <Malignant_Manor> I also added the SE/MD data and seance patch to the tracker.
[22:41:16] <Yuv422> thanks Malignant_Manor
[22:41:36] <Malignant_Manor> The range and pretty much all ready slots should be accurate.
[22:42:05] <Yuv422> I've got to go now
[22:42:08] <Malignant_Manor> Except some stupidly left out ready data for Martian versions of earth items.
[22:42:11] <Malignant_Manor> Okay
[22:42:21] <Malignant_Manor> bye
[22:42:22] <Yuv422> but I'll add them in tonight my time
[22:42:48] <Yuv422> I'll also work on a fix for the flee wt
[22:42:53] <Malignant_Manor> MD has combo weapons
[22:43:02] <Malignant_Manor> that fire 3 different ways
[22:43:09] <Yuv422> nice
[22:43:15] <Malignant_Manor> so that could not be implemented as is
[22:43:17] <Yuv422> like the triple cross-bow in u6
[22:43:23] <Malignant_Manor> no
[22:43:26] <Malignant_Manor> spread
[22:43:34] <Malignant_Manor> shotgun type
[22:43:34] <Yuv422> ah k
[22:43:39] <Malignant_Manor> with wide range
[22:43:46] <Malignant_Manor> regular bullet
[22:43:51] <Malignant_Manor> or both at the same time
[22:44:01] <Malignant_Manor> all with the same gun
[22:44:43] <Yuv422> shouldn't be too hard to do in script
[22:44:52] <Malignant_Manor> Freezing at night time and berries that make your input go opposite
[22:45:13] <Yuv422> :)
[22:45:16] <Malignant_Manor> the mouse click area is opposite of where the cursor is too
[22:45:24] <Yuv422> lots of nice new challenges
[22:46:45] <Malignant_Manor> SE has a weapon that is only ranged when near one enemy
[22:48:10] <Malignant_Manor> MD screws up ready spots
[22:51:56] <Yuv422> MD also has world map wrapping
[22:52:06] <Malignant_Manor> yeah
[22:52:12] <Malignant_Manor> I noticed that
[22:52:26] <Malignant_Manor> Most everything looks the same
[22:52:29] <Malignant_Manor> in MD
[22:52:48] <Malignant_Manor> It's either ice or sand
[22:52:57] <Yuv422> hehe yeah
[22:52:58] <Malignant_Manor> or settlement
[22:53:37] <Yuv422> I feel we are getting close to having u6 done to a standard that would make it playable as a game
[22:54:11] <Malignant_Manor> Yeah
[22:54:35] <Malignant_Manor> Lots of things to check for but once you apply the fix, the game should be completable.
[22:54:40] <Yuv422> I've got to do the end sequence too
[22:54:58] <Malignant_Manor> I've been having issues with the cursor getting stuck
[22:55:12] <Malignant_Manor> even after the target has been selected
[22:55:25] <Yuv422> yeah the cursor logic needs to be reviewed
[22:55:28] <Malignant_Manor> The mouse stays in cursor mode
[22:55:38] <Yuv422> I get a cursor stuck on
[22:55:45] <Malignant_Manor> then you are completely screwed and have to kill the engine
[22:56:10] <Yuv422> so you can't stop walking?
[22:56:25] <Malignant_Manor> can't do anything I think
[22:56:34] <Yuv422> ah k
[22:56:44] <Malignant_Manor> stuck in casting- or attacking-
[22:56:57] <Yuv422> that might be the endless loop in the lua script
[22:57:10] <Malignant_Manor> I'm not sure.
[22:57:16] <Malignant_Manor> Slimes can't flee
[22:57:34] <Malignant_Manor> but there were more things offscreen
[22:57:37] <Yuv422> I think there might be other loop issues with the script
[22:57:45] <Malignant_Manor> I remember and ant being poisoned
[22:57:53] <Yuv422> the problem is that the script is driven by movement points
[22:58:01] <Malignant_Manor> I'm not even sure ants are in the crypts
[22:58:03] <Yuv422> so as long as an npc has some moement points left
[22:58:09] <Yuv422> the game gives them another turn
[22:58:45] <Malignant_Manor> Also, some casting through walls. South of the entrance inside tomb of kings
[22:58:49] <Yuv422> I was thinking of putting a cap on the number of turns that can happen before handing back control to the player
[22:58:51] <Malignant_Manor> is one example
[22:59:11] <Yuv422> yeah I've got to fix projectiles not being blocked by wall tiles
[22:59:16] <Malignant_Manor> I'm not sure that is a good idea or not.
[22:59:24] <Yuv422> yeah it is a bit of a hack
[22:59:30] <Malignant_Manor> if it skips turns
[22:59:49] <Yuv422> better to fix the cause
[23:00:18] <Yuv422> I've got to go now
[23:00:23] <Yuv422> cya
[23:00:43] <Malignant_Manor> bye
[23:00:46] <-- Yuv422 has left IRC (Quit: Yuv422)
[23:34:37] <-- Malignant_Manor has left IRC (Quit: ChatZilla 0.9.88.2 [Firefox 13.0.1/20120614114901])
[23:48:06] --> Kirben has joined #nuvie