#gemrb@irc.freenode.net logs for 20 Sep 2015 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[01:11:52] <-- PixelScum has left IRC (Read error: Connection reset by peer)
[01:13:13] --> Drakkar has joined #gemrb
[03:42:54] <-- phao has left IRC (Ping timeout: 268 seconds)
[06:11:33] --> edheldil_ has joined #gemrb
[06:28:09] <-- edheldil_ has left IRC (Ping timeout: 256 seconds)
[06:57:39] <-- Lightkey has left IRC (Ping timeout: 246 seconds)
[07:10:32] --> Lightkey has joined #gemrb
[08:21:18] --> Eli2 has joined #gemrb
[08:23:01] <-- Eli2_ has left IRC (Ping timeout: 248 seconds)
[08:34:24] --> edheldil_ has joined #gemrb
[08:46:52] --> PixelScum has joined #gemrb
[08:46:54] <-- Drakkar has left IRC (Ping timeout: 244 seconds)
[08:52:54] <-- edheldil_ has left IRC (Ping timeout: 264 seconds)
[09:26:52] --> edheldil_ has joined #gemrb
[09:31:40] <-- edheldil_ has left IRC (Ping timeout: 252 seconds)
[09:35:50] --> edheldil_ has joined #gemrb
[09:45:06] <-- edheldil_ has left IRC (Ping timeout: 264 seconds)
[11:38:26] --> phao has joined #gemrb
[11:57:25] --> decker^ has joined #gemrb
[12:01:32] <decker^> hello
[12:04:00] <lynxlynxlynx> hey
[12:04:09] <lynxlynxlynx> fixed that party hassle
[12:04:30] <decker^> oh nice :)
[12:04:45] <lynxlynxlynx> still need to push it, but i guess i'll just do it now
[12:05:08] <Pepelka> [commit] lynxlynxlynx: GetPortraitButtonPairs: don't do anything special if we're overflowing https://github.com/gemrb/gemrb/commit/0cb57ee6804d5b378412b9c215e4c5b34440630d
[12:05:09] <Pepelka> [commit] lynxlynxlynx: renamed PARTY_SIZE to MAX_PARTY_SIZE, which is closer to what it holds https://github.com/gemrb/gemrb/commit/b21cc9623c513e62b1a1646690c6ead8c997f6fe
[12:07:00] <decker^> sweet, you are awesome :)
[12:11:31] <lynxlynxlynx> as for the sounds one, you basically copied over GetSoundFolder
[12:11:43] <lynxlynxlynx> not that nice
[12:12:20] <lynxlynxlynx> i suggest you add an optional parameter to that function (eg. overrideSet) and use it directly
[12:12:46] <lynxlynxlynx> in the function you'd use the override if it was passed (instead of PCStats->SoundSet)
[12:13:51] <decker^> yeah true i basically copied it
[12:15:03] <decker^> for GetSoundFolder you mean?
[12:15:30] <lynxlynxlynx> first check what PCStats->SoundSet and the other var hold, perhaps it doesn't even need another variable
[12:15:41] <lynxlynxlynx> should all be set during chargen
[12:16:07] <lynxlynxlynx> so ideally the new stuff in VerbalConstant would just be
[12:16:10] <lynxlynxlynx> char chrsound[256];
[12:16:23] <lynxlynxlynx> GetSoundFolder(chrsound, 1);
[12:17:12] <lynxlynxlynx> nah, nevermind
[12:18:03] <decker^> PCStats->SoundSet is an array right
[12:18:27] <decker^> basically first chars without the #?
[12:18:47] <lynxlynxlynx> yes, resref
[12:23:44] <decker^> it looks like the only thing which calls ResolveStringConstant is VerbalConstant, so the first conditional check seems reduntant... unless there are plans to use it for other things later on.
[12:24:51] <decker^> if (PCStats && PCStats->SoundSet[0]) { <-- not to mention, if that isn't true, ResolveStringConstant won't be called so the code outside the if in ResolveStringConstant is never used
[12:24:54] <-- edheldil has left IRC (Ping timeout: 246 seconds)
[12:25:23] <decker^> oh nm
[12:25:27] <decker^> GSUtils.cpp calls it.
[12:27:49] <decker^> so cancel that note
[12:29:47] <decker^> ok hold on let me try something
[12:37:19] --> edheldil has joined #gemrb
[12:37:19] --- ChanServ gives channel operator status to edheldil
[12:48:46] <decker^> <lynxlynxlynx> i suggest you add an optional parameter to that function (eg. overrideSet) and use it directly <-- which funciton were you talking about, GetSoundFolder?
[12:50:27] <lynxlynxlynx> yes
[12:53:48] <decker^> sorry was considering some other possibilities.
[12:53:52] <decker^> why did you say nevermind
[12:54:56] <lynxlynxlynx> for the few lines before it
[12:54:58] <lynxlynxlynx> it's trickier
[13:05:34] <decker^> I don't know if this is syntactically possible... what about overloading ResolveStringConstant? if it gets a ieResRef for first param, it works normally, if it gets char[256] it calls GetSoundFolder? Not sure if the compiler would denote enough of a difference between ieResRef and char[256] to be able to work though... never tried overloading in that sense.
[13:06:23] <decker^> or...
[13:06:56] <decker^> well not sure if i like that
[13:14:24] <lynxlynxlynx> ideally it would just work with indices like it does later down the code
[13:19:44] <lynxlynxlynx> but don't worry about it
[13:20:31] <decker^> let me ask this question... why does GetSoundFolder set anything to the char* if a soundfolder doesn't exist, if the function name is GetSoundFolder, can't the user expect that if there is no folder, then GetSoundFolder does nothing?
[13:23:33] <-- Eli2 has left IRC (Remote host closed the connection)
[13:23:42] <decker^> what i mean is, if i rewrote it to do nothing if there is no sound folder, i could just call it, then cat chrsound with soundref
[13:23:55] <lynxlynxlynx> where it is used, either code path should always produce a non-null result
[13:23:58] <decker^> then add an extra line of code in GuiScript
[13:25:25] <lynxlynxlynx> i don't see how that would make it any better
[13:25:50] <decker^> maybe i am just overthinking it
[13:27:01] <lynxlynxlynx> you'd need to expose more of PCStats then, so in the end it would just be more code
[13:31:04] --> Eli2 has joined #gemrb
[13:46:12] <decker^> ok what about something like this for GetSoundFolder: http://pastebin.com/C7yP14Qf
[13:46:13] <Pepelka> [C++] GemRB - GetSoundFolder - Pastebin.com
[13:47:55] <decker^> then i can just call: GetSoundFolder(chrsound, 1, soundref);
[13:50:22] <lynxlynxlynx> yep
[13:50:32] <lynxlynxlynx> please use strncpy though and fix the indentation
[13:51:18] <decker^> yeah just ignore the indentation until i show you the final product :) still haven't fixed my emacs.
[13:56:00] <decker^> rebuilding and testing... so be a min
[14:01:41] <decker^> should have pulled the latest changes since i was doing a long build anyway... oh well
[14:03:09] <decker^> btw, do you use a custom allocator or just malloc/new ?
[14:04:23] <decker^> std allocators rather
[14:06:25] <-- phao has left IRC (Ping timeout: 240 seconds)
[14:08:43] <decker^> http://sprunge.us/cGhg
[14:11:28] <decker^> need to start using branches...
[14:18:53] <decker^> how's that lynxlynxlynx
[14:20:07] <decker^> looks like a mix of new and malloc
[14:21:08] <lynxlynxlynx> looks fine
[14:21:37] <decker^> ok
[14:22:04] <decker^> is it easier/better to commit to my branch then do a pull request on github.com?
[14:22:18] <lynxlynxlynx> vs mailing? yes
[14:22:31] <decker^> err my fork on mean
[14:22:32] <decker^> i mean
[14:22:49] <decker^> k
[14:29:14] <decker^> well
[14:29:18] <decker^> this might be a problem
[14:30:14] <lynxlynxlynx> your sleeping pattern?
[14:31:36] <decker^> lol
[14:31:40] <decker^> no
[14:31:58] <decker^> i can't do pull requests with my browser
[14:32:23] <lynxlynxlynx> doesn't matter, git is awesome
[14:32:35] <lynxlynxlynx> did you push your work already?
[14:32:45] <decker^> yeah
[14:33:49] <lynxlynxlynx> ok
[14:36:35] <lynxlynxlynx> works here too :)
[14:37:40] <lynxlynxlynx> i'll push it later, thanks
[14:37:51] <lynxlynxlynx> it's already sitting in my copy waiting
[14:37:59] <decker^> ok
[14:38:29] <decker^> otherwise i would have just done commit -m "message" master ?
[14:39:44] <lynxlynxlynx> no, you can only commit to your current branch
[14:40:08] <lynxlynxlynx> if you had direct commit access to gemrb, you'd just work on the main branch (our master)
[14:40:46] <lynxlynxlynx> issuing a pull request would check which commits are in your branch but not in ours and ask about those
[14:41:15] <lynxlynxlynx> i added your copy as another git "remote", so i can pull or cherrypick your work directly without github
[14:43:09] <decker^> ah ok
[14:52:23] <decker^> now the store stuff, or some other time?
[14:55:00] <lynxlynxlynx> some other time, i'm just about to start work work
[14:55:09] <decker^> k np :)
[14:55:15] <lynxlynxlynx> the scrollbar bit looks redundant
[14:56:06] <decker^> for the IsPST() ?
[14:56:15] <lynxlynxlynx> yes
[14:56:33] <decker^> it causes problems otherwise.
[14:56:41] <lynxlynxlynx> what kind?
[14:58:00] <decker^> For some reason it appears to link the "IdentifyDesc" textarea with the item list. So when the text describing the identified item is added, it pushes "junk" onto the items so there are like empty spaces.
[14:58:30] <decker^> basically after pressing ident, the "item list" appears to become blank. You can scroll up to find the items but there are empty items there.
[14:58:42] <decker^> if that makes sense...
[14:58:54] <lynxlynxlynx> ah
[14:59:08] <decker^> basically the TextArea already has a scrollbar
[14:59:16] <lynxlynxlynx> it's probably not even needed in pst and can be removed altogether
[14:59:22] <lynxlynxlynx> needs a quick check
[14:59:23] <lynxlynxlynx> bbl
[14:59:27] <decker^> ok
[14:59:46] <decker^> i'll play some more pst and check it out
[15:00:03] <decker^> i'll bbl also
[15:00:08] <-- decker^ has left IRC (Quit: Leaving)
[15:37:43] --> phao has joined #gemrb
[15:48:18] --> chiv has joined #gemrb
[15:50:11] <chiv> I feel a bit dumb, I spent most of last night trying to work out why the clock animation in planescape draws opaque on top of the button below it but did not get anywhere
[16:21:13] <lynxlynxlynx> i'm pretty sure it's due to the fact that we only draw rectangles
[16:22:35] <lynxlynxlynx> perhaps it would be better if the draw ordering of the two controls would be reversed, but i doubt it
[16:23:13] <lynxlynxlynx> chiv: btw, i added a test script to the wiki for the candy lover
[16:24:02] <chiv> thats ok, I was just trying to see if I could fix any small things
[16:25:39] <chiv> I will see what I can get out of that script
[16:26:22] <lynxlynxlynx> compile it with weidu, rename bcs to bs, put it into the scripts/ folder and try assigning it to a char
[16:26:31] <lynxlynxlynx> i don't remember if you could do that in pst though
[16:26:55] <lynxlynxlynx> if not, just put it on top of an area script
[17:02:30] <chiv> I just put the script in there as pcmorte.bcs in the override, but the game did not run it :/
[17:04:11] <lynxlynxlynx> did you have party ai turned on?
[17:05:21] <chiv> yeah, but also the decompiled output from nearinfinity appears to be different to what i fed weidu
[17:06:20] <lynxlynxlynx> in what way?
[17:06:50] <chiv> parameters messed up and missing
[17:07:26] <lynxlynxlynx> ni bug probably then
[17:07:45] <lynxlynxlynx> missing or bad ids that's shipped
[17:25:29] <chiv> nah its something weidu is doing, it's mashing the strings 'GLOBAL' and 'a' etc together for some weird reason
[17:26:03] <lynxlynxlynx> oh, that's how they're stored internally
[17:26:41] <chiv> ok that's not it then...
[18:41:55] <chiv> seems like the game isn't smart enough to create global variables if they dont exist
[18:42:40] <chiv> but i picked some variable names that were already there, the script runs and set them both to five, but incrementglobalonce didn't change them ?!
[18:49:29] <lynxlynxlynx> oh yes, pst doesn't like new variables
[18:49:31] <lynxlynxlynx> hmm
[18:50:07] <lynxlynxlynx> did you add a block that checked for 5,5?
[18:50:37] <chiv> no, but I got that from saving and checking the .gam file
[18:53:26] <lynxlynxlynx> hmmm
[18:54:20] <chiv> in what wierd universe does any of this make sense :/
[18:57:17] <lynxlynxlynx> they're all instants, so there should be no way for increment* to run first and get rewritten
[19:00:02] <lynxlynxlynx> hmpf
[19:09:57] <lynxlynxlynx> you could add a block for 5,5 and a Wait(1) in the first one
[19:10:02] <lynxlynxlynx> before increment*
[19:10:22] <lynxlynxlynx> that way the others would have a chance to run
[19:10:33] <lynxlynxlynx> you'd need to move the disabling setglobal though
[19:29:03] <chiv> Ok the intended behaviour seems to be: if the value of the first global is zero, set it to one and then modify the second global - so 5,5 wasn't working for it
[19:32:00] <lynxlynxlynx> interesting
[19:32:12] <lynxlynxlynx> looks compatible with duhir (lucky knives quest)
[19:32:19] <chiv> I seem to be getting a lot of deja vu
[19:32:20] <lynxlynxlynx> ... where you first had problems
[19:32:31] <chiv> that might be it
[19:38:55] <-- chiv has left IRC (Ping timeout: 246 seconds)
[19:39:30] --> chiv2 has joined #gemrb
[19:40:00] <chiv2> sodding window manager keeps crashing
[20:02:45] <chiv2> the interesting thing about what I just wrote is that it seems to be what gemrb already does anyway, so I still have no idea why I broke Quell
[20:03:11] --> edheldil_ has joined #gemrb
[20:11:00] <chiv2> Actually scratch that, I wasn't reading it right. presently gemrb sets the first global to int0parameter, which would explain why I had -1 where it should have been 1
[20:11:31] <chiv2> I'm going to try just setting it to 1 and see how far I get
[20:22:05] <lynxlynxlynx> yep
[20:24:29] <chiv2> now I can get through his dialogue so hopefully that is the end of that... *hah*
[20:25:56] <lynxlynxlynx> just doing a +1 on the first param was the general idea, but too bad the test didn't work
[20:26:20] <lynxlynxlynx> hopefully there are no other special values for it
[20:36:55] <chiv2> bah, so many hoops you have to jump through to get past the clerks ward, but its all working now
[20:38:11] <lynxlynxlynx> were you working on a patch or want me to do it?
[20:40:25] <chiv2> Well, i could commit it to my fixesonly branch again, but I would rather play like this for a while and see if anything broke
[20:43:33] <lynxlynxlynx> i think this dialog is a good enough start to change it
[20:43:50] <lynxlynxlynx> decker also said he's playing pst, so i'd rather just push it out
[20:44:07] <lynxlynxlynx> i can commit with your name easily too :)
[20:44:36] <chiv2> i have pushed it to my fixes only branch
[20:44:54] <lynxlynxlynx> great
[20:47:01] <chiv2> https://github.com/chilvence/gemrb/commit/a279f52462ed4651161ade59fa5d5e78960987c4 that is basically the whole thing
[20:47:11] <Pepelka> IncrementGlobalOnce: Only increment the second global variable · chilvence/gemrb@a279f52 · GitHub
[20:47:12] <Pepelka> »gemrb - Engine Made with preRendered Background«
[20:48:34] <lynxlynxlynx> way ahead of you :)
[20:52:54] <chiv2> I might possibly have more luck at the endgame now
[20:54:38] <lynxlynxlynx> one thing there, just before you leave for the fortress
[20:55:00] <lynxlynxlynx> i didn't know whether the party should just stay back like with some other portals or get disbanded
[20:55:16] <lynxlynxlynx> they certainly didn't use the same mechanic for it, if it was the former
[20:55:30] <chiv2> You are definitely supposed to be separated from them
[20:55:40] <lynxlynxlynx> well yeah
[20:55:53] <lynxlynxlynx> but are they just in the other area or out of the party
[20:55:57] <chiv2> but I will have to check my save games to find out
[20:56:46] <lynxlynxlynx> hmm, maybe i'm just mixing stuff up - i do remember that the player maze disbands the party just fine
[20:57:02] <lynxlynxlynx> but no, that's scripted iirc
[20:57:12] <lynxlynxlynx> nevermind, i better just shut up
[20:57:27] <chiv2> its weird at the moment, I lose a couple of party members but two come with me
[20:58:05] <chiv2> I've not even analysed the original data yet though
[21:27:57] <Pepelka> [commit] awesomethomas: Fixed selectable/command sounds in iwd which are placed in subfolder https://github.com/gemrb/gemrb/commit/f09315149d1ba9bad58b24c5722ee0b01099b86a
[21:27:58] <Pepelka> [commit] lynxlynxlynx: iwd2: ignore reputation in stores, it's just a leftover mechanic https://github.com/gemrb/gemrb/commit/624f59325b580f2e4efb34bb713668607e6e1533
[21:27:59] <Pepelka> [commit] chilvence: IncrementGlobalOnce: Only increment the second global variable https://github.com/gemrb/gemrb/commit/bdef62edd839dae6a6f962b23cd5de2806bd40c9
[21:28:00] <Pepelka> [commit] lynxlynxlynx: gcw: enable use of quickinnate/qspec buttons https://github.com/gemrb/gemrb/commit/2d120a2c5227d17264a95a8f4bfcb1f86d69fdee
[22:13:46] --> chiv has joined #gemrb
[22:15:43] <-- chiv2 has left IRC (Ping timeout: 246 seconds)
[22:33:04] <-- edheldil_ has left IRC (Ping timeout: 240 seconds)
[23:28:18] <-- chiv has left IRC (Quit: Page closed)
[23:48:52] --> edheldil_ has joined #gemrb