If enabled and used without setting an ELC script it will function just like ELC/ILR in the base game.
This is a pretty advanced plugin and may at times require you to dive into the source code to figure out what's going on.
Variable Name | Value | Default | Notes |
---|---|---|---|
NWNX_ELC_ELC_SCRIPT | string | "" | Set the NWScript that receives all the ELC validation failure events. |
NWNX_ELC_CUSTOM_ELC_CHECK | true/false | false | Enables the custom ELC check, an ELC script must be set for it to run. |
NWNX_ELC_ENFORCE_DEFAULT_EVENT_SCRIPTS | true/false | false | If enabled, resets a character's event scripts to default . Requires ELC to be enabled. |
NWNX_ELC_ENFORCE_EMPTY_DIALOG_RESREF | true/false | false | If enabled, resets a character's dialog resref to empty. Requires ELC to be enabled. |
NWNX_ELC_ENFORCE_CASTER_PRIMARY_STAT_IS_11 | true/false | false | If enabled, check when a character's first level class is a spellcaster, if their primary casting stat is >= 11. |
This plugin adds the following events which can be subscribed to with NWNX_Events.
NWNX_ON_ELC_VALIDATE_CHARACTER_BEFORE
NWNX_ON_ELC_VALIDATE_CHARACTER_AFTER
OBJECT_SELF
is the player object, the _AFTER
event only runs if the character successfully validates.
Files | |
file | nwnx_elc.nss |
Functions | |
void | NWNX_ELC_SetELCScript (string sScript) |
Sets the script that runs whenever an ELC validation failure happens. More... | |
void | NWNX_ELC_EnableCustomELCCheck (int bEnabled) |
Enables a custom ELC Check that will call the ELC Script with the NWNX_ELC_VALIDATION_FAILURE_TYPE_CUSTOM type. More... | |
void | NWNX_ELC_SkipValidationFailure () |
Skip an ELC Validation Failure Event. More... | |
int | NWNX_ELC_GetValidationFailureType () |
Get the validation failure type. More... | |
int | NWNX_ELC_GetValidationFailureSubType () |
Get the validation failure subtype. More... | |
int | NWNX_ELC_GetValidationFailureMessageStrRef () |
Get the failure message. More... | |
void | NWNX_ELC_SetValidationFailureMessageStrRef (int nStrRef) |
Set the failure message. More... | |
object | NWNX_ELC_GetValidationFailureItem () |
Get the item that failed ILR validation. More... | |
int | NWNX_ELC_GetValidationFailureLevel () |
Get the character level at which the validation failure occurred. More... | |
int | NWNX_ELC_GetValidationFailureSkillID () |
Get the ID of the skill that failed ELC validation. More... | |
int | NWNX_ELC_GetValidationFailureFeatID () |
Get the ID of the feat that failed ELC validation. More... | |
int | NWNX_ELC_GetValidationFailureSpellID () |
Get the ID of the spell that failed ELC validation. More... | |
void NWNX_ELC_SetELCScript | ( | string | sScript | ) |
Sets the script that runs whenever an ELC validation failure happens.
sScript | The script name. |
Definition at line 148 of file nwnx_elc.nss.
void NWNX_ELC_EnableCustomELCCheck | ( | int | bEnabled | ) |
Enables a custom ELC Check that will call the ELC Script with the NWNX_ELC_VALIDATION_FAILURE_TYPE_CUSTOM type.
bEnabled | TRUE to use this check. |
Definition at line 156 of file nwnx_elc.nss.
void NWNX_ELC_SkipValidationFailure | ( | ) |
Skip an ELC Validation Failure Event.
Definition at line 164 of file nwnx_elc.nss.
int NWNX_ELC_GetValidationFailureType | ( | ) |
Get the validation failure type.
Definition at line 171 of file nwnx_elc.nss.
int NWNX_ELC_GetValidationFailureSubType | ( | ) |
Get the validation failure subtype.
Definition at line 179 of file nwnx_elc.nss.
int NWNX_ELC_GetValidationFailureMessageStrRef | ( | ) |
Get the failure message.
Definition at line 187 of file nwnx_elc.nss.
void NWNX_ELC_SetValidationFailureMessageStrRef | ( | int | nStrRef | ) |
Set the failure message.
nStrRef | The talk table strref the player receives, must be > 0. |
Definition at line 195 of file nwnx_elc.nss.
object NWNX_ELC_GetValidationFailureItem | ( | ) |
Get the item that failed ILR validation.
Definition at line 203 of file nwnx_elc.nss.
int NWNX_ELC_GetValidationFailureLevel | ( | ) |
Get the character level at which the validation failure occurred.
Definition at line 211 of file nwnx_elc.nss.
int NWNX_ELC_GetValidationFailureSkillID | ( | ) |
Get the ID of the skill that failed ELC validation.
Definition at line 219 of file nwnx_elc.nss.
int NWNX_ELC_GetValidationFailureFeatID | ( | ) |
Get the ID of the feat that failed ELC validation.
Definition at line 227 of file nwnx_elc.nss.
int NWNX_ELC_GetValidationFailureSpellID | ( | ) |
Get the ID of the spell that failed ELC validation.
Definition at line 235 of file nwnx_elc.nss.
const int NWNX_ELC_VALIDATION_FAILURE_TYPE_NONE = 0 |
Definition at line 13 of file nwnx_elc.nss.
const int NWNX_ELC_VALIDATION_FAILURE_TYPE_CHARACTER = 1 |
Definition at line 14 of file nwnx_elc.nss.
const int NWNX_ELC_VALIDATION_FAILURE_TYPE_ITEM = 2 |
Definition at line 15 of file nwnx_elc.nss.
const int NWNX_ELC_VALIDATION_FAILURE_TYPE_SKILL = 3 |
Definition at line 16 of file nwnx_elc.nss.
const int NWNX_ELC_VALIDATION_FAILURE_TYPE_FEAT = 4 |
Definition at line 17 of file nwnx_elc.nss.
const int NWNX_ELC_VALIDATION_FAILURE_TYPE_SPELL = 5 |
Definition at line 18 of file nwnx_elc.nss.
const int NWNX_ELC_VALIDATION_FAILURE_TYPE_CUSTOM = 6 |
Definition at line 19 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_NONE = 0 |
Definition at line 25 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SERVER_LEVEL_RESTRICTION = 1 |
Definition at line 26 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_LEVEL_HACK = 2 |
Definition at line 27 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_COLORED_NAME = 3 |
Definition at line 28 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_UNIDENTIFIED_EQUIPPED_ITEM = 4 |
Definition at line 29 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_MIN_EQUIP_LEVEL = 5 |
Definition at line 30 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_NON_PC_CHARACTER = 6 |
Definition at line 31 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_DM_CHARACTER = 7 |
Definition at line 32 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_NON_PLAYER_RACE = 8 |
Definition at line 33 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_NON_PLAYER_CLASS = 9 |
Definition at line 34 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_CLASS_LEVEL_RESTRICTION = 10 |
Definition at line 35 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_PRESTIGE_CLASS_REQUIREMENTS = 11 |
Definition at line 36 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_CLASS_ALIGNMENT_RESTRICTION = 12 |
Definition at line 37 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_STARTING_ABILITY_VALUE_MAX = 13 |
Definition at line 38 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_ABILITY_POINT_BUY_SYSTEM_CALCULATION = 14 |
Definition at line 39 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_CLASS_SPELLCASTER_INVALID_PRIMARY_STAT = 15 |
Definition at line 40 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_EPIC_LEVEL_FLAG = 16 |
Definition at line 41 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_TOO_MANY_HITPOINTS = 17 |
Definition at line 42 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_UNUSABLE_SKILL = 18 |
Definition at line 43 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_NOT_ENOUGH_SKILLPOINTS = 19 |
Definition at line 44 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_INVALID_NUM_RANKS_IN_CLASS_SKILL = 20 |
Definition at line 45 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_INVALID_NUM_RANKS_IN_NON_CLASS_SKILL = 21 |
Definition at line 46 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_INVALID_NUM_REMAINING_SKILL_POINTS = 22 |
Definition at line 47 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_INVALID_FEAT = 23 |
Definition at line 48 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_REQUIRED_SPELL_LEVEL_NOT_MET = 24 |
Definition at line 49 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_REQUIRED_BASE_ATTACK_BONUS_NOT_MET = 25 |
Definition at line 50 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_REQUIRED_ABILITY_VALUE_NOT_MET = 26 |
Definition at line 51 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_REQUIRED_SKILL_NOT_MET = 27 |
Definition at line 52 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_REQUIRED_FEAT_NOT_MET = 28 |
Definition at line 53 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_TOO_MANY_FEATS_THIS_LEVEL = 29 |
Definition at line 54 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_NOT_AVAILABLE_TO_CLASS = 30 |
Definition at line 55 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_IS_NORMAL_FEAT_ONLY = 31 |
Definition at line 56 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_IS_BONUS_FEAT_ONLY = 32 |
Definition at line 57 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_INVALID_SPELL_GAIN_WIZARD = 33 |
Definition at line 58 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_INVALID_SPELL_GAIN_BARD_SORCERER = 34 |
Definition at line 59 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_INVALID_SPELL_GAIN_OTHER_CLASSES = 35 |
Definition at line 60 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_INVALID_SPELL = 36 |
Definition at line 61 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_INVALID_SPELL_LEVEL = 37 |
Definition at line 62 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_MINIMUM_ABILITY = 40 |
Definition at line 63 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_RESTRICTED_SPELL_SCHOOL = 41 |
Definition at line 64 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_ALREADY_KNOWN = 42 |
Definition at line 65 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_WIZARD_EXCEEDS_NUMSPELLS_TO_ADD = 43 |
Definition at line 66 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_ILLEGAL_REMOVED_SPELL = 44 |
Definition at line 67 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_REMOVED_NOT_KNOWN_SPELL = 45 |
Definition at line 68 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_INVALID_NUM_SPELLS = 46 |
Definition at line 69 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SPELL_LIST_COMPARISON = 47 |
Definition at line 70 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_SKILL_LIST_COMPARISON = 48 |
Definition at line 71 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_FEAT_LIST_COMPARISON = 49 |
Definition at line 72 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_MISC_SAVING_THROW = 50 |
Definition at line 73 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_NUM_FEAT_COMPARISON = 51 |
Definition at line 74 of file nwnx_elc.nss.
const int NWNX_ELC_SUBTYPE_NUM_MULTICLASS = 52 |
Definition at line 75 of file nwnx_elc.nss.