#gemrb@irc.freenode.net logs for 28 Oct 2012 (GMT)

Archive Today Yesterday Tomorrow
GemRB homepage

[00:58:15] <-- rocket_hamster has left IRC ()
[01:42:19] --> rocket_hamster has joined #gemrb
[01:46:15] <-- rocket_hamster has left IRC (Client Quit)
[06:02:46] <-- |Cable| has left IRC (*.net *.split)
[06:41:59] --> lynxlynxlynx has joined #gemrb
[06:41:59] --- ChanServ gives channel operator status to lynxlynxlynx
[06:43:04] <-- DrMcCoy has left IRC (*.net *.split)
[06:43:06] <-- lynxlynxlynx has left IRC (*.net *.split)
[06:43:08] <-- fuzzie has left IRC (*.net *.split)
[06:43:09] <-- gembot has left IRC (*.net *.split)
[06:43:11] <-- jonask has left IRC (*.net *.split)
[06:46:10] --> lynxlynxlynx has joined #gemrb
[06:48:44] --> DrMcCoy has joined #gemrb
[06:48:44] --> jonask has joined #gemrb
[06:48:44] --> fuzzie has joined #gemrb
[06:48:44] --> gembot has joined #gemrb
[07:06:39] <-- duckpunch has left IRC (Ping timeout: 265 seconds)
[07:07:27] --> duckpunch has joined #gemrb
[07:42:51] <-- DrMcCoy has left IRC (*.net *.split)
[07:42:52] <-- fuzzie has left IRC (*.net *.split)
[07:42:54] <-- gembot has left IRC (*.net *.split)
[07:42:56] <-- jonask has left IRC (*.net *.split)
[08:30:02] --> DrMcCoy has joined #gemrb
[08:30:02] --> jonask has joined #gemrb
[08:30:02] --> gembot has joined #gemrb
[08:31:07] --> fuzzie has joined #gemrb
[08:58:51] --> |Cable| has joined #gemrb
[09:08:28] <-- |Cable| has left IRC (*.net *.split)
[09:13:56] --> |Cable| has joined #gemrb
[09:16:13] <-- Drakkar has left IRC (Ping timeout: 246 seconds)
[09:34:18] <-- fuzzie has left IRC (*.net *.split)
[09:34:19] <-- DrMcCoy has left IRC (*.net *.split)
[09:34:19] <-- |Cable| has left IRC (*.net *.split)
[09:34:23] <-- gembot has left IRC (*.net *.split)
[09:34:25] <-- jonask has left IRC (*.net *.split)
[09:38:24] --> Drakkar has joined #gemrb
[09:38:24] --> |Cable| has joined #gemrb
[09:38:24] --> fuzzie has joined #gemrb
[09:38:24] --> DrMcCoy has joined #gemrb
[09:38:24] --> gembot has joined #gemrb
[09:38:24] --> jonask has joined #gemrb
[09:45:18] <-- fuzzie has left IRC (*.net *.split)
[09:54:25] --> rocket_hamster has joined #gemrb
[09:56:04] --> fuzzie has joined #gemrb
[10:22:38] --> edheldil_ has joined #gemrb
[10:28:28] <rocket_hamster> drows await us lynx?
[11:01:40] --> Avenger has joined #gemrb
[11:01:40] --- ChanServ gives channel operator status to Avenger
[11:01:50] <Avenger> hey lynx thanks for fixing that bug in check_resistance
[11:02:21] <Avenger> btw, now we could implement some feats where a feat means a saving throw penalty to the opponent, i doubt we implemented those yet
[11:02:55] <Avenger> probably specialist mages too
[11:04:53] <rocket_hamster> The Drow rule supreme??
[11:26:31] <lynxlynxlynx> ah, spell focus
[11:27:32] <Avenger> yep
[11:27:49] <Avenger> now that we have the caster in check_resistance, we can do any checks
[11:28:23] <Avenger> i would rather implement a new opcode than directly check the feat
[11:28:37] <Avenger> iwd2 didn't give spell focus for all schools
[11:30:58] <Avenger> so, an opcode that does just that would be fun. That would also let you create some items that grant enhanced school effects. Like crown of the lich king - opponents get penalty vs necromancy, or whatever ;)
[11:30:59] <lynxlynxlynx> hmm, i meant spell penetration then
[11:31:28] <lynxlynxlynx> but for that one it shouldn't matter where we apply it
[11:31:37] <Avenger> hmm spell focus is for own saving throws, spell penetration is for opponent saving throws?
[11:31:56] <Avenger> i always forget these fancy 3rd ed names
[11:31:58] <lynxlynxlynx> increases the DR, so kinda
[11:32:35] <lynxlynxlynx> good idea on making it an opcode
[11:33:02] <lynxlynxlynx> (... but DR is always cheched with both actor's numbers, so it's irrelevant where we apply it)
[11:33:18] <lynxlynxlynx> rocket_hamster: maybe later
[11:35:08] <Avenger> i will just make it a generic opcode so we don't have toadd 7 new stats, just a function that collects spell stats. param1 = bonus/penalty param2 = spell school
[11:35:46] <Avenger> then this spell penetration feat could be added easily
[11:36:01] <Avenger> and any other missing schools :)
[11:36:31] <lynxlynxlynx> i'll check which i noted we don't implement yet
[11:36:55] <Avenger> hmm, spell penetration is not based on schools
[11:37:00] <lynxlynxlynx> improved evasion, improved turning, precise shot
[11:37:12] <lynxlynxlynx> no, penetration is a generic bonus
[11:37:46] <Avenger> what does 'aegis of rime' ?
[11:38:02] <Avenger> ahh that is elemental based, not school based
[11:38:05] <lynxlynxlynx> lemme check, but i think it was elemental bonus + resistance
[11:38:26] <Avenger> not saving throw
[11:38:28] <Avenger> ok
[11:38:49] <Avenger> anyway, i will make this stuff have schools, with 0 - all schools
[11:40:04] <lynxlynxlynx> spell penetration is basically a caster level bonus, so we probably already have that implemented
[11:41:22] <lynxlynxlynx> is there a map of our feat overrides somewhere? it's impossible to tell what they do from the filenames
[11:42:11] <-- edheldil_ has left IRC (Ping timeout: 260 seconds)
[11:49:09] <Avenger> hmm you are right
[11:49:33] <Avenger> on the other hand, we don't handle caster level in the saving throw, do we
[11:49:54] <Avenger> up until now, we didn't have the actor in check_resistance
[11:50:29] <Avenger> how is this done? in iwd2, the caster level is added to the dc ?
[11:50:44] <lynxlynxlynx> yes
[11:50:58] <lynxlynxlynx> you can get all the calculations by searching for %d
[11:51:13] <lynxlynxlynx> iwd2 has printf like tokens for detailed combat stats
[11:51:50] <lynxlynxlynx> ~Saving throw result: (d20 + save + bonuses) %d + %d + %d vs. (10 + spellLevel + saveMod) 10 + %d + %d - Success!~
[11:52:02] <lynxlynxlynx> ~Spell Disruption check (d20 + Concentration + Combat Casting bonus) %d + %d + %d vs. (10 + damageTaken + spellLevel) = 10 + %d + %d.~
[11:52:20] <lynxlynxlynx> ~Spell Resistance check (Spell resistance:) %d vs. (d20 + caster level + spell resistance mod) = %d + %d + %d.~
[11:52:51] <lynxlynxlynx> ~Failed spell casting concentration check! Check roll %d vs. difficulty %d (%d Skill & Feat bonus)~
[11:53:24] <lynxlynxlynx> so i don't see spell focus anywhere but that saveMod
[11:53:28] <Avenger> ok, just saving throw now
[12:01:41] <Avenger> lol, we had the spell penetration feat check, but it was actually kinds 'spell vulnerability' as it checked the target :D
[12:03:09] <Avenger> so i will just skip the spell school idea for now, i just fix what we already had
[12:06:14] <Avenger> so spell penetration affects magic resistance AND saving throws?
[12:09:21] <Avenger> Lynx, i think i was right in the first place. Spell penetration is to overcome magic resistance. Spell focus is to overcome saving throw DC
[12:10:12] <lynxlynxlynx> http://www.gamebanshee.com/icewinddaleii/feats/spellpenetration.php <-- yes
[12:11:50] <rocket_hamster> there is spell focus?
[12:15:12] <Avenger> for some schools, yes. SF: Enchantment
[12:15:40] <Avenger> enchantment, necromancy, evocation and transmutation
[12:17:47] <rocket_hamster> yes just found it
[12:18:42] <rocket_hamster> penetration is to overcome "spell resistance"
[12:18:53] <rocket_hamster> so who knows if that is magic resistance
[12:20:56] <Avenger> it is about as close as 3rd ed is to 2nd ed :)
[12:22:18] <Avenger> i'm pretty sure half of our formulas are not correct, but i want to implement the framework first. If the variables are all there, it is easier to fix the operators... especially if there are only + and - operators
[12:22:50] <rocket_hamster> i see
[12:32:46] <-- rocket_hamster has left IRC ()
[12:34:19] <Avenger> ok the big part is done, now implementing the 4 feat spells would be easy
[12:34:36] --> rockethamster has joined #gemrb
[12:45:37] <lynxlynxlynx> go ahead :)
[13:02:48] <Avenger> lynx hp over head has an MC flag associated with it
[13:02:52] <Avenger> do we handle that?
[13:07:50] <Avenger> i see it is handled
[13:13:42] <-- rockethamster has left IRC (Quit: Leaving)
[13:14:58] <Avenger> lynx do we ever unload a table?
[13:28:32] <lynxlynxlynx> on exit
[13:29:11] <lynxlynxlynx> autotables likely sooner, since they can be reused
[13:30:58] --> Avenger_ has joined #gemrb
[13:31:19] --> rocket_hamster has joined #gemrb
[13:32:01] <-- Avenger has left IRC (Disconnected by services)
[13:32:08] --- Avenger_ is now known as Avenger
[13:32:10] --- ChanServ gives channel operator status to Avenger
[13:37:45] <Avenger> almost there
[13:43:20] <lynxlynxlynx> spell focus?
[13:43:38] <lynxlynxlynx> i retested that specific damage bonus still works - it does
[13:43:51] <lynxlynxlynx> it ignores resistance though
[13:44:34] <-- rocket_hamster has left IRC (Ping timeout: 240 seconds)
[13:45:54] <Avenger> ok i did something
[13:46:05] <Avenger> i just couldn't test what happens on level up
[13:46:15] <Avenger> level up doesn't work in iwd2?
[13:48:04] <lynxlynxlynx> not implemented at all
[13:49:48] <lynxlynxlynx> you forgot to commit the 2da
[13:53:17] <Avenger> i thought splfocus is already in the system
[13:53:22] <Avenger> isn't it?
[13:53:56] <Avenger> but i made an off by one bug, so download again
[13:54:44] <Avenger> and a silly debug print remained :D
[13:55:41] <lynxlynxlynx> i only checked iespd
[13:56:06] <Avenger> splfocus.2da was already in override/iwd2
[13:58:09] <Avenger> thanks for testing the damage bonus btw
[14:08:48] --> rockethamster has joined #gemrb
[14:41:14] <lynxlynxlynx> so unexciting here without cia
[15:24:20] <Avenger> yeah
[15:24:25] <Avenger> did you push something?
[15:26:47] <Avenger> hmm movie subtitles are a separate option?
[15:27:56] <Avenger> so many obscure options :)
[15:38:24] <lynxlynxlynx> many more :s
[15:38:33] <lynxlynxlynx> i missed this particular one
[15:38:48] <lynxlynxlynx> though iirc tob displays this text in purple
[15:50:11] <lynxlynxlynx> Avenger: btw, i remember you did some system changes before the familiar fixes; was that for the problematic non-global actors?
[15:50:31] <lynxlynxlynx> rockethamster: i lost my productivity -> time to recharge
[15:52:24] <rockethamster> :D
[15:52:25] <rockethamster> i see
[15:53:11] <rockethamster> serv is up
[15:54:18] <lynxlynxlynx> hehe, that was fast
[15:59:54] --> adam_ has joined #gemrb
[15:59:54] <-- rockethamster has left IRC (Read error: Connection reset by peer)
[16:00:44] <adam_> HMM
[16:00:53] <adam_> prolly cable got disconnected
[16:01:55] <Avenger> lynx you meant move between areas for non globals and such?
[16:02:07] <lynxlynxlynx> i don't remember what it was
[16:02:43] <Avenger> i changed move between areas earlier, and fixed that a bit again a few days ago
[16:03:06] <Avenger> i fixed a few todo's from the wiki
[16:03:55] <lynxlynxlynx> yep :)
[16:45:49] <lynxlynxlynx> boom
[16:46:50] <adam_> what happened?
[16:47:14] <lynxlynxlynx> possibly a script crash
[16:47:21] <lynxlynxlynx> ok
[16:48:49] --> edheldil_ has joined #gemrb
[17:41:28] <edheldil_> btw:
[17:41:30] <edheldil_> /home/benkovsk/ie/gemrb/gemrb/core/Scriptable/Actor.cpp: In member function ‘void GemRB::Actor::dump(GemRB::StringBuffer&) const’:
[17:41:31] <edheldil_> /home/benkovsk/ie/gemrb/gemrb/core/Scriptable/Actor.cpp:3906: error: format ‘%ld’ expects type ‘long int’, but argument 5 has type ‘size_t’
[17:41:31] <edheldil_> make[2]: *** [gemrb/core/CMakeFiles/gemrb_core.dir/Scriptable/Actor.cpp.o] Error 1
[18:07:16] <lynxlynxlynx> hmm, compiles here
[18:07:43] <lynxlynxlynx> just casting it beforehand doesn't work?
[18:11:04] <lynxlynxlynx> ah, let's just try it
[18:25:20] <Avenger> heh size_t isn't long int?
[18:26:07] <-- Avenger has left IRC (Quit: bye!)
[18:33:44] --> brada has joined #gemrb
[18:33:46] <lynxlynxlynx> adam_: please finish up that patch too
[18:33:55] <lynxlynxlynx> only one step left :)
[18:35:14] <adam_> HEH
[18:35:21] <adam_> can i have a hint?
[18:41:29] <lynxlynxlynx> sure
[18:41:43] <lynxlynxlynx> make the code you remove an assert
[18:41:54] <lynxlynxlynx> so in case we get there, we abort immediately
[18:42:14] <adam_> ok
[19:40:39] <lynxlynxlynx> problems?
[20:07:30] <-- brada has left IRC (Quit: brada)
[20:08:13] --> brada has joined #gemrb
[21:03:05] <-- jonask has left IRC (Quit: leaving)
[21:07:27] --> jonask has joined #gemrb
[21:09:26] <adam_> i got stuck with baldurs gate
[21:09:27] <adam_> xD
[21:34:03] <Drakkar> owned
[21:50:48] <adam_> noone croses the shadow thieves and lives
[21:53:07] <-- adam_ has left IRC (Quit: Leaving)
[21:56:19] <-- brada has left IRC (Quit: brada)
[21:57:18] --> brada has joined #gemrb
[22:49:30] --> traveler has joined #gemrb
[22:49:41] <traveler> hi guys
[22:49:54] <traveler> i've just spotted one problem
[22:50:43] <traveler> when equipping
[22:50:52] <traveler> cursed sword/weapon
[22:51:02] <traveler> and inventory is full
[22:51:40] <traveler> so you have to take one weapon and switch it with cursed one
[22:52:25] <traveler> instantly upon switch screen is blocked (yeah, cursed SW2H03)
[22:52:43] <traveler> and you are left with original weapon 'in hand'
[22:52:48] <traveler> but you cannot click anything
[22:52:56] <traveler> in hand - as cursor
[22:53:27] <lynxlynxlynx> uh, you shouldn't be able to unequip cursed items
[22:53:36] <lynxlynxlynx> a remove curse spell is needed
[22:54:02] <traveler> yeah
[22:54:08] <traveler> we do not understand each other :)
[22:54:13] <traveler> i will try to rephrase
[22:54:31] <lynxlynxlynx> so does the problem occur when equipping the cursed weapon or when trying to equip something else?
[22:55:12] <traveler> when equipping cursed when if inventory is full there is no place tu put back original one
[22:55:31] <traveler> and you are left with blocked screen + original weapon as cursor
[22:57:34] <lynxlynxlynx> you can't put it on the ground?
[22:58:32] <lynxlynxlynx> are there any python errors in the console?
[22:58:41] <traveler> http://img822.imageshack.us/img822/8940/201210282356491440x900s.png
[22:58:43] <traveler> none
[22:59:23] <lynxlynxlynx> cheese
[22:59:52] <lynxlynxlynx> looks like the window focus was lost
[23:00:05] <traveler> cheese = pure test save
[23:00:20] <lynxlynxlynx> ah nooo
[23:00:26] <lynxlynxlynx> its the berserking sword
[23:00:34] <lynxlynxlynx> you just don't have control of the character
[23:00:47] <lynxlynxlynx> it's like when minsc goes mad, confusion style
[23:00:59] <lynxlynxlynx> try it with any other cursed item and it'll be fine
[23:01:04] <traveler> yes
[23:01:19] <traveler> but shouldn't it drop item on the ground or something?
[23:01:26] <traveler> i cannot exit game
[23:01:27] <traveler> even
[23:01:31] <lynxlynxlynx> it should, yes
[23:03:08] <traveler> also, still no "curse" sound upon equipping it
[23:04:58] <traveler> *yes, i tend to play overpowered solo characters, but still i hoped save with character of such exquisite name as "2" would scream as just test/playground one ;)
[23:07:32] <lynxlynxlynx> how old is your gemrb?
[23:09:05] <traveler> few minutes old
[23:09:23] <traveler> still broken info with cursed items and no sound
[23:09:45] <traveler> or you are asking about guiscript cruft accumulation?
[23:28:22] --> rocket_hamster has joined #gemrb
[23:34:43] <lynxlynxlynx> that shouldn't happen, especially if you're running from the build dir
[23:39:57] <rocket_hamster> lynx like this ? http://fpaste.org/jWt6/
[23:41:02] <lynxlynxlynx> did you try running that?
[23:41:39] <rocket_hamster> nope
[23:41:50] <rocket_hamster> i mean the one without assert
[23:41:52] <rocket_hamster> i did
[23:46:27] <rocket_hamster> heh
[23:48:50] <lynxlynxlynx> bad habit
[23:49:13] <lynxlynxlynx> if you change code after testing, it is surely broken
[23:49:20] <lynxlynxlynx> like in this case
[23:49:41] <traveler> need to sleep; later!
[23:49:48] <rocket_hamster> yes
[23:50:54] <lynxlynxlynx> also, we don't know if it is safe to check all targets
[23:51:12] <lynxlynxlynx> your patch only deals with this invisibility/dead case, so that's what should be covered
[23:51:18] <lynxlynxlynx> /can't target invisible or dead opponent <-- this block
[23:51:23] <rocket_hamster> yes
[23:51:48] <lynxlynxlynx> commits are like bug reports, both should only deal with one thing only
[23:52:09] <lynxlynxlynx> makes things so much easier for everyone, especially when you need to look back
[23:52:28] <rocket_hamster> but i dont understand why you need that assert there xD
[23:52:32] <rocket_hamster> at all
[23:53:48] <-- traveler has left IRC (Ping timeout: 245 seconds)
[23:53:52] <lynxlynxlynx> it's a safety check
[23:54:15] <lynxlynxlynx> for future bugs
[23:54:49] <lynxlynxlynx> say something breaks in attackcore or anywhere else that deals with the same pointer before we get it
[23:55:16] <lynxlynxlynx> the simplest thing would be to have duplicate code, but that's bad form
[23:55:19] <rocket_hamster> but is it related to invisibility check?
[23:55:37] <lynxlynxlynx> you wouldn't be able to detect a bug crept in so easily
[23:55:57] <lynxlynxlynx> sure?
[23:56:37] <rocket_hamster> so i have to make assert related to change that my patch will do
[23:56:52] <rocket_hamster> in case there is a bug related to my change
[23:57:16] <lynxlynxlynx> not neccessarily your change
[23:57:38] <lynxlynxlynx> ok, for a broad definition of related :)
[23:58:25] <rocket_hamster> yes so assert in performattack should check if target really is visible to attacker
[23:58:34] <rocket_hamster> i think i get it now