#gemrb@irc.freenode.net logs for 6 May 2010 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage


[00:57:05] --> budlust has joined #GemRb
[02:33:11] <-- budlust has left IRC (Quit: budlust)
[02:33:25] --> budlust has joined #GemRb
[02:46:18] <-- budlust has left #GemRb
[04:13:20] <-- Nomad010 has left IRC (Ping timeout: 252 seconds)
[04:23:31] --> budlust has joined #GemRb
[04:33:51] <-- budlust has left #GemRb
[04:40:06] --> budlust has joined #GemRb
[05:27:36] <-- budlust has left IRC (Ping timeout: 245 seconds)
[05:40:03] --> budlust has joined #GemRb
[05:52:37] <Edheldil_> tomprince, actually there are libraries: ASN.1, for example
[05:53:15] <tomprince_loki> As far as I can tell, ASN.1 dictates the data format.
[05:53:35] <tomprince_loki> I'd like to be proved wrong ...
[05:57:06] <tomprince_loki> Well, I should be more exact. As far as I can tell, ASN.1 itself does not define the wire/disk format, but there are a number of *fixed* encoding.
[05:58:28] <Edheldil_> I admit that I do not know asn1 much, but is not there a way to define your own types?
[05:59:48] <Edheldil_> the trouble with declarative description of data format is that IE has quite a lot of irregularities. I have attempted that in ie_shell, btw, but it's lacking in higher level structures
[06:02:00] <tomprince_loki> Well, since I couldn't find any libraries, I planned to target the ie formats. I admit I haven't looked at all the formats yet, just ARE.
[06:03:20] <tomprince_loki> But the unusual things that seem to recur are pairs of offset/count to an array elsewhere in the file, and also slices of arrays. Neither of which are trivial to implement, but not impossible either.
[06:13:08] <tomprince_loki> There is, in fact, "Encoding Control Notation", for specifying wire format. But I seem to recall last time I looked very little tool support for it.
[06:14:26] * tomprince_loki goes to bed.
[06:49:19] --> cubathy has joined #GemRb
[07:09:53] <-- cubathy has left IRC (Ping timeout: 252 seconds)
[07:12:58] <-- budlust has left IRC (Remote host closed the connection)
[07:13:23] --> budlust has joined #GemRb
[07:16:13] <-- Gekz has left IRC (Ping timeout: 264 seconds)
[07:22:40] --> cubathy has joined #GemRb
[07:23:33] --> Gekz has joined #GemRb
[07:42:40] <edheldil> tomprince: sure, there are recurring patterns. But even those come in several flavors :)
[08:17:36] <-- budlust has left IRC (Ping timeout: 245 seconds)
[08:33:23] --> lynxlynxlynx has joined #GemRb
[08:33:23] --- ChanServ gives channel operator status to lynxlynxlynx
[08:39:44] --> budlust has joined #GemRb
[08:47:26] <fuzzie> morning
[08:50:04] <-- |Cable| has left IRC (Remote host closed the connection)
[08:53:29] <lynxlynxlynx> oj
[08:59:53] <-- cubathy has left IRC (Ping timeout: 252 seconds)
[09:11:35] <Lightkey> moin moing
[10:06:02] <-- budlust has left IRC (Remote host closed the connection)
[10:06:18] --> budlust has joined #GemRb
[10:11:13] <-- budlust has left IRC (Client Quit)
[10:11:20] --> budlust has joined #GemRb
[11:32:07] <-- budlust has left IRC (Remote host closed the connection)
[11:32:29] --> budlust has joined #GemRb
[12:34:51] <-- budlust has left IRC (Remote host closed the connection)
[12:35:12] --> budlust has joined #GemRb
[12:57:21] --> Gekz_ has joined #GemRb
[13:18:48] <CIA-13> GemRB: 03lynxlupodian * r0e89a8755987 10gemrb/gemrb/core/Map.cpp:
[13:18:48] <CIA-13> GemRB: Map::Rest: take quantity and difficulty (somewhat) into account;
[13:18:48] <CIA-13> GemRB: now more than one creature can disturb your rest
[13:19:34] <lynxlynxlynx> fuzzie: do you have the weidu tlk dumps somewhere? Or maybe my version :'?
[13:59:21] <edheldil> you can get tlk dumps from ie_shell, maybe
[14:17:23] <fuzzie> i don't have anything complete anywhere helpful
[14:25:25] <lynxlynxlynx> i remember i put an archive of my dumps on the net for someone, but later i removed it
[14:25:42] <lynxlynxlynx> not in any backup either :(
[14:25:57] <lynxlynxlynx> edheldil: maybe?
[14:26:39] <edheldil> which dumps? TLK? I don't have them, afaics
[14:28:11] <fuzzie> any idea what it would've been called?
[14:28:46] <lynxlynxlynx> the dir was dumps/ and then there were $gametype textfiles in there
[14:29:23] <lynxlynxlynx> contents of the format strref\nstring
[14:30:06] <lynxlynxlynx> edheldil: but one can get them with iesh, right?
[14:30:25] <lynxlynxlynx> maybe easier than copying weidu into all of the game dirs
[14:30:59] <edheldil> you should be able to, just try :)
[14:31:28] <fuzzie> 'weidu --game /path/to/dir' :p
[14:31:44] <fuzzie> no 'dumps' on any of my filesystems, anyway
[14:33:18] <lynxlynxlynx> you sure that actually works?
[14:33:35] <lynxlynxlynx> i had to copy it around to hack on widescreen for different games
[14:33:48] <fuzzie> you have to add further hacks if you want to run tp2 files
[14:33:56] <fuzzie> but it's fine standalone for anything else
[14:34:01] <lynxlynxlynx> ok
[14:34:37] <fuzzie> but no guarantees, i guess, this is custom-buil tfrom git
[14:55:39] --> kettuz has joined #GemRb
[15:06:12] <lynxlynxlynx> the normal spawning stuff is even wierder than for resting
[15:08:51] <-- budlust has left IRC (Ping timeout: 276 seconds)
[15:10:18] --> budlust has joined #GemRb
[15:11:40] <fuzzie> oh?
[15:11:57] <tomprince_loki> In my experience, on linux, weidu works just fine so long as it is in your path. And if you want to run tp2 files, use weinstall, which, if I remember, is the same as calling it as setup-*.exe
[15:13:01] <lynxlynxlynx> maybe it is just more apparent, since more fields are confirmed
[15:13:50] <lynxlynxlynx> difficulty vs frequency, count vs computed count vs maximum
[15:14:41] <fuzzie> tomprince_loki: i haven't had any luck getting it to produce a working weinstall
[15:15:32] <fuzzie> but i had a terrible time trying to get it to build at all; the dependencies don't actually build as-is, etc
[15:16:05] <lynxlynxlynx> there are binaries available with each release
[15:16:19] <lynxlynxlynx> probably only for x86 though
[15:16:23] <fuzzie> yes :)
[15:17:42] <fuzzie> and copying stuff back/forth every time i want to install/remove a tp2 is not very realistic for me
[15:18:36] <fuzzie> although i imagine fine for one-time mod installs
[15:19:05] <tomprince_loki> It has been a while since I compiled it, and the dependencies where a trick to track down.
[15:25:41] <tomprince_loki> It seems that the only thing difficult to track down is elkhound, which I got from http://github.com/dsw/oink-stack
[15:27:11] <-- kettuz has left IRC (Quit: Leaving)
[15:30:14] <fuzzie> i'll grep the irc logs next time i'm trying to do it, i guess :) thanks
[15:31:59] <lynxlynxlynx> xrogaan: which game did you try?
[16:04:00] <-- budlust has left IRC (Remote host closed the connection)
[16:04:14] --> budlust has joined #GemRb
[16:58:50] <-- tomprince_loki has left IRC (Ping timeout: 240 seconds)
[17:45:17] --> tomprince_loki has joined #GemRb
[17:45:23] <-- tomprince_loki has left #GemRb
[17:57:40] --> cubathy has joined #GemRb
[18:03:18] <-- budlust has left IRC (Remote host closed the connection)
[18:03:36] --> budlust has joined #GemRb
[18:04:29] --> |Cable| has joined #GemRb
[18:14:27] <CIA-13> GemRB: 03lynxlupodian * rfe60490ba6d4 10gemrb/gemrb/core/Map.cpp: InitSpawnGroups: fixed the reading of the difficulty from the table
[18:14:29] <CIA-13> GemRB: 03lynxlupodian * rce7f67eddbff 10gemrb/gemrb/core/Map.cpp: AnyEnemyNearPoint: use the named constant instead
[18:14:33] <CIA-13> GemRB: 03lynxlupodian * r0174064cc74c 10gemrb/gemrb/core/Map.cpp: SpawnCreature: added a simple difficulty check for found spawngroups
[18:14:36] <CIA-13> GemRB: 03lynxlupodian * re29d5e7b027a 10gemrb/gemrb/core/Map.cpp:
[18:14:36] <CIA-13> GemRB: SpawnCreature: changed the difficulty check to be more elaborate and /productive/
[18:14:36] <CIA-13> GemRB: hopefully fixes most of bug 2536293
[18:15:13] <fuzzie> nice :)
[18:17:50] <lynxlynxlynx> well, it is not complete, but a good start
[18:23:24] --> tomprince_loki has joined #GemRb
[18:27:25] <xrogaan> lynxlynxlynx: pardon me ?
[18:27:41] <lynxlynxlynx> did you play bg1 with gemrb?
[18:39:08] <xrogaan> to be honest, it's still on my todo list...
[18:40:57] <lynxlynxlynx> ok, nevermind then :)
[18:41:28] <lynxlynxlynx> fuzzie: seq to the rescue: for i in {1..100000..100}; do nums=" --string $(seq -s ' --string ' $i $((i+100)))"; ./WeiDU --game /home/navaden/infinity/ $nums; done > tob
[18:42:06] <lynxlynxlynx> do you know of a faster way of dumping it with weidu?
[18:42:29] <fuzzie> '--traify-tlk'
[18:43:14] <lynxlynxlynx> oooh :)
[18:43:15] <fuzzie> no?
[18:43:19] <fuzzie> oh :)
[18:43:30] <fuzzie> sorry, i thought you'd seen that before
[18:44:01] <fuzzie> i just don't have all the data around to regenerate it myself atm
[18:44:03] <lynxlynxlynx> i checked the --help, but nothing struct me as a direct dump
[18:44:54] <lynxlynxlynx> well, i have all the games but bg1, so i can generate most of the dumps here
[18:46:56] <fuzzie> http://fuzzie.org/nfs/gemrb/bg1str.txt is lying around on my disk here
[18:47:21] <fuzzie> i assume by the name it is the bg1 strings :)
[18:47:44] <lynxlynxlynx> great
[18:49:44] <xrogaan> lynxlynxlynx: i have a graphical issue with a genuine install of BG2 : http://img245.imageshack.us/img245/1083/bg2bug.png
[18:50:00] <xrogaan> do you think GemRB will solve the problem ?
[18:50:14] <fuzzie> that is a 3d acceleration bug?
[18:50:22] <fuzzie> you should be able to just turn that off in config
[18:51:00] <-- Gekz has left IRC (Read error: Connection reset by peer)
[18:51:43] --> Gekz has joined #GemRb
[18:52:34] <xrogaan> ooh, so you make it look easy :p OK, i'll test that when i get the time for
[18:54:12] <xrogaan> thanks
[18:56:22] <edheldil> bye, later
[19:02:34] <lynxlynxlynx> ok, i have everything except plain soa now :)
[19:04:19] <fuzzie> do you have the bg2 demo?
[19:04:28] <lynxlynxlynx> nope
[19:04:33] <fuzzie> i don't know if it differs in any meaningful way
[19:04:45] <lynxlynxlynx> it's not a big deal
[19:05:09] <fuzzie> it seemed pretty good in gemrb, except for the AllStringsTagged thing
[19:07:38] <fuzzie> (and it's nice freely-downloadable data for porters)
[19:40:25] <tomprince_loki> So. SDL doesn't can't handle color key + alpha. :(
[19:44:02] <fuzzie> but you can just tell it to do one or the other, right?
[19:45:32] <tomprince_loki> Yes ... but what if I want both?
[19:45:39] <tomprince_loki> :)
[19:46:24] <fuzzie> then you have to manually impose the colour key and take the performance hit, i guess
[19:46:50] <fuzzie> well, i guess if the image has alpha then you're going to take the hit *anyway*.
[19:48:22] <fuzzie> it is annoying :) i wonder if SDL 1.3 is any more/less helpful
[19:50:17] <tomprince_loki> Anyway, I've worked around it.
[19:50:35] <tomprince_loki> When you have some time, can you have a look at or.cz/image, and tear it apart?
[19:51:46] <lynxlynxlynx> does casting an actor to scriptable make sense? DisplayConstantStringName wants a scriptable, but the function it is in is declared as const, "this" refers to a const Actor* const and gcc isn't happy about it
[19:52:06] <fuzzie> tomprince_loki: what did you do with the masks?
[19:52:07] <lynxlynxlynx> should i remove the const from the function declaration/definition instead?
[19:53:22] <fuzzie> lynxlynxlynx: why can't it be const?
[19:54:20] <tomprince_loki> I did the same thing that was done in Image. I used a union of a color and an ieDword.
[19:55:00] <fuzzie> i mean, i guess i'm confused
[19:55:07] <fuzzie> the BMP importer doesn't support colorkeys at all, right?
[19:55:38] <lynxlynxlynx> http://pastebin.com/BChL7pjR
[19:55:44] <lynxlynxlynx> diff & error
[19:56:22] <fuzzie> lynxlynxlynx: i mean, make DisplayConstantStringName take a 'const Scriptable *' instead.
[19:56:25] <lynxlynxlynx> (Scriptable*)this compiles, but it seems backwards to me
[19:57:02] <fuzzie> you'll need to do the same for GetSpeakerColor
[19:57:03] <lynxlynxlynx> you sure that wouldn't require the change of many callers?
[19:57:08] <fuzzie> no
[19:57:34] <fuzzie> hm, maybe a 'Scriptable * const'? i'm tired. tomprince_loki? :)
[19:58:03] <fuzzie> but the const means that it doesn't get changed, so it's just a positive thing
[19:58:12] <tomprince_loki> No, that is a constant pointer, not a pointer to a constant.
[19:58:22] <fuzzie> the (Scriptable*) works because you're discarding the const
[19:59:09] <lynxlynxlynx> so 'Scriptable * const' is a constant pointer while 'const Scriptable *' is a pointer to a constant scriptable?
[19:59:13] <tomprince_loki> In GetSpeakerColor, we probably don't need that it is passed as reference to a pointer either.
[19:59:17] <tomprince_loki> Yes.
[20:00:04] <tomprince_loki> It is easier to think about if you write the second as Scritable const *, and the read right to left.
[20:01:42] <tomprince_loki> http://www.parashift.com/c++-faq-lite/const-correctness.html#faq-18.5
[20:03:32] <Lightkey> bah humbug
[20:03:44] <Lightkey> fuzzie: so who did you vote for?
[20:03:50] <tomprince_loki> fuzzie: According to the commit log, PST portraits are 24 bit + colorkeyed.
[20:04:21] <fuzzie> Lightkey: no-one, but i have the paperwork all ready to give up British citizenship!
[20:04:31] <fuzzie> tomprince_loki: :(
[20:04:42] <Lightkey> ah, nice for you.. why?
[20:05:32] <fuzzie> i'm fairly sure it's more amusing if i leave it like that, because you can imply that it's because i'm scared about who will win
[20:06:02] <lynxlynxlynx> so much for no caller updates :P
[20:06:08] <Lightkey> didn't even make that connection..
[20:06:11] <fuzzie> lynxlynxlynx: oh? :(
[20:06:34] <lynxlynxlynx> all the other display* complain now
[20:07:14] <lynxlynxlynx> oh, only a few
[20:07:23] <fuzzie> strange
[20:08:03] <lynxlynxlynx> brb
[20:15:41] <lynxlynxlynx> just needed to constify those too
[20:19:23] <-- budlust has left IRC (Ping timeout: 248 seconds)
[20:27:38] <CIA-13> GemRB: 03lynxlupodian * reeddafaa75c6 10gemrb/gemrb/ (8 files in 8 dirs): added strings for starting/stopping turning undead and caster level bonus
[20:27:42] <CIA-13> GemRB: 03lynxlupodian * r0842758a62a9 10gemrb/gemrb/core/ (Interface.cpp Interface.h): constify the Scriptable parameters to a few of the Display*String* functions
[20:27:43] <CIA-13> GemRB: 03lynxlupodian * r7e3083f0105b 10gemrb/gemrb/core/Actor.cpp: display feedback in Actor::CastingLevelBonus
[20:27:45] <CIA-13> GemRB: 03lynxlupodian * r7445d5cb981b 10gemrb/gemrb/core/ActorBlock.cpp: removed a completed todo comment from Scriptable::SpellCast
[21:25:47] --> budlust has joined #GemRb
[21:27:14] --> kettuz has joined #GemRb
[21:35:32] <lynxlynxlynx> uh-oh
[21:37:36] <tomprince_loki> ?
[21:38:24] <lynxlynxlynx> is there a simple way to access a global defined in actor.cpp (rmodrep) from somewhere else or do i need to make accessor functions?
[21:39:38] <lynxlynxlynx> it's out of scope there and Actor::rmodrep doesn't work
[21:40:03] <tomprince_loki> The easy way is just to define "extern int rmodrep[25]" in the other file. That is somewhat ugly.
[21:40:32] <tomprince_loki> Where do you need it, and what for?
[21:41:19] <lynxlynxlynx> i'm moving it to gsutils, so it can take more of the script arguments
[21:41:36] <lynxlynxlynx> err, moving the getreaction function
[21:42:05] <fuzzie> InitActorTables should really be elsewhere :(
[21:42:20] <lynxlynxlynx> the tables then wouldn't be needed in actor.cpp anymore, but i'd have similar issues if i moved them to core i imagine
[21:42:28] <tomprince_loki> And split up.
[21:43:36] <tomprince_loki> Just take the bits you need from InitActorTables, and move it to gsutil for now. And while your at it, don't reuse the same AutoTable for everything, would be my suggestion.
[21:44:55] <lynxlynxlynx> AutoTable ensures it will be loaded just once?
[21:45:39] <lynxlynxlynx> btw, i'll have a similar problem with calling the function from guiscript.cpp - do i just extern the whole function?
[21:46:18] <lynxlynxlynx> ah, gsutils already has a table loading function :)
[21:46:41] <-- cubathy has left IRC (Remote host closed the connection)
[21:46:50] <fuzzie> meh
[21:46:51] <tomprince_loki> For calling the function, you just need to put a prototype in the header file (no extern necessary).
[21:47:02] <fuzzie> i have been trying to move this stuff *out* of gsutils :)
[21:47:06] <fuzzie> but there is no better place in head
[21:47:38] <lynxlynxlynx> ok
[22:07:10] <-- budlust has left IRC (Remote host closed the connection)
[22:08:37] <lynxlynxlynx> GUIScript.cpp:7694: undefined reference to `GetReaction(Actor*, Scriptable*)'
[22:08:56] <lynxlynxlynx> the function does have a declaration in gsutils.h - did you mean something else?
[22:09:29] <tomprince_loki> You need GEM_EXPORT in front of the declaration.
[22:10:41] <lynxlynxlynx> ah, visibility attributes
[22:11:11] <tomprince_loki> Undefined reference is a linker error -> visibility issues.
[22:11:40] <lynxlynxlynx> that much i know
[22:12:50] <lynxlynxlynx> grrr, i just ammended into a mess
[22:14:00] <lynxlynxlynx> reflog to the rescue
[22:33:34] <CIA-13> GemRB: 03lynxlupodian * r41ded73f2117 10gemrb/gemrb/core/Actor.cpp: add +4 attack bonus when attacking racial enemies
[22:33:37] <CIA-13> GemRB: 03lynxlupodian * r8f1cae78e83a 10gemrb/gemrb/ (5 files in 2 dirs):
[22:33:37] <CIA-13> GemRB: moved GetReaction from Actor to GSUtils in preparation for racial enemy support
[22:33:37] <CIA-13> GemRB: made it take two parameters
[22:37:08] <lynxlynxlynx> that's odd, only two commits got pushed
[22:37:52] <lynxlynxlynx> git-cherry shows 3 more, while 2 are really missing
[22:40:28] <lynxlynxlynx> oh, the reflog moved me off master
[22:42:07] <tomprince_loki> 'git branch -d master; git checkout -b master' ?
[22:42:30] <lynxlynxlynx> nah, i'm cherrypicking those two in
[22:42:53] <lynxlynxlynx> i've already pushed, so i first need to check if that was what i wanted
[22:44:06] <-- kettuz has left IRC (Quit: Leaving)
[22:46:35] <CIA-13> GemRB: 03lynxlupodian * rae0b527b130a 10gemrb/gemrb/ (5 files in 2 dirs):
[22:46:35] <CIA-13> GemRB: Revert "moved GetReaction from Actor to GSUtils in preparation for racial enemy support"
[22:46:35] <CIA-13> GemRB: This reverts commit 8f1cae78e83ab41ccc1cfba80957d836b845d245.
[22:46:35] <CIA-13> GemRB: git thinko, bad commit
[22:46:36] <CIA-13> GemRB: 03lynxlupodian * r8b517c169596 10gemrb/gemrb/ (5 files in 2 dirs):
[22:46:36] <CIA-13> GemRB: moved GetReaction from Actor to GSUtils in preparation for racial enemy support
[22:46:37] <CIA-13> GemRB: made it take two parameters
[22:46:40] <CIA-13> GemRB: 03lynxlupodian * rb4a4b6f6e1c2 10gemrb/gemrb/core/ (Actor.cpp Actor.h): move the racial enemy detection into its own function
[22:46:41] <CIA-13> GemRB: 03lynxlupodian * r26d60a9dc171 10gemrb/gemrb/core/GSUtils.cpp:
[22:46:41] <CIA-13> GemRB: implemented the -4 reaction penalty when dealing with racial enemies
[22:46:41] <CIA-13> GemRB: (untested, couldn't find a use case)
[22:48:39] <lynxlynxlynx> there :)
[22:54:31] <tomprince_loki> You could probably test it by using a AI script that checks the reaction. Or even says the reaction.
[22:55:43] <lynxlynxlynx> i teleported to firkraag, but his dialog isn't influenced
[22:56:00] <lynxlynxlynx> i know it is testable, i just couldn't find something quick
[22:56:20] <lynxlynxlynx> it's again an hour into the next day :(
[22:57:14] <tomprince_loki> :)
[23:02:33] <-- lynxlynxlynx has left IRC (Remote host closed the connection)