#gemrb@irc.freenode.net logs for 2 Jul 2010 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:00:28] <-- CIA-23 has left IRC (*.net *.split)
[00:00:28] <-- Edheldil has left IRC (*.net *.split)
[00:00:28] <-- Lightkey has left IRC (*.net *.split)
[00:11:52] --> CIA-23 has joined #GemRb
[00:11:52] --> Edheldil has joined #GemRb
[00:11:52] --> Lightkey has joined #GemRb
[00:14:13] --> budlust has joined #GemRb
[00:14:17] <-- budlust has left #GemRb
[00:19:56] <-- Lightkey has left IRC (Ping timeout: 248 seconds)
[00:20:32] --> Lightkey has joined #GemRb
[00:37:05] <-- Edheldil has left IRC (Ping timeout: 248 seconds)
[00:37:05] --> Edheldil has joined #GemRb
[00:37:59] --> _pickle has joined #GemRb
[00:44:55] <-- Gekz has left IRC (Read error: Connection reset by peer)
[00:46:29] --> raevol has joined #GemRb
[00:52:20] --> Gekz has joined #GemRb
[01:07:25] <-- _pickle has left IRC (Remote host closed the connection)
[01:11:05] <-- Edheldil has left IRC (*.net *.split)
[01:11:05] <-- CIA-23 has left IRC (*.net *.split)
[01:22:48] --> Edheldil has joined #GemRb
[01:22:48] --> CIA-23 has joined #GemRb
[01:24:55] --> tomprince_loki has joined #GemRb
[01:35:12] <tomprince_loki> That is why I wanted to move the pragmas to a header file that is included on the command line, so that they are everywhere.
[03:59:42] --> Gekz_ has joined #GemRb
[05:01:09] <-- Gekz_ has left IRC (Read error: Connection reset by peer)
[05:01:30] --> Gekz_ has joined #GemRb
[05:19:05] <-- raevol has left IRC (Ping timeout: 276 seconds)
[05:20:04] --> raevol has joined #GemRb
[05:40:36] <-- Gekz_ has left IRC (Read error: Connection reset by peer)
[05:41:20] --> Gekz_ has joined #GemRb
[06:04:24] <-- Gekz_ has left IRC (Read error: Connection reset by peer)
[06:04:49] <-- Gekz has left IRC (Read error: Connection reset by peer)
[06:05:02] --> Gekz has joined #GemRb
[06:05:15] --> Gekz_ has joined #GemRb
[06:19:51] <-- raevol has left IRC (Quit: Leaving.)
[06:22:58] <-- |Cable| has left IRC (Remote host closed the connection)
[06:50:01] <-- tomprince_loki has left IRC (Ping timeout: 260 seconds)
[06:52:01] <-- Gekz_ has left IRC (Read error: Connection reset by peer)
[06:52:10] <-- Gekz has left IRC (Read error: Connection reset by peer)
[06:52:14] --> Gekz has joined #GemRb
[06:52:44] --> Gekz_ has joined #GemRb
[07:09:38] --> miles___ has joined #GemRb
[07:11:36] <-- miles___ has left IRC (Client Quit)
[07:12:19] --> miles___ has joined #GemRb
[07:13:04] <-- miles___ has left IRC (Client Quit)
[07:13:42] --> miles___ has joined #GemRb
[07:15:50] <-- miles___ has left IRC (Client Quit)
[07:16:19] --> budlust has joined #GemRb
[07:17:33] <-- Gekz has left IRC (Read error: Connection reset by peer)
[07:17:35] --> Gekz has joined #GemRb
[07:18:31] <-- Gekz_ has left IRC (Read error: Connection reset by peer)
[07:18:45] --> Gekz_ has joined #GemRb
[07:26:16] <budlust> ;3~
[07:27:23] <-- budlust has left IRC (Quit: leaving)
[07:33:07] <Edheldil> fuzzie: ie_shell can be sped up, at least the startup. Just do restore(), if you did save() before
[07:47:48] --> lynxlynxlynx has joined #GemRb
[07:47:49] --- ChanServ gives channel operator status to lynxlynxlynx
[07:56:33] <CIA-23> GemRB: 03lynxlupodian * r63f48b4ec1f2 10gemrb/gemrb/GUIScripts/bg2/GUIREC.py:
[07:56:33] <CIA-23> GemRB: bg2: fix guirec for specialist mages
[07:56:33] <CIA-23> GemRB: thanks Pafnoutios
[08:02:13] <-- Gekz has left IRC (Read error: Connection reset by peer)
[08:04:22] <-- Gekz_ has left IRC (Read error: Connection reset by peer)
[08:04:45] --> Gekz_ has joined #GemRb
[08:40:14] <Edheldil> pupnik: are you here?
[08:40:41] <pupnik> hello yes
[08:41:14] <pupnik> @ Edheldil
[08:46:03] <fuzzie> Edheldil: hm, interesting
[08:46:42] <Edheldil> it speeds up loading considerably :)
[08:47:10] <Edheldil> and possibly the overall speed could be enhanced with psyco, but I haven't tried that
[08:49:53] <fuzzie> that sounds like what i want, i will try it :)
[08:50:07] <fuzzie> where is it maintained now, svn or git?
[08:53:11] <Edheldil> git
[08:53:20] <Edheldil> first project to migrate :-P
[09:05:45] <-- Gekz_ has left IRC (Ping timeout: 240 seconds)
[09:07:55] <fuzzie> ok. i think it's going to be another of these days i spent melting :(
[09:08:39] <fuzzie> mm, heading towards 31C already
[09:15:07] <Edheldil> hehe, I prefer lower temp as well. And I do not mind rain and thunderstorm as long as I do not have to go out
[09:16:11] <fuzzie> i am ok with rain and thunderstorm too :)
[09:16:37] --> Gekz has joined #GemRb
[09:19:59] <Lightkey> queue Garbage
[09:21:54] <fuzzie> ok.
[09:23:30] <Lightkey> wat
[09:24:25] <fuzzie> well, i put Only Happy When It Rains on, i think other people here are appreciating it too :)
[09:24:37] <fuzzie> it seemed appropriate :p
[09:26:33] <fuzzie> i wonder how many songs there are along a similar theme, maybe i could collect a playlist
[09:27:12] <fuzzie> these 'bg1 area connection fields' in the comment which lynx noted are in IESDP as the areas to the north/east/south/west, i wonder what they're for :|
[09:28:09] <fuzzie> someone should make summoning thoughts in Avenger's direction
[09:28:57] <fuzzie> i'm wondering about other ways we might corrupt savegames
[09:29:13] <fuzzie> the scrolls turn out not to be a problem, i guess, because we can auto-correct them on load
[09:29:53] <fuzzie> although i have yet to work out what's stopping the engine from magically refilling empty wands at load time, so maybe not
[09:37:15] <fuzzie> got to stop eating infopoint data, maybe
[09:39:06] <Edheldil> fuzzie: you know I have a collection of iwd2 saves from the original engine, right?
[09:39:19] <fuzzie> hmm
[09:39:56] <fuzzie> things like 000000104-lenka and 000000059-54xx?
[09:40:43] <fuzzie> those are lurking in my save directory, i guess gemrb is trying to use mpsave
[09:41:47] <fuzzie> but i think trying to fix iwd2 would drive me a bit mad
[09:43:31] <Edheldil> yes, those are mine. Better than finding out what a previous version gemrb did wrong to those saves :)
[09:43:51] <fuzzie> i have a list of what the *current* version of gemrb does wrong to iwd2 saves :(
[09:44:33] <fuzzie> but yes, all the savegames are appreciated
[09:44:39] <fuzzie> what i really want is another set of bg2 saves
[09:44:44] <fuzzie> but wjp's are pretty good
[09:57:11] <lynxlynxlynx> i have some, but they're all from modded games
[10:00:02] <-- Gekz has left IRC (Read error: Connection reset by peer)
[10:00:57] --> Gekz has joined #GemRb
[10:02:12] --> Gekz_ has joined #GemRb
[10:07:58] <Edheldil> I wrote my friend, he used to play them a lot, so maybe he still has some saves
[10:15:15] <fuzzie> tomprince: the trouble is, now you broke it for Avenger, and moving it to a header file just seems like it makes Avenger's life more complicated while not actually fixing anything, and i thought we'd stopped doing that
[10:22:09] <fuzzie> and gemrb is kind of doomed without Avenger's knowledge
[10:22:25] <fuzzie> but i am going to go melt with ice cream now, will be around
[10:56:38] --> SiENcE has joined #GemRb
[11:35:29] <lynxlynxlynx> heh
[11:35:47] <lynxlynxlynx> trying elle's room, everything was charged properly
[11:36:11] <lynxlynxlynx> but this game originated from an original save
[11:36:40] <lynxlynxlynx> so i guess i should try anew
[11:38:41] <fuzzie> yes
[11:38:53] <fuzzie> it gets rewritten when the are is first 'properly' loaded, it seems
[11:39:39] <fuzzie> but, i mean, no-one fixed it yet, so bit pointless trying it :)
[11:40:18] <lynxlynxlynx> i'm just checking that fishy roll
[11:40:26] <lynxlynxlynx> so far no problems
[11:41:24] <fuzzie> oh, right
[11:41:31] <fuzzie> i added an assert in there and couldn't trigger it
[11:41:38] <fuzzie> but i didn't try very much
[11:45:38] <fuzzie> but i guess maybe the roll does stupid things with charged items? i have no idea
[11:46:34] <lynxlynxlynx> the <1 checks trigger a lot, but not always
[11:46:50] <lynxlynxlynx> misc07 got 9 charges
[11:47:12] <lynxlynxlynx> oh, that's gold :)
[11:47:37] <fuzzie> maybe the <1 check shouldn't be there
[11:48:02] <fuzzie> and we should take the "copy from item headers" path there instead
[11:51:16] <lynxlynxlynx> there's another messaging bug - subareas should not display any messages from the master area
[11:51:28] <lynxlynxlynx> it is very obvious in saradush
[11:55:59] <fuzzie> that's the pirate town?
[11:56:04] <fuzzie> oh, no, ToB?
[11:57:46] <lynxlynxlynx> yeah
[11:57:54] <lynxlynxlynx> got some loot with potions
[11:58:14] <lynxlynxlynx> they have 0 charges shown in the inventory, but i was able to drink them nonetheless
[12:00:50] <-- Gekz has left IRC (Ping timeout: 248 seconds)
[12:05:32] --> Gekz has joined #GemRb
[12:08:51] <lynxlynxlynx> yikes, it persists in the pocket plane too
[12:09:42] <lynxlynxlynx> the wand that i found was charged too, 5
[12:10:16] <lynxlynxlynx> argh, couldn't restore party member 3!
[12:12:52] <lynxlynxlynx> gulp
[12:31:12] <fuzzie> lost a party member?
[12:32:57] <lynxlynxlynx> sometime before, but he was resurrected
[12:33:05] <lynxlynxlynx> a freshly recruited one could get out
[12:33:35] <lynxlynxlynx> when retrying i got stuck in the cutscene on pp exit, gemrb eating all my cpu
[12:35:12] <fuzzie> ok
[12:35:42] <fuzzie> i have my sysadmin hat on, but good thing to look at later
[12:58:10] --> edheldil_ has joined #GemRb
[13:02:59] <-- edheldil_ has left IRC (Client Quit)
[13:05:00] --> pupnik_ has joined #GemRb
[13:08:41] <-- pupnik has left IRC (Ping timeout: 265 seconds)
[13:15:57] --> tomprince_loki has joined #GemRb
[13:46:09] <-- SiENcE has left IRC (Quit: @all: cya)
[14:00:08] --> budlust has joined #GemRb
[14:03:13] <fuzzie> ok, hi
[14:03:46] <fuzzie> lynxlynxlynx: do you have a reproduction recipe for the pocket plane thing?
[14:04:22] <lynxlynxlynx> mope
[14:08:31] <fuzzie> ok. i was hoping to borrow a windows machine now, but apparently there's a football match on, so not much cooperation there right now
[14:08:52] <lynxlynxlynx> heh
[14:09:47] <fuzzie> about keybindings: i wonder if we could get someone to mod a pst-style keybindings chu for the other games?
[14:10:24] <lynxlynxlynx> probably
[14:10:37] <fuzzie> i don't know if that's a crazy idea, but it seems maybe the easiest solution
[14:12:01] <fuzzie> no point looking into it before pst works though.
[14:14:21] <fuzzie> and the trouble with the wands/potions/etc is that individual examples aren't that helpful because there's so many different paths they can go through
[14:15:05] <fuzzie> it probably makes sense just to change everything, and then go through and look at any remaining differences from original savegames using ie_shell or similar
[14:16:02] <-- budlust has left IRC (Quit: Lost terminal)
[14:25:36] <tomprince_loki> fuzzie: I certainly don't want to make things harder on Avenger. That is why I set up the buildbot, and why I make sure that it builds on msvc6, and am willing to make sure that cmake works well with msvc6.
[14:26:55] <fuzzie> yes, i'm just frustrated about it
[14:27:46] <fuzzie> refactoring things is always a nightmare of lost productivity for any project
[14:28:55] <tomprince_loki> That was never my intention.
[14:29:02] <fuzzie> but it is inevitable
[14:29:41] <fuzzie> when you refactor things, there are always new bugs, unforseeable issues, people having build problems
[14:29:55] <fuzzie> i just thought we'd fixed all these issues
[14:30:04] <fuzzie> for now, i mean
[14:32:55] <-- Gekz has left IRC (Changing host)
[14:32:55] --> Gekz has joined #GemRb
[14:33:57] <fuzzie> i'm sure this store screen hgihlighting wasn't so broken before, too
[14:34:43] <lynxlynxlynx> it was
[14:37:59] <fuzzie> it is crazy
[14:45:49] --> maighstir|phone has joined #GemRb
[14:52:47] <-- maighstir|phone has left IRC (Quit: buh-bye)
[14:58:10] --- ChanServ gives channel operator status to fuzzie
[15:05:22] <fuzzie> all of this is crazy
[15:05:43] <fuzzie> why does EnableBorder lead to the whole button being tinted?
[15:06:33] <lynxlynxlynx> the last parameter to one of the button function handles the ratio of the overlay
[15:12:07] <fuzzie> this is weird
[15:12:30] <fuzzie> highlighting on the sell buttons seems to only work for the first button
[15:12:36] <fuzzie> and that button *is* different in the CHU
[15:13:52] <fuzzie> but DLTCEP claims that the only difference is the disabled sprite
[15:19:44] <fuzzie> maighstir did mention that DLTCEP seemed to have disabled/selected the wrong way around..
[15:22:07] <fuzzie> so i guess the chu is just bad
[15:22:18] <fuzzie> will have to ask Avenger
[15:38:23] --> budlust has joined #GemRb
[15:38:55] <-- budlust has left IRC (Client Quit)
[15:42:07] <Edheldil> but enableborder should be independent of chu, it just draws rectangle
[15:42:34] <fuzzie> yes
[15:42:40] <fuzzie> but it confuses me
[15:42:43] <Edheldil> it just needs control's rectangle
[15:42:57] <fuzzie> because the rectangles around the bought/sold items are actually BAM indexes, in the CHU file
[15:43:18] <fuzzie> and the 'borders' mentioned in the code are not borders at all, they're overlaid tinted rectangles! :)
[15:44:17] <Edheldil> if the rectangle is empty, it's a border :)
[16:27:51] --> Avenger has joined #GemRb
[16:28:07] <fuzzie> Avenger: are disabled/selected the wrong way around in DLTCEP's GUI?
[16:28:08] --- ChanServ gives channel operator status to Avenger
[16:28:10] <Avenger> hi
[16:28:22] <Avenger> ?
[16:28:26] <fuzzie> sorry, context: for CHU buttons
[16:29:04] <fuzzie> the struct has them in the right order, but i don't know how the GUI works
[16:30:33] <Avenger> i don't know, i suppose it is not always used the same way
[16:30:54] <Avenger> for normal buttons, i think it is the right order
[16:31:28] <fuzzie> well, i looked everywhere i could, and the UI seems to have them always reversed
[16:31:38] <fuzzie> i mean, DLTCEP's UI
[16:33:19] <Avenger> yes, it could be
[16:33:37] <Avenger> but i came in to ask something
[16:33:47] <Avenger> how window.Unload works?
[16:33:57] <Avenger> Do you need to set Window to None?
[16:34:04] <Avenger> after unload
[16:34:21] <fuzzie> well, after unload, the object is invalid
[16:34:24] <Avenger> because after leaving bg1 custom portraits it breaks
[16:34:32] <Avenger> it remains an object
[16:34:43] <Avenger> Window: <GUIClasses.GWindow object at 0xa33088>
[16:34:45] <Avenger> Unload Window: <GUIClasses.GWindow object at 0xa33088>
[16:34:45] <fuzzie> yes
[16:34:57] <fuzzie> but, i mean, that's just a python-side thing
[16:35:02] <fuzzie> you shouldn't be reusing a window which you unloaded
[16:35:06] <Avenger> but this is wrong, because code like if (Window): window.Unload() it breaks
[16:35:17] <Avenger> i used to add window = None
[16:35:20] <fuzzie> but you don't necessarily have to set it to None
[16:35:33] <Avenger> but it seems to be removed a lot of places, and it doesn't break sometimes
[16:35:35] <fuzzie> you just have to find some way to make sure code doesn't use the worng windows
[16:35:55] <Avenger> well, it is trivial to set it to None if you already got code like the above!
[16:35:58] <fuzzie> sure
[16:36:12] <fuzzie> but often it's completely unnecessary
[16:36:14] <Avenger> couldn't Unload do this automagically?
[16:36:20] <fuzzie> you just need it for the stupid hacks which mess with PortraitWindow, etc
[16:36:27] <Avenger> not just that
[16:36:39] <Avenger> as i said, leaving custom portraits in bg1 breaks
[16:36:49] <fuzzie> i mean
[16:36:53] <fuzzie> that is a bug in the python code, though
[16:37:04] <Avenger> the gui script?
[16:37:06] <fuzzie> why is it unloading a window which is still in use?
[16:37:18] <fuzzie> if it's not in use any more, why does something try using the object afterwards?
[16:37:23] <Avenger> to close it
[16:37:40] <Avenger> to reopen it
[16:37:44] <Avenger> i guess
[16:38:14] <fuzzie> you can't make window.Unload() change window to None, because window is just some variable
[16:38:28] <fuzzie> but we could fix it so that if you try using window afterwards, it tells you that your code is broken
[16:38:41] <Avenger> ok, maybe i will try to not unload it
[16:38:44] <fuzzie> that would be helpful?
[16:38:51] <tomprince_loki> And we could probably make it so that it behaves as false in a boolean context.
[16:39:15] <Avenger> but bg2 unloads it!
[16:39:30] <fuzzie> well, we could just fix the python code so it does the right thing
[16:39:47] <Avenger> yep, unload window should return false
[16:39:49] <fuzzie> at the moment the python code for this stuff is so awful
[16:40:06] <fuzzie> if you unload a window, you should be done with it, the variables should be irrelevant, surely
[16:40:24] <fuzzie> it's just that the python code tries keeping state by tracking the window variables
[16:40:41] <fuzzie> and if it's really that confusing, it shouldn't be doing that
[16:41:10] <fuzzie> and adding more magic just makes it worse, papering over bad python code
[16:42:40] <fuzzie> and i know no-one wants to fix it right now, but it's really got to be done at some point
[16:44:14] <-- Gekz has left IRC (Quit: This computer has gone to sleep)
[16:44:31] <CIA-23> GemRB: 03avenger_teambg * r909b234c686b 10gemrb/gemrb/GUIScripts/bg1/GUICG12.py: probably fixed returning from custom portraits (CG needs to be synced up with bg2)
[16:44:53] <fuzzie> i guess this is even more of a mess after lynx's import changes
[16:45:08] <Avenger> well, i don't mind if it gets set to None or returns false, i would prefer setting it to None, because that frees up any reference
[16:45:31] <Avenger> the current behavior is the worst option
[16:45:39] <fuzzie> well, maybe returning false *and* producing big red errors if you try using it, for now
[16:46:04] <Avenger> yes, it would produce big red errors if you try to use it :)
[16:46:06] <fuzzie> but this is not the fault of Unload(), this code just needs replacing
[16:46:38] <fuzzie> no objection to papering over the bad code, but it's not good code..
[16:46:55] <Avenger> that is the easiest, i guess, our scripts are very good at producing big red errors
[16:47:30] <Avenger> my problem is that the implementations of the same stuff are totally different, however i try to sync them up
[16:47:44] <Avenger> and i do this for years now
[16:48:20] <Avenger> it is really good that tob and how are gone
[16:49:57] <Avenger> Traceback (most recent call last):
[16:49:59] <Avenger> File "./GUIScripts/bg1/GUICG22.py", line 133, in NextPress
[16:50:01] <Avenger> GemRB.SetPlayerStat (MyChar, IE_KIT, Kit)
[16:50:02] <Avenger> AttributeError: SetPlayerStat(Slot, ID, Value)
[16:50:07] <Avenger> what's wrong with this?
[16:50:49] <Avenger> maybe the value is not an int?
[16:51:23] <Avenger> haha, i tried to set a dwarf to specialist mage
[16:51:42] <fuzzie> 'Kit' is probably None, i would uess
[16:51:44] <fuzzie> guess
[16:52:08] <fuzzie> but i thought that worked, i did test it
[16:52:34] <Avenger> in bg1?
[16:52:40] <fuzzie> yes
[16:52:43] <Avenger> the specialist mage button is enabled when the mage isn't
[16:52:48] <fuzzie> hm :<
[16:52:50] <Avenger> that's already a bug
[16:53:03] <Avenger> hmm maybe you fixed it, but lynx's branch broke it?
[16:54:09] <Avenger> how disables the button correctly
[16:54:48] <fuzzie> but no answer on DLTCEP? :)
[16:55:12] <fuzzie> i will look into the button if you want, i don't think lynx's branch would have broken it, but maybe i did
[16:56:20] <Avenger> i said it is possible
[16:59:05] <Avenger> in guicg2 the Allowed variable isn't checked
[17:00:05] <Avenger> hmm, in iwd/how it is set as Allowed = GUICommon.ClassTable.GetValue ("MAGE", RaceName)
[17:01:02] <Avenger> i think i fixed it
[17:03:09] <CIA-23> GemRB: 03avenger_teambg * r0aa145e29280 10gemrb/gemrb/GUIScripts/bg1/GUICG2.py: don't allow dwarves to try to pick specialist mage
[17:14:45] <tomprince_loki> Finally implemented looking at relative path based on the executable. (or.cz/relative, http://repo.or.cz/w/gemrb.git/shortlog/refs/heads/relative)
[17:15:17] <tomprince_loki> Should probably really do something more intelligent with the paths, like using the original and relative paths both.
[17:15:38] <fuzzie> needs an #ifdef BINDIR?
[17:16:27] <tomprince_loki> ... probably.
[17:16:36] <fuzzie> bit complicated to review now though, bit busy
[17:17:28] <tomprince_loki> When you have a chance. Although most of it is just the code from gcc.
[17:17:44] <tomprince_loki> And I am away not mostly.
[17:18:42] <tomprince_loki> Also, it does handle moving of libgemrb_core.so, since that is ld.so level, and it is over and done with by the time we can do anything about it.
[17:20:08] <-- tomprince_loki has left #GemRb
[17:32:03] <Avenger> fuzzie what should i do with the dltcep button states? Replace the text, or swap the input controls ?
[17:34:52] <Avenger> a third alternative: swap their data source
[17:35:25] <Avenger> it looks like their captions are in the right order
[17:35:37] <Avenger> so option #1/2 are not good
[17:53:10] <-- Avenger has left IRC (Quit: bye!)
[18:06:52] <fuzzie> hmm, weird
[18:15:45] <fuzzie> too warm to think about it
[19:00:46] <Lightkey> it is *still* 30
[19:00:53] <Lightkey> C
[19:01:03] <Lightkey> weird key combo
[19:01:22] <Lightkey> how do I shot web?
[19:02:05] <Lightkey> and how do I get the characters on the top right of the keys on a USA keyboard?
[19:02:16] <Lightkey> there is no AltGr
[19:09:30] <fuzzie> so, ok, my plan is to make a brand-new Baldur's Gate 2 install on someone's machine and play it over the weekend
[19:09:41] <fuzzie> with the original engine
[19:10:03] <fuzzie> are there any mods i should really have installed?
[19:10:08] <fuzzie> maybe tomprince is the one to ask
[19:10:40] <fuzzie> going to have to work out how to install Windows on something first, anyway
[19:11:12] <fuzzie> after everyone turns out to be Linux users
[19:26:01] <pupnik_> heh
[19:26:13] <pupnik_> courage
[19:27:25] --> Avenger has joined #GemRb
[19:27:27] --- ChanServ gives channel operator status to Avenger
[19:27:38] <Avenger> do we support multiple cd paths?
[19:28:08] <pupnik_> in the config i see them
[19:28:26] <pupnik_> oh nm
[19:31:21] <Avenger> i see it in the original config, sure, but it doesn't appear to work for me
[19:31:58] <Avenger> i didn't even realize it has any use until now :)
[19:36:52] --> |Cable| has joined #GemRb
[19:42:31] <fuzzie> multiple cd paths?
[19:44:30] <Avenger> yes
[19:44:50] <Avenger> CD1:=E:\BG2\English\;E:\BG2\CD1\
[19:45:03] <fuzzie> huh
[19:45:08] <fuzzie> we don't support that, i'm pretty sure
[19:45:15] <Avenger> we should :)
[19:45:26] <fuzzie> well
[19:45:36] <fuzzie> we don't support game-on-cd anyway
[19:46:04] <Avenger> yes, but actually, this is not on cd
[19:46:12] <Avenger> this is a full install, of localized version
[19:46:13] <fuzzie> and i'm not sure what use it would be otherwise
[19:46:25] <fuzzie> i mean, what does it do?
[19:46:30] <fuzzie> just adds to the search path?
[19:46:31] <Avenger> the localized movies are on the english path
[19:46:33] <Avenger> yes
[19:47:00] <Avenger> first it looks on the english path, if it is found, good, if not, looks on the other path
[19:47:18] <fuzzie> and you need it for every CD?
[19:47:35] <fuzzie> or is it enough just to have some E:\BG2\English searched first?
[19:47:41] <Avenger> well, yes, but i didn't edit it manually
[19:48:01] <Avenger> why not support the original protocol
[19:48:02] <fuzzie> well, gemrb doesn't read CD paths from the original ini anyway, i thought
[19:48:24] <Avenger> i know
[19:48:45] <Avenger> but 1. it could, 2. even if it doesn't it is easier to copy it to our config
[19:49:10] <fuzzie> well, i think we have two Windows users, and one is you :P
[19:49:15] <Avenger> even if you need to edit it, it is easier to instruct the user if it is using the original protocol
[19:49:20] <fuzzie> but maybe
[19:49:20] <pupnik_> minemine has cd2, cd3, cd4 and data and English and other dirs - not all cds though
[19:49:36] <fuzzie> i mean, it is difficult to know what it's doing
[19:49:44] <Avenger> difficult?
[19:49:46] <fuzzie> what happens if the game is on CD?
[19:49:56] <Avenger> not difficult at all
[19:50:01] <fuzzie> or you just have some version which forces the install to the hard disk?
[19:50:14] <Avenger> i have a full install
[19:50:23] <Avenger> not game on cd
[19:50:31] <fuzzie> yes, but this presumably has to also work for game on cd
[19:50:45] <Avenger> but a game on cd version would obviously ask for cd<x> if it didn't find the file in any other way
[19:50:48] <fuzzie> i just wonder, exactly what order the search paths are in
[19:50:58] <Avenger> as they appear in the ini
[19:51:05] <Avenger> first the english in my case
[19:51:53] <fuzzie> there are only BIF files?
[19:51:56] <Avenger> to be honest, i don't really care about partial installs atm, but i agree we should implement it for the sake of completeness
[19:52:24] <Avenger> well, i guess, in case of iwd2 there are standalone movies too
[19:52:27] <Avenger> not biffed
[19:52:44] <Avenger> why?
[19:52:44] <fuzzie> but then which order do we search for those in?
[19:52:53] <fuzzie> start with all the paths in CD1, and then all in CD2, and then etc?
[19:53:00] <Avenger> yes
[19:53:19] <Avenger> hmm, maybe you don't know one important bit of info :)
[19:53:43] <fuzzie> well, no-one implemented the CD magic for KEY files in gemrb properly yet
[19:53:45] <Avenger> all the bifs are marked as to which cd contains them
[19:53:51] <fuzzie> it doesn't work
[19:54:00] <Avenger> i know, it was easier to look on all :)
[19:54:06] <fuzzie> so we can't just magically add CD paths and it works, is what i mean
[19:54:25] <Avenger> why not
[19:54:27] <pupnik_> baah
[19:54:34] <fuzzie> because the CD locator in the BIFs is not used
[19:54:39] <fuzzie> so we don't know where to look
[19:55:05] <fuzzie> you have to fix that first
[19:55:44] <fuzzie> well, i guess you probably don't, for your situation
[19:56:01] <fuzzie> if you search the CDs in order, it still works fine, i guess, because English is first?
[19:56:27] <fuzzie> if that is true, then that is easy to fix
[19:57:08] <Avenger> yes
[19:57:57] <Avenger> did i already say i don't really care about partial installs (they are good to have, though)
[19:58:11] <Avenger> localized installs are probably different :)
[19:58:13] <fuzzie> sure
[19:58:27] <fuzzie> but it could still be a problem for localized installs
[19:59:04] <fuzzie> but not if they're all in that simple format where we can simply search in order
[19:59:46] <Avenger> KEYImporter.cpp" line 82
[19:59:54] <Avenger> it seems to use the resource locator
[19:59:55] <fuzzie> that is broken
[20:00:03] <fuzzie> which is why it's wrapped in the core->GameOnCD check
[20:00:27] <fuzzie> well, maybe tomprince fixed it, actually, while refactoring
[20:00:37] <fuzzie> but it's not used normally, anyway
[20:01:03] <fuzzie> the actual code used is on line 107
[20:01:17] <fuzzie> you could make core->CD[i] into a vector of strings, was my thought
[20:01:36] <fuzzie> that would be easy to do, and work for your case without any more work needed
[20:03:14] <fuzzie> we should *really* fix the KEYImporter to keep bif files open
[20:03:46] <fuzzie> i try using that code on line 82 and it makes things yet ridiculously slower :(
[20:07:30] <fuzzie> no surprise because of the lookup cost, but it's really silly when we only use a few files to load a game
[20:08:02] <fuzzie> just some "keep bif files open" flag before loading a game/area and a "finished with bif files now" when finished would be enough, no?
[20:09:31] --> Maighstir_laptop has joined #GemRb
[20:14:45] <Avenger> well, maybe you are right
[20:15:09] <fuzzie> well, i mean, the first step is to make the vector anyway
[20:15:23] <fuzzie> because you have to have a list
[20:15:46] <fuzzie> tomprince already made this work for something
[20:16:58] <fuzzie> i mean, the paths seperated by ';' on Windows and ':' on Linux
[20:18:27] <fuzzie> so you just have to take http://repo.or.cz/w/gemrb.git/patch/51eda9b3d896e1c70eb5eece95af0cacdf40133a and do it for all the CDs, i guess
[20:18:32] <Avenger> well, i saw it, but first i try this without a vector
[20:18:53] <fuzzie> ok
[20:19:31] <fuzzie> just be warned, it is a lot slower if you do the string splitting in KEYImporter
[20:19:54] <fuzzie> well, actually i guess it doesn't matter for this, never mind
[20:20:17] <fuzzie> i just thought it's easier to use his code
[20:21:52] <fuzzie> but KEYImporter resolves BIF paths at startup, so if you split strings in KEYImporter then you just make startup a little slower
[20:39:29] <Avenger> i will use the vector
[20:39:36] <Avenger> though i would prefer something less complex
[20:41:58] <fuzzie> would always be nice to have simpler things :|
[20:42:12] <fuzzie> ok, so my first attempt to find a machine to run Windows+bg2 on has failed, it overheats
[20:46:54] <Lightkey> bwaha
[20:47:19] <fuzzie> :(
[20:51:33] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[20:52:29] --> edheldil_ has joined #GemRb
[20:55:52] <Avenger> overheats ???
[20:56:14] <fuzzie> it is hot here :)
[20:56:41] <Avenger> mine is 54 C now, compiling :D
[20:57:01] <fuzzie> just the air in the room here is 35C or so :|
[20:59:15] <Avenger> it is only 27-28 here
[20:59:53] <Avenger> i've totally rewritten the cd path stuff
[21:00:07] <fuzzie> ok
[21:00:11] <fuzzie> put a patch on pastebin or something, maybe?
[21:01:00] <fuzzie> well, maybe it's too much work
[21:01:41] <fuzzie> we just spent quite a long time trying to make it work well
[21:02:22] <Avenger> i'm getting crashes on startup, on init of the core
[21:02:40] <Avenger> i have this in Interface: std::vector<std::string> CD[MAX_CD];
[21:02:46] <Avenger> this would be 6 vectors, right?
[21:02:50] <fuzzie> yes
[21:02:56] <fuzzie> so that is fine
[21:03:17] <fuzzie> but the CD[i][0] = '\0'; in the constructor is no good
[21:03:38] <fuzzie> so that is probably your crash
[21:03:58] <Avenger> hmm, oh
[21:04:03] <Avenger> thank you
[21:05:17] <Avenger> started up!
[21:05:19] <Avenger> whee
[21:05:57] <Avenger> it still didn't find the weird english location though...
[21:06:15] <Avenger> now it is on the original level of features, wondering why it failed
[21:06:46] <fuzzie> well, if you want to put a patch up, i can look at it
[21:06:49] <-- edheldil_ has left IRC (Ping timeout: 260 seconds)
[21:07:00] <fuzzie> or if you think you didn't break it, just commit it
[21:07:11] <fuzzie> if it's broken it can always simply be reverted for now
[21:16:38] <Avenger> pathseparator is : on linux?
[21:17:03] <fuzzie> yes
[21:17:44] <Avenger> woo, it works :P
[21:17:46] <Avenger> i did it
[21:18:00] <Avenger> i'm seeing the intro movie on the localized install, heh,
[21:18:14] <Avenger> ok, i push it on you
[21:19:54] <fuzzie> now you look at DLTCEP? :)
[21:20:25] <fuzzie> i am mostly interested in guistore, the first button in the 'sell' column is different to the others
[21:20:51] <Avenger> i asked you about that one
[21:20:52] <fuzzie> and, ok, maybe the meaning is different
[21:21:10] <CIA-23> GemRB: 03avenger_teambg * rde3c40e8dd49 10gemrb/gemrb/ (6 files in 4 dirs): implemented multiple cd paths
[21:21:12] <fuzzie> but i don't know how
[21:21:37] <Avenger> shall i swap the data source for selected/disabled?
[21:22:20] <Avenger> btw, i modified the wait for cd method as well
[21:22:31] <Avenger> i don't know if it works now :)
[21:22:43] <fuzzie> i think you broke a few things
[21:22:44] <Avenger> maybe i'll try
[21:22:47] <fuzzie> but that is ok
[21:22:51] <Avenger> huh, i did?
[21:23:17] <fuzzie> yes
[21:23:24] <fuzzie> this new mask code, for example
[21:23:39] <fuzzie> it does "int mask = 1<<2;" and then never changes the mask
[21:23:59] <Avenger> lol, you are right
[21:24:19] <Avenger> need a mask+=mask in the end of the loop
[21:24:43] <Avenger> that fixes it?
[21:24:58] <fuzzie> i think so
[21:25:49] <Avenger> it is good that you got such a sharp eye :)
[21:25:55] <CIA-23> GemRB: 03avenger_teambg * r6d05e4acd50a 10gemrb/gemrb/plugins/KEYImporter/KEYImporter.cpp: fix mask in the cd finder loop
[21:26:30] <fuzzie> it is actually a pretty nice patch
[21:26:34] <fuzzie> you centralise things :)
[21:26:41] <fuzzie> i like this
[21:27:11] <fuzzie> the MAX_CD constant is much better
[21:27:37] <Avenger> yep, i didn't like those redundant repeats that need to be modified in a lot of places
[21:28:07] <fuzzie> i think Interface::WaitForDisc doesn't work
[21:28:09] <Avenger> i'm not entirely sure about gamedata->AddSource
[21:28:23] <Avenger> i now add a source for every path
[21:28:27] <fuzzie> you do file_exists(path), but you mean file_exists(name), i think
[21:28:42] <fuzzie> and, yes, for iwd2's videos you have to add a source for every path, i guess
[21:28:43] <Avenger> yes, of course
[21:29:47] <CIA-23> GemRB: 03avenger_teambg * rbb504b5df12f 10gemrb/gemrb/core/Interface.cpp: another typo
[21:30:34] <Avenger> with that fix, do you think it has a chance?
[21:30:52] <Avenger> hope it won't die on case sensitivity
[21:30:59] <fuzzie> it all looks fine
[21:31:01] <Avenger> cds are always insensitive, i hope
[21:31:24] <Avenger> the guy still has to set the correct mount path
[21:31:29] <Avenger> but that is not my problem
[21:33:16] <fuzzie> it works for me, anyway, even when i use my sneaky data with missing BIF files
[21:33:29] <fuzzie> so nothing can be too broken
[21:33:56] <Avenger> well, it works for my localized game, so i'm happy
[21:33:59] <fuzzie> yay!
[21:34:02] --> edheldil_ has joined #GemRb
[21:34:09] <Avenger> btw, someone asked for this feature some time ago
[21:34:22] <fuzzie> ok, cool
[21:34:23] <Avenger> but back then i said, the installer should care for this :)
[21:34:32] <fuzzie> well, that is probably the better way :P
[21:34:58] <fuzzie> but i think the installer is *still* broken
[21:35:07] <Avenger> well, in this way, you can switch between language versions easily
[21:35:36] <Avenger> because you can install the english/spanish/whatever versions, and change the config as you need
[21:35:43] <Avenger> or have different configs
[21:35:56] <fuzzie> well, i've only ever had English versions, so i never see this :)
[21:36:07] <fuzzie> but added features are not a bad thing
[21:36:48] <Avenger> yep, at least we can write something in the new features section of the news :P
[21:36:52] <fuzzie> just as long as we don't remove things, i am happy
[21:37:18] <fuzzie> but this guistore thing annoys me, i don't know if the chu is broken or not
[21:37:58] <fuzzie> but it is not important for now
[21:38:51] <Avenger> ielister isn't helpful there?
[21:39:57] <Avenger> which window and control?
[21:40:24] <fuzzie> hm
[21:40:34] <Avenger> guistore, window 2, control 2?
[21:41:46] <Avenger> when would that button be selected or disabled
[21:41:54] <fuzzie> window id 2, control id 13
[21:42:21] <Avenger> ah
[21:42:35] <Avenger> 0,1,5,2 ?
[21:42:38] <fuzzie> compare to control id 14, where the hilight doesn't work because selected is 0
[21:43:14] <Avenger> gemrb's highlight?
[21:43:20] <fuzzie> (except DLTCEP shows it as 'disabled')
[21:43:24] <fuzzie> yes
[21:44:29] <fuzzie> there is some hack in the CHU loader for bg2, GF_IGNORE_BUTTON_FRAMES
[21:45:14] <fuzzie> and i got there and thought, i don't understand how this works
[21:45:34] <fuzzie> so i thought it's much easier to get you to look at it
[21:48:25] <-- Avenger has left IRC (Quit: bye!)
[21:48:28] <fuzzie> oh-oh
[21:49:03] <fuzzie> i only got half way through my explanation :)
[21:51:19] <Lightkey> you have not explained the key combo for the third key options either!
[21:54:31] <edheldil_> fuzzie: I implemented the 'ask for cd screen' some time ago, but maybe it was refactored out ;-)
[21:54:52] <fuzzie> edheldil_: just the screen is fine, i think
[21:55:25] <fuzzie> but it doesn't work properly in practice
[21:55:44] <edheldil_> hehe, quite possible
[22:02:23] --> Avenger has joined #GemRb
[22:02:28] --- ChanServ gives channel operator status to Avenger
[22:02:44] <Avenger> ok fuzzie, i changed the fields, you can dl it from g3
[22:03:23] <fuzzie> well, i was going to say before you ran off: maybe it is clever to look at what's wrong with guiworld first?
[22:03:27] <fuzzie> but i guess it is too late :)
[22:03:29] <fuzzie> erm, guistore
[22:04:32] <-- Maighstir_laptop has left IRC (Quit: Maighstir_laptop)
[22:15:53] <-- Avenger has left IRC (Quit: ChatZilla 0.9.86 [Firefox 3.6.6/20100625231939])
[22:40:44] <-- Edheldil has left IRC (*.net *.split)
[22:40:45] <-- CIA-23 has left IRC (*.net *.split)
[22:41:29] --> Edheldil has joined #GemRb
[22:41:29] --> CIA-23 has joined #GemRb