#gemrb@irc.freenode.net logs for 9 May 2011 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:34:31] <-- _pickle has left IRC (Remote host closed the connection)
[01:02:14] --> PixelScum has joined #gemrb
[01:05:40] <-- BaldimerBrandybo has left IRC (Ping timeout: 264 seconds)
[03:49:01] --> BaldimerBrandybo has joined #gemrb
[03:50:53] <-- PixelScum has left IRC (Ping timeout: 252 seconds)
[04:10:31] --> PixelScum has joined #gemrb
[04:13:55] <-- BaldimerBrandybo has left IRC (Ping timeout: 260 seconds)
[04:14:52] <-- PixelScum has left IRC (Client Quit)
[04:27:00] --> Drakkar has joined #gemrb
[05:14:04] <-- raevol has left IRC (Quit: Leaving.)
[07:03:49] --> lynxlynxlynx has joined #gemrb
[07:03:49] <-- lynxlynxlynx has left IRC (Changing host)
[07:03:49] --> lynxlynxlynx has joined #gemrb
[07:03:49] --- ChanServ gives channel operator status to lynxlynxlynx
[07:22:39] <-- devurandom has left IRC (Read error: Operation timed out)
[07:22:54] --> devurandom has joined #gemrb
[07:28:54] --> lubos has joined #gemrb
[07:33:41] --> adominguez has joined #gemrb
[07:38:02] --> Bo_Thomsen has joined #gemrb
[08:20:34] <fuzzie> that Rejiek scene is hilarious in original too
[08:20:40] <fuzzie> corpse will rotate to face you, etc
[08:26:38] <fuzzie> :o, confused chars attack squirrels, too
[08:38:55] --> SiENcE has joined #gemrb
[09:02:16] <-- |Cable| has left IRC (Remote host closed the connection)
[09:17:42] <-- Bo_Thomsen has left IRC (Quit: Leaving.)
[10:15:08] <dhewg> heh
[10:15:14] <dhewg> now thats what i call confused
[10:41:55] <dhewg> and we get the facing-towards-speaker corpses on gemrb too
[10:42:20] <dhewg> even more weird is the scene where you need to steal the pirate horn
[10:51:55] <dhewg> did you try that scene yet?
[10:52:19] <dhewg> i dunno whats used there, is it playdead too for the 2 sleepers?
[12:24:35] --> Bo_Thomsen has joined #gemrb
[12:48:07] <-- Bo_Thomsen has left IRC (Quit: Leaving.)
[12:51:29] <-- lynxlynxlynx has left IRC (Ping timeout: 260 seconds)
[13:03:46] --> lynxlynxlynx has joined #gemrb
[13:03:46] --- ChanServ gives channel operator status to lynxlynxlynx
[13:13:00] <-- lubos has left IRC (Ping timeout: 252 seconds)
[13:27:09] --> lubos has joined #gemrb
[13:29:19] --> budlust has joined #gemrb
[13:51:13] <-- budlust has left IRC (Remote host closed the connection)
[15:14:54] <-- mihairu has left IRC (Quit: mihairu)
[15:15:13] --> mihairu has joined #gemrb
[15:37:02] <-- lubos has left IRC (Quit: Leaving.)
[15:39:00] <Gekz> would this not help to have a state boolean "facePlayer"
[15:39:02] <Gekz> so when it shouldnt, it doesn
[15:39:45] <fuzzie> probably
[15:39:53] <fuzzie> i'm not sure why original engine doesn't
[15:41:21] <Gekz> intriguing
[15:47:07] --> Maighstir has joined #gemrb
[16:49:17] <-- SiENcE has left IRC (Quit: @all: cya)
[17:21:41] <-- adominguez has left IRC (Remote host closed the connection)
[17:23:56] <dhewg> fuzzie: i got an idea about the hashmap, got a few to look at it?
[17:27:38] <fuzzie> i have time, but haven't had enough sleep, so bit disasterous if you expect intelligent thought
[17:28:22] <-- mihairu has left IRC (Remote host closed the connection)
[17:29:51] <dhewg> the solution is kinda simple
[17:30:15] <dhewg> a "like it" or "hate it" is good enough :=
[17:30:28] <dhewg> https://github.com/dhewg/gemrb/commit/b52eecfa6c8d2a8a2a6b54fa133a84e9a38e56ee#diff-1
[17:30:38] <dhewg> see the 2nd equals
[17:31:20] <dhewg> thats the std::string hashmap. i add a equals for const char*, then derive StringMap from HashMap that introduces lookups by char*
[17:31:31] --> |Cable| has joined #gemrb
[17:31:59] <dhewg> just to avoid std::string construction when just wanting to lookup by char*
[17:32:13] <dhewg> and i applied the same approach to the keyimporter
[17:33:38] <fuzzie> but you still only hash by std::string?
[17:33:50] <fuzzie> i think you'd want to ask tomprince anyway
[17:34:07] <dhewg> oh right, thats still missing
[17:34:10] <dhewg> good catch :)
[17:34:17] <dhewg> its there for the keyimporter though
[17:34:52] <fuzzie> stupid libstdc++ std::string :P
[17:35:03] <dhewg> hehe
[17:35:22] <dhewg> well, it makes sense for the CachedDir thing
[17:35:36] <dhewg> now the lookups are cheap, which is more important that inserts
[17:37:30] --> mihairu has joined #gemrb
[17:49:01] <dhewg> k, 2 fixup pushed
[17:49:27] <dhewg> tomprince: let me know what you think of that approach :)
[17:55:52] --> Bo_Thomsen has joined #gemrb
[18:23:22] --> kvirc has joined #gemrb
[18:23:27] <-- kvirc has left #gemrb
[19:05:45] <dhewg> fuzzie: why does the bif cache in the keyimporter go bye-bye upon loading sometimes?
[19:06:01] <dhewg> i dont see it atm
[19:06:30] <dhewg> the streams it creates should be independent of the bif plugin instance afaict
[19:06:42] <fuzzie> yes
[19:06:53] --> SiENcE has joined #gemrb
[19:06:53] <fuzzie> is this your bif cache, or the one in master?
[19:07:04] <dhewg> didnt touch it
[19:07:14] <dhewg> was just looking at it, so whats in master
[19:07:23] <fuzzie> but anyway, bifs from the cache are deleted on load
[19:07:41] <dhewg> the files in the cache?
[19:07:48] <fuzzie> yes
[19:07:53] <dhewg> oh
[19:07:57] <dhewg> thats it? heh
[19:08:00] <fuzzie> well, i don't know what exactly master does
[19:08:07] <dhewg> haha
[19:08:12] <fuzzie> i dimly remember logic for only zapping the mutable files
[19:08:14] <dhewg> you wrote it :P
[19:08:27] <fuzzie> no, i wrote some stupid hack which shouldn't really be in-tree :P
[19:08:40] <fuzzie> the deletion is elsewhere
[19:08:47] <dhewg> yeah, which is what i mean
[19:08:59] <dhewg> but it didnt have this crash before that, right?
[19:12:53] <fuzzie> you can just revert the bif cache, i hope
[19:13:03] <fuzzie> i'm not sure whether it's worth it, without some proper logic
[19:13:45] <dhewg> i has playing with the idea to do a slightly more usable cache
[19:13:51] <dhewg> something MRU wise
[19:14:00] <dhewg> but i'd like to know what the current issue is
[19:14:12] <fuzzie> basically, you can't rely on the BIFs staying present
[19:14:51] <fuzzie> some function to forget them all would most likely be the simplest solution
[19:15:07] <fuzzie> i think i've talked about this before, though - as soon as that is implemented, you might as well keep them all open
[19:15:11] <dhewg> Interface.cpp reads // Removing all stuff from Cache, except bifs
[19:15:25] <fuzzie> yeah, i don't know what's in-tree right now
[19:15:37] <dhewg> hehe
[19:15:46] <fuzzie> but decompressed bifs get *huge*, so whatever gets added should cope with the bifs all being deleted from under it
[19:17:17] <dhewg> right
[19:17:31] <fuzzie> and if the bifs really don't get deleted atm, i'm not sure what the issue is
[19:17:34] <dhewg> but afaict there's no code wiping bifs in master
[19:17:41] <fuzzie> yes
[19:18:11] <fuzzie> well, there *is*, but not on that codepath
[19:19:25] <fuzzie> that SwapoutArea code looks like it needs the same error-handling treatment as the store stuff
[19:19:49] <fuzzie> just noticing because the unused incorrect path is the only user of RemoveFromCache
[19:20:36] <fuzzie> and the only other unlink() call is in DelTree, which indeed doesn't delete .bifs at load time, so it's weird
[19:20:58] <dhewg> yeah, only the mutable extensions
[19:21:21] <fuzzie> the idea of the KeepCache thing is that it was meant to dictate whether bifs got deleted or not
[19:21:28] <fuzzie> but as you can see, i hilariously screwed it up
[19:21:36] <dhewg> heh
[19:21:38] <dhewg> dunno
[19:21:43] <dhewg> i mean, that makes sense too
[19:21:44] <fuzzie> due to large clouds of incompetence
[19:21:57] <fuzzie> because we should *always* call DelTree to delete the mutable stuff
[19:21:59] <fuzzie> otherwise, corrupt games
[19:22:19] <fuzzie> one of those things i patched locally and never applied
[19:22:31] <dhewg> stop doing that? :P
[19:22:50] <fuzzie> tricky, that
[19:23:24] <dhewg> but well
[19:23:33] <dhewg> its still all file based
[19:23:36] <dhewg> that cache
[19:23:45] <dhewg> what if it fails to delete a file
[19:23:57] <dhewg> possible savegame corruption too
[19:24:03] <fuzzie> then it should error("pls fix your system kthx"), really
[19:24:24] <dhewg> hehe yah
[19:24:27] <dhewg> at least something
[19:24:36] <fuzzie> last time i thought about this seriously, someone provided a patch to make sure that files were actually files and not directories
[19:24:50] <fuzzie> so i imagine we're still at that level of sanity
[19:24:55] <dhewg> i've said it before, but again: i really think it makes sense to make that file cache keep track of its crap
[19:25:10] <fuzzie> yes, quite possibly
[19:25:15] <fuzzie> it's just a bit of a tricky change
[19:25:34] <fuzzie> and imo we should split it into cache and save temp, first
[19:25:49] <dhewg> its bitrotting on my fork if i might add that
[19:26:19] <fuzzie> something just for the file cache, or the global thinger?
[19:26:40] <dhewg> it just wraps the file handling of all file cache related stuff
[19:26:52] <fuzzie> ah, yes
[19:26:55] <dhewg> but thats still on top of the old hashmap stuff
[19:27:03] <fuzzie> well, i don't like baking the broken RemoveFromCache stuff in
[19:27:09] <fuzzie> but i guess we can resolve that by removing it wholesale
[19:27:10] <dhewg> but well, still kinda valid, although it prolly wont cherry-pick atm
[19:27:51] <fuzzie> oh, right, i remember this
[19:27:57] <dhewg> by broken you mean wipe while something still uses it?
[19:28:10] <fuzzie> no, by broken i mean it's never used and so useless
[19:28:19] <dhewg> heh
[19:28:27] <fuzzie> afaict all callers should error() out instead
[19:28:30] <fuzzie> tomprince already fixed one caller
[19:29:12] <fuzzie> my problem with the cache thing is that i think it belongs in an importer
[19:29:49] <dhewg> we're still talking about the global file cache?
[19:29:57] <fuzzie> yes
[19:30:20] <dhewg> why importer?
[19:30:23] <fuzzie> this way it's hardcoded to the point where it's a huge pain if i want to do the cache/temp split, right?
[19:31:13] <dhewg> i see where you're aiming at
[19:31:20] <fuzzie> while if you put it in the DirectoryImporter and store that somewhere global
[19:31:38] <fuzzie> then you can have as many of these dirs as you want, and the ResourceManager can be pretty dumb about it
[19:31:51] <dhewg> you know the projects corners better than me, but just by a feeling i'd do the same file cache approach again
[19:31:57] <dhewg> add flags on top etc
[19:32:03] <dhewg> mutable/area whatever
[19:32:05] <fuzzie> sure
[19:32:06] <fuzzie> is that bad?
[19:33:25] <fuzzie> i think a further point from tomprince was to bear in mind the notion of a SAV importer being somewhere in the searchpath too, but i think that'd work
[19:33:27] <dhewg> im not sure what you're asking
[19:34:05] <fuzzie> just don't want to hardcode the idea of "this is the mutable directory, it is always a directory and/or there is only one" into the core
[19:34:17] <fuzzie> but only the 'there is only one' matters to me at this exact moment afaik
[19:38:40] <fuzzie> this project was more fun when there were no design decisions :P
[19:39:39] <dhewg> bah :P
[19:39:55] <dhewg> its fun if you have a vision
[19:40:15] <wjp> and then other people start to ruin it :-)
[19:40:57] * wjp waves from the train station (delays... hurray)
[19:42:03] <fuzzie> are there ever not? :P
[19:42:16] <wjp> well
[19:42:20] <wjp> maybe?
[19:42:45] <wjp> but actually the last train to .be is pretty much always delayed, yes
[19:43:25] <fuzzie> my experience with that line is that i'm lucky to see a train within a few hours of the timetable
[19:43:46] <wjp> it's usually ok
[19:43:53] <wjp> ish
[19:43:59] <fuzzie> yes, that is what everyone else says too :-)
[19:44:09] <fuzzie> shall cross my fingers for next time i try it
[19:44:15] <wjp> but I do always make sure to check before I leave for the station
[19:44:17] <fuzzie> see if i can get some of this luck you're clearly all stealing
[19:44:39] <wjp> please don't :-)
[19:45:52] <fuzzie> actually my next journey appears to be on the Thalys, yay
[19:46:19] <wjp> aha
[19:46:39] <wjp> is that the one that always has 30 minutes of a delay by the time it reaches Antwerp?
[19:47:44] <fuzzie> fortunately, since i don't have to change, my plan for that train journey is 'sleep'
[19:48:44] <fuzzie> you can keep your good luck, anyhow ;p
[19:48:54] <wjp> thank you :-)
[19:51:42] <wjp> T-10min...
[19:51:53] <dhewg> thats not too bad
[19:52:04] <dhewg> my bg2 party is rotting in a cell
[19:52:16] <dhewg> im pretty sure something is supposed to happen
[19:52:42] <dhewg> its that mind flayer cell in the underdark
[19:52:47] <wjp> ah
[19:53:12] <dhewg> and its been >10min :)
[19:53:15] <wjp> not sure what exactly triggers stuff
[19:53:24] <wjp> were there other prisoners to talk to?
[19:53:26] <dhewg> i dont know either
[19:53:28] <wjp> Gith?
[19:53:30] <dhewg> no, nothing
[19:53:34] <dhewg> just two doors
[19:53:38] <dhewg> unpickable
[19:54:20] <dhewg> without any clue what going on, i smell broken timers
[19:54:30] <fuzzie> probably broken dialog or something
[19:54:41] <fuzzie> ogre is meant to appear after a minute or so
[19:55:30] <dhewg> a realtime minute?
[19:55:35] <fuzzie> yes
[19:55:49] <fuzzie> but i think i fixed that stuff. maybe. :P
[19:55:50] <dhewg> sorry, not happing :P
[19:57:58] <dhewg> i see it loading udogre.cre, then udogre.bcs and then ogre.bcs
[19:58:18] <dhewg> but thats all ogre related stuff there is
[19:58:48] <dhewg> after the cutscene the party is sleeping
[19:58:54] <dhewg> as in lying on the floor
[19:59:01] <dhewg> the getting up part looks weird
[19:59:11] <dhewg> is that maybe a trigger that doesnt fire?
[20:01:09] <fuzzie> if there's no console output that's interesting
[20:01:12] <fuzzie> what's the area?
[20:01:27] <dhewg> 3400
[20:01:29] <dhewg> *2400
[20:02:16] <dhewg> enter from 2100, south east exit
[20:05:57] <fuzzie> hmm
[20:06:02] <fuzzie> no, it seems to be timers
[20:09:21] --> SiENcE_ has joined #gemrb
[20:09:21] <SiENcE_> ups
[20:09:43] <dhewg> can i dump those timer stats?
[20:10:13] <fuzzie> they're just variables
[20:10:23] <fuzzie> but honestly i don't see where they start
[20:12:14] <-- SiENcE has left IRC (Ping timeout: 240 seconds)
[20:13:19] <dhewg> if i teleport out of there, the ogre comes over and starts the dialog
[20:18:47] <fuzzie> door open fail?
[20:19:55] <fuzzie> ActionOverride("UDOGRE",Unlock("Door16"))
[20:19:56] <fuzzie> ActionOverride("UDOGRE",OpenDoor("Door16"))
[20:19:59] <fuzzie> ActionOverride("UDOGRE",StartDialogNoSet(Player1))
[20:20:24] <dhewg> he's at the other end of the room
[20:20:29] <dhewg> he doesnt even come over
[20:20:38] <dhewg> he only does once i can see him
[20:21:12] <fuzzie> yeah
[20:21:32] <fuzzie> but you get no 'lol dialog fail' console output?
[20:21:40] <dhewg> no, nothing
[20:35:56] <CIA-52> GemRB: 03avenger_teambg * rc524f9064797 10win32/MSVC6/GemRB/core/Core.dsp: msvc6 project file update
[21:19:25] <fuzzie> haha, the scrolling-during-dialog thing isgreat
[21:19:46] <fuzzie> there's a youtube video, "Baldur's Gate on Android", of someone playing on a Desire HD and frantically stroking the screen in various directions when it happens
[21:31:45] <lynxlynxlynx> i think it happens when you a dialog gets started while you're scrolling
[21:32:10] <fuzzie> dhewg: that ToEE engine is actually fairly impressive-looking
[21:37:46] <fuzzie> e.g. http://i.imgur.com/7eHwS.jpg
[21:39:35] <lynxlynxlynx> what's so impressive there?
[21:39:47] <lynxlynxlynx> isn't it the content
[21:40:03] <fuzzie> yes, but it's managing to render it pretty nicely
[21:40:23] <fuzzie> the UI is mostly not there and the combat is missing and etc etc
[21:40:51] <fuzzie> but it's a project much like gemrb, going to take forever
[21:42:27] <-- mihairu has left IRC (Remote host closed the connection)
[21:42:59] <fuzzie> (the screenshot is apparently a year old, there's avatars and pathfinding and stuff now)
[21:43:17] <lynxlynxlynx> what's it called?
[21:43:41] <fuzzie> the 'ToEE Engine Recreation Project'
[21:43:44] <lynxlynxlynx> i thought it was some debug mode or editor from the original
[21:44:03] <fuzzie> oh riht :)
[21:44:45] <lynxlynxlynx> started only at the end of 2009 apparently
[21:44:49] <fuzzie> it's in C# etc so not exactly wonderfully portable
[21:45:57] <fuzzie> oh, or is that from the C++ code?
[21:47:42] <fuzzie> interesting, in any case
[21:51:29] <fuzzie> dhewg: if you're bored, btw, pathfinder might be fun
[22:05:46] <-- SiENcE_ has left IRC (Quit: cya)
[22:09:10] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[22:21:23] <-- Maighstir has left IRC (Read error: Connection reset by peer)
[22:22:11] --> Maighstir has joined #gemrb
[23:04:03] --> mihairu has joined #gemrb
[23:07:23] <-- Bo_Thomsen has left IRC (Quit: Leaving.)