User talk:JRoush

From the Oblivion ConstructionSet Wiki
Jump to navigation Jump to search

Hi. You added a request for SetCurrentSoulLevel to the OBSE wish list. Wanted to let you know the function already exists. Scruggs 09:03, 11 November 2008 (EST)

Modifying Currently Active Spells[edit source]

Hey, I saw your note about adding/removing (possibly modifying) spells or enchantments that are currently active on an NPC causing a CTD, and I wanted to comment on my own findings: I have a script which replaces the player's spell with a "powered-up" version. If this spell has a duration, however, I ran into the annoying (for me) bug of the spell randomly changing if the player switched spells while it was active (since the script would change the base spell to be the "powered-up" version of the new one). At least for me, it didn't cause any crashing, however. So I suspect that this may have to do with the exact circumstances of the spell and effects involved (i.e. coming up with spells that normally wouldn't be allowed on that target, or something).

Just thought it might help you out.

Oh, and on the rest of your stuff - that's some fantastic information! Do you have any plans to make it into a full-fledged article? If you're interested, I may be able to help with that.
Dragoon Wraith TALK 07:39, 13 May 2009 (EDT)

Yes, I meant the XML stuff. I know nothing about it, but if you can get some good data together for it, it'd be a great thing to have on the Wiki, and I'd be very willing to help with that transition. I'd recommend talking to DarN about it on the Forums, he's extremely knowledgeable about that stuff.
As for modifying effects, no, the actual effect was changing. You see, I used a single spell as the "buffed" version, and just erased all of its effects and replaced them with the new choice's effects (improved, of course). So if the player chose Flare (Fire Damage 5pt), my spell would get its name changed to Flare, its effects removed and then a Fire Damage 6pt (for example) effect would be added. If they then selected Summon Ghost (60 seconds), my version of Flare would be changed to read Summon Ghost, and the Fire Damage effect would be eliminated, and a 72 second Summon Ghost effect would be added. If they cast the Summon Ghost, and then select another spell, the spell they actually cast (my improved version) would be changed, and the Ghost would disappear (if I remember correctly). I did not test this very thoroughly, however, as this was wholly undesired in the first place, and I can't really remember the details. But it definitely did not crash.
Dragoon Wraith TALK 21:54, 17 May 2009 (EDT)
I got curious enough to poke around with this - casting a spell, and then run a script that removes some or all of the spells effects. Removing Summon-type effects often had no effect, although at least once it made the summon disappear. Removing effects like paralyze and fire damage, while they were active on an actor, inevitably caused a CTD a few frames later. Striking the actor caused an immediate CTD. DragoonWraith, if you read this (and care to humor me), maybe you could post your code? If I can avoid this crashing problem it would be useful in the future.
JRoush 12:28, 23 May 2009 (EDT)
I suspect it works for some effects not with others. My code is buried deep inside a plug-in that I haven't opened in months, I'm afraid, so I can't really dig it out right now. If you really want, though, I can try to. But I think you'll just find exactly what you already found - some effects cause crashes if they're suddenly removed. I didn't do nearly enough testing to determine which effects did what.
Dragoon Wraith TALK 03:26, 24 May 2009 (EDT)

Great work[edit source]

Really learned something from your post on the Oblivion XML system - Very useful. I second a full article, if possible. Thanks for your contribution. shadeMe TALK 19:18, 20 May 2009 (EDT)

Thanks. I've made a go at a full page. JRoush 12:28, 23 May 2009 (EDT)