-
Posts
664 -
Joined
-
Last visited
Content Type
Forums
Events
Downloads
Gallery
Mods
News
Store
Posts posted by Grammarsalad
-
-
Okay, so I'm trying to display the gender of the character in the class descriptions (rather than the protagonist gender). I have tried REPLACE_TEXTUALLY replacing (e.g.) <PRO_MANWOMAN> with <MANWOMAN> in the class description, but in this case the gender doesn't display at all.
The same seems to be the case with tokentxt.2da. I can get this to work (which references the protagonist info):
2DA V1.0 * TOKEN_TEXT PROTAGONIST STAT VALUE EQUALITY STRINGT STRINGF 0 RESERVE * * * * * * 1 NP_MANWOMAN 1 35 2 0 woman man
But not this (which doesn't seem to reference anything):
2DA V1.0 * TOKEN_TEXT PROTAGONIST STAT VALUE EQUALITY STRINGT STRINGF 0 RESERVE * * * * * * 1 NP_MANWOMAN 0 35 2 0 woman man
Any way to get this to work?
-
-
7 hours ago, DavidW said:
“This”, “that” and “their” are all grammatically fine (I don’t like “that” stylistically but tastes vary.)
“Their” has a long history as a valid singular pronoun in English - Shakespeare uses it.
Agreed.
The real problem would be if the text had to be uncertain about temporal sequence. The English language is obsessed with time:
https://www.amazon.com/Through-Language-Glass-Different-Languages-ebook/dp/B00403MO0M
-
9 hours ago, DreamSlaveOne said:
Yeah, I was really sad when Demi disappeared. While SR and IR in really good hands, KR fate not as glorious. Or maybe I'm just a little mad that many spell icons that Demi requested will not be implemented
Do you still have those??? I could certainly use a few icons... Just sayin'
-
yup. It just allows for so much more. It+s far from perfect (it's fairly prone to crashes) but some stuff EE allows for is really good.
did you switch to EE in the end?
You were supposed to defeat the EE, not join them
We are the borg. Existence as you know it is over. Resistance is futile
-
How is nwn_spell_deflection.tpa handled for spells added via ADD_SPELL?
Er, I didn't address that at all.
Right now, I've finished the first step and Mike is working with it. I think he has a plan.
Though, I'm happy to do whatever grunt work needs to be done if required
-
I agree with all of this (and thus Ulb's comments on insect spells, DavidW's on fts duration and ghosts comments on the semi permanent penalty)Eh I must say that after giving it a second thought what Ulb says makes sense. Again.
Perhaps it'd be best to leave the panic effect for the insects spells.
I like DavidW's idea about a fixed duration for the Flesh to Stone petrified effect. And I like it even better with n-ghost's additional semi-permanent penalty.
-
@Ulb
I don't understand what's the differnece in case you're solo. Domination = instant death = stoning = permanent hold = feeblemind etc. In all cases, it's game over.
I can get around permanent/item equiped immunities, that's not an issue.
@Grammarsalad
Likewise.
Mike contacted me about your work with ADD_SPELL, when I'm done with SR base (and EE stuff....I've just spent 2 hours delving into code and fixing stuff..meh) we should merge our work.
Sounds good. I will hopefully be done with the bulk of it today. The only stuff I've done in addition to ADD_SPELL is this:
- Added scroll bam icon for Wiz protection from elements. I got the BAM from IWDEE.- 4th level d.jump (spwi402.spl) disabled for IWDEE, etc. It was selectable at character creation in IWDEE Heart of Winter though by the description it should only be a 1st level spell.- 4th level monster summoning II disabled for IWDEE, etc. Same reason as D. Jump.I'll keep Contagion as it is for now unless I hear otherwise.
-
Hey Kreso, good to see you.
I want to talk about Contagion. I noticed that right now it overwrites Rigid Thinking in Non-IWDEE games. Right now, I'm ADD_SPELLing it in IWDEE so it gets added in that game. Honestly, I'm not sure why it is not overwriting Rigid Thinking in IWDEE, but I'm thinking that it should either overwrite Rigid Thinking in all games or just be ADD_SPELLed in all games.
-
This spell is using a new spell slot and should therefore be ADD_SPELLed.- Dimension Jump (SPWI109) IWDEE --> WIZARD_DIMENSION_JUMP
Sounds good. Will correct. Edit: Done
I've created the function. Once we update it with the final list of spells that will be ADD_SPELLed, it can be applied to the current files to replace references to old resource names.2. Create and run a little WeiDU function (I can code this) that searches through all .spl, .eff, .itm files included in SR's folders (and perhaps IR's too) for effects with a resource value that matches one of these filenames and replace them with a placeholder like "dvfaerfi" or "dvstrsto" depending on which value matched.
I'll need to add code to SR to replace these placeholders with the newly assigned names, but most of the work's done: it will be reusing the replace_spell_resources.tpa file.
Sounds good
-
I would keep this as CLERIC_REMOVE_CURSE. The name has been changed but the spell performs the same function at the same level, so I think it's work standardizing the IDS names and preventing duplicates.Break Enchantment (SPPR307) --> CLERIC_BREAK_ENCHANTMENT
The regenerate x wounds spells all protect against each other in the vanilla games. This changes to 321 effects in the EE engines (which is better, of course). Wouldn't it make more sense to have each version of the spell protect against lesser versions of the spell in the vanilla games (e.g. regenerate moderate wounds protects against regenerate minor wounds--and no other regenerate spell--but regenerate minor wounds wouldn't protect against regenerate moderate wounds--or better regenerate spells? I forget exactly what this would do, but if it would just override the previous spell, it makes sense to allow more powerful regenerate spells to override weaker regenerate spells.
Yeah I was going to suggest this but then I saw you already posted it. My suggestion would be to have more-powerful versions override the less-powerful versions. That works with opcode 321 of course... but not for the non-EE opcode 206 versions. I suggest adding some custom code setting this up at the end of the EE .tpa file that adds 321.
Cool. Taking Mike's advice, we should suggest this in another thread. I'm going to collect suggestions as I go and then post them later
Great. I'll try to write up that function before Monday.Okay, just about done with priest spells. Will start on mage spells next
Good stuff.
I might be finished by Monday. It's moving along pretty quickly, so I'll be finished pretty soon regardless. I'll keep updating the OP as I progressEdit: Nope. There are more moving parts with Mage Scrolls. Moving along a bit slower, but making progress daily.
-
Okay, just about done with priest spells. Will start on mage spells next
A couple of things:
- I notice that Contagion does not replace rigid thinking in IWDEE, though I'm not exactly sure why. If its an AI thing, why is it not an issue in non IWDEE games? Should the spell just be ADD_SPELLed, or is it okay to replace the IWDEE version of rigid thinking? Right now, I am ADD_SPELLing it in IWDEE, but replacing rigid thinking in non-IWDEE games.
- The regenerate x wounds spells all protect against each other in the vanilla games. This changes to 321 effects in the EE engines (which is better, of course). Wouldn't it make more sense to have each version of the spell protect against lesser versions of the spell in the vanilla games (e.g. regenerate moderate wounds protects against regenerate minor wounds--and no other regenerate spell--but regenerate minor wounds wouldn't protect against regenerate moderate wounds--or better regenerate spells? I forget exactly what this would do, but if it would just override the previous spell, it makes sense to allow more powerful regenerate spells to override weaker regenerate spells.
-
No, you're wrong. It perfectly works on EE v2.5+....but the AREATYPE check doesn't work. It always returns true.
Simply add the following row
NOTAREA 0x106 -1 9
to SPLPROT.2da and you're done (courtesy of @Argent77)Oh, this is cool
-
Okay. I can do that. That's actually easier for me. I want to still be transparent with this, so I'll modify the op with spells that are (e.g.) not installed in iwdee.I have a few thoughts:
1. Considerations for IWDEE shouldn't compromise any other part of the mod. SR wasn't designed for IWDEE. If the SR versions of spells would cause the IWDEE AI to mess up, we should simply avoid installing those spells on IWDEE. Later, we can examine ways to improve the IWDEE experience.
2. Any truly new spell added by SR (i.e. taking up a new spell slot rather than overwriting an existing spell) should be switched to ADD_SPELL. This will prevent and avoid a wide variety of compatibility problems.
3. "New" spells that are actually overwriting existing spells are probably best left alone. We can add IDS entries for them (aliases) if that helps.
No problem.And I have a few suggestions for implementing ADD_SPELL:
1. First, identify all SPWI and SPPR spells that are going to be changed to ADD_SPELL and create a list of the filenames.
I'll need help with that weidu function, but otherwise, sounds good2. Create and run a little WeiDU function (I can code this) that searches through all .spl, .eff, .itm files included in SR's folders (and perhaps IR's too) for effects with a resource value that matches one of these filenames and replace them with a placeholder like "dvfaerfi" or "dvstrsto" depending on which value matched.
3. At install time, use ADD_SPELL for the files. After everything is installed, use the same WeiDU function from before to search through all .spl, .eff, and .itm files in the game and match the changed values (e.g. "dvfaerfi") with the newly assigned filenames.
Likewise, we'll want to search the .tpa/.tph files to see if the old filenames are referenced in any libraries and modify those so they fetch the new filename from SPELL.IDS at install-time.
Can anyone think of any references to old filenames that wouldn't be caught by this?
-
List and TO DO:
* NOT installed in IWDEE *
DONE
--> CASTER_SPELL_NAME (add to IDS)
ADD_SPELL: CASTER_SPELL_NAME (self explanatory)
[spell Name] eff Rename: [Old sp Name.eff] --> [New sp Name.eff]
[spell Name] Sec Spell Rename: [Old sp Name.spl] --> [New sp Name.spl]
Note: Only assigning Alias IDS entries to 'replacement' spells if done here: http://gibberlings3.net/forums/index.php?showtopic=29674&st=0
Assigning IDS values according to this thread under the assumption that SCS uses them.
Renamed Sec Spells:Faerie Fire: sppr114f.spl --> DVPR114F.splCause Light Wounds: sppr119d.spl --> DVPR119D.splCause Moderate Wounds: sppr219d.spl --> DVPR219D.splContagion: sppr311d.spl --> DVPR311D.splCause Serious Wounds: sppr321d.spl --> DVPR321D.splCause Critical Wounds: sppr414d.spl --> DVPR414D.splAnimal Growth: sppr525d.spl --> DVPR525D.splBall Lightning: spwi526d.spl --> DVWI524D.spl //yes, that's correctMestil's Acid Sheath: spwi526d.spl --> DVWI526D.splRenamed Effs:Spike Growth: sppr325i.eff --> DVPR325I.effRenamed 2DAs:Protection from Elemental Energy: spwi426.2da --> DVWI426.2daAdditional Alias IDS Entries:
1209 => CLERIC_KNOW_OPPONENT (has the same value as CLERIC_KNOW_ALIGNMENT so either can be used)
1307 => CLERIC_BREAK_ENCHANTMENT (has the same value as, CLERIC_REMOVE_CURSE so either can be used)
1402 => CLERIC_ANIMAL_SUMMONING_SR_4 (has the same value as CLERIC_ANIMAL_SUMMONING_1 so either can be used)
1501 => CLERIC_ANIMAL_SUMMONING_SR_5 (has the same value as CLERIC_ANIMAL_SUMMONING_2 so either can be used)
1602 => CLERIC_ANIMAL_SUMMONING_SR_6 (has the same value as CLERIC_ANIMAL_SUMMONING_3 so either can be used)
2207 => WIZARD_BATTERING_RAM (has the same value as WIZARD_KNOCK so either can be used)
2208 => WIZARD_KNOW_OPPONENT (has the same value as WIZARD_KNOW_ALIGNMENT so either can be used)
2309 => WIZARD_MONSTER_SUMMONING_SR_3 (same value as WIZARD_MONSTER_SUMMONING_1 so either can be used)
2410 => WIZARD_BREAK_ENCHANTMENT (same value as WIZARD_REMOVE_CURSE so either can be used)
2423 => WIZARD_MONSTER_SUMMONING_SR_4 (same value as WIZARD_SPIDER_SPAWN so either can be used)
2605 => WIZARD_BANISHMENT (Same value as WIZARD_DEATH_SPELL so either can be used)
2801 => WIZARD_GHOSTFORM (same value as WIZARD_DELETED in BG(2)EE or WIZARD_MONSTER_SUMMONING_6 in IWDEENew ADD_SPELL values
CLERIC_POLYMORPH_OTHER (SPPR519) Druid polymorph other
CLERIC_ANIMAL_SUMMONING_SR_7 (SPPR716) Animal Summoning VII
WIZARD_KNOW_ALIGNMENT_SR_1 (SPWI126) Detect Alignment, 1st level version
WIZARD_RESIST_ELEMENTS (SPWI225) Resist Elements, wiz 2nd level version
WIZARD_BALL_LIGHTNING (SPWI524) Ball Lightning (not created yet, it appears--same value as prot from fire below)
WIZARD_PROTECTION_FROM_FIRE_SR_5 (SPWI524) 5th lev prot from fire (yes, currently same value as ball lightning)
WIZARD_PROTECTION_FROM_COLD_SR_5 (SPWI525) 5th lev prot from cold
Changes outside the scope of ADD_SPELL: Any other changes (and justification for those changes) will be noted here.
- Added scroll icon for wiz Resist Elements (used cleric Resist Elements from IWDEE). Reason:: The scroll was missing a proper icon and a suitable bam was available and easy to add.
- 4th level d.jump (spwi402.spl) disabled for IWDEE, etc. It was showing up in spell selection in IWDEE (at least) at 4th level during character creation (by the description is a 1st level spell)
- 4th level monster summoning II (SPWI407) disabled for IWDEE, etc. It was showing up in spell selection in IWDEE (at least) at 4th level during character creation (shouldn't exist alongside SR Monster Summoning IV)Suggestions:
- ADD_SPELL Contagion in all games (rather than replacing Rigid Thinking)
- Regenerate spells only protect vs. lower level/less effective versions of regenerate
- Use IWDEE icon bams for Expeditious Retreat (both IWDEE and non-iwdee version--currently uses prot from petrification)
General Issues:
- IWDEE: SPPR210, SPPR619, SPWI326 are added to Hidespl.2da making spells with these values unavailable (only an issue with SPPR210 Resist Elements)
Priest Spells
Level 1:
- Faerie Fire (SPPR114): ADD_SPELL: CLERIC_FAERIE_FIRE
- Faerie Fire Sec Spell name change: sppr114f.spl --> DVPR114F.spl
- Strength of Stone (SPPR115) ADD_SPELL: CLERIC_STRENGTH_OF_STONE
- Sunscorch (SPPR116): ADD_SPELL: CLERIC_SUNSCORCH
- Regenerate Light Wounds (SPPR117): ADD_SPELL: CLERIC_REGENERATE_LIGHT_WOUNDS
- Issue: Protects vs. SPPR217, SPPR619/711/217/323/419 (i.e. other regen spells)
- Goodberry (SPPR118) ADD_SPELL: CLERIC_GOODBERRY_DRUID_VERSION
- * Cause Light Wounds (SPPR119) ADD_SPELL: CLERIC_CAUSE_LIGHT_WOUNDS *
- Cause Light Wounds Sec Spell name change: sppr119d.spl --> DVPR119D.spl
- Animal Summoning I (SPPR120) ADD_SPELL: CLERIC_ANIMAL_SUMMONING_SR_LEVEL_1
- Obscuring Mist (SPPR121) ADD_SPELL: CLERIC_OBSCURING_MIST
- Obscuring Mist eff Rename: sppr121i.eff --> DVPR121i.eff
- Remove unnecessary ALTER_EFFECTS, etc.
Level 2:
- Know Opponent (SPPR209) --> CLERIC_KNOW_OPPONENT
- Resist Elements (SPPR210) --> CLERIC_RESIST_ELEMENTS
- Cure Moderate Wounds (SPPR215) ADD_SPELL: CLERIC_CURE_MODERATE_WOUNDS
- Fire Trap (SPPR216): ADD_SPELL: CLERIC_FIRE_TRAP
- Regenerate Moderate Wounds (SPPR217): ADD_SPELL: CLERIC_REGENERATE_MODERATE_WOUNDS
- Issue: Protects vs. SPPR619/711/117/323/419 (i.e. other regen spells)
- Gust of Wind (Druid) (SPPR218) ADD_SPELL: CLERIC_GUST_OF_WIND_DRUID_VERSION
- * Cause Moderate Wounds (SPPR219) ADD_SPELL: CLERIC_CAUSE_MODERATE_WOUNDS *
- Cause Moderate Wounds Sec Spell Rename: sppr219d.spl --> DV
- Animal Summoning II (SPPR220) ADD_SPELL: CLERIC_ANIMAL_SUMMONING_SR_LEVEL_2
- Remove unnecessary ALTER_EFFECTS, etc.
Level 3:
- Break Enchantment (SPPR307) --> CLERIC_BREAK_ENCHANTMENT
- Contagion (SPPR311) Does not replace rigid thinking in IWDEE. ADD_SPELL in IWDEE: CLERIC_CONTAGION Non IWDEE: --> CLERIC_CONTAGION
- Contagion Sec Spell Name Change: sppr311d.spl --> DVPR311D.spl
- Issue:Why does this spell not replace Rigid Thinking in IWDEE??? Should it just be added by ADD_SPELL in all games?
- Contagion Sec Spell Name Change sppr311d.spl --> DVPR311D.spl
- Gust of Wind (SPPR (Cleric version?) --> CLERIC_GUST_OF_WIND
- Animal Summoning III (SPPR320) ADD_SPELL: CLERIC_ANIMAL_SUMMONING_SR_LEVEL_3
- * Cause Serious Wounds (SPPR321) ADD_SPELL: CLERIC_CAUSE_MEDIUM_WOUNDS *
- Cause Serious Wounds Sec Spell Rename: sppr321d.spl --> DVPR321D.spl
- Storm Shield (SPPR322) ADD_SPELL: CLERIC_STORM_SHIELD
- Issue: Storm Shield: Protects vs. SPWI213/502/614/810, WAND13, SPPR319/517/717/319B/517B/717B/322
- Regenerate Serious Wounds (SPPR323) ADD_SPELL: CLERIC_REGENERATE_SERIOUS_WOUNDS
- Issue: Protects vs. SPPR619/711/117/217/419 (i.e. other regen spells)
- Magic Fang (SPPR324) ADD_SPELL: CLERIC_MAGIC_FANG
- Issue: Why not installed in IWDEE??? Installing in IWDEE
- * Spike Growth (SPPR325) ADD_SPELL: CLERIC_SPIKE_GROWTH *
- Spike Growth Eff Name change: sppr325i.eff --> DVPR325I.eff
- Issue: Why not installed in IWDEE??? Not needed (already a version in IWDEE)
- Icelance (SPPR326) ADD_SPELL: CLERIC_ICELANCE
- Remove unnecessary ALTER_EFFECTS, etc.
Level 4:
- Protection from Lightning Disabled in IWDEE as in other games
- * Cause Critical Wounds (SPPR414) *
- Ice Storm (SPPR418) ADD_SPELL: CLERIC_ICE_STORM
- Regenerate Critical Wounds (SPPR419) ADD_SPELL: CLERIC_REGENERATE_CRITICAL_WOUNDS
- Issue: Protects vs. SPPR619/711/117/217/323 (i.e. other regen spells)
Level 5:
- * Cause Wounds (SPPR510) Disabled *
- * Slay Living * (SPPR511) *
- Polymorph Other (SPPR519) ADD_SPELL: CLERIC_POLYMORPH_OTHER
- Protection from Acid (SPPR520) ADD_SPELL: CLERIC_PROTECTION_FROM_ACID
- Protection from Cold (SPPR521) ADD_SPELL: CLERIC_PROTECTION_FROM_COLD
- Protection from Lightning (SPPR522) ADD_SPELL: CLERIC_PROTECTION_FROM_LIGHTNING
- Protection from Fire (SPPR523) ADD_SPELL: CLERIC_PROTECTION_FROM_FIRE
- Mass Regenerate (SPPR524) ADD_SPELL: CLERIC_MASS_REGENERATE
- Animal Growth (SPPR525) ADD_SPELL: CLERIC_ANIMAL_GROWTH
Level 6:
- * Harm (SPPR608) *
- Regeneration (SPPR619) ADD_SPELL: CLERIC_REGENERATION_DRUID_VERSION
- Banishment (SPPR620) ADD_SPELL: CLERIC_BANISHMENT
- Conjure Air Elemental (SPPR621) ADD_SPELL: CLERIC_CONJURE_AIR_ELEMENTAL
- Conjure Earth Elemental (SPPR622) ADD_SPELL: CLERIC_CONJURE_EARTH_ELEMENTAL
- Animate Skeleton Warrior (SPPR623) ADD_SPELL: CLERIC_ANIMATE_SKELETON_WARRIOR
Level 7:- Animal Summoning VII (SPPR716) ADD_SPELL: CLERIC_ANIMAL_SUMMONING_SR_7
Mage Spells
Level 1:
- Monster Summoning I (SPWI107) --> WIZARD_MONSTER_SUMMONING_SR_1
- Obscuring Mist (SPWI106) --> WIZARD_OBSCURING_MIST
- Expeditious Retreat (SPWI108) ADD_SPELL IN IWDEE: WIZARD_EXPEDITIOUS_RETREAT Non IWDEE: --> WIZARD_EXPEDITIOUS_RETREAT
- Dimension Jump (SPWI109) ADD_SPELL: WIZARD_DIMENSION_JUMP
- True Strike (SPWI111) --> WIZARD_TRUE_STRIKE
- Detect Alignment (SPWI126) ADD_SPELL: WIZARD_KNOW_ALIGNMENT_SR_1
Level 2:
- Detect Alignment (SPWI202) No problem: disables detect evil
- Battering Ram (SPWI207) --> WIZARD_BATTERING_RAM
- Know Opponent (SPWI208) --> WIZARD_KNOW_OPPONENT
- Sound Burst (SPWI223) --> WIZARD_SOUND_BURST
- Resist Elements (SPWI225) ADD_SPELL: WIZARD_RESIST_ELEMENTS
- Monster Summoning II (SPWI226) ADD_SPELL: WIZARD_MONSTER_SUMMONING_SR_2
Level 3:
- Monster Summoning III (SPWI309) --> WIZARD_MONSTER_SUMMONING_SR_3
- Icelance (SPWI327) ADD_SPELL: WIZARD_ICELANCE
Level 4:
- Dimension Door (disabled at this lvl) (SPWI402) Disabled for selection at creation in IWDEE, etc. (moved to 1st level)
- Monster Summoning II (Disabled at this lvl) (SPWI407) Disabled for selection at creation in IWDEE, etc.
- Break Enchantment (SPWI410) --> WIZARD_BREAK_ENCHANTMENT
- Monster Summoning IV(SR)(SPWI423) --> WIZARD_MONSTER_SUMMONING_SR_4
- Protection from Elemental Energy (SPWI426) ADD_SPELL: WIZARD_PROTECTION_FROM_ELEMENTAL_ENERGY
- Vitriolic Sphere (SPWI427) ADD_SPELL: WIZARD_VITRIOLIC_SPHERE
Level 5:
- Summon Shadow (SPWI501) --> WIZARD_SUMMON_SHADOW
- Waves of Fatigue (SPWI508) --> WIZARD_WAVES_OF_FATIGUE
- Dispelling Screen (SPWI510) --> WIZARD_DISPELLING_SCREEN
- Ball Lightning (SPWI524) ADD_SPELL: WIZARD_BALL_LIGHTNING //see protect from fire below--same file name (SPWI524)
- Protection from Fire (SPWI524) ADD_SPELL: WIZARD_PROTECTION_FROM_FIRE_SR_5 (5th level version)
- Protection from Cold (SPWI525) ADD_SPELL: WIZARD_PROTECTION_FROM_COLD_SR_5 (5th level version)
- Mestl's Acid Sheath (SPWI526) ADD_SPELL: WIZARD_MESTILS_ACID_SHEATH
Level 6:
- Banishment (SPWI605) --> WIZARD_BANISHMENT
- Monster Summoning IV (SPWI619) --> WIZARD_MONSTER_SUMMONING_4 // DavidW: special case
- Animate Skeleton Warrior (SPWI623) --> WIZARD_ANIMATE_SKELETON_WARRIOR
Level 7:
- Summon Death Knight (SPWI707) --> WIZARD_SUMMON_DEATH_KNIGHT
- Monster Summoning VII (SPWI724) ADD_SPELL: WIZARD_MONSTER_SUMMONING_5
Level 8:- Ghostform (SPWI2801) --> WIZARD_GHOSTFORM
- Mind Blank (SPW802) --> WIZARD_MIND_BLANK
- Symbol of Weakness (SPWI811) --> WIZARD_SYMBOL_WEAKNESS
- Monster Summoning VIII (SPWI819) ADD_SPELL: WIZARD_MONSTER_SUMMONING_6
Level 9:
- Monster Summoning VIIII (SPWI2906) --> WIZARD_MONSTER_SUMMONING_7
-
Theres an ids entries for SR spells thread on the SR forum; the code is in that thread. & sure, help yourself.
Lol, thanks! It's been a stressful life
-
While it might have been better in the first place if SR had been coded with ADD_SPELL, Im unconvinced that at this point it is worth it, given the sheer amount of work and the very large number of bugs it would risk. (I had to do essentially the same thing for IWD-in-BG2, and again for my automated conversion of the IWDEE spell system; it is not trivial, even if you have sufficiently advanced WEIDU-fu to automate most of it.)
You can achieve 90% of the compatibility goals by just adding IDS entries for the SR spells and mandating that SR is installed before other spell mods (which is structurally a good idea anyway given how systematic its changes are - the spell system is not really all that modular). I posted some suggested IDS code last month; it doesnt even have to be in SR itself (I install it in SCS v32).
...that actually seems like a Much better solution. Would it. Be feasible to add that code to Sr at install to just assign the Sr spells IDS entries at install?
Grammarsalad: Do you plan on doing add_spell for ALL of SR's spells, or just the problematic new spells DavidW mentions as destructively overwriting other spells?
Well, I'm not so sure now. There might be better ways to do it, suggested above...
Spells that exist in IWDEE can either 1) if GAME_IS IWDEE, simply overwrite the existing spell; 2) otherwise, leave SR's COPY alone and simply add an IDS entry via DavidW's function.
Then maybe tackle the hopefully small number of spells that 1) are completely new and added to new SPPR___/SPWI___ slots with no IDS name at all; and 2) do not exist in IWDEE. Hopefully that's a manageable number of spells to work with. Stuff like internal 206 effects and subspells can be dealt with by patching while copying - something like
ALTER_EFFECT INT_VAR match_opcode = 146 STR_VAR match_resource = ~sppr116d~ resource = EVAL ~%SOURCE_RES%d~ END
Note that a fair amount of weidu in the /lib folder might need to be changed to account for no longer knowing the RES of every spell.If this ADD_SPELL code occurs after the IWDEE spells are copied and given IDS names, then they shoukd work seamlessly together. Result would be, you can tear out my hackneyed IWDEE compatibility code, it would now work perfectly on that game.
Yeah, something like this.
@DavidW, where can I find that code?...er, and obviously, do you mind if I use it for something like this?
-
If you want to give it a go, feel free.Oh, the new spells still aren't using addspell. Is that planned for the future? If you're looking for volunteers, I'm happy to do it
The biggest obstacle is accounting for the changed filenames. Everything that's moved over to ADD_SPELL will be assigned a different filename, and there may be references to the original filename in subspells or in other spells (e.g. Glitterdust, Protection from Fire, Globe of Invulnerability).
Cool cool!
Yeah, I know. It's a whole thing. It's still worth it to me, as a fully add_spelled sr will facilitate compatibility with other spell mods (which is pretty much all I create these days)
-
Oh, the new spells still aren't using addspell. Is that planned for the future? If you're looking for volunteers, I'm happy to do it
-
CHARGEN applies the CLAB after spell selection, level-up applies the CLAB before spell selection.I *suspect* you could probably
- change the UI so that shamans auto-select some fixed spell(s) on levelling without the player noticing;
- take those spells away again via CLAB.
It's the same issue other divine casters face with removing spells at level-up.
The CLAB would have to remove them both instantly and on a delay, to remove the spells for both situations.
Each kit utilizing it would need a combination of 5 spells per level that they either cannot or must have, so the UI has enough to select at every level.
These spells would have to be available for selection to all shamans, but adding dummy spells for this would likely cause conflict with mods that add Priest spells, since there are only 50 slots per level.
The mod would now have to worry about compatibility issues with UI mods - would probably be best if a separate mod implements the UI changes, and others just tie-in when it's been installed.
This method would otherwise work.
The same section of UI.menu is used by Shamans and Sorcerers for spell selection, so Sorcerers could use this as well.
Any shaman/sorcerer using it would then provide a way to select spells each level (likely though dialog menus).
I don't suppose that there is a way to do some ui magic to create a custom spell selection screen during character creation--and level up--is there?
-
Ah okay. I'll change it to read/write long
-
Oh spit! Simple mistake. I was copying the wrong descriptor from the spl file (i.e. 0x0054 when it should have been 0x0050)--thanks for that Subtle. This worked:
Edit: this is lightly better:
//Scroll of Detect evil COPY_EXISTING ~SPPR104.spl~ ~override~ READ_ASCII 0x0008 name READ_ASCII 0x0050 desc COPY ~%mod_folder%/data/scrolls/priest_1/B_PS104.itm~ ~override~ //Actual scroll WRITE_ASCIIE 0x0008 ~%name%~ WRITE_ASCIIE 0x000c ~%name%~ WRITE_ASCIIE 0x0054 ~%desc%~
-
Solved. See 3rd post
I'm trying to create a number of cleric scrolls. In order to increase compatibility (especially with Spell Revisions), I would like to be able to copy the spell description and then apply it to the scroll description. I can do this will the file name, no problem. So, for example, for the scroll of detect evil, I have this:
//get spl name: Detect Evil COPY_EXISTING ~SPPR104.spl~ ~override~ READ_ASCII 0x0008 name COPY_EXISTING ~B_PS104.itm~ ~override~ //scroll of detect evil (etc.) WRITE_ASCIIE 0x0008 ~%name%~ WRITE_ASCIIE 0x000c ~%name%~
Great, it copies the spell text/string ref--not sure which--from the spell and applies it to the scroll. That is, this doesn't work:
//get spl name: Detect Evil COPY_EXISTING ~SPPR104.spl~ ~override~ READ_ASCII 0x0054 desc COPY_EXISTING ~B_PS104.itm~ ~override~ //scroll of detect evil (etc.) WRITE_ASCIIE 0x0054 ~%desc%~
What am I doing wrong?
-
Maybe they are externalized in tobex(?)
Minor tweak for EET_NPC_TRANSITION
in Enhanced Edition Trilogy
Posted