#gemrb@irc.freenode.net logs for 15 May 2010 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:26:24] --> cubathy has joined #GemRb
[00:49:29] <-- cubathy has left IRC (Ping timeout: 258 seconds)
[05:03:28] <-- Gekz has left IRC (Quit: This computer has gone to sleep)
[05:45:08] --> Gekz has joined #GemRb
[06:28:24] --> kettuz has joined #GemRb
[07:33:16] --> lynxlynxlynx has joined #GemRb
[07:33:16] --- ChanServ gives channel operator status to lynxlynxlynx
[07:36:03] <-- kettuz has left IRC (Quit: Leaving)
[11:54:30] --> barra_library has joined #GemRb
[12:51:41] <CIA-13> GemRB: 03lynxlupodian * rd5110a7dc6b2 10gemrb/gemrb/GUIScripts/ (5 files in 2 dirs): iwd: added HasHOW() and updated the relevant callers
[12:51:48] <CIA-13> GemRB: 03lynxlupodian * r2f2999a46f7a 10gemrb/gemrb/GUIScripts/iwd/CharGen.py:
[12:51:48] <CIA-13> GemRB: how: grant the tracking ability to rangers
[12:51:48] <CIA-13> GemRB: this was hardcoded in the exe in the original
[12:51:48] <CIA-13> GemRB: 03lynxlupodian * r2aa3b3ca03d6 10gemrb/gemrb/core/Map.cpp:
[12:51:49] <CIA-13> GemRB: DisplayTrackString: compute the tracking skill and do a harder check, since
[12:51:49] <CIA-13> GemRB: even the most foolish lvl1 ranger has a 70% bonus due to the minimum wisdom
[12:51:50] <CIA-13> GemRB: requirement
[14:29:36] --> mvbarracuda_libr has joined #GemRb
[14:33:22] <-- barra_library has left IRC (Ping timeout: 264 seconds)
[14:48:27] --- mvbarracuda_libr is now known as barra_home
[14:50:13] <-- barra_home has left IRC (Quit: Verlassend)
[16:06:38] --> barraAway has joined #GemRb
[16:09:46] --- barraAway is now known as barra_home
[16:32:47] <lynxlynxlynx> :s
[16:33:21] <lynxlynxlynx> can't figure out why soul eater doesn't work
[16:33:36] <lynxlynxlynx> the effect function doesn't get called at all
[16:34:32] <lynxlynxlynx> we have a custom projectile for it, but it has the right stuff attached and from what i've followed through payload to effects addition, i see no problem
[16:54:30] <fuzzie> it's not resisted?
[16:58:05] <lynxlynxlynx> didn't appear so
[16:58:09] <Lightkey> http://en.wikipedia.org/wiki/Soul_Eater_%28manga%29 !!1
[16:59:34] <lynxlynxlynx> i'll recheck
[17:04:07] --> cubathy has joined #GemRb
[17:09:44] <fuzzie> it all seems ok at a glance
[17:13:16] <lynxlynxlynx> heh, gemrb managed to escape from gdb
[17:13:37] <lynxlynxlynx> perfect ^c timing, i guess
[17:28:19] --> kettuz has joined #GemRb
[17:38:12] <lynxlynxlynx> ah
[17:38:31] <lynxlynxlynx> i think i may have found the culprit
[17:39:50] * Lightkey hydes
[17:40:05] <lynxlynxlynx> the projectile's first three effects are fx_resist_spell_and_message, which end up with FX_ABORT
[17:40:17] <lynxlynxlynx> need to recheck it first, in case i missed the first run
[17:48:30] <lynxlynxlynx> nope :s
[17:50:02] <lynxlynxlynx> so maybe the matching is bad, next run
[18:02:53] <fuzzie> the abort isn't a legitimate resist?
[18:03:12] <fuzzie> i have no idea what the spell is meant to do, so not so helpful :)
[18:04:50] <-- kettuz has left IRC (Quit: Leaving)
[18:20:02] <lynxlynxlynx> it has three of these effects to ensure golems, elementals and undead are not affected by the soul eating
[18:21:14] <lynxlynxlynx> this check is done earlier with targetting and works
[18:21:47] <lynxlynxlynx> if (strnicmp(fx->Resource,fx->Source,sizeof(fx->Resource)) ) { <-- however this is true, so the effect aborts and I suspect this causes all the rest of the spell effects to be skipped
[18:22:17] <fuzzie> yes, that's the intention of the abort
[18:22:39] <lynxlynxlynx> so AddAllEffects breaks and the spell does no damage
[18:23:33] <fuzzie> and you mean, fx->Resource == fx->Source so that is false?
[18:24:09] <lynxlynxlynx> uhh, they're the same if that was the question
[18:24:48] <lynxlynxlynx> maybe we should be setting Source more often
[18:25:42] <lynxlynxlynx> this use came from a quick item btw
[18:29:20] <fuzzie> you checked the matching?
[18:29:31] <fuzzie> it does look like it would be the culprit
[18:29:39] <lynxlynxlynx> ids? yes, that was fine
[18:30:07] <lynxlynxlynx> the return value would be different anyway
[18:31:37] <fuzzie> i'm pretty confused about this
[18:31:49] <fuzzie> i mean, we want to resist *for* the specified matches
[18:32:03] <fuzzie> so we should return FX_NOT_APPLIED when we *don't* match, no?
[18:33:03] <fuzzie> oh, i see, the return value of that function is inverted from what i'd expect
[18:33:43] <lynxlynxlynx> mhm
[18:34:43] <fuzzie> but then, if that function returns false, isn't the resist correct?
[18:35:30] <lynxlynxlynx> it is correct
[18:35:37] <lynxlynxlynx> oh
[18:36:08] <lynxlynxlynx> no
[18:36:54] <lynxlynxlynx> this particular spell should only affect everything that doesn't match those targets
[18:37:21] <lynxlynxlynx> maybe other uses of the effect are different, but here it should not break the whole spell when there is no match
[18:37:26] <lynxlynxlynx> just do nothing
[18:38:30] <fuzzie> check_iwd_targeting should return true if there's no match, though?
[18:38:38] <fuzzie> and so you'd never get to the FX_ABORT
[18:38:57] <lynxlynxlynx> that would fix this case, yes
[18:39:11] <lynxlynxlynx> it goes through the default case btw, DiffCore
[18:39:31] <fuzzie> well, i mean, that seems to be what the code/tables intend; DiffCore should return true on no match?
[18:40:12] <fuzzie> oh, except it doesn't
[18:41:43] <fuzzie> at a glance, seems like you should do !DiffCore there?
[18:44:00] <fuzzie> weird though, that code seems obviously wrong but has been like that forever
[18:44:10] <lynxlynxlynx> to me it seems more like the ! should be in the effect
[18:44:32] <fuzzie> well, the non-DiffCore branches return 0 on match
[18:44:38] <lynxlynxlynx> DiffCore will return true if the condition is met and check* will return true if the effect should be resisted
[18:45:04] <fuzzie> see STI_SOURCE_TARGET for example: it returns 0 on match (Owner==target) and 1 on no match
[18:45:31] <lynxlynxlynx> yeah, it's mixed
[18:46:00] <fuzzie> but, you're right, the other callers expect 1 on match
[18:47:57] <fuzzie> so inverting in the effect seems to make sense
[18:48:23] <lynxlynxlynx> and then also switching the 0/1s
[18:48:48] <lynxlynxlynx> but that needs more checking
[18:50:12] <fuzzie> '+ // XXX: inverted check?' :)
[18:53:35] <lynxlynxlynx> hmpf, still no zombies
[19:00:31] <-- tomprince has left IRC (Ping timeout: 245 seconds)
[19:03:56] <lynxlynxlynx> now it's the level check
[19:07:25] <lynxlynxlynx> hmpf, the spell description says nothing of limiting it thus
[19:12:18] <lynxlynxlynx> and would you believe the cyclops is level 27 >>
[19:14:44] <lynxlynxlynx> looks like another bug, the cre file has the levels as 13
[19:14:57] <lynxlynxlynx> still too much for soul eating though grr
[19:17:44] <lynxlynxlynx> ooh
[19:20:02] <lynxlynxlynx> the caster is the first target
[19:21:22] <-- Gekz has left IRC (Ping timeout: 264 seconds)
[19:25:17] <lynxlynxlynx> bleh
[19:37:15] --> edheldil_ has joined #GemRb
[19:41:24] <Lightkey> THE PAIN
[19:50:09] <lynxlynxlynx> hah, defiant little bugger
[20:04:16] <-- edheldil_ has left IRC (Ping timeout: 265 seconds)
[20:11:01] --> edheldil_ has joined #GemRb
[20:19:14] <-- edheldil_ has left IRC (Ping timeout: 240 seconds)
[20:24:24] <-- cubathy has left IRC (Ping timeout: 258 seconds)
[20:39:51] --> edheldil_ has joined #GemRb
[20:56:30] --> tomprince has joined #GemRb
[21:57:54] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[22:27:53] <-- edheldil_ has left IRC (Ping timeout: 246 seconds)
[22:34:26] --> edheldil_ has joined #GemRb
[23:34:37] <-- edheldil_ has left IRC (Read error: Operation timed out)