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

Archive Today Yesterday Tomorrow
GemRB homepage


[01:01:30] --- barra_library is now known as barraAway
[08:36:00] <-- |Cable| has left IRC ("Leaving")
[09:13:06] --> lynxlynxlynx has joined #gemrb
[09:13:06] --- ChanServ gives channel operator status to lynxlynxlynx
[09:20:03] <fuzzie> lynxlynxlynx: i got a few 'enemyname - enemyname was immune to my damage' messages when playtesting, known problem?
[09:20:22] <lynxlynxlynx> no
[09:20:28] <lynxlynxlynx> i take it this is bg2?
[09:22:07] <fuzzie> yes
[09:22:48] <lynxlynxlynx> i'll try it again, but it worked for me
[09:22:51] <fuzzie> could just have been something targetting itself.
[09:22:58] <lynxlynxlynx> maybe they do target themselves at some point :)
[09:23:01] <lynxlynxlynx> yeah
[09:23:12] <fuzzie> i had Jaheira give Imoen a big bash when I tried casting Heal Light Wounds, too.
[09:23:25] <fuzzie> so maybe weird targetting things going on.
[09:52:50] <lynxlynxlynx> i see what's up with the wrong damagetypes
[09:53:14] <lynxlynxlynx> dltcep shows something else in the hitting header
[09:53:23] <fuzzie> i have a huge list of annoying bugs from my playtest, but i'll write that up later, once i've escaped the dungeon
[09:53:25] <lynxlynxlynx> so my monk was doing blunt not cold as expected
[09:53:37] <lynxlynxlynx> good
[09:56:16] <fuzzie> we're forgetting to do the weapon_damagetype[hittingheader->DamageType] when retrieving the damage type from the weapon in PerformAttack, maybe?
[09:57:02] <lynxlynxlynx> yep
[09:57:10] <fuzzie> oh, GetDefense does that itself
[09:57:11] <lynxlynxlynx> or atleast for the output call
[09:58:16] <fuzzie> we're not doing it for ModifyDamage, i don't see where the output call is
[09:58:55] <lynxlynxlynx> my mistake, i confused them
[09:59:23] <fuzzie> but ModifyDamage basically needs a 'damagetype = weapon_damagetype[damagetype];' at the top, i think. but mistake to trust me, i haven't had coffee yet.
[10:00:26] <lynxlynxlynx> i started with changing the callers, but doing this will be cleaner
[10:01:20] <fuzzie> well, probably not, if you want the effect to call it
[10:02:18] <lynxlynxlynx> fx_damage? I have to check which one it passes
[10:02:28] <fuzzie> it passes the DAMAGE_ constants we have already
[10:02:35] <lynxlynxlynx> ah, ok
[10:02:50] <fuzzie> UseItem does the weapon_damagetype[] lookup when constructing the effect
[10:03:41] <fuzzie> (UseItem looks the DamageType up again from the hittingheader)
[10:04:03] <fuzzie> so changing the caller is better, i think
[10:04:23] <lynxlynxlynx> already testing
[10:05:03] <fuzzie> maybe this explains why i could attack immune demons/golems :)
[10:05:42] <lynxlynxlynx> no, that checks something else
[10:05:54] <fuzzie> ah, darn :(
[10:05:57] <lynxlynxlynx> if (target->fxqueue.WeaponImmunity(wi->enchantment, wi->itemflags)) {
[10:05:59] <lynxlynxlynx> damage = 0;
[10:06:14] <lynxlynxlynx> but this worked the last time i tried it
[10:06:23] <lynxlynxlynx> you could kill the janitors?
[10:06:30] <fuzzie> yes
[10:06:44] <fuzzie> and the thing in the room with the machinery, but that is maybe not immunity
[10:06:54] <lynxlynxlynx> the albion
[10:07:40] <lynxlynxlynx> ah, i get the wrong immunity message too now that stoneskin is working again
[10:11:20] <CIA-18> gemrb: 03lynxlupodian * r6513 10/gemrb/trunk/gemrb/plugins/Core/ (Actor.cpp Actor.h): fixed weapontype type in ModifyDamage
[10:20:55] <fuzzie> looks good :)
[10:33:54] <CIA-18> gemrb: 03lynxlupodian * r6514 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: fixed immunity message deliverer in DisplayCombatFeedback
[10:37:41] <lynxlynxlynx> the jailkeep golem gives the immunity message nicely
[10:37:52] <lynxlynxlynx> the sewer one doesn't give any feedback
[10:38:28] <lynxlynxlynx> even though also the bad VB_DAMAGE is displayed, they can't be hurt
[10:38:53] <lynxlynxlynx> until i bring out the +1 that is :)
[10:51:09] <fuzzie> hm, i had corpses :) but oh well
[10:53:48] <lynxlynxlynx> maybe it's an endian issue
[10:55:25] <fuzzie> or someone had a +1 without me noticing and the damage messages distracted me
[10:55:45] <lynxlynxlynx> the dagger is +1
[10:56:01] <lynxlynxlynx> a crate has a +1 staff and the djini gives you the +2 2h sword
[10:56:11] <fuzzie> my final party ended up with a +1 long sword, +1 bastard sword, +1 staff and +1 dagger at the end of the area, i think
[10:57:06] <fuzzie> the most annoying problem is the UI breaking on enemy death
[10:57:50] <fuzzie> sprotte reported that, but avenger seems to have discarded it as bg1-specific
[10:59:15] <lynxlynxlynx> what gives?
[10:59:23] <fuzzie> ttps://sourceforge.net/tracker/?func=detail&aid=2536283&group_id=10122&atid=110122
[10:59:34] <fuzzie> um, with an extra h :/
[11:04:25] <wjp> hm, sounds like the wrong window pack could be loaded, but I'm not sure how that would happen when a monster dies
[11:04:40] <wjp> so maybe it's something else entirely
[11:05:51] <fuzzie> it fixes itself after a second or two, for me.
[11:06:19] <fuzzie> and the window pack displayed is whichever one was last used (often the load/save screens)
[11:06:43] <fuzzie> I couldn't make it happen in any other way than enemy death, though.
[11:12:30] <lynxlynxlynx> i haven't seen that in bg2 yet
[11:13:18] <fuzzie> I can reproduce it any time I play the dungeon 'seriously' (more than half an hour or so of play).
[11:13:26] <fuzzie> But that's not particularly helpful for reproduction. :/
[11:14:00] <lynxlynxlynx> i've killed some hundred nasties today, but it is true that i don't bother with the loot
[11:15:32] <fuzzie> I wouldn't be surprised if it's all the looting and switching UI windows and quicksaving that causes it, somehow.
[11:15:56] <lynxlynxlynx> saving definitely can
[11:17:53] <fuzzie> oh, and ctrl-y is useless for testing any of this, because it's short-circuiting a huge amount of the code
[11:18:37] <fuzzie> It would be nice to have a "do huge amounts of magical damage" keystroke, perhaps.
[11:19:29] <lynxlynxlynx> isn't that the purpose of ^y?
[11:20:23] <fuzzie> Well, right now, it just kills all pending actions and then does a Kill() -> direct setting of HP to -100.
[11:21:20] <lynxlynxlynx> oh
[11:21:38] <lynxlynxlynx> it would be better to just assign a damage effect with -1000
[11:22:09] <fuzzie> Well, I thought that a new keystroke might be better, since a damage effect is not going to kill a lot of creatures..
[11:22:12] <lynxlynxlynx> did you notice the bad heightmap/wallgroup in the room with the albion?
[11:22:38] <lynxlynxlynx> make the damage be poisonous and cold
[11:22:49] <lynxlynxlynx> rarely anyone is immune to poison
[11:23:32] <fuzzie> I didn't, but I was distracted by the fact I could attack the albion within its little bubble.
[11:23:47] <lynxlynxlynx> ohh, i didn't try that
[11:24:06] <lynxlynxlynx> http://lynxlynx.info/bugs/albion.flying.jpg <-- la
[11:24:32] <fuzzie> heh :)
[11:24:54] <CIA-18> gemrb: 03lynxlupodian * r6515 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: made the critical hit screen shake more noticeable
[11:25:08] <fuzzie> Oh, and weapons breaking is driving me mad.
[11:25:33] <lynxlynxlynx> you have to roll a critical miss twice and the item must be breakable
[11:25:41] <fuzzie> Especially since I don't seem to get anything in the UI to tell me that it broke.
[11:25:55] <fuzzie> But playing through the first dungeon, I ended up with 4 broken weapons.
[11:26:21] <fuzzie> And I don't remember ever having seen a broken weapon in original SoA, not even when playing the whole way through.
[11:26:37] <fuzzie> But I don't know where to even start looking into that.
[11:26:57] <lynxlynxlynx> i don't remember either, so maybe we should just disable it
[11:29:27] <lynxlynxlynx> i can hurt the cambion through the bubble too :/
[11:29:35] <lynxlynxlynx> at least his minhp item works
[11:29:54] <lynxlynxlynx> he is restored to full health on release too
[11:29:56] <fuzzie> The HP is reset when the bubble is removed
[11:30:14] <fuzzie> so maybe we're just missing "don't show damage" effects/scripting or similar.
[11:30:32] <lynxlynxlynx> we do damage, not just say so
[11:30:46] <lynxlynxlynx> none of his protection opcodes prevent that
[11:31:41] <lynxlynxlynx> to me it seems more likely we have a buggy effect implementation
[11:31:51] <-- Gekz has left IRC (Read error: 104 (Connection reset by peer))
[11:32:11] <-- barraAway has left IRC ("Verlassend")
[11:33:00] --> Gekz has joined #GemRB
[11:38:20] <lynxlynxlynx> hmm, none of the Protection:Opcode effects he has are against weapons
[11:42:07] <lynxlynxlynx> maybe the Protection:Animation pair did it in the original
[11:43:09] <lynxlynxlynx> http://pastebin.ca/1464754 <-- these are the perks
[12:45:29] --> barra_library has joined #gemrb
[13:15:09] --> tasos86 has joined #gemrb
[13:39:47] <-- barra_library has left IRC ("Verlassend")
[14:13:51] --> barra_library has joined #gemrb
[14:27:44] <-- tasos86 has left IRC ("Leaving")
[14:33:46] --- barra_library is now known as barraAway
[14:49:48] <fuzzie> wow, gemrb makes a lot of noise when i load this savegame :)
[14:53:07] <fuzzie> Ah, I suppose it's everyone dying again at load :/
[14:54:12] <fuzzie> would be nice if i could identify with a scroll, too
[14:54:21] <lynxlynxlynx> you can't anymore?
[14:54:40] <lynxlynxlynx> did you digitise your problem list yet?
[14:55:07] <fuzzie> Well, this all belongs on the todo list, I guess.
[14:55:22] <lynxlynxlynx> yep
[14:58:12] <lynxlynxlynx> i can identify via the glasses of identification
[14:58:30] <lynxlynxlynx> also the spell
[14:58:36] <fuzzie> I can identify fine through a spell. No such luck with a scroll, though.
[14:58:47] <lynxlynxlynx> do you have the name handy?
[14:58:51] <fuzzie> My memorised spells are also not coming back after a rest, which is slightly upsetting.
[14:59:15] <lynxlynxlynx> that definitely works for me
[14:59:24] <fuzzie> From a new gemrb game?
[14:59:41] <lynxlynxlynx> yes
[14:59:48] <fuzzie> I'm not sure how to work out which id is which. 'misc4g', maybe?
[14:59:49] <lynxlynxlynx> i'll go retry with a wild mage
[14:59:55] <fuzzie> Thsi is just Imoen.
[15:00:01] <fuzzie> Who didn't get her identify spell back.
[15:00:07] <lynxlynxlynx> no, it's probably spwi1xx
[15:00:17] <fuzzie> Oh, you mean, the spell name. Soirry.
[15:00:22] <fuzzie> it's spwi110.
[15:00:46] <lynxlynxlynx> nalia rememos it nicely
[15:00:52] <lynxlynxlynx> nothing special about it
[15:01:49] <fuzzie> Could be a corruption bug or something.
[15:02:04] <fuzzie> I'm not sure if anyone really plays through the game much..
[15:02:17] <fuzzie> A lot of these bugs seem to only pop up after a while.
[15:04:02] <fuzzie> Party AI is also buggy as heck, but oh well :)
[15:04:39] <lynxlynxlynx> i can identify using a scroll too
[15:04:45] <lynxlynxlynx> but this was from an original save
[15:07:39] <fuzzie> Is the code in the GUI?
[15:08:23] <lynxlynxlynx> much of it
[15:08:25] <lynxlynxlynx> guiinv
[15:09:40] <fuzzie> so, it checks via HasSpecialItem..
[15:10:27] <fuzzie> which reads from 'itemspec.2da', which has SCRL75 and MISC3P.
[15:10:35] <lynxlynxlynx> yep
[15:10:52] <lynxlynxlynx> you found anothe identifying scroll?
[15:10:54] <fuzzie> I do have a scrl75.
[15:13:19] <fuzzie> It works fine for you with that?
[15:14:55] <lynxlynxlynx> yep
[15:15:24] <fuzzie> well, HasSpecialItem certainly returns false..
[15:18:20] <fuzzie> so, HasSpecialItem finds the scroll fine
[15:18:34] <fuzzie> and then returns 'useup', which is, well, false.
[15:20:56] <fuzzie> I guess the gemrb drop code is failing to initialise Usages[0] for scrolls, at a guess, but I don't know how the code works.
[15:22:57] <lynxlynxlynx> i was testing with hacked-in scrolls, so yeah, that's possible
[15:23:24] <lynxlynxlynx> the glasses of id were already present though, but i had to sleep
[15:23:37] <lynxlynxlynx> i don't know if they really had no charges anymore
[15:23:42] <fuzzie> but spawned from within gemrb, or in an original save?
[15:24:40] <fuzzie> Almost all of my scrolls have usage 0.
[15:25:01] <fuzzie> The exception is 'scrl1s', which is correct.
[15:26:07] <fuzzie> That one probably came out of a chest..
[15:26:55] <lynxlynxlynx> scroll spawned in gemrb
[15:33:36] <fuzzie> the cre has RNDTRE02
[15:34:18] <lynxlynxlynx> random treasure, too bad
[15:34:35] <fuzzie> it's good, that's presumably where the bug us :)
[15:34:36] <fuzzie> is
[15:35:15] <lynxlynxlynx> but it will be harder to reproduce and check
[15:35:26] <fuzzie> but the charges of RNDTRE02 are obviously 0
[15:36:59] <lynxlynxlynx> great
[15:38:05] <fuzzie> I have no real idea what ResolveRandomItem tries to do.
[15:38:56] <lynxlynxlynx> i'd guess it does a roll and then a lookup in the random loot tables?
[15:39:16] <fuzzie> oh, yes
[15:39:19] <fuzzie> and it doesn't set Usages
[15:39:26] <fuzzie> but i mean in the sense that it does a confusing loop
[15:40:08] <fuzzie> I guess the real problem here is that all it does is read the ItemResRef, and it only sets Usages if it's gold.
[15:40:38] --- barraAway is now known as barra_library
[15:41:36] <lynxlynxlynx> most items should be charged
[15:41:53] <lynxlynxlynx> i'm reading the rndscrl.2da description and it is a bit confusing
[15:43:03] <fuzzie> I think it's just a number for gold, or a resref for an item.
[15:44:10] <lynxlynxlynx> (for stackable items, a *# suffix, that is, an asterisk followed by a number, can be added to the item ResRef to specify the amount of that item to create, e.g. BOLT04*4 generates a single stack of 4 BOLT04 items
[15:44:18] <fuzzie> oh fun.
[15:44:24] <lynxlynxlynx> #, that is, a number, refers to a gold value (e.g. #=016 replaces RNDSCRx#.ITM with a stack of 16 gold).
[15:44:38] <lynxlynxlynx> http://iesdp.gibberlings3.net/files/2da/2da_tob/rndscrol.htm
[15:45:36] <fuzzie> It currently handles gold okay, by just checking if it's a number or not.
[15:45:54] <fuzzie> It also extracts the '*4' bit, but then doesn't use it.
[15:46:47] <lynxlynxlynx> usages0 should be at least 1
[15:47:44] <lynxlynxlynx> i guess this is also why arrows from goblins don't show the stack amount when you loot them (but iirc they are properly stacked)
[15:48:19] <fuzzie> I think the arrows are usually already in the CRE inventory.
[15:48:35] <fuzzie> Should Usages[0] always be 1, even for swords etc?
[15:49:21] <lynxlynxlynx> gold doesn't show the amount on loot
[15:49:23] <fuzzie> Huh, DLTCEP says the goblin bows have Usages[0] == 20.
[15:49:57] <fuzzie> I guess the original game mixes that up with the arrows somehow.
[15:50:13] <fuzzie> The normal weapons all have Usages[0] == 0, though, so just setting Usages[0] seems wrong.
[15:50:21] <lynxlynxlynx> i get 4 arrow items on a dead goblin archer
[15:50:37] <fuzzie> yes, they have arrow items in each quiver slot
[15:50:51] <fuzzie> all 4
[15:50:53] <lynxlynxlynx> when loaded to the inventory, each has 20 uses or less (i guess one managed to fire an arrow before i got him)
[15:50:57] <fuzzie> i don't ask
[15:51:20] <fuzzie> and all of them have 20 uses at start, for the basic ICGOB ones in the dungeon, at least
[15:51:43] <fuzzie> So I'm sort of hoping that that is working fine.
[15:52:07] <lynxlynxlynx> i don't think you got 80 arrows per kill in the original
[15:52:47] <fuzzie> I killed one in the original to test and I got .. I can't remember if it was 3 or 4 stacks.
[15:53:10] <lynxlynxlynx> interesting
[15:53:25] <lynxlynxlynx> it makes plenty sense for an archer to be stocked though
[15:54:02] <lynxlynxlynx> gold is dropped with more than 1 coin, but we just don't display the ammount
[15:54:16] <lynxlynxlynx> amount
[15:54:53] <fuzzie> I think it's just the random items broken. I'll take a look after dinner, if you have no clues.
[15:55:30] <lynxlynxlynx> i'm investigating another invalid animation
[16:29:12] --> Avenger has joined #gemrb
[16:29:21] --- ChanServ gives channel operator status to Avenger
[16:29:33] <Avenger> hello
[16:29:45] <fuzzie> hi
[16:32:14] <fuzzie> oh, another bug from last night: the lesser clay golems didn't activate when the trigger went off.
[16:32:34] <Avenger> they have the ai slowndown disable flag
[16:32:36] <fuzzie> maybe that is IF_IDLE or something, i don't understand it.
[16:32:41] <Avenger> they shouldn't go idle
[16:33:09] <fuzzie> but they didn't activate until I moved the viewport to them.
[16:33:10] <Avenger> OffscreenAIModifier
[16:33:21] <Avenger> yes, probably that flag is buggy
[16:33:25] <Avenger> could you do one thing?
[16:33:25] <fuzzie> ok.
[16:33:43] <fuzzie> well, i can try :) i am a bit busy today
[16:33:44] <Avenger> go to them first, so make sure they are unidle at least once after reload
[16:33:57] <Avenger> then try to activate them with the trap
[16:34:27] <Avenger> they should never go idle, but it could be that the effects are not initialised
[16:35:19] <Avenger> there is code for this, in actor->finding an excuse why we don't hybernate the actor
[16:36:32] <lynxlynxlynx> Avenger: i found another bad avatars entry, but i'm stuck
[16:36:40] <lynxlynxlynx> [CharAnimations]: Couldn't load animation: mettg2e, cycle 23
[16:36:45] <fuzzie> Avenger: no, that doesn't work
[16:37:01] <lynxlynxlynx> it has type 2 - four files, which is correct - there are 4 files, BUT there are only 16 frames
[16:37:08] <lynxlynxlynx> *cycles
[16:37:14] <fuzzie> i mean, going to them first doesn't work, they still only activate once on-screen
[16:37:16] <Avenger> ok, then it is another four files type
[16:37:29] <fuzzie> but i'll work it out, it wasn't aimed at you particularly :)
[16:37:38] <fuzzie> i found all sorts of bugs last night, i have another huge list
[16:37:48] <fuzzie> and i reproduced the UI breaking on enemy death bug
[16:38:18] <Avenger> i keep working on the projectiles :)
[16:38:36] <Avenger> it is easy work, but quite visible
[16:38:43] <fuzzie> well, it is easy for you
[16:39:03] <fuzzie> i think the rest of us would find it hard to even start :)
[16:39:22] <Avenger> hehe, but i leave the tough parts for you
[16:40:10] <lynxlynxlynx> btw, prismatic spray shows, but there's not enough spread (it's like a traveling wave instead of being more cone-like)
[16:40:15] <fuzzie> I think none of my bugs are too difficult for me..
[16:40:21] <Avenger> i loved coordinate geometry when i was in school
[16:40:47] <Avenger> yes lynx, i know, i will try to fluff it up later
[16:40:58] <lynxlynxlynx> ok
[16:40:58] <Avenger> tried color spray too?
[16:41:10] <lynxlynxlynx> no, didn't have it in the book
[16:41:21] <lynxlynxlynx> i'll try to add this new ani type
[16:41:22] <Avenger> they are pretty nice, but instead of growing in numbers, they die off slowly
[16:41:31] <fuzzie> The only bug on my list marked "too hard, bug Avenger" are the PS:T stances, I think.
[16:41:43] <Avenger> hehe fuzzie, that's ok
[16:41:54] <Avenger> i don't think it is particularly hard, luckily
[16:42:05] <fuzzie> But I spent so much time today on silly things, like working out why Identify scrolls don't work.
[16:42:13] <Avenger> huh
[16:42:18] <Avenger> i used them at one point!
[16:42:30] <fuzzie> yes, but the random item generator never sets Charges[0] on items
[16:42:40] <Avenger> oh, hehe
[16:42:42] <fuzzie> so all of *my* identify scrolls, which I got from looting, didn't work :)
[16:43:32] <Avenger> i think expended items should work even when charges are 0
[16:43:55] <Avenger> i think they do that in the original game
[16:44:07] <fuzzie> well, i'm not sure
[16:44:15] <fuzzie> you also can't stack those scrolls, for example, which you should be able to
[16:44:23] <Avenger> heh
[16:44:29] <fuzzie> so i don't know where to fix it.
[16:45:04] <Avenger> i read somewhere that pst bandages don't stack
[16:45:38] <Avenger> the identify scroll has a stack number of 5
[16:46:20] <Avenger> wait, if it is random item, and its charge count is 0, it might cause the stacking problem
[16:48:56] <Avenger> check Interface.cpp" line 4395
[16:49:07] <Avenger> if i move that Usages[0]=.... below the bracket
[16:49:21] <Avenger> i believe that would work
[16:55:10] <fuzzie> well, i think a bit more complicated, but that was my plan
[16:55:36] <fuzzie> RESREF*4 needs to work also
[16:56:16] <fuzzie> but the problem is that we then get everything with Usages[0] being 1
[16:57:38] <Avenger> you mean being 0
[16:57:56] <-- barra_library has left IRC ("Verlassend")
[16:57:58] <Avenger> ahh, ok, i understand you
[16:58:00] <Avenger> i fixed that too
[16:58:06] <Avenger> if(j<1) j=1
[16:58:37] <lynxlynxlynx> her concern is that normal items don't have usage counts
[16:58:38] <Avenger> so it will be roll(4,1,0)
[16:58:42] <Avenger> that is 4
[16:58:49] <Avenger> they will get it
[16:59:18] <Avenger> normal items, or random items
[16:59:24] <CIA-18> gemrb: 03avenger_teambg * r6516 10/gemrb/trunk/gemrb/plugins/Core/Interface.cpp: fixed random item counts
[16:59:27] <Avenger> because this covers only random items
[16:59:28] <lynxlynxlynx> random items like swords
[16:59:44] <Avenger> items from the treasure tables
[17:00:21] <lynxlynxlynx> yes
[17:00:31] <Avenger> ok, i hope this works
[17:00:49] <Avenger> this will fix one reported bug, i think
[17:01:38] <Avenger> the pst bandages don't stack one, i hope
[17:01:40] <fuzzie> it is what i was looking at, anyway
[17:01:58] <fuzzie> i think the pst bandages bug is a not a bug
[17:02:05] <fuzzie> but i never checked in original pst
[17:02:26] <lynxlynxlynx> i think they stacked there
[17:02:39] <Avenger> bandages got a maximum stack of 99
[17:02:47] <Avenger> so they should
[17:02:55] <fuzzie> they do stack in gemrb too, though
[17:02:58] <fuzzie> they just don't auto-stack
[17:03:24] <Avenger> if nothing autostacks in pst, then it could be some guiscrript problem
[17:03:48] <fuzzie> the pst guiscript is a mess, so probably :)
[17:04:05] <Avenger> well, i hope i fixed at least your id scrolls
[17:04:20] <Avenger> i reboot into windows
[17:04:22] <Avenger> brb
[17:04:22] <-- Avenger has left IRC ("bye!")
[17:32:33] --> Avenger has joined #gemrb
[17:32:42] --- ChanServ gives channel operator status to Avenger
[17:32:46] <Avenger> re
[17:41:27] <lynxlynxlynx> bleh, this animation stuff is annoying
[17:46:55] <lynxlynxlynx> this new type has 16 cycles vs the 24 and 75 frames vs the 90 of FOUR_FILES; 2*5 of the cycles are the same and with no frames, 2 (two kinds of attacks) * 3 (for each direction) have frames
[18:00:53] <Avenger> the frame count is not really important
[18:01:06] <Avenger> 16 cycles is interesting, though
[18:01:15] <Avenger> it has no E files then?
[18:01:20] <lynxlynxlynx> it has
[18:01:49] <Avenger> which animation is this, again?
[18:01:51] <lynxlynxlynx> g{1,2}{,e}
[18:01:53] <lynxlynxlynx> mett
[18:01:55] --> barra_library has joined #gemrb
[18:02:54] --- barra_library is now known as barraAway
[18:02:57] <Avenger> mettg1 has 48 cycles
[18:03:47] <Avenger> mettg2 has 16
[18:04:36] <Avenger> hmm yes, i saw this type of animation
[18:05:34] <Avenger> 5 animations in G1, 3 more in the G1E, that means 8 directions
[18:05:48] <Avenger> so it has 8 cycles per stance
[18:08:53] <Avenger> it has only 2 attack types in g2, the first stance is for all melee attack, the second is for ranged (and we can use it for casting)
[18:11:46] <Avenger> it is a reduced FOUR_FILES type
[18:39:23] <fuzzie> ok, first stupid bug in bg2: the Mephit Portals are too far away to be attacked
[18:39:53] <fuzzie> not by everyone, but by most. maybe another pathfinding bug.
[18:40:19] <lynxlynxlynx> ranged weapons ftw :)
[18:40:39] <fuzzie> not a very realistic strategy :)
[18:41:20] <fuzzie> very pretty projectile from Radiant Memphit :)
[18:41:21] <lynxlynxlynx> i guess only the reach < 3 weapons don't get it
[18:41:44] <lynxlynxlynx> so 2h weapons are good too
[18:41:50] <fuzzie> it depended on where the actors were
[18:42:46] <fuzzie> ok, that attack-before-heal thing is really annoying
[18:42:54] <fuzzie> 'Amy did 11 damage to Amy', 'Amy - Healed'
[18:43:38] <lynxlynxlynx> does it heal or damage?
[18:44:03] <fuzzie> it is a weapon attack, followed by the spell cast
[18:44:07] <-- Gekz has left IRC (Read error: 104 (Connection reset by peer))
[18:44:14] <lynxlynxlynx> oh
[18:44:23] <fuzzie> also the Khalid trigger is pretty unreliable, must look at that
[18:45:27] <fuzzie> and one of us have broken the find traps thing again, i think.
[18:47:11] <fuzzie> i went into a new area, picked up a scroll from a chest, it has Usages[0].
[18:47:52] <fuzzie> and that is how it is in the ARE file.
[18:47:54] --> Gekz has joined #GemRB
[18:47:58] <fuzzie> i mean, Usages[0] is 0.
[18:48:51] <fuzzie> and the Escaped Clone attacks me. while being neutral. very nice.
[18:49:19] <fuzzie> and then, segfault!
[18:53:39] <fuzzie> because the spellbook is corrupt, i guess
[18:56:30] <Avenger> yes fuzzie, i said usages=0 should be ok for expendable items
[18:56:55] <fuzzie> Avenger: but then the stacking and usage and etc code needs fixing to cope?
[18:56:57] <Avenger> maybe it could be fixed when loading items
[18:57:29] <fuzzie> hm, okay.
[18:57:53] <fuzzie> this Spellbook code is really strange
[19:01:48] <fuzzie> okay, so, Spellbook.cpp:162 is int sections[]={3,0,1,2,2};
[19:02:12] <fuzzie> 3 is 'ITEM', but 3 is >=NUM_BOOK_TYPES, so is invalid.
[19:04:17] <fuzzie> i mean, that is not the cause of my bug, but that is surely not correct!
[19:04:50] --> barra_away has joined #gemrb
[19:06:49] <Avenger> there shouldn't be spells with code 3
[19:06:50] <fuzzie> the cause of the segfault is a HaveSpell(0) trigger in CLONE1.BCS
[19:07:14] <fuzzie> but surely the Spellbook should be checking for sanity :)
[19:07:34] <Avenger> yes
[19:07:42] <Avenger> and i'm sure i do it
[19:07:57] <Avenger> i wonder how it sneaks in
[19:08:10] <fuzzie> the code just does 'type = sections[type];', after checking type is in-range
[19:08:17] <fuzzie> and if type is 0, then type ends up as 3, and this is not checked further
[19:08:38] <Avenger> oh i see
[19:08:49] <Avenger> havespell doesn't check type against NUM_BOOK_TYPS
[19:08:55] <fuzzie> all three users of sections[] do that
[19:09:35] <Avenger> bool Spellbook::HaveSpell(int spellid, ieDword flags) doesn't
[19:09:45] <fuzzie> i mean, all of them do it without checking
[19:09:50] <fuzzie> will you fix, or should I?
[19:10:12] <Avenger> i'm in windows, i can fix it later if you don't want
[19:10:24] <fuzzie> well, i can't play any more with this bug, so i will fix :)
[19:10:58] <Avenger> havespell(0) should mean something?
[19:11:07] <Avenger> or is it a buggy script
[19:11:14] <fuzzie> well, it is not mentioned in IESDP, i think it is probably just a buggy script
[19:11:40] <Avenger> it could mean 'HaveAnySpell' but there is trigger for that, i think
[19:12:03] <fuzzie> oh, hm.
[19:12:06] <fuzzie> maybe it means HaveAnySpell
[19:12:16] <fuzzie> the action is 'Spell(NearestEnemyOf(Myself),0)'
[19:12:41] <fuzzie> but maybe not, there is an identical block below it with a different spell there, so perhaps they just disabled this by changing it all to 0
[19:13:02] <Avenger> huh, nearestenemy?
[19:13:14] <Avenger> so there is an object param?
[19:13:23] <fuzzie> that is the action, not the trigger :)
[19:13:25] <-- Gekz has left IRC (Read error: 104 (Connection reset by peer))
[19:13:46] <Avenger> oh it is an action
[19:13:55] <Avenger> ook, then it cannot be haveanyspell :)
[19:14:02] <fuzzie> it is "IF HaveSpell(0) THENN Spell(NearestEnemyOf(Myself),0)"
[19:14:20] <Avenger> that is a buggy script
[19:14:25] <fuzzie> and after, "IF HaveSpell(0) THENN Spell(Myself,WIZARD_MIRROR_IMAGE)"
[19:14:42] <fuzzie> so i think they probably just meant to disable the triggers
[19:14:56] <Avenger> screwed up buggy script, they missed some ids value at compile time
[19:15:00] <Avenger> from spell.ids
[19:15:08] <fuzzie> ah :)
[19:15:16] <Avenger> can you tell me the script resref?
[19:15:21] <fuzzie> CLONE1
[19:16:28] <Avenger> http://pastebin.com/d2c13d907
[19:16:36] --> Gekz has joined #GemRB
[19:16:52] <fuzzie> that is presumably fixpacked :)
[19:17:08] <CIA-18> gemrb: 03fuzzie * r6517 10/gemrb/trunk/gemrb/plugins/Core/Spellbook.cpp: Spellbook: don't crash on zero spell ids
[19:17:21] <Avenger> mine stil has a dud block
[19:17:34] <fuzzie> I am using plain ToB because the fixpack fixes too many things.
[19:17:37] <Avenger> but the second one with the mirror image is fixed
[19:17:52] <Avenger> yes, we should train gemrb on both :)
[19:18:10] <fuzzie> i think the fixpack generally only makes things better so it is not such a worry :)
[19:21:25] <-- barraAway has left IRC (Read error: 110 (Connection timed out))
[19:29:21] <fuzzie> This assassin/clone scene is not happy at all, strange.
[19:31:11] <fuzzie> I think this 'target->GetDialog(GD_FEEDBACK)' is maybe breaking it
[19:32:19] <Avenger> hmm i forgot what feedback is supposed to do
[19:33:33] <Avenger> hmm it is checking target busy
[19:34:04] <fuzzie> i mean, i think it should be scr not target :)
[19:34:15] <fuzzie> only in this circumstance, though
[19:34:33] <Avenger> i see
[19:34:45] <fuzzie> this is BeginDialog between two non-party actors, with BD_SOURCE set.
[19:35:27] <fuzzie> then the dialog comes from the Sender, which is 'scr' here.
[19:35:58] <fuzzie> but maybe I am not right, trying to check..
[19:37:42] <Avenger> 2 non-party actors cannot have dialogue normally
[19:38:35] <lynxlynxlynx> you, imoen, jaheira, minsc, yoshimo = 5 max
[19:38:50] <lynxlynxlynx> maybe they hack one into your party for the duration
[19:39:17] <fuzzie> well, maybe i'm just misinterpreting it, it's difficult
[19:39:35] <fuzzie> aha
[19:39:57] <fuzzie> our Detect() is not marking LastSeen
[19:40:01] <fuzzie> there is a comment there about that.
[19:40:16] <Avenger> i see
[19:40:27] <Avenger> that is a simple bug then
[19:40:40] <fuzzie> well, it is not quite so simple because Detect() is also not working
[19:41:32] <fuzzie> I'll keep poking at it.
[20:22:57] <Avenger> huh, bg1 style cone of cold and fire are giving me a sweat
[20:23:35] <Avenger> i skip them for now
[20:28:54] <fuzzie> hm
[20:28:58] <fuzzie> Continue() does not work across scripts
[20:29:52] <fuzzie> is that a bug?
[20:31:03] <fuzzie> actually, none of this works across scripts
[20:31:54] <fuzzie> i am pretty sure that is a bug.
[20:32:08] <fuzzie> if you have NoAction() in one script, the next script down the list will happily execute everything.
[20:32:21] <fuzzie> Avenger: i would like to know if this is deliberate before I fix it :)
[20:32:53] <Avenger> you mean, it will continue execution?
[20:33:02] <fuzzie> yes
[20:33:05] <fuzzie> scripts are executed independently
[20:33:14] <Avenger> i think that's fine
[20:33:23] <fuzzie> it seems to break the scripts i'm looking at
[20:33:23] <Avenger> but this is documented somewhere
[20:33:29] <fuzzie> for example, WAITPC is meant to wait for the PC
[20:33:43] <fuzzie> but if the other scripts get executed anyway, it does nothing at all! and is buggy.
[20:34:22] <fuzzie> but i don't see where it is documented, so i only see the scripts.
[20:34:44] <Avenger> i see
[20:35:25] <Avenger> well, it needs to be tested then
[20:35:39] <Avenger> i think it is relatively easy to stop execution of scripts
[20:35:49] <Avenger> but i intentionally execute them independently
[20:35:51] <fuzzie> well, I tried in SoA and WAITPC seems to work fine, blocking all execution
[20:36:16] <Avenger> in all script slots too?
[20:36:22] <fuzzie> i didn't check anything except override.
[20:36:53] <Avenger> i was told they are independent, and i vaguely remember reading it somewhere
[20:38:36] <fuzzie> yes - i fixed it to be non-independent, but i don't want to commit without being sure
[20:39:18] <fuzzie> there's some comments from devSin which seem to imply that they are dependent
[20:39:28] <Avenger> where?
[20:39:42] <fuzzie> "the game starts with the first slot, and if it doesn't find anything to do there, it'll move on to the next, and so on"
[20:39:58] <Avenger> yes, that's pretty clear
[20:40:32] <fuzzie> i'll test it some more first
[20:40:39] <Avenger> before that: They don't run concurrently :)
[20:50:09] <Avenger> maybe mention waitpc as a reason to disable concurrency, so it won't fall victim to another bugfix :)
[20:51:41] <fuzzie> it fixes a few script bugs i found, i am very happy
[20:55:14] <Avenger> i'm pretty sure it fixes a lot of problems if it is 100% correct now
[20:55:23] <Avenger> this is a big thing
[20:55:23] <CIA-18> gemrb: 03fuzzie * r6518 10/gemrb/trunk/gemrb/plugins/Core/ (ActorBlock.cpp GameScript.cpp GameScript.h): make script execution stop once something executed a block, and fix cross-script Continue()
[20:57:40] <lynxlynxlynx> http://pastebin.ca/1465333 <-- something like this, but i have to figure out the right values, it comes up dead or sleeping :/
[20:59:23] <lynxlynxlynx> it hits the IE_ANI_WALK case, which means Cycle = 5 of g1 (which *is*) walking
[21:00:06] <lynxlynxlynx> so i'm confused
[21:03:36] <fuzzie> it doesn't work in any orientation?
[21:04:12] <fuzzie> you can reorient by pausing and then trying to walk in different directions
[21:04:28] <fuzzie> also if you commit that, please make the printf before the abort unique :)
[21:04:48] <lynxlynxlynx> first i'd need to polymorph or be able to select the little monster
[21:04:50] <fuzzie> but i don't see any obvious mistakes
[21:05:18] <fuzzie> i just wonder if perhaps you're starting with an east orientation and that is failing
[21:06:00] <lynxlynxlynx> why would it fail?
[21:06:01] <fuzzie> this is still METT?
[21:06:04] <lynxlynxlynx> yes
[21:06:17] <lynxlynxlynx> i'll go check if they aren't mirrored like they're supposed to be
[21:06:47] <lynxlynxlynx> meh, that's it
[21:08:30] <lynxlynxlynx> i guess the Orient will take care of the different offsets
[21:08:45] <Avenger> cycle count is 8 per stance
[21:08:52] <Avenger> just like in LR
[21:09:04] <Avenger> you just have to remove the 24+... case
[21:10:44] <fuzzie> that is what lynx's patch does, i think, but it seems to end up with the wrong animations
[21:10:59] <fuzzie> but it sounds like lynx worked it out
[21:11:16] <lynxlynxlynx> i shouldn't have been looking at the east animations
[21:12:00] <lynxlynxlynx> ger> you just have to remove the 24+... case <-- I don't know exactly what you mean by this though
[21:12:28] <lynxlynxlynx> they have to go, since now the Cycle would be too high, but i think the animations do have those types in
[21:13:56] <lynxlynxlynx> oh, forgot the g1 isn't as small as g2
[21:14:29] <lynxlynxlynx> let's see if this works
[21:15:48] <Avenger> hmm i wanted to say 16+ :)
[21:16:02] <Avenger> case IE_ANI_ATTACK_JAB:
[21:16:03] <lynxlynxlynx> in the g2 case? that's already done ;)
[21:16:04] <Avenger> strcat( ResRef, "g2" );
[21:16:06] <Avenger> strcpy( EquipData->Suffix, "g2" );
[21:16:07] <Avenger> Cycle = 16 + Orient / 2;
[21:16:09] <Avenger> break;
[21:16:10] <Avenger> this one
[21:16:36] <Avenger> i just don't quite see why do you use 13+ and 5+
[21:16:44] <lynxlynxlynx> i don't anymore
[21:16:47] <Avenger> fine
[21:16:52] <lynxlynxlynx> it's more like LR now
[21:17:03] <Avenger> yes, it should be almost like LR
[21:17:04] <fuzzie> it is so easy to get confused with those cycle counts and the east/west split and etc
[21:17:12] <Avenger> yeah, i agree
[21:17:55] <lynxlynxlynx> well, he's still laid down :s
[21:17:58] <Avenger> this part is quite annoying in the IE, the IWD animations are simpler
[21:19:20] <Avenger> g1 32+ is the dying/sleeping anim
[21:19:33] <lynxlynxlynx> dying
[21:19:36] <fuzzie> gemrb does not automatically switch quivers when one is empty, known bug?
[21:19:40] <Avenger> 40 is the twitch anim
[21:20:25] <Avenger> fuzzie i think i saw some comment about it in the source
[21:21:05] <lynxlynxlynx> 8 and 16 look the same
[21:22:21] <Avenger> one is the combat ready stance
[21:22:30] <Avenger> the one where it is moving more
[21:23:17] <lynxlynxlynx> maybe one is just a bit slower, but it is hard to see
[21:28:19] <lynxlynxlynx> ah, works fine :)
[21:30:06] <fuzzie> gosh, the wand room in bg2 shows some flaws in gemrb's traps
[21:30:44] <fuzzie> they all just die at once as the TRAP_RESET just keeps firing huge amounts of damage at them
[21:30:55] <CIA-18> gemrb: 03lynxlupodian * r6519 10/gemrb/trunk/gemrb/ (3 files in 2 dirs): added IE_ANI_FOUR_FILES_2 to handle ettercap animations
[21:32:36] <lynxlynxlynx> does anyone else not like the Id keywords thing?
[21:32:57] <fuzzie> someone told me there was an svn option to stop it from updating them
[21:32:59] <lynxlynxlynx> svn changes the files and make detects that and wants to rebuilt them
[21:33:02] <fuzzie> but then i gave up and used git for everything
[21:33:38] <lynxlynxlynx> yes, it can be turned off, but i don't think know if it can be achieved on a per-user level
[21:33:57] <fuzzie> I mean, in your local svn config.
[21:34:15] <lynxlynxlynx> and if everybody uses it, it would be wierd if one person didn't
[21:34:40] <fuzzie> Well, the actual copy stored on the server is always just '$Id$' anyway.
[21:35:00] <lynxlynxlynx> really? oh good then
[21:35:16] <lynxlynxlynx> i'll go look it up now then, i think it's one of the externals
[21:35:20] <fuzzie> but I can't actually find the option
[21:36:42] <fuzzie> since propset changes server-side..
[21:37:02] <fuzzie> All it has done is caused me pain when trying to merge patches, anyway.
[21:37:14] <CIA-18> gemrb: 03lynxlupodian * r6520 10/gemrb/trunk/gemrb/plugins/Core/CharAnimations.cpp: removed a redundant block from CharAnimations::AddLRSuffix
[21:40:09] <lynxlynxlynx> it is in keywords
[21:40:14] <lynxlynxlynx> (doh)
[21:41:57] <fuzzie> maybe changing it locally causes strange issues, the internet is very confusing about it
[21:42:49] <fuzzie> Why are they there, just a relic from cvs2svn or did people actually like them?
[21:45:25] <lynxlynxlynx> i think it is pointless now that scms are efficient
[21:45:49] <lynxlynxlynx> you want to find the last committer /date /rev /x you look at the log
[21:46:36] <fuzzie> I only ever want to know line-by-line :)
[21:46:37] <lynxlynxlynx> i can imagine it being useful for svn though, it is so slow for viewing logs
[21:47:01] <lynxlynxlynx> but yeah, the last commit might just have changed some whitespace
[21:47:39] <-- Avenger has left IRC ("ChatZilla 0.9.85 [Firefox 3.0.11/2009060215]")
[21:48:20] <lynxlynxlynx> the book reads like this is all local, so i'll try to disable it
[21:53:32] <lynxlynxlynx> bleh, it's all over my diff
[21:54:19] <lynxlynxlynx> so unless we all agree on removing it completely, there's no sense in doing it
[22:00:24] <CIA-18> gemrb: 03avenger_teambg * r6521 10/gemrb/trunk/gemrb/ (7 files in 3 dirs): implemented falling projectile bits
[22:04:45] <lynxlynxlynx> there's a cow missile spell? :)
[22:06:52] <fuzzie> our bg2 strings.2da has the same strings for NOPICK and CANTPICK
[22:07:13] <fuzzie> specifically the "does not have a conventional lock" one
[22:08:11] <fuzzie> which is fine for NOPICK but rather confusing when used for CANTPICK
[22:09:27] <lynxlynxlynx> should we have both at all?
[22:09:32] --- barra_away is now known as barra_library
[22:10:01] <fuzzie> well, CANTPICK is displayed when you fail to pick the lock, so it needs to be there, i think
[22:10:19] <fuzzie> maybe needs a better name, but i'm not sure what the real string is :)
[22:11:40] <lynxlynxlynx> what about "you failed to pick the lock"?
[22:12:53] <lynxlynxlynx> Lock Pick Failed - 16518
[22:13:15] <lynxlynxlynx> LOCKPICK_FAILED hah
[22:13:36] <lynxlynxlynx> it seems to me there's one too many
[22:14:23] <lynxlynxlynx> NOPICK and CANTPICK resolve to the same string
[22:14:37] <fuzzie> both the door and container ones, too
[22:14:39] <lynxlynxlynx> we don't use LOCKPICK_FAILED anywhere yet
[22:16:45] <fuzzie> Imoen can't unlock the chest in Irenicus's room with the wand key, that is probably not right anyway
[22:16:49] <fuzzie> Yoshimo can
[22:18:58] <fuzzie> we should also really truly not be showing the names of unidentified items when looting :)
[22:19:13] <fuzzie> and i seem to remember unidentified items don't work until identified, but this one is happily changing my stats
[22:19:15] <lynxlynxlynx> they also lack the blue overlay
[22:19:30] <lynxlynxlynx> yeah, that too
[22:22:41] <fuzzie> 7: 0x9c: Overlay:ShieldGlobe (0, 0) S:spwi311
[22:22:47] <fuzzie> ^- this should probably be removed at death
[22:22:50] <fuzzie> 8: 0x08: Color:SetRGB (-1023376384, 5) S:spwi311
[22:22:54] <fuzzie> ^- this does not look so sane :-)
[22:23:18] <lynxlynxlynx> yep
[22:23:40] <lynxlynxlynx> it's the same as the irenicus turning one
[22:23:44] <lynxlynxlynx> good night
[22:23:47] <fuzzie> ninight
[22:23:56] <-- lynxlynxlynx has left IRC (Remote closed the connection)
[22:26:46] <fuzzie> Ulvaryl didn't seem to manage the cloud thing at death.
[22:35:03] <fuzzie> Okay, victory, I escaped the dungeon using gemrb, without cheating.
[22:40:07] <fuzzie> No showstopper bugs!
[22:47:33] <fuzzie> Traps need some serious work though.
[22:51:35] --- barra_library is now known as barraAway