#gemrb@irc.freenode.net logs for 5 Oct 2009 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[01:02:18] <-- tombhadAC has left IRC (Remote closed the connection)
[02:14:36] <-- Maighstir has left IRC (Read error: 110 (Connection timed out))
[02:43:48] --> Darki has joined #gemrb
[02:43:48] --- ChanServ gives channel operator status to Darki
[02:45:30] <-- Dark-Star has left IRC (Read error: 145 (Connection timed out))
[03:17:55] <-- barra_away has left IRC ("Verlassend")
[05:27:08] <-- pupnik has left IRC (Read error: 110 (Connection timed out))
[05:33:48] --> Forgetful_Lion has joined #GemRB
[05:42:06] --> pupnik has joined #GemRb
[05:59:53] --> Gekz has joined #GemRB
[06:30:58] --> [1]Forgetful_Lio has joined #GemRB
[06:47:40] <-- Forgetful_Lion has left IRC (Read error: 110 (Connection timed out))
[06:47:40] --- [1]Forgetful_Lio is now known as Forgetful_Lion
[06:53:41] <-- pupnik has left IRC (Remote closed the connection)
[06:53:44] --> pupnik has joined #GemRb
[07:13:11] --> lynxlynxlynx has joined #gemrb
[07:13:11] --- ChanServ gives channel operator status to lynxlynxlynx
[07:46:10] <-- Gekz has left IRC (Read error: 104 (Connection reset by peer))
[07:49:52] --> Gekz has joined #GemRB
[07:53:36] <-- Gekz has left IRC (Read error: 54 (Connection reset by peer))
[08:07:35] <-- Forgetful_Lion has left IRC (Read error: 60 (Operation timed out))
[08:14:50] --> Forgetful_Lion has joined #GemRB
[08:52:25] <-- |Cable| has left IRC (Remote closed the connection)
[08:59:44] <lynxlynxlynx> looks like InParty can get set even for non party members
[09:01:13] <lynxlynxlynx> this is the reason for the level-up sound being played erroneusly and for the mislead images donating gold
[09:03:56] <lynxlynxlynx> and potentially much more, it is used a lot
[09:04:50] <fuzzie> hum
[09:05:33] <fuzzie> odd, only GetActor should set that
[09:05:34] <lynxlynxlynx> maybe it is stored in a smaller type in the original
[09:05:55] <lynxlynxlynx> i didn't connect it then, but when i was debugging, i often saw high values
[09:07:01] <fuzzie> something is maybe doing InParty-- and overflowing it? but i don't see
[09:10:44] <fuzzie> perhaps someone calls GetActor or LoadCreature with -1 or similar
[09:12:10] <lynxlynxlynx> i will check some data later, but in the fuzzy memory i have doesn't look like an overflow
[09:13:00] <fuzzie> no, all the calls are legitimate
[09:15:49] <fuzzie> GAMImp::GetAct doesn't check the is_in_party param if spawning not-yet-existing NPCs?
[09:16:26] <fuzzie> i assume that's not your problem
[09:20:56] <fuzzie> well, i don't know. :) good morning
[09:21:32] <fuzzie> got to bug Avenger more about DLTCEP showing all data, it took me a while to work out everything's been corrupting pst areas
[09:21:46] <fuzzie> but now, breakfast
[10:25:43] <fuzzie> it would really be nice if gemrb had history in the console thing
[10:25:48] <fuzzie> i got used to having it
[10:28:43] <lynxlynxlynx> yeah
[10:29:01] <lynxlynxlynx> i usually just stuff the code into GearsClicked
[10:29:26] <fuzzie> well, often i have a whole bunch of commands going, hopping around a few areas :)
[10:45:23] <lynxlynxlynx> ah, the levelup sound comes from another source
[10:46:57] <lynxlynxlynx> probably an archer runs out of ammo
[10:47:03] <lynxlynxlynx> DS_ITEM_GONE is played
[10:47:27] <lynxlynxlynx> just a wrong table entry
[10:48:34] <lynxlynxlynx> wierd coincidence
[10:53:10] <CIA-22> gemrb: 03fuzzie * r7365 10/gemrb/trunk/gemrb/plugins/Core/ActorBlock.cpp: add Dialog to the Door debug dump
[10:53:24] <fuzzie> i can 'fix' PST door reading, but only by hacks, so i guess i will have to wait for Avenger
[11:03:38] <CIA-22> gemrb: 03lynxlupodian * r7366 10/gemrb/trunk/gemrb/override/ (how/defsound.2da iwd/defsound.2da iwd2/defsound.2da):
[11:03:38] <CIA-22> gemrb: iwd*: changed the ITEM_GONE default sound to match other games
[11:03:38] <CIA-22> gemrb: was playing the levelup sound
[11:07:55] <fuzzie> hm, if i set a travel infopoint to use a portal cursor, you can't use it; i guess that's how it detects portals
[11:11:52] <fuzzie> $ strings ~/src/gemrb/pst/torment.exe | grep 1700
[11:11:52] <fuzzie> ar1700d1
[11:11:58] <fuzzie> ^- ugh, no wonder i couldn't find which flag was responsible :(
[11:13:49] <lynxlynxlynx> ugh indeed
[11:15:44] --> Maighstir has joined #gemrb
[11:17:40] <fuzzie> so, yeah
[11:17:56] <fuzzie> i switch a random travel trigger to go to entrance FR1700 in AR1800, and magic happens when you use it
[11:18:01] <fuzzie> oh gosh i hate you, Black Isle
[11:26:04] <CIA-22> gemrb: 03lynxlupodian * r7367 10/gemrb/trunk/NEWS: NEWS bump
[11:26:45] <fuzzie> heh, bg1 being roughly completable is a bit optimistic yet :)
[11:27:18] <lynxlynxlynx> how come? raevol is on the verge of completing it
[11:27:30] <fuzzie> i think raevol still has all of chapter 7 to do
[11:27:30] --> [1]Forgetful_Lio has joined #GemRB
[11:27:46] <lynxlynxlynx> chapter 7 is short
[11:27:48] <fuzzie> at least, i got no feedback on the chapter 6 showstoppers i fixed, yet
[11:29:09] <fuzzie> and we should really work out that end-of-iwd cutscene issue
[11:29:28] <lynxlynxlynx> sure, we're not releasing today
[11:29:48] <fuzzie> sorry, i don't mean to say that putting them in NEWS is bad :)
[11:29:56] <fuzzie> just rambling
[11:32:10] <fuzzie> first thoughts: ReallyForceSpell(Myself,INNATE_BELHIFETS_DEATH_ANIMATION) casts spin973 --> fx_death on self
[11:32:38] <fuzzie> so i guess it's just yet another bug caused by the fact we don't delay effect applications
[11:32:49] <fuzzie> well, i guess those are also last thoughts
[11:33:08] <-- Forgetful_Lion has left IRC (Read error: 60 (Operation timed out))
[11:33:08] --- [1]Forgetful_Lio is now known as Forgetful_Lion
[11:47:57] <lynxlynxlynx> an enemy mislead image has InParty of 78 :)
[11:48:14] <lynxlynxlynx> will need to run the same checks as for the levelup one
[11:48:25] <lynxlynxlynx> but first this gold sillyness
[11:48:25] <fuzzie> ugh
[11:48:36] <fuzzie> i mean, the fix is: make sure InParty isn't set
[11:48:46] <fuzzie> it's a purely gemrb-internal thing
[11:49:36] <lynxlynxlynx> this particular one, sure
[11:50:05] <lynxlynxlynx> the source has 0 there, so we just need to reset it, like with many other things we do
[11:50:14] <fuzzie> reset?
[11:50:28] <lynxlynxlynx> to the value of the source
[11:50:34] <fuzzie> that's also not right
[11:50:37] <lynxlynxlynx> indeed
[11:50:51] <lynxlynxlynx> your own illusions would be treated as party members :)
[11:51:01] <CIA-22> gemrb: 03fuzzie * r7368 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: initialise InParty in constructor
[11:51:02] <fuzzie> ^- better :)
[11:51:25] <lynxlynxlynx> :)
[11:51:48] <fuzzie> i hadn't realised that CopySelf() existed
[11:51:55] <fuzzie> there are other problems lurking there
[11:52:12] <lynxlynxlynx> probably
[11:52:18] <lynxlynxlynx> we fix them as we find them
[11:52:50] <fuzzie> running valgrind during a call might be a good idea when someone's bored
[11:53:03] <fuzzie> just at a glance i can see plenty of disasters
[12:18:10] --> spike411 has joined #GemRB
[12:20:01] <spike411> Hi! I haven't been here in a while… Is there anyone building GemRB on Mac OS X? There's still no howto for OS X, but the last time I was told cmake is the preferred buildsystem there…
[12:20:19] <lynxlynxlynx> no idea
[12:20:34] <fuzzie> i don't think anyone's tried since the cmake fixes got integrated
[12:20:51] <lynxlynxlynx> didn't spike?
[12:21:16] <fuzzie> someone was trying with macports rather than 'normal' builds, was that spike?
[12:21:19] <fuzzie> i am forgetful
[12:21:23] <spike411> Well I tried and then gave up, because I had some other things to do.
[12:21:30] <fuzzie> i don't seem to remember macports being very helpful about it
[12:22:27] <spike411> Well, I think MacPorts wasn't really the culprit.
[12:23:20] <spike411> I wasn't building it via ports. But I did ./autogen.sh, ./configure, make… which failed for various reasons. And then I was told cmake is the preferred way to build gemrb.
[12:23:45] <spike411> If I recall correctly. :)
[12:23:46] <fuzzie> ah :)
[12:23:59] <fuzzie> all i remember is that the macports openal build does silly things
[12:24:09] <spike411> Yeah.
[12:24:11] <lynxlynxlynx> and our aclocal.m4 was bad
[12:24:15] <spike411> :)
[12:24:41] <lynxlynxlynx> i remember the linking issue too
[12:24:59] <lynxlynxlynx> -lvorbis_file wasn't available for you, even though you had the library built
[12:25:22] <spike411> Anyways… I've started ‘fresh’… just upgraded to Snow Leopard, installed latest Xcode, removed everything macports-installed and installed fresh macports and cmake via port.
[12:25:55] <fuzzie> well, vorbis isn't needed, anyway, so it is an obvious candidate to sabotage :)
[12:26:11] <spike411> I see. None of BI games uses Vorbis, right?
[12:26:16] <fuzzie> nope
[12:26:18] <lynxlynxlynx> only mods
[12:26:21] <fuzzie> it is helpful for some mods, that is all
[12:27:14] <spike411> How can I tell using cmake (or whatever tool) what packages I might be missing?
[12:27:20] <spike411> SDL etc.
[12:27:29] <spike411> Because SDL is split up in ports.
[12:27:32] <fuzzie> it should complain at you when you run the cmake command
[12:27:53] <fuzzie> gemrb just uses the core SDL, i think
[12:28:03] <lynxlynxlynx> yes
[12:29:18] <spike411> OK, let's say I've just checked out gemrb from svn. Now… do I run ‘cmake -G "Unix Makefiles" or something like that? (Because ‘cmake’ alone is missing some parameters.)
[12:29:48] <lynxlynxlynx> cmake .
[12:30:02] <lynxlynxlynx> or preferably create a build dir first to avoid pollution
[12:30:02] <spike411> I see.
[12:30:10] <lynxlynxlynx> cd into it and cmake ..
[12:30:16] <spike411> Oh, neat.
[12:35:20] <spike411> Hm, strange. Even though I was in my custom build directory and executed cmake .. there, the build files were written to the parent directory.
[12:36:21] <lynxlynxlynx> wierd
[12:36:23] <fuzzie> all of them?
[12:36:31] <spike411> My custom dir is empty.
[12:36:35] <fuzzie> yikes.
[12:36:40] <spike411> o_O
[12:36:43] <spike411> Strange.
[12:36:57] <fuzzie> whee, same happens here
[12:37:28] <lynxlynxlynx> go go macs :P
[12:37:35] <fuzzie> same happens here on linux :P
[12:37:43] <lynxlynxlynx> worksforme
[12:38:24] <lynxlynxlynx> i even retried now to verify
[12:38:25] <spike411> cmake version 2.6-patch 4
[12:38:35] <lynxlynxlynx> 2.6.3 here
[12:38:43] <lynxlynxlynx> 2.8 will be released soon
[12:38:54] <fuzzie> i also have 2.6-patch 4
[12:39:11] <fuzzie> it works fine for me in a new svn checkout
[12:39:37] <spike411> Aha, maybe that's because I messed with cmake in that checkout before.
[12:39:42] <fuzzie> yeah, i guess same here
[12:40:02] <lynxlynxlynx> remove the CMakeCache.txt files
[12:40:28] <lynxlynxlynx> and possibly whatever other remnants of running cmake in the source dir
[12:40:51] <fuzzie> i zapped CMakeCache.txt and CMakeFiles/ and it seems happy in my original tree
[12:46:58] <spike411> Am I just stupid…? http://paste.jabbim.cz/3963
[12:47:32] <spike411> Is it normal that I don't have the variable set?
[12:49:45] <lynxlynxlynx> your sdl wasn't found
[12:49:53] <spike411> Which is quite… interesting.
[12:49:55] <fuzzie> it's sdlmain.m missing, probably
[12:50:00] <spike411> -- SDL found
[12:50:35] <fuzzie> you have the macports SDL installed, or the SDL one?
[12:51:38] <spike411> Errr… I guess none. For some reason, I thought SDL is bundled with OS X (o_O).
[12:51:53] <spike411> So I'm just stupid, I guess.
[12:53:10] <fuzzie> i think cmake is probably expecting the official SDL dev files
[12:53:22] <fuzzie> but libsdl-framework or libsdl-devel from macports might also work
[12:53:52] <fuzzie> we must write a wiki page on this, if you find out, i guess
[12:53:54] <spike411> Let me try. I promise I'll at least attempt to summarize my experience to some kind of howto. :)
[12:53:58] <spike411> Yeah.
[12:57:17] <fuzzie> hanicka's intent was to make a redistributable bundle, but /opt/local/lib is mentioned in irc logs so i would guess it was first built using macports's libsdl-devel
[12:57:42] <spike411> hanicka? Sounds like a Czech girl's name. :)
[12:58:09] <fuzzie> one of the many people giving us a patch and then disappearing :)
[12:58:23] <spike411> Ha ha… sad.
[12:58:47] <fuzzie> well, it's very nice to have the patches
[12:59:04] <fuzzie> if only a few more people had the time to stay around
[12:59:30] <lynxlynxlynx> like the keyboard one
[13:00:43] <fuzzie> i guess i should really just fix that up and apply it sometime, since it seems no-one with a different idea has the time to make it work
[13:01:29] <fuzzie> although it does need the fixing up first :)
[13:02:30] <lynxlynxlynx> yep
[13:07:33] <-- Maighstir has left #gemrb ()
[13:08:48] <-- Forgetful_Lion has left IRC (" Try HydraIRC -> http://www.hydrairc.com <-")
[13:21:26] <CIA-22> gemrb: 03lynxlupodian * r7369 10/gemrb/trunk/gemrb/GUIScripts/GUICommon.py: check for the existance of the kitlist table before trying to load it
[13:29:06] <fuzzie> ok, i should try re-applying pdolls to pst?
[13:29:36] <lynxlynxlynx> sure
[13:30:15] <fuzzie> would help if i svn upped first :)
[13:30:59] <fuzzie> still breaks
[13:31:49] <fuzzie> that's .. weird
[13:32:52] <lynxlynxlynx> what error and when?
[13:32:58] <fuzzie> File "./GUIScripts/pst/GUICommonWindows.py", line 209, in GetActorPortrait
[13:32:58] <fuzzie> return AppearanceAvatarTable.GetValue (row, which)
[13:32:58] <fuzzie> AttributeError: 'NoneType' object has no attribute 'GetValue'
[13:33:19] <fuzzie> and, yes, LoadCommonTables is called first :)
[13:33:31] <fuzzie> and it finds pdolls.2da, etc
[13:33:43] <fuzzie> do i miss something obvious?
[13:33:46] <lynxlynxlynx> from where? I don't see it in any pst guiscript
[13:33:52] <fuzzie> well, i added it to Start.py
[13:33:57] <fuzzie> the same place as it is in bg1, bg2, etc
[13:34:17] <fuzzie> do i need to put it somewhere else too?
[13:34:34] <lynxlynxlynx> maybe the script in question doesn't import that module / table
[13:35:00] <fuzzie> the problem is that it imports it as 'None', i guess
[13:35:08] <fuzzie> before the LoadCommonTables has a chance to run
[13:36:07] <fuzzie> i'll just avoid the import hackery and reference it properly
[13:37:07] <CIA-22> gemrb: 03fuzzie * r7370 10/gemrb/trunk/gemrb/GUIScripts/pst/ (GUICommonWindows.py Start.py): call LoadCommonTables from pst, return to using shared pdolls table
[13:38:38] <fuzzie> maybe you have a better idea, but that works for now
[13:57:27] <CIA-22> gemrb: 03lynxlupodian * r7371 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: yet more barbarian ugliness, so fighters aren't immune to backstab too
[14:01:01] <fuzzie> ick :)
[14:27:26] <CIA-22> gemrb: 03lynxlupodian * r7372 10/gemrb/trunk/gemrb/plugins/Core/Actor.cpp: illusions aren't worth any xp
[14:39:18] <spike411> Meh
[14:39:42] <spike411> ld: warning: in /Library/Frameworks//SDL.framework/SDL, file is not of required architecture, after downloading SDL.framework from libsdl.org: ld: warning: in /Library/Frameworks//SDL.framework/SDL, missing required architecture x86_64 in file
[14:40:18] <fuzzie> have you tried with the macports libsdl-devel? as i said, that seems to be what the cmake stuff was first built using
[14:40:20] <spike411> fuzzie: Have you tried building on Snow Leopard?
[14:40:27] <fuzzie> i have a powerpc, so no :)
[14:40:31] <spike411> I see.
[14:40:51] <fuzzie> i'll borrow someone's intel machine tonight, if you really can't make it work
[14:50:51] <spike411> I guess I have some x86-only leftover SDL frameworks from Leopard.
[14:51:08] <spike411> And the one from libsdl.org is x86-only, too.
[14:51:19] <spike411> (And PPC.)
[14:53:01] <spike411> Sometimes it's better to just wipe out the system and start over. >_<
[14:53:48] --> Maighstir has joined #gemrb
[15:15:11] --> Avenger has joined #gemrb
[15:15:14] --- ChanServ gives channel operator status to Avenger
[15:15:21] <Avenger> hi
[15:15:35] <lynxlynxlynx> oj
[15:16:29] <fuzzie> Avenger: DLTCEP, ielister and gemrb all fail to read pst doors properly
[15:16:44] <Avenger> hmm, epic fail :)
[15:16:54] <Avenger> structure size difference?
[15:16:59] <fuzzie> the Dialog is 8 bytes earlier in the file
[15:17:05] <Avenger> ahh, i see
[15:17:08] <fuzzie> and there's a resref before that
[15:17:19] <fuzzie> so there's no space for the link string thingie
[15:17:25] <Avenger> 2 resrefs then?
[15:17:26] <fuzzie> so i don't know what to do :)
[15:17:34] <fuzzie> erm, a stringref, even
[15:17:38] <fuzzie> some 0xffffffff value
[15:17:50] <fuzzie> in all the cases i found
[15:18:05] <Avenger> tell me areas
[15:18:20] <Avenger> first i guess, i gotta fix ielister
[15:18:35] <fuzzie> take a look, i guess :) ar1700's 'ar1700d1' door is a good example, it has dialog DPPTRANS
[15:19:11] <Avenger> what about iesdp, i guess it is absolutely ignorant?
[15:19:49] <fuzzie> yes :)
[15:20:20] <fuzzie> i found nothing on this, not even on the wiki of the new pst reverse-engineering guy
[15:20:32] <fuzzie> i only found it because some dialog was failing :)
[15:20:54] <Avenger> i think i should simply swap the name strref and the dialog resref
[15:21:11] <wjp> there's a new pst RE guy?
[15:21:32] <fuzzie> Avenger: that doesn't work
[15:21:40] <fuzzie> the name sttref is only 4 bytes
[15:21:45] <Avenger> yes
[15:22:12] <fuzzie> and if you move the failed sttref too, then you read a strref as the last 4 bytes of the region link
[15:22:21] <fuzzie> and the front/back points are correct
[15:22:30] <fuzzie> so there's no space to just rearrange things
[15:23:00] <Avenger> hmm
[15:23:42] <Avenger> this is quite booped up
[15:23:43] <fuzzie> that is where i gave up, and decided to ask you :)
[15:24:12] <Avenger> the best course of action is asking scient on shsforums
[15:24:28] <Avenger> i could try and start peeking into it, but that would be a waste of time
[15:25:20] <fuzzie> the problem is, scient has been missing for 3 months
[15:25:53] <fuzzie> but i could try asking this new pst RE guy, if they're still around
[15:27:14] <fuzzie> 'Displacer' on g3 forums, was around in the last few days
[15:29:22] <fuzzie> unless NI knows already? i didn't check it
[15:37:35] <fuzzie> Avenger: oh, also: a pst travel trigger going to FR1700 in AR1800 removes all party members before travel, any idea how to do that?
[15:38:09] <Avenger> hardcoded, as i seen from the irc logs
[15:38:23] <fuzzie> yes :/
[15:38:30] <Avenger> i don't know how can you trigger an event before using an exit
[15:38:35] <fuzzie> only one of those triggers exists
[15:38:44] <Avenger> but otherwise it is simple LeaveParty(Player2-6)
[15:38:46] <fuzzie> but the script runs far too late
[15:39:49] <fuzzie> and our SetScriptName only works for actors, but i guess that is simple to change
[15:40:02] <fuzzie> oh, that does the wrong thing
[15:40:09] <fuzzie> well, i guess we'd need a SetScript action. but easy to add.
[15:40:16] <Avenger> setscript?
[15:40:28] <Avenger> there is already action to assign a script
[15:40:34] <fuzzie> is there?
[15:40:36] <Avenger> sure
[15:40:43] <Avenger> setaiscript
[15:40:51] <fuzzie> ChangeAIScript is actor-only and takes a script slot, too
[15:41:12] <fuzzie> is changing that a good idea?
[15:41:38] <Avenger> changecurrentscript
[15:41:47] <Avenger> that works on the current sender only
[15:42:03] <Avenger> is that ok?
[15:42:05] <fuzzie> not very helpful
[15:42:15] <Avenger> :_(
[15:42:22] <fuzzie> yes, it is annoying
[15:42:29] <Avenger> what do you want to achieve then?
[15:42:42] <fuzzie> well, i guess we've got to set a script on the travel infopoint
[15:42:59] <Avenger> forceaiscript
[15:43:11] <fuzzie> and we hack that to work on infopoints?
[15:43:11] <Avenger> that is ALMOST good
[15:43:18] <Avenger> sure
[15:43:29] <Avenger> it takes a script level
[15:43:34] <fuzzie> it won't work because the infopoint script runs at the wrong time, but maybe i can change that without doing too much damage
[15:43:48] <Avenger> but you can make it ignore the level
[15:44:08] <Avenger> or, just use a special level :)
[15:44:11] <fuzzie> well, i thought i would make it take a 'special' level, like 1000, which means 'change infopoint'
[15:44:14] <fuzzie> hehe :)
[15:44:20] <Avenger> i would prefer it use an unusual level for non actors
[15:44:20] <fuzzie> ok, i'll go look at this
[15:44:32] <Avenger> so we can avoid buggy mods :)
[15:44:33] <fuzzie> i'm glad when we have the same thoughts
[15:44:44] <Avenger> ahh you had it too
[15:44:54] <Avenger> lol, i should read what you say
[15:45:29] <Avenger> but this won't help you too much
[15:45:54] <Avenger> how would changing the script help
[15:46:03] <Avenger> that would just cause more trouble
[15:46:12] <fuzzie> well, it has no script right now
[15:46:29] <Avenger> but it would break 'exact compatibility' :)
[15:46:40] <Avenger> it would break moving to and from engines
[15:46:40] <fuzzie> i thought: i will hack the script in baldur.bcs, and then try running travel infopoint scripts before we call UseExit?
[15:46:48] <fuzzie> it is my best idea so far, but it sucks
[15:47:24] <Avenger> well, if you can hack the current system, without adding new actions/triggers, it is good.
[15:47:43] <Avenger> but don't forget, we can always add new actions/triggers now :)
[15:47:53] <Avenger> it is better than modifying the game data
[15:49:34] <Avenger> the best would be to add a bit to the travel trigger: protagonist only
[15:49:51] <Avenger> we could support this bit all over, but to hack it in, well, you could modify the game data
[15:50:05] <Avenger> but that bit would be invisible to the pst engine, unlike a script
[15:50:28] <Avenger> if you go with a script, then that game will be 'corrupted' for the original
[15:50:42] <lynxlynxlynx> why?
[15:50:44] <Avenger> if you use just an unused bit, it is fine
[15:50:56] <fuzzie> Avenger: well, 'bit 7' ('8' in DLTCEP) is actually set on this trigger!
[15:50:58] <Avenger> lynx: that script will be run by the original engine too
[15:51:05] <lynxlynxlynx> we support arbitrary global script names
[15:51:17] <fuzzie> Avenger: well, if the script doesn't exist, won't it silently fail?
[15:51:33] <Avenger> lynx: she wants to change a travel trigger script
[15:51:44] <Avenger> that means, it will be saved in the area
[15:51:54] <Avenger> what is bit 7 :)
[15:52:00] <fuzzie> well, no-one knows :)
[15:52:06] <fuzzie> maybe it's only used here, i didn't find any other uses
[15:52:21] <Avenger> but you found that it is hardcoded, no?
[15:52:31] <fuzzie> the 'remove all party members' behaviour is hardcoded, yes
[15:52:53] <fuzzie> i changed another travel trigger in the Mortuary to go to AR1800 entrance FR1700, and it also removed party members first
[15:54:03] <fuzzie> (i tried setting bit 7 first, it does nothing i can see)
[15:54:17] <Avenger> i guess we cannot use an unused field, because pst keeps memory garbage there
[15:55:14] <Avenger> what is exactly hardcoded in the engine?
[15:55:42] <Avenger> i mean, the strings?
[15:56:05] <fuzzie> 'AR1800' and 'FR1700'
[15:56:10] <fuzzie> you can change them and see
[15:56:26] <Avenger> ar1700d1?
[15:56:39] <fuzzie> no, i don't know what that is
[15:56:44] <fuzzie> it is the door i was talking about
[15:56:56] <fuzzie> but i didn't find what's hardcoded about it yet :)
[15:57:22] <fuzzie> maybe you can't close it, hm. i check.
[15:57:25] <Avenger> i see them. Ok. We could have a 2da?
[15:57:54] <Avenger> 2 columns for ar1800 and fr1700, and a script name to run
[15:58:00] <Avenger> that would be generic enough
[15:58:01] <fuzzie> i would like that
[15:58:07] <fuzzie> it helps for other things too
[15:58:22] <Avenger> it would be handled before using the entrance, in the correct place
[15:59:01] <fuzzie> ok. should i code it?
[15:59:03] <Avenger> ok, i think that is the safest. Just load the table permanently in memory
[15:59:06] <Avenger> yep
[15:59:09] <Avenger> if you can
[15:59:56] <Avenger> i swear i remember another place where using an exit triggered some function, no?
[16:00:07] <fuzzie> hm, no, ar1700d1 seems perfectly normal
[16:00:15] <fuzzie> yes, when leaving the mortuary
[16:00:19] <Avenger> ar1700d1 is something else
[16:00:25] <Avenger> i saw that string in the .exe :)
[16:00:32] <fuzzie> ar1700d1 is the door in front of the ar1800->fr1700 transition, the one with the dialog
[16:00:33] <Avenger> so, brace yourself :P
[16:00:43] <Avenger> well, it is special
[16:00:50] <fuzzie> but if i 'hack' gemrb's ARE loader to load the Dialog, it works fine in gemrb
[16:00:59] <fuzzie> i can't find any difference in behaviour at all
[16:01:17] <Avenger> i see
[16:01:25] <fuzzie> maybe some hardcoded behaviour checks whether the door is open, or something
[16:01:28] <fuzzie> it is nothing obvious, anyway
[16:01:31] <Avenger> well, and how did we fix the mortuary exit?
[16:01:47] <fuzzie> we fixed the mortuary exit by doing the check after the move
[16:01:51] <fuzzie> so the movie plays in the next area
[16:02:03] <Avenger> well, now it could be fixed more :)
[16:02:04] <fuzzie> it would be nice to fix that, so it plays before the Load screen, but it is just 'nice'
[16:02:10] <Avenger> yeah
[16:02:15] <Avenger> now i remember fully
[16:02:44] <Avenger> so we have 2 lines for that 2da in pst, good for tests
[16:03:44] <Avenger> and we kept it general enough, that's always good
[16:04:32] <fuzzie> i see three mentions of AR1800/FR1700, some AR0200/FR0201 and AR0206/FR0201 (those are mortuary exits), some AR3017/FR3502 also
[16:04:49] <fuzzie> so maybe we also have a third use
[16:04:51] <Avenger> hmm, i hope they are all the same
[16:05:13] <Avenger> i have a deja vu about this. once you? said, we will have trouble with these exits?
[16:05:28] <fuzzie> ar3017 is 'the dream world', i don't remember what this is
[16:05:39] <Avenger> the first one was easy, just a slight glitch in the mortuary
[16:06:28] <raevol> fuzzie: which chapter 6 showstoppers are you talking about in bg1?
[16:06:32] <Avenger> that's ravel's place
[16:07:06] <Avenger> or maybe not, but it looks like it
[16:07:12] <Avenger> it is too small for the ravel place
[16:07:24] <fuzzie> raevol: after elminster, the next area had problems, and then there were two crashes
[16:07:28] <fuzzie> raevol: should all be fixed
[16:07:30] <Avenger> maybe there is an exit in ravel's place to a small sub space
[16:07:43] <raevol> fuzzie: the palette crash on that area unload is fixed
[16:07:49] <raevol> as well as the dopplegangers
[16:08:13] <fuzzie> and doppleganger elminster, i hope
[16:08:24] <raevol> oh it wasn't when i checked before, i can check again though
[16:08:43] <Avenger> oh, this dream place is available from the godsman foundry
[16:08:50] <Avenger> i was never been there
[16:08:56] <fuzzie> ok. i guess there's probably something special about that exit, anyway.
[16:09:08] <fuzzie> i think with a 2da, we can surely handle anything
[16:09:10] <Avenger> maybe it drops the party members too
[16:09:19] <Avenger> dreams are personal :)
[16:09:34] <fuzzie> ah, yes, the dream machine thingie. ok.
[16:10:15] <fuzzie> raevol: i think everything i called 'chapter 6 showstopper' was after you last checked, i went from your doppelganger save, through the caves, back to Baldur's Gate to be sure :)
[16:10:28] <fuzzie> but then i got lost, i don't remember anything about bg1
[16:10:41] <raevol> ah ok cool
[16:10:42] <raevol> hahaha
[16:10:49] <Avenger> the journal didn't give any hints?
[16:11:02] <fuzzie> well, the journal said i had to go beat up Sarevok, i guess
[16:11:18] <Avenger> that is the iron throne building, maybe?
[16:11:23] <fuzzie> so i expect it wouldn't have been hard to work it out, i just didn't :)
[16:11:48] <fuzzie> yes, you meet sarevok's buddies in the caves which talk about meeting sarevok in the iron throne building, i just got lost
[16:11:52] <Avenger> i didn't play it for a long time either
[16:12:38] <Avenger> back in baldur's gate, somewhere in the sewers?
[16:12:52] <Avenger> i forgot :)
[16:12:59] <fuzzie> i am trusting raevol to work it out :p
[16:13:12] <raevol> oh snap elminster turned into a spellcasting doppleganger this time
[16:13:13] <raevol> awesome
[16:15:19] <Avenger> and he won't vanish :)
[16:21:40] <raevol> yes i killed him :D
[16:21:43] <fuzzie> Avenger: yes, that dream exit also just removes party members
[16:21:47] <fuzzie> so you're right :)
[16:21:59] <fuzzie> (again, i just changed a Mortuary exit to point there)
[16:22:16] <Avenger> hehe, that's a nice way to test it
[16:22:25] <Avenger> for our own change too
[16:22:36] <Avenger> so it is fully compatible
[16:28:18] <fuzzie> hm, now i wonder what we can do about the other strings
[16:29:18] <fuzzie> The maze is hopefully relatively simple, just some hard-coded list of infopoints/doors/etc that we have to fiddle with
[16:33:50] <fuzzie> heh, i guess the 'Familiars' list in DLTCEP's GAM editor is the beastiary from pst?
[16:35:13] <fuzzie> hm, DLTCEP doesn't like opening GAM files from places it can't write to, i guess
[16:37:41] <Avenger> for pst, probably
[16:38:09] <Avenger> recycled gui element ?
[16:40:05] <fuzzie> yes, i guess so
[16:42:02] <raevol> hmm fuzzie in that area with the dopplegangers an npc named Deder doesn't seemt o be following his script to leave the area and disappear
[16:43:01] <fuzzie> where is he?
[16:43:39] <raevol> he's in the middle of the area, if you travel north from the entrance you run into him
[16:43:56] <raevol> you talk to him and another guy, and i always tell them to leave me alone, but Deder doesn't leave
[16:46:45] <CIA-22> gemrb: 03avenger_teambg * r7373 10/gemrb/trunk/gemrb/plugins/ (AREImporter/AREImp.cpp Core/Map.h): named some unknown fields in spawn/rest headers
[16:49:30] <fuzzie> this is Avenger's EscapeArea changes, i guess
[16:49:45] <fuzzie> i'll try and fix it later
[16:49:49] <Avenger> hehe
[16:49:58] <fuzzie> but it shouldn't be 'harmful', the actor would just get destroyed :)
[16:50:15] <raevol> yea i just continued to the next area and he doesn't follow
[16:50:15] <Avenger> so it doesn't get destroyed?
[16:50:23] <fuzzie> Avenger: it doesn't make it to the exit, that is all
[16:50:40] <Avenger> i made something to avoid that, though
[16:50:43] <fuzzie> so someone has to write timeout code using CurrentActionState, either me or someone else
[16:50:54] <Avenger> movenearerto is hacked to not do releasecurrentaction
[16:51:49] <fuzzie> it does some funny hack with SetWait (which i need to remove!) and AddActionInFront, but it doesn't work
[16:52:11] <fuzzie> i don't know why, but i guess it needs fixing anyway
[17:03:59] <raevol> oh man there's a lot of fighting left that i have to do
[17:04:08] <raevol> i don't think my 2 person party is going to be up for it heh
[17:04:18] <raevol> ctrl+y it is i guess
[17:10:40] <fuzzie> Avenger: btw, the iwd end cutscene fails because the fx_death is applied instantly, so i guess another problem to be fixed with messages
[17:11:37] <Avenger> i think i got a permanent cutscene in iwd end with original game too :)
[17:11:45] <Avenger> if that's what happened
[17:12:00] <fuzzie> it happens too soon in gemrb :p
[17:12:42] <Avenger> what action is blocked by the death?
[17:12:59] <fuzzie> the cutscene actor is killed
[17:13:23] <fuzzie> so several of them, including EndCredits
[17:13:53] <fuzzie> we could 'fix' it with some hack, but then that fixes nothing else
[17:17:28] <Avenger> but actions shouldn't be stopped by death, most of them at least
[17:17:38] <fuzzie> death wipes the action queue
[17:17:46] <Avenger> maybe that is not correct
[17:17:50] <fuzzie> i'm pretty sure it is
[17:18:33] <fuzzie> i tested this in bg2 and iwd2, i think
[17:19:23] <fuzzie> you think that fx_death should be applied instantly?
[17:19:43] <fuzzie> should be easy to see from action code
[17:22:08] <raevol> hmm apparently ctrl+ying on sarevok too early makes you win too early...
[17:26:33] <raevol> k just avoiding him causes him to take enough damage from npcs that he leaves
[17:26:34] <raevol> coo
[17:27:27] <raevol> arg a thief in the thieves guild keeps talking to me with the same dialogue over and over
[17:27:34] <raevol> Narlen Darwalk
[17:29:11] <raevol> i can't do anything because he keeps chasing me around :( seems the game isn't setting him to "already talked to me"
[17:30:54] <lynxlynxlynx> you know the drill, area name, creature file, save game
[17:31:12] <raevol> gotcha
[17:34:04] <raevol> who should i send the save to?
[17:34:21] <lynxlynxlynx> fuzzie heh
[17:36:08] <fuzzie> yes, i guess me
[17:36:25] <raevol> http://pastebin.com/m2a4091e7
[17:36:31] <raevol> pastebin seems to be running slow...
[17:36:34] <raevol> email sent
[17:37:22] <raevol> has any work been done on the sight bug?
[17:37:42] <fuzzie> i didn't finish testing it, maybe i shoud
[17:38:11] <raevol> once the sight bug and the character portraits are fixed i'd love to get the game running at 1280x1024 and do a playthrough with no cheats
[17:38:34] <lynxlynxlynx> the character portraits?
[17:39:04] <raevol> yea, for a good number of the actions you take on the character portraits it selects the character below the one you actually click
[17:39:19] <raevol> like right clicking for inventory, and dropping items in the inventory to swap between characters
[17:39:25] <fuzzie> right, someone changed a bunch of those offsets and didn't change the rest
[17:39:43] <fuzzie> trying to sync with bg2, i assume
[17:39:57] <lynxlynxlynx> probably, i also noticed there was a +1 difference in the code
[17:43:52] <fuzzie> that Narlen thing is interesting
[17:44:15] <raevol> yea
[17:44:21] <fuzzie> did you break in or something?
[17:44:35] <raevol> well i was teleported in from the duchal palace
[17:44:37] <fuzzie> the dialog seems buggy if you're not a thief
[17:44:48] <raevol> ah i see
[17:47:02] <lynxlynxlynx> maybe the patches fixed it?
[17:47:21] <CIA-22> gemrb: 03lynxlupodian * r7374 10/gemrb/trunk/gemrb/plugins/Core/ (Actor.cpp ActorBlock.cpp): deselect party members if they panic or their ea changes (eg. from charm)
[17:47:58] <fuzzie> well, or maybe we don't know something about the format, i don't know
[17:50:52] <fuzzie> i'll check in real bg1 in a bit
[17:53:08] <fuzzie> raevol: is it game-breaking?
[17:53:26] <raevol> i don't think so, i could get out of the area if i kept at it
[17:53:38] <raevol> but it makes it really difficult, heh
[17:54:05] <fuzzie> pause, ctrl-t to teleport :p
[17:54:18] <raevol> ooh, ok
[18:01:44] <lynxlynxlynx> ctrl-t? Is it any better than ctrl-j?
[18:02:55] <fuzzie> erm, is it ctrl-j?
[18:02:57] <fuzzie> i'm kind of distracted
[18:03:11] <fuzzie> and it went into muscle-memory for me a long time ago
[18:03:26] <fuzzie> it would seem to be ctrl-j, so i delegate all further questions to lynxlynxlynx and go back to my testing
[18:04:25] <lynxlynxlynx> ;)
[18:04:32] <raevol> haha
[18:06:15] <pupnik> nice patch with deselecting
[18:09:31] <raevol> i gotta go do some stuff with my car, but i am past Narlen and in the maze now
[18:09:38] <raevol> talk to you guys soon
[18:15:48] <fuzzie> hm
[18:15:55] <fuzzie> ok, the thing is, Narlen's not meant to talk to you
[18:16:09] <fuzzie> the script has a See([PC.0.0.THIEF]) trigger
[18:16:21] <fuzzie> oh, i guess Imoen's a thief in raevol's save.
[18:17:29] <fuzzie> but in that case, InParty([0.0.0.THIEF]) should match
[18:17:52] <fuzzie> oh, sigh
[18:17:57] <fuzzie> our InParty trigger does GetActorFromObject
[18:19:18] <fuzzie> i guess it should be matching instead
[18:59:08] <-- lynxlynxlynx has left IRC (Remote closed the connection)
[19:21:59] --> |Cable| has joined #gemrb
[19:22:08] <-- |Cable| has left IRC (Client Quit)
[19:22:13] --> |Cable| has joined #gemrb
[19:22:35] <fuzzie> meh, no easy way to match an objectparameter against a scriptable?
[19:23:40] <fuzzie> Avenger: maybe you know how to fix it?
[19:24:03] <Avenger> matchactor?
[19:24:17] <fuzzie> well, it's very inefficient
[19:24:30] <fuzzie> i guess i should just hack the objectParameter and set the first entry to PC
[19:24:55] <Avenger> huh
[19:25:04] <Avenger> that doesn't sound right
[19:25:55] <fuzzie> MatchActor makes the whole list, so i might as well call GetAllObjects myself
[19:26:10] <fuzzie> but then, why not just hack the objectParameter? we only want PCs anyway
[19:27:09] <fuzzie> i guess because there's no actual InParty match, maybe there are weird EAs
[19:27:38] <fuzzie> so i just call GetAllObjects, check all targets, check for InParty. horrible.
[19:30:32] <fuzzie> ok, i wrote that.
[19:32:37] <Avenger> if you want only players, why not look in the game object?
[19:32:51] <fuzzie> because then i can't match against the object param
[19:33:08] <fuzzie> MatchActorr is a bad idea, it constructs a new Targets list every time and then checks every single entry
[19:33:17] <Avenger> i thought you want a constant object parameter, with pc :)
[19:33:34] <fuzzie> i have an objectParameter, and i need to check if a PC matches it :)
[19:33:53] <Avenger> oh
[19:35:55] <Avenger> you mean, you got an ea/race/gender/alignment .. no object filters?
[19:35:55] <fuzzie> you have a better way than GetAllObjects? i don't think there is one
[19:36:09] <Avenger> just targeting ids?
[19:36:14] <fuzzie> yes, just ids
[19:36:31] <Avenger> manually compare them to the pc's stats?
[19:37:11] <fuzzie> meh
[19:37:16] <fuzzie> this has to cope with object filters too
[19:39:24] <Avenger> for(i=0;i<MAX_OBJECT_FIELDS;i++) IDSFunction func = idtargets[j]; if (!func( (Actor *) (t->actor), oC->objectFields[j] ) ) { break; } <--- this would do the id targeting stuff
[19:40:02] <fuzzie> the original game only use named objects and id targetting, but mods seem to use filters too
[19:40:03] <Avenger> if you need object filters, then, add the actor to a target list
[19:40:56] <Avenger> look at static Targets* EvaluateObject(Map *map, Scriptable* Sender, Object* oC, int ga_flags)
[19:41:01] <fuzzie> i just see bugs happening here
[19:41:04] <Avenger> remove what you don't need from it
[19:41:15] <fuzzie> EvaluateObject will return Self
[19:41:22] <fuzzie> erm, Sender
[19:41:40] <fuzzie> so we probably fail to filter that all over the place
[19:41:41] <Avenger> ?
[19:42:39] <Avenger> hmm, there might be some problem with nearest... and such
[19:42:52] <Avenger> self is never 'seen', or being 'nearest...'
[19:43:09] <Avenger> 'myself' cannot be a lot of stuff
[19:43:23] <fuzzie> i think ids targetting never returns Sender, some of the object filters do
[19:43:28] <fuzzie> anyway, that is some different bug, mostly
[19:43:35] <Avenger> yes, i guess
[19:43:54] <fuzzie> do you have any luck with spawns?
[19:43:56] <Avenger> most stuff cannot return it, MySelf is probably the only thing :)
[19:44:13] <Avenger> no, i just clarified the fields
[19:44:19] <fuzzie> some other filters return it, at least in some games
[19:44:33] <fuzzie> i never finished working it out exactly
[19:45:02] <Avenger> i didn't test this, i just vaguely recall what i read
[20:06:11] <fuzzie> i have other problems, i guess
[20:10:44] --> tombhadAC has joined #gemrb
[20:13:14] <fuzzie> oh, damn
[20:13:23] <fuzzie> does gemrb even support named ids?
[20:14:01] <fuzzie> ugh, it just runs ParseInt on each field
[20:16:43] <fuzzie> huh, no, it calls GetIdsValue
[20:16:47] <fuzzie> meh, i wonder what i do wrong
[20:24:07] <fuzzie> so gemrb's ids parsing has been broken forever
[20:24:12] <fuzzie> sigh
[20:25:53] <CIA-22> gemrb: 03fuzzie * r7375 10/gemrb/trunk/gemrb/plugins/Core/GSUtils.cpp: fix ParseIdsTarget
[20:29:37] <fuzzie> problem fixed without needing to mess with InParty, i guess
[20:31:55] <Avenger> huh that seems like a big problem, how it worked at all :)
[20:34:16] <Avenger> how any scripting worked, i wonder
[20:34:29] <fuzzie> well, it was only in the GenerateAction code
[20:34:35] <Avenger> aah
[20:34:36] <Avenger> ok
[20:34:45] <fuzzie> so it only breaks for dialogs :)
[20:34:49] <Avenger> and dialogs?
[20:34:51] <Avenger> yeah
[20:35:31] <Avenger> i'm happy you find and mercilessly kill all bugs :)
[20:37:16] <Avenger> i now see a chance to actually finish this code in my lifetime
[20:41:34] <fuzzie> well, when there are only bugs left, i hope we'll have an army of testers :)
[20:56:16] --> tombhad-AC has joined #gemrb
[20:56:50] <-- tombhadAC has left IRC (Read error: 113 (No route to host))
[22:08:55] <Avenger> bye
[22:08:58] <-- Avenger has left IRC ("bye!")
[22:43:50] <fuzzie> i documented worlde/death vars, and asked about pst ARE door data, on forum
[22:55:39] <fuzzie> and devSin has informed about the pst ARE door data
[23:06:46] <raevol> fuzzie: that parseIds fix for Narlen or whatever his name was? or that something else?
[23:08:13] <fuzzie> raevol: that was for Narlen, yes
[23:08:28] <raevol> sweet i'll test it
[23:11:07] <raevol> yup seems to have fixed it
[23:11:10] <fuzzie> :)
[23:11:10] <raevol> :D sweet
[23:11:44] <fuzzie> your bug reports have been great, all these things i can fix
[23:11:58] <raevol> hahaha, glad to be of service
[23:21:59] <raevol> hmm, i thought there was an autopause function for when a trap is found
[23:22:02] <raevol> guess not
[23:22:23] <fuzzie> oh?
[23:22:30] <fuzzie> there's definitely support in gemrb
[23:22:39] <raevol> don't see it in the menu, maybe it's in bg2?
[23:23:42] <fuzzie> hm, guess so
[23:23:50] <fuzzie> you can cheat and configure it manually, i guess
[23:24:10] <raevol> hehe
[23:25:06] <raevol> car's ready yay, ttys guys
[23:25:11] <fuzzie> "Auto Pause State" in your baldur.ini, got to add bit 8, so 256 :) bye!
[23:25:18] <raevol> ah ok cool
[23:25:20] <raevol> i'll do that :D
[23:25:23] <raevol> lates
[23:25:23] <fuzzie> i've really got to sleep now, night
[23:25:27] <raevol> night haha
[23:38:55] <-- Darki has left IRC ()
[23:44:56] --> Gekz has joined #GemRB