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

Archive Today Yesterday Tomorrow
GemRB homepage

[01:29:24] <-- pupnik has left IRC (Ping timeout: 250 seconds)
[02:05:59] <-- Maighstir has left IRC (Quit: ~ Trillian Astra - www.trillian.im ~)
[02:30:13] <-- Bo_Thomsen has left IRC (Quit: Leaving.)
[03:13:20] --> pupnik has joined #GemRb
[03:13:20] <-- pupnik has left IRC (Changing host)
[03:13:20] --> pupnik has joined #GemRb
[03:36:02] <-- edheldil_ has left IRC (Ping timeout: 255 seconds)
[03:40:06] <pupnik> That is obviously shopped you can tell by the pixels and i've seen alot of photoshops in my time.
[07:00:18] <-- pupnik has left IRC (Read error: Operation timed out)
[07:00:47] --> pupnik has joined #GemRb
[07:00:47] <-- pupnik has left IRC (Changing host)
[07:00:47] --> pupnik has joined #GemRb
[07:15:29] --> edheldil_ has joined #GemRb
[07:16:12] --> spike411 has joined #GemRb
[07:21:56] <-- edheldil_ has left IRC (Ping timeout: 255 seconds)
[07:33:02] <-- spike411 has left IRC (Quit: Manga & anime pokec na Jabberu: manga.cz@conf.netlab.cz)
[07:35:50] --> spike411 has joined #GemRb
[07:47:47] --> Bo_Thomsen has joined #GemRb
[08:03:03] --> lynxlynxlynx has joined #GemRb
[08:03:03] <-- lynxlynxlynx has left IRC (Changing host)
[08:03:03] --> lynxlynxlynx has joined #GemRb
[08:03:03] --- ChanServ gives channel operator status to lynxlynxlynx
[08:11:25] <-- Bo_Thomsen has left IRC (Quit: Leaving.)
[08:17:37] <pupnik> Outer structure of building that houses reactor at Fukushima plant appears to have blown off - NHK
[08:34:27] --> Aki_ has joined #GemRb
[08:37:05] <-- Akileos has left IRC (Ping timeout: 255 seconds)
[08:52:24] --> kettuz has joined #GemRb
[09:09:47] --> edheldil_ has joined #GemRb
[09:19:23] <-- edheldil_ has left IRC (Ping timeout: 248 seconds)
[09:47:07] --> Maighstir has joined #GemRb
[09:49:42] <-- Maighstir has left IRC (Client Quit)
[09:50:33] --> Maighstir has joined #GemRb
[09:51:28] <pupnik> http://www.youtube.com/watch?v=pg4uogOEUrU Reactor explosion caught on film
[09:52:57] <Aki_> Wow
[09:54:02] <Aki_> That sucks
[09:54:30] <Aki_> Hope there won't be too much radioactive rains and so on
[09:57:20] <pupnik> looks to be blowing out to sea, if camera is from the north facing south
[10:11:22] <Aki_> Wow you were right, lots of todos and fixme in the code
[10:11:29] <Aki_> FIXME: 326TODO: 490CHANGED: 6Total: 822
[10:12:21] <lynxlynxlynx> even when things work, they can be improved ;)
[10:12:43] <lynxlynxlynx> especially in the goal to please the modders
[10:15:41] <Aki_> But really like how you did your "CreImporter"
[10:18:00] <Aki_> ho maybe found an easy TODO
[10:18:22] <Aki_> Voice selection upon char cration : Dpisply only those matching gender
[10:20:44] <Maighstir> The original games display both genders
[10:21:01] <fuzzie> do they really?
[10:21:06] <Maighstir> Yes
[10:21:16] <Maighstir> Checked just now to be sure
[10:21:21] <Aki_> Ok, my bad
[10:21:23] <Aki_> :(
[10:21:47] <fuzzie> it's always a good idea to check everything in original if you can
[10:22:01] <fuzzie> or at least ask in here and someone like Maighstir will pop up :)
[10:22:10] <Aki_> Can't go no windows computer :)
[10:22:29] <fuzzie> youtube playthrough videos are useful too
[10:24:28] <fuzzie> it is a continual source of annoyance to me that there's no finished Let's Play PS:T, just speedruns with only TNO
[10:24:55] <fuzzie> although i didn't check recently.
[10:26:02] <Aki_> PS:T ?
[10:26:10] <Aki_> Planescape Torme ?
[10:26:11] <fuzzie> planescape torment
[10:26:12] <fuzzie> yes
[10:26:28] <lynxlynxlynx> Aki_: these games usually work fine in wine
[10:26:53] <Aki_> Tried, but complains the game isn't installed
[10:27:14] <lynxlynxlynx> you need to run bgmain/idmain directly and from the parent dir
[10:30:52] <Aki_> BGmain has a weird icon
[10:31:10] <Maighstir> Although some of the original games (I believe BG1 and 2 only) has a "default" soundset for each gender that isn't available
[10:31:41] <Maighstir> isn't available among the nomal "male 1" etc.
[10:32:52] <Aki_> Bgmain works
[10:32:56] <Aki_> :)
[10:34:27] <Maighstir> those default sets aren't displayed in GemRb
[10:36:57] <Aki_> Right, all the voices in TOB
[10:41:29] <lynxlynxlynx> these are stored in a lookup table iirc
[10:41:39] <lynxlynxlynx> check what we open
[10:45:15] <lynxlynxlynx> access("../gemrb/override/auto/gemrb.ini", R_OK) = -1 ENOENT (No such file or directory) <-- autodetection is broken
[10:45:38] <lynxlynxlynx> gametype resolved too late
[10:47:30] <fuzzie> i did say "This probably breaks autodetection for now." :P
[10:47:53] <fuzzie> although that was not the expected effect
[10:48:30] <fuzzie> i imagine the actual effect is that you get an ERROR from the autodetector
[10:49:18] <lynxlynxlynx> no, it breaks on this ini search
[10:49:42] <fuzzie> but autodetector itself is happy?
[10:50:28] <fuzzie> you should get 'Detecting GameType: <name>' before it adds the override path..
[10:52:45] <lynxlynxlynx> nope
[10:54:33] <lynxlynxlynx> oh, wrong log
[10:55:42] <lynxlynxlynx> it can't find start.chu heh
[10:57:22] <fuzzie> i changed it so it doesn't have access to the BIFs any more
[10:58:30] <fuzzie> since the autodetect code doesn't even check override, i don't think it can detect any games right now.
[10:59:28] <lynxlynxlynx> doesn't seem so
[10:59:40] <lynxlynxlynx> it tries all of them and all should have start.chu
[11:01:14] <fuzzie> i'm still not quite sure of the best way to deal with it
[11:02:02] <lynxlynxlynx> what was the problem with bifs?
[11:02:20] <fuzzie> the searchpath is constructed in order, right now
[11:02:33] <lynxlynxlynx> yes
[11:02:33] <fuzzie> so you have to add the game-specific override before you add the BIFs
[11:02:54] <lynxlynxlynx> but for autodetection everything is under the known gamepath
[11:03:14] <lynxlynxlynx> we could rerun the whole path setting afterwards with the correct gametype
[11:03:17] <fuzzie> so the autodetection has no access to the searchpath at all, which means no BIFs
[11:03:40] <fuzzie> well, the smartest solution is probably just to insert the game-specific override in the right place after the autodetect is done..
[11:05:31] <lynxlynxlynx> sure
[11:05:59] <fuzzie> just add a default position parameter to ResourceManager::AddSource or something
[11:06:13] <fuzzie> i don't like it very much :) but edheldil seemed to think the same
[11:07:01] <-- spike411 has left IRC (Quit: Manga & anime pokec na Jabberu: manga.cz@conf.netlab.cz)
[11:07:58] <lynxlynxlynx> and move the py init back down and then replace the path afterwards?
[11:09:00] <fuzzie> yes
[11:09:51] <fuzzie> ResourceManager is rather opaque so it's not so easy to do anything else
[11:10:02] <fuzzie> but this is just the first idea which came to mind, and i haven't had a better idea since
[11:10:44] <wjp> maybe add a flag to allow overriding a source with the same description?
[11:14:25] <fuzzie> i guess it's easy enough to retrieve the description
[11:14:30] <fuzzie> so that makes sense
[11:14:36] <lynxlynxlynx> we don't store it now
[11:15:02] <wjp> don't we output the description when finding something?
[11:15:36] <fuzzie> yes
[11:15:44] <fuzzie> you can get it via GetDescription()
[11:16:03] <fuzzie> seems to be valid for KEYImporter and DirectoryImporter
[11:51:13] <lynxlynxlynx> seems to work just fine :)
[11:51:45] <lynxlynxlynx> http://sprunge.us/HOeZ?diff
[11:53:07] <lynxlynxlynx> too bad i can't play with iwd vs how
[12:29:48] <-- kettuz has left IRC (Remote host closed the connection)
[12:31:39] <Aki_> How do we submit patch ? a .diff left on pastebin is ok ?
[12:33:04] <wjp> submitting it to the SF patch tracker is preferable
[12:33:28] <wjp> things on pastebin have a high chance of being forgotten and getting lost
[12:33:44] <Aki_> Ok, will need to test first, some lame patch to start with
[12:38:40] <Aki_> is there any ISDEF for OSX ?
[12:41:55] <Aki_> _APPLE_CC__ ?
[12:47:02] <Aki_> Looks like it is
[13:00:18] <Aki_> One more bug :(
[13:14:24] <Aki_> Is some patch like this ok to be submitted ? http://pastebin.com/jvkK8jDF
[13:28:41] <lynxlynxlynx> looks ok to me, but please fix the formatting in the function and the definition is missing
[13:30:07] <Aki_> Ho, did it in the .h also, forgot to diff
[13:30:14] <Aki_> Will submit later then
[13:33:33] <Aki_> Got to reset my SF.net password
[13:33:34] <Aki_> :D
[15:51:07] <CIA-27> GemRB: 03lynxlupodian * r51de165ee1ab 10gemrb/gemrb/core/ (Interface.cpp ResourceManager.cpp ResourceManager.h): made gametype autodetection work again
[16:00:14] --> SiENcE has joined #GemRb
[16:59:44] <-- SiENcE has left IRC (Ping timeout: 255 seconds)
[17:35:45] <-- tomprince has left IRC (Ping timeout: 276 seconds)
[17:51:38] <Aki_> Back, submitted patch, hope I won't break anything
[18:12:04] --> edheldil_ has joined #GemRb
[18:18:59] --> tomprince has joined #GemRb
[18:21:28] <tomprince> Aki: That patch looks good, but I have rewritten most of the other code in that file: https://github.com/tomprince/gemrb/commits/files-win32
[18:21:39] <tomprince> I think that will probably go in right after the next release
[18:26:16] <CIA-27> GemRB: 03avenger_teambg * r4b3e95eb392b 10gemrb/gemrb/override/pst/ (rune.2da rune.spl s914bgbl.vvc s914hgbl.vvc s914rune.vvc): better rune of torment (fixed timing)
[18:26:24] <CIA-27> GemRB: 03avenger_teambg * r9992cfaa1945 10gemrb/gemrb/override/pst/ (8 files): lightning storm
[18:26:30] <CIA-27> GemRB: 03avenger_teambg * r93318e88cacd 10gemrb/gemrb/core/ (Interface.cpp ResourceManager.cpp ResourceManager.h): Merge branch 'master' of ssh://gemrb.git.sourceforge.net/gitroot/gemrb/gemrb
[18:29:20] <CIA-27> GemRB: 03avenger_teambg * r7166f4f4c620 10dltcep/ (VVCEdit.cpp chitem.rc): allow editing of the high bits of the sequencing flag
[18:30:50] <lynxlynxlynx> yeah, please hold off any big changes
[18:30:54] <CIA-27> GemRB: 03avenger_teambg * r2e587602eae9 10gemrb/gemrb/core/ (ScriptedAnimation.cpp ScriptedAnimation.h): freeze flag for vvcs (so their last frame keeps drawn until their duration is expired)
[18:30:57] --> Avenger has joined #GemRb
[18:30:58] --- ChanServ gives channel operator status to Avenger
[18:31:41] <lynxlynxlynx> oj
[18:31:56] <edheldil_> hi
[18:35:10] <Avenger> hello
[18:35:22] <Avenger> if you got pst, check the new projectiles :)
[18:35:40] <CIA-27> GemRB: 03avenger_teambg * r16408604b15d 10gemrb/gemrb/core/Projectile.cpp: avoid erroneoous multiple Success/Fail Spell applications in PayLoad
[18:36:30] <Avenger> the rune of torment now seems to be perfect, except the tinting of screen. That opcode is buggy :(
[18:38:27] <CIA-27> GemRB: 03avenger_teambg * r6aea8d1a17e9 10gemrb/gemrb/plugins/FXOpcodes/FXOpcodes.cpp: better screenshake (hopefully)
[18:39:19] <CIA-27> GemRB: 03avenger_teambg * rdf75b39f38e2 10gemrb/gemrb/plugins/PSTOpcodes/PSTOpcodes.cpp: fixed comment
[18:39:33] <lynxlynxlynx> well, it will be a while until someone will be able to complain about it
[18:40:09] <Aki_> Wonna bet ? :D
[18:43:12] <lynxlynxlynx> by normal playing? sure
[18:43:36] <Avenger> why do you need normal playing?
[18:44:11] <Aki_> Normal means no mods ?
[18:44:40] <lynxlynxlynx> normal means by playing the game
[18:44:56] <Aki_> Ok boss :)
[18:44:57] <lynxlynxlynx> sure that isn't needed for testing, but i doubt anyone would test it specifically
[18:45:28] <Avenger> ah, i thought you talk to me :)
[18:45:30] <lynxlynxlynx> this rune is available at the very end of pst and i doubt you can get there currently
[18:45:54] <Aki_> Never played PST so ... :)
[18:46:15] <Aki_> Found another bug I wish I could debug, but need a clue on where to start
[18:46:48] <lynxlynxlynx> pst is not friendly to start headbanging on
[18:46:59] <Aki_> I'm sure you remerber my saradush issue, the capapult rashing when trying to kill the "boy's father"
[18:47:10] <Aki_> When I revive the said father
[18:47:19] <Aki_> Animation is stuck on "dying"
[18:47:30] <Aki_> so ha can't thank me
[18:47:47] <Avenger> you can't talk to him?
[18:48:00] <Aki_> Can't
[18:48:07] <Aki_> busy
[18:48:15] <Avenger> oh
[18:48:24] <Avenger> another no interrupt case :)
[18:48:30] <Aki_> want my savegame ?
[18:48:47] <Avenger> naah, the no interrupt thing requires fuzzie :)
[18:49:08] <Avenger> she is the master of scripting, or mistress? :)
[18:49:39] <Avenger> it is terribly complicated
[18:50:11] <lynxlynxlynx> PlayDeadInterruptible(1000000)
[18:50:14] <Avenger> i did some reverse engineering, but seeing stuff is far from understanding it
[18:50:17] <lynxlynxlynx> awefully big number
[18:50:28] <Avenger> 'Interruptible' is the key
[18:50:36] <Avenger> it should be fine to talk to him
[18:51:08] <Avenger> maybe setting IF_NOINT to false in PlayDeadInterruptible will be enough, for now
[18:52:01] <Avenger> ahh, wait, if_noint is already exploded into two fields
[18:52:17] <Avenger> well, i would wait for our expert
[18:52:46] <Aki_> Sure, if he doesn't hate me yet :p
[18:53:58] <Avenger> Aki you can try this:
[18:54:09] <Avenger> Actions.cpp" line 3422
[18:54:17] <Avenger> actor->CurrentActionInterruptable = true;
[18:54:34] <Avenger> similar to the one above, just with = true
[18:54:39] <Aki_> ok will do, gimme a fun mins to eat :)
[18:54:47] <Aki_> few
[18:55:43] <Avenger> this probably won't work, i'm almost sure fuzzie would have put that line there if it was needed
[18:56:26] <Aki_> wont it allow to interrup anything ?
[19:01:47] <lynxlynxlynx> no
[19:02:09] <lynxlynxlynx> it's about the running actor's current action only
[19:03:01] <Avenger> it is either a good or needless change :)
[19:03:16] <Avenger> i doubt it will break the code more
[19:14:00] <Aki_> No change
[19:15:14] <Avenger> ok
[19:16:09] <Aki_> well, maybe he really has nothing to say, but still stuck on death animation
[19:18:22] <Avenger> what exactly you mean by that? He is supposed to be lying there
[19:18:43] <Aki_> he's dead, I send a priest to revive him
[19:18:52] <Aki_> and then he stand then die, forever
[19:18:57] <Avenger> ahh
[19:19:03] <Aki_> and can't talk to him
[19:19:21] <Aki_> And wine won't see my TOB savegames
[19:19:24] <Aki_> dont understand why
[19:24:06] <lynxlynxlynx> different dir
[19:24:23] <lynxlynxlynx> he's not dead, your eyes are playing tricks on you
[19:25:14] <Aki_> Ho you mean that my mind is tricking me ? :D
[19:27:58] <CIA-27> GemRB: 03lynxlupodian * rc4a41f3cb985 10gemrb/gemrb/core/Scriptable/Actor.cpp: display the current action id in the actor debug dump
[19:28:18] <Aki_> git pull && make ?
[19:28:37] <lynxlynxlynx> no, this won't change anything
[19:28:54] <lynxlynxlynx> dead is a very relative word in gemrb
[19:29:26] <Aki_> can I do ctrl-something to see actor state ?
[19:29:45] <lynxlynxlynx> m
[19:30:20] <Aki_> Got to guess where "M" is mapped
[19:30:41] <Aki_> Will it output anything in game ?
[19:30:43] <Aki_> or console only ?
[19:32:01] <lynxlynxlynx> console
[19:34:33] <Aki_> Script name:ORPHAN2 Current action: 290
[19:35:41] <Aki_> http://pastebin.com/JY9kgT1x
[19:40:36] <lynxlynxlynx> yeah, we know
[19:40:47] <lynxlynxlynx> that's playdeadinterruptible
[19:46:58] --> SiENcE has joined #GemRb
[20:09:12] <lynxlynxlynx> Avenger: that fire damage level change is problematic, now the wrong ones are used in the bg2 dungeon scene
[20:10:29] <lynxlynxlynx> the demo does work btw
[20:11:23] <Avenger> hmm, i didn't change it
[20:12:59] <lynxlynxlynx> month or so ago?
[20:13:51] <Avenger> where is that?
[20:15:27] <lynxlynxlynx> i'll need to look
[20:16:08] <Avenger> 4,5 and 6 seems to be the fire damage. according to damage.2da
[20:16:47] <Avenger> also iesdp
[20:16:56] <Avenger> effect #170 (0x0AA)
[20:17:01] <Avenger> so, i wonder what's wrong
[20:19:16] <lynxlynxlynx> i'm not sure it's about damage level, so it may be a different problem
[20:19:36] <lynxlynxlynx> you're probably invicible during the intro (in gemrb you get 2hp of damage in total)
[20:21:36] <lynxlynxlynx> spfirsdi isn't played
[20:22:20] <Avenger> there is only spfirimp in damage.2da
[20:22:56] <lynxlynxlynx> yeah
[20:22:57] <Avenger> didn't you recently change damage.2da?
[20:23:13] <lynxlynxlynx> firimp -> spfirimp
[20:23:27] <lynxlynxlynx> no mention of spfirsdi anywhere
[20:23:47] <lynxlynxlynx> i guess i need to look at the scripts manually
[20:34:17] <lynxlynxlynx> ok, found the trail
[20:34:29] <lynxlynxlynx> something goes wrong with a spell
[20:35:10] <lynxlynxlynx> he casts spin726 to do the damage and it also has the big fiery animation attached
[20:35:31] <lynxlynxlynx> however that effect has a duration of 0 and mode of duration :O
[20:36:28] <lynxlynxlynx> i guess we shouldn't copy it over to the animation if it is 0
[20:40:14] <Avenger> huh
[20:40:55] <Avenger> well, i think these animations got no duration
[20:41:02] <Avenger> only looping vvc's got duration
[20:41:36] <Avenger> so maybe we should set the duration only for those
[20:43:39] <lynxlynxlynx> it's -1
[20:45:15] <Avenger> that's the default duration
[20:46:08] <Avenger> hmm
[20:46:14] <Avenger> we talk about opcode #d7?
[20:46:55] <Avenger> if (fx->TimingMode!=FX_DURATION_INSTANT_PERMANENT) {
[20:46:57] <Avenger> sca->SetDefaultDuration(fx->Duration-core->GetGame()->GameTime);
[20:46:58] <Avenger> }
[20:47:08] <Avenger> this will make a 0 duration vvc useless
[20:47:11] <lynxlynxlynx> play 3d something
[20:47:17] <Avenger> yes, that's #d7
[20:47:42] <Avenger> so, i say, SetDefaultDuration shouldn't work for non-looping vvc's
[20:47:50] <lynxlynxlynx> i was looking at the effect queue - wouldn't applyeffect skip it anyway? it checks if( fx->Duration<=GameTime) {
[20:48:38] <Avenger> well, once its duration was overwritten, it is irrelevant
[20:49:31] <lynxlynxlynx> wouldn't it be equal?
[20:49:52] <Avenger> equal with what?
[20:49:58] <Avenger> 0 != -1 for sure :)
[20:50:13] <Avenger> you said the vvc starts with -1
[20:50:20] <Avenger> but this effect will overwrite it to 0
[20:50:34] <Avenger> fx->Duration-core->GetGame()->GameTime is 0
[20:51:15] <lynxlynxlynx> ergo that if would be true and the effect would be skipped
[20:51:56] <lynxlynxlynx> oh wait, nevermind
[20:55:33] <lynxlynxlynx> just adding an empty duration check didn't help
[20:56:32] <Avenger> it shouldn't overwrite duration for non looping vvcs
[20:57:59] <lynxlynxlynx> it does that somewhere else
[20:58:26] <lynxlynxlynx> in the effect it's already a 300-400 before the setdefaultduration call
[20:58:45] <Avenger> that's odd
[20:59:11] <Avenger> though, you would be happy with a 300-400
[21:00:09] <lynxlynxlynx> yes, but it doesn't work, still no big boom
[21:00:34] <lynxlynxlynx> the bam is definitely shorter than 20s too
[21:09:26] <fuzzie> the death troll thing is weird
[21:09:36] <fuzzie> i couldn't work it out at a glance
[21:09:40] <fuzzie> not at home now though..
[21:10:37] <lynxlynxlynx> the effect duration appears to be random :s
[21:11:17] <lynxlynxlynx> maybe it is equal to the gametime
[21:13:42] <lynxlynxlynx> yep
[21:13:52] <Avenger> well, then its duration will be 0 :P
[21:14:03] <Avenger> that means 0
[21:14:12] <Avenger> as i said: fx->Duration-core->GetGame()->GameTime is 0
[21:14:34] <lynxlynxlynx> yes, but where do we change the 0 to core->GetGame()->GameTime ?
[21:14:45] <Avenger> prepareduration
[21:14:58] <fuzzie> which is a macro in a header i think
[21:15:08] <Avenger> that part is correct
[21:15:16] <lynxlynxlynx> it is
[21:15:19] <Avenger> even the original does that, and that value goes into the savegame
[21:15:39] <Avenger> it is called 'absolute duration' in my glossary :)
[21:15:45] <lynxlynxlynx> 1000
[21:17:09] <lynxlynxlynx> ok :)
[21:18:14] <lynxlynxlynx> so we fix it in individual effects as we find them?
[21:20:15] <Avenger> either that, or in SetDefaultDuration
[21:20:39] <Avenger> we could simply sabotage (as fuzzie would say) the duration change if it isn't a looping anim.
[21:23:50] <lynxlynxlynx> well, preference?
[21:24:48] <Avenger> the sabotage is good, maybe we just need to print something in the log
[21:24:54] <Avenger> at least for some time
[21:27:26] <lynxlynxlynx> looping are the ones with effect_owned?
[21:27:41] <Avenger> no
[21:27:59] <Avenger> looping are the ones with SequenceFlags&IE_VVC_LOOPING
[21:28:29] <Avenger> i should have done this a long time ago :)
[21:28:34] <fuzzie> sabotage seems good
[21:31:51] <lynxlynxlynx> creates new problems though
[21:32:07] <lynxlynxlynx> unlike the effect fix, now the casting blob loops forever
[21:32:30] <Avenger> how could that be?
[21:32:47] <Avenger> maybe you need to negate the condition ;)
[21:32:57] <Avenger> you need to sabotage non looping ones
[21:33:00] <fuzzie> um
[21:33:10] <fuzzie> this is fx_play_visual_effect?
[21:33:24] <Avenger> 0xd7
[21:33:33] <fuzzie> i see a bug
[21:33:37] <fuzzie> if you didn't fix it already
[21:33:53] <Avenger> most likely didn't
[21:33:57] <fuzzie> the fx->Parameter2 check at the top should always return if it's not FirstApply
[21:34:12] <lynxlynxlynx> casting glow is done manually
[21:34:21] <fuzzie> otherwise it keeps playing every time the vvc is done?
[21:35:20] <fuzzie> too tired to explain it well, but i guess Avenger will see it
[21:36:20] <fuzzie> hm this netbook is further behind git than i thought
[21:36:23] <lynxlynxlynx> i'll try that, hopefully it fixes armor and co
[21:36:43] <lynxlynxlynx> but the casting glow uses a separate effect, so this can't help there
[21:37:39] <fuzzie> should go after the 'if (vvc) {' block, and i guess return FX_NOT_APPLIED
[21:37:53] <lynxlynxlynx> it does, yuppi
[21:38:20] <fuzzie> :)
[21:38:31] <fuzzie> can't believe i didn't see that
[21:38:31] <lynxlynxlynx> i added it before that though
[21:38:46] <lynxlynxlynx> you want it inside the vvc block?
[21:38:58] <fuzzie> no, after it
[21:39:06] <fuzzie> if the vvc block runs, then the effect is ok
[21:39:21] <fuzzie> but if the vvc is *not* present and it is *not* first apply, the effect should not create it again
[21:40:37] <lynxlynxlynx> it's silly how we didn't figure out this sooner
[21:41:01] <fuzzie> yes
[21:41:02] <lynxlynxlynx> i remember asserting the last time the repetitions matched the effect duration
[21:41:17] <fuzzie> well that makes sense if it is looping
[21:41:26] <fuzzie> i did not think to check whether the VVC was looping or not :/
[21:41:47] <lynxlynxlynx> we did, param2 was 0 iirc
[21:41:59] <lynxlynxlynx> anyway, in the past
[21:43:48] --> Demitar has joined #GemRb
[21:47:35] <fuzzie> test case for looped anims is e.g. Hold anim, btw
[21:49:01] <Avenger> hmm?
[21:49:06] <lynxlynxlynx> casting glow doesn't use playonce, i guess that's why it loops
[21:49:20] <fuzzie> heh :)
[21:49:26] <Avenger> i'm not sure it is correct to bail out if the vvc is already there
[21:49:32] <Avenger> imagine 2 hold effects
[21:49:42] <Avenger> one is 2 hours, the second is 5 minutes
[21:49:51] <Avenger> err, the other way around
[21:49:57] <Avenger> one is 5 minutes, the second is 2 hours ;)
[21:50:00] <fuzzie> yeah, but it is a temporary fix
[21:50:09] <fuzzie> i'm not sur ewhat the original does
[21:50:23] <Avenger> what was wrong with ours?
[21:50:26] <fuzzie> the easy fix is just to remove the effect unless the vvc has IE_VVC_LOOPING set
[21:50:33] <fuzzie> but i don't know if that matches the original
[21:51:07] <fuzzie> the bug is with non-looping VVCs: they should not restart.
[21:51:21] <Avenger> duration effects will not restart
[21:51:34] <Avenger> hmm
[21:51:36] <fuzzie> except they do, because of that code :P
[21:51:53] <Avenger> their duration is longer than the vvc duration?
[21:51:57] <fuzzie> yes
[21:52:05] <Avenger> HEH
[21:52:08] <fuzzie> it is really dumb
[21:52:22] <Avenger> yeah
[21:52:28] <Avenger> once they use 0 duration
[21:52:35] <Avenger> then they use longer than the vvc's length
[21:52:47] <Avenger> like slightly undertrained monkeys
[21:52:58] <fuzzie> anyway wait, this is fine
[21:53:16] <fuzzie> if the vvc is already there, my fix doesn't change behaviour
[21:53:34] <fuzzie> if the vvc is gone, then the vvc was not looping
[21:54:08] <Avenger> well, if you start the vvc only on first apply, then it will be different
[21:54:22] <lynxlynxlynx> do you think it is fine if i mark fx_casting_glow as non looping? it certainly deals with this new permanency issue
[21:54:25] <fuzzie> we don't set the vvc duration
[21:54:41] <fuzzie> vvc duration is magic here :)
[21:55:03] <Avenger> lynx: i don't know
[21:55:04] <fuzzie> i am too tired to explain but the VVCs for things like hold are set to loop infinitely, they don't stop until *all* effects have died
[21:55:32] <fuzzie> so it is no problem starting the vvc only on first apply, the first one will keep going forever if needed
[21:55:41] <lynxlynxlynx> why is there a special opcode for casting glow anyway :s
[21:55:46] <fuzzie> lynxlynxlynx: commit it with comment?
[21:56:26] <lynxlynxlynx> yeah
[21:56:47] <lynxlynxlynx> maybe they hardcoded all the heights and positions of the blob (like we fail to imitate)
[21:58:56] <Avenger> animations got a GetCGHeight method :)
[21:59:11] <Avenger> we also have something like that, iirc
[21:59:20] <Avenger> but the heights are not set correctly?
[21:59:56] <lynxlynxlynx> it's one animation, but the placement depends on the avatar
[22:00:00] <Avenger> afaik, we calculate the cg height from the feet circle size
[22:00:14] <CIA-27> GemRB: 03lynxlupodian * rbb55cd758ec9 10gemrb/gemrb/plugins/FXOpcodes/FXOpcodes.cpp:
[22:00:14] <CIA-27> GemRB: fuzzie fixed fx_play_visual_effect sticky animation looping
[22:00:14] <CIA-27> GemRB: fixes armor and some other spell effects
[22:00:15] <lynxlynxlynx> yeah, only approximately
[22:00:18] <CIA-27> GemRB: 03lynxlupodian * r10b2e98df85e 10gemrb/gemrb/core/ScriptedAnimation.cpp:
[22:00:18] <CIA-27> GemRB: SetDefaultDuration: bail out if it is not a looping vvc
[22:00:18] <CIA-27> GemRB: fixes CUTSCENE_DAMAGE_1 not playing in the bg2 intro
[22:00:25] <CIA-27> GemRB: 03lynxlupodian * r6f3066791e75 10gemrb/gemrb/plugins/FXOpcodes/FXOpcodes.cpp:
[22:00:25] <CIA-27> GemRB: fx_casting_glow: mark the constructed animation as nonlooping, otherwise
[22:00:25] <CIA-27> GemRB: we're stuck with them forever since the last commit
[22:00:45] <Avenger> i don't really understand this
[22:01:13] <Avenger> we did set the duration for looping vvcs before, and we still do
[22:01:26] <Avenger> so, why you need to change casting glow
[22:01:30] <Avenger> and why would it work now
[22:01:41] <Avenger> if it is non looping, you cannot set its duration now
[22:01:52] <Avenger> so, all cg will have the same length now
[22:02:05] <fuzzie> is that not correct?
[22:02:16] <fuzzie> i only ever looked at casting for pst, which we don't implement
[22:02:46] <lynxlynxlynx> i don't get it either; i'm not sure if the original shortens the glow for shorter casts
[22:05:27] <fuzzie> hm
[22:08:47] <CIA-27> GemRB: 03lynxlupodian * rde86407f3c24 10gemrb/gemrb/core/GameData.cpp:
[22:08:47] <CIA-27> GemRB: GetScriptedAnimation: silenced the Exists call since the actual getters
[22:08:47] <CIA-27> GemRB: will print too; fixes casting glow vvc "errors"
[22:10:56] <lynxlynxlynx> why didn't i think of that before, it always bugged me
[22:14:15] <Avenger> lets hope these changes fixed more than broke :)
[22:15:47] <Avenger> lol
[22:15:59] <Avenger> rune of torment is bugged by it
[22:16:50] <Avenger> actually, that was my fault
[22:17:14] <Avenger> i didn't tell you about the other duration sensitive flag
[22:17:51] <Avenger> the one i added today :)
[22:19:31] <CIA-27> GemRB: 03avenger_teambg * r52f3ce463e86 10gemrb/gemrb/core/ScriptedAnimation.cpp: 'frozen' vvc's may also have duration
[22:21:26] <Avenger> the cg is affected by casting speed
[22:21:41] <Avenger> at least, in the original game :)
[22:22:15] <Avenger> ok, maybe i create one more pst anim today
[22:22:17] <-- Avenger has left IRC (Quit: bye!)
[22:26:14] <-- tomprince has left IRC (Quit: Page closed)
[22:31:12] --> tomprince has joined #GemRb
[22:50:25] <-- SiENcE has left IRC (Quit: bye)
[22:53:51] <-- lynxlynxlynx has left IRC (Remote host closed the connection)
[23:05:15] --> tomprince_ has joined #GemRb
[23:24:38] --> BaldimerBrandybo has joined #GemRb
[23:27:34] <-- PixelScum has left IRC (Ping timeout: 250 seconds)
[23:40:29] <-- tomprince_ has left IRC (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
[23:40:52] --> tomprince_ has joined #GemRb
[23:41:05] <-- tomprince_ has left IRC (Remote host closed the connection)
[23:56:27] <-- tomprince has left IRC (Quit: Page closed)