#gemrb@irc.freenode.net logs for 7 Nov 2011 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:00:05] <chiv> the problems I was trying to solve is that you should be able to move from one store to another and not just a pc inventory
[00:00:34] <chiv> I'll give it a go, writing blind might yield strange results though :)
[00:21:37] <chiv> actually it seems the actual picking of the currentstore is handled by gamescript, which is probably the reason there is no generic 'open store' function
[00:52:52] <brad_a> http://gemrb.sourceforge.net/wiki/doku.php?id=plugins:ttf
[01:12:22] <chiv> hmm, interesting
[01:14:23] <chiv> if bam fonts were limited to 255 characters, how did the chinese version work?
[01:15:31] <chiv> zhong wen shi hen da...
[01:15:51] <brad_a> i assume a special patch
[01:16:24] <brad_a> i know the chinese patch for gemrb removes the 255 limit
[01:17:02] <brad_a> or im mistakin
[01:18:14] <chiv> it would have to somehow, ordinary reading comprehension requires > 2000 glyphs :)
[01:19:16] <chiv> that would be a rather large bam file
[01:22:16] <brad_a> well it may have been possible to use multiple bams i guess
[01:22:27] <tomprince> brad_a: Does some code do alignment based on strlen?
[01:22:27] <brad_a> i actually think thats what they did
[01:22:52] <brad_a> tom im not sure what you are asking?
[01:24:21] <tomprince> strlen doesn't wprk right for multibyte encodings, so if we use strlen to calculate anlignment, then it won't work properly for multibyte encodings.
[01:25:44] <brad_a> oh that. i havent gotten that far yet. what does the current chinese patch do?
[01:27:09] <tomprince> Just for something to mention on the wiki.
[01:34:44] <chiv> tomprince: would it be feasible to turn inventories into python objects as well, with the same named functions?
[01:40:08] <tomprince> chiv: be abit more work, but yes.
[01:40:36] <chiv> eg when drawing the list, the left store pane would run Store.GetItem (i), but the right one has to do GemRB.GetSlotItem (pc, inventory_slots[i])
[01:41:00] <chiv> it would be a lot simpler if you had Player.GetItem(i) as well
[01:41:36] <chiv> where player could be a pc inventory or another store
[01:44:01] <chiv> I have no idea if that would work, but it would save a hundred ifs and elses
[01:49:12] <tomprince> I started exposing actors in my web branch https://github.com/tomprince/gemrb/compare/master...web
[01:49:45] <brad_a> tomprince: for your input: http://dl.dropbox.com/u/13866402/ttf-font-patch2.patch
[01:51:30] <tomprince> your patch as 17 whitespace errors..
[01:56:23] <tomprince> brad_a: Why do you take an array of sprites, just to cut them up and splice them into one? It seems like it would be easier just to keep them all around.
[01:57:08] <tomprince> And don't use parallel arrays, use an array of structs.
[01:58:36] <tomprince> Also, don't depend on the sprite format, sprites know how to inspect pixels, so you should use that, although, like I said, I don't know why you are copying at all.
[01:59:40] <tomprince> Actually, probably simpler to use a vector of structs, if you need it. Then there is no need for dealocation.
[02:00:36] <brad_a> thats my not knowing c++ kicking in
[02:01:35] <tomprince> same for resRefs, probably.
[02:02:50] <tomprince> I am not sure what the code is doing, but don't leave commented out //- 1's lying around.
[02:04:29] <brad_a> yeah i already knew i would have to clean up the files some i just wanted feedback now
[02:05:06] <tomprince> Do you need both customfonts and customfontspath?
[02:05:07] <brad_a> is there a reason to use a vector instead? isnt this way less overhead?
[02:05:19] <brad_a> probably not i guess
[02:05:54] <tomprince> overhead is probably an extra pointer or so. Not enough to worry about vs. not having to deal with memory explicitly.
[02:06:13] <brad_a> did i not manage it correctly?
[02:06:52] <tomprince> I assume use did.
[02:08:25] <brad_a> well if im going to just use that array of sprites then that isnt needed either way
[02:09:38] <brad_a> is that what we want to do? i simply made a single sprite like it was doing before to avoid rewriting more code is all.
[02:12:24] <tomprince> That is what I would do. fuzzie/lynxlynxlnyx?
[02:13:59] <brad_a> sounds like a good idea to me
[02:14:04] <tomprince> That would also mean that we can get rid of BlitSpriteRegion, which is only used by Font
[02:14:10] <brad_a> really?
[02:14:34] <brad_a> well i cant think of a reason not to do that then
[02:15:47] <brad_a> there is one little issue tho
[02:16:37] <brad_a> hang on
[02:17:35] <brad_a> the way that im making sprites in the TTF plugin will cause a problem when the video driver tries to free the pixels
[02:18:08] <brad_a> simple solution
[02:18:17] <brad_a> maybe
[02:18:36] <brad_a> what do you think?
[02:19:15] <brad_a> if we dont use pixels anywhere i could just allocate a byte and assign it to pixels so that the video driver doesnt crash
[02:21:13] <brad_a> another little issue with using the array is whitespace characters
[02:21:27] <brad_a> i guess just make a blank sprite
[02:23:22] <tomprince> You could not just use NULL for that? Or a struct FontChar { Sprite2D*, bool isSpace } or something?
[02:23:44] <-- Maighstir has left IRC (Quit: .)
[02:24:12] <brad_a> is space the only WS character? what about tab?
[02:24:57] <tomprince> I don't know. If there were more options, use an enum or something.
[02:30:50] <brad_a> tomprince: does everything else look ok?
[02:35:20] <tomprince> I think you could just use NULL for pixels, as long as you don't call DuplicateSprite or MirrorSprite* (and fix SDLVideo.cpp#L1722 to use spr->vptr->pixels maybe)
[02:37:12] <brad_a> i will try that
[02:37:15] <tomprince> My other question is, does a font need to know its resrefs? Seems like it would be easier to keep a std::map<char*, Font*, iless> or something
[02:37:19] <brad_a> tomorrow
[02:37:37] <brad_a> remember i dont know c++
[02:38:49] <brad_a> maybe we can worry about that after :)
[02:39:23] <brad_a> i wont be offended if you go though after everything is committed and make it more c++ like
[02:40:09] <tomprince> Well, this way you learn more C++. :)
[02:40:28] <tomprince> But really my comment was about AddResref on Font
[02:42:10] <brad_a> right. the interface should keep track of all that instead
[03:02:53] <brad_a> tomprince: what about palette changing?
[03:03:43] <tomprince> Good question. I don't know. Maybe a blitter that takes a palette?
[03:12:48] <chiv> tomprince: I'm not sure if this is what you were asking for, but I did a prototype guistore.py with how I imagine it would work - I'm not used to calling functions that dont yet exist though , I much rather write something that does something :)
[05:05:11] <chiv> well anyway, for what its worth, here it is, although i cant imagine it being that useful http://pastebin.com/VZeZgLfg
[05:33:15] <tomprince> chiv: looks reasonable for a fist pass.
[05:34:41] <chiv> glad you reckon its doable, I tried some rudimentary stuff myself but only caused a segfault
[05:39:39] <chiv> hillarious, staff of curing does 'cure' damage to everyone in a 10 foot circle
[05:58:24] <-- brad_a has left IRC (Quit: brad_a)
[07:06:11] <-- joneirik has left IRC (Remote host closed the connection)
[07:51:52] --> lynxlynxlynx has joined #gemrb
[07:51:52] <-- lynxlynxlynx has left IRC (Changing host)
[07:51:52] --> lynxlynxlynx has joined #gemrb
[07:51:53] --- ChanServ gives channel operator status to lynxlynxlynx
[08:06:51] <fuzzie> fuzzie: well, i have no objection to the python code being as pythonic as possible, as long the GUIScript plugin doesn't end up full of pointers :)
[08:06:55] <fuzzie> erm, tomprince: even
[08:07:11] <fuzzie> and afaik there is no reason at all that Font isn't just using a big sprite sheet.
[08:07:44] <fuzzie> erm, is.
[08:08:00] <fuzzie> i think last time i concluded it would be more efficient to just use the BAM as it is?
[08:08:06] <wjp> yes
[08:08:27] <wjp> would hopefully allow us to get rid of a few blitting functions too
[08:09:06] <fuzzie> anything which simplifies renderer is good :)
[08:09:11] <wjp> aye
[08:10:10] <fuzzie> and the troubles with keeping stores open indefinitely were easily resolved by purging them all at certain points afaik.
[08:12:05] <fuzzie> also, morning.
[08:12:05] <wjp> hi :-)
[08:13:57] <chiv> oh I just remembered, did anyone give my quick load gadget a go?
[08:16:06] <fuzzie> i think everyone who actually plays is not awake yet :p
[08:16:18] <chiv> haha
[08:17:07] <chiv> I've a question actually, I want to create a floating window ala pst, but I cant quite figure how it draws on top of the game screen
[08:17:55] <fuzzie> it's just another window from the CHU, no?
[08:18:36] <fuzzie> i think we have a horrible hack which keeps whatever's in the 'FloatWindow' gemrb variable on top when you UnhideGUI/HideGUI if that is specifically the thing
[08:18:39] <chiv> when I tried drawing a window, the game window covers it :/
[08:19:00] <chiv> ah
[08:19:40] <chiv> well, I could just have one window and dynamically add buttons to it as needed...
[08:19:49] <fuzzie> we should fix that.
[08:19:57] <fuzzie> but it's not high priority when i say 'we should fix that' about so many things.
[08:20:45] <chiv> I'm certainly not trying to increase anyones workload anyway, this is purely for a personal project
[08:24:13] <chiv> also, when a game is loaded, which script is run first?
[08:25:36] <chiv> I'm guessing messagewindow but I'd like to be sure
[08:26:30] <fuzzie> yes
[08:26:47] <fuzzie> it runs OnLoad from MessageWindow immediately after the GameControl is creatd.
[08:27:37] <chiv> cool
[08:28:40] <chiv> and presumably, updatecontrolstatus every time something happens?
[09:01:31] <-- Beh0lder has left #gemrb
[09:03:39] <chiv> well, floatwindow works how it should, now begins my descent into madness :) http://imageshack.us/photo/my-images/163/screenshot2dp.png/
[09:05:08] --> Yoshimo has joined #gemrb
[09:17:24] <edheldil> chiv: hmm, floating toolbar? Nice :)
[09:20:22] <-- chiv has left IRC (Ping timeout: 265 seconds)
[09:26:19] --> chiv has joined #gemrb
[09:29:16] <chiv> well, its not draggable (though could be), but my main intention is to be able to play without the 'toolbar' borders
[09:41:52] --> SiENcE has joined #gemrb
[09:55:39] <-- chiv has left IRC (Ping timeout: 265 seconds)
[10:27:28] <-- SiENcE has left IRC (Quit: @all: cya)
[10:54:52] <lynxlynxlynx> tomprince: don't forget we already have a start of an actor object in Actor.py
[11:02:18] <lynxlynxlynx> it's all guiscript based though
[11:33:20] <-- wjp has left IRC (*.net *.split)
[11:37:10] --> wjp has joined #gemrb
[12:21:47] --> SiENcE has joined #gemrb
[12:41:20] <-- lynxlynxlynx has left IRC (Ping timeout: 256 seconds)
[12:52:53] --> lynxlynxlynx has joined #gemrb
[12:52:54] --- ChanServ gives channel operator status to lynxlynxlynx
[13:29:46] --> duckpunch has joined #gemrb
[13:37:28] --- ChanServ gives channel operator status to wjp
[13:41:01] <-- duckpunch has left IRC (Quit: leaving)
[14:14:06] <-- lynxlynxlynx has left IRC (*.net *.split)
[14:14:16] <-- fuzzie has left IRC (*.net *.split)
[14:14:18] <-- Kiranos has left IRC (*.net *.split)
[14:14:20] <-- maxmuen has left IRC (*.net *.split)
[14:14:23] <-- CIA-44 has left IRC (*.net *.split)
[14:14:23] <-- Gekz has left IRC (*.net *.split)
[14:14:27] <-- |Cable| has left IRC (*.net *.split)
[14:14:32] <-- wjp has left IRC (*.net *.split)
[14:14:39] <-- tomprince has left IRC (*.net *.split)
[14:14:40] <-- DrMcCoy has left IRC (*.net *.split)
[14:14:43] <-- xrogaan has left IRC (*.net *.split)
[14:14:44] <-- SiENcE has left IRC (*.net *.split)
[14:14:45] <-- Yoshimo has left IRC (*.net *.split)
[14:14:49] <-- Tching1 has left IRC (*.net *.split)
[14:14:54] <-- Drakkar has left IRC (*.net *.split)
[14:15:31] <-- gembot has left IRC (Ping timeout: 285 seconds)
[14:17:58] --> gembot has joined #gemrb
[14:17:58] --> PixelScum has joined #gemrb
[14:17:58] --> lynxlynxlynx has joined #gemrb
[14:17:58] --> SiENcE has joined #gemrb
[14:17:58] --> wjp has joined #gemrb
[14:17:58] --> Yoshimo has joined #gemrb
[14:17:58] --> Kiranos has joined #gemrb
[14:17:58] --> |Cable| has joined #gemrb
[14:17:58] --> tomprince has joined #gemrb
[14:17:58] --> CIA-44 has joined #gemrb
[14:17:58] --> fuzzie has joined #gemrb
[14:17:58] --> maxmuen has joined #gemrb
[14:17:58] --> Gekz has joined #gemrb
[14:17:58] --> DrMcCoy has joined #gemrb
[14:17:58] --> Tching1 has joined #gemrb
[14:17:58] --> xrogaan has joined #gemrb
[14:26:23] <-- gembot has left IRC (Ping timeout: 248 seconds)
[15:03:46] --> njw_ has joined #gemrb
[15:10:56] <njw_> anyone know what's up with the gibberlings3 site?
[15:14:35] <lynxlynxlynx> the regular hickup
[15:18:47] <njw_> thought as much. i'm not enough of a regular to be as aware of the regularity of these things ;)
[15:18:47] <edheldil> frankly, I do not understand it - they get some spam in forums and consequently, their webhoster shuts them down??? Wtf?
[15:18:56] --> gembot has joined #gemrb
[15:19:06] <edheldil> the last one was 14 days ago or so
[15:20:31] <lynxlynxlynx> it's not *so* regular
[15:20:48] <lynxlynxlynx> but some of the problems are pretty silly
[15:21:10] <lynxlynxlynx> like the admins not being able to go to the admin area :)
[15:21:30] <Yoshimo> faulty memory? ;)
[15:21:43] <Yoshimo> "i forgot my logindetails"?
[15:22:04] <lynxlynxlynx> no or they wouldn't be able to post
[15:22:21] <lynxlynxlynx> and login details can be changed without any hassle
[15:22:46] <Yoshimo> so whats wrong then?
[15:27:17] <lynxlynxlynx> i'd guess this is a hack remnant
[15:29:21] --> brad_a has joined #gemrb
[15:48:13] <-- brad_a has left IRC (Quit: brad_a)
[15:50:25] <-- gembot has left IRC (Ping timeout: 260 seconds)
[15:58:43] <Yoshimo> g3 is back btw
[16:03:18] <-- tomprince has left IRC (Ping timeout: 240 seconds)
[16:05:50] --> tomprince has joined #gemrb
[16:09:40] --> gembot has joined #gemrb
[16:43:37] --> brad_a has joined #gemrb
[16:44:42] --> Maighstir has joined #gemrb
[17:29:12] <-- SiENcE has left IRC (Quit: @all: cya)
[17:29:20] <-- njw_ has left IRC (Quit: leaving)
[17:53:08] <Yoshimo> hows the font work coming along ?
[17:56:45] <brad_a> it works fine
[17:56:51] <brad_a> you can apply that patch i posted
[17:57:25] <brad_a> but it seems the consensus is that I amy as well go farther and rewrite things to use individual sprites instead of a big sprite ma
[17:57:27] <brad_a> map
[19:01:25] <-- edheldil has left IRC (Ping timeout: 240 seconds)
[19:03:48] --> edheldil has joined #gemrb
[19:03:48] --- ChanServ gives channel operator status to edheldil
[20:05:15] --> Avenger has joined #gemrb
[20:05:20] <Avenger> g3 is back
[20:06:18] <Avenger> ahh i see yoshimo already noted
[20:06:31] <Avenger> see you later!
[20:06:40] <-- Avenger has left IRC (Client Quit)
[20:22:39] <lynxlynxlynx> hehe
[20:42:20] <brad_a> I made a user interface for ios users to select from configuration files uploaded via itunes and i dont know where in the source tree you would like it to go.
[20:43:27] <lynxlynxlynx> core/GUI?
[20:44:17] <brad_a> even though it is for ios only? it could never be compatible with any other platform.
[20:45:05] <brad_a> it not even code per se. it a "nib" file
[20:48:07] <lynxlynxlynx> i don't see why not
[20:48:53] <brad_a> well im fine with that i just dont want to put things where they dont belong :)
[20:56:48] <Yoshimo> 3000 euro for the ida pro and the decompiler, i thinkt thats a bit too much for helping with gemrb :D
[21:01:27] --> SiENcE has joined #gemrb
[21:05:04] <Yoshimo> and thebigg posted on the g3/gemrb subforum about weidu
[21:05:53] <fuzzie> yes
[21:05:56] <fuzzie> they're missing the point a bit still
[21:06:43] <Yoshimo> they? i think its just mr bigiani, aka thebigg ;)
[21:06:47] <fuzzie> but am sure something sensible can be sorted out
[21:06:59] <lynxlynxlynx> Yoshimo: i don't think anyone has ida pro
[21:07:15] <Yoshimo> only the free old one indeed.
[21:07:31] <Yoshimo> i just had a look at the prices, and was surprised
[21:07:39] <fuzzie> basic ida pro isn't that expensive
[21:07:50] <fuzzie> and they won't sell you anything else anyway.
[21:08:35] <fuzzie> well i guess 'ida pro' is now ambigious again as a name, sigh :P
[21:09:11] <Yoshimo> why shouldnt they? its not a forbidden good^^
[21:09:17] <fuzzie> well
[21:09:24] <fuzzie> they'll sell you one if you have an established business :)
[21:09:37] <Yoshimo> ah that kind of problem
[21:09:52] <Yoshimo> so nothing like "exporting encryption thats too strong" ;)
[21:09:53] <fuzzie> (or if you're an established customer)
[21:10:45] <fuzzie> the native linux version is pretty nice
[21:13:18] <fuzzie> but yes, their standard pricing is pretty ridiculous if you're not using it for work.
[22:00:06] <-- SiENcE has left IRC (Ping timeout: 240 seconds)
[22:12:14] --> SiENcE has joined #gemrb
[22:18:22] <-- Yoshimo has left IRC (Quit: Yoshimo)
[22:24:11] --> SiENcE_ has joined #gemrb
[22:27:18] <-- SiENcE has left IRC (Ping timeout: 240 seconds)
[22:46:30] <lynxlynxlynx> progress, almost got the spell list sorted out
[22:54:35] <-- SiENcE_ has left IRC (Quit: cya)
[23:07:14] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[23:20:10] <-- brad_a has left IRC (Ping timeout: 260 seconds)
[23:23:48] --> joneirik has joined #gemrb
[23:35:30] --> brad_a has joined #gemrb