#gemrb@irc.freenode.net logs for 15 Apr 2011 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:09:22] <-- edheldil_ has left IRC (Ping timeout: 246 seconds)
[02:16:45] <CIA-52> GemRB: 03tom.prince * r1c2cd44003d8 10gemrb/CMakeLists.txt:
[02:16:45] <CIA-52> GemRB: cmake: Variable quoting is weird in cmake.
[02:16:45] <CIA-52> GemRB: Bare variables are expand and ${} can sometimes cause double expansion?!
[02:16:45] <CIA-52> GemRB: Signed-off-by: Tom Prince <tom.prince@ualberta.net>
[02:16:55] <CIA-52> GemRB: 03tom.prince * r916798f14616 10gemrb/CMakeLists.txt:
[02:16:55] <CIA-52> GemRB: cmake: Fix warning on non-matching IF()/ENDIF().
[02:16:55] <CIA-52> GemRB: Signed-off-by: Tom Prince <tom.prince@ualberta.net>
[06:05:56] <tomprince> I seem to recall asking this before, but I can't find it in my logs. Why do we use cprintf? I want to switch to vprintf, but vcprintf is in msvc6.
[06:14:59] --> Bo_Thomsen has joined #gemrb
[06:20:23] --> lynxlynxlynx has joined #gemrb
[06:20:23] --- ChanServ gives channel operator status to lynxlynxlynx
[06:49:25] <-- Bo_Thomsen has left IRC (Quit: Leaving.)
[07:07:58] --> adominguez has joined #gemrb
[07:10:26] --> test32894789234u has joined #gemrb
[07:12:07] --> lubos has joined #gemrb
[08:15:33] <fuzzie> tomprince: we use cprintf to avoid buffering on Windows, right? because otherwise you get out-of-sync with the SetConsoleTextAttribute calls
[08:16:45] <fuzzie> that is just a guess based on observation :P
[08:17:09] <fuzzie> but seems vcprintf is perfectly fine alternative
[08:20:49] <dhewg> cprintf?
[08:21:07] <fuzzie> writes directly to console
[08:23:24] <dhewg> eh?
[08:23:31] <lynxlynxlynx> windows
[08:23:32] <fuzzie> Windows!
[08:23:35] <dhewg> omg
[08:23:37] * dhewg runs
[08:23:40] <fuzzie> :-p
[08:23:49] <fuzzie> Windows console subsystem is completely crazy
[08:23:50] <dhewg> ok, i was confused there for a second
[08:23:58] <dhewg> why dont you use stdout there?
[08:24:07] <lynxlynxlynx> why don't we rather use c++printf?
[08:24:16] <lynxlynxlynx> or c.netprintf
[08:24:34] <fuzzie> dhewg: go back and look at my first line :P
[08:24:42] <fuzzie> lynxlynxlynx: that silly msvc6, holding us back from the future :(
[08:25:09] <dhewg> fuzzie: yes, yes, but why make a difference for microshaft in the first place?
[08:25:42] <fuzzie> at least it isn't google? :)
[08:26:23] <fuzzie> hmph, Alone in the Dark on gog, boring
[08:26:44] <lynxlynxlynx> witcher will be available in may
[08:26:50] <lynxlynxlynx> 1 that is
[08:26:54] <fuzzie> also boring ;p
[08:27:04] <lynxlynxlynx> we'll see
[08:28:19] <fuzzie> i guess $5 is pretty good though!
[08:28:34] <dhewg> here's what i meant for winblows http://pastie.org/1796693
[08:28:48] <dhewg> so you can just use printf and friends
[08:29:09] <dhewg> look at me, i wrote win32 code!!1
[08:29:41] <fuzzie> i'm not going to even think about it :P
[08:30:23] <dhewg> :P
[08:30:58] <fuzzie> does it really work though?
[08:31:13] <dhewg> sure
[08:31:19] <fuzzie> i don'
[08:31:27] <fuzzie> 't see how you avoid any C library buffering
[08:32:37] <dhewg> maybe i misunderstand what you mean by 'direct'
[08:32:55] <fuzzie> "when you call cprintf, the console subsystem gets the output immediately"
[08:33:41] <fuzzie> because when you call SetConsoleTextAttribute, you don't want the console to be out-of-sync due to internal buffering
[08:34:02] <dhewg> oh, for teh colorz?
[08:34:36] <fuzzie> ye
[08:34:54] <fuzzie> cprintf is just some wrapper around vcprintf is some wrapper around WriteConsole
[08:35:21] <fuzzie> what we should be doing is having a logging system, which i imagine tomprince is poking at yet again
[08:35:27] <dhewg> ohboi, lets stop this
[08:35:45] <dhewg> weird win32 api
[08:36:03] <fuzzie> because 95% of the console stuff is junk
[08:36:56] <dhewg> the whole idea to differenciate between console and gui apps is uttely retarted
[08:37:21] <fuzzie> well, simple enough to create a console :P
[08:37:53] <fuzzie> i think the bit where the console stuff runs out of process in magical subsystem wonderland is rather more worthy of despair
[08:38:05] <fuzzie> with admin privs, too, i think
[08:40:22] <fuzzie> anyway
[08:48:14] <-- |Cable| has left IRC (Remote host closed the connection)
[08:49:56] <dhewg> yes i know, but sometimes its fun to complain about the win32 awkwardness :)
[08:50:46] <fuzzie> i think the thing i most miss from windows is the sensible exception handling
[10:12:35] <fuzzie> dhewg: love the TODO list!
[10:13:13] <dhewg> fuzzie: i do have TODO list myself, but for projects like scummvm or gemrb a tracker is more useful
[10:13:29] <fuzzie> well, i despise the sf tracker
[10:13:32] <fuzzie> it's way too slow to be useful
[10:13:35] <dhewg> i mean how many things did i throw in here and the answer was "yeah, we know"
[10:13:41] <dhewg> i dont know that you know :P
[10:14:05] <fuzzie> http://gemrb.sourceforge.net/wiki/doku.php?id=todo is what we ended up with
[10:14:34] <fuzzie> if there's a bug tracker that *isn't* incredibly time-consuming to maintain, it would be nicer
[10:14:44] <fuzzie> but so far the closest thing i found was Google Code's bug tracker
[10:14:53] <dhewg> well sf sucks there, no reason to argue about it :)
[10:15:13] <dhewg> but it works okayish for scummvm
[10:15:21] <fuzzie> yes, for finished engines :P
[10:15:42] <dhewg> i dont see the big difference :P
[10:16:01] <fuzzie> yes, i can see this in #scummvm right now ;p
[10:16:17] <fuzzie> i shall just wait for DrMcCoy to murder you all
[10:16:21] <dhewg> hehe
[10:16:22] <fuzzie> seems for the best
[10:16:28] <DrMcCoy> lol
[10:16:58] <dhewg> well #scummvm gets a lot of bike shedding recently
[10:17:00] <DrMcCoy> I never found a non-cumbersome bug tracker
[10:17:07] <-- lynxlynxlynx has left IRC (Read error: Connection reset by peer)
[10:17:07] <dhewg> so dont use that crap over there as argument :P
[10:17:11] <DrMcCoy> The SF one is actually one of the least bad out there
[10:17:19] <DrMcCoy> The Trac one is really getting on my nerves
[10:17:24] <DrMcCoy> And the bugzilla one is bleh too
[10:17:38] <dhewg> you prolly hate me know, but a proper bugzilla setup can be nice&fast
[10:17:44] <dhewg> see xorg
[10:17:59] <fuzzie> xorg also not best example of how to run a bug system :P
[10:18:16] <fuzzie> i mean, i guess if you don't mind having huge amounts of un-triaged stuff lying around you can pick at random
[10:18:23] <-- test32894789234u has left #gemrb
[10:18:24] <dhewg> yeah, but it works and i actually find stuff there
[10:18:52] <DrMcCoy> I also hate that SF contantly forgets me login, despise me checking the "keep me logged in" thing. So everytime want to watch a bug report, or change something, I have to reloggin. And then reload the bug report. Annoying
[10:18:54] <fuzzie> but then you end up with developers mostly ignoring it
[10:19:03] <fuzzie> which i guess makes it simple for me, so ok :)
[10:19:43] <dhewg> hehe
[10:21:25] <fuzzie> anyway, feel free to file bugs
[10:21:35] <fuzzie> at least bits of irc can be pasted into the tracker
[10:22:56] <fuzzie> and if you keep bugging me i might actually fix things
[10:23:12] <DrMcCoy> Interesting
[10:23:26] <DrMcCoy> If people keep bugging me, I won't fix anything out of spite
[10:23:30] * dhewg bugs fuzzie
[10:23:31] <DrMcCoy> Also, explode in their face
[10:23:41] <fuzzie> yes, i made that mistake with clone2727 and sunners in Riven
[10:24:34] <dhewg> exploding in someone's face?
[10:24:46] <DrMcCoy> dhewg: With anger
[10:24:50] <DrMcCoy> dhewg: Not like you think
[10:25:15] <DrMcCoy> This is why we can't have nice...errr angry things
[10:25:16] <DrMcCoy> Or something
[10:25:23] <dhewg> heh
[10:25:40] <dhewg> well, yelling and poking is fun!
[10:29:15] <fuzzie> but anyway, yes, you should test on master
[10:29:18] <fuzzie> if you have the time
[10:29:25] <fuzzie> and i should commit all this broken stuff and enjoy the fallout
[10:29:44] <dhewg> sounds good
[10:29:58] <dhewg> so uhm, there's a tracker, a wiki todo and a TODO in git?
[10:30:19] <fuzzie> oh, there's actually still a TODO in git
[10:30:20] <fuzzie> how quaint
[10:30:20] <dhewg> oh i c
[10:30:26] <dhewg> the easy way out
[10:30:29] <dhewg> for shame!
[10:30:34] <dhewg> 97 Community: 98 2. Move this todo to bug/task tracker at Sourceforge :-)
[10:31:07] <fuzzie> what we need is another todo list
[10:31:47] <dhewg> a new todo list that lists all todos to be merged?
[10:35:54] <CIA-52> GemRB: 03fuzzie * rafe34db5479a 10gemrb/gemrb/core/GameScript/GameScript.cpp: make GameScript::Update return whether action list changed
[10:40:14] <dhewg> wee, a commit
[10:43:07] <fuzzie> changed it weeks ago, forgot i could pick it out
[10:43:19] <fuzzie> it breaks unselectable i think
[10:43:23] <fuzzie> i have that moved locally but not in master
[10:43:28] <fuzzie> but patience :P
[10:44:25] <dhewg> if i would hurry, i would poke until you fixed the py<->cpp gui close notification :P
[10:55:44] --> nyytit has joined #gemrb
[10:58:53] <nyytit> Hi, I got stuck in Icewind Dale because of the bug: ID 3200851 - IWD Troll cannot be killed
[10:59:37] <nyytit> the bug is in fixed state, but at least the version 0.6.4 has it still
[11:00:21] <fuzzie> just a normal troll?
[11:00:31] <nyytit> yea
[11:00:58] <dhewg> *cough* user found bug report *cough*
[11:01:03] <fuzzie> hehe
[11:01:08] <nyytit> hah
[11:01:09] <fuzzie> the iwd thing is weird
[11:01:11] <fuzzie> i tried it, it's fine for me
[11:01:59] <fuzzie> in Dragon's Eye, at least
[11:02:00] <nyytit> this is maemo version, but it should be still the same packet
[11:02:38] <nyytit> I could try with a desktop version if it persists
[11:03:09] <fuzzie> you're sure it *is* 0.6.4?
[11:03:56] <nyytit> it says so in the package and the main menu also
[11:04:33] <fuzzie> the one in extras-devel does look ok
[11:06:30] <fuzzie> i reopened bug
[11:06:42] <fuzzie> is your problem exactly as described?
[11:07:09] <nyytit> yes
[11:07:30] <fuzzie> ok
[11:07:35] <fuzzie> well i have no clue
[11:07:54] <fuzzie> but i will try it again, later
[11:07:59] <nyytit> ok and ty
[11:58:04] --> Maighstir has joined #gemrb
[11:58:20] * edheldil sings : Todos, todos everywhere ...
[11:58:39] <edheldil> it probably sounds even better in Spanish ;-)
[12:02:27] <fuzzie> heh
[12:02:31] <fuzzie> ok, i guess i am going out for a bi
[12:02:32] <fuzzie> t
[12:02:47] <fuzzie> this evening has been blocked off in my agenda as 'merge fixes into gemrb'
[12:07:07] <tomprince> I think github has a new tracker.
[12:15:01] --> edheldil_ has joined #gemrb
[13:12:11] <-- adominguez has left IRC (Remote host closed the connection)
[13:22:40] --> lynxlynxlynx has joined #gemrb
[13:22:42] --- ChanServ gives channel operator status to lynxlynxlynx
[13:26:11] <lynxlynxlynx> nyytit: so you actually tried fire or acid on it?
[13:36:32] <nyytit> of course, i am not a noob :D
[13:37:10] <nyytit> actually threw something like 10 bottles on the troll when it was almost dead
[13:38:19] <fuzzie> i would ignore it for now
[13:44:47] <lynxlynxlynx> ok
[13:46:18] <edheldil> it might be a bit hard to ignore rampaging troll, though :-O
[13:53:06] <nyytit> is the save game format the same in the GemRB and the original game?
[13:53:58] <Maighstir> yes, but some values differs, so various skills and whatnot may be higher/lower
[13:54:43] <nyytit> ok
[13:54:56] <wjp> for practical purposes, I think "no, but we can import original save games" works well
[13:55:13] <wjp> (works well as an answer, I mean)
[13:57:51] <edheldil> it's even possible the other way, I was testing that with the trolls save
[13:58:07] <edheldil> s/testing/using/
[14:03:57] <fuzzie> not reliable though
[14:07:30] <nyytit> I can try tomorrow with the desktop-version also
[14:34:00] <fuzzie> the diffstat for this stuff is beautiful
[14:36:27] <tomprince> I guess if you are merging a bunch of code, I shouldn't push my s/printf/print/ patch yet...
[14:36:34] <fuzzie> yes, please don't :P
[14:36:50] <fuzzie> what does 'print' do?
[14:37:10] <tomprince> call printf or cprintf
[14:37:37] <fuzzie> well, the merge probably won't be painful if it's just a simple s/printf/print/
[14:38:24] <tomprince> It is, but it is probably easier for me to redo the commit.
[14:38:29] <tomprince> Since it really is just a sed.
[14:38:43] <fuzzie> i mean, i'll probably take all day on this
[14:40:30] <tomprince> So, I'll commit it tonight. I'll be up later than you anyway. :)
[14:40:40] <fuzzie> ok
[14:40:56] <fuzzie> just if it's inconvenient for you, do just commit
[14:53:45] <-- lynxlynxlynx has left IRC (Read error: Operation timed out)
[14:54:03] <fuzzie> $ git diff --stat GameScript/Triggers.cpp
[14:54:03] <fuzzie> gemrb/core/GameScript/Triggers.cpp | 467 +++++-------------------------------
[14:54:19] <fuzzie> and that's still with a bunch of it commented out..
[14:54:54] <wjp> ------ is good :-)
[14:55:37] <fuzzie> yes
[14:57:17] --> |Cable| has joined #gemrb
[14:59:04] <fuzzie> doesn't build still though, with the broken stuff cut out
[15:06:07] <tomprince> My stuff is on github, for anybody who is curious.
[15:06:38] <tomprince> (print branch)
[15:07:52] <fuzzie> i take it back, it does build and it shouldn't
[15:08:02] <tomprince> :)
[15:10:59] <fuzzie> LastTargetedBy is my last big issue here
[15:11:16] <fuzzie> devSin says "LastTargetedBy() doesn't work", which would be nice
[15:12:04] <fuzzie> disasm agrees, hoorah
[15:28:33] --> lynxlynxlynx has joined #gemrb
[15:28:34] <-- lynxlynxlynx has left IRC (Changing host)
[15:28:34] --> lynxlynxlynx has joined #gemrb
[15:28:34] --- ChanServ gives channel operator status to lynxlynxlynx
[15:29:18] <lynxlynxlynx> nice, the hotel shuts down the power if the keycard is not inplace
[15:45:46] --> Bo_Thomsen has joined #gemrb
[15:46:08] <fuzzie> heh
[15:48:17] <-- lubos has left IRC (Quit: Leaving.)
[15:53:26] <-- lynxlynxlynx has left IRC (Read error: Operation timed out)
[15:53:37] <tomprince> maybe clang will someday support msvc debug info ...
[15:56:51] <fuzzie> how do you mean?
[15:57:37] <fuzzie> writing pdb files?
[15:57:39] <tomprince> If we could drop in clang instead of cl.exe with msvc6 ...
[15:58:03] <fuzzie> ah, well, pretty sure that's not going to happen :P
[15:58:18] <tomprince> one can dream, can't one :)
[15:58:19] <fuzzie> someday we will have to see if we can upgrade Avenger
[15:58:29] <fuzzie> but DLTCEP is where it all goes wrong, of course
[15:59:52] <tomprince> Is that the sticking point?
[16:01:27] <fuzzie> i imagine it would be, yes
[16:03:02] <tomprince> that almost tempts me to rewrite it ...
[16:03:12] <fuzzie> hehe
[16:03:26] <fuzzie> it is .. a lot of unreadable code
[16:04:20] <fuzzie> but I *think* the debugger in modern msvc is v.good
[16:04:32] <fuzzie> it's just expensive to get a non-sabotaged version of msvc..
[16:06:34] <dhewg> i heard good things about qt creator
[16:06:40] * tomprince ponders
[16:06:58] <dhewg> didnt try it myself, but its an IDE which uses mingw on windows
[16:07:01] <tomprince> Maybe we should apply with that as a project for gsoc next year.
[16:07:29] <fuzzie> dhewg: yeah, but if you're willing to rewrite, the free msvc works too
[16:08:18] <dhewg> that was more in reply to pdb style dbg format for gcc/clang
[16:08:25] <dhewg> i dont even know what dltcep is :P
[16:08:32] <tomprince> dhewg: The issue is that one of our main devs prefers msvc6.
[16:08:40] <tomprince> In particular, the debugger.
[16:08:57] <tomprince> And so our code base is compatible, much to my horror sometimes.
[16:09:16] <tomprince> dltcep is an editor for many (all?) ie formats.
[16:09:16] <dhewg> well, the code itself shouldnt be issue, right?
[16:09:23] <dhewg> ah
[16:09:38] <tomprince> msvc6 has horrible support for templates, etc.
[16:09:59] <tomprince> and dltcep is written with mfc, which isn't suppored in later version of msvc.
[16:10:11] <dhewg> and he hacks on that too?
[16:10:22] <tomprince> He is the only developer of it.
[16:10:31] <dhewg> heh, gotcha :)
[16:10:44] <dhewg> yeah, well...
[16:10:49] <dhewg> trapped himself, eh
[16:10:50] <fuzzie> well, it's not too bad to port it to modern MFC
[16:11:09] <tomprince> Mostly because nobody else wants to learn enough mfc to hack on it (or has access to msvc6).
[16:11:14] <fuzzie> but there's no free version of visual studio with MFC support, and just hacking in the build system isn't much use
[16:11:40] <dhewg> yeah
[16:11:52] <fuzzie> because the free version has no UI editor for it, nor the editor plugins, etc
[16:12:13] <fuzzie> but, catching up, does mingw output pdb files?
[16:12:25] <dhewg> no, of course not :p
[16:12:28] <fuzzie> bah
[16:12:35] <fuzzie> you had my hopes up for a second :)
[16:12:45] <dhewg> and for what, its pointless
[16:13:10] <fuzzie> all Microsoft's tools/services use them
[16:13:21] <fuzzie> but yes i can see this is leading to a troll, let me slink back to my vim ;p
[16:13:29] <dhewg> yes, but it totally doesnt fit in the gnu world
[16:13:43] <dhewg> well, that qt creator has ide integrated gdb support, which is why i brought it up
[16:13:59] <fuzzie> my experience with this stuff is mostly that windows doesn't fit in the gnu world
[16:14:06] <dhewg> with clickity click breakpoints, watchlist msvc style etc
[16:14:25] <fuzzie> gdb has become really nice recently though
[16:15:00] <dhewg> well, its awesome, it just something completely different and understandable that msvc blinded ppl dont like it
[16:15:08] <fuzzie> well, it sucked
[16:15:20] <fuzzie> which didn't help
[16:15:43] <dhewg> alot of stuff sucked before so many commercial partys jumped on the linux bandwagon
[16:16:14] <fuzzie> gdb 7 was .. october 2009
[16:16:33] <dhewg> nowadays i run open source gpu drivers based on open amd gpu specs, which was like the impossible many years back
[16:16:50] <fuzzie> heh
[16:16:58] <fuzzie> i am running open source gpu drivers based on open ati gpu specs
[16:17:08] <dhewg> :)
[16:17:21] <dhewg> its come along way, but it already rocks
[16:17:22] <fuzzie> and have done since, what, 2004? :)
[16:17:30] <tomprince> dhewg: nobody here is arguing against linux .... even the dev who uses msvc6 uses linux as his main os (I think)
[16:17:51] <fuzzie> yes
[16:18:00] <fuzzie> who could live without valgrind?
[16:18:17] <-- edheldil_ has left IRC (Ping timeout: 248 seconds)
[16:19:11] <dhewg> tomprince: yes, i know. sorry if i made the impression that i am arguing. i am just used to talk to coders that only know msvc, about how much linux progressed
[16:19:24] <tomprince> fuzzie: would you be opposed to me refactoring things so that the plugins don't need to depend on Interface?
[16:19:36] <fuzzie> tomprince: well, i would prefer you not do it *now*
[16:19:49] <tomprince> dhewg: np, didn't bother me
[16:20:00] <fuzzie> otherwise, well, wjp was refactoring the data out of Interface to GameData at some point, and it kind of stalled there
[16:20:02] <tomprince> Well, not *now*. I should be working on my thesis.
[16:20:18] <tomprince> I was thining about how to right unit tests for them ...
[16:20:19] <dhewg> fuzzie: yes sure, the 2d part works for a long time now, i had more gallium with opengl acceleration in mind, which is all in-kernel nowadays
[16:20:57] <fuzzie> dhewg: this is 3D! shiny! shaders!
[16:21:06] <dhewg> weee
[16:21:29] <fuzzie> just ATI got into a sulk after this generation of chipset :/
[16:22:35] * tomprince wants somebody to build him a vm with android ndk and gemrb dependencies
[16:22:42] <tomprince> testing against a buildbot is no good if you aren't testing all the platforms, and don't have enough tests.
[16:22:49] <fuzzie> meh
[16:22:50] <tomprince> well, not *no* good.
[16:23:08] <fuzzie> the thing is, the libSDL for android is a hacky moving target
[16:23:31] <dhewg> i confirm that :P
[16:23:32] <tomprince> That was my impression, as well.
[16:23:42] <fuzzie> so without a native android port, it is tricky to maintain a build env
[16:24:11] <tomprince> Which is why I never set one up myself, since I couldn't figure out what exact dependencies I needed, among other things.
[16:24:40] <dhewg> just take a look whats all in peyla's git tree :P
[16:24:42] <fuzzie> it used to be really annoying to bundle a STL port in, too
[16:25:03] <fuzzie> i guess at least that is simpler now
[16:25:32] <dhewg> there're still some issues with stl
[16:25:43] <dhewg> but does gemrb use any/much of it?
[16:25:47] <fuzzie> yes
[16:25:51] <fuzzie> possibly a mistake to do so
[16:25:56] <dhewg> i think i didnt see any exception code yet
[16:26:16] <fuzzie> no, exceptions we don't use
[16:26:27] <fuzzie> global variables w/constructors we are still battling somewhat
[16:26:41] <dhewg> well, not that this is stl, i was more thinking about android c++/stl issues in general
[16:27:36] <dhewg> there's an issue in the latest stable ndk with global constructors when dlopen() .so's from native code
[16:27:55] <tomprince> and I would be inclined to use more stl ;)
[16:28:02] <dhewg> but if you don't need exception, you can use the smaller stlport, which is in the ndk too
[16:28:20] * tomprince squares off against fuzzie to fight, and then runs and hides, laughing
[16:28:24] <fuzzie> hehe
[16:28:59] <fuzzie> i'm fairly sure i've added my fair share of STL uses to gemrb :P
[16:30:13] <tomprince> (fuzzie keeps the worst of my abuses of c++ out of gemrb)
[16:30:37] <dhewg> abuse? :P
[16:30:58] <fuzzie> i'm not sure i'd call it abuse :P
[16:31:15] <dhewg> i have stl abusing collegues :)
[16:31:17] <fuzzie> but i am the brave hero, fighting off the attacks of boost and overcomplex templating
[16:31:36] <tomprince> excesses then :)
[16:32:19] <dhewg> it totally makes sense to keep it simple when additional complexity doesnt help solving problems
[16:33:04] <dhewg> coworkers just like to spam bind2nd and boost template voodoo _everywhere_
[16:33:06] <fuzzie> well, gemrb is also largely coded by people who are not experienced with C++
[16:33:31] <fuzzie> and subtle stuff like . vs -> on smart pointers is quite enough to confuse at times
[16:34:41] <dhewg> heh
[16:35:09] <dhewg> well, in general i like scummvm's approach
[16:35:25] <tomprince> where as I sometimes read the standard for fun. and wrote a compiler for a class in c++0x.
[16:35:30] <fuzzie> i've also learnt that adding dependencies to projects intended to be portable is something to be avoided at all cost
[16:35:47] <dhewg> exactly
[16:35:57] <fuzzie> although thankfully we don't have to try and be portable like scummvm :P
[16:36:08] <dhewg> but it could be :P
[16:36:29] <fuzzie> my sole use of c++0x so far has been for a class, too
[16:36:50] <dhewg> but the python interpreter already wants an OS, which disqualifies 75% of the scummvm ports for gemrb
[16:37:28] <fuzzie> python isn't too bad to port to weird places
[16:37:44] <tomprince> We don't need any os services in python, so it is at least theoretically possible to port it.
[16:37:55] <fuzzie> i'd say we try not to use any weird modules, but edheldil ruined it with the autodetector, should fix that
[16:38:08] <dhewg> heh
[16:38:19] <fuzzie> (it uses 'os' to poke around at directories, and hence wants a filesystem)
[16:38:39] <fuzzie> but anyway let's make it work first :-P
[16:39:00] <dhewg> yeah, and there's no sane stuff for that to make python work on most console homebrew libs
[16:39:05] <dhewg> like the wii
[16:39:17] <dhewg> we run on bare metal there
[16:39:23] <dhewg> no such thing as a process :P
[16:39:28] <fuzzie> i first came into this channel in *2004*
[16:40:17] <dhewg> but uhm
[16:40:33] <fuzzie> 23:27 <fuzzie> msvc6's compiler has too many template issues. :)
[16:40:35] <fuzzie> ^- heh
[16:40:45] <dhewg> python itself doesnt run without its rt library, right?
[16:40:56] <dhewg> does the android bundle all that?
[16:41:00] <dhewg> +port
[16:41:32] <tomprince> except for the autodection code, i don't think we use any of the stdlib that isn't builtin.
[16:41:55] <tomprince> Although we have had bugs wrt that from time to time.
[16:42:35] <dhewg> iirc python itself initializes at least the os module, which in return has dependencies on other modules
[16:42:39] <fuzzie> dhewg: i have no idea
[16:42:51] <fuzzie> android port is one of those 'someone on the forum' things
[16:43:48] <dhewg> :)
[16:44:00] <dhewg> same as for scummvm then :D
[16:44:33] <fuzzie> tomprince: any idea what you'd move out of Interface to stop dependencies on it?
[16:44:47] <tomprince> haven't looked yet.
[16:45:04] <tomprince> Ideally, almost nothing should be calling into it, I think.
[16:45:40] <fuzzie> optimistic, given the name :)
[16:47:07] <tomprince> it should really be called globals ...
[16:49:18] <tomprince> If we don't want to use the stdlib, perhaps we should nuke the PYTHONPATH before we start.
[16:49:41] <fuzzie> they're all builtin
[16:49:59] <fuzzie> for the platforms we're likely to test on
[16:50:00] <fuzzie> i think
[16:51:25] <dhewg> PYTHONPATH needs to point at the runtime path, if you don't set it, it uses the compiled in value. if you set it to point to where no runtime is, PyInitialize fails
[16:51:48] <fuzzie> well, on windows at least, it works fine with just the .dll
[16:52:02] <dhewg> o_O sure?
[16:52:15] <fuzzie> although that doesn't stop people coming in and complaining about it breaking because they set PYTHONPATH to some random python install
[16:52:19] <dhewg> if you run the python installer, it will write the rt path to the registry
[16:52:24] <dhewg> and the dll will use that
[16:52:43] <fuzzie> yes, but that's not much use for distributing apps
[16:53:38] <fuzzie> we had some issues with i think one of the redistributable python26.dll files wanting 'string', but it was probably misbuilt and we just stopped using the module, problem solved
[16:54:11] <dhewg> does the gemrb windows dist bundle the python runtime?
[16:54:25] <fuzzie> it bundles python26.dll
[16:54:35] <fuzzie> and it works fine in a bare windows install, i promise :P
[16:55:15] <dhewg> dll stolen from the official dist or self compiled?
[16:55:28] <fuzzie> stolen from something official
[16:56:08] <dhewg> huh
[16:56:27] <dhewg> maybe they changed that, but that definitely wasnt possible afaict
[16:57:15] <fuzzie> you can even build it statistically
[16:57:17] <fuzzie> statically
[16:57:44] <fuzzie> you can't load any external modules if you do that, though, due to windows not liking dll->exe dynamic symbols very much
[16:58:23] <fuzzie> but the single-.dll is documented as working on python 2.3
[16:59:02] <dhewg> hm, is that a windows special?
[16:59:26] <fuzzie> well i'm sure you can't do this by default with unix builds :-)
[17:00:03] <fuzzie> i think someone here managed to build python statically into a linux build for an embedded platform, after some time fighting it
[17:00:27] <fuzzie> maybe SiENcE
[17:01:27] <dhewg> it should still require a couple of .py files
[17:01:32] <dhewg> weird
[17:01:52] <fuzzie> it sounds like you may have been taken in by the evil anti-python-embedding forces
[17:02:05] <dhewg> maybe :P
[17:02:15] <fuzzie> just remember to repeat "lua is bad" at short intervals and it'll all be ok.
[17:02:25] <dhewg> hehe
[17:02:36] <tomprince> wha .... why? :)
[17:02:38] <dhewg> well, lua makes more sense when thinking portability :P
[17:02:40] <fuzzie> of course Lua was embedded in the original Baldur's Gate etc engines :P
[17:02:50] <fuzzie> and lua is just a horrible language!
[17:03:21] <fuzzie> also it seems to turn people insane, see Grim Fandango and sword25 etc
[17:03:29] <dhewg> hehe
[17:03:45] <fuzzie> otherwise known as "how not to serialise your script objects, in one simple lesson involving a club"
[17:04:00] <tomprince> it seems a nice little language, from what I have seen.
[17:04:23] <dhewg> there's always brainfuck if the goal is to turn ppl insane
[17:07:31] <tomprince> I think intercal is worse.
[17:07:56] <tomprince> I think a bunch of other esoteric languages are actually not terribly unreasonable, from a cs perspective
[17:09:04] <fuzzie> you are reminding me that i have a turing machine to write :/
[17:09:43] <tomprince> :P
[17:11:54] <fuzzie> i am not getting this merge done so far, between irc and RL things
[17:15:08] <fuzzie> i shall go on a quest for coffee. bbiab.
[17:40:43] <wjp> a worthy quest
[17:56:15] <fuzzie> indeed
[17:57:04] <-- Bo_Thomsen has left IRC (Quit: Leaving.)
[17:58:24] <dhewg> the tooltip for "Two Handed Sword +1" is not big enough. looks like the " +1" is not used to calc the text len
[18:04:49] <-- |Cable| has left IRC (Remote host closed the connection)
[18:06:14] --> |Cable| has joined #gemrb
[18:10:17] <-- tomprince has left IRC (Remote host closed the connection)
[18:10:38] --> tomprince has joined #gemrb
[18:47:21] <fuzzie> dhewg: the fancy scrolling tooltips?
[18:47:53] <dhewg> yeah
[18:48:02] <dhewg> are there others?
[18:48:57] <fuzzie> this is possibly one of those things i coded years ago
[18:53:34] <fuzzie> yes, it is not so smart
[19:31:51] <-- Gekz has left IRC (Ping timeout: 250 seconds)
[19:45:23] <dhewg> crash upon clicking on a bookshelf: http://pastie.org/1798549
[19:45:55] <fuzzie> hm
[19:46:34] <fuzzie> bad data, but we shouldn't crash
[19:46:50] <fuzzie> got the console output from just before?
[19:46:59] <fuzzie> it should've complained about being unable to find an .itm
[19:51:38] --> Gekz has joined #gemrb
[19:51:39] <-- Gekz has left IRC (Changing host)
[19:51:39] --> Gekz has joined #gemrb
[19:57:34] <-- Gekz has left IRC (Ping timeout: 246 seconds)
[20:01:57] <fuzzie> i am pretty tired of gcc errors now :P
[20:02:35] <dhewg> :P
[20:02:48] <dhewg> so, that crash is because of corrupt game data?
[20:03:09] --> Gekz has joined #gemrb
[20:03:56] <fuzzie> well, if it can't get an item by resref, presumably the data is bad or incomplete
[20:04:07] <fuzzie> but difficult to tell without knowing what .itm it tried loading
[20:08:28] <-- Gekz has left IRC (Ping timeout: 246 seconds)
[20:09:00] <fuzzie> but if i'd noticed the lack of check there before, i'd have just added an abort()
[20:11:37] --> Gekz has joined #gemrb
[20:22:10] --> Gekz_ has joined #gemrb
[20:22:10] <-- Gekz_ has left IRC (Changing host)
[20:22:10] --> Gekz_ has joined #gemrb
[20:22:25] <-- Gekz has left IRC (Ping timeout: 246 seconds)
[20:25:04] <fuzzie> oh great, what's this GetSpellCastOn doing here
[20:26:17] <fuzzie> i'm now hoping to get this committed just to stop anyone from adding more and more horrible hacks
[20:27:22] <-- Gekz_ has left IRC (Ping timeout: 246 seconds)
[20:29:27] --> Gekz has joined #gemrb
[20:29:27] <-- Gekz has left IRC (Changing host)
[20:29:27] --> Gekz has joined #gemrb
[20:34:01] <fuzzie> hoorah, it linked
[20:37:08] <-- Gekz has left IRC (Ping timeout: 260 seconds)
[20:39:37] <fuzzie> even scarier, it's still working
[20:40:17] --> Gekz has joined #gemrb
[20:41:49] <dhewg> :)
[20:43:13] <fuzzie> everything is still dying forever though :(
[20:44:35] <fuzzie> ah, because i am incompetent
[20:48:56] <-- Gekz has left IRC (Ping timeout: 258 seconds)
[20:50:06] <fuzzie> also the screen centering code is seriously broken
[20:50:13] <fuzzie> what on earth
[20:51:20] --> Gekz has joined #gemrb
[20:51:20] <-- Gekz has left IRC (Changing host)
[20:51:20] --> Gekz has joined #gemrb
[20:52:57] <fuzzie> sigh
[20:53:24] <fuzzie> ok who messed with the effect registration code? :P
[20:56:06] <-- Gekz has left IRC (Read error: Connection reset by peer)
[20:56:17] --> Gekz has joined #gemrb
[20:57:13] <fuzzie> oh, hm, corruption maybe
[21:00:37] <-- Gekz has left IRC (Ping timeout: 246 seconds)
[21:01:10] --> Gekz has joined #gemrb
[21:05:32] --> Gekz_ has joined #gemrb
[21:05:52] <-- Gekz has left IRC (Ping timeout: 246 seconds)
[21:18:56] --> lynxlynxlynx has joined #gemrb
[21:18:56] <-- lynxlynxlynx has left IRC (Changing host)
[21:18:57] --> lynxlynxlynx has joined #gemrb
[21:18:57] --- ChanServ gives channel operator status to lynxlynxlynx
[21:20:16] <-- Gekz_ has left IRC (Read error: Connection reset by peer)
[21:24:03] <fuzzie> ugh, so i wonder what the difference between SpellCast and SpellCastPriest is
[21:31:23] <fuzzie> lynxlynxlynx: around?
[21:31:33] <lynxlynxlynx> i hope it's not class emulation
[21:31:58] <fuzzie> it seems it's broken in gemrb as-is, so i just duplicated that behaviour :P
[21:33:16] <fuzzie> still think it's sensible to just commit this stuff as broken?
[21:35:28] <lynxlynxlynx> sure, you know what happens otherwise
[21:35:55] <lynxlynxlynx> i'm part of a conference the whole weekend, so i won't be available much though
[21:36:17] <lynxlynxlynx> but the end of april is a what, 8 day holiday :)
[21:36:21] <fuzzie> fairly sure it can late, considering how much is broken recently
[21:36:26] <fuzzie> it can wait
[21:36:36] <fuzzie> i'm pretty sick too, not sure why
[21:40:49] --> Gekz has joined #gemrb
[21:50:27] <lynxlynxlynx> you should be here, i'm at a four star spa :)
[21:51:11] <lynxlynxlynx> there were so many technical issues with the projector and the sound system that it wasn't funny though
[22:04:14] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[22:29:31] --> Bo_Thomsen has joined #gemrb
[22:48:31] <CIA-52> GemRB: 03fuzzie * r7f004525f9fe 10gemrb/gemrb/ (20 files in 7 dirs):
[22:48:31] <CIA-52> GemRB: Rewrite some of the action/trigger code.
[22:48:31] <CIA-52> GemRB: Among other things, it adds a 'proper' trigger list. It is unfinished,
[22:48:31] <CIA-52> GemRB: rather messy and probably breaks quite a lot, but should hopefully be
[22:48:31] <CIA-52> GemRB: a good starting point for fixing all of this code.
[22:49:18] <fuzzie> whurgle :(
[22:49:52] <fuzzie> in the end that is really not so much code
[22:50:39] <fuzzie> left out the complex Update stuff for now, because it was easily removed and i'm too sick to work out what on earth. so have fun with your broken codebase :P
[22:54:49] <fuzzie> i played through the dungeon a bit and fixed the bugs i found but i probably missed some really obvious stuff..
[22:56:56] <fuzzie> and i played pst a little bit and it fixes the bugs which were annoying me. so i'm happy.
[23:01:55] <tomprince> fuzzie: done for now?
[23:02:27] <fuzzie> yes
[23:02:34] <fuzzie> everything else is completely new code
[23:02:48] <fuzzie> so trivial merge whenever i get around to it, which will not be this evening :)
[23:05:27] <fuzzie> is an enum really guaranteed to start at 0?
[23:06:03] <fuzzie> i guess so
[23:15:19] <fuzzie> all looks ok then
[23:15:36] <tomprince> Doesn't seem to break anything obvious.
[23:16:01] <fuzzie> i'm surprised to find __android_log_vprint in older android versions
[23:16:09] <fuzzie> usually whenever i look for something in an older android version, it's never there
[23:16:27] <CIA-52> GemRB: 03tom.prince * r95c07cff7ec5 10gemrb/gemrb/ (20 files in 7 dirs):
[23:16:27] <CIA-52> GemRB: Merge remote-tracking branch 'sf' into HEAD
[23:16:27] <CIA-52> GemRB: Conflicts:
[23:16:27] <CIA-52> GemRB: gemrb/core/Scriptable/Actor.cpp
[23:16:32] <CIA-52> GemRB: 03tom.prince * re87c4a62bac7 10gemrb/gemrb/core/System/ (Logging.cpp Logging.h): logging: make print* functions instead of macros.
[23:16:33] <CIA-52> GemRB: 03tom.prince * rf4df64e846b5 10gemrb/gemrb/ (74 files in 33 dirs):
[23:16:33] <CIA-52> GemRB: logging: Change printing to use print instead of printf.
[23:16:33] <CIA-52> GemRB: Signed-off-by: Tom Prince <tom.prince@ualberta.net>
[23:16:34] <CIA-52> GemRB: 03tom.prince * r06358bcd6ed3 10gemrb/gemrb/core/System/ (Logging.cpp Logging.h): logging: Move color knowledge out of header.
[23:16:35] <CIA-52> GemRB: 03tom.prince * r60180d8a4577 10gemrb/gemrb/core/System/ (Logging.cpp Logging.h): logging: Header file cleanup
[23:16:36] <CIA-52> GemRB: 03tom.prince * rbbee89ee8f6c 10gemrb/gemrb/ (8 files in 3 dirs):
[23:16:36] <CIA-52> GemRB: logging: Add print function to forward to printf.
[23:16:36] <CIA-52> GemRB: This also renames the android specific function of the same purpose.
[23:16:39] <CIA-52> GemRB: 03tom.prince * r86acd42ff214 10gemrb/gemrb/core/System/Logging.h:
[23:16:39] <CIA-52> GemRB: logging: Poison printf, so it doesn't get re-introduced.
[23:16:39] <CIA-52> GemRB: This is only with recent gcc, but that is enough to keep it out.
[23:16:39] <CIA-52> GemRB: Signed-off-by: Tom Prince <tom.prince@ualberta.net>
[23:16:49] <CIA-52> GemRB: 03tom.prince * rdaba0d9c2590 10gemrb/gemrb/core/System/Logging.cpp:
[23:16:49] <CIA-52> GemRB: logging: Android supports vprint, so leave only msvc with bogus codepath.
[23:16:49] <CIA-52> GemRB: (msvc6 doesn't support vcprintf)
[23:18:31] <tomprince> Another wall of text.
[23:19:17] <dhewg> i think i forgot how to play these games :P
[23:26:33] <dhewg> or maybe i just fail it
[23:27:49] <fuzzie> tomprince: ah, alas, not quite a perfect merge then :-)
[23:28:23] <tomprince> the rest of your code?
[23:28:36] <fuzzie> no, what you merged just now
[23:28:52] <tomprince> Only one conflict.
[23:29:22] <tomprince> I was actually suprised. :)
[23:31:22] <fuzzie> hopefully i can get away with nicely bite-sized commits now
[23:33:27] <fuzzie> as usual, it's not about it being lots of code, just about me wanting to actually check things are sane this time around, so this can actually be the final rewrite..
[23:33:48] <fuzzie> but must sleep now. glad to see the print() thing :) ninight