Author Topic: NWNX + NWNCX Idea: Open Spellcasting to Customizing  (Read 1064 times)

Legacy_The Amethyst Dragon

  • Hero Member
  • *****
  • Posts: 2981
  • Karma: +0/-0
NWNX + NWNCX Idea: Open Spellcasting to Customizing
« on: June 13, 2014, 10:18:52 pm »


               

I'm not sure if this can be done, but figured I'd throw out the idea for the geniuses (such as virusman) to think about.  Hey, it worked with weapon VFX (and beams, and skins, and open face helms), right?


 


So, here's the idea, and I'm sure it would take a combination of NWNX2 and NWNCX...


 


Add a string column to the end of classes.2da called "SpellList". This string would contain the name of the column in spells.2da that governs what spells a given class has access to and at what spell levels.  There's already columns for "Bard", "Cleric", "Druid", "Paladin", "Ranger", "Wiz_Sorc", and "Innate".


 


If NWNX2 & NWNCX could be used to force the game to read from whatever column is designated in classes.2da, that could conceivably open up customization (or at least, experimentation) by letting builders use the SpellGainTable and SpellKnownTable columns in classes.2da to give actual spell lists to Assassins, Blackguards, and even completely new classes.


 


As an example (assuming new plugins work as intended), a builder could then experiment with giving the Assassin class an actual spell list and casting ability by:


1. changing the value of the SpellCaster column from 0 to 1 (classes.2da)


2. changing the value of the SpellGainTable column from **** to cls_spgn_asasin (classes.2da)


3. changing the value of the (new) SpellList column from **** to Assassin (classes.2da)


4. adding a new column (titled "Assassin"), mimicking other caster columns to assign levels to spells for Assassins (spells.2da)


 



               
               

               
            

Legacy_henesua

  • Hero Member
  • *****
  • Posts: 6519
  • Karma: +0/-0
NWNX + NWNCX Idea: Open Spellcasting to Customizing
« Reply #1 on: June 13, 2014, 10:38:13 pm »


               

I'd buy that for a dollar…


 


metaphorically speaking, that is.



               
               

               
            

Legacy_virusman

  • Sr. Member
  • ****
  • Posts: 448
  • Karma: +0/-0
NWNX + NWNCX Idea: Open Spellcasting to Customizing
« Reply #2 on: June 14, 2014, 02:17:53 am »


               Spellcasting classes are hardcoded almost everywhere in the code, and while it's technically possible, it'd require a *lot* of patching.
               
               

               
            

Legacy_Pstemarie

  • Hero Member
  • *****
  • Posts: 4368
  • Karma: +0/-0
NWNX + NWNCX Idea: Open Spellcasting to Customizing
« Reply #3 on: June 14, 2014, 02:19:18 am »


               

I just suddenly got this image of Virusman shackled to a computer next to TAD's workstation.  ':lol:'



               
               

               
            

Legacy_The Amethyst Dragon

  • Hero Member
  • *****
  • Posts: 2981
  • Karma: +0/-0
NWNX + NWNCX Idea: Open Spellcasting to Customizing
« Reply #4 on: June 14, 2014, 02:59:58 am »


               


Spellcasting classes are hardcoded almost everywhere in the code, and while it's technically possible, it'd require a *lot* of patching.




Well, it was worth suggesting, anyway.  Thanks for that info, virusman.


 


Dammit, BioWare.  You lead us on by letting us customize practically everything else with this game... ':rolleyes:'


 




I just suddenly got this image of Virusman shackled to a computer next to TAD's workstation.  ':lol:'




My wife and kids might question my remaining sanity...


...and I hope he's got his own treadmill desk, because I'm using mine. '<img'>


               
               

               
            

Legacy_Squatting Monk

  • Hero Member
  • *****
  • Posts: 776
  • Karma: +0/-0
NWNX + NWNCX Idea: Open Spellcasting to Customizing
« Reply #5 on: June 14, 2014, 03:37:06 am »


               

Check out nwnx_spells. Not as elegant a solution as an NWNCX plugin would be, but it allows some of the functionality you're talking about.