Player Resource Consortium


Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Atalsen

Pages: [1] 2 3
Prestige Classes / Re: Difficulty becoming Shifter (PNP)
« on: January 26, 2018, 11:42:03 PM »
For classes qualifying for PnP shifter via casting Polymorph Self, the PRC checks to see if you are *currently capable of casting it* - i.e. have at least one instance of it memorized and ready to go.

So when leveling, have one or more instances of Polymorph Self ready to go; You may need to rest (I think logging on and off will work too) to ensure the PRC/NWN recognizes the spell as ready.

Help / Re: Need little help/suggestion - Ita Admin
« on: January 26, 2018, 11:22:53 PM »
As a recap: the Spellhook script fires before the bulk of the spell script; if the Spellhook script returns false in the X2PreSpellCastCode function, then the origional script will not fire. In this way, you can 'intercept' a spell, do something else with it, and tell the original spell not to fire.

You have to define what script (what name your script will have) to fire for spellhooking, that is where setting the module variable via SetModuleOverrideSpellscript(string sScriptName) comes in. Pick a name like "my_spell_hook" and then use that name when you create your spellhook script. I don't remember off hand if the PRC has a default value set for a spellhooking script name that you can just use without the need to set anything.

I think you know this, and that you just need helm with how the spellhook sript works. If that's not it, then let me know.

Here is an example from my own spellhook script; however, my script compiles the PRC items in it using the NWNTX Loader.exe updated toolset you can find on the NWN vault. Without that you wont' be able to use any PRC includes or functions.

Here is a partial spellhook file example for simply disabling the Continual Flame spell:

Code: [Select]
//:: Name: Spellhook script

This script handles all the spellhooking for various spells


#include "x2_inc_switches"
// allows the use of:
// SetModuleOverrideSpellScriptFinished();
// which will kill the origional spell, if we need it not to run

// Include file for PCR Spell constants
#include "prc_spell_const"

// Include file for PCR Psionic Power constants
#include "psi_power_const"

//:: Functions

void main()

// Gather all useful info about the spell
    object oCaster =  OBJECT_SELF;                  // The caster of the spell is OBJECT_SELF
    object oMagicItem = GetSpellCastItem();         // if an item cast the spell, this function gets that item
    object oTarget =  GetSpellTargetObject();       // returns the targeted object of the spell, if valid
    location locTarget = GetSpellTargetLocation();  // returns the targeted location of the spell, if valid
    int iCasterClass = GetLastSpellCastClass();     // gets the class the PC cast the spell as
    int iCastLevel = GetCasterLevel(OBJECT_SELF);   // gets the level the PC cast the spell as
    int iSpellDC = GetSpellSaveDC();                // gets the DC required to save against the effects of the spell
    int iCasterAlignment = GetAlignmentGoodEvil(OBJECT_SELF);  // Returns the good/neutral/evil constant for the caster

    int iSpell = GetSpellId();                      // returns the SPELL_* constant of the spell cast

    switch (iSpell)
//:: Spells Section

                FloatingTextStringOnCreature(ColorString(C_RED, "The Continual Flame spell is currently disabled."), oCaster, FALSE);

Basically, in the spellhook file you want to
1) Identify the spell via spell ID (GetSpellId())
2) Do something with the spell (script your own spell, call another script, whatever); in my example I play some floating text in the caster.
3) Tell the original spell NOT to fire (via SetModuleOverrideSpellScriptFinished() call)

My example just ends the spell, and doesn't do #2, but for a different fireball you could do this:

        case SPELL_FIREBALL:
                ExecuteScript("my_cust_fireball", OBJECT_SELF);

And then you can write up your own fireball script in the "my_cust_fireball" scritp file.

Alternate Magic Systems / Re: Psychic Reformation Rebuild
« on: March 13, 2016, 02:57:47 AM »
Well, its not coded 'that way' when used on yourself.

The way it works is that it goes back 1 level, +1 for each augment. Which effectively means you can always regress to ~7th level, but not before that. You can overchannel to get back to 6th 5th or 4th depending on what level of overchannel you can get to.

I'm considering submitting a conversation based re-write as the way it is coded now is not the way it works in Table Top, and PRC usually goes with table top rules. The conversation would simply be a quick way to state how many levels to go back, and give a confirm and the XP cost, etc. I'd probably also add an 'is this ok' to the target, if its not the caster.

General Discussion / Re: Question about switches
« on: March 03, 2016, 12:36:17 AM »
Ok i surrender to heal potions, it can be also a good thing for players, but someone can help me disable devastating critical?

Devastating critical has 38 lines associated with it, one for each weapon.

So you want to set:
PRC_DISABLE_FEAT_1     = 495
PRC_DISABLE_FEAT_2     = 496
  (insert the rest here)
PRC_DISABLE_FEAT_38     = 532

The numbers are the line numbers of the feats from the feat.2da file. Just fill in the missing numbers between 496 and 532.

These values are all INT varabels set on your module.
So, in module variables, name the first one “PRC_DISABLE_FEAT_COUNT”, select INT type, and set a value of “38”. (No quotes)
So you would be adding like 39 variables in total to your module.

As a side note, I've coded (but not tested or submitted) a switchable 'nerf' to Dev Crit that just does extra damage instead of Save or Die, since many people want to disable the feat completely and that makes me sad. Plus a single switch to handle it is easier than the individual disabling process.

Builders / Disguise Self & Alter Self not set to allow crafted items?
« on: February 11, 2016, 06:06:04 PM »
I was trying out Disguise Self & Alter Self and found that they cannot be crafted onto items.

I traced this down to both targeting restrictions (cannot target scroll/wand/potion in inventory), and to the des_crft_spells.2da where the item properties were not returned correctly, and the flags were set to disallow crafting scroll/wand/potion for the sub radial items.

I'm wondering if this was a deliberate choice to make these spells un-craftable, or if it was an oversight and was thought that if the master was set, then the sub choices didn’t need to be?

If it was not intentional, I would submit it as a bug fix one I validate the changes.

Builders / Re: Latest PRC Files Repository?
« on: February 09, 2016, 08:34:55 PM »
Send me the files you corrected - i'll update the SVN. Thanks in advance.

Since text is extracted from the tlk  file, I've quickly updated the attached tlk XML file with all the Racial LA and hit dice info, for those races that have LA/racial HD (as taken from the latest ECL.2da).

I've always thought it odd the manual didn't have that info, so now it can. :)

The attached tlk file does also have the talk entries for the Psionic Slayer class, so if you do not want to include them, they are at entry id="60550" thru entry id="60596".

Base Classes / Re: Warblade tips please
« on: February 08, 2016, 05:28:19 PM »
White Raven Tactics is broken in PnP, but doesn't seem to work in NWN (I didn't test it very thoroughly though).

The very latest code repostory has the fix for WRT. :)

Builders / Re: Latest PRC Files Repository?
« on: February 06, 2016, 12:15:56 AM »
Awesome, thanks!

Is there any sort of repository for the manual pages?

There are a few text errors I've encountered over the time I've used the PRC, and if I run into them again while I'm working with the code, I wanted to see if I could correct them. I was wondering if there was a way to update manual pages?

I think some portion of the manual is drawn from the code or tlk file automatically?

Other Features / Re: Fatal Error with JavaCC
« on: February 03, 2016, 04:23:54 AM »
What module are you attempting to use, and is is updated to use the PRC?

For example there are steps you need to take to update the campaign to use PRC successfully, or any module not built with the PRC initially.

Seeing PRC classes as "barbarian" is common if the tlk file is not installed properly (or if not used by the module, which would be a problem with not updating the module to work with PRC).

Character Builds / Re: Arcane Trickster, how?
« on: February 02, 2016, 10:08:35 PM »
Any idea of other combos that could work?
Ninja/Warmage? :P

Any combo of classes that give you the requirements will work, so since Ninja gives Sneak Attack (and skills) and Warmage gives arcane casting, that will work too.

Fair warning on Warmage, its often hard to know exactly how many spells you have left - its not like Sorcerer where your remaining spells are shown on the bar: you have to watch the messages ("You have X remaining Y-Level spells" messages that come up ever time you cast). {They do not show on the bar due to technical limitations of NWN}

Also, when I'm ready to take an AT level. How do I do that?

Once you meet the prerequisites of any prestige class, that class will be "highlighted" using white text instead of gray text. So just scroll down the list till you find AT, and when you qualify, select that instead of your other classes.

Classes are shown in the order they are in the 2da file which is basically the order in which they were added to the game (give or take), not in alphabetical order, so sometimes it takes a bit of hunting to locate any class in that long list.

Character Builds / Re: Arcane Trickster, how?
« on: February 02, 2016, 05:04:19 PM »
Well, if you have not done it so far, head over to the manual to check out Arcane Trickster:

There you can see the prerequisites for the AT PrC:
Alignment: Non Lawful
Skills: Lore 4 ranks, Disable Trap 7, Pick Lock 7.
Sneak Attack: 2d6
Spells: Must be able to cast at least 3rd level Arcane spells.

Obviously if you pick one of the Lawful alignments you can't get in, so don't do that.

Then you need to pick up the listed skills. Earliest there is 3rd level (Rogue), which also gets you the sneak.
Then 5th level caster gets you the casting.

So Rogue 3 / Wizard 5 / AT X 

Other Features / Re: Next PRC Update requests
« on: January 28, 2016, 05:19:32 PM »
It is not possible to level all the way up in the Shaman Class.  It fails eventually.

I can't comment on the other stuff, but I'm going to guess that the Shaman class fails at a level it receives a bonus class feat. If so, its a known issue.

See, the Shaman MUST select a class feat from its (limited) list, however it’s quite possible that it cannot meet the prerequisites of any of the feats it has, or it might even be possible to previously TAKE all the feats (from multiclassing), and have nothing left to select. At that point you are screwed and cannot take anything, and cannot level.

I guess I'd solve this by giving it some feat chain that has no prerequisites and can be taken multiple times, like the Epic Toughness chain (not that I'm suggesting that, just top of my head thinking of a chain that qualifies). That way the class has a guaranteed selection available when receiving a bonus feat.

That said, if you are very careful in your build, and ensure you hit the prerequisites for bonus feats in time to take them, then the shaman should be able to level without issues.

Builders / Latest PRC Files Repository?
« on: January 12, 2016, 11:49:28 PM »
When I was last doing some edits I remember NOT grabbing files via CVS, and I'm wondering is that is still the case.

From searching the forum, I see the SVN repository is listed as:

Is this still the most recent? If not, what is the base way to grab the latest PRC files nowdays?


Other Features / Re: Next PRC Update requests
« on: December 30, 2015, 05:24:57 PM »
I would love to see this added, I will try and contact Atalsen and see if anything was ever created, and if not I will see what I can do.

Wow its been like 2 years since I last logged in here - life got and still is a bit crazy for me.

I did actually complete like 90% of the Slayer class in my own build of the PRC. Maybe you guys already have a version by now.

I can see if I can put together the changed files I have for Slayer and submit them; no promises at this point since my life is still not at a point I can devote much time to NWN.

Yes, For NPCs, Level and Hit Dice should be synonymous.
When coding for NWN, if you need to know the Level of a monster, you check their Hit Dice.

When looking at how challenging a monster is, then we look at its CR (Challenge Rating) instead. In table top when you "advance" a monster, typically it gets 1 or more hit dice, possibly a size increase, and its CR advances. There's typically a ratio so that the CR doesn't advance as fast as the monsters actual Hit Dice, which is why you can see, say, CR 15 Giants with 20+ Hit Dice.

In table top, adding a PC class to a monster *typically* does increase its CR and Hit Dice 1 for 1, which is a way of saying that PC classes, picked correctly and played to maximum effect can be pretty powerful.

But again CR is only a calculation to help pit appropriately powerful monsters against the correct level of PCs. A CR 15 creature in table top is 'a challenge for 4 PCs of 15th level', using 1/4 of the total of all those PCs resources to fight. (Probably not entirely true in NWN, but that's the ratio in table top). From that expectation, we could expect a single CR 15 monster to fight a single 15th level PC, and use 100% of that PC’s resources (which means maybe the monster wins, or maybe the PC - they should be approximately equal).

So, for monsters, their level is always their hit dice; advancing them or adding class levels gets them more it dice and thus a higher level, but its CR you generally watch to determine if the NPC is the right challenge for what you are looking for.

Pages: [1] 2 3