dolio's spell fixes and additions 0.1 for Co8 6.0.0 NC

Discussion in 'General Modification' started by dolio, Dec 30, 2010.

Remove all ads!
Thread Status:
Not open for further replies.
  1. dolio

    dolio Established Member Supporter

    Joined:
    May 30, 2005
    Messages:
    338
    Likes Received:
    81
    dolio's spell fixes and additions 0.2 for Co8 6.0.0 NC

    Per Gaear's suggestion, I've created an addon package for the Co8 6.0.0 NC mod that fixes and adds spells. The ultimate goal is to get them into the main release, but it's presented as an addon for now so that people aren't forced to beta test.

    The attached archive should be able to be extracted into your main ToEE directory, where it should create an addons/Circle of Eight Modpack 6.0.0 NC/ directory if necessary. Inside there will be a .tam addon file and a (verbose) changelog. The addon can then be activated using TFE-X. Here's an abridged version of what to expect:

    • Many minor spell adjustments to enhance rules compliance
      • Otiluke's Resilient Sphere isn't an automatic hit against non-friendly targets, and instead allows a reflex save
      • ...
    • Some bug fixes for obviously broken spells
      • Remove Blindness/Deafness now works
      • Mass Hold Person may successfully immobilize more than one target
      • Death Gaze, Weird and Circle of Death now respect appropriate immunities
        • Watch out, the bodaks' death gaze now appropriately works at a range of 30 feet, and they'll take advantage of it
    • New spells
      • Banishment (multi-target, gets rid of outsiders and summons)
      • Destruction (high level cleric save-or-die, save-and-be-damaged)
      • Sunburst (blind and damage living people, nuke undead, oozes and fungi)
      • Wail of the Banshee (9th level mass save-or-die)
    • Tweaks of existing spells
      • Finger of Death deals negative energy damage on a failed save, because 'unspecified' damage seems to get reduced by all possible damage reduction.
      • Dismissal behaves more like the Banishment included in this pack (spoilered, in case you want to be surprised):
        • It doesn't work in the elemental nodes.
        • It makes the banished monsters disappear, so don't use it if you want any loot they're carrying
      • Finger of Death and Dismissal award experience appropriately in all (I believe) situations

    I haven't yet added long help entries for the new spells. The format looks a bit daunting, so that'll be a future addition. They can be looked up in the SRD, though.

    ------------------

    Version 0.2 is out, and should be attached. Here are the interesting changes:

    • Ray of Enfeeblement is now appropriately capped at 1d6+5
    • Fixes to Scare
      • I had messed up my targeting fix in the first addon. It now has correct targeting.
      • The duration on a failed save is now correctly 1 round per level instead of 2d4 rounds.
      • A successful save now leaves a target shaken, instead of having no effect.
    • The old suggestion-as-dominate-monster is turned off. Instead, I wrote a new script and spell description where the Troika people had originally planned to put it.
      • Unlike the suggestion script, my dominate monster has a duration of 1 day per level, per the SRD, and isn't limited by creature size and such.
    • Death Ward is fixed to make the recipient immune to negative energy.
    • Death Ward and Otiluke's Resilient Sphere have had their particle effects fixed somewhat.
      • In the case of the latter, I can't fix the on-hit and on-end particles, but it at least displays the intended globe around an affected creature.
    • The planar ally line of spells has been added
      • This is a series of cleric summoning spells that cost experience and gold, and can only be cast out of combat, but they summon somewhat stronger creatures for their level, and have a duration of 1 minute per level.
      • I'm also open to the duration being made rather longer. The actual SRD spell has you bargain with the called creatures for some service, and payment depends on the length of the service.

    If you experience spell-related weirdness while using this addon (including strange AI for spell casting creatures), you should probably report it here. And, if you know about broken spells in general (especially if they're similar to the above bugs), you can report it here, and I'll attempt to fix it for this pack.

    Enjoy. More to come.
     

    Attached Files:

    Last edited: Jan 2, 2011
  2. Gaear

    Gaear Bastard Maestro Administrator

    Joined:
    Apr 27, 2004
    Messages:
    11,029
    Likes Received:
    42
    Bravo! This sounds great, and your level of documentation is just what we need for readmes and such. :thumbsup:
     
  3. Salk

    Salk Established Member

    Joined:
    Jan 2, 2006
    Messages:
    258
    Likes Received:
    0
    Thank you for sharing this with us, dolio!
     
  4. dolio

    dolio Established Member Supporter

    Joined:
    May 30, 2005
    Messages:
    338
    Likes Received:
    81
    So, I'm attempting to fix remove fear, but I'm beginning to think something about it is irreparably bugged. I changed the spell loop to look like:

    Code:
    for target in spell.target_list:
        target.obj.float_mesfile_line( 'mes\\spell.mes', 30001 )
        target.obj.float_mesfile_line( 'mes\\spell.mes', 30002 )
    And as expected, it loops through all the targets, and floats two messages over each (saving throw success, then saving throw fail).

    Now, when I add the remove fear condition in between those two lines, that no longer happens. What instead happens is that the first message floats above target-1's head, and the second message floats above target-2's head. And if I only target one person, the game crashes.

    This is, needless to say, very bizarre. I doubt an exception of some sort is at work, because that would just terminate the script, not skip ahead to the same point in a later iteration of a loop. What seems to be happening is that adding the remove fear condition somehow replaces the first target with the second target, but I have no idea how it could be doing that.

    Does anyone know if the spell worked in the original game? Or has it never worked right?

    Edit: To answer my own question, I switched back over to the patch-2 module, and tweaked the script to make the remove fear effect actually get called. I see the exact same behavior as above, so this was bugged in the official game (and the script was bugged to avoid triggering it (and do nothing instead) to some degree).

    But, this is something I don't know how to fix. It would require a DLL hack. So remove fear is off the table unless I can find some other, similar spell effect that actually works.
     
    Last edited: Dec 31, 2010
  5. Basil the Timid

    Basil the Timid Dont Mention the War

    Joined:
    May 19, 2008
    Messages:
    1,052
    Likes Received:
    1
    Any luck with Suggestion, I was trying to get it to work like Dominate Animal (in terms of duration) but was unsuccessful
     
  6. dolio

    dolio Established Member Supporter

    Joined:
    May 30, 2005
    Messages:
    338
    Likes Received:
    81
    I hadn't looked at it. It looks like Co8 hasn't modified the script much at all, just renamed it to Dominate Monster in spell.mes. However, by the SRD, dominate monster actually has a duration of 1 day per level, so the duration in the current suggestion script is low (1 hour per level; same as the SRD suggestion).

    So, I'm not going to change it to 1 round per level. I'm not really sure why that wouldn't work. The script is pretty fancy, so maybe it's doing something that ignores the duration (ai_follower_add perhaps)?

    Edit: Fiddling with it a little, I might modify it in other ways, though. Dominate monster is supposed to work on arbitrary creatures, but the script appears written to exclude anything but large-sized or smaller npcs (or pcs). So you won't be dominating glabrezu and such.
     
    Last edited: Dec 31, 2010
  7. dolio

    dolio Established Member Supporter

    Joined:
    May 30, 2005
    Messages:
    338
    Likes Received:
    81
    So, consider the following a poll:

    I've fixed Death Ward to protect against negative energy (as the spell says it should) using some hackery with spell objects. To do this, I needed to define a spell flag OSF_IS_DEATH_WARD, and these are presumably limited in number to some extent. It's already at 512 for death ward (and increases to successive powers of 2), for instance (other Co8 spells use this system).

    Negative Energy Protection is broken in the same way as death ward. However, if you want to be able to overlap the spells, I can't use the same flag; otherwise, one spell ending would disable some of the effects of the other. But, I don't really want to spend another flag on a lesser version of death ward.

    One option is to use the same flag, but have each one prevent the other from being cast. So if you have NEP, death ward will fizzle if cast on the same target, and vice versa.

    However, I'm leaning toward just getting rid of NEP. It's not a core 3.5 spell. It was a 3.0 spell, and thus is technically included in 3.5 even if it hasn't been reprinted somewhere, but it seems rather lacking as a spell:

    • It's only one spell level below death ward
    • It has a fraction of the functionality of death ward (only protects against negative energy effects, which is basically damage)
    • It only lasts for 1 round per level, while death ward is 1 minute per level

    Is anyone really yearning to use this spell, or should I just give it the axe?
     
  8. Salk

    Salk Established Member

    Joined:
    Jan 2, 2006
    Messages:
    258
    Likes Received:
    0
    I vote for removing it.
     
  9. Shiningted

    Shiningted I want my goat back Administrator

    Joined:
    Oct 23, 2004
    Messages:
    12,651
    Likes Received:
    350
    I've never used it, and if it fixes something people do use (Death Ward - also a staple of many NPCs) I personally would say its ok (thats Ted the ToEE player, not Ted the moderator).

    If you do use the spell please speak now!
     
  10. dolio

    dolio Established Member Supporter

    Joined:
    May 30, 2005
    Messages:
    338
    Likes Received:
    81
    Well, nobody really uses negative energy protection currently. It doesn't do anything, as far as I can tell, other than make a ring of shiny particles around a character for a few rounds. If no one's noticed this before, that's points in favor of chopping it.

    The one dimension I haven't tested is protection from level draining by creatures' built-in attacks. And the reason I haven't done that is that I can't find any in the game. The obvious suspects are succubi, wights and vampires, but there are no succubi, the wights in description.mes are scenery, and the vampires are either Thrommel (not really a vampire), or neutral NPCs from I-don't-know-where, which don't appear to have the stats of a real vampire.
     
  11. Shiningted

    Shiningted I want my goat back Administrator

    Joined:
    Oct 23, 2004
    Messages:
    12,651
    Likes Received:
    350
    No, as I said, the level-draining ability is there but it is bugged in the way you find so it is not implemented anywhere. I am in favour of adding wights etc but of course evil clerics can command them and they become unstoppable killing machines on any monsters with no class levels.
     
  12. dolio

    dolio Established Member Supporter

    Joined:
    May 30, 2005
    Messages:
    338
    Likes Received:
    81
    I should probably note, I changed the initial post to release version 0.2 (editing that didn't seem to get reflected in the 'most recent message' thing).

    I've tested the planar ally stuff such that I think it works pretty solidly, but due to the nature of the spell (randomly summoning creatures based on the particular god), it's difficult to test exhaustively. If one of them summons a mephit for you, something went wrong, and you should report (at least) your character's deity and which of the three it happened with.

    The way I've structured the code should, I think, prevent the spell from outright failing for any deities at this point (due to bugs in un-tested branches).
     
  13. Salk

    Salk Established Member

    Joined:
    Jan 2, 2006
    Messages:
    258
    Likes Received:
    0
    Will the spell fixes eventually make it into the barebones version of the Co8 mod?
     
  14. Gaear

    Gaear Bastard Maestro Administrator

    Joined:
    Apr 27, 2004
    Messages:
    11,029
    Likes Received:
    42
    Theoretically they will make it into both the standard and NC versions, as they are mechanical changes (bugfixes, really) and not simply 'new content.'

    dolio, does any of the new stuff have audio yet? If not, I'll add it in.*

    Also, what about scrolls/wands - have any been made for the new spells (assuming they're low enough level for wands)?

    Lastly, are we still without help.tab spell descriptions and hyper-links?

    *I see there is none ... no worries.
     
    Last edited: Jan 25, 2011
  15. dolio

    dolio Established Member Supporter

    Joined:
    May 30, 2005
    Messages:
    338
    Likes Received:
    81
    No audio. I assume it's relatively independent? I.E. I don't need to call anything from the scripts? None of the existing ones seem to.

    I haven't added any scrolls or wands, as I haven't learned to do that yet. I think most of the spells I've added would be too high for wands, though (enervation was 4th, but that had to be scrapped).

    I've been putting off on help.tab because I'm not sure what would be good to use for editing it. Do you folks just use the proto editor? It looked like it had some characters (for newlines, probably) that weren't quite normal, but I forget what I used to look at it.

    Aside from that, it's mostly a matter of copying SRD information if it doesn't already exist.

    Oh, and along with my initial fixups, I made a list of which help.tab entries on existing spells needed to be fixed to conform to the fixed, SRD version. The answer is not many. I'll attach it. If the file says "correct," the help entry already matched what I fixed about the spell. Otherwise, I listed what was wrong about the help entry.
     

    Attached Files:

Thread Status:
Not open for further replies.
Our Host!