#gemrb@irc.freenode.net logs for 18 Feb 2012 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:07:43] <-- kettuz has left IRC (Quit: Leaving)
[00:25:05] --> brad_a has joined #gemrb
[00:25:06] <-- brad_a has left #gemrb
[00:26:32] --> brad_a has joined #gemrb
[00:26:39] <brad_a> well search for "GUIEnhancements"
[00:27:02] <brad_a> you would mostly be interested in how it is implemented in the py scripts
[00:27:10] <brad_a> no so much interface.cpp
[00:37:14] <lostLinSoul> Oh I see, I did the search earlier and just saw a smattering of the word in a few assignments, sos thought I was missing something
[00:39:59] <lostLinSoul> Near Infinity seems to be easier for reading the resource files - although ti's a pain in *nix as it wants all filenames in uppercase and Weidu requires iverything in lowers case for mod installs
[01:27:16] <-- brad_a has left IRC (Ping timeout: 272 seconds)
[01:30:45] --> brad_a has joined #gemrb
[02:08:11] <-- edheldil_ has left IRC (Ping timeout: 260 seconds)
[03:52:16] --> edheldil_ has joined #gemrb
[03:54:00] <tomprince> https://github.com/tomprince/gemrb/compare/logging <--- particularly the last two commits
[03:54:24] <tomprince> printMessage is now restricted to a few uses in GameScript that I need to refactor
[03:56:11] <tomprince> About 200 calls to print left.
[03:57:05] <brad_a> kill them! kill them with fire!
[03:57:15] <tomprince> It sill needs some rebasing, and the Logger interface needs to be synced with the Logging interface.
[03:58:35] <tomprince> I was also wondering if it would make sense to use LogBuffer other than for logging, where we have snprintf with fixed size buffers, everywhere.
[03:59:02] <tomprince> But, I think I am happy with how things are turning out.
[03:59:19] <tomprince> And it isn't too magic, either. ;)
[03:59:27] <tomprince> .... at least not in my opnion.
[04:06:17] <edheldil_> tomprince: the shift from methodName to MethodName is intentional?
[04:06:52] <tomprince> edheldil_: for dump?
[04:07:20] <tomprince> Yes. Well, I don't have a preference either way, but there was a mix of dump, Dump and DebugDump.
[04:09:16] <tomprince> I'd be quite happy to name them all dump, instead. More than happy in fact, I just happend to hit something called Dump fisrt. :)
[04:10:43] <edheldil_> I meant from printStatus() to LogFailure()
[04:11:11] <tomprince> Wel, the latter ended up Log(ERROR,
[04:11:26] <tomprince> log wouldn't work, since that conflicts with math.h
[04:11:58] <tomprince> Partly, I had in mind the sample interface brad_a posted a week or two ago, that used Log....
[04:12:21] <tomprince> But, other than that, no strong feelings either way.
[04:13:32] <tomprince> We should pick some coding conventions. :)
[04:13:40] <edheldil_> I bear my part of the blame, but it would be nice to settle on some
[04:13:50] <tomprince> Yes.
[04:13:57] <brad_a> my convention is to absorb the conventions of the surrounding code :-P
[04:14:49] <edheldil_> brad_a: which is already inconsistent :)
[04:14:56] <brad_a> yup :)
[04:15:17] <tomprince> I have a tendency to absorb conventions of the surrounding code to my prefered conventions. But I think that it moslty matched at least one of the styles in use.
[04:15:27] <tomprince> It certainly does now. :P
[04:16:18] <tomprince> I think the C++ formating is converging, anyway.
[04:16:26] <tomprince> But we don't have a naming guide.
[04:16:55] <edheldil_> personally, i am for Java convention
[04:22:51] <tomprince> What are they? camelCase for methods and CamelCase for classes?
[04:23:39] <tomprince> The latter is almost universal.
[04:26:26] <tomprince> We don't have much under_scored_words.
[04:26:44] <tomprince> But we have a mix of CamelCase and camelCase for methods/functions.
[04:29:35] <tomprince> Actually we have comparatively little of the latter, in terms of disticnt names. 3150 CamelCase and 292 camelCase or so (of any kind in headers)
[04:31:00] <edheldil_> hm, I was reading your changes from the oldest one
[04:32:37] <edheldil_> why the move from LogFailure to Log(ERROR) ?
[04:33:29] <tomprince> 1) To avoid proliferation of functions, 2) to support openal, which was passing the level to functions
[04:33:53] <tomprince> 3) to more easily filter on level, hopefully.
[04:35:15] <edheldil_> Re 3, how?
[04:36:07] <tomprince> At some point somewhere doing 'if (level < log_level_limit) { log } else { drop }' or so
[04:41:21] <edheldil_> I usually write st. like log(severity, msg) { if severity > ... } ; info(msg) { log(INFO, msg) }; warning {log{WARN, msg)} ; error {log(ERROR, msg); exit; }
[04:47:13] <tomprince> That is easy enough to do. Just a bit more sed.
[04:48:51] <edheldil_> hehe. No Source->Refactor->Rename? ;-)
[04:49:31] <tomprince> I call that sed.
[04:49:39] <edheldil_> :-D
[04:50:07] <tomprince> I've done quite a bit of sed magic to gemrb over the years. ;)
[04:50:30] <tomprince> Stuff that Source->Refactor->rename probably couldn't.
[04:51:15] <tomprince> Like replacing all calls to printMessage that ternminate in a \n and are RED or LIGHT_RED to Log(ERROR, ... without the newline.
[04:52:44] <edheldil_> :) sure, sed is powerful
[04:54:03] <brad_a> wtf is sed
[04:54:38] <tomprince> https://gist.github.com/1857491
[04:56:05] <tomprince> https://www.gnu.org/software/sed/manual/sed.html
[04:57:11] <edheldil_> brad_a: swiss chainsaw of all swiss knives
[04:57:20] <brad_a> very cool :)
[04:57:29] <tomprince> Isn't that perl oneliners?
[04:58:00] <tomprince> Except I switched from perl to sed+awk quite a few years ago, now. :)
[04:58:14] <edheldil_> that would be a running chainsaw hidden in a paper box :)
[04:58:48] <brad_a> i actually use this ones a long time ago and since forgot about it
[05:00:40] <edheldil_> that gist link is your useful recipes "clipboard"?
[05:01:24] <tomprince> No. That is just me grepping for 'sed -i' in my shell history.
[05:02:10] <edheldil_> either you have a long history ot you use it awful lot
[05:02:12] <tomprince> Although, I do treat it as a repository of useful recipes.
[05:02:28] <tomprince> This machine as ~100,000 lines.
[05:02:41] <tomprince> (unique lines)
[05:02:48] <edheldil_> eek
[05:04:00] <tomprince> The first entry is from 2007.
[05:04:53] <edheldil_> and is it you setting the high history limit? :)
[05:05:12] <tomprince> Yes.
[05:05:38] <edheldil_> is it bash, btw?
[05:05:42] <tomprince> zsh
[05:06:06] <edheldil_> ah. Never got to trying it
[05:07:55] <tomprince> I think I switched before bash 4 was common.
[05:08:43] <edheldil_> what are the advantages?
[05:08:44] <tomprince> I have a smaller history file on what is now my server, dating from 2005.
[05:09:18] <tomprince> Less, now with bash 4, I think. (from what I've heard, I stopped caring long ago)
[05:09:34] <edheldil_> I sometimes scrub all history on purpose :)
[05:09:35] <tomprince> One thing that is nice is you get a bunch of glob modifiers.
[05:10:21] <tomprince> I'd feel lost without my history.
[05:10:28] <tomprince> Probably not all of it, but sill.
[05:11:15] <tomprince> Becuase I always have it, I tend to use it to remember things. I probably write less shell scripts, because of it, since I can just go back in my history and grab it.
[05:11:52] <tomprince> For quite a while, I just searched my history for the command to suspend/hibernate my laptop. (It is some crazy long dbus-client call)
[05:11:56] <edheldil_> it contains things that did not work as well, no?
[05:12:19] <edheldil_> heh
[05:12:49] <tomprince> Yes, well the most recent thing is generally the most recent.
[05:13:04] <tomprince> I also use it to keep track of where I am in shows that I am watching. :)
[05:14:45] <edheldil_> unified storage :)
[05:15:17] <tomprince> :)
[05:15:47] <edheldil_> with base64, you could hold whole episodes in it :-)
[05:21:46] <-- edheldil_ has left IRC (Ping timeout: 276 seconds)
[05:22:12] --> edheldil_ has joined #gemrb
[05:25:42] <edheldil_> good night
[05:27:24] <tomprince> morning
[05:27:32] <tomprince> or night.
[05:27:41] <tomprince> I am apparently not paying attention.
[05:46:28] <-- edheldil_ has left IRC (Ping timeout: 260 seconds)
[07:23:37] <-- brad_a has left IRC (Quit: brad_a)
[07:29:28] --> brad_a has joined #gemrb
[07:30:37] <-- brad_a has left IRC (Client Quit)
[07:35:59] --> Yoshimo has joined #gemrb
[07:44:24] --> Gekz has joined #gemrb
[07:44:24] <-- Gekz has left IRC (Changing host)
[07:44:24] --> Gekz has joined #gemrb
[08:06:44] <-- harijan has left IRC (Ping timeout: 252 seconds)
[08:27:25] --> lynxlynxlynx has joined #gemrb
[08:27:30] <-- lynxlynxlynx has left IRC (Changing host)
[08:27:30] --> lynxlynxlynx has joined #gemrb
[08:27:30] --- ChanServ gives channel operator status to lynxlynxlynx
[08:46:57] <lynxlynxlynx> messagewindow contains some unrelated code, since it is one of the first scripts to run
[09:43:14] --> edheldil_ has joined #gemrb
[09:51:43] --> link6616 has joined #gemrb
[09:53:10] <link6616> Hello. I was wondering at all if anyone could help me. I'm trying to uninstall BG1 from my ios device, but deleting the config in the app didn't seem to work given the amount of space left on my ipad, and i can't find the directory via iphonebrowser atm
[09:54:02] <fuzzie> hm, our iOS expert is brad_a, who is currently asleep
[09:55:04] <link6616> that seems perfectly reasonable
[09:55:14] <fuzzie> should be under /var/mobile/Applications/<sandbox id>/Library/
[09:55:29] <fuzzie> but I suppose that is probably not very helpful
[09:57:17] <link6616> That should actually help a ton
[09:57:35] <link6616> as it gives me a good place to have a much finer look
[10:01:12] <link6616> Well that didn't help actually... But oh well... It's hardly a life or dead issue
[10:02:39] <-- edheldil_ has left IRC (Ping timeout: 252 seconds)
[10:03:02] <lynxlynxlynx> http://www.gameranx.com/updates/id/5087/article/bioware-s-infinity-engine-now-open-source-with-cross-platform-support/ <-- silly titles
[10:03:30] <lynxlynxlynx> link6616: aren't there any good search methods on ios?
[10:03:55] <lynxlynxlynx> search the storage for baldur.ini for example
[10:04:58] <link6616> Not that I can find actually...
[10:05:06] <link6616> Iphone browser doesn't have a search
[10:05:23] <link6616> iOS devices themselves don't really let you search for those kind of files anyway....
[10:05:42] <link6616> and the only file tools I've found on iOS don't offer searches it seems...
[10:06:21] <link6616> Kind of sad because having seen a simmilar article on 1UP I was super excited as I keep meaning to play these games but rarely have enough by my computer
[10:07:15] <lynxlynxlynx> sounds like a brick to be honest
[10:07:51] <link6616> Yeah, iOS really sucks for power usage
[10:08:07] <fuzzie> the filesystem is not for you!
[10:10:55] <link6616> No it doesn't really seem to be for me at all
[10:44:11] <-- link6616 has left IRC (Ping timeout: 245 seconds)
[11:11:37] <CIA-28> GemRB: 03avenger_teambg * r917611d10cc1 10gemrb/gemrb/ (GUIScripts/iwd2/CharGen9.py override/iwd2/raceflag.2da): IWD2:racial state/AC bonuses in chargen
[11:21:38] --> edheldil_ has joined #gemrb
[11:33:30] <CIA-28> GemRB: 03avenger_teambg * rd50890da0a35 10gemrb/gemrb/GUIScripts/ (7 files in 3 dirs):
[11:33:30] <CIA-28> GemRB: fixed pause flags in guiscripts
[11:33:30] <CIA-28> GemRB: fixed state flag operator (or instead of add)
[11:49:33] <lynxlynxlynx> mistake
[11:49:41] <lynxlynxlynx> or is logical, | is bitwise
[11:51:19] <lynxlynxlynx> the pause change don't look good either, >1 toggles pause :s
[12:00:34] --> kettuz has joined #gemrb
[12:32:46] <-- kettuz has left IRC (Quit: Leaving)
[13:06:07] --> SiENcE has joined #gemrb
[13:19:13] --> Avenger has joined #gemrb
[13:19:26] <Avenger> nah, lynx, togglepause is the first value >1, the quiet flag is the second value
[13:19:53] --- ChanServ gives channel operator status to Avenger
[13:19:59] <lynxlynxlynx> ah, my bad
[13:20:19] <lynxlynxlynx> the state or-ing is definitely wrong though
[13:20:38] <lynxlynxlynx> 1 or 2 == 1 vs 1|2 == 3
[13:22:20] <CIA-28> GemRB: 03avenger_teambg * rf905e61a754d 10gemrb/gemrb/docs/en/GUIScript/GamePause.txt: gamepause doc update
[13:22:38] <Avenger> what is 0 or 0x22000 ?
[13:22:45] <Avenger> because it worked for me
[13:23:41] <Avenger> yeah, 1 or 3 is still 1
[13:24:37] <CIA-28> GemRB: 03avenger_teambg * rfd6f955e06d8 10gemrb/gemrb/GUIScripts/iwd2/CharGen9.py: binary or
[13:24:57] <Avenger> it wouldn't cause much problem as state is 0 in new chars, but you are right :D
[13:27:18] <lynxlynxlynx> yeah
[14:24:37] <tomprince> https://github.com/tomprince/gemrb/commit/6d9da011892b1564289127fd4299604481732876 and https://github.com/tomprince/gemrb/commit/0b6db19e9265f006a884e56280bd0fbb32ee9471 ?
[14:25:30] <fuzzie> first one is nice because we can dump results into message window I guess?
[14:26:36] <fuzzie> while second one is not okay because you're changing the output
[14:27:27] <fuzzie> not sure why?
[14:28:15] <fuzzie> github's diff view is kind of misleading too, it's telling me all the changes are in Exists()
[14:28:44] <fuzzie> but second one seems fine to me if you put back the initial print in Resource* GetResource()
[14:29:57] <tomprince> Well, without markup+parser there is no way to output part of a single line with partial color, now.
[14:32:16] <fuzzie> yes, but the only solution is to print two lines for the file searches, right?
[14:32:25] <tomprince> How come? I didn't want to turn the output into to lines, and I am still printing out the same info, just a little latter.
[14:32:49] <fuzzie> the filename should be printed *before* the possible crash during creation
[14:33:07] <fuzzie> at least, I thought that was the general consensus some days ago
[14:35:22] <tomprince> That is reasonable. Only in the Resource case, not the Stream case?
[14:36:18] <fuzzie> yes, I don't think there's much chance of crashes in anything except the Resource case..?
[14:36:46] <tomprince> No.
[14:47:21] <tomprince> fuzzie: What do you think of using more generally, for constructing strings?
[14:48:29] <fuzzie> don't know. if it's simpler..
[14:49:21] <tomprince> Well, my though was more about avoiding fixed size buffers everywhere.
[14:59:51] <Avenger> speed is important
[15:00:35] <Avenger> if you know the size of the string, even if it is off by 3-4, don't ever use varied length.
[15:01:18] <fuzzie> that can actually get really slow due to having to convert back/forth between fixed and dynamic buffers in some places
[15:01:28] <fuzzie> but I think it's the kind of thing you can review case-by-case
[15:02:43] <Avenger> absolutely never use varied length for constructing resrefs and variable names :)
[15:02:55] <fuzzie> after the hilarious strncpy thing, I am wary of speed
[15:03:08] <fuzzie> and that was caused *by* fixed-size buffers :P
[15:03:18] <fuzzie> but yes resrefs are tiny and trivial.
[15:04:05] <Avenger> i see code in iwd2, it does extra loops where it uses strings, and pretty simple where it uses resrefs
[15:04:31] <Avenger> the difference is huge both in speed and storage needs
[15:04:35] <tomprince> Well, for resrefs, we should have some helper code, anyway.
[15:04:55] <Avenger> keep it as simple as possible
[15:04:57] <fuzzie> yeah, we can special-case them
[15:05:21] <Avenger> i like places where resref comparation is simple comparing two dwords ;)
[15:05:30] <Avenger> simple->simply
[15:05:39] <Avenger> they did it some places
[15:05:40] <fuzzie> in fact I guess they could just be a class
[15:06:00] <Avenger> well, if you make it a class, use lots of inlining
[15:06:15] <fuzzie> yes, you could have inlined == operator which just does dword compare
[15:06:35] <fuzzie> not sure it's worth the hassle
[15:06:46] <tomprince> We'd need to make sure we null everything after the '\0' if we did that.
[15:06:50] <fuzzie> but yes I hate stupid C null-terminated strings so much for their inefficiency :)
[15:10:35] <tomprince> Well, if it is going to be used elsewhere, it should probably be renamed StringBuffer.
[15:12:59] <fuzzie> missing semicolon on the end of the '= 4095' in MSVC block?
[15:13:55] <tomprince> Wouldn't suprise me. :)
[15:14:27] <fuzzie> but the API right now looks trivial enough that we can replace/revert anything inefficient
[15:18:37] <tomprince> So, I'll rename it, but leave useing elswhere until after logging lands.
[15:30:33] <CIA-28> GemRB: 03avenger_teambg * rf7b6f0b249d5 10gemrb/gemrb/ (override/iwd2/feat0d.spl plugins/FXOpcodes/FXOpcodes.cpp): need a free left hand for deflect arrows
[15:31:33] <tomprince> fuzzie: What are your thought on having dedicated functions for different log levels?
[15:32:56] <fuzzie> i.e. something like logError(...) vs LOG(ERROR, ...)?
[15:33:09] <tomprince> yes.
[15:33:56] <fuzzie> not sure I mind either way, personally
[15:34:23] <tomprince> Well, we need the latter anyway, at least in OpenAL
[15:34:39] <tomprince> lynxlynxlynx/Avenger?
[15:42:03] --> brad_a has joined #gemrb
[15:42:13] <brad_a> mornin
[15:42:41] <brad_a> tomprince: why not define some macros fro different log levels instead of making new functions?
[15:43:52] <fuzzie> why make macros and not functions?
[15:44:21] <brad_a> i personally just favor one line of text for something so trivial?
[15:44:35] <fuzzie> you can do the functions on one line..
[15:44:53] <brad_a> true i guess :-P
[15:45:22] <brad_a> then igain i also tend to shy away from declaring the entire funcion in the header
[15:45:28] <brad_a> but i dont really care
[15:47:21] <Avenger> tom: i don't know if either way has any significance. This isn't like introducing a complex type with heavy levels of obfuscation potential
[15:47:54] <-- gembot has left IRC (Remote host closed the connection)
[15:48:39] <fuzzie> well I think tom is jsut looking for preferences.. :)
[15:48:47] --> gembot has joined #gemrb
[15:56:33] <brad_a> well there actually may be a good reason for not using full function definitions in this header
[15:56:55] <brad_a> if its what im thinking it is i will want to be using it with objective-c++
[15:57:10] <brad_a> and it gets fussy about c++ in the header files
[15:57:48] <brad_a> (i admit i havent actually looked at the code tho)
[15:59:02] <brad_a> but do what you will and if i have problems we can look at it then
[16:07:19] <brad_a> fuzzie: FYI it appears that SDL 2 has the ability upscale a resolution at least for iOS
[16:07:55] <brad_a> i can for example ask for 320x480 on iphone 4 and still have it fill the screen
[16:09:10] <fuzzie> you'd kind of hope so, since it's opengl
[16:10:22] <brad_a> well from what i had read it made it sound like its taking advantage of something apple specific
[16:10:47] <fuzzie> that would be odd
[16:11:01] <brad_a> but it was just people posting about it so they probably are assuming :-P
[16:11:35] <tomprince> Or maybe simply that SDL is built on top of OpenGL on ios?
[16:11:42] <fuzzie> yes, it's the only way to do it
[16:11:43] <tomprince> Where that isn't required, elsewhere?
[16:11:49] <fuzzie> that was my point :p
[16:11:57] <fuzzie> but it's also required on most other modern platforms I think
[16:12:02] <brad_a> we no matter the reason its a good thing :-P
[16:12:38] <brad_a> because when the iPad 3 launches i dont need a bunch of people complaining about gemrb runnig in a bitty little box :-P
[16:13:38] <brad_a> my hope is that its automatic that when i ask for 1024x768 it will know to fill the screen
[16:15:19] <brad_a> well i gotta go get ready so i can take a python test : )
[16:16:40] <fuzzie> good luck
[16:17:43] <lynxlynxlynx> no preference on the naming
[16:21:18] <lostLinSoul> brad_a: good luck
[16:22:10] <lostLinSoul> I've been looking at GUIEnhancement, but my probelm is seeing characters assigned to portrait buttons
[16:22:19] <lostLinSoul> Where does that happen
[16:22:30] <fuzzie> assigned?
[16:22:44] <lostLinSoul> I can work backwards ftom that
[16:22:55] <fuzzie> the buttons just represent the characters in the party, in party order
[16:23:30] <lostLinSoul> Yeash where portrait 1 is set to player and portrait 2 to imoen, etc
[16:24:03] <pmjdebruijn> silly question, does gemrb support arbitrary resolutions? wasn't the real engine limited to 800x600 ?
[16:24:07] <lostLinSoul> There has to be somthing which tell which portrait image to use etc
[16:24:21] <fuzzie> lostLinSoul: UpdatePortraitWindow() in GUIScripts/GUICommonWindows.py
[16:24:45] <fuzzie> pmjdebruijn: there's a Widescreen Mod available for all original games which modifies the resolution of their artwork - that works for both original engine and gemrb
[16:25:01] <pmjdebruijn> huh?
[16:25:04] <pmjdebruijn> artwork?
[16:25:18] <lostLinSoul> Ta, must have missed the part I was looking for as I scaned that file....will look again
[16:25:19] <pmjdebruijn> I just meant that more "world" would be visible
[16:25:53] <fuzzie> pmjdebruijn: the GUI surrounding the world is bitmaps, so you have to modify that art if you want to change the resolution
[16:26:28] <pmjdebruijn> http://www.g4g.it/g4g/wp-content/uploads/2008/08/baldurs_gate_hd_widescreen_patch_01.jpg
[16:26:31] <fuzzie> obviously it patches original exe file too, when required
[16:26:50] <fuzzie> but it's nothing gemrb-specific - see http://www.gibberlings3.net/readmes/readme-widescreen.html
[16:28:11] <pmjdebruijn> right
[16:28:13] <pmjdebruijn> that looks decent
[16:31:37] <lynxlynxlynx> reminds me we need some help
[16:32:13] <lynxlynxlynx> figuring out the right color of the blood overlay is a simple entry task
[16:50:09] <lostLinSoul> How can I stop the infernal '[ResourceManager]: Searching for THEME/THEMEB... THEME/THEMEB.acm...[Music]' popping up whilst I'm trying to use gdb!? >:(
[16:50:39] <tomprince> Disable sound.
[16:51:32] <lostLinSoul> I only saw volume control in the config, does 0 disable or just makes it inaudible?
[16:52:10] <lynxlynxlynx> inaudible
[16:52:20] <tomprince> AudioDriver=none would do it.
[16:52:52] <lostLinSoul> What when I compile? or as a command line arg?
[16:52:58] <brad_a> in the config
[16:54:02] <lostLinSoul> Ta I'll add that!
[16:54:37] <brad_a> tomprince: are you doing the same with configuration as you are doing with logger? ie separated from the core so that one could create a config object in their own way if they were so inclined?
[16:54:59] <tomprince> Yes. I'd like to do that.
[16:55:32] <brad_a> :) sweet
[16:55:48] <tomprince> I have a branch started, but that is in some ways more invasive.
[16:56:25] <brad_a> id like to nix config fiels for mac/ios altogether and use NSUserDefaults to to make a GUI config pane
[16:56:53] <fuzzie> it's a bit tricky because, what is 'config'?
[16:58:58] <Avenger> lynx: what blood overlay color???
[16:59:04] <brad_a> i dont knwo the exact answer to that, but certainly you shouldnt need to use a specific file type to create whatever it is :)
[16:59:33] <fuzzie> Avenger: on the portraits
[16:59:42] <fuzzie> i assume, since that has been wrong for approximately forever
[16:59:50] <lynxlynxlynx> yes
[17:00:04] <lynxlynxlynx> i changed it to be a bit darker, but that's it
[17:00:15] <-- Avenger has left IRC (Quit: bye!)
[17:00:22] <lynxlynxlynx> tried to figure out if all the values could be computed by pixel math
[17:01:59] <tomprince> brad_a: It isn't reading from the file that is tricky. It is getting the information from the file to the bits of the code that need it, and then back to save it.
[17:02:29] <fuzzie> and my argument is that a Config *_config; in Interface should do fine
[17:02:49] <brad_a> well i don tneed to go back to save it
[17:03:15] <fuzzie> that has to happen
[17:03:18] <brad_a> why?
[17:03:21] <fuzzie> because it has to include the config from baldur.ini also
[17:03:33] <brad_a> oh you are going to do that too? thats nice
[17:04:16] <brad_a> well i know you hate globals but that sems like the esiest way to make it accessable to outside code
[17:04:43] <brad_a> then the SDL plugin has a hook back into the cocoawrapper that can trigger a save on exit
[17:04:44] <fuzzie> doesn't need to be, right? you can just pass from main
[17:04:57] <brad_a> sure
[17:05:23] <fuzzie> i mean you could just have a subclass or something
[17:05:26] <fuzzie> i'm sure there's a nice method
[17:05:33] <brad_a> that would work
[17:06:05] <brad_a> see its not so hard :)
[17:07:25] <brad_a> anyhow if off now. thanks for the luck :)
[17:07:28] <-- brad_a has left IRC (Quit: brad_a)
[17:35:09] --> Gekz_ has joined #gemrb
[17:35:10] <-- Gekz_ has left IRC (Changing host)
[17:35:10] --> Gekz_ has joined #gemrb
[17:37:07] --> Cable_ has joined #gemrb
[17:37:21] <-- |Cable| has left IRC (Ping timeout: 240 seconds)
[17:37:22] <-- SiENcE has left IRC (Ping timeout: 240 seconds)
[17:37:22] <-- Gekz has left IRC (Ping timeout: 240 seconds)
[18:00:38] <lynxlynxlynx> uhhh, wiki suddenly down
[18:03:25] <CIA-28> GemRB: 03tom.prince * r2e9effbb187a 10gemrb/gemrb/core/ (CMakeLists.txt System/StringBuffer.cpp System/StringBuffer.h):
[18:03:25] <CIA-28> GemRB: Add StringBuffer class for building up strings incrementally.
[18:03:25] <CIA-28> GemRB: This will be need for emitting log messages in ResourceManager, and
[18:03:25] <CIA-28> GemRB: for generating debug dumps.
[18:06:14] <lynxlynxlynx> hah, something or someone deleted our whole config fodler
[18:07:17] <lynxlynxlynx> ah no, just git being silly
[18:10:56] <gembot> build #138 of cmake g++-4.2 is complete: Success [3build successful] Build details are at http://buildbot.gemrb.org/builders/cmake%20g%2B%2B-4.2/builds/138
[19:10:25] <lynxlynxlynx> bah, sf has to die just when we have some more attention
[19:17:04] <lynxlynxlynx> maybe i should make it redirect to the forums in the meanwhile
[19:17:10] <gembot> build #488 of msvc++6 is complete: Success [3build successful] Build details are at http://buildbot.gemrb.org/builders/msvc%2B%2B6/builds/488
[19:33:19] <gembot> build #261 of nmake-msvc++6 is complete: Success [3build successful] Build details are at http://buildbot.gemrb.org/builders/nmake-msvc%2B%2B6/builds/261
[19:34:57] <lynxlynxlynx> ok, we're back
[19:35:45] --> Avenger has joined #gemrb
[19:35:45] --- ChanServ gives channel operator status to Avenger
[19:36:18] <Avenger> i see the 0xa,0,0 and 0x2,0,0 rgb values for portrait overlay
[19:36:28] <Avenger> they seem to be a bit dark
[19:37:15] <Avenger> at least now i know what 'gravity is down' mean in the options :)
[19:38:34] <Avenger> this was in iwd2, btw
[19:41:43] <lynxlynxlynx> why two colors?
[19:42:00] <lynxlynxlynx> but it's a good start, we just have to tune the alpha then
[19:43:38] <Avenger> when they got hit, it is brighter
[19:43:44] <Avenger> then it goes dark
[19:43:55] <lynxlynxlynx> eh
[19:46:38] <Avenger> and i think the alpha is 50%
[19:46:50] <Avenger> but this is just a guess
[19:48:17] <tomprince> https://github.com/tomprince/gemrb/compare/logging <--- 17 delete lines :)
[19:48:28] <tomprince> ..... and 1700 changed.
[19:49:37] <tomprince> It'd be good to reorganize the commits, but it's a tricky thing for this.
[19:52:41] <Avenger> bg2 has the same constants
[20:01:16] <lynxlynxlynx> it's hard to reproduce
[20:03:34] --> SiENcE has joined #gemrb
[20:05:50] <Avenger> yep, this is something for wjp. This is some tinting type with r=10, g=0, b=0. Maybe it is old color + new color / 2
[20:05:59] <Avenger> err (old+new)/2
[20:07:21] <-- Avenger has left IRC (Quit: bye!)
[20:09:35] <lynxlynxlynx> i doubt it, but this could easily be tested with custom portraits
[20:09:54] <lostLinSoul> Where did the rgb value come from?
[20:13:43] <lynxlynxlynx> probably thin air
[20:14:12] <lynxlynxlynx> must've been one of those prehistoric few-months-of-work commits
[20:14:48] <lostLinSoul> lol
[20:16:03] <lostLinSoul> Well I though of taking a before and after rgb values of a light and dark pixel for the same portrait, but that does not seem to be helpful...
[20:19:50] <edheldil_> lynxlynxlynx: is not the whole trick just stripping away green and blue?
[20:20:24] <lostLinSoul> I recall someone saying that it sould be an easy entry level task, hope they will return and tell us how to do it without much effort
[20:20:35] <lynxlynxlynx> that was me
[20:20:46] <lynxlynxlynx> you just tweak the values
[20:21:06] <lynxlynxlynx> edheldil_: perhaps, yes
[20:21:52] <lostLinSoul> edheldil_: I don't think so
[20:21:52] <edheldil_> lostLinSoul: grepping sources for number 6 could be helpful as well ;-)
[20:22:36] <CIA-28> GemRB: 03lynxlupodian * r1fe597e74b19 10gemrb/gemrb/GUIScripts/GUICommon.py: blood portrait overlay a bit more similar to the original
[20:23:17] <lynxlynxlynx> if they are per-channel modifiers, bigger changes will need to be made, because now it really is an overlay
[20:23:46] <lynxlynxlynx> alpha eats all
[20:25:25] <lostLinSoul> If you just strip GB, then the image will be too light
[20:25:52] <edheldil_> we need that code for ps:t highlighting, which seems to be stripping away of red and perhaps decreasing g & B
[20:27:04] <gembot> build #210 of nmake-msvc++10 is complete: Success [3build successful] Build details are at http://buildbot.gemrb.org/builders/nmake-msvc%2B%2B10/builds/210
[20:27:44] <lostLinSoul> Wouldn't that just you a shade of teal?
[20:39:37] --> brad_a has joined #gemrb
[20:41:01] <edheldil_> lostLinSoul, lynxlynxlynx : http://imgur.com/a/lmCyj
[20:42:13] <edheldil_> you can clearly see it's tinting of the bitmap
[20:42:21] <brad_a> mercy that exam was brutal :(
[20:42:54] <edheldil_> what subject?
[20:43:01] <brad_a> python
[20:43:14] <edheldil_> sounds benign
[20:43:23] <brad_a> heh it jsut took forever
[20:43:38] <brad_a> 5 pages of written code
[20:44:41] <lostLinSoul> edheldil_ Where are we looking on the image?
[20:45:03] <edheldil_> there are two images
[20:45:18] <lostLinSoul> What the whole image?
[20:45:59] <lostLinSoul> The teal on the move over the door?
[20:46:41] <lostLinSoul> That's not what you're after though is it?
[20:46:42] <edheldil_> the big gate on the second image
[20:47:50] <brad_a> lots of news about gemrb lately :)
[20:47:55] <brad_a> here is another blurb: http://www.1up.com/do/blogEntry?bId=9096061
[20:48:52] <lostLinSoul> Thought it was the damge on the portrait icon that was being sought...
[20:49:23] <fuzzie> yes, edheldil_ is pointing out something else with a similar issue
[20:49:58] <lostLinSoul> I see
[20:56:03] <lynxlynxlynx> btw, i started a clipping page
[20:56:16] <edheldil_> good :)
[20:56:17] <lynxlynxlynx> http://www.gemrb.org/wiki/doku.php?id=clipping
[21:03:37] --> kamui has joined #gemrb
[21:32:10] <gembot> build #491 of msvc++6 is complete: Success [3build successful] Build details are at http://buildbot.gemrb.org/builders/msvc%2B%2B6/builds/491
[21:52:02] <gembot> build #264 of nmake-msvc++6 is complete: Success [3build successful] Build details are at http://buildbot.gemrb.org/builders/nmake-msvc%2B%2B6/builds/264
[22:05:19] <brad_a> in PollEvents i see: static unsigned long lastmousetime = 0;
[22:05:36] <brad_a> hmm nevermind :-p
[22:05:49] <brad_a> i got confused by an ivar of the same name
[22:06:41] <brad_a> do we need both tho
[22:06:59] <tomprince> Really?
[22:07:04] <brad_a> yes relly
[22:07:28] <tomprince> Well, then you should rename one of them, and probably make both be instance variables.
[22:07:42] <brad_a> im trying to figure out if we actually need both
[22:07:43] <tomprince> All the statics there probably should be, I'd guess.
[22:10:05] <brad_a> we dont need all of them
[22:13:11] <brad_a> i guess one is last mouse move time and one is last mousedown time
[22:32:40] <brad_a> heh i can totally get rig of that android crap in GemRB.cpp. SDL 1.2 has a SDL_ACTIVEEVENT event that can toggle audio play/pause when the app is activated or deactivated
[22:33:02] <fuzzie> brad_a: and it works?
[22:33:15] <brad_a> well obviously i need somebody to actually test that
[22:33:31] <fuzzie> should be simple to see from source
[22:33:52] <brad_a> ill post you a patch sometime after i finish this sdl refactoring
[22:34:37] <tomprince> Okay, that rebase wasn't too bad.
[22:34:58] <tomprince> Unless somebody objects, I'll push it tomorrow night.
[22:35:06] <tomprince> ^--- fuzzie/lynxlynxlynx
[22:36:01] <tomprince> Or earlier, if there is consensus.
[22:37:21] <brad_a> tomprince: did you say you enabled logging to the message window?
[22:37:29] <tomprince> No.
[22:37:40] <brad_a> oh. maybe that was a wonderful dream i had...
[22:37:55] <tomprince> That's for the future.
[22:37:59] <brad_a> ah
[22:38:13] <brad_a> it definitely needs to happen
[22:38:35] <brad_a> such as if debug mode is enabled or something
[22:43:14] <fuzzie> goin to have to improve it before then
[22:43:35] <tomprince> Well, I was thinking of havin a seperate display for (perhpas in the same place)
[22:43:45] <tomprince> And keeping a ringbuffer of recent log messages.
[22:44:02] <tomprince> We want that buffer anyway, so we can dump the begining of the log to a log file.
[22:44:11] <fuzzie> looks like pelya's SDL 1.2 calls SDL_PrivateAppActive(0, SDL_APPACTIVE|SDL_APPINPUTFOCUS|SDL_APPMOUSEFOCUS); ?
[22:44:19] <fuzzie> and pelya's SDL 1.3 does nothing
[22:44:41] <-- Yoshimo has left IRC (Quit: Yoshimo)
[22:45:54] <brad_a> well that is gone in 1.3/2.0
[22:46:00] <brad_a> you use window events for that instead
[22:46:40] <fuzzie> well, this is the code which is called when the app loses the foreground focus
[22:46:57] <fuzzie> so presumably the window events would be here
[22:47:09] <brad_a> i see
[22:47:56] <tomprince> brad_a: Once my logging branch lands, I'll let you or someone else cleanup the remaining print calls.
[22:48:01] <fuzzie> and upstream SDL 1.3 still doesn't have a clue, I see
[22:48:10] <brad_a> what do you mean fuzzie?
[22:48:15] <fuzzie> but it does send the SDL_WINDOWEVENT_FOCUS_LOST and SDL_WINDOWEVENT_MINIMIZED events.
[22:48:20] <fuzzie> brad_a: it doesn't work on real-world devices
[22:48:31] <brad_a> oh that sucks
[22:48:47] <fuzzie> all the careful hacks which everyone else has in their codebase because we know it doesn't work otherwise, are just missing
[22:48:48] <brad_a> i keep seeing commits for android thinking maybe they fixed that :-p
[22:49:11] <fuzzie> it's kind of weird but I don't even have time to build it
[22:49:48] <fuzzie> but I guess pelya's releases have kind of stolen all the development thunder
[22:55:37] <lynxlynxlynx> tomprince: re dump homogenisation: i'd prefer lowercase dump, since it is easier to type in gdb :)
[22:56:00] <lynxlynxlynx> you can't avoid it with tab completion when it is at the first char
[22:56:01] <fuzzie> me to
[22:56:01] <fuzzie> o
[22:56:59] <tomprince> k. will do.
[22:59:29] <tomprince> Anything else?
[23:01:29] <fuzzie> well you could astyle the codebase and make everything else consistent case-wise.. :-p
[23:01:48] <lynxlynxlynx> buffer.format isn't named nicely imo
[23:02:14] <lynxlynxlynx> buffer.appendFormatted or something like that would be much clearer on what it does
[23:02:45] <tomprince> That is verbose, but fine with me.
[23:03:23] <tomprince> fuzzie: That would break git-blame, though.
[23:03:26] <fuzzie> yeah :-/
[23:03:50] <tomprince> Otherwise i'd have been inclined to have done it laready.
[23:03:54] <fuzzie> me too
[23:11:33] <lynxlynxlynx> we need to make a list of such changes and do them in one commit, so they can be easily skipped
[23:11:57] <lynxlynxlynx> would work atleast as far as bisecting goes, i see blame doesn't have any exclusion support
[23:19:55] <edheldil_> grr, since when is a comma after the last item in enum an error???
[23:20:23] <tomprince> Since it a seperator, not a terminator. :)
[23:20:54] <edheldil_> hmm? It used to work, at least in C
[23:22:48] <fuzzie> not valid syntax
[23:22:57] <fuzzie> just widely forgiven
[23:32:36] <lostLinSoul> until now it seems :0)
[23:34:35] <fuzzie> well it's also allowed in the new C standard I think
[23:34:43] <tomprince> fuzzie/lynxlynxlynx: Anything else before I commit?
[23:35:18] <edheldil_> fuzzie: comments? https://github.com/edheldil/gemrb/commit/d9180401ee99c0e82b521a5b98ae305a567c1219
[23:35:25] <lynxlynxlynx> not really
[23:36:26] <fuzzie> edheldil_: seems fine
[23:37:53] <tomprince> edheldil_: I wouldn't put it as a subclass of directory importer.
[23:39:00] <edheldil_> but rather of ResourceSource?
[23:39:14] <tomprince> Yes.
[23:39:45] <tomprince> And, maybe include it in core?
[23:39:55] <fuzzie> why in core?
[23:40:30] <tomprince> Well, it doesn't belong in DirectoryImporterer.
[23:40:49] <fuzzie> well, it's only useful as replacement for a directory
[23:40:54] <tomprince> It is realy just a NullSource, isn't it?
[23:41:29] <fuzzie> but core is kind of cluttered
[23:41:42] <tomprince> Well, so a new plugin then.
[23:41:52] <edheldil_> argh
[23:42:08] <edheldil_> that's an overkill
[23:42:11] <fuzzie> see you shouldn't have asked before pushing :-p
[23:42:31] <fuzzie> (as far as I am concerned you may do as you wish)
[23:42:37] <edheldil_> I will be wiser the next time :)
[23:43:07] <fuzzie> but yes a plugin does seem overkill
[23:43:26] <fuzzie> as opposed to a null stub in core or whatever
[23:43:27] <tomprince> Well, That iswhy I suggested core.
[23:43:56] <fuzzie> but it's kind of a flaw in the structure at the moment
[23:44:16] <fuzzie> core has various pieces of junk because it seems silly to make a plugin for *this* thing.. :)
[23:44:20] <tomprince> I just run things staticlly linked, anyway.
[23:44:41] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[23:44:51] <fuzzie> sure, it's not like an extra bunch of .so files is going to kill anyone
[23:45:20] <tomprince> I had this crazy idea of splitting off the VFS and string and now logging stuff from gemrb_core into a gemrb_util or some such.
[23:45:52] <tomprince> Also some of the plugin base classes like image, for the plugins that aren't ie specific.
[23:46:24] <edheldil_> hmm, I think I will leave it as-is - Apart from checking, it's directory importer
[23:46:55] <tomprince> But, do you expect to actually find files in it?
[23:47:17] <tomprince> I thought it was a placeholder, that doesn't actually have a directory.
[23:47:47] <fuzzie> well
[23:47:50] <fuzzie> this way, it's trivial and harmless
[23:48:11] <fuzzie> if you have to actually implement a ResourceSource, you have 5 functions to implement for not really any gain
[23:49:43] <edheldil_> yes
[23:52:07] <edheldil_> originally I tried to get the effect by passing a flag to Open(), but it seemed uglier
[23:55:11] <tomprince> You could get that behavior by passing an argument to the constructor. But there isn't currently a way to call a specific constructor.
[23:55:19] <tomprince> Fairly easy to write, though.