#gemrb@irc.freenode.net logs for 6 Oct 2011 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage


[01:17:38] <-- edheldil_ has left IRC (Ping timeout: 260 seconds)
[01:23:32] --> joneirik has joined #gemrb
[01:35:35] <-- pugVader has left IRC (Ping timeout: 258 seconds)
[01:52:34] --> pugVader has joined #gemrb
[02:27:03] <-- joneirik has left IRC (Remote host closed the connection)
[02:53:48] --> brad_a has joined #gemrb
[03:20:31] <-- brad_a has left IRC (Quit: brad_a)
[06:05:58] --> gembot has joined #gemrb
[06:46:27] <-- demitar has left IRC (Ping timeout: 255 seconds)
[07:10:27] --> Beh0lder has joined #gemrb
[07:31:37] --> lynxlynxlynx has joined #gemrb
[07:31:37] <-- lynxlynxlynx has left IRC (Changing host)
[07:31:37] --> lynxlynxlynx has joined #gemrb
[07:31:37] --- ChanServ gives channel operator status to lynxlynxlynx
[10:43:25] --> Maighstir has joined #gemrb
[11:23:49] --- Maighstir is now known as Maighstir|away
[12:16:06] <-- Gekz has left IRC (Quit: No Ping reply in 180 seconds.)
[12:16:38] --> Gekz has joined #gemrb
[12:16:38] <-- Gekz has left IRC (Changing host)
[12:16:38] --> Gekz has joined #gemrb
[12:35:24] <-- lynxlynxlynx has left IRC (Read error: Connection reset by peer)
[12:36:40] --> lynxlynxlynx has joined #gemrb
[12:36:40] <-- lynxlynxlynx has left IRC (Changing host)
[12:36:40] --> lynxlynxlynx has joined #gemrb
[12:36:40] --- ChanServ gives channel operator status to lynxlynxlynx
[13:01:00] <-- Beh0lder has left #gemrb
[13:48:12] --- Maighstir|away is now known as Maighstir
[14:46:38] <-- lynxlynxlynx has left IRC (Read error: Connection reset by peer)
[14:47:07] --> lynxlynxlynx has joined #gemrb
[14:47:07] --- ChanServ gives channel operator status to lynxlynxlynx
[15:12:11] <-- gembot has left IRC (Ping timeout: 255 seconds)
[16:28:51] --> brad_a has joined #gemrb
[16:50:59] --> Yoshimo has joined #gemrb
[17:22:18] --> gembot has joined #gemrb
[17:24:52] <-- lynxlynxlynx has left IRC (Read error: Connection reset by peer)
[17:25:20] --> lynxlynxlynx has joined #gemrb
[17:25:21] <-- lynxlynxlynx has left IRC (Changing host)
[17:25:21] --> lynxlynxlynx has joined #gemrb
[17:25:21] --- ChanServ gives channel operator status to lynxlynxlynx
[17:40:35] --> pugVader_ has joined #gemrb
[17:44:21] <-- pugVader has left IRC (Ping timeout: 255 seconds)
[20:42:04] <-- Yoshimo has left IRC (Quit: Yoshimo)
[21:09:08] --> Avenger has joined #gemrb
[21:09:13] --- ChanServ gives channel operator status to Avenger
[21:09:18] <Avenger> hello
[21:10:19] <Avenger> anyone here could tell me if replacing if (cls<(ieDword) classcount) { with if (cls>=(ieDword) classcount) { makes any sense in Actor::ApplyKit ?
[21:11:04] <fuzzie> hi Avenger
[21:11:34] <fuzzie> heh
[21:11:51] <fuzzie> so it returns false only if you have a valid class?
[21:12:12] <Avenger> hmm
[21:12:14] <fuzzie> oops
[21:12:30] <fuzzie> so yes it seems fine
[21:12:32] <Avenger> the intention would be to return false if the class is invalid :)
[21:12:52] <Avenger> atm, it crashes for invalid class value 255
[21:13:02] <fuzzie> but i see other uses also
[21:13:17] <fuzzie> e.g. what is InitButtons doing there?
[21:14:00] <Avenger> that's fine
[21:14:07] <fuzzie> ok.
[21:14:15] <Avenger> if the class is not a PC class, then check in the other list
[21:14:28] <fuzzie> GetXPLevel should probably not be using a local variable with the same name either, it is confusing
[21:14:30] <Avenger> so you can have custom button lists for special chars
[21:15:11] <Avenger> yes, you are right
[21:15:27] <fuzzie> GetHpAdjustment is doing BaseStats[IE_CLASS] > classcount, GetCombatDetails is doing <= classcount
[21:15:44] <fuzzie> those should be >= and < ?
[21:15:49] <Avenger> why is it a float
[21:15:57] <Avenger> for (int i=1; i<clscount; i++)
[21:16:00] <Avenger> meeh
[21:17:18] <Avenger> i will convert it to float when dividing with it
[21:17:30] <Avenger> if that is needed at all
[21:18:13] <fuzzie> well, it definitely doesn't need to be a float, but it is too late for me to think of a replacement
[21:18:44] <fuzzie> but the two checks i mentioned also seem buggy to me
[21:18:53] <Avenger> i'm looking at the first
[21:19:10] <Avenger> if (BaseStats[IE_CLASS] == 0 || BaseStats[IE_CLASS] > (ieDword) classcount) { checks if the class is valid
[21:19:14] <Avenger> i think it is fine
[21:19:26] <Avenger> it returns if the class is invalid
[21:19:37] <fuzzie> 0 is invalid?
[21:19:48] <lynxlynxlynx> mages start with 1 iirc
[21:20:17] <fuzzie> well, if it is 1 to classcount then the other half of the code is wrong
[21:20:29] <Avenger> i thought about that too, fuzzie :)
[21:20:42] <fuzzie> since the arrays like classabilities are only classcount large
[21:20:46] <Avenger> 1 = mage, 2 = fighter
[21:20:50] <fuzzie> and they are accessed by index with the IE_CLASS stat
[21:21:13] <Avenger> yeah, but i think the 0. index has the placeholder in it
[21:21:27] <fuzzie> but then the last index is invalid
[21:21:37] <Avenger> true
[21:21:43] <fuzzie> but yes, you are right, the first one is 0 UNUSED
[21:21:50] <fuzzie> so i am right, it should be >= :P
[21:22:10] --> edheldil_ has joined #gemrb
[21:22:11] <Avenger> if (BaseStats[IE_CLASS] == 0 || BaseStats[IE_CLASS] >= (ieDword) classcount) {
[21:22:12] <fuzzie> since BaseStats[IE_CLASS] == classcount means that it is not a PC
[21:22:21] <fuzzie> yes, that looks good
[21:22:26] <Avenger> ok
[21:22:35] <fuzzie> and the one in GetCombatDetails should be < classcount since it's also a PC check
[21:22:37] <Avenger> where is the other
[21:23:00] <fuzzie> line 4747 here
[21:23:50] <fuzzie> also, CreateDerivedStatsBG is checking against CLASS_PCCUTOFF instead, i don't know if that is good/bad/irrelevant
[21:24:38] <fuzzie> and so the check in RefreshEffects is also bad, it checks BaseStats[IE_CLASS] <= (ieDword) classcount
[21:25:22] <Avenger> that's probably fine there
[21:25:23] <fuzzie> but the one in GetClassLevel is ok because it subtracts 1 first :)
[21:26:55] <fuzzie> i think RefreshPCStats will crash if it gets BaseStats[IE_CLASS] == classcount, because RefreshHP assumes the caller already checked
[21:27:16] <fuzzie> oh no, it won't, because it subtracts 1
[21:27:24] <fuzzie> well fine it is maybe just useless :)
[21:28:07] <CIA-26> GemRB: 03avenger_teambg * r718028b8ad01 10gemrb/gemrb/core/Scriptable/Actor.cpp: fixed many off by one problems with PC class
[21:28:08] <Avenger> ok, i hope i fixed more bugs than just added
[21:28:15] <fuzzie> hehe
[21:28:48] <Avenger> this is something where you are much better than me
[21:28:59] <fuzzie> it all looks fine to me.
[21:29:05] <fuzzie> good spotting!
[21:29:30] <Avenger> i noticed this when ctrl-q on an iwd sprite caused crash
[21:29:36] <Avenger> just wanted to test the iwd sounds :)
[21:29:52] <Avenger> but found something much bigger, here
[21:30:01] <Avenger> i mean --> :)
[21:31:33] <Avenger> removing party members after excess is wrong in how
[21:31:56] <Avenger> GUIScript]: Runtime Error:
[21:31:57] <Avenger> Traceback (most recent call last):
[21:31:59] <Avenger> File "./GUIScripts/iwd/GUIWORLD.py", line 176, in RemovePlayer
[21:32:00] <Avenger> Label = Window.GetControl (0x0fffffff)
[21:32:02] <Avenger> File "./GUIScripts/GUIClasses.py", line 73, in GetControl
[21:32:04] <Avenger> return _GemRB.Window_GetControl(self.ID, control)
[21:32:05] <Avenger> RuntimeError: Control is not found
[21:32:33] <Avenger> the whole removing popup is weird, somehow different than in the original
[21:33:13] <fuzzie> hm, i can still use/cast spells after dual-classing from a mage in scummvm
[21:33:34] <fuzzie> erm, gemrb.
[21:33:47] <fuzzie> don't have how here to play with it :)
[21:35:13] <-- brad_a has left IRC (Ping timeout: 258 seconds)
[21:36:57] <fuzzie> gemrb really works nicely in general though..
[21:37:20] --> Micru has joined #gemrb
[21:37:23] <fuzzie> and huh i just got a capital in chapter text :)
[21:37:23] <Avenger> ahh, i think it is the window id, it should be 0, not 25
[21:37:39] <Micru> hi
[21:37:49] <Avenger> capitals work now?
[21:38:04] <fuzzie> i guess brad_a fixed them
[21:38:32] <fuzzie> ah, they are still a bit broken :P but much better
[21:39:07] <fuzzie> and of course our wrapping is broken because it doesn't reset the TextArea
[21:39:12] <fuzzie> but ok, that can all be fixed
[21:39:17] <fuzzie> very nice
[21:43:48] <fuzzie> although Nizidramanii'yt seems to have not dropped anything which is inconvenient
[21:43:54] <fuzzie> casting is really nice too
[21:55:02] <lynxlynxlynx> that's odd, it dropped the scales (and scroll?) in my last run
[21:55:40] <lynxlynxlynx> or is this the suldanesellar one? i think i got an armor there
[21:55:54] <fuzzie> well, i needed the cup thing
[21:55:59] <fuzzie> fine after a save/reload
[21:56:25] <lynxlynxlynx> i definitely got it, since it is game critical :)
[21:57:52] <fuzzie> is the dual-class disabling stuff just unimplemented?
[21:58:25] <fuzzie> *** glibc detected *** gemrb/gemrb: malloc(): memory corruption: 0x00007f9fd1c6f100 ***
[21:58:28] <fuzzie> /home/fuzzie/src/gemrb/build/gemrb/core/libgemrb_core.so(_ZN8TextArea12CalcRowCountEv+0x6e)[0x7f9fe906478e]
[21:58:31] <fuzzie> /home/fuzzie/src/gemrb/build/gemrb/core/libgemrb_core.so(_ZN8TextArea14UpdateControlsEv+0x9)[0x7f9fe9064979]
[21:58:34] <fuzzie> /home/fuzzie/src/gemrb/build/gemrb/core/libgemrb_core.so(_ZN8TextArea10AppendTextEPKci+0x220)[0x7f9fe90661a0]
[21:58:55] <fuzzie> ^- called by DisplayMessage from CreateProjectile from CastSpellPointEnd. silly me not having it under debugger.
[22:00:42] <fuzzie> really nice in general though
[22:00:52] <CIA-26> GemRB: 03avenger_teambg * r1b7dcc3677be 10gemrb/gemrb/GUIScripts/iwd/GUIWORLD.py: fixed remove party member in iwd/how
[22:00:59] <Avenger> hmm, that's nasty
[22:01:18] <fuzzie> i am mostly leaving it in backscroll for brad_a
[22:02:00] <Avenger> i found some pastebin crash reports for gemrb
[22:02:44] <Avenger> made very recently by dhewg (i think)
[22:02:44] <fuzzie> but it might not be the TextArea code at fault, i was in the middle of a huge battle :)
[22:02:44] <Avenger> but the source seemed very old
[22:03:57] <Avenger> well, one of his reports was a crash bug for casting sunray
[22:04:13] <fuzzie> that is oooold :)
[22:04:25] <fuzzie> i'm pretty sure we fixed it.
[22:04:33] <Avenger> oh, ok, you can find them with googling 'gemrb pastebin andre'
[22:04:45] <Avenger> i wonder why they were 'recently made'
[22:04:55] <Avenger> google could be mistaken
[22:05:36] <fuzzie> no, it says oct 2011 on the page
[22:06:36] <fuzzie> http://pastie.org/1830885 is the original report though, from April.
[22:06:49] <lynxlynxlynx> i'm pretty sure applykit should handle the casting
[22:07:07] <lynxlynxlynx> it updates the action bar
[22:07:39] <lynxlynxlynx> there were a couple crashes with sunray, but we fixed all that i could reproduce
[22:12:00] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[22:14:20] <Avenger> bye
[22:14:34] <-- Avenger has left IRC (Quit: bye!)
[22:19:24] <gembot> build #231 of mingw32 is complete: Exception [exception clean install] Build details are at http://buildbot.gemrb.org/builders/mingw32/builds/231 blamelist: avenger_teambg@sourceforge.net
[22:25:52] <-- Micru has left IRC (Ping timeout: 252 seconds)
[22:50:23] --> brad_a has joined #gemrb
[23:42:29] <-- Maighstir has left IRC (Read error: Connection reset by peer)