This is a viable method and I have considered it. My setting however makes the availablity of trainers not very likely.
I will either go for a classes2da.hak OR allow players to ignore the restrictions and enjoy gameplay where almost every faction is outright hostile to them. And when I say “enjoy”, it’s not meant to be sarcasm - there are always players who actually like to play their games “the hard way”.
True - I was just thinking the back end - the level-up script - is where you can control this - you actually mention something like this earlier in this thread. Below is an edit of the removing and returning of XP from my mess:
int nNewXP = ((nHD * (nHD-1)) / 2 * 1000)-1;
int nPCXP = GetXP(oPC);
SendMessageToPC(oPC, “You must Level Up in a non-spellcasting class”);
SetXP(oPC, nNewXP);//This removes the offending level
DelayCommand(0.3, SetXP(oPC, nPCXP));//This brings them back up to being able to level again
I don’t think you quite get it, Charles. :| i think kamal’s saying … forget the behind-the-scenes code, forget about the this-goes-hostile and you-can’t-do-that stuff. Let anyone who plays the module do what they want; and simply put in the description of said module, well, pretty much what kamal put in quotes.
and … done.
“unsupported” in this sense could mean “you’ll have a hard time finding scrolls” etc.
That’s exactly what I’m saying. Don’t put put any work into coding up restrictions ingame to enforce the desired limitations. Just tell the player in the module description “this adventure is designed for good aligned clerics, only good aligned clerics are supported” or whatever restriction you’d like to have, and if someone complains that their rogue/blackguard isn’t working in the module then you can tell them ¯_(ツ)_/¯
I mean it’s not like class focused (for example A Dance with Rogues, or Wizard’s Apprentice in nwn2) material is looked down on. Just be clear in the module description on what it is. If I want to play a rogue/blackguard, I can look elsewhere.