#gemrb@irc.freenode.net logs for 21 Jun 2009 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage


[01:12:56] <Edheldil> night
[01:13:16] <-- Edheldil has left IRC (Remote closed the connection)
[05:04:42] <-- Lightkey has left IRC (Remote closed the connection)
[05:06:06] --> Lightkey has joined #GemRB
[06:29:37] --> lynxlynxlynx has joined #gemrb
[06:29:37] --- ChanServ gives channel operator status to lynxlynxlynx
[06:33:28] <-- lynxlynxlynx has left #gemrb ("Sayonara, not to be confused with cyanide, which is, of course, goodbye in any language.")
[07:13:54] <-- pupnik_ has left IRC (Read error: 110 (Connection timed out))
[07:33:43] --> pupnik has joined #gemrb
[08:38:34] --- barra_away is now known as barra_library
[09:13:27] --> Avenger has joined #gemrb
[09:13:28] --- ChanServ gives channel operator status to Avenger
[09:15:26] <fuzzie> Avenger: TRAPDART seems to have suddenly started killing people with repeated damage, do you know why?
[09:15:41] <fuzzie> "43: 0x19: State:Poisoned (1, 2) S:spin707" but I don't know how to decode that
[09:15:49] <Avenger> it always did
[09:16:06] <fuzzie> It used to work for me :(
[09:16:19] <Avenger> well, that says spin707 is the spell which causes a poison effect (0x19)
[09:16:23] <Avenger> you recently changed it
[09:17:12] <Avenger> either it doesn't go away, it is too frequent, or causes more damage than it should?
[09:17:23] <fuzzie> param2 is RPD_POINTS according to the FX code, but DLTCEP says that '2' is 'every second'
[09:17:42] <Avenger> and iesdp says?
[09:18:00] <Avenger> there is also iwd2 effects.src
[09:18:04] <Avenger> i can check that
[09:18:15] <Avenger> that helped a lot in parameter naming
[09:18:41] <fuzzie> in the original game the damage is per-second, but maybe it is also POINTS
[09:18:47] <Avenger> Poison (state)=25*L/TE
[09:18:49] <Avenger> Hit Points per Second=2
[09:18:50] <Avenger> Hit Points=[0,9999]
[09:18:52] <Avenger> Seconds per Hit Points=3
[09:18:53] <Avenger> Seconds=[0,9999]
[09:18:55] <Avenger> Hit Points per Round=4
[09:18:56] <Avenger> Hit Points=[0,9999]
[09:18:57] <Avenger> Snakebite=6
[09:18:59] <Avenger> HP/Round=[0,9999]
[09:19:01] <Avenger> Envenomed Weapon=8
[09:19:02] <Avenger> HP/Round=[0,9999]
[09:19:04] <Avenger> looks like dltcep was using this info
[09:19:54] <fuzzie> those look okay to me, but they're not what the code uses :( i think disease has the same problem
[09:20:08] <Avenger> well, many people changed it after me
[09:20:27] <Avenger> you could try to track the changes :)
[09:20:32] <fuzzie> I guess the problem is that RPD_POINTS is just implemented wrong.
[09:20:41] <Avenger> it could be
[09:21:01] <fuzzie> It does 'damage = fx->Parameter1' and does the damage, and I guess that means it gets param1 damage every frame?
[09:21:21] <Avenger> it should get it only every second
[09:21:35] <Avenger> so there should be a gametime check
[09:21:47] <fuzzie> there is, but only for RPD_ROUNDS, RPD_TURNS and RPD_SECONDS.
[09:22:28] <Avenger> rpd_rounds
[09:22:34] <Avenger> err rpd_seconds
[09:22:46] <fuzzie> this effect is using 2, which is called 'RPD_POINTS'
[09:23:09] <Avenger> rpd points doesn't seem to check the gametime
[09:23:13] <Avenger> maybe that's the problem
[09:23:21] <fuzzie> should I try fixing it?
[09:23:32] <Avenger> copy the gametime stuff from above it
[09:23:50] <fuzzie> I wonder if RPD_PERCENT needs the same?
[09:23:52] <Avenger> all the effects shuold check the gametime
[09:24:08] <fuzzie> maybe I should just put the 'tmp' check at the bottom, then
[09:24:16] <Avenger> yes
[09:24:27] <fuzzie> fx_set_diseased_state has the same problem, if you could take a look
[09:24:43] <Avenger> but there is a problem, sometimes tmp is not coming from parameter1
[09:25:27] <Avenger> ok, this whole stuff is messed up, but luckily if you fix one, you can fix all :)
[09:25:38] <Avenger> there are quite many rpd_ style effects
[09:25:55] <Avenger> there are more in iwdopc
[09:26:11] <Avenger> regeneration is similar too, just in the opposite direction
[09:26:24] <Avenger> atm, i think regeneration makes you invulnerable, it is so fast
[09:27:09] <fuzzie> i think we fixed fx_set_regenerating_state a couple of weeks ago, if you didn't check recently
[09:27:22] <fuzzie> oh, not for percent
[09:27:32] <fuzzie> do you think RPD_PERCENT is per-second?
[09:30:33] <Avenger> rpd_percent takes max hp, calculates a percent from it. this is the damage for the duration of the spell. (doesn't work with permanent). Once it calculated the complete damage, it divides it up (probably per round)
[09:30:44] <Avenger> it converts itself to the new type
[09:30:58] <Avenger> so it is completely fubared in our implementation
[09:31:10] <fuzzie> ok, i'll leave it alone :)
[09:32:01] <Avenger> if it is rpd_percent, it needs a conversion like: if first apply and type=rpd_percent) { param1=fullhp*percent/duration; type=rpd_rounds}
[09:33:22] <fuzzie> We probably don't even need the 'first apply' test, if it always converts itself.
[09:33:24] <Avenger> i think i had this disassembled already
[09:33:36] <Avenger> yes, true
[09:35:27] <Avenger> type 2 should be: param1 hp every second
[09:35:48] <fuzzie> i wrote that now, it seems ok
[09:38:20] <CIA-18> gemrb: 03fuzzie * r6555 10/gemrb/trunk/gemrb/plugins/FXOpcodes/FXOpc.cpp: fix RPD_POINTS in FXOpc (not others)
[09:38:47] <fuzzie> that fixes the TRAPDART thing, but everything else needs fixing too
[09:42:25] --> zefklop has joined #gemrb
[09:48:05] <zefklop> hi everybody
[09:49:25] <fuzzie> hi, zefklop
[09:51:53] <Avenger> the recurrent damage opcode should be supressed in dialog/cutscene etc
[09:52:11] <Avenger> i mean, all poison/disease/regeneration
[09:52:56] <fuzzie> should all effects be suppressed there, or just those specific ones?
[09:54:36] <fuzzie> In any case, that was a distraction because I was worried my rewritten action code was the cause. :) Back to that.
[09:55:34] <zefklop> meh, spell casting is terribly broken...
[09:56:50] <Avenger> the repeating damage opcodes
[09:57:04] <Avenger> yes zefklop i might have broke it
[09:57:12] <Avenger> if it is selecting different spells than it should
[09:57:51] <Avenger> it looks like innates are different
[09:57:59] <Avenger> i fixed innates, but it broke normal spells
[09:58:24] <fuzzie> if you look at the irc log for yesterday, there is some discussion there
[10:00:17] <fuzzie> oh, hm, nothing more useful
[10:04:42] <zefklop> ok... will try to find why :)
[10:06:03] <fuzzie> well, you can look at Avenger's changes, that was r6543
[10:06:44] <fuzzie> and then try working out how to make both innates and spells work i guess :)
[10:47:17] <zefklop> what is sm->level for innates?
[10:47:41] <zefklop> in spellbook::generatespellinfo
[10:54:06] <Avenger> level is the spell level, innates have it at 1 usually
[10:55:19] <-- Avenger has left IRC ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
[11:29:18] --> lynxlynxlynx has joined #gemrb
[11:29:18] --- ChanServ gives channel operator status to lynxlynxlynx
[11:48:11] <CIA-18> gemrb: 03zefklop * r6556 10/gemrb/trunk/gemrb/plugins/GUIScript/GUIScript.cpp: Hopefully fix spell casting.
[11:48:27] <fuzzie> does it work for you for innates+spells, zefklop?
[11:48:36] <zefklop> yes :)
[11:48:39] <fuzzie> great :)
[11:49:49] <fuzzie> you weren't here last night, I should ask you too: please avoid touching any of the action/gamescript code today
[11:51:10] <zefklop> ok :)
[11:56:02] <zefklop> did anyone try to summon a deva?
[11:56:16] <zefklop> how can I have the debug dump of an actor btw?
[11:58:27] <fuzzie> ctrl-m when hovering over one
[11:58:47] <fuzzie> and i think avenger's fixes were specifically because you asked about deva summoning
[12:00:05] <zefklop> yes, but it is yellow circled
[12:00:11] <zefklop> no move possible
[12:01:02] <lynxlynxlynx> panic huh
[12:01:32] <fuzzie> could be more morale bugs
[12:02:06] <zefklop> no
[12:02:24] <zefklop> allegiance 4 current allegiance 4
[12:02:39] <fuzzie> but what is it to begin with? it will panic if it drops too fast
[12:02:41] <zefklop> morale 0 current morale 0
[12:02:48] <fuzzie> oh, or if it is 0 :)
[12:04:19] <zefklop> morale higher is better ?
[12:04:30] <fuzzie> yes
[12:04:35] <zefklop> meh
[12:04:47] <fuzzie> 20 is max, 10 is normal, i think
[12:06:22] <zefklop> morale recovery is? 1 = +1 per round, per seconds, game ticks?
[12:07:35] <fuzzie> there's a stat which counts the AI cycles per +1, i think
[12:07:36] <zefklop> deva has this value set to 1, minsc has 60
[12:07:54] <fuzzie> IE_MORALERECOVERYTIME
[12:08:15] <zefklop> yes, the deva has it of 1
[12:08:34] <zefklop> I think this is per AI cycles too
[12:08:44] <fuzzie> something is perhaps constantly reducing it, then
[12:09:00] <fuzzie> But I expect you know how it works better than me :)
[12:09:06] <lynxlynxlynx> check with how much it starts
[12:09:07] <zefklop> what do you talk about?
[12:09:17] <zefklop> it starts with 0
[12:09:29] <fuzzie> you checked the CRE?
[12:09:33] <zefklop> I mean, morale starts with 0
[12:09:41] <zefklop> yes
[12:10:01] <fuzzie> Huh. :/ Maybe we're meant to ignore morale for some creatures?
[12:10:13] <zefklop> with +1 at each AI cycles, this would recovery pretty fast
[12:10:42] <fuzzie> Recovery only happens for creatures with a PC IE_CLASS
[12:10:56] <fuzzie> that is a bug, i expect
[12:11:30] <zefklop> class : 0xc ranger :/
[12:11:38] <lynxlynxlynx> abishai start with 12, some Boy with 10, guard captain 10, valen 17, fallen deva 0, goblin 10
[12:11:39] <fuzzie> oh, then it should be fine :(
[12:12:22] <lynxlynxlynx> so a good start would be to reset morale to 10 if the initial value is less than 10
[12:12:43] <zefklop> I think that each IE_MORALERECOVERYTIME, the morale -- or ++ to get closer to the base value
[12:12:51] <fuzzie> lynxlynxlynx: i wonder if the original game does that, though
[12:13:02] <fuzzie> zefklop: well, right now we just always add one :)
[12:13:31] <fuzzie> what is IE_MORALEBREAK for the deva?
[12:13:52] <zefklop> wow as it is a byte according to IESDP, we much reach 256 pretty fast
[12:13:57] <lynxlynxlynx> btw, my devas don't have class set (0xff)
[12:14:06] <fuzzie> zefklop: the stat does not go higher than 20
[12:14:08] <lynxlynxlynx> 0
[12:14:16] <lynxlynxlynx> 1 for recovery
[12:14:29] <lynxlynxlynx> so initial is 0, break at 0 == morale break
[12:14:38] <zefklop> lynxlynxlynx: devagood.cre ?
[12:14:40] <fuzzie> perhaps morale breaks shouldn't happen if break is 0?
[12:14:58] <lynxlynxlynx> zefklop: both
[12:15:05] <lynxlynxlynx> unpatched tob
[12:15:07] <zefklop> meh
[12:15:07] <fuzzie> or perhaps the '<=' in pcf_morale should be a '<'.
[12:15:32] <zefklop> unpatched == no patching mod or vanilla from CD
[12:15:34] <fuzzie> but i think changing it without checking is not a good idea
[12:15:46] <lynxlynxlynx> vanilla
[12:15:50] <zefklop> ok
[12:16:17] <fuzzie> my patched ToB also has a 0xff class for DEVAGOOD
[12:16:44] <zefklop> meh... what did I do with my install?
[12:16:57] <zefklop> I have both devagood and devaevil in override
[12:17:28] <zefklop> time to lunch
[12:17:30] <zefklop> see you
[12:17:41] <lynxlynxlynx> maybe the fixpack addresses this
[12:19:06] <lynxlynxlynx> nothing in the g3 one
[12:19:35] <fuzzie> devSin says that <= is correct
[12:19:43] <fuzzie> but that a morale break of 0 is immunity to morale failure
[12:20:00] <fuzzie> he's a bit confusing about it
[12:20:59] <fuzzie> see http://forums.gibberlings3.net/index.php?showtopic=8886&start=0&p=81499
[12:21:09] <lynxlynxlynx> A Heartwarder can kiss an ally to give him +1 morale bonus to hit and damage, and protection against fear for 2 turns. She can use this ability as many times as she wants, but she can't use it on herself. >>
[12:21:32] <lynxlynxlynx> it would be wierd to be able to scare a deva
[12:21:44] <fuzzie> > A morale break of 0, for all intents and purposes, is immunity to morale failure. Morale is an unsigned value, so it can never be lower than 0. Creatures like demons or other fearless beasties will usually have a 0 or 1 here and 0 or 1 (or some suitably low value) for the recovery rate.
[12:22:13] <fuzzie> but that doesn't really make much sense when he also says that breaks happen when morale is <= morale break, since morale can easily be 0
[12:25:45] <fuzzie> i also wonder what morale recovers *to* .. always to 10, and only recovering if it's below 10?
[12:26:27] <lynxlynxlynx> maybe to the starting one
[12:26:45] <lynxlynxlynx> so even if you cast remove fear on the deva, it would be 0 heh
[12:27:15] <fuzzie> well, nothing keeps track of the starting one
[12:27:34] <fuzzie> the highest morale i see in any of my savegames is 19, interesting
[12:29:04] <fuzzie> maybe that's just coincidence though
[12:33:13] <lynxlynxlynx> the starting one is not in BaseStats?
[12:33:28] <fuzzie> not once you saved/loaded a game
[12:34:08] <lynxlynxlynx> is that a bug or by design?
[12:34:11] <fuzzie> i think not at all, we manipulate BaseStats for morale
[12:34:27] <lynxlynxlynx> oh
[12:34:32] <fuzzie> well, the CRE file format only has one spot for morale
[12:35:20] <fuzzie> the original engine just writes the current morale value there
[12:35:47] <fuzzie> the PS:T fixpack uses a previously-unused spot in the file to write a 'max morale', but that is all-new engine code by the fixpacker
[12:37:14] <fuzzie> i'm not intending to fix this, btw, i hope that you or zefklop can look into it
[12:38:11] <lynxlynxlynx> maybe in a few days, the next few have a great potential to be hectic
[12:38:29] <lynxlynxlynx> but i think zefklop will attack it before ;)
[12:38:45] <fuzzie> i'm going to try and commit this action/movement stuff today
[12:38:52] <fuzzie> and then i can spend the next few days fixing everything that it breaks :)
[12:39:02] <lynxlynxlynx> gulp
[12:39:37] <lynxlynxlynx> maybe you should work in a branch and if all goes well we merge it in for the release, otherwise we do it after
[12:39:38] <fuzzie> although that is maybe not much, all the bugs I'm finding are broken with svn anyway..
[12:40:20] <fuzzie> eg, if you try clicking on Minsc at the start of bg2, you don't move towards him
[12:40:57] <fuzzie> i assume that's broken for everyone else, anyway
[12:43:01] <fuzzie> and I think we'd gain more out of the new action code than we'd lose in new bugs, but I can keep it in a local branch if everyone would prefer
[12:43:46] <lynxlynxlynx> you know what you're doing the best, so you be the judge of that
[12:53:04] --> xrogaan_ has joined #gemrb
[12:53:11] <xrogaan_> lo
[12:53:55] <fuzzie> hi
[13:03:44] <-- xrogaan_ has left IRC (Read error: 60 (Operation timed out))
[13:07:17] --> xrogaan has joined #gemrb
[13:08:32] <fuzzie> mental note for later: AttackOneRound should probably be using ROUND_SIZE, not AI_UPDATE_TIME
[13:13:48] <fuzzie> and BreakInstants doesn't look like it works
[13:19:00] <xrogaan> your work is really awesome
[13:25:42] <fuzzie> thanks, i guess :)
[13:25:55] --> barra_desktop has joined #gemrb
[13:26:12] * fuzzie pokes at the missing Avenger spot
[13:27:05] <xrogaan> but, why don't you package it ?
[13:27:20] <lynxlynxlynx> we do
[13:27:31] <-- pupnik has left IRC (Read error: 110 (Connection timed out))
[13:27:37] <lynxlynxlynx> we can't package for every possible manager/os though
[13:27:50] <fuzzie> There's a package pending in REVU for Ubuntu, but it is still not accepted.
[13:28:09] <lynxlynxlynx> i keep the sourcemage package uptodate and we have a rpm spec
[13:28:53] <lynxlynxlynx> with some delay we also produce windows exes and sometimes static binaries
[13:29:07] <lynxlynxlynx> openbsd also keeps up
[13:29:24] <lynxlynxlynx> xrogaan: what are you missing?
[13:30:14] <xrogaan> gee
[13:30:48] <fuzzie> The Debian packager seems to have given up. I should talk to the Debian games team, perhaps.
[13:31:06] <xrogaan> yes
[13:31:21] <xrogaan> I just do a urpmq gemrb, but it is not in mandriva repos
[13:31:56] <xrogaan> I have not search further
[13:32:17] <xrogaan> (well, i looked in debian repo too)
[13:32:31] <xrogaan> and my english is realy weird
[13:32:45] <fuzzie> your english is fine
[13:34:25] <xrogaan> there is nothing for debian : http://packages.debian.org/search?keywords=gemrb&searchon=all&suite=all§ion=all
[13:35:12] <fuzzie> yes, it didn't get into debian yet :(
[13:36:20] <-- barra_desktop has left IRC ("Verlassend")
[13:37:46] <xrogaan> I can not believe that a project of this kind exists. We'll able to have real free RPG games ^^
[13:39:25] <fuzzie> Have you seen PARPG? It is just a start but it is also hopeful.
[13:39:55] <lynxlynxlynx> mandriva should digest (fedora) rpms nicely
[13:41:03] <xrogaan> lynxlynxlynx, i also think
[13:41:12] <xrogaan> but ...
[13:41:53] <lynxlynxlynx> but?
[13:42:11] <lynxlynxlynx> i suggest you post a feature request to the mandriva bugzilla
[13:42:47] <lynxlynxlynx> but you could wait a few days for the next release, we forgot to include the spec file in the last
[13:44:59] <lynxlynxlynx> we'll also need someone with suse to make a package via their factory
[13:46:16] <xrogaan> i can try to make a package for mandriva
[13:46:31] <xrogaan> if you have the spec, it's easy
[13:49:18] <zefklop> hi, I'm back
[13:49:46] <zefklop> so a morale break of 0 means immunity?
[13:50:05] <fuzzie> devSin is usually right
[13:51:17] <xrogaan> i don't belive in the QA tracker of mandriva ^^
[13:51:30] <zefklop> so let's implement it :)
[13:52:47] <fuzzie> should be simple enough, just another check in pcf_morale
[13:53:50] <fuzzie> ouch, the lightning memphit shot lightning at me
[13:53:52] <fuzzie> that shouldn't be allowed
[13:55:28] <fuzzie> very pretty though
[13:56:44] <fuzzie> in any case, i don't seem to have broken anything too essential with my changes, hooray
[14:00:11] <zefklop> meh
[14:00:22] <zefklop> svn commit -> inconsistent file ending
[14:00:39] <zefklop> any idea?
[14:01:05] <zefklop> sorry "inconsistent line ending style"
[14:01:16] <fuzzie> just take the relevant bit of the changes and add them without eclipse?
[14:01:44] <zefklop> will see with comand line svn
[14:02:16] <wjp> make the line endings consistent?
[14:02:37] <wjp> (i.e., all dos-style, or all unix-style)
[14:02:49] <fuzzie> i think we'd have to change the whole repos, and then other committers just change it back again
[14:02:54] <zefklop> they are set to "native" in svn properties
[14:03:04] <wjp> fuzzie: svn does transparent translation
[14:03:11] <zefklop> command line svn does not work either
[14:03:18] <fuzzie> wjp: i don't think our svn is set to do it, though?
[14:03:42] <zefklop> fuzzie: it is, all files are set to native for eol-style
[14:04:29] <wjp> zefklop: so probably in your local file a wrong line ending snuck in somewhere
[14:04:41] <fuzzie> eclipse seems to enjoy fiddling with the line endings
[14:04:55] <fuzzie> but i couldn't work it out
[14:06:17] <zefklop> svn revert did it
[14:06:20] <CIA-18> gemrb: 03zefklop * r6557 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: IE_MORALEBREAK of 0 means immunity, according to devSin.
[14:07:44] <zefklop> and yeah, aclipse is very powerful, but it really has an odd behaviour with spaces and eol
[14:08:19] <zefklop> wjp: do we still need the openal branch ?
[14:08:31] <fuzzie> it was merged long ago
[14:08:37] <zefklop> yes
[14:08:42] <fuzzie> so we should leave it alone :)
[14:09:38] --> Avenger has joined #gemrb
[14:09:42] --- ChanServ gives channel operator status to Avenger
[14:09:54] <fuzzie> Avenger: did you get the AF_BLOCKING data from the original engine, or is it just a best guess?
[14:10:59] <Avenger> it is solid guess. I use it to mark if an effect should stay on top of the queue
[14:11:09] <fuzzie> yes, I am using it for that too
[14:11:17] <Avenger> hehe, luckily
[14:11:42] <Avenger> i forgot to tell you that most of the effects you want to fix are already working like that :)
[14:12:15] <fuzzie> yes, the code is already pretty good
[14:12:27] <Avenger> the only difference is that the attack routine is separated from the actions
[14:12:31] <fuzzie> it didn't *work* properly, but the code is mostly there
[14:12:32] <Avenger> i'm not sure it is good
[14:12:56] <fuzzie> well, i am leaving that for later
[14:13:01] <Avenger> i'm pretty sure the IE does the attack moves in the actions
[14:13:08] <fuzzie> yes
[14:13:09] <fuzzie> i think so too
[14:13:14] <fuzzie> i checked it quite a bit
[14:13:26] <Avenger> so, what are you changing?
[14:13:33] <fuzzie> i am making blocking actions actually blocking
[14:13:44] <Avenger> wait?
[14:13:55] <fuzzie> no, they must be re-executed every frame
[14:13:59] <Avenger> i think wait is not going back to the queue
[14:14:08] <Avenger> at least now
[14:14:15] <Avenger> not sure about the IE :)
[14:14:17] <fuzzie> in svn, no action is ever executed twice
[14:14:39] <fuzzie> an action is removed from the queue when the queue is re-evaluated
[14:14:48] <fuzzie> i fixed it so that it just re-executes blocking actions until they are done
[14:14:52] <fuzzie> but this requires a lot of fixes elsewhere
[14:15:07] <fuzzie> so i have a 1000-line patch which does nothing but fix that..
[14:15:16] <Avenger> are you sure???
[14:15:29] <Avenger> i'm pretty sure blocking actions were not removed
[14:15:34] <fuzzie> they are
[14:15:38] <fuzzie> it is stupid
[14:15:39] <Avenger> only after ReleaseCurrentAction
[14:15:42] <fuzzie> i think someone broke it
[14:16:02] <fuzzie> ReleaseCurrentAction() is called at the start of Scriptable::ProcessActions in svn
[14:16:17] <fuzzie> but if you just remove that, you break everything.
[14:16:24] <fuzzie> hence my complicated patch.
[14:16:41] <Avenger> executeaction dropped only non blocking actions
[14:17:00] <fuzzie> yes, but ProcessActions drops all actions at the start.
[14:17:22] <fuzzie> ExecuteAction is fine, i did not change that bit
[14:18:06] <Avenger> ahh you think this part? : if (CurrentAction) {
[14:18:09] <Avenger> ReleaseCurrentAction();
[14:18:10] <Avenger> }
[14:18:11] <fuzzie> yes
[14:18:13] <Avenger> it won't :)
[14:18:19] <fuzzie> it does.
[14:18:41] <Avenger> no, this is a very nasty trick,currentaction is null at that point
[14:19:00] <fuzzie> you push the action back on the stack somewhere?
[14:19:25] <fuzzie> i don't think you do.
[14:19:47] <fuzzie> i mean, i would ask you not to change it, because i rewrote it to work like IE now :)
[14:20:41] <Avenger> i didn't do anything recently
[14:20:55] <fuzzie> some actions try this AddActionInFront() hack
[14:21:20] <fuzzie> but that's really the wrong way to do it
[14:22:55] <Avenger> well, we'll see it at the end of the day :D
[14:23:09] <fuzzie> you can see my current patch if you want, but it's just confusing
[14:23:34] <Avenger> i will want to see it once you say it is done
[14:24:00] <fuzzie> the top of http://fuzzie.org/nfs/gemrb/blocking_actions_should_block.txt is the important bit
[14:24:41] <fuzzie> we could just keep actions on top of the stack instead, but that makes the code less nice
[14:24:51] <fuzzie> and this gives the same results
[14:25:38] <fuzzie> (obviously the rest of that patch is not finished, many bugs)
[14:26:08] <fuzzie> many many bugs.
[14:26:55] <Avenger> i'm still working on projectiles
[14:27:14] <Avenger> line area of effect like: agannazar's scorcher
[14:27:23] <fuzzie> that would be very nice to see
[14:27:25] <Avenger> with moving target :)
[14:27:32] <Avenger> it is almost working now
[14:27:41] <lynxlynxlynx> xrogaan: well, any way it can get it is good
[14:29:14] --- lynxlynxlynx has changed the topic to: Proudly bringing GemRB 0.4.0 to the gaming market | Gekz, it's at http://gemrb.sf.net | Be wary of your words for there are Modron sensors in this channel: http://log.usecode.org/gemrblog.php
[14:32:19] <lynxlynxlynx> Avenger: i took a quick look at the height thing; is the casting animation frame (let's say frame 0) height the one to use as a base for the heightmod? I didn't find any simpler methods to get the actor height.
[14:33:04] <Avenger> well, isn't there some info in CharAnimations?
[14:33:48] <Avenger> GetSize()
[14:34:30] <Avenger> instead of GetCircleSize() you can use GetSize()
[14:34:41] <Avenger> that is more precise
[14:34:46] <Avenger> at least, when it exists :)
[14:34:57] <Avenger> you can still fall back to getcirclesize
[14:35:03] <zefklop> I have to leave
[14:35:10] <zefklop> bye everybody
[14:35:18] <zefklop> see you next week
[14:35:23] <-- zefklop has left IRC ("ChatZilla 0.9.75.1 [SeaMonkey 1.1.16/2009040306]")
[14:36:13] <Avenger> GetSize() returns a character, like 'S' 'M', etc
[14:36:37] <Avenger> hmm, maybe it isn't too useful
[14:36:46] <lynxlynxlynx> yes, but only a few anims have it
[14:36:53] <lynxlynxlynx> plus the fact there are only 3 types
[14:45:06] --> Gekz has joined #GemRB
[14:45:20] <Avenger> well, the casting animation doesn't end at the hands
[14:45:27] <Gekz> Hey
[14:48:50] <lynxlynxlynx> of course not
[14:49:12] <lynxlynxlynx> i meant to get the actor size and downscale it with a fixed factor
[14:50:09] <lynxlynxlynx> if that works, great, otherwise we'll maybe need another table column in avatars.2da and a lot of testing to find the good heights :/
[14:50:20] <Avenger> i don't think it will work
[14:50:31] <wjp> hand heights? shouldn't those already be available for weapon animations?
[14:50:51] <Avenger> lynx says it is not available for a lot of creatures
[14:50:55] <Avenger> and it is true
[14:51:09] <Avenger> but, i think it isn't in the correct height for a lot of creatures either :)
[14:51:33] <Avenger> ever seen where the CG is for a dragon?
[14:51:58] <lynxlynxlynx> haven't met a dragon in gemrb yet
[14:52:00] <wjp> I seem to remember that was a bit weird
[14:52:19] <lynxlynxlynx> oh, we have a screenshot somewhere
[14:55:07] <-- Gekz has left IRC (Remote closed the connection)
[14:55:27] <-- xrogaan has left IRC ("Bye bye")
[14:57:13] <lynxlynxlynx> can't find it
[14:58:12] <lynxlynxlynx> my initial gripe is with the x/y offsets, i don't know if the height is really bad yet due to perspective
[14:59:42] <lynxlynxlynx> but since we use the circle size*12 as the height mod, it is easy to know we have a bad height sometimes
[15:00:07] <lynxlynxlynx> most actors have that size as 2, while they range from halflings to ogres
[15:03:09] <fuzzie> Avenger: which game is RunAwayFromPoint from?
[15:04:23] <Avenger> it is gemrb specific
[15:04:29] <fuzzie> ok.
[15:04:32] <Avenger> see gamescript.h
[15:05:05] <fuzzie> we abuse the int0Parameter of RunAwayFrom for 'distance' right now
[15:05:15] <fuzzie> i was just wondering if that was also a bug in RunAwayFromPoint
[15:05:15] <Avenger> those are actions i thought to be trivial and needed
[15:05:41] <Avenger> they could be similar
[15:06:14] <Avenger> yes, it uses the same field
[15:06:32] <fuzzie> another thing i will have to fix in this patch
[15:07:21] <fuzzie> I'm trying to keep it minimal, a "making nothing worse" patch, but it is difficult when the move code is doing stupid things.
[15:07:48] <fuzzie> eg, FollowCreature does not following!
[15:21:02] <fuzzie> ok, http://fuzzie.org/nfs/gemrb/blocking_actions_should_block.txt is my proposed first patch
[15:21:38] <fuzzie> As far as I know it doesn't break anything which worked already, but things which did not work properly before are probably going to be broken differently.
[15:21:49] <fuzzie> But I don't want to start rewriting the entire codebase with one patch.
[15:23:00] <Avenger> hehe, now i have to test if they were truly not broken before :D
[15:23:30] <Avenger> or you did that?
[15:23:47] <Avenger> when you say followcreature isn't working, it didn't work before the patch, right?
[15:23:53] <fuzzie> yes
[15:23:59] <fuzzie> i improved it in the patch
[15:24:32] <Avenger> well, commit it, i cannot test anything at the moment
[15:24:42] <Avenger> i want to finish this projectile, and i'm on windows
[15:24:51] <fuzzie> hehe, it is 1200 lines, I'll spend while testing it first :)
[15:27:45] <fuzzie> I think I made RunAwayFrom a bit worse, for example.
[15:28:02] <fuzzie> devSin was talking about that.
[15:28:58] <fuzzie> oh for goodness sake, BGT's startpos.2da is annoying
[15:29:05] <fuzzie> they rearranged the lines to have a different order!
[15:31:27] <Avenger> haha
[15:31:30] <Avenger> now i see
[15:31:49] <Avenger> so we should use labels if we want to stay compatible
[15:32:08] <Avenger> really annoying
[15:39:42] <fuzzie> yes
[15:42:20] <fuzzie> ok, first bug in my code, Illasera is not casting any spells :/
[15:45:28] <fuzzie> most of this code is *fine*, back in the early days blocking actions must have worked properly
[15:45:36] <fuzzie> just none of the new stuff is good
[15:53:11] <fuzzie> Oh, right, LastSeenBy.
[15:55:47] <fuzzie> i am going to sabotage all the trigger stuff while actions are running, for now
[15:57:10] <CIA-18> gemrb: 03lynxlupodian * r6558 10/gemrb/trunk/gemrb/plugins/FXOpcodes/FXOpc.cpp: improved the casting blob x offset (gnomes are great now, since their height matches too)
[15:58:14] <fuzzie> heh :)
[16:04:45] <fuzzie> lynxlynxlynx: does Illasera cast spells when you attack her, for you?
[16:05:11] <lynxlynxlynx> yes, but i don't have any of your stuff applied
[16:05:24] <fuzzie> i'm just wondering if i broke it with another recent commit
[16:07:33] <lynxlynxlynx> what appears to be recently broken is ch1, i can't complete it anymore
[16:12:30] <fuzzie> Avenger: why does Allegiance(Myself,0) always return true?
[16:13:56] <fuzzie> it seems deliberate in the code
[16:14:41] <fuzzie> wait, let me test what the real result is
[16:15:51] <fuzzie> ok, it is meant to return true., never mind.
[16:16:31] <fuzzie> GRPSHT01's second block triggers every time that it is AttackedBy([GOODCUTOFF]) and that Allegiance(Myself,0) is true
[16:16:58] <fuzzie> this means that if you have a few people hitting an actor, that block triggers every few frames, interrupting whatever the actor is doing
[16:18:59] <fuzzie> actually, it should trigger /every frame/.
[16:20:31] <fuzzie> I guess AttackedBy() should really be a once-only thing, then..
[16:24:36] <Avenger> attackedby is different from hitby
[16:24:51] <fuzzie> any idea how it is meant to work? take a look at GRPSHT01, if you have a moment
[16:25:20] <fuzzie> that second block does not repeatedly trigger, but the Allegiance(Myself,0) always returns true, apparently
[16:25:28] <Avenger> not really, i think attackedby is triggered when one actor switches target (from null too)
[16:26:10] <fuzzie> gemrb's AttackedBy() always returns true if the actor is a target of an attacker
[16:28:30] <Avenger> maybe that's not correct
[16:28:42] <fuzzie> it should probably use LastAttacker.
[16:29:17] <fuzzie> but if it's truly broken it should be broken in svn, i will have to build plain svn and test
[16:32:22] <fuzzie> yes, the problem is present in svn, Illasera is stuck repeatedly doing that block
[16:32:41] <fuzzie> and so never casts spells
[16:36:12] <Avenger> hmm
[16:36:28] <Avenger> we broke this stuff heavily :)
[16:36:47] <fuzzie> it gets better in the long-run though :)
[16:36:59] <Avenger> the gui part i broke wont harm illasera
[16:37:11] <Avenger> that is a trigger problem
[16:37:25] <Avenger> maybe it was never correct
[16:37:27] <fuzzie> i think zefklop fixed the gui
[16:37:51] <fuzzie> illasera worked before because of the concurrent script running
[16:38:07] <fuzzie> the results of the first script just got overwritten by the other scripts
[16:38:29] <fuzzie> but grpsht01 is in the override slot and i tested that heavily, it is not concurrent
[16:38:58] <Avenger> huh i don't know
[16:39:04] <lynxlynxlynx> the gui is only 3/4 fixes, now i get a lot of console errors
[16:39:16] <lynxlynxlynx> hits one of the new runtime exceptions
[16:39:23] <Avenger> i think he just broke it even more ;)
[16:39:34] <fuzzie> oh drat :(
[16:39:38] <lynxlynxlynx> at least it picks the correct spell
[16:39:50] <fuzzie> oh, that is not so bad :)
[16:40:00] <Avenger> it would be safer to rollback before my change, and fix it again, knowing what i tried to fix
[16:40:12] <fuzzie> i did point zefklop at your commit
[16:40:37] <fuzzie> projectiles in gemrb get better and better and better
[16:40:53] <Avenger> no fuzzie, they are very broken in my sandbox ;D
[16:41:09] <fuzzie> you are really amazing, some of it is very prettty now :)
[16:41:35] <Avenger> i just made instant redirection of the missile when the target changes position
[16:41:49] <Avenger> and the line type projectile of agannazar/scorching ice
[16:41:54] <Avenger> but they are broken
[16:57:26] <fuzzie> the sparkles go behind dead bodies, which looks weird
[16:57:35] <fuzzie> but perhaps that is just because i have about 1000 sparkles on-screen
[17:00:01] <fuzzie> lynxlynxlynx: i think the challenge thing is because there's someone left behind with a grpsht01 script and they are repeatedly doing Shout()
[17:01:08] <lynxlynxlynx> ah, didn't know these two were connected
[17:01:26] <Avenger> cool, finally
[17:01:31] <fuzzie> i don't understand it, though, they have a chaldie script which does DestroySelf()
[17:01:42] <Avenger> i made a very slow projectile, and it is chasing me funnily
[17:01:55] <Avenger> it changes direction whenever i move :)
[17:02:01] <Avenger> now it works, phew
[17:02:09] <fuzzie> maybe GetActorFromObject doesn't work on dead actors
[17:02:23] <Avenger> it depends on GA_* flags
[17:07:36] <CIA-18> gemrb: 03lynxlupodian * r6559 10/gemrb/trunk/gemrb/plugins/Core/CharAnimations.cpp: added missing sleep animation to MOGR
[17:08:30] <Avenger> huh lynx
[17:08:48] <Avenger> the projectiles are bad because of blitgamesprite :)
[17:09:20] <Avenger> try to disable the left panel
[17:10:05] <lynxlynxlynx> yeah?
[17:10:06] <Avenger> apparently the sprites are drawn leftwards with the size of the left pane :)
[17:10:44] <Avenger> i just accidentally disabled it, and the scorcher line 'snapped' in place
[17:11:10] <fuzzie> someone should really fix ctrl-y
[17:11:16] <fuzzie> killing these challenge waves manually is getting old :)
[17:11:28] <Avenger> it works for me fuzzie
[17:11:38] <fuzzie> Avenger: but it breaks scripts
[17:11:45] <Avenger> hmm
[17:11:51] <fuzzie> because it circumvents all the damage routines and simply modifies HP to -100
[17:12:00] <lynxlynxlynx> it should just cause damage instead
[17:12:13] <Avenger> they execute a kill(myself)
[17:12:26] <fuzzie> yes, which doesn't do damage, it just sets HP to -100
[17:12:34] <fuzzie> it is an insta-kill script action
[17:12:50] <Avenger> and what they miss?
[17:13:00] <Avenger> wouldn't the death variables be set?
[17:13:09] <Avenger> they should
[17:13:14] <fuzzie> for instance, chars with MINHP die, and they shouldn't
[17:13:31] <lynxlynxlynx> it's also not how ie does it
[17:13:51] <fuzzie> the original IE just does 1000 points of damage, and it seems to work fine
[17:14:54] <fuzzie> DestroySelf() is a problem for these challenge scripts, though, because it circumvents all variable setting
[17:15:42] <Avenger> hmm ok, maybe this projectile blitting was only my fault
[17:15:49] <Avenger> and specific to the line projectiles
[17:15:51] <fuzzie> i don't know how to fix that
[17:16:00] <fuzzie> iesdp says DestroySelf() doesn't set death variables
[17:16:22] <Avenger> Kill() is the same ?
[17:16:25] <fuzzie> but the challenge scripts require that DestroySelf() changes EXTRACOUNT, and i put that in the CheckOnDeath() script with the death variables
[17:16:40] <fuzzie> Avenger: sorry, i got distracted onto another bug :)
[17:16:59] <Avenger> ah i see
[17:17:02] <fuzzie> Kill() is fine, but ctrl-y calling Kill() makes it useless for debugging
[17:17:19] <Avenger> extracount is counting killed extras?
[17:17:24] <Avenger> or remaining extras
[17:17:24] <fuzzie> yes
[17:17:30] <fuzzie> it counts remaining extras
[17:17:35] <fuzzie> so i subtract one in that function
[17:17:50] <fuzzie> Actor.cpp:2696
[17:18:05] <Avenger> it could be made a token
[17:18:12] <Avenger> or whatever
[17:18:18] <Avenger> calculated dynamically
[17:18:28] <Avenger> not calculated when you kill something
[17:18:39] <fuzzie> scripts manipulate the variable directly
[17:18:49] <Avenger> they can change it???
[17:18:55] <fuzzie> fuzzie@alyssa:~/src/weidu/weidu/baf$ grep EXTRACOUNT * | grep IncrementGlobal -c
[17:18:55] <fuzzie> 151
[17:19:49] <Avenger> hmm what is extracount10 :)
[17:20:17] <Avenger> there are extracountN strings n=1-10 in bgmain
[17:20:22] <fuzzie> oh, damn
[17:21:28] <fuzzie> my code works for EXTRACOUNT and EXTRACOUNT2 to EXTRACOUNT10
[17:21:41] <fuzzie> i didn't find an EXTRACOUNT1 though
[17:21:56] <Avenger> hmm yes, no 1
[17:23:00] <Avenger> i cannot believe this variable is set when death variable isn't
[17:23:31] <fuzzie> all of the challenge actors have a CHALDIE override script attached, which does a special effect on death followed by DestroySelf()
[17:23:53] <fuzzie> and the challenge scripts do not work without the EXTRACOUNT vars being 0 when you killed everything
[17:24:36] <Avenger> but why would they use destroyself if they die anyway
[17:24:46] <Avenger> do they have minhp1
[17:24:56] <fuzzie> because the effect is a "disappear in a flash of light" one, and they want to make sure the corpse disappears instantly :)
[17:25:23] <Avenger> looks like the death variables should be set before that
[17:25:25] <Avenger> :)
[17:25:38] <fuzzie> oh, right, they're dying first.. damn
[17:26:03] <Avenger> but this is before that
[17:26:12] <fuzzie> no, this is in a Die() trigger
[17:26:19] <fuzzie> they already died when the script is run
[17:26:49] <Avenger> yes, but it seems the variables are not set in time
[17:27:05] <fuzzie> So the variables should probably be set on death, and not in CheckOnDeath().
[17:27:16] <fuzzie> is that what you mean?
[17:27:18] <Avenger> yes
[17:27:43] <Avenger> before immediateevent
[17:27:50] <fuzzie> ok.
[17:27:57] <Avenger> btw, you could check this
[17:28:10] <fuzzie> well, i want to commit this blocking stuff first :)
[17:28:22] <fuzzie> i just keep finding bugs, and i need to find their cause to make sure it's not the blocking patch
[17:28:27] <Avenger> add a trigger in a dying actor: check if dead(myself) is true when they die
[17:28:47] <Avenger> if it is true, then spriteisdead<scriptname> was already set
[17:29:42] <Avenger> hehe good for you, i'm almost done with the projectile refactoring
[17:29:49] <fuzzie> :-)
[18:01:46] <fuzzie> Avenger: [PC] is matching Sender, how do I fix that?
[18:02:04] <Avenger> is sender a pc?
[18:02:07] <fuzzie> yes
[18:02:18] <Avenger> then why do you need to fix that?
[18:02:22] <fuzzie> because it is wrong
[18:02:40] <fuzzie> the original engine never matches sender
[18:02:47] <fuzzie> i mean, not for [PC], i didn't test anything else
[18:03:11] <fuzzie> it already works fine for NearestPC, which works the same as the original engine
[18:04:00] <Avenger> Targets* GetAllObjects(Scriptable* Sender, Object* oC, int ga_flags)
[18:04:33] <Avenger> err rather static Targets* EvaluateObject(Scriptable* Sender, Object* oC, int ga_flags)
[18:04:38] <fuzzie> oh, it *doesn't* work ok for NearestPC. that is strange
[18:04:54] <Avenger> //else branch, IDS targeting
[18:05:22] <Avenger> while (t) {
[18:05:31] <Avenger> ok, near that while(t)
[18:05:56] <Avenger> if t->actor is the same as sender, skip it
[18:06:08] <Avenger> got it?
[18:06:13] <fuzzie> sure, thanks
[18:07:06] <Avenger> well, this means none of the [x.y.z] objects will return Sender
[18:07:07] <Avenger> ever
[18:07:22] <fuzzie> yes, it needs tested first
[18:08:58] <fuzzie> ActionOverride in the original engine seems to be stopping current actions on the target, i must remember that
[18:09:43] <Avenger> it doesnt' clear the queue, i hope
[18:09:56] <Avenger> just breaks the blocking actions?
[18:10:03] <fuzzie> i'm not sure
[18:10:14] <fuzzie> the test scripts i looked at work either way
[18:10:17] <Avenger> if it would clear the queue, you couldn't use multiple actionoverrides
[18:10:22] <Avenger> on the same target
[18:10:22] <fuzzie> they have Wait()s in between
[18:10:40] <fuzzie> or maybe a Face() or something else which has the same effect
[18:11:14] <fuzzie> simple to test but i have other things first :)
[18:11:19] <Avenger> well, the problem is, actionoverride doesn't execute the action, just stuffs it on the queue
[18:11:52] <Avenger> so if you try to actionoverride 2 nonblocking actions, only the second will execute if you clear the queue between them
[18:12:08] <fuzzie> yes, but it's easy to check whether that is intended :)
[18:12:35] <Avenger> do you run pst once in a while too? :)
[18:12:47] <fuzzie> yes
[18:13:04] <fuzzie> i keep fixing pst bugs, too :) it is quite fun to play now
[18:13:11] <Avenger> a pity you don't have the dltc mod
[18:13:15] <Avenger> glory of istar
[18:13:20] <fuzzie> but i must admit i usually just test bg2
[18:13:36] <Avenger> i found the biggest bugs while trying to run our first cutscene :)
[18:13:55] <fuzzie> you have it?
[18:14:04] <Avenger> i have the install version
[18:14:26] <Avenger> 88 M
[18:14:30] <fuzzie> so you can re-test the cutscene i guess :)
[18:14:39] <fuzzie> i am trying to work out why NearestPC is giving me the Sender!
[18:14:47] <fuzzie> it is irritating
[18:15:10] <fuzzie> oh
[18:15:22] <fuzzie> because weidu is compiling NearestPC to [PC], that is why
[18:15:35] <Avenger> isn't that screwed up???
[18:16:43] <fuzzie> well, it is certainly annoying
[18:17:15] <Avenger> hmm what is nearestpc?
[18:17:25] <fuzzie> maybe it just means [PC]
[18:17:39] <Avenger> nearestpc isn't in my object.ids
[18:17:41] <fuzzie> i just saw the NearestPC function in gemrb and hoped that it would run :)
[18:18:31] --> pupnik has joined #gemrb
[18:18:54] <Avenger> nearestpc is an iwd2 object
[18:19:15] <Avenger> i guess it is going through the party :)
[18:19:20] <Avenger> like mostdamagedof, etc
[18:20:33] <fuzzie> yes, it was just a working nearestpc target for PCs and i wanted one :P i'll fix gemrb instead
[18:21:55] <fuzzie> although i don't see how i can test the other IDS filters, it is difficult
[18:22:06] <fuzzie> i checked [PC] and [0] so far
[18:22:14] <Avenger> hmm, i'm still in the almost fixed phase for projectiles
[18:26:42] <Avenger> the standard agannazar scorcher is done, but there is another projectile which doesn't affect people on its path, only the original target
[18:40:15] <fuzzie> i just keep finding more and more bugs
[18:43:22] <fuzzie> Avenger: http://fuzzie.org/nfs/gemrb/dont_filter_self.txt - do you think I should commit or not?
[18:44:20] <Avenger> i would rather use t = tgts->RemoveTargetAt(m); in the first group
[18:45:14] <Avenger> if ( Sender==t->actor || !func( (Actor *) (t->actor), oC->objectFields[j] ) ) { ..
[18:45:33] <fuzzie> ok, i can fix that. but any idea about testing if it's the correct thing to do?
[18:45:57] <Avenger> the second part you changed is about Myself, etc
[18:46:12] <Avenger> if you do it like that it would never return Myself
[18:46:28] <Avenger> i don't think that's correct
[18:46:30] <fuzzie> the second part was the part that ran for my tests
[18:46:46] <fuzzie> using [PC]
[18:47:04] <fuzzie> unless i really screwed up the printf()s, anyway
[18:47:40] <Avenger> oh right
[18:47:44] <Avenger> the second part is needed too
[18:48:29] <fuzzie> i don't want to commit it broken, so i'll leave it for now
[18:50:44] <fuzzie> i think i fixed all the obvious bugs in the blocking stuff, if you want to look: http://fuzzie.org/nfs/gemrb/blocking_actions_should_block.txt
[18:50:56] <fuzzie> i found *many* other bugs in the process, but they all already existed
[18:52:43] <fuzzie> and with the patch we match original IE behaviour much better, although there is still a lot of work to do :/
[19:05:29] --> barra_away has joined #gemrb
[19:21:26] <-- barra_library has left IRC (Read error: 110 (Connection timed out))
[19:31:51] <-- Avenger has left IRC ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
[19:58:23] <CIA-18> gemrb: 03avenger_teambg * r6560 10/gemrb/trunk/gemrb/override/bg2/gemprjtl.ids: new hardcoded projectiles
[20:01:53] <CIA-18> gemrb: 03avenger_teambg * r6561 10/gemrb/trunk/gemrb/docs/en/Engine/Projectile.txt: new projectile flag
[20:02:21] <CIA-18> gemrb: 03avenger_teambg * r6562 10/gemrb/trunk/gemrb/override/bg2/ (spfirewl.pro spscorch.pro spscoric.pro): new .pro files
[20:02:40] <pupnik> nice to see progress there
[20:02:52] <pupnik> looks like a lot of work
[20:04:08] <CIA-18> gemrb: 03avenger_teambg * r6563 10/gemrb/trunk/gemrb/plugins/Core/ (Projectile.cpp Projectile.h):
[20:04:08] <CIA-18> gemrb: line area of effect projectile (agannazar's scorcher)
[20:04:08] <CIA-18> gemrb: immediate adjusting of target in case target moved, fixed timing too
[20:04:08] <CIA-18> gemrb: started wall projectile type (for firewall)
[20:04:08] <CIA-18> gemrb: started fading out projectile type (for ice dagger)
[20:08:37] --> Avenger has joined #gemrb
[20:08:40] --- ChanServ gives channel operator status to Avenger
[20:09:10] <wjp> nice work :-)
[20:09:34] <Avenger> spellcasting is screwed up
[20:11:20] <fuzzie> Avenger: *poke* :)
[20:12:26] <Avenger> i hope fuzzie didn't break anything :)
[20:12:41] <fuzzie> i didn't commit this yet, i thought you wanted to read it over
[20:13:00] <Avenger> huh, i would rather fix spellcasting first :)
[20:13:11] <Avenger> better not have multiple broken things
[20:13:19] <fuzzie> ok :)
[20:13:38] <fuzzie> i have a list of broken things but most of them should be fixed /after/ my patch, otherwise i have to do them twice
[20:14:09] <fuzzie> do you just mean the gui problems with spellcasting?
[20:14:36] <Avenger> the code in guiscript
[20:16:06] <Avenger> it is completely wrong :(
[20:16:47] <pupnik> what commit
[20:16:56] <Avenger> mine and zefklops :)
[20:17:29] <-- Avenger has left IRC ("bye!")
[20:20:39] --> Avenger has joined #gemrb
[20:20:41] --- ChanServ gives channel operator status to Avenger
[20:26:38] <fuzzie> i don't think i understand this code well enough to try fixing it :/
[20:29:22] <Avenger> working on it
[20:38:39] <Avenger> ok, seems like it works now
[20:40:19] <-- Avenger has left IRC ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
[20:51:48] <CIA-18> gemrb: 03avenger_teambg * r6564 10/gemrb/trunk/gemrb/plugins/ (Core/Spellbook.cpp GUIScript/GUIScript.cpp): fixed SpellCast so it won't need an initialized SpellInfo array again
[20:52:55] --> Avenger has joined #gemrb
[20:54:22] <Avenger> hmm
[20:56:01] <Avenger> lynx, these casting graphics are rendered too low for humans
[20:56:17] <fuzzie> i think lynx only changed the x coordinate, not the height
[20:56:19] <lynxlynxlynx> i didn't change the height at all
[20:57:02] <Avenger> and, why can't i see ANY spells, i wonder
[20:57:06] <Avenger> i see the CG drawn
[20:57:12] <Avenger> but no spell effects
[20:57:16] <Avenger> hmm
[20:57:23] <Avenger> not even self affecting ones
[20:58:00] <Avenger> i fixed the spell selection though
[20:58:37] <Avenger> and the spell is correctly removed from the spellbook
[20:58:46] <Avenger> probably this is a projectile problem?
[20:58:52] <fuzzie> i see pretty spell projectiles, but the projectiles do nothing
[20:58:58] <lynxlynxlynx> canary = (unsigned long) 0xdeadbeef;
[20:59:19] <Avenger> you got that?
[21:00:32] <Avenger> i see casting glows only
[21:00:55] <lynxlynxlynx> on stoneskin, i can see the rocktop briefly under the actor
[21:01:22] <fuzzie> magic missile works
[21:01:23] <fuzzie> for me
[21:01:28] <fuzzie> nothing else though
[21:01:30] <Avenger> no for me :(
[21:01:33] <-- Avenger has left IRC ("bye!")
[21:02:05] <lynxlynxlynx> maybe i'm just imagining it
[21:02:18] <wjp> Aganazzar's(?) scorcher works for me too
[21:02:20] <lynxlynxlynx> can't reproduce it anymore
[21:02:43] <fuzzie> maybe the 'if (target) {' in Payload() should be 'if (!target) {'
[21:03:17] <fuzzie> but i guess Avenger will work it out
[21:03:52] <fuzzie> hm, no, the previous code used 'if (target)' and it was fine
[21:50:25] <fuzzie> although Projectile.cpp:790 seems like it would need an 'if (Target)' around it
[21:51:20] <CIA-18> gemrb: 03avenger_teambg * r6565 10/gemrb/trunk/gemrb/plugins/Core/Projectile.cpp: fixed previously broken projectiles
[21:51:46] <fuzzie> .. and there is Avenger doing exactly that
[21:52:55] --> Avenger has joined #gemrb
[21:53:08] <Avenger> ok try the projectiles now :)
[21:53:11] <fuzzie> mm
[21:53:15] --- ChanServ gives channel operator status to Avenger
[21:53:27] * wjp rebuilds
[21:53:29] <Avenger> area projectiles too :)
[21:53:48] <lynxlynxlynx> fireball is pretty good
[21:54:08] <Avenger> i've fixed web/grease too
[21:54:29] <fuzzie> it seems to work ok now
[21:55:09] <lynxlynxlynx> a lot of the effects display lightning damage when an actor is hit
[21:55:36] <lynxlynxlynx> tried with delayed blast fireball
[21:55:50] <Avenger> hmm, imoen wants to leave the party
[21:55:58] <Avenger> but she is only webbed and held :)
[21:56:20] <fuzzie> the web looks pretty but it doesn't seem to be affecting anyone for me
[21:56:32] <Avenger> imoen is in it right now
[21:56:41] <Avenger> and it triggers her leave party script
[21:56:43] <fuzzie> oh, it effects imoen, the caster :)
[21:56:56] <fuzzie> but not the other NPCs i am walking through it
[21:56:59] <Avenger> not just imoen
[21:57:07] <fuzzie> ooh, pretty ending
[21:57:11] <Avenger> i affected some innocent bystander
[21:57:21] <fuzzie> is it maybe only working on first hit?
[21:57:38] <wjp> call lightning just killed an ogre without any visible projectile
[21:57:50] <Avenger> call lightning isn't finished
[21:58:03] <wjp> ok
[21:58:06] <Avenger> gemprojclt ... whatever has no entries
[21:58:25] <Avenger> it could be added, but i couldn't test that projectile fully
[21:58:37] <Avenger> in my game there are no multiple hits for that one
[21:58:45] <fuzzie> hm, Minsc gets trapped also
[21:58:47] <fuzzie> strange
[21:59:43] <wjp> wow, things have really improved since I last tried projectiles :-)
[22:00:07] <fuzzie> Minsc's leave party script is triggered repeatedly too, heh :) it is nice!
[22:00:19] <Avenger> that's not my doing :)
[22:00:35] <Avenger> i don't know why is he upset for that
[22:00:55] <wjp> hm, the endless repeating battle cries get annoying quickly :-)
[22:01:23] <fuzzie> yes, that code is not so clever
[22:01:32] <lynxlynxlynx> web is still too fast
[22:01:39] <lynxlynxlynx> maybe AI_UPDATE_TIME too fast
[22:02:13] <fuzzie> we don't obey IE_MOVEMENTRATE being 0, either, that is probably my fault
[22:02:18] <Avenger> lol, jaheira didn't stand up at the end of the stinking cloud
[22:02:22] <Avenger> but she talks :)
[22:02:26] <Avenger> lazy girl
[22:02:33] <fuzzie> but i don't want to touch anything until i harass one of you into oking my blocking stuff :)
[22:04:05] <Avenger> using items is still crappy
[22:04:22] <wjp> Holy Smite's projectiles behave a bit strangely
[22:04:28] <Avenger> really?
[22:05:22] <-- lynxlynxlynx has left IRC (Remote closed the connection)
[22:05:24] <wjp> it looks a bit like a fireball's expanding ring with (white) comet-like things
[22:06:48] <Avenger> ah yes, it spreads
[22:06:48] <Avenger> there is a flag for that in areapro.2da
[22:07:53] <Avenger> change its 0 to 6
[22:07:58] <Avenger> in areapro.2da
[22:08:03] <Avenger> also unholy
[22:09:13] <Avenger> still not the best, but better
[22:09:47] <wjp> hm, that gives a lot of projectiles at the beginning that disappear instantly
[22:11:10] <Avenger> no idea why they disappear
[22:11:20] <CIA-18> gemrb: 03avenger_teambg * r6566 10/gemrb/trunk/gemrb/override/bg2/areapro.2da: holy smite explosion is closer to the original
[22:11:24] <Avenger> hmm, i guess i know
[22:12:10] --- barra_away is now known as barra_library
[22:13:41] <Avenger> ok, i cannot fix it today
[22:13:43] <Avenger> bye!
[22:13:46] <-- Avenger has left IRC ("bye!")
[22:21:44] <fuzzie> hm, making zero walk speed work is a little non-trivial. for tomorrow.
[22:54:04] <fuzzie> two ActionOverride calls immediately after one another do indeed both work.
[22:59:34] <pupnik> heh
[22:59:35] <fuzzie> In fact they work at the same time as other actions, so I guess that's going to be yet more nasty patching.
[23:02:47] * pupnik continues surfing mushroom-porn
[23:04:42] <fuzzie> okay, so ActionOverride interrupts anything running on the dest object and instantly executes the action in question, including setting it as CurrentAction if required
[23:04:58] <fuzzie> that might be slightly fiddly to achieve
[23:05:30] <pupnik> hmm
[23:05:31] <fuzzie> Oh, I guess we can just set CurrentAction and then call ExecuteAction, it works magically.,
[23:05:48] <fuzzie> Don't mind me, anyway, I am just treating IRC as a thought-dumping ground again. :)
[23:08:09] <fuzzie> Huh, even more confusing: If you ActionOverride two MoveToPoint actions after one another, it does both of them.
[23:08:52] <fuzzie> But it interrupts any MoveToPoint actions which were pending *before* the ActionOverride actions were run.
[23:10:20] <pupnik> i would need to sketch this for myself
[23:10:48] <fuzzie> I suspect that sketching mushrooms might make just as much sense.
[23:13:42] <fuzzie> Fascinating: if you queue two MoveToPoint actions that way then the recticle is for the *final* point.
[23:14:00] <fuzzie> if you queue a MoveToPoint action and then an Attack action then it does the move (with recticle) and then the Attack.
[23:14:40] <fuzzie> Clearly something is going on here that is far too mysterious for after 1am. Ninight!
[23:28:37] <pupnik> night fuzzie - dorme bien
[23:33:26] <-- Lightkey has left IRC (Remote closed the connection)
[23:47:47] --- barra_library is now known as barraTV