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

Archive Today Yesterday Tomorrow
GemRB homepage


[07:42:22] <-- |Cable| has left IRC ("Leaving")
[07:59:58] <-- CIA-18 has left IRC ()
[08:04:38] --> CIA-18 has joined #gemrb
[08:08:00] --> lynxlynxlynx has joined #gemrb
[08:08:01] --- ChanServ gives channel operator status to lynxlynxlynx
[08:46:05] --- barraTV is now known as barra_library
[09:18:15] --> leitkie has joined #gemrb
[09:36:12] <fuzzie> g'morning
[09:41:02] <lynxlynxlynx> oj
[09:45:23] <-- CIA-18 has left IRC (Client Quit)
[09:49:32] <lynxlynxlynx> there, now weapon breaking will only happen in bg1 and i've increased the chance to 1%
[09:49:49] --> CIA-20 has joined #gemrb
[10:21:38] <-- barra_library has left IRC ("Verlassend")
[10:28:55] <CIA-20> gemrb: 03lynxlupodian * r6568 10/gemrb/trunk/gemrb/plugins/Core/CharAnimations.cpp: CharAnimations: fixed a debug printf to be unique
[10:47:26] <fuzzie> lynxlynxlynx: thanks for the weapon breaking :)
[10:48:39] <fuzzie> A chunk of my bugfixes are pending on the blocking thing, but my plan for this afternoon is to re-fix the ToB challenges and handle zero IE_MOVEMENTRATE.
[10:49:38] <lynxlynxlynx> cool
[10:50:13] <lynxlynxlynx> i'm trying to unabort tanarii summons, but it is hard to pick the right animation since each frame is split in four pieces ;)
[10:50:38] <fuzzie> *nod*, those split-up animatiosn are a real pain.
[11:18:02] <CIA-20> gemrb: 03lynxlupodian * r6569 10/gemrb/trunk/gemrb/plugins/Core/CharAnimations.cpp: CharAnimations: added casting stances to Four frames Animation (fixes tanarri)
[11:18:10] <fuzzie> :)
[11:18:11] <fuzzie> nice
[11:20:11] <fuzzie> CS_PARTY_AI in core, CS_PARTYAI in guiscripts, confusing :)
[11:20:27] <lynxlynxlynx> i can regex that out
[11:21:02] <fuzzie> It might be worth comparing all the flags sometime.
[11:21:16] <lynxlynxlynx> i get a crash now: gate summons an angry demon, but you still get the talk icon over him and if you execute that with another summon -> boom
[11:21:43] <lynxlynxlynx> fuzzie: the guiscript define files clearly state the need for being sync
[11:21:44] <fuzzie> where does it crash? maybe we're not initialising something
[11:22:09] <lynxlynxlynx> http://pastebin.ca/1469757
[11:22:38] <fuzzie> so, OnMouseUp is passing NULL as source
[11:22:50] <lynxlynxlynx> yep
[11:23:01] <fuzzie> GetFirstSelectedPC(false) is returning NULL? no selected PC?
[11:23:17] <lynxlynxlynx> it's a summon, not a real party member
[11:23:39] <fuzzie> add an if (source) around GameControl.cpp:1850, with comment that only party members can talk?
[11:23:45] <lynxlynxlynx> they probably should never be able to start dialogs
[11:23:52] <lynxlynxlynx> :)
[11:27:03] <fuzzie> Hooray, AttackReevaluate([PC], ..) will always be attacking nearest PC, as expected.
[11:27:59] <lynxlynxlynx> there's seems to be an off-by-one error in the spell selection
[11:29:57] <fuzzie> Huh, AttackReevaluate never seems to end. Perhaps it's just uninterruptable for the specified period.
[11:31:06] <CIA-20> gemrb: 03lynxlupodian * r6570 10/gemrb/trunk/gemrb/plugins/Core/GameControl.cpp: avoid a crash by only allowing real party members to start chatting
[11:39:13] <lynxlynxlynx> hah
[11:39:32] <lynxlynxlynx> black blade of disaster -> jp did 2310933 damage to Pit Fiend :)
[11:39:44] <lynxlynxlynx> Pit Fiend was immuno to my famage
[11:41:38] <lynxlynxlynx> oh, i can go change ^Y
[11:44:40] --> barra_library has joined #gemrb
[11:44:54] --> barra_away has joined #gemrb
[11:45:53] <-- barra_away has left IRC (Read error: 104 (Connection reset by peer))
[11:47:54] <lynxlynxlynx> oh, that part is frozen
[11:48:42] <fuzzie> oh?
[11:50:00] <lynxlynxlynx> your order
[11:50:28] <lynxlynxlynx> i changed the Kill to ApplyDamage and it seems to work
[11:51:57] <lynxlynxlynx> i can kill practically anybody in the chateau save for the sewage golem, but he probably has protection against electricity amongs all those protection effects
[11:52:15] <lynxlynxlynx> more importantly he has a MinimumHPModifier :)
[11:53:26] <fuzzie> Kill() needs to actually kill creatures
[11:53:32] <fuzzie> it's the ctrl-y code that is wrong
[11:53:47] <lynxlynxlynx> yes, that's what i meant
[11:53:55] <lynxlynxlynx> the Kill in ^y
[11:54:42] <lynxlynxlynx> http://pastebin.ca/1469775
[11:54:44] <fuzzie> Oh, sorry.
[11:55:10] <fuzzie> That sounds fine, although maybe the damage effect should be something non-resistable? I don't know what type it does in the original game.
[11:55:56] <lynxlynxlynx> i use lightning, but i think the only way to be irresistible is to use multiple damage types
[11:58:10] <fuzzie> AttackReevaluate seems pretty spectacularly useless.
[11:58:26] <fuzzie> I must be missing something.
[11:59:37] <CIA-20> gemrb: 03lynxlupodian * r6571 10/gemrb/trunk/gemrb/plugins/Core/GameControl.cpp: changed ctrl-y to apply 1k of electric damage instead of directly killing
[12:03:20] <lynxlynxlynx> btw, the extra1-10 you were talking about yesterday is from gender?
[12:04:45] <fuzzie> yes
[12:04:59] <lynxlynxlynx> there is no extra1 since it is called just extra
[12:05:03] <fuzzie> yes :)
[12:05:15] <fuzzie> it is what is breaking the challenge scripts right now
[12:05:34] <fuzzie> I fixed an action bug, which resulted in the death scripts for the challenge waves running (they should disappear in a special effect).
[12:06:24] <fuzzie> Unfortunately this exposed a new bug, which is that we don't set the death variables or the EXTRACOUNT variables at death, and those death scripts run DestroySelf(), which instantly removes corpses without setting variables. :)
[12:06:56] <fuzzie> Hence, challenge broken again. But it's all steps in the right direction.
[12:07:54] <lynxlynxlynx> ok
[12:11:24] <fuzzie> And that's why I was getting annoyed with ctrl-y, because just doing Kill() doesn't work right for testing that.
[12:14:36] <fuzzie> Okay, I worked out AttackReevaluate :)
[12:15:22] <fuzzie> As usual, devSin was entirely correct.
[12:16:16] --> Gekz has joined #GemRB
[12:16:27] <Gekz> Ohai.
[12:16:53] <fuzzie> I want to stamp "DO NOT USE" all over IESDP now, though.
[12:17:10] <Gekz> whais
[12:17:30] <fuzzie> Because it is full of delicious and yet misleading lies.
[12:17:38] <Gekz> haha
[12:17:39] <Gekz> explain
[12:17:55] <fuzzie> For instance, it says that AttackReevaluate attacks the target for the specified time and then the script will run again.
[12:18:20] <Gekz> and I gather, it does not
[12:18:20] <fuzzie> The reality is that AttackReevaluate just reevalutes the target after the specified time, it doesn't change aaaanything about running scripts.
[12:23:32] <fuzzie> AttackOneRound, on the other hand, does exactly what it says. It attacks, for one round.
[12:23:53] <Gekz> lol
[12:23:59] <Gekz> BGScripts are sick.
[12:25:08] <fuzzie> devSin is the most awesome person ever, though.
[12:25:22] <fuzzie> devSin knows all!
[12:26:11] <Gekz> ?
[12:26:31] <fuzzie> Someone on the gibberlings3 forums who knows how all the BGScript stuff works.
[12:29:31] <Gekz> cool
[12:29:35] <Gekz> I've spent many hours in it
[12:29:39] <Gekz> booleans seem to not exist
[12:29:42] <Gekz> GoodElfKill = 2
[12:29:43] <Gekz> or 0
[12:29:45] <Gekz> but never 1
[12:30:22] <fuzzie> heh, you're right :)
[12:30:31] <Gekz> and
[12:30:33] <fuzzie> Oh, no, there's some 1s!
[12:30:39] <Gekz> yeah I know
[12:30:44] <Gekz> but not in GoodElfKill
[12:30:52] <Gekz> GoodElfKill never equals 1
[12:30:53] <Gekz> >_>
[12:30:53] <lynxlynxlynx> i'll poke the wasp's nest
[12:31:17] <fuzzie> udelf2.baf: SetGlobal("GoodElfKill","GLOBAL",1)
[12:31:27] <Gekz> what
[12:31:27] <Gekz> the
[12:31:28] <Gekz> fuck
[12:31:31] <fuzzie> ^- there is a usage hidden away in there!
[12:31:33] <Gekz> so how can it be 0,1,2
[12:31:47] <fuzzie> http://fuzzie.org/nfs/gemrb/goodelfkill.txt <- all the uses in SoA/ToB :)
[12:31:47] <Gekz> I just know that if Minsc goes berserk
[12:31:51] <Gekz> and kills an elf
[12:31:54] <Gekz> you cant get past elhan
[12:31:56] <Gekz> I had to fix that
[12:31:58] <Gekz> took hours and hours
[12:32:01] <Gekz> to work out why
[12:32:41] <Gekz> fuzzie: that basically says
[12:32:42] <fuzzie> I got tired of it taking hours and hours for me to work all those things out, so I set this thing up, which will let me see all references to something in the scripts :)
[12:32:43] <Gekz> IF kill good elf
[12:32:49] <Gekz> THEN fuck up protagonist
[12:32:52] <Gekz> END IF
[12:33:03] <fuzzie> "fuck up protagonist" is really the result of most of the scripts, in the ende
[12:33:20] <Gekz> lol
[12:33:34] <Gekz> baldurs gate, in essence, is a chamberpot of accidental wins
[12:33:36] <Gekz> isn't it?
[12:33:43] <Gekz> it's shocking that these codes work
[12:33:50] <fuzzie> Blessed be the fixpack authors.
[12:33:55] <Gekz> wtf is BGScript anyway
[12:33:58] <Gekz> a hacked up subset of Lua?
[12:34:20] <fuzzie> Heh, it's much worse than that.
[12:34:24] <fuzzie> Here is a bit of compiled BGScript:
[12:34:31] <fuzzie> 0 0 0 0 0 0 0 21 0 0 0 0 ""OB
[12:34:31] <fuzzie> OB
[12:34:31] <fuzzie> 0 0 0 0 0 0 0 0 0 0 0 0 ""OB
[12:34:31] <fuzzie> 0 0 0 0 0"" "" AC
[12:34:35] <Gekz> WHAT FUCK THE
[12:34:38] <fuzzie> It's *all* like that.
[12:34:41] <Gekz> you're saying that
[12:34:46] <Gekz> the "BGScript" we're looking at
[12:34:50] <Gekz> is decompiled... that?
[12:34:53] <fuzzie> Yes. :(
[12:34:56] <Gekz> ohshit
[12:35:04] <Gekz> and did they write it like that?
[12:35:11] <Gekz> or did they write it in a script similar to BGScript
[12:35:13] <fuzzie> Noo, they had a script compiler thingy.
[12:35:15] <Gekz> then compiled it
[12:35:17] <Gekz> yeah
[12:35:18] <Gekz> was gonna say
[12:35:20] <Gekz> sitting there going
[12:35:23] <Gekz> 0 0 0 0 0 0 0 21
[12:35:25] <Gekz> would be painful
[12:35:54] <fuzzie> I think they used pretty much the same as the BGScript everyone uses; they put their internal compiler on the Baldur's Gate CDs so that people could write AI scripts.
[12:36:03] <Gekz> cool
[12:36:07] <Gekz> so they reverse engineered that
[12:36:10] <Gekz> to decompile everything
[12:36:11] <Gekz> pretty epic.
[12:36:35] <fuzzie> Yes, so many people have put so much work into this stuff :)
[12:39:35] <fuzzie> Gosh, fixing some of this in GemRB will be a pain.
[12:43:28] <Gekz> http://superiorchicken.info/yes_budgie.jpg
[12:45:21] <fuzzie> :D
[12:45:48] <Gekz> lol
[13:18:49] <fuzzie> the 'Web' spell really shouldn't be causing Hold
[13:18:55] <Gekz> lolol
[13:22:01] <CIA-20> gemrb: 03fuzzie * r6572 10/gemrb/trunk/gemrb/plugins/Core/ActorBlock.cpp: zero speeds means no movement
[13:22:09] <Gekz> lol
[13:22:32] <fuzzie> now you can't walk around while caught in a web. :P
[13:22:51] <Gekz> lol
[13:22:54] <Gekz> cool
[13:25:07] <fuzzie> And you can't select portraits of Held people, which is irritating.
[13:25:14] <Gekz> o.o
[13:25:24] <Gekz> I remember tat
[13:25:25] <Gekz> that*
[13:25:27] <Gekz> it annoyed me
[13:25:28] * fuzzie offers freshly-baked pumpkin bread to anyone fixing that one.
[13:26:43] <fuzzie> It's maybe a complicated bug; webbed people *are* held in that they can't be selected in the game itself, but only 'Webbed' should be shown and they should still be selectable in the other screens.
[13:29:37] <fuzzie> Darnit, that ctrl-y fix still doesn't work.
[13:29:40] <CIA-20> gemrb: 03lynxlupodian * r6573 10/gemrb/trunk/gemrb/plugins/Core/GameControl.cpp:
[13:29:40] <CIA-20> gemrb: EA_GOODBUTRED is below EA_EVILCUTOF and such creatures should be attacked,
[13:29:40] <CIA-20> gemrb: rather than talked to by default (summoned demons)
[13:30:13] <lynxlynxlynx> as in not-everything-triggers?
[13:30:21] <fuzzie> yeah :/
[13:30:22] <lynxlynxlynx> cause it is very efficient at killing
[13:30:34] <fuzzie> The death scripts still don't run.
[13:30:42] <lynxlynxlynx> at least we ignore the minhp owners
[13:30:53] <fuzzie> It works fine on normal attack, so meh.
[13:31:39] <fuzzie> Oh well, that's almost definitely another death bug. Thanks.
[13:33:42] <fuzzie> Why do the Drow Warriors keep disappearing?
[13:34:37] <fuzzie> I mean, they just don't seem to get drawn. Missing anim frames?
[13:36:44] <fuzzie> The only relevant output in the debug dump seems to be 'Animate ID', at 7f27. It seems to happen when they take damage, that GetStat(IE_ANIMATION_ID)>>16 line.
[13:37:37] <fuzzie> But that just adds an animation, should just fail quietly..
[13:37:38] <lynxlynxlynx> i thought they were going invisible for backstabbing
[13:37:46] <fuzzie> Could be.
[13:39:45] <fuzzie> Just looks very silly when I'm in the middle of bashing at them.
[13:45:10] <lynxlynxlynx> they don't have it as a spell, potion or innate
[13:45:18] <lynxlynxlynx> so now i agree that it is a bug
[13:53:34] <fuzzie> So, death variables are set on death.
[13:54:07] <fuzzie> I tried what Avenger suggested, and a trigger with both Die() and Dead("JAHEIRA") is indeed run.
[14:10:11] <fuzzie> lynxlynxlynx: busy?
[14:16:26] <lynxlynxlynx> not anymore
[14:16:59] <fuzzie> http://fuzzie.org/nfs/gemrb/fix_death_behaviour.txt
[14:17:20] <fuzzie> should fix the challenge + all death scripts
[14:18:08] <fuzzie> but I'd appreciate knowing if it works for you first :)
[14:18:13] <lynxlynxlynx> ok
[14:29:10] <CIA-20> gemrb: 03fuzzie * r6574 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: don't destroy actors before they've had a chance to run a death script
[14:35:01] <lynxlynxlynx> i won
[14:35:48] <lynxlynxlynx> so go ahead :)
[14:36:44] <lynxlynxlynx> it worked before the last commit brw
[14:38:37] --- barra_library is now known as barra_coffee
[14:49:29] <fuzzie> yes, last commit will conflict, i would revert to svn now :)
[14:49:40] <fuzzie> will commit when back home
[14:51:02] <lynxlynxlynx> i did; was just saying that i didn't test with HEAD
[14:52:31] <-- pupnik has left IRC (Read error: 110 (Connection timed out))
[14:54:10] --> |Cable| has joined #gemrb
[14:58:56] --- barra_coffee is now known as barra_library
[15:28:56] <CIA-20> gemrb: 03avenger_teambg * r6575 10/Win32/trunk/MSVC7/GemRB/plugins/MVEPlayer/MVEPlayer.vcproj: mveplayer project file for msvc7
[15:31:15] <CIA-20> gemrb: 03avenger_teambg * r6576 10/gemrb/trunk/gemrb/GUIScripts/bg2/Actor.py: improved backward compatibility (python 2.4)
[15:32:47] --> Avenger has joined #gemrb
[15:32:54] <Avenger> hello
[15:32:55] --- barra_library is now known as barraAway
[15:32:56] <fuzzie> hi
[15:33:10] <Avenger> lynx, are you sure about goodbutred actors default to attack?
[15:33:58] <Avenger> i thought summoned demons don't attack because of protection from evil :)
[15:34:20] <fuzzie> didn't lynx just change the default action?
[15:34:24] <Avenger> i mean, their EA is not goodbutred
[15:34:32] <Avenger> yes he did
[15:34:44] <Avenger> EA_GOODBUTRED is below EA_EVILCUTOF and such creatures should be attacked
[15:34:50] <Avenger> according to him
[15:35:05] <Avenger> but i thought they are not attacked by default
[15:35:33] <fuzzie> hm, I didn't check myself. maybe he did.
[15:35:37] <Avenger> i admit i diddn't test it
[15:35:53] <fuzzie> I moved XP/death variables/item dropping into Die(), but it seems to still not work properly.
[15:35:58] <fuzzie> I mean, I didn't commit that yet.
[15:38:29] <Avenger> did you perform that test i mentioned?
[15:38:33] <fuzzie> yes
[15:38:39] <Avenger> inconclusive?
[15:38:48] <fuzzie> a block with "Die()" and "Dead(SCRIPTNAME)" fires at death
[15:39:15] <Avenger> so, the scriptname is already set at the time of Die() ?
[15:39:17] <fuzzie> i don't know if it's conclusive, though, i don't know precisely how Die() works
[15:40:02] <fuzzie> actors *do* give XP and drop items before running the death block, though
[15:41:04] <Avenger> what about 2 blocks
[15:41:18] <Avenger> one with die() AND !Dead(scriptname)
[15:41:28] <Avenger> and another after it with die() AND Dead(scriptname)
[15:41:28] <fuzzie> good idea
[15:41:33] <fuzzie> i will try now
[15:41:47] <fuzzie> i added some more to my forum thread about actions, too
[15:41:58] <fuzzie> it is nothing much interesting, just more confirmation of what devSin said
[15:42:05] <fuzzie> and IESDP being wrong as usual
[15:42:13] <Avenger> hehe
[15:42:21] <Avenger> well, iesdp scripting section is so crappy
[15:42:26] <Avenger> it is a legacy stuff
[15:42:33] <fuzzie> IESDP says something about AttackReevaluate checking blocks again or something
[15:43:06] <fuzzie> and really it just re-evaluates marked objects after the time specified, otherwise it is identical to Attack
[15:43:52] <Avenger> do you test these with actors with stripped down scripts?
[15:43:57] <fuzzie> heh, yes
[15:44:03] <fuzzie> it would be a bit useless with other scripts interfering, i think
[15:44:08] <Avenger> oki :) i didn't expect anything else
[15:44:24] <fuzzie> i would appreciate other people testing, of course
[15:44:27] <Avenger> did you see the projectiles?
[15:44:40] <fuzzie> which ones?
[15:44:41] <Avenger> the scorcher, particularly
[15:44:53] <fuzzie> oh, let me go look at that
[15:44:53] <Avenger> projectile id is 109
[15:45:01] <fuzzie> is it in gemprjtl.ids?
[15:45:03] <Avenger> i'm pretty proud of it
[15:45:05] <Avenger> yes
[15:45:41] <Avenger> maybe it is not drawn in the exact height
[15:45:51] <Avenger> but that could be improved with the 'flying' bit set
[15:45:51] <fuzzie> that is wonderful
[15:46:03] <fuzzie> that projectile is used in the duergar/assassin fight in the dungeon, you see
[15:46:03] <Avenger> ifyou move, it moves
[15:46:10] <Avenger> oh really?
[15:46:21] <fuzzie> it is the .. third trap along, i think
[15:46:29] <Avenger> ahhh yes
[15:46:33] <Avenger> those nasty traps
[15:46:33] <fuzzie> it looks great :)
[15:47:03] <fuzzie> it doesn't start at the right place, but that is just trap positioning being broken, i already knew that
[15:47:09] <Avenger> it fires exactly the same times as the original :)
[15:47:26] <Avenger> and follows the source or the origin
[15:47:40] <Avenger> burning people getting midway
[15:47:55] <fuzzie> http://fuzzie.org/nfs/gemrb/scorcher.jpg :)
[15:48:19] <Avenger> huh, is that like the original?
[15:48:34] <Avenger> i don't remember this kind of multiple tentacles
[15:48:36] <fuzzie> gemrb corrupts the trap position, it is meant to come from the wall :)
[15:48:50] <fuzzie> maybe the projectile is meant to reset if re-triggered, also
[15:48:51] <Avenger> hehe, that is the launch point
[15:49:05] <Avenger> i thought launch point is done
[15:49:16] <Avenger> i bet it is your fault :P
[15:49:23] <fuzzie> quite possible :)
[15:49:39] <lynxlynxlynx> Avenger: summoned demons have GOODBUTRED EA
[15:49:57] <Avenger> and if you move your cursor over them?
[15:49:58] <lynxlynxlynx> they don't attack only if you're protected by evil, but that is only their perspective
[15:50:17] <Avenger> attack or not attack is based entirely on script
[15:50:27] <Avenger> so even ENEMY could just stay around
[15:50:45] <fuzzie> Avenger: it seems that 'TrapLaunch' is fine, but this projectile is coming from 'Pos'
[15:51:12] <fuzzie> and gemrb's Pos is just the middle of the bounding box, often a random point
[15:51:39] <Avenger> ActorBlock.cpp" line 603
[15:51:49] <Avenger> that Pos, could be something else
[15:51:57] <fuzzie> ok, i will change it to TrapLaunch :)
[15:52:28] <lynxlynxlynx> Avenger: the problem was that if you hovered over them, you got the talk-to cursor
[15:52:51] <Avenger> that will require some efforts
[15:53:03] <Avenger> yes lynx, so you tested them?
[15:53:20] <lynxlynxlynx> yes
[15:53:31] <Avenger> a scriptless actor with goodbutred ea?
[15:53:45] <Avenger> because scripts could change their ea without you notice
[15:54:03] <lynxlynxlynx> i tried cacofiend and fiend, but both have scripts
[15:54:23] <Avenger> well, just copy one of them, without scripts
[15:54:32] <lynxlynxlynx> but even if their ea was changed by a script, I think my change makes sense
[15:54:34] <Avenger> pardon my nitpicking, but it is a bit strange :)
[15:55:01] <Avenger> well, defaulting to attack when it shouldn't is not good
[15:55:19] <Avenger> and i'm pretty sure i could 'talk' with some red circled actor
[15:55:27] <lynxlynxlynx> example?
[15:55:37] <Avenger> vague memories :)
[15:56:01] <Avenger> anyway, i would test it under clean circumstances: --> no script
[15:56:22] <Avenger> same about evilbutblue
[15:56:41] <lynxlynxlynx> even in the original, pit fiends get the attack icon on hover
[15:57:17] <Avenger> i know but they are scripted
[15:57:39] <lynxlynxlynx> a script changes the cursor behaviour?
[15:57:47] <fuzzie> a script could change the EA
[15:57:51] <Avenger> it has the potential to change the ea
[15:58:08] <lynxlynxlynx> but it is the end ea that matters
[15:58:11] <Avenger> and what about evilbutgreen?
[15:58:25] <lynxlynxlynx> don't know of any such case
[15:58:27] <Avenger> yes lynx, but the end EA could be enemy !
[15:58:40] <Avenger> oh well, i will test all of them
[15:58:50] <-- Avenger has left IRC ("bye!")
[15:58:55] <lynxlynxlynx> so? enemy behaviour hasn't changed
[16:05:52] <CIA-20> gemrb: 03fuzzie * r6577 10/gemrb/trunk/gemrb/plugins/Core/ActorBlock.cpp: make trap projectiles launch from TrapLaunch point
[16:06:56] <lynxlynxlynx> comment recursion
[16:07:39] --> Avenger has joined #gemrb
[16:07:40] --> pupnik has joined #gemrb
[16:08:03] --- ChanServ gives channel operator status to Avenger
[16:08:09] <lynxlynxlynx> gate's demon (dempitsu) already starts with goodbutred
[16:08:57] <Avenger> it also has wtasight
[16:10:17] <lynxlynxlynx> wtasight?
[16:10:33] <Avenger> that's a script
[16:10:35] <fuzzie> wtasight doesn't change anything if not attacked, though
[16:11:06] <Avenger> that's true
[16:11:25] <lynxlynxlynx> you mean the one that makes it ignore invisibility like dragons?
[16:11:26] <Avenger> but dempitsu has it :)
[16:11:41] <Avenger> dempitsu will attack any goodcutoff
[16:12:05] <Avenger> sure it won't change allegiance
[16:14:12] <Avenger> i just say, if goodbutred's default response is attack, then a lot of other ea values got a bad default
[16:14:19] <Avenger> like evilbutgreen, evilbutblue
[16:14:48] <Avenger> it means the default is more like dependent on the circle color than the actual allegiance
[16:15:16] <Avenger> so, i gotta check all
[16:15:28] <fuzzie> Avenger: if i make a block with !Dead and Die(), and a block with Dead and Die, only the Dead one executes
[16:15:39] <fuzzie> no matter which order they're in
[16:15:42] <fuzzie> so i guess that's confirmed :)
[16:15:52] <Avenger> ahh at least some good news
[16:16:06] <Avenger> so the death variable is already set at the time of Die()
[16:16:39] <Avenger> that's good, we can move that big block of extra/deathvar setting stuff
[16:16:49] <lynxlynxlynx> only another demon has ea 28 in tob
[16:17:00] <lynxlynxlynx> probably the other summoned one
[16:17:14] <CIA-20> gemrb: 03fuzzie * r6578 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: move death variables, XP and item dropping from CheckOnDeath() to Die()
[16:17:24] <fuzzie> so that fixes the ToB challenge, again :)
[16:17:35] <lynxlynxlynx> none with EA_GOODBUTBLUE
[16:17:38] <Avenger> lynx, i will simply test this by editing a creature with setting its ea
[16:17:54] <lynxlynxlynx> none for EA_EVILBUTGREEN
[16:17:57] <Avenger> i'm sure there is at least one goodbutblue :)
[16:18:12] <Avenger> it could be set by script too
[16:18:12] <lynxlynxlynx> none for EA_EVILBUTBLUE
[16:18:22] <lynxlynxlynx> true
[16:18:42] <Avenger> i'm sure we used some of these in dltc
[16:19:04] <fuzzie> so, is svn stable enough to drop this blocking patch in, yet?
[16:19:24] <Avenger> fuzzie: yeah, but is your patch is stable too ;D
[16:19:25] <fuzzie> or do we still have recently-broken stuff?
[16:19:37] <Avenger> projectiles and gui spellcasting is fine now
[16:19:46] <fuzzie> my patch seems better than it was before, but a lot of code still needs rewriting :(
[16:19:47] <lynxlynxlynx> Avenger: not 100%
[16:20:03] <Avenger> what's not 100%?
[16:20:20] <lynxlynxlynx> i miss one spell when trying to cast with one mage (it is the last level9 he has)
[16:20:39] <lynxlynxlynx> so we erroneusly don't create a new page
[16:20:53] <lynxlynxlynx> i can send you a save if you want
[16:20:58] <Avenger> hmm, you mean there is an off by one error in the spell lister?
[16:21:08] <Avenger> maybe that's a guiscript error
[16:21:20] <lynxlynxlynx> i haven't noticed it before
[16:21:35] <Avenger> but the lister was not changed, hmm
[16:21:37] <lynxlynxlynx> but that doesn't say much
[16:21:41] <Avenger> well, it was
[16:22:03] <Avenger> the change in the spellbook affects how the lister part would work
[16:22:42] <Avenger> but i think it would affect only listing of innates if you have spells too
[16:23:11] <Avenger> that is: there are filtered elements before the listed ones
[16:24:42] <lynxlynxlynx> fuzzie: i get various bad SetRGBs applied too: 45: 0x08: Color:SetRGB (-896860160, 16) S:
[16:24:46] <Avenger> ok, goodbutred defaults to attack
[16:24:57] <lynxlynxlynx> :)
[16:25:01] <fuzzie> lynxlynxlynx: i guess that is not an endian bug then :)
[16:25:31] <fuzzie> i am going to apply this blocking thing after a little more testing - it causes some problems with triggers, but svn also has huge problems with triggers, so i don't think it is worse
[16:25:50] <fuzzie> i verified that LastSeenBy is *never* wiped
[16:26:03] <fuzzie> but i have to go through and check all of them, i guess..
[16:26:10] <Avenger> ok, so we need a list of wiped and unwiped triggers :(
[16:26:18] <lynxlynxlynx> i get the three bad ones by equipping the clerical staff
[16:26:39] <fuzzie> I think none of them are wiped, but then we must rewrite things like Entered().
[16:27:29] <fuzzie> and then someone needs to fix marked object binding, but i think this will make Avenger go crazy so I'll leave it for now :)
[16:28:38] <Avenger> i'm already crazy
[16:29:22] <fuzzie> (a blocking action must re-evaluate IDS targetting like [PC] every frame, but things like LastSeenBy are only evaluated when the action is started)
[16:30:50] --- barraAway is now known as barra_library
[16:32:24] <fuzzie> That is not so awful to fix, but scripts depend on it working right, and it's a bit complicated for some actions which do strange things.
[16:32:55] <lynxlynxlynx> if it is already broken, then don't worry about it yet
[16:33:46] <fuzzie> Well, my patch could thereotically make it worse in some situations, but it only works now by coincidence, and I didn't find any scripts which become broken.
[16:34:05] <lynxlynxlynx> are tob and pst as (or more) playable with your changes as without them? I don't want to remove any of them from the NEWS ;)
[16:34:45] <fuzzie> Well, I wanted people to test, but I guess no-one has the time. :) ToB and PST work fine for me with the changes, as far as I tried.
[16:35:01] <fuzzie> I'm re-checking them at the moment.
[16:35:09] <lynxlynxlynx> up the patch and i'll help
[16:36:21] <fuzzie> http://fuzzie.org/nfs/gemrb/blocking_actions_should_block.txt
[16:37:55] <lynxlynxlynx> ok, time for yet another tob intro :)
[16:38:00] <fuzzie> That is just the basic one; the 'real' fixes (like doing attacks in AttackCore, and making GoNearAndRetry not create another action) are still works-in-progress.
[16:41:27] <Avenger> evilbutgreen defaults to attack too
[16:42:26] <lynxlynxlynx> crap, segfault
[16:42:44] <fuzzie> lynxlynxlynx: not the container thing?
[16:42:56] <lynxlynxlynx> i was still leaving chargen
[16:43:06] <Avenger> notevil defaults to sword too :(
[16:43:18] <Avenger> or maybe i did something wrong
[16:43:20] <fuzzie> ToB works for me up to Saradush with my fixes.
[16:43:24] <fuzzie> Including the pretty comet :)
[16:43:27] <lynxlynxlynx> Avenger: i didn't anyone with that either
[16:44:01] --> kingron has joined #gemrb
[16:44:23] <lynxlynxlynx> of course, no crash when i rerun in gdb >:|
[16:44:31] <fuzzie> the comet really looks quite awesome
[16:45:04] <Avenger> lynx: i had a segfault today when i compiled without debug
[16:45:10] <Avenger> right after chargen
[16:45:33] <Avenger> something in the ids importer, or near some ids reading activity
[16:45:47] <lynxlynxlynx> i'm pretty sure i have a debug build
[16:46:13] <Avenger> well it was not exact, it was some memory corruption
[16:46:19] <Avenger> probably valgrind helps
[16:46:46] <Avenger> hi kingron did you see the recent build?
[16:47:15] <Avenger> check it out now before the major script changes :)
[16:47:19] <lynxlynxlynx> my monk sucks
[16:47:39] <lynxlynxlynx> no ac or tohit bonus, but she did get the innates
[16:47:50] <Avenger> btw, the attack code is pretty good
[16:48:07] <lynxlynxlynx> most of the other level directed perks are there
[16:48:13] <Avenger> there are some problems with weapon equipping, that once worked, but the animations are pretty consistent
[16:48:38] <Avenger> except that one actor did some funny spellcasting moves
[16:48:57] <Avenger> i'm sure some innates don't have spellcasting, but i didn't find the flag
[16:49:48] <Avenger> lynx: are the ac/tohit bonuses granted by clab or the fist object
[16:50:00] <lynxlynxlynx> the fist
[16:50:04] <Avenger> maybe the fist object isn't upgraded?
[16:50:07] <lynxlynxlynx> i see the regression
[16:50:13] <lynxlynxlynx> yes, it is the normal fist
[16:50:21] <lynxlynxlynx> but i fixed this a ~month ago
[16:51:40] <Avenger> ok, i think i will build a chart from these ea values
[16:53:01] <lynxlynxlynx> the fist wouldn't take care of the ac progression though, i see it has no effects
[16:53:06] <lynxlynxlynx> i'll go try without the patch
[16:53:45] <fuzzie> is there any way to get a random actor stat from gemrb?
[16:54:01] <lynxlynxlynx> random stat?
[16:54:08] <fuzzie> IE_MOVEMENTRATE, specifically
[16:54:23] <lynxlynxlynx> you mean from the console?
[16:54:24] <fuzzie> but not from a party member :/
[16:54:53] <lynxlynxlynx> add it to Actor::Dump if it isn't already there
[16:56:33] <lynxlynxlynx> ok, good, it isn't a regression from this patch
[17:00:00] <kingron> hi Avenger, yes i did ... hehe
[17:00:22] <kingron> just read the news last week
[17:00:40] <lynxlynxlynx> a new release will happen this week ;)
[17:00:47] <kingron> nice!
[17:01:28] <fuzzie> With actual ability to play the games!
[17:03:29] <lynxlynxlynx> i guess i only tested with levelup code
[17:03:41] <lynxlynxlynx> chargen never ends up calling SetupFist
[17:04:35] <lynxlynxlynx> it does it only at the very start on charbase and all the npcs, which is useless
[17:04:59] <Avenger> ok, actually the code is correct now
[17:05:14] <Avenger> does the controlled state show a hand, and lets you take control?
[17:05:56] <Avenger> lynx: ithought the very first updateeffects will call it
[17:06:07] <Avenger> err refresheffects
[17:06:22] <lynxlynxlynx> controlled is mordy, which worked fine for me
[17:07:04] <lynxlynxlynx> Actor::CopySelf and CREImp::GetActor are the only two callers
[17:07:13] <lynxlynxlynx> there's a commented one in pcf_level
[17:07:26] <lynxlynxlynx> that's probably it, since CreateDerivedStats would call it
[17:08:48] <lynxlynxlynx> yep
[17:13:33] <lynxlynxlynx> ok, that's it for tohit, still looking into ac and apr
[17:16:54] <CIA-20> gemrb: 03lynxlupodian * r6579 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: do call SetupFist in pcf_level
[17:18:03] --> Edheldil has joined #gemrb
[17:18:03] --- ChanServ gives channel operator status to Edheldil
[17:19:14] <Edheldil> hello
[17:19:39] <fuzzie> hi
[17:20:12] <lynxlynxlynx> oj
[17:21:07] <fuzzie> lynxlynxlynx: well, i went from the beginning to poking around Saradush and all seems well to me
[17:21:18] <lynxlynxlynx> great
[17:21:32] <lynxlynxlynx> i got sidetracked by these monk issues
[17:21:39] <fuzzie> The patch I posted has some problems with RunAwayFrom. I hacked around it, but it needs fixing elsewhere, as usual. :(
[17:22:09] <fuzzie> Now it's time for a PS:T run, I guess :)
[17:24:32] <-- Avenger has left IRC ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
[17:25:03] <fuzzie> Hm, PS:T goes wrong right away.
[17:26:42] <fuzzie> Works in svn, too. Drat.
[17:32:52] <fuzzie> Oh, it only works in svn because svn has a broken action.
[17:42:25] <fuzzie> Oh, no, it's my fault. Oh well.
[17:49:26] <lynxlynxlynx> hmm, the monk gets weapon speed bonuses, but not apr ones
[17:49:41] <lynxlynxlynx> maybe negative speed means a new attack
[17:50:06] <lynxlynxlynx> the comments in one of the speed==0 weapons indicate this too (practically grants another attack)
[17:53:36] --> Avenger has joined #gemrb
[17:53:42] --- ChanServ gives channel operator status to Avenger
[17:53:58] <Avenger> ok, bg1 and bg2 are officially different as far as projectiles are concerned
[17:54:16] <Avenger> i start working on bg1 projectiles
[17:54:30] <lynxlynxlynx> oh
[17:54:46] <lynxlynxlynx> why does the lightning machine fire lightning and the lightning spell not?
[17:55:13] <Avenger> maybe it uses a projectile i already set
[17:55:18] <Avenger> it isn't fully working
[17:55:46] <Avenger> you can check the projectile in the spell, and add it to gemprojctl
[17:56:40] <Avenger> either lightb or lightbnb. one is supposed to be bouncing the another is not. But none are working yet
[17:57:55] <lynxlynxlynx> 40
[17:58:00] <fuzzie> oh, devSin answers my questions before i ask them :)
[17:58:33] <lynxlynxlynx> yeah, nothing set
[17:58:35] <-- Gekz has left IRC (Read error: 104 (Connection reset by peer))
[17:59:46] <Avenger> not sure about 40
[17:59:54] <Avenger> it is +-1 :)
[18:00:06] <-- kingron has left IRC ("Leaving")
[18:00:24] <lynxlynxlynx> that's what my old dltcep displays for all extended headers
[18:01:27] <fuzzie> presumably it is 0x27 (39) in projectl.ids
[18:01:57] <fuzzie> lynxlynxlynx: i updated that patch if you have any time to test it, btw
[18:02:21] <lynxlynxlynx> sorry, i opened a can of worms
[18:04:38] <lynxlynxlynx> looks like monk apr and base ac boni were hardcoded
[18:04:38] --> kingron has joined #gemrb
[18:05:53] <CIA-20> gemrb: 03lynxlupodian * r6580 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: actually use IE_PHYSICALSPEED (weapon speed bonus)
[18:06:02] <Avenger> woo it works
[18:06:07] <Avenger> first projectiles in bg1
[18:06:37] <Avenger> and scorcher ice is actually ice blue in bg1
[18:06:39] <fuzzie> :)
[18:07:10] <Avenger> ok, i guess arrows are the most important to port?
[18:07:32] <Avenger> that is kinda stealing, hmm
[18:07:34] <Avenger> well
[18:07:41] <Avenger> not sure how to go about this
[18:07:55] <Avenger> shall i simply create .pro files on my own, or copy the bg2 ones
[18:08:16] <fuzzie> If you create the .pro files on your own, they could also be used by new games.
[18:08:26] <fuzzie> So if you don't hate the idea, it seems nicer.
[18:08:37] <Avenger> but if i create them perfectly, they would be the same :D
[18:08:44] <Avenger> except if they fill some unknown field wiht some crap
[18:09:09] <fuzzie> i'm sure they do :) and maybe they're not identical
[18:09:17] <Avenger> so, i will do this: i look at the original in dltcep and set up one in another
[18:09:25] <fuzzie> that sounds fine
[18:09:41] <fuzzie> there's no real creativity in a .pro file :)
[18:11:04] <Avenger> uhm
[18:11:08] <Avenger> well at least not in the arrows
[18:11:37] <fuzzie> well, I mean, in the basic bits - I guess the complicated effect blocks are not so good to copy
[18:16:54] <CIA-20> gemrb: 03fuzzie * r6581 10/gemrb/trunk/gemrb/plugins/Core/ (7 files):
[18:16:54] <CIA-20> gemrb: Make blocking actions remain as CurrentAction until they're done,
[18:16:54] <CIA-20> gemrb: and in the process make moving actions responsible for moving.
[18:16:54] <CIA-20> gemrb: This changes quite a lot of code, so might introduce strange bugs.
[18:18:06] <fuzzie> It needs a lot more work, but hopefully it is not a disaster.
[18:23:03] <fuzzie> And it's still possible that it's not the best design, but most of the changes are needed in any case. So I'll go have dinner now.
[18:24:05] <CIA-20> gemrb: 03lynxlupodian * r6582 10/gemrb/trunk/gemrb/GUIScripts/ie_stats.py: added IE_MOVEMENTRATE to ie_stats.py
[18:30:20] <CIA-20> gemrb: 03lynxlupodian * r6583 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp:
[18:30:20] <CIA-20> gemrb: the physical speed bonus is stored positive
[18:30:20] <CIA-20> gemrb: decreased the effect of random initiative
[18:33:21] <fuzzie> hm, I still have this bg1 chargen lurking in my repository
[18:34:47] <fuzzie> I wonder if I should just commit it? It adds new bugs, but it is much better than the current one.
[18:35:57] <lynxlynxlynx> i was about to ask you about this
[18:36:13] <lynxlynxlynx> there are new patches for the things you noticed as regressions
[18:36:32] <lynxlynxlynx> https://sourceforge.net/tracker/?func=detail&aid=2802437&group_id=10122&atid=310122
[18:36:32] <fuzzie> Yes, I have everything applied.
[18:36:38] <lynxlynxlynx> oh
[18:36:51] <fuzzie> It segfaults when you make a mage, remove the mage spells and then try picking mage spells again, though.
[18:37:32] <lynxlynxlynx> too bad he's not here, last time we mentioned this he knew the problem
[18:37:43] <lynxlynxlynx> i think he doesn't call SetupSpellLevels soon enough
[18:37:51] <lynxlynxlynx> anything else
[18:39:01] <fuzzie> It's full of bugs. Nothing worse than the old chargen, though.
[18:39:34] <lynxlynxlynx> it kills a lot of useless code though
[18:40:00] <lynxlynxlynx> so if creating mages is the only known regression, i'm all for applying it
[18:43:30] <fuzzie> http://fuzzie.org/nfs/gemrb/danamin_bg1_chargen.txt
[18:43:38] <Avenger> i thought the segfaults were fixed by fuzzie
[18:43:48] <Avenger> she found the missing boundary checks
[18:44:04] <fuzzie> Avenger: now it breaks later, but it still breaks :/
[18:44:20] <Avenger> i see
[18:44:31] <Avenger> it will break clerics too, i guess :D
[18:44:35] <fuzzie> It must be that the GUIScript code is calling things in the wrong order.
[18:45:09] <fuzzie> It works fine as long as you don't clear the spellbooks, but if you clear the spellbooks and try to memorise spells again, it will segfault.
[18:47:00] <fuzzie> It removes the spells by doing RemoveSpell on every known spell, and then SetMemorizableSpellsCount(MyChar, 0, IE_SPELL_TYPE_PRIEST, 1)
[18:47:05] <fuzzie> (this is for priests)
[18:47:36] <fuzzie> It adds the spells by doing SetupSpellLevels and then LearnSpell for each one.
[18:49:02] <fuzzie> ok, let me add a lot of print statements
[18:53:28] --> Avenger_ has joined #gemrb
[18:53:28] <-- Avenger has left IRC (Read error: 54 (Connection reset by peer))
[18:53:29] --- Avenger_ is now known as Avenger
[18:53:29] <fuzzie> it crashes on the GetKnownSpellsCount
[18:53:48] <fuzzie> after it did SetMemorizableSpellsCount(MyChar, 0, IE_SPELL_TYPE_PRIEST, 1)
[18:54:16] <fuzzie> is there an obvious flaw there?
[18:55:03] --- ChanServ gives channel operator status to Avenger
[18:55:28] <Avenger> i guess getknownspellscount doesn't check something?
[18:56:44] <fuzzie> Well, I guess spells[type][level]->known_Spells is corrupt
[18:57:19] <fuzzie> but I don't see how that would ever happen
[18:57:59] <-- kingron has left IRC (Remote closed the connection)
[18:58:22] <fuzzie> AddSpellMemorization seems to helpfully add NULLs.
[18:59:22] <fuzzie> And all of the code in spellbook assumes that all levels have been initialized.
[19:01:20] <fuzzie> But I don't understand how this code works, so I can't try and fix it.
[19:01:55] <Avenger> hmm, i see
[19:02:15] <Avenger> i guess it shouldn't add nulls then, but initialized pages
[19:04:36] <wjp> maybe make spells[i] a vector<CRESpellMemorization> instead of a vector<CRESpellMemorization*> ?
[19:10:50] <fuzzie> I am thinking of committing the bg1 chargen with a "segfault here" printf, anyway.
[19:11:07] <fuzzie> I don't want it to bitrot without being applied.
[19:11:14] <fuzzie> So, announce your objections :)
[19:12:02] <wjp> well, it looks to me like Avenger's suggestion has a good chance of fixing this crash
[19:12:41] <Avenger> well, commit it
[19:12:59] <-- barra_library has left IRC ("Verlassend")
[19:19:44] <fuzzie> i still don't know how this patch /works/
[19:19:55] <fuzzie> was all this OnLoad() stuff with the text and buttons really useless?
[19:21:52] <lynxlynxlynx> it was nplicated
[19:22:19] <lynxlynxlynx> see for example how bg2 does it, it was modeled after that (iwd2 was too)
[19:32:26] <-- leitkie has left IRC (Remote closed the connection)
[19:36:28] <Avenger> hmm, i couldn't find the fireball flames in bg1
[19:39:47] <lynxlynxlynx> i can't find any info on monk ac/apr progression
[19:39:59] <lynxlynxlynx> it seems it was hardcoded
[19:44:08] <Avenger> mfist4 is fist+1 :)
[19:44:14] <Avenger> it has a thac0 bonus
[19:44:22] <lynxlynxlynx> yes, but that's only for damage and thac0
[19:44:36] <lynxlynxlynx> monks also get ac, ac vs missile and apr boni
[19:44:37] <Avenger> ahh you need ac
[19:44:46] <lynxlynxlynx> and they're not in the clab table
[19:45:19] <Avenger> do they receive one ac per level?
[19:45:22] <Avenger> or
[19:46:32] <lynxlynxlynx> 1/2 apr / 3 levels, initial ac 9 + 1 / 2 levels, -1 ac vs missile / 3 levels
[19:46:51] <Avenger> apr is here
[19:46:59] <lynxlynxlynx> here being? :)
[19:47:16] <Avenger> spcl816 has attack speed factor mod
[19:47:28] <lynxlynxlynx> that's attack speed, not apr
[19:47:30] <Avenger> ahh that is not atack per round
[19:47:40] <lynxlynxlynx> they get -1 at level 8 and level 12
[19:47:56] <lynxlynxlynx> yes, i've looked at the applied effects already
[19:48:15] <lynxlynxlynx> even fruitlessly grepped the binary
[19:48:22] <wjp> hm, is loading games broken just for me?
[19:48:28] <Avenger> hmm why do i see ap_spcl819 in all columns
[19:48:39] <lynxlynxlynx> that's 3% mr
[19:48:40] <Avenger> in all rows of column 14
[19:48:51] <Avenger> wjp: maybe you got a tis extracted?
[19:48:55] <lynxlynxlynx> you get it at level 14 -> 42%
[19:48:58] <Avenger> did you look at some area with dltcep?
[19:49:06] <lynxlynxlynx> wjp: which game?
[19:49:12] <Avenger> lynx: i wonder why it is given in 3%
[19:49:23] <lynxlynxlynx> i guess they were lazy
[19:49:40] <lynxlynxlynx> why create a new effect if you can just apply the one that will be used later multiple times
[19:50:14] <Avenger> interesting
[19:50:27] <wjp> lynxlynxlynx: at least bg1 and bg2
[19:50:42] <lynxlynxlynx> original saves or gemrb saves?
[19:50:56] <fuzzie> wjp: if they're old gemrb saves, they could be corrupt
[19:50:59] <fuzzie> current svn works for me though
[19:51:01] <lynxlynxlynx> i can load both for soa and (deliberately) only gemrb saves for tob
[19:51:10] <Avenger> lynx you can do one more thing, check if your monk has any applied effects
[19:51:14] <Avenger> about ac
[19:51:21] <lynxlynxlynx> been there done that
[19:51:28] <lynxlynxlynx> of course he doesn't
[19:51:41] <Avenger> you can see the rest of the applied stuff?
[19:51:47] <lynxlynxlynx> yep
[19:52:02] <lynxlynxlynx> i think everything else is there, but i didn't do a complete check
[19:52:16] <lynxlynxlynx> there are immunities, there is the speed factor, the movement rate
[19:52:19] <Avenger> i hope this could be guiscripted
[19:52:33] <Avenger> is the ac saved?
[19:52:41] <Avenger> the base ac is modified, i guess
[19:52:41] <wjp> oh, clean build fixed things. Some strange corruption I guess :-(
[19:52:49] <lynxlynxlynx> Avenger: yes, the base is modified
[19:53:13] <lynxlynxlynx> i have a save from the original and she has ac -4 (level 20) while nothing is equipped
[19:53:57] <lynxlynxlynx> the base is 0 (-4 dex)
[19:54:15] <lynxlynxlynx> apr doesn't appear to be saved on the other hand, since we show 1
[19:54:38] <Avenger> that sucks
[19:54:44] <lynxlynxlynx> missile ac is -6 which is good
[19:54:56] <fuzzie> http://fuzzie.org/nfs/gemrb/fix_spellbook_AddSpellMemorization.txt
[19:54:59] <fuzzie> ^- does that look okay, anyone?
[19:55:09] <lynxlynxlynx> (unless it is stat based)
[19:56:26] <wjp> fuzzie: yes
[19:56:47] <fuzzie> wjp: thanks
[19:57:34] <CIA-20> gemrb: 03fuzzie * r6584 10/gemrb/trunk/gemrb/plugins/Core/Spellbook.cpp: try to fix segfaults caused by Spellbook::AddSpellMemorization adding NULLs
[19:57:50] <lynxlynxlynx> Avenger: my plan is to add a table to bg2 with these three bonus progressions and hardcode it in the chargen and levelup scripts
[19:58:06] <Avenger> ok
[19:58:36] <Avenger> the problem is that chargen cannot do this :(
[19:58:51] <Avenger> if a stat isn't saved, it cannot be set in chargen
[19:59:06] <Avenger> ac is fine
[19:59:17] <Avenger> but you cannot do the apr
[19:59:29] <Avenger> if it is not in an effect or not saved
[19:59:38] <Avenger> that really sucks
[19:59:53] <lynxlynxlynx> maybe i should create effects instead
[20:00:10] <Avenger> yes, but... well
[20:00:22] <Avenger> it would not be compatible
[20:00:26] <lynxlynxlynx> true
[20:01:19] <lynxlynxlynx> i'm pretty amazed that nobody talked about this aspect of monks on g3 or pp
[20:01:20] <CIA-20> gemrb: 03fuzzie * r6585 10/gemrb/trunk/gemrb/GUIScripts/bg1/ (27 files): apply patch from danamin (#2802437) which rewrites bg1 chargen
[20:01:21] <Avenger> there are 2 things:1 all savegames of original games should be compatible when loaded in gemrb. 2. if possible, make gemrb saves compatible with the original too.
[20:01:54] <fuzzie> So now the bg1 chargen works better than the bg2 one.
[20:02:02] <Avenger> better?
[20:02:11] <fuzzie> You can import chars in bg1 chargen, now.
[20:02:15] <Avenger> nice
[20:02:35] <Avenger> probably easy to port
[20:02:53] <Avenger> the problem is that the scripts are not similar structure, i guess
[20:02:56] <lynxlynxlynx> bg2 has some support already iirc
[20:03:08] <fuzzie> well, thereotically it should work in bg2 already, but it doesn't
[20:03:39] <fuzzie> I think that's just bugs, though.
[20:04:14] <lynxlynxlynx> Avenger: so either we apply all this in the core or extend SetPlayerStat to be able to modify BaseStats
[20:05:12] <fuzzie> but chargen/levelup is not enough in that case, even
[20:05:46] <lynxlynxlynx> yes, at least guirec too, but this would still not be enough for original saves
[20:06:06] <lynxlynxlynx> so i guess CreateDerivedStats it is
[20:06:17] <Avenger> setplayerstat is able to modify basestats
[20:06:46] <Avenger> ahh yes, createderivedstats
[20:06:56] <Avenger> and it would be an ugly hack in the core
[20:07:17] <Avenger> i would like to keep those game speciific hacks at a minimum, but i cannot :(
[20:07:21] <lynxlynxlynx> setplayerstat can't modify basestats; getplayerstat can fetch it though
[20:07:34] <lynxlynxlynx> err nevermind
[20:07:40] <Avenger> basestat or modified
[20:07:53] <Avenger> modified cannot be changed, because it is base+effects
[20:07:59] <lynxlynxlynx> yes
[20:08:17] <Avenger> the problem is some base stats are not saved, those are the 'derived stats'
[20:08:35] <Avenger> apr could be derived from level and class (level of monk)
[20:09:01] <Avenger> i guess, it will require a 2da used by the core
[20:09:03] <lynxlynxlynx> yes, it would be a similar table as for the fists
[20:09:28] <lynxlynxlynx> 27 files changed, 1046 insertions(+), 1952 deletions(-) <-- last commit :D
[20:09:32] <Avenger> it could be a class apr table
[20:09:56] <Avenger> rows: classes, columns: levels
[20:10:15] <lynxlynxlynx> there already is one
[20:10:20] <Avenger> maybe there are other games where classes give apr
[20:10:22] <lynxlynxlynx> wspattck
[20:10:29] <Avenger> that is not class based
[20:10:51] <lynxlynxlynx> it is only for wariors, yeah
[20:11:03] <Avenger> warriors?
[20:11:12] <lynxlynxlynx> fighters, paladins, rangers, barbies
[20:11:13] <Avenger> i thought it is weapon specialisation
[20:11:24] <lynxlynxlynx> it has multiple functions
[20:11:30] <Avenger> oh
[20:11:37] <Avenger> i'm ignorant
[20:11:47] <fuzzie> 483 commits since 0.4.0.
[20:12:04] <Avenger> so, lynx, is there a way to tel which classes use wspatck?
[20:12:19] <lynxlynxlynx> only warriors
[20:12:34] <lynxlynxlynx> mattinm added a function to core to tell what's a warrior
[20:12:35] <Avenger> that would still require some marker in our clskills.2da
[20:12:40] <Avenger> oh cool
[20:12:43] <Avenger> we need another for monks
[20:12:47] <lynxlynxlynx> but i wouldn't modify it
[20:14:24] <Avenger> we are close to another news
[20:14:34] <lynxlynxlynx> yep, wednesday :)
[20:14:53] <lynxlynxlynx> i think it is best to add one table with all three bonuses just for monks
[20:15:10] <Avenger> yes
[20:15:16] <lynxlynxlynx> both loading, chargen and levelup end up calling CreateDerivedStats and we can apply all of them there
[20:15:34] <Avenger> yes
[20:16:37] <-- Avenger has left IRC ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
[20:17:49] <fuzzie> so, a bunch of the actor name strrefs have \ns at the end
[20:17:57] <fuzzie> the Gnoll Captain which you encounter during the challenge waves, for example
[20:18:00] <fuzzie> that is rather irritating
[20:18:02] <lynxlynxlynx> yeah
[20:18:16] <lynxlynxlynx> i think we already had this issue once somewhere
[20:18:34] <lynxlynxlynx> wasn't it also in the tooltip context?
[20:18:37] <fuzzie> yes
[20:18:57] <fuzzie> someone fixed it to strip the trailing newlines, but that isn't very helpful when it's in the middle due to concaternating them :)
[20:20:28] <lynxlynxlynx> i don't remember any multiline tooltips in the original
[20:20:55] <fuzzie> their string retrieving probably strips newlines automatically
[20:21:09] <lynxlynxlynx> so maybe we could remove all of them at some point
[20:21:31] <CIA-20> gemrb: 03avenger_teambg * r6586 10/gemrb/trunk/gemrb/override/ (11 files in 2 dirs): added some bg1 projectiles as proof of concept
[20:24:47] <fuzzie> oh, i hit that 'aborted action due to death' bug
[20:33:41] <fuzzie> can't reproduce it, even with bg1's hilarious bandit ambushes
[20:38:32] <CIA-20> gemrb: 03lynxlupodian * r6587 10/gemrb/trunk/NEWS: NEWS: centennial update + reordering by perceived importance
[20:39:54] <fuzzie> I found another disaster with the area music restarting: we try playing nonexistant music in the Saradush pub, leading to console spam.
[20:40:07] <fuzzie> There must be a less silly way to do it.
[20:42:24] --> leitkie has joined #gemrb
[20:46:20] <fuzzie> lynxlynxlynx: There's no 'applydamage' action in bg1, apparently.
[20:47:26] <lynxlynxlynx> maybe change it to plain damage then
[20:48:35] <leitkie> is trunk usable currently?
[20:48:49] <fuzzie> lynxlynxlynx: no damage either.
[20:49:03] <fuzzie> leitkie: We added some large changes in the last few hours, but they should be okay.
[20:49:19] <fuzzie> If you mean 'usable' as in 'you can play all the way through the games', no, there are still big bugs.
[20:49:46] <lynxlynxlynx> maybe you can play to the end, nobody tried though
[20:49:56] <lynxlynxlynx> and it certainly wouldn't be as fun as the original
[20:50:39] <lynxlynxlynx> fuzzie: maybe we should call Actor::Damage directly then
[20:50:52] <lynxlynxlynx> or apply the effect
[20:51:07] <fuzzie> there's a comment there warning about sync issues of some kind
[20:52:31] <leitkie> leitkie is german for how you would pronounce lightkey :p
[20:52:49] <leitkie> just wanted to make sure it is not worse than 0.4.0
[20:52:57] <lynxlynxlynx> it's much better
[20:53:07] <fuzzie> this is why you got a reasonable response to begin with :) but then i thought, maybe it's not you, i'd better clarify :)
[20:54:12] <leitkie> not in general, could have been a serious regression or something :p
[21:42:44] <lynxlynxlynx> fuzzie: busy?
[21:43:58] <fuzzie> not now
[21:44:42] <lynxlynxlynx> :)
[21:45:40] <lynxlynxlynx> can you please create a monk in tob and tell me his apr/ac/missile; then level him up to 4,5mio and redo?
[21:46:16] <lynxlynxlynx> remove any equipment that could affect those first (iuon stone, rings)
[21:46:24] <fuzzie> hm, not at the Windows machine right now :/
[21:46:36] <lynxlynxlynx> it can wait
[21:47:09] <lynxlynxlynx> i have the table ready, but could only test the soa limits
[21:47:23] <lynxlynxlynx> found some wierd info on the net
[21:56:05] <fuzzie> base tob monk: AC 0, number of attacks 4, missile AC modifier -6
[21:56:10] <fuzzie> that's what you wanted?
[21:57:31] <lynxlynxlynx> also at level 40?
[21:57:46] <fuzzie> haven't levelled yet, wanted to verify i got the info right
[21:57:57] <lynxlynxlynx> yes, that's good, same as the caps in soa
[21:58:45] <fuzzie> Oh, my ToB is playing this stupid capping game.
[21:59:05] <fuzzie> At level 21, which I thought was the SoA cap, it's -1 AC and -7 missiles.
[21:59:56] <lynxlynxlynx> that's ok
[22:00:14] <fuzzie> Let me see if I can convince ToB to let me actually remove the cap.
[22:00:26] <lynxlynxlynx> tob has a cap of 40
[22:00:46] <lynxlynxlynx> so i don't understand what the problem is
[22:00:50] <fuzzie> Mine is capping me at 2950000. I probably removed a file from overrride.
[22:00:56] <lynxlynxlynx> ah
[22:01:09] <fuzzie> yes indeed
[22:03:08] <fuzzie> At level 28 (4.5m) it's -3 AC and -9 missile, assuming the HLAs aren't affecting it.
[22:03:55] <fuzzie> And at level 40 it's -6 AC and -13 missile, again with a pile of HLAs.
[22:04:44] <lynxlynxlynx> i think they don't apply anything relevant
[22:05:57] <fuzzie> Mm, none of them look to apply anything permanent.
[22:09:43] <lynxlynxlynx> apr is still 4, right?
[22:09:50] <fuzzie> yes
[22:10:04] <lynxlynxlynx> ok, so missile and apr were confirmed
[22:10:24] <lynxlynxlynx> there could be an off-by-1 mistake in ac
[22:11:10] <lynxlynxlynx> currently i have -4 at level 28 (start at 27)
[22:11:49] <lynxlynxlynx> so it would actually have to be a +2 mistake
[22:12:37] <fuzzie> if level 28 should be -3 and you get -4, that's off-by-one?
[22:13:06] <lynxlynxlynx> i'd get -4 already at level 27
[22:13:23] <lynxlynxlynx> and the ac period is 2
[22:14:16] <lynxlynxlynx> oh, it slows down later
[22:14:35] <lynxlynxlynx> ends up changing at level 30, 35, 40, so maybe the slowdown happens earlier too
[22:14:57] <fuzzie> Well, I'll be up for a little longer if you'd like anything more tested.
[22:15:28] <lynxlynxlynx> no need, this makes perfect sense now
[22:15:32] <lynxlynxlynx> thanks for the data
[22:15:41] <lynxlynxlynx> it switched to a period of 3 and then 5 at the very end
[22:16:14] <fuzzie> Heh, I fixed combat and now the music never stops. Gr.
[22:17:18] <fuzzie> Also nothing ever fights back because their AI scripts work now, which is inconvenient.
[22:18:11] <lynxlynxlynx> that doesn't make sense
[22:19:03] <fuzzie> Almost all the scripting has an 'if AttackedBy then Shout' as one of the first blocks.
[22:19:19] <fuzzie> But gemrb's AttackedBy action is broken, it always returns true if in combat.
[22:19:26] <fuzzie> So enemies just keep on shouting forever, and never attacking.
[22:19:34] <lynxlynxlynx> heh
[22:20:40] <fuzzie> IESDP says "Returns true if the active CRE was attacked in the style specified or had an offensive spell cast on it by the specified object in the last script round"
[22:20:57] <fuzzie> but the 'style specified' bit is nonsense, at least, so maybe it's all nonsense :(
[22:21:27] <fuzzie> devSin says: AttackedBy() returns true if the caller is "threatened" by an object matching the first parameter; IIRC, the second parameter (attack style) is nonfunctional.
[22:22:22] <CIA-20> gemrb: 03lynxlupodian * r6588 10/gemrb/trunk/gemrb/override/bg2/monkbon.2da:
[22:22:22] <CIA-20> gemrb: bg2/monkbon.2da: added table with monk apr/ac bonus level progression
[22:22:22] <CIA-20> gemrb: this was hardcoded in the IE
[22:22:23] <fuzzie> And this is "updated in local copy" by igi in 2007.
[22:23:31] <lynxlynxlynx> let's see if he replied again
[22:23:55] <fuzzie> The wiki thread turned into a disaster fast.
[22:24:08] <fuzzie> Oh, I see, igi updated the astyles page. Hrm. :/ I'll have to look into it.
[22:26:08] <lynxlynxlynx> devsin hehe
[22:31:54] --> tombhadAC has joined #gemrb
[22:32:54] <Edheldil> wiki thread on iesdp? where is it?
[22:34:40] --> barra_library has joined #gemrb
[22:35:54] <lynxlynxlynx> http://forums.gibberlings3.net/index.php?showtopic=17666
[22:40:44] <CIA-20> gemrb: 03lynxlupodian * r6589 10/gemrb/trunk/gemrb/plugins/FXOpcodes/FXOpc.cpp: haste now applies the initiative bonus
[22:42:33] <-- lynxlynxlynx has left IRC (Remote closed the connection)
[23:04:35] <-- leitkie has left IRC (Ping timeout: 180 seconds)
[23:17:27] --> leitkie has joined #gemrb
[23:25:29] --> pupnik_ has joined #gemrb
[23:25:39] <leitkie> after the checkout, the installation notes say "cd gemrb/gemrb/trunk", which is the correct directory?
[23:25:46] <pupnik_> thiszle's wheah the shizle's at :)
[23:26:09] <fuzzie> gosh, we have installation notes?
[23:26:36] <leitkie> from an ancient time, long forgotten
[23:26:46] <leitkie> on the website
[23:27:01] <fuzzie> So we do. 'cd gemrb' ought to do, I think.
[23:27:45] <fuzzie> Those installation notes should probably mention that you have to remove libNullSound.so from the plugins/ directory.
[23:31:03] <leitkie> next stop is:
[23:31:27] <leitkie> dammit, I want a middle mouse button!
[23:32:38] <leitkie> aclocal: unrecognized option -- '-W'
[23:33:14] <leitkie> at ./autogen.sh
[23:33:36] <fuzzie> edit autogen.sh and remove the '-W no-syntax' bit from after '$my_aclocal'.
[23:33:54] <fuzzie> I guess we need to add a version check for old aclocal too.
[23:35:06] <leitkie> where is aclocal from?
[23:36:40] <fuzzie> It's part of automake.
[23:37:24] <leitkie> trying to install it on my 900 MHz MIPS netbook btw :-)
[23:37:38] <leitkie> let's see how it runs
[23:38:17] <leitkie> not autoconf?
[23:38:49] <fuzzie> If it's big-endian MIPS you'll need to enable the EndianSwitch in the config, but I imagine the netbook is going to be mipsel.
[23:39:21] <fuzzie> Well, on Debian it's in the automake packages :) I have aclocal-1.10 in 'automake' and aclocal-1.9 in 'automake1.9'.
[23:39:23] <leitkie> MIPS64 mipsel, hai :-)
[23:39:44] --- barra_library is now known as barraAway
[23:42:19] <leitkie> okey, got an old version installed, switching..
[23:43:55] <fuzzie> > With gore enabled, the creature still sticks around. He just gets an animation change to CHUNKS, but can still do all the normal things a dead sprite can.
[23:44:03] <fuzzie> ^- more wisdom from devSin that we must remember to fix
[23:49:46] <leitkie> complaining about the STL library being too old
[23:50:17] <leitkie> err std c++ lib
[23:52:01] <Edheldil> I have poured some oil to the fire of wiki thread :)
[23:52:07] <Edheldil> good night
[23:52:10] <-- Edheldil has left IRC ("Really?")
[23:52:11] <fuzzie> Your STL library has got to be *really* old for that to fail, it's more likely you don't have it installed.
[23:53:03] <fuzzie> Although it comes with g++, so it would've failed earlier without it..
[23:53:08] <leitkie> prolly
[23:54:13] <fuzzie> What's your g++ version?
[23:55:24] <leitkie> sez not installed, brb :->