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

Archive Today Yesterday Tomorrow
GemRB homepage


[03:45:46] --> |Cable| has joined #gemrb
[08:27:39] <-- |Cable| has left IRC ("Leaving")
[08:32:31] --> barra_library has joined #gemrb
[08:37:28] --- barra_library is now known as barraAway
[12:16:21] <fuzzie> ok, what is IE_DONOTJUMP?
[12:17:32] <fuzzie> It seems to mean "do not use search map", since it is enabled for birds.
[12:42:01] <mattinm> well, the effect op in NI says: "No collision detection"
[12:42:18] <mattinm> so that would seem pretty accurate
[12:42:22] <fuzzie> :)
[12:42:27] <fuzzie> i got fed up with pathfinding
[12:42:40] <mattinm> haha, yeah, i'm getting ready to look at that :/
[12:42:48] <fuzzie> so i am taking a scalpel to it
[12:43:05] <mattinm> haha, that is probably the best way of doing it
[12:43:23] <mattinm> dissection is always fun
[12:45:18] <fuzzie> step #1 is fixing code i broke in january, alas :)
[12:45:33] <mattinm> haha
[12:48:30] <fuzzie> (i broke it so that two characters could be standing on top of each other :/)
[12:48:46] <mattinm> that isn't good :/
[12:49:00] <mattinm> that actually happened to me in the original game the other day
[12:49:18] <mattinm> i controlled a couple ogres, and they walked on top of each other and neither could move anymore
[12:49:24] <fuzzie> heh :)
[12:50:08] <mattinm> it was neat when enemies came up to them though; it looked like a 4 armed ogre swinging at them :D
[12:50:12] <fuzzie> So I am rushing around places in gemrb, trying to make sure my new code works OK.
[12:50:26] <fuzzie> oh, drat, I broke it. :(
[13:01:39] <fuzzie> ah, this code is not really so clever
[13:11:34] <fuzzie> the trouble is that rewriting chunks of this is just going to add more bugs..
[13:11:35] --- barraAway is now known as barra_library
[13:12:31] <mattinm> hmm... that wouldn't be good; i'm guessing that it needs a full re-write then?
[13:12:55] <fuzzie> I don't think so, I just need to be careful to do this in reasonable-sized bits.
[13:13:03] <fuzzie> The code isn't bad, it's just buggy.
[13:13:08] <mattinm> ahhh
[13:23:33] --> lynxlynxlynx has joined #gemrb
[13:23:34] --- ChanServ gives channel operator status to lynxlynxlynx
[13:23:49] <fuzzie> hooray, i moved in fomration and it worked!
[13:24:05] <mattinm> sweet!
[13:24:17] <lynxlynxlynx> ojla
[13:26:32] <fuzzie> hi lynx
[13:26:40] <fuzzie> that songlist spam is fixed now, sorry
[13:45:27] <-- exultbot has left IRC (ping timeout: 15 minutes)
[15:58:13] --> exultbot has joined #gemrb
[15:58:13] --- Topic for #gemrb is: Proudly bringing GemRB 0.4.0 to the gaming market | Gekz, it's at http://gemrb.sf.net | Be wary of your words for there are extra ears in this channel: http://log.usecode.org/gemrblog.php
[15:58:13] --- Topic for #gemrb set by lynxlynxlynx at Sun Jun 7 16:54:07 2009
[16:16:04] <-- Gekz has left IRC (Read error: 104 (Connection reset by peer))
[16:19:02] --> Gekz has joined #GemRB
[16:26:23] <fuzzie> if i just try and fix the current code to actually block the search map, actors go into confused spins because the pathfinding code doesn't take into account intermediate positions. blah. don't want to touch the pathfinder, it's scary.
[18:17:05] --> danamin has joined #GemRB
[18:34:09] --> Edheldil has joined #gemrb
[18:34:09] --- ChanServ gives channel operator status to Edheldil
[18:38:39] --> Avenger has joined #gemrb
[18:38:42] --- ChanServ gives channel operator status to Avenger
[18:38:46] <Avenger> hello
[18:39:35] <fuzzie> hello danamin, Edheldil, Avenger
[18:47:28] <danamin> hi
[18:49:29] --- barraAway is now known as barra_library
[18:56:12] --- barra_library is now known as barraAway
[19:01:56] <-- Avenger has left IRC ("bye!")
[19:04:31] --> barra_away has joined #gemrb
[19:21:09] <danamin> does anyone know what the correct way is to set proficiency in chargen? (SetPlayerStat or GemRB.ApplyEffect (MyChar, "Proficiency", Value, StatID ))
[19:21:22] <fuzzie> in bg1, you use SetPlayerStat.
[19:21:24] <-- barraAway has left IRC (Read error: 110 (Connection timed out))
[19:21:41] <fuzzie> Baldur's Gate 2 does proficiencies via effects, not stats, which is why it does ApplyEffect.
[19:22:06] <danamin> and how do I get the correct skill id?
[19:22:18] <danamin> weapprof goes 0-7
[19:23:45] <danamin> that number was used in the previous version of chargen
[19:23:57] <fuzzie> Umm, good question.
[19:24:16] <danamin> I could map to BG2 skill ID's
[19:24:52] <danamin> but BG2 has a lot more, so I don't exactly know the correct mapping
[19:26:05] <fuzzie> When we load BG1 savegames, we just put it in IE_PROFICIENCYBASTARDSWORD+i, where i is the proficiency number from 0 to 7.
[19:27:27] <danamin> I can use the same mapping
[19:27:37] <danamin> Hope that solves it
[19:27:47] <fuzzie> For consistency, putting it there would seem best. We'll have to change it to make it work, probably, but I guess it doesn't work at all now.
[19:28:50] <danamin> if I would use ApplyEffect, would it still work of is it just plain wrong?
[19:29:10] <danamin> (if BG1 and 2 use the same code its nicer)
[19:30:14] <fuzzie> It would probably work in gemrb, but saving wouldn't work and we'd need to fix it back to stats when we made proficiencies in bg1 work properly.
[19:30:40] <danamin> ok, stats it will be
[19:35:50] <lynxlynxlynx> the bg2 prof table also has the bg1 profs
[19:36:05] <lynxlynxlynx> so you can see in the bg2 code that we always skip 8 profs
[19:36:21] <lynxlynxlynx> so it seems bg2 had the same system as bg1 in the start
[19:36:45] <lynxlynxlynx> but you can use it to check the id and stat(name) mapping
[19:36:47] <fuzzie> lynxlynxlynx: maybe you can make sense of what the bg1 code should do
[19:37:04] <fuzzie> the bg1 weapprof table certainly doesn't seem to have any coherent stat ids
[19:37:33] <fuzzie> and it also doesn't correspond with what the CRE code does, which is just reading into the first stats from IE_PROFICIENCYBASTARDSWORD (which isn't even in bg1, right?)
[19:37:46] <lynxlynxlynx> it isn't
[19:37:51] <fuzzie> but until someone has some time it seems sensible to have everything do the same thing, in any case
[19:38:02] <lynxlynxlynx> IE_PROFICIENCYBLACKJACK <-- club huh
[19:39:02] <lynxlynxlynx> before changing anything, the key question is: does it work now? :)
[19:39:17] <fuzzie> not at all
[19:39:31] <fuzzie> poor neglected bg1
[19:42:23] <fuzzie> but i don't really understand what's going on
[19:42:34] <fuzzie> the trouble is that those first 8 entries in weapprof are with stat ids 0 to 7, i think
[19:42:56] <lynxlynxlynx> yes
[19:43:20] <fuzzie> in bg2 they're just skipped, and in bg1 there's no weapprof.2da but we ship one with those ids intact..
[19:44:03] <lynxlynxlynx> so maybe it was planned to use effects afterall
[19:44:26] <lynxlynxlynx> bbiaf
[19:44:38] <fuzzie> i think the effect code requires stat ids also.
[19:44:49] <fuzzie> so either way it's broken.
[19:53:28] <lynxlynxlynx> yeah
[19:55:22] <lynxlynxlynx> if there is no lore on the net, one way of finding out is to gain a prof with levelup and compare the exported actors
[19:55:55] <fuzzie> what kind of lore? i mean, the original game has no prof effect.
[19:56:10] <fuzzie> and otherwise you can presumably work it out just by chargenned chars..
[19:57:53] <lynxlynxlynx> right, you probably get more than one point to spend
[19:59:44] <CIA-2> gemrb: 03fuzzie * r6405 10/gemrb/trunk/gemrb/plugins/Core/Interface.cpp: don't use delete to free malloc()ed pointers
[20:01:19] <CIA-2> gemrb: 03fuzzie * r6406 10/gemrb/trunk/gemrb/plugins/Core/ (ActorBlock.cpp ActorBlock.h Map.cpp Map.h): move multiple-steps-per-frame handling out of DoStep; reorganise some related code
[20:02:06] <lynxlynxlynx> Personally, I advocate installing the restored BG1 weapon proficiency system for use with Tutu.
[20:02:17] <lynxlynxlynx> so it looks like tutu has a switch :)
[20:04:37] <fuzzie> It looks like the BG2 mods along that line all just do it by reducing the number of proficiencies but still using the BG2 system otherwise.
[20:06:50] <fuzzie> re r6406: Maybe we shouldn't be doing multiple-steps-per-frame at all, but it should be easy to rip that out if needed.
[20:11:44] <CIA-2> gemrb: 03avenger_teambg * r6407 10/gemrb/trunk/gemrb/plugins/WEDImporter/WEDImp.cpp: one less multiplication
[20:12:25] <CIA-2> gemrb: 03avenger_teambg * r6408 10/gemrb/trunk/gemrb/plugins/Core/EffectQueue.cpp: ctrl-r shouldn't remove equipping effects
[20:12:52] <CIA-2> gemrb: 03avenger_teambg * r6409 10/gemrb/trunk/gemrb/plugins/GUIScript/GUIScript.cpp: fixed a crasher in GetEquipmentInfo
[20:15:08] <fuzzie> r6408 changes RemoveAllNonPermanentEffects, so it makes that resetchr less painful, probably
[20:16:02] --> Avenger has joined #gemrb
[20:16:16] --- ChanServ gives channel operator status to Avenger
[20:18:08] <fuzzie> Sometime I'll have to install an unpatched ToB and work out why the timing on resetchr is permanent.
[20:19:07] <CIA-2> gemrb: 03avenger_teambg * r6410 10/chitem/trunk/ (14 files): dltcep update
[20:20:26] <-- danamin has left IRC ()
[20:20:51] <Avenger> hmm, there is a permanent current hp modifier?
[20:21:09] <Avenger> Ahh
[20:21:13] <Avenger> that is 'remove effects'
[20:21:19] <lynxlynxlynx> the CRE description has all the info, doh
[20:21:26] <lynxlynxlynx> 0x006e is the base
[20:21:51] <lynxlynxlynx> fuzzie: i can test that for you
[20:21:53] <fuzzie> Avenger: yes, i was just seeing that you changed RemoveAllNonPermanentEffects, which makes resetchr less annoying.
[20:22:18] <Avenger> yes, i made it working like the original :D
[20:22:38] <Avenger> ctrl-r does a similar thing
[20:22:44] <fuzzie> but resetchr still removes other effects forever, since it is permanent
[20:22:52] <fuzzie> and this is a bit unhelpful, i think
[20:23:03] <Avenger> are you sure?
[20:23:22] <fuzzie> well, it is timing mode 9.
[20:23:57] <fuzzie> maybe you can work out how it is supposed to work :)
[20:24:25] <Avenger> yes, it is a trivial fix, done
[20:24:28] <CIA-2> gemrb: 03avenger_teambg * r6411 10/gemrb/trunk/gemrb/plugins/FXOpcodes/FXOpc.cpp: some effects try to make fx_current_hp_modifier permanent (it never lingers around)
[20:24:37] <fuzzie> thankyou!
[20:24:43] <lynxlynxlynx> woah
[20:24:51] <fuzzie> we have been puzzling over that for days
[20:25:00] <Avenger> O_o sorry :D
[20:25:18] <Avenger> this is my favourite field
[20:25:31] <Avenger> opcode implementation
[20:25:34] <fuzzie> that is great. it is there to remove the blindness from the first ToB battle, but it was removing all effects forever :)
[20:25:58] <lynxlynxlynx> trying it out as soon as it compiles
[20:26:12] <Avenger> i don't quite see why they applied it with timing mode 9
[20:26:30] <lynxlynxlynx> they fixed it with the patch
[20:27:08] <fuzzie> I think the patch just stops the spell cast entirely, because otherwise you lose a lot of 'good' effects.
[20:27:26] <fuzzie> It does not seem like they thought about it very much.
[20:28:20] <fuzzie> Avenger: do you still have the code for the overlapping windows fix? i was wondering if i could take a look.
[20:28:34] <Avenger> i scrapped it
[20:29:28] <Avenger> i basically tried this: if setvisible was not explicitly was called with mode 3, and the window was already in the topwindow list, then it didn't bring it to the front
[20:30:04] <Avenger> i think the window list and the topwindow list are now pretty much redundant
[20:31:18] <fuzzie> that effect fix seems to have worked fine, great!
[20:31:45] <fuzzie> Now ToB works fine until Saradush, I think.
[20:32:35] <lynxlynxlynx> cutscenes should switch to the main game view
[20:33:00] <lynxlynxlynx> we also have an animation persistance bug, but that's minor
[20:34:23] <fuzzie> :nod:
[20:37:47] <lynxlynxlynx> make that two, we still have the dead twitching, right?
[20:38:37] <fuzzie> The dead twitching is less minor, I suppose.
[20:39:03] <lynxlynxlynx> yeah
[20:44:47] <CIA-2> gemrb: 03avenger_teambg * r6412 10/gemrb/trunk/gemrb/docs/en/Engine/Projectile.txt: documented gemrb extension flags in .pro format
[20:45:38] <fuzzie> Avenger: Do you know how movies should work in PST? When you leave the Mortuary into AR0300 you are apparently meant to get two movies, but maybe they are hard-coded.
[20:46:19] <fuzzie> AR0200, even.
[20:46:37] <Avenger> hmm, area movies?
[20:46:46] <Avenger> when you first enter certain areas...
[20:46:50] <fuzzie> yes
[20:48:00] <Avenger> is it the sigil movie?
[20:48:23] <fuzzie> yes
[20:49:25] <Avenger> yeah, the suckers did something hardcoded again
[20:49:58] <Avenger> Played_Sigil_Movie is a string in Torment.exe
[20:50:23] <Avenger> also AR0200_Visited
[20:50:37] <Avenger> do you have ar0200_Visited set?
[20:50:43] <fuzzie> yes
[20:50:55] <fuzzie> there's another movie when you leave the mortuary, with the shadows, but perhaps that's the same one, i didn't check
[20:51:01] <Avenger> ok, then i add this to the 'torment.bcs'
[20:51:12] <Avenger> i think they hardcoded baldur.bcs into the exe
[20:51:21] <Avenger> i already added a global script
[20:52:03] <fuzzie> that would be great :)
[20:52:36] <fuzzie> those strings in the exe there are interesting, i wonder why 'soego' is one
[20:55:13] <fuzzie> i also wonder why there are four occurances of AR1900_Visited, i thought the Player's Maze was a simple area.
[20:56:19] <fuzzie> Oh well, I guess it will be interesting to find out :)
[20:57:41] <Avenger> soego has a movie too
[20:58:20] <Avenger> ok, wine just crashed on me in dltcep's script editor
[20:58:32] <Avenger> seems like richedit control is not perfect
[20:58:48] <Avenger> gotta reboot again
[20:58:50] <-- Avenger has left IRC ("bye!")
[20:58:51] <fuzzie> yes, i think i have the XP richedit control dll copied into my wine directory :)
[21:00:50] <fuzzie> lynxlynxlynx: so other than death animations and forcing the gui to default on area move/cutscene, are there other showstopper bugs?
[21:01:48] <lynxlynxlynx> up to saradush? not that i'm aware of
[21:02:20] <lynxlynxlynx> haven't played much further than that archer crash
[21:02:27] <fuzzie> Me neither.
[21:02:43] <lynxlynxlynx> we don't draw the comet, but that's related to the aoe projectiles
[21:02:53] <lynxlynxlynx> comet/payload
[21:08:24] <fuzzie> I think ToB probably becomes quickly annoying at that point due to pathfinding/combat problems.
[21:10:32] <lynxlynxlynx> oh
[21:10:48] <lynxlynxlynx> not all the guards attack
[21:11:21] <lynxlynxlynx> i think they did in the original, but it has been a while since i played it
[21:11:52] <fuzzie> yes, they all do in the original
[21:12:02] <fuzzie> and you only get the end dialog automatically if they're all dead
[21:12:21] <fuzzie> but when I looked, I couldn't even work out why *any* of them attacked.
[21:15:21] <CIA-2> gemrb: 03avenger_teambg * r6413 10/gemrb/trunk/gemrb/override/pst/baldur.bcs: play the sigil movie on first visit of ar0200
[21:15:49] --> Avenger has joined #gemrb
[21:16:01] --- ChanServ gives channel operator status to Avenger
[21:16:22] <Avenger> i couldn't find out how the soego movie is triggered
[21:16:49] <Avenger> the sigil movie is now played
[21:16:53] <fuzzie> it is :)
[21:17:00] <fuzzie> thankyou
[21:18:33] <fuzzie> I need to work out what the trigger is for the Mortuary exit video now, I suppose.
[21:21:12] <fuzzie> Avenger: did you have any more thoughts on PS:T stances?
[21:24:27] <fuzzie> the movie is SS_MSLAB, the variable is Played_Shadow_Movie, and I guess it is triggered on specific exits because the strings AR0200, FR0201, AR0206 and FR0201 are present (and it is displayed when moving from 0201 to 0200/0206).
[21:27:45] <Avenger> no, no thoughts on stances
[21:28:36] <fuzzie> ok. i daren't touch because i don't understand how they work.
[21:30:41] <-- Avenger has left IRC ("bye!")
[21:30:46] <fuzzie> I'll have a careful read through, I guess.
[21:37:58] <lynxlynxlynx> Attack animations continue after target death (#1895628). <-- this looks fixed to me
[21:46:02] <fuzzie> last time i looked, chars would still take a swing after death if they already had one to go, but i didn't check that recently..
[21:48:07] <lynxlynxlynx> i was testing with an archer that has 2apr and usually takes one hit to down a goblin
[21:48:15] <lynxlynxlynx> maybe melee is different
[21:48:49] <fuzzie> oh, i think the ranged stuff is completely different
[21:50:46] <CIA-2> gemrb: 03lynxlupodian * r6414 10/gemrb/trunk/gemrb/plugins/FXOpcodes/FXOpc.cpp:
[21:50:46] <CIA-2> gemrb: normal haste gives +1apr bonus
[21:50:46] <CIA-2> gemrb: refresh the portraits for the haste icons
[21:51:45] <fuzzie> oh
[21:52:13] <fuzzie> the InitRound code specifically doubles APR if STATE_HASTED, does that need removing?
[21:52:52] <lynxlynxlynx> no, that is or should be for improved haste
[21:53:22] <lynxlynxlynx> the effect sets a var, checking what sets the state
[21:53:52] <lynxlynxlynx> oh, the effect :)
[21:54:02] <fuzzie> Well, that fx_set_hasted_state effect sets STATE_HASTED for all haste, so I guess InitRound should be checking for IE_IMPROVEDHASTE?
[21:54:13] <lynxlynxlynx> i'll change InitRound so it only does it for 1 of the 3 hastes
[21:54:18] <lynxlynxlynx> yeah
[21:55:27] <fuzzie> I have no clue about this, I just noticed it last time I looked at InitRound.
[21:56:07] <fuzzie> the STAT_SET stuff just confuses me :)
[21:56:15] <lynxlynxlynx> it's just a macro
[21:56:30] <lynxlynxlynx> maybe a gemrb extension, that stat
[21:56:51] <fuzzie> I mean, I can see it just calls SetStat on the actor, but I wonder how the magic works when the effect expires.
[21:57:32] <fuzzie> I guess while we're just calling RefreshEffects every frame, it'll just be called every frame until it's done.
[21:57:33] <lynxlynxlynx> this is the whole reasons we have Modified, no?
[21:58:01] <fuzzie> yes :)
[21:58:32] <fuzzie> but that hasted effect returns FX_PERMANENT, which expires the effect at once
[21:58:50] <lynxlynxlynx> the apr is restored nicely
[21:59:38] <fuzzie> So I still don't know how it works :) but for another day, I suppose.
[22:05:31] <lynxlynxlynx> hmm, it would make more sense to just double the apr in the effect, so you also get the gui update
[22:05:48] <lynxlynxlynx> nothing uses either of those two stats
[22:08:42] <lynxlynxlynx> monster commit
[22:08:46] <lynxlynxlynx> good night
[22:09:00] <-- lynxlynxlynx has left IRC (Remote closed the connection)
[22:16:05] --- barra_away is now known as barraAway
[23:46:59] <Edheldil> good night
[23:47:03] <-- Edheldil has left IRC ("Really?")