Player Resource Consortium

 

Author Topic: Question about switches  (Read 9551 times)

0 Members and 1 Guest are viewing this topic.

February 25, 2016, 10:02:01 PM
  • Adept
  • *
  • Posts: 9
  • Karma: +0/-0
  • New Member
    • View Profile

Sorry, i hope i've choosen the right forum section.
It's not a problem or a bug.

It's only a question:

i want to disable devastating critical and restore normal Healing spell effect (heal all HP)
I've opened with nwhak my prc hak and i've extracted the include file. I've read the file but i don't know if i am doing right

/** Remove the cap PRC added to this spell */
const string PRC_BIOWARE_HEAL                        = "PRC_BIOWARE_HEAL";

Ok, someone can tell me exactly what i have to do?
I am thinking of put a variable in module properties advanced tab, PRC_BIOWARE_HEAL int 1
Is it correct? Cause in this way it does not work, heal spell has still the cap.

 * Disabling specific feat and/or skills
 * Each of these has 2 parts. One part is a variable defining the size of the list
 * The other part is the list itself. The numbers are the row numbers in feat.2da or skills.2da
 * or spells.2da.
 * For example, if you want to disable Knockdown and Improved Knockdown you would set
 * the variables as follows:
 * PRC_DISABLE_FEAT_COUNT = 2
 * PRC_DISABLE_FEAT_1     = 23
 * PRC_DISABLE_FEAT_2     = 17
 */

so i should set 38 lines with PRC_DISABLE_FEAT_1 int xx (number of row in 2da) , 2, 3, AND SO on
and another line with PRC_DISABLE_FEAT_COUNT int 38?

Is it correct?

Thanks

For devastating critical
PRC_


February 26, 2016, 01:48:18 AM
Reply #1
  • Developer
  • *****
  • Posts: 1437
  • Karma: +27/-0
  • Gender: Male
    • View Profile

Yes,  you got that right. Switches are local variables set on module. you can change them in game through PRC options menu. Or outside in Toolset or switches.2da.

I don't know why it doesn't work for Heal - i'll check the code tommorow.


February 26, 2016, 01:59:05 AM
Reply #2
  • Adept
  • *
  • Posts: 9
  • Karma: +0/-0
  • New Member
    • View Profile

Sorry i forgot to mention that i host a server in multiplayer.
So for heal is a "int"? Cause i was thinking if i was choosing wrong constant. (float, string...)

PRC_BIOWARE_HEAL       int    1

is it correct?

i use prc 3.2 with cep 2.4 with no problems.

Can you explain me when using int or float o string?
I used string for devastating critical, i'll test this, cause there are several feats to be disabled.
Is it correct?

Thanks, xwarren, you solved me problems several times in the past :)


February 26, 2016, 10:34:10 AM
Reply #3
  • Developer
  • *****
  • Posts: 1437
  • Karma: +27/-0
  • Gender: Male
    • View Profile

Most of them are integers (0 for false or 1 for true), various multipliers are type float, and if it's not a number it's most certainly a string.

I have checked PRC_BIOWARE_HEAL switch - I think the code is bugged a bit. If the switch is set the spell is uncapped but it only heals 10 x caster level hit points (so 400 hp for 40 lvl caster). I will have to fix that.

Edit: I am analyzing the code and found another problem - mass heal/mass harm require touch attack if used to harm enemies (this seem illogical, how can the caster touch multiple targets at once?). SRD says nothing about touch attack, so it's probably a bug...
« Last Edit: February 26, 2016, 11:52:04 PM by xwarren »


February 29, 2016, 12:19:12 PM
Reply #4
  • Adept
  • *
  • Posts: 9
  • Karma: +0/-0
  • New Member
    • View Profile

Ok i surrender to heal potions, it can be also a good thing for players, but someone can help me disable devastating critical?


March 03, 2016, 12:36:17 AM
Reply #5
  • Jr. Associate
  • **
  • Posts: 58
  • Karma: +5/-0
  • New Member
    • View Profile

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_COUNT = 38
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.