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

Archive Today Yesterday Tomorrow
GemRB homepage

[00:43:24] <pupnik> my maemo gemrb thread has 24,556 views :)
[01:05:49] --> pupnik_ has joined #gemrb
[01:08:52] <-- pupnik has left IRC (Ping timeout: 258 seconds)
[01:50:31] --> BaldimerBrandybo has joined #gemrb
[01:53:14] <-- PixelScum has left IRC (Ping timeout: 260 seconds)
[06:47:55] --> Bo_Thomsen has joined #gemrb
[07:11:57] --> adominguez has joined #gemrb
[07:31:24] --> lynxlynxlynx has joined #gemrb
[07:32:00] --- ChanServ gives channel operator status to lynxlynxlynx
[07:42:33] <-- pupnik_ has left IRC (Ping timeout: 258 seconds)
[07:43:23] --> pupnik has joined #gemrb
[07:43:23] <-- pupnik has left IRC (Changing host)
[07:43:23] --> pupnik has joined #gemrb
[07:49:32] <-- Bo_Thomsen has left IRC (Quit: Leaving.)
[08:12:11] <-- pupnik has left IRC (Ping timeout: 276 seconds)
[08:12:26] --> pupnik has joined #gemrb
[08:12:27] <-- pupnik has left IRC (Changing host)
[08:12:28] --> pupnik has joined #gemrb
[08:48:08] <-- |Cable| has left IRC (Remote host closed the connection)
[14:50:09] <-- boriskr_ has left IRC (Read error: Operation timed out)
[14:53:02] --> boriskr_ has joined #gemrb
[15:41:58] --> Maighstir has joined #gemrb
[15:50:46] <-- lubos has left IRC (Quit: Leaving.)
[16:13:07] <-- boriskr_ has left IRC (Remote host closed the connection)
[16:16:43] --> boriskr_ has joined #gemrb
[17:08:56] <-- adominguez has left IRC (Quit: Saliendo)
[17:15:45] <lynxlynxlynx> back to business
[17:16:16] <-- Demitar has left IRC (Ping timeout: 246 seconds)
[17:16:32] --> Demitar has joined #gemrb
[17:19:24] <dhewg> me too :)
[17:19:31] * dhewg pokes at gemrb
[17:20:12] <fuzzie> poor gemrb
[17:20:22] <dhewg> :P
[17:20:32] <dhewg> but it needs poking!
[17:20:45] <fuzzie> It does.
[17:20:50] <dhewg> any ideas where to poke at or add debug messages to get to the shop cause?
[17:21:02] <fuzzie> well
[17:21:14] <fuzzie> core/GameScript/Actions.cpp has the script actions, which would include StartStore
[17:21:37] <fuzzie> i see an Avenger comment in there
[17:23:24] --> |Cable| has joined #gemrb
[17:28:13] <dhewg> well that is weird
[17:28:19] <dhewg> now it works?
[17:28:25] <dhewg> same save as yesterday
[17:29:18] <lynxlynxlynx> suuure ;)
[17:30:01] <dhewg> same with the 2 dudes at the den
[17:30:15] <dhewg> is it maybe a cache conflict again?
[17:30:33] <fuzzie> did you apply the case fix?
[17:30:41] <dhewg> yes
[17:30:50] <fuzzie> people have played whole games through so it seems unlikely there'd be more than one of those bugs
[17:30:58] <dhewg> but that was already part of the binary yesterday
[17:31:06] <fuzzie> but always possible :-/
[17:32:35] <lynxlynxlynx> did you restart gemrb yesterday or was it all in the same run?
[17:32:58] <dhewg> restarted too
[17:33:04] <lynxlynxlynx> atleast the python side can easily get confused if some important error occurs, but isn't fatal
[17:34:04] <dhewg> hm weird
[17:35:38] <fuzzie> really the same save, or did you save/load since then?
[17:36:09] <dhewg> i extracted the tgz again to recheck, so it definitely is the same save
[17:36:42] <dhewg> cant reproduce it now
[17:37:05] <lynxlynxlynx> that's good btw
[17:37:10] <dhewg> :)
[17:38:58] <lynxlynxlynx> i managed to single out the skewing to video->GetScreenshot
[17:39:37] <lynxlynxlynx> i don't see anything fishy there though
[17:39:50] <lynxlynxlynx> the passed region looks fine too
[17:40:33] <dhewg> when paying bayle, the cutscene at the start of scene 3 just shows a black game screen, then scrolls down to imoen, and then the text for chaper 2 plays
[17:41:37] <fuzzie> does the text for chapter 3 play when you leave the house?
[17:41:58] <dhewg> it does when i pay him
[17:42:08] <dhewg> party is not going anywhere
[17:42:18] <dhewg> after the chaper 2 text im in the house again
[17:42:25] <fuzzie> we do some stupid thing where IncrementChapter() displays a textscreen where it's not meant to
[17:42:26] <dhewg> cant remember what is supposed to happen
[17:45:07] <fuzzie> lynxlynxlynx: what are you changing? the size there?
[17:45:55] <fuzzie> if so, to what size?
[17:46:13] <lynxlynxlynx> http://sprunge.us/MMQc?diff
[17:46:34] <lynxlynxlynx> changing it to smaller/bigger either crops or expands the image as expected
[17:46:35] <fuzzie> ah
[17:46:45] <fuzzie> yeah, 515 is no good
[17:47:14] <lynxlynxlynx> how come?
[17:47:16] <fuzzie> GetScreenshot is doing a memcpy() out of pixels, not taking pitch into account
[17:48:19] <lynxlynxlynx> uhh, internally we store it like i see it now?
[17:48:42] <lynxlynxlynx> very confused
[17:48:53] <fuzzie> that code is copying out of SDL's buffer
[17:49:05] <fuzzie> not our internal buffer
[17:50:17] <lynxlynxlynx> but why the pitch or how come it works now?
[17:50:38] <fuzzie> SDL buffers are aligned to 4 bytes
[17:51:03] <fuzzie> so if width*3 isn't divisible by 4, every line gets padding (the 'pitch') on the end
[17:51:31] <fuzzie> if you memcpy() that, then every line in the output is shifted a bit, because the padding gets copied too
[17:51:55] <fuzzie> and 640*3 is divisible by 4, but 515*3 isn't
[17:52:14] <fuzzie> if you change that memcpy() so it copies line-by-line instead, that will work
[17:53:48] <lynxlynxlynx> hmm
[17:54:25] <fuzzie> something like http://fuzzie.org/nfs/gemrb/memcpy_bla.txt
[17:54:28] <lynxlynxlynx> i tried with +1 iirc instinctively, but that didn't help
[17:54:38] <lynxlynxlynx> that's divisible by 4, so maybe it was -1
[17:55:13] <fuzzie> i guess you'll need a char* cast both both of those pointers for that to work
[17:58:37] <fuzzie> also the pitch is in bytes, so remove the *3 from the surf->pitch calculation..
[17:59:59] <lynxlynxlynx> that was it :)
[18:00:58] <fuzzie> yay
[18:01:16] <lynxlynxlynx> well, as far as pitch goes, but now it seems the image is 3 times too small in height
[18:01:41] <fuzzie> that isn't just the *3 which i accidentally put in the second bit?
[18:02:00] <lynxlynxlynx> before that it was still pitched sideways, but full
[18:02:11] <lynxlynxlynx> let me show you the diff in case i screwed it up
[18:02:31] <lynxlynxlynx> http://sprunge.us/RAgB?diff
[18:03:45] <lynxlynxlynx> the symptom in more detail: the whole image compressed in the top third, the rest is static
[18:03:48] <fuzzie> seems fine at a glance
[18:04:06] <lynxlynxlynx> so it is like if only every third scanline is used
[18:04:25] <lynxlynxlynx> *was
[18:06:24] <fuzzie> i can't think of any explanation other than the errant *3 which you clearly already removed
[18:13:11] <lynxlynxlynx> ooh, this time it was fine
[18:13:37] <lynxlynxlynx> maybe i ran it too fast, before the build finished
[18:15:55] <fuzzie> :)
[18:33:15] <-- boriskr_ has left IRC (Remote host closed the connection)
[18:58:31] <dhewg> another stack issue: when writing a scroll to the spellbook, and multiple scrolls were stacked, they're all gone
[19:00:14] <fuzzie> huh
[19:00:26] <dhewg> poor fireballs :(
[19:01:42] <fuzzie> we do UseItem(pc, slot, 1, 5) so i guess UseItem bug
[19:01:43] <dhewg> and i just bought a gem bag, and get this repeatedly: [ResourceManager]: Searching for bag02d.sto...[Cache]
[19:02:07] <fuzzie> it does that whenever a script pokes through the bag
[19:02:20] <fuzzie> someday our in-memory caching will come
[19:02:20] <dhewg> once a sec is normal?
[19:02:32] <dhewg> with apparently no end?
[19:02:50] <fuzzie> yep
[19:02:56] <dhewg> k
[19:03:09] <dhewg> what about that huge bag cursor? normal too?
[19:03:38] <fuzzie> a huge bag cursor with little feet and looks liek it's about to eat you?
[19:03:50] <dhewg> close to it :P
[19:03:59] <fuzzie> i mean, i have no idea
[19:04:25] <dhewg> it looks like the bag cursor is double the size of other items
[19:04:36] <fuzzie> weird
[19:05:06] <dhewg> maybe its in the original too, dont ask me. feels like 5 centuries. give or take 2
[19:06:04] <fuzzie> sometimes tracing these calls seems like a maze of twisty passages
[19:06:17] <dhewg> i can imagine
[19:06:39] <dhewg> just throwing everything i notice in here, i have like zero clue about the engine internals
[19:06:45] <fuzzie> i guess Item::UseCharge() probably deals with this
[19:06:52] <fuzzie> do you have a save before you used them all up? :P
[19:07:05] <dhewg> the scrolls?
[19:07:07] <fuzzie> yes
[19:07:09] <fuzzie> doesn't matter if not
[19:07:24] <dhewg> i think my tgz works too
[19:07:29] <dhewg> the one from yesterday
[19:08:07] <dhewg> in aerie's inv
[19:08:17] <fuzzie> my guess is: we manually specify header 1, and ChargeItem ends up looking at Charges[1] which is incorrect.
[19:09:14] <dhewg> why do all my chars talk to me today?
[19:09:27] <dhewg> they didnt yesterday, now they're buggin me every few secs
[19:09:32] <fuzzie> hyperaccelerated banter is also fixed in master :-P
[19:09:38] <dhewg> :)
[19:09:42] <fuzzie> oh dammit
[19:09:46] <fuzzie> 'git blame' blames me for the UseItem header change.
[19:09:51] <dhewg> :P
[19:09:55] <dhewg> fixxit!
[19:10:25] <dhewg> also, i get alot of unstoppable scrolling on this hyperaccelerated banter
[19:11:10] <fuzzie> well i happily have no idea how this headers/charges/etc stuff is meant to work
[19:12:21] <fuzzie> hmm
[19:14:33] <fuzzie> ok, well, original engine save only has Charges[0] set
[19:15:55] <lynxlynxlynx> tomprince: any news on the union front?
[19:15:58] <fuzzie> so i theorise that Item.cpp:179 should also check if Charges[header] is 0
[19:17:02] <fuzzie> but unless lynx has some knowledge here, it is just a theory
[19:18:09] <dhewg> gah
[19:18:17] <dhewg> can i cherry-pick that banter fix?
[19:19:08] <lynxlynxlynx> not really, but i could play with it
[19:19:23] <lynxlynxlynx> found a nice python dupe detector though
[19:19:48] <fuzzie> i would not recommend cherry-picking the banter fix as it is
[19:20:08] <dhewg> k
[19:20:35] <fuzzie> i think the RealTime bits of 611d8b88 are responsible
[19:21:59] <fuzzie> so you might try just those two line changes
[19:23:37] <dhewg> so "count" stays?
[19:24:08] <fuzzie> yes
[19:32:04] <dhewg> another receipe: when scrolling the screen, and a char inits a dialog, it scrolls further without any way to stop it, and the cursor keeps the arrow animation, no matter where i move it
[19:32:27] <dhewg> and when selecting a dialog option, it warps back and scrolls all over again :P
[19:34:42] <fuzzie> bbiab
[19:45:29] <tomprince> lynxlynxlynx: no
[19:52:37] <dhewg> the beggars in the slums seem to have a problem
[19:52:52] <dhewg> they walk backwards, where walking is moonwalking
[19:55:29] <Maighstir> I'd like to see you try moonwalking forwards
[19:55:45] <dhewg> :)
[19:58:55] <dhewg> altually, most ppl in the slum behave weird. they always face to the left, walk a little to the right, and instantly face left again when standing
[20:00:22] <lynxlynxlynx> yeah, we know
[20:00:38] <lynxlynxlynx> the birds are even funnier, since they get stuck on edges
[20:00:50] <lynxlynxlynx> randomwalk and randomfly actions
[20:00:52] <dhewg> heh, didnt see that yet
[20:00:57] <dhewg> apropros border
[20:01:12] <dhewg> there's this homeless woman on the upper left in the slums
[20:01:23] <dhewg> she'd close to to border of the map
[20:01:35] <dhewg> when you talk to her, the game screen "jumps"
[20:02:00] <dhewg> forth and back, looks like its related to the centering of her at that border
[20:06:32] <lynxlynxlynx> yes
[20:06:39] <lynxlynxlynx> we center on the current speaker
[20:10:32] <dhewg> yeah, but it isnt clipped to the border of the map
[20:33:00] <lynxlynxlynx> it jumps on the same dialog state/line, not just on transitions?
[20:33:39] <lynxlynxlynx> - when the speaker changes
[20:36:19] <fuzzie> i think we clip at the wrong time, indeed
[22:06:42] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[22:38:48] --> Bo_Thomsen has joined #gemrb
[23:07:33] --> _pickle has joined #gemrb
[23:27:18] <-- Maighstir has left IRC (Quit: ~ Trillian Astra - www.trillian.im ~)