Complete scripting framework provided by the HCR2 core lets you:
Manage multiple script systems just by editing module variables.
Allow multiple scripts to be run per module and area events, without needing to merge
scripts or edit existing event scripts.
Handles hooking into area, creature, paceable and door events at a global
level and at the instance level
Allow multiple scripts to be hooked in for spell-hooks.
Provide several common and easy to use script functions
Add your own custom conversation menu tree's to a GUI accessible player menu
conversation with a single script function.
Easily change core configuration settings from a single script file.
All functions that access an external database are routed through a set of custom
changeable wrapper functions, so you can choose what DB system you want.
All text feedback is contained within their own set of scripts, so you
can swap them out for alternate language versions.
Set limits on maximum player count to allow room for DMs.
Set a limit on the number of registered character player are allowed to have,
or set no limit at all.
Players can have the option of retiring a character they no longer wish to play in
order to register a new one. Players are booted when they log in with a retired
character.
Choose whether or not to strip players of items upon their first login.
Set up your own welcome greeting on login.
Banned players can be tracked by the external database you have chosen to use.
Automatically save PC locations over resets.
Choose to individually determine whether or not hitponts, spells, or feats
are gained after a player completes a rest with some simple script functions.
(the core by default has no restrictions on this)
Access New Events:
OnPlayerStruck
OnPreLevelUp
OnCancelLevelUp
OnPostLevelUp
OnHotbarClick
Optional Subsystems:
Rest Subsystem: Choose to create a rest time limit restriction of a duration of your choice.
Resting without waiting for the minimum time to past prevents the regaining of
spells, hitpoints or feats.
Choose the amount of hitponts a character can gain after a rest.
Choose whether or not you wish to restrict resting to within specific triggers, or
if the PC is near a campfire.
Choose to create special rest trigger where a PC may rest and ignore any minimum rest time period.
Fugue subsystem: When a player dies they are sent to the fugue plane and cannot leave unless resurrected
or moved by a DM.
The player's death state is saved over resets, and they are automatically ported
back to fugue when the log back in with a dead character.
Bleed subsystem: When a player drops to 0 to -9 they enter a bleeding state, and lose a set amount of HP per round
with a chance to stabilize. If a player stabilizes they have a chance per hour to recover back to 1 HP,
or risk further HP loss.
Player can use the heal skill to provide first aid to dying characters.
Player can use potions to heal dying characters.
Player can use heal spells to heal dying characters.
PC Loot able corpse subsystem: Choose whether or not a dying or dead PC drops their items into a loot bag accessible by other players.
When a PC dies a visible corpse of them appears and contains a corpse token within it.
This corpse token can be used the resurrect the dead character by NPCs, other players or DMs.
This corpse token can be moved so that the player corpse also moves whenever it it put back
down on the ground.
Choose whether or not to allow players to resurrect player at all.
Choose whether or not to apply an XP penalty for resurrection.
Choose how much it costs in gold to cast the raise dead and resurrection spells.
Set up NPCs to raise a player when the corpse token is used on the NPC.
Players resurrect dead characters by casting the appropriate spell on the corpse token.
Additional Optional Subsystems: ---------------------------------------------------
Deity resurrection -
specify % chance for PC's deity to resurrection them on death.
Torches and Lanterns -
Torches that burn out and lanterns that use oil. Throwable oil flasks.
New lantern model.
Hunger, Thirst & Fatigue -
Track rates of hunger, thirst, fatigue, and alcohol effects.
Various generic food items included
Un-ID on Drop -
Un-identifies discarded items after a time limit.
Alternate NWNX/mySQL database scripts, to easily swap out the default ones.
Extensive PDF documentation.
Thanks to all who tested out the Final NWN1 version of HCR2: Link
without which the NWN2 version would not have been possible.
Fix for bleed system when PartyMembersDying flag is set to true.
Fix for skill point allocation not taking into account racial modifiers to INT.
Fix for Excessive Skill Point values on levelup.
Fix for TMI error when using the Recommend Button on Skills levelup page.
Import scripts into existing HCR2 module, overwrite all.
Contains 3 scripts: hcr2_bleedtimer, gui_elu_setskills, elu_functions_i
I messed around with HCR for NWN1 many years ago. It was still in development then but i loved it. I wanted to get into NWN2 and use the HCR2 rules and can use a little assistance starting off. I downloaded the HCR2_v105.zip and looked at the readme. In the Quick Setup instructions it says:
Place spells.2da into your My Documetns\nwn2 override folder.
Place contextmenu.xml into your Mydocuments\nwn2\UI\Default folder.
Where are the spells.2da and contextmenu.xml files located? They are not in the zip that I downloaded.
Posted by tooley1chris at 2011-11-07 04:16:43 Voted 10.00 on 11/07/11
totally non-heinous!
Posted by Shayd3000 at 2011-05-04 17:45:14 Voted 10.00 on 05/04/11
Oh, in the meantime, using this in my live Pathfinder campaign (NWN2 replacing the game mechanics) - so score you a 10.
Posted by Shayd3000 at 2011-05-04 17:43:26 Voted 10.00 on 05/04/11
Would love to see a "Pathfinder" flavor of this, or the options added to support it. These would probably be minor:
Death does not occur until -CON. (i.e. a PC with CON 15 does not die until -15 hp)
Dying is CON DC 10, -1 penalty per negative hp.
Resurrection in Pathfinder does not impose an xp penalty, rather it imposes negative levels (2 for raise dead, 1 for resurrection) that are permanent (require a restoration (for 1 neg level) or greater restoration also be cast).
See, not far off, probably simple for the original author to slip in as options in the *_c files. :)
Also, would like to see the 5000 and 10000 gold piece options for raise dead and resurrect to also support having the appropriate diamond in the caster's inventory instead of the coins. Look for an item tagged hcr_5kdiamond or hcr_10kdiamond.
So...to sum up, Pathfinder support would probably not be that tough to add in (hint hint)
Posted by BlakOrkz at 2011-01-22 00:33:58 Voted 10.00 on 01/22/11
Without this, I couldn't use NWN2 as a gaming medium with my "hardcore" DnD buddies. Thank you.
Posted by DM_Bucephalus at 2010-11-19 07:21:07 Voted 9.00 on 11/19/10
We use this successfully on our world Forgotten Realms Dalelands, we had to do some tweaking for it to work with Keadrin's class system, the PDF is very good. Our one last issue if the Retire PC doesn't quite function as it allows players to log in retired toons. Would also be nice if it could delete from server vault. Currently we use nwnx4 with mysql if anyone has a fix. All in all we quite pleased with HCR for nwn2
Posted by [MD]Sephiroth at 2010-10-29 05:06:21 Voted 10.00 on 10/29/10
i use, i vote :)
10 - A Masterpiece, Genuinely Groundbreaking _________________________ Serveur Action/Rôle persistant : FR] Les Terres dechirees
Electro-pop Music : Shed
Posted by Qrizz at 2010-05-21 11:02:24 Voted 10.00 on 05/21/10
We use this as core system.
Works great, some minor issues, not sure if its us or not configuring the files right:
After rest not getting Full hp back.
Anyways full 10, would give more ...
:D _________________________ Qrizz
Middle Earth Arnor PW Link
Posted by Quilistan at 2010-04-24 18:39:58 Voted 10.00
Thank you! _________________________ Quilistan
PW: Balarand, Frontiers of the Horde Lands Link
damn creater than /less than signs...
int GetGUIAvailableSkillPoints(object oChar)
{
int nSpentPoints = GetLocalInt(oChar, SPENT_SKILL_POINTS);
int nBaseSkillPoints = GetLocalInt(oChar, BASE_SKILL_POINTS);
int nBonusPoints = GetIntBonusPoints(oChar);
int nPointsRemaining = GetSkillPointsRemaining(oChar);
int bSkilled = GetHasFeat(1773, oChar);
int nInitialPoints = nBaseSkillPoints + nBonusPoints + nPointsRemaining + bSkilled;
if (nInitialPoints [is less than or equal to ] 0)
nInitialPoints = 1;
return nInitialPoints - nSpentPoints;
}
my post got cut off....
int GetGUIAvailableSkillPoints(object oChar)
{
int nSpentPoints = GetLocalInt(oChar, SPENT_SKILL_POINTS);
int nBaseSkillPoints = GetLocalInt(oChar, BASE_SKILL_POINTS);
int nBonusPoints = GetIntBonusPoints(oChar);
int nPointsRemaining = GetSkillPointsRemaining(oChar);
int bSkilled = GetHasFeat(1773, oChar);
int nInitialPoints = nBaseSkillPoints + nBonusPoints + nPointsRemaining + bSkilled;
if (nInitialPoints
Try updating the following function in elu_functions_i:
int GetGUIAvailableSkillPoints(object oChar)
{
int nSpentPoints = GetLocalInt(oChar, SPENT_SKILL_POINTS);
int nBaseSkillPoints = GetLocalInt(oChar, BASE_SKILL_POINTS);
int nBonusPoints = GetIntBonusPoints(oChar);
int nPointsRemaining = GetSkillPointsRemaining(oChar);
int bSkilled = GetHasFeat(1773, oChar);
int nInitialPoints = nBaseSkillPoints + nBonusPoints + nPointsRemaining + bSkilled;
if (nInitialPoints
Posted by Quilistan at 2010-04-19 14:00:35 Voted 10.00
Ok I do have a question concerning the new version.
The fixes above did fix my issue with skill points (thanks for the fix), but I am still having a slightly different problem with this. I have a player with a -2 INT bonus/penalty, and on level up he is now getting ZERO skill points.
Per the PHB (page 62, "Skills at higher levels", #1) each player will get a minimum of 1 skill point regardless of an INT penalty.
Was there an amendment to this rule somewhere that I have missed? If, so then I am fine with it. That is what they get for "Min_Maxing" like that, but if there isn't on our PW they then have a valid arguement. _________________________ Quilistan
PW: Balarand, Frontiers of the Horde Lands Link
Posted by Quilistan at 2010-04-16 09:07:45 Voted 10.00
Duh! Just noticed the erfs with the fixes mentioned. :p _________________________ Quilistan
PW: Balarand, Frontiers of the Horde Lands Link
Posted by Quilistan at 2010-04-15 23:52:10 Voted 10.00
I am having trouble with "Able Learner" feat after upgrading to the lastest version? Players are not able to add skill point correcty when they have this feat.
I also have the abyssia weather system, what was the issue there? _________________________ Quilistan
PW: Balarand, Frontiers of the Horde Lands Link
Posted by Psionic-Entity at 2010-02-15 19:38:03 Voted 10.00 on 02/15/10
Nevermind, I downloaded the Abyssia weather system, didn't know that the HCR files weren't compatible with the current ones. Merged the edited files and it works perfectly! Awesome system, definitely a must have now that I've been able to see how useful it is from a development perspective. My definition of what a 10/10 should be.
whenever you alter a _c file, make sure you "compile all scripts in module". Do that then try again.
Posted by Psionic-Entity at 2010-02-13 15:28:39 Voted 10.00 on 02/15/10
I just downloaded HCR2, and I'm current running the test module, after setting the required constants. For some reason, though, none of the scripts are working ingame, I still get a message saying that I haven't edited the _c file (which I have) and when I go to compile any of the HCR scripts I get the message: hcr_defaultdb.nss (79): ERROR: UNDEFINED IDENTIFIER.
Anyone have a clue as to what could be going on? Since this is just the test module, I'm not sure what can be done to fix this problem.
Posted by Quadhund at 2010-01-08 09:20:22 Voted 9.75 on 01/07/10
Figured out my issue. Was not with HCR2.
Posted by Quadhund at 2010-01-07 07:06:36 Voted 9.75 on 01/07/10
I was wondering if there were any reported problems associated with PCs playing Gray Orcs? I have had the problem that when a gray orc pc logs in, instead of going to the normal spawn point where all the other PCs go, the gray orc gets ported to the fugue plane. I figured that maybe somehow the gray orcs were getting flagged as being dead, cause my first OnPCLoaded script is the hcr2_fuguedeathpcl script. Just wanted to know if I am missing something (I haven't seen any race restriction variables or anything). Thanks!
Posted by Quadhund at 2010-01-07 07:03:15 Voted 9.75 on 01/07/10
Love this system. It has evolved over time to be one of the best.
Posted by The_Puppeteer at 2010-01-03 19:17:56 Voted 9.75
Thanks! This patch pretty much fixes all bugs I've encountered while using the HCR2 system. _________________________ Co-founder of the PW (open beta) Sea of Dragons. It is a quest-heavy (yet has sandbox elements) role-play server geared towards party adventures for mid level characters.
Please note the patch added above, several issues fixed w/ custom skill points allocation. Also included is the fix for the bleed system mentioned a few posts down.
The index values at the end of the variable name for setting event hook-in scripts is the priority value. Example:
OnPCLoaded1 hcr2_fuguedeathpcl
OnPCLoaded2 hcr2_bleedsystempcl
OnPCLoaded3 hcr2_pccorpsepcl
OnPCLoaded4 hcr2_hungerthirstpcl
OnPCLoaded5 hcr2_fatiguepcl
hcr2_fuguedeathpcl would be the first OnPCLoaded hook-in script to get executed, followed by all others in sequence with hcr2_fatiguepcl as the last OnPCLoaded hook-script to get executed. Index values must start at 1 and must be consecutive with no missing index values. (When an index value for an event has no script, the prior value is assumed to have been the last script that should have been executed for that event.)
Looking at rebuilding a PW with HCR2 as a base vs CSF to allow a bit more control over certain systems. Quick question... is there any implementation within HCR2 that operates like the "local" argument or the priority values (only, default, first, last) in the CSF?
Just turn it back on and see if there are any issues. There might be an issues with player skins but that is all I can think of at the moment. In order to try replicating the ILR effects, you'd have to make some custom OnEquip hook-in script which check the item cost and char level and see if its violates whatever ILR rules you want to enforce. You'll actually have a lot more control of it this way, and can code in exceptions as well. If an equipped item breaks your ILR rules, force un-equip it via scripting.
Posted by Maharu at 2009-12-23 22:17:27 Voted 9.00 on 12/23/09
Great job! I have a question about item level restriction, you say it�s strongly suggested that it�s turned off, Is there a way to leave it on with out conflict? If it must stay off do you have a suggestion about how to gain the same effects as level restrictions in an alternate way?
Posted by The_Puppeteer at 2009-12-22 23:00:24 Voted 9.75
The fix seems good so far. I've set death to occur at either -30 or half of the characters HP then tested with a 56 HP wizard.
The character died upon bleeding out and also when killed outright by massive spell damage. I'll have to wait until I can test with additional players to check various scenarios out but so far so good.
Thanks for looking into this on such a timely basis. _________________________ Co-founder of the PW (open beta) Sea of Dragons. It is a quest-heavy (yet has sandbox elements) role-play server geared towards party adventures for mid level characters.
10 - A Masterpiece, Genuinely Groundbreaking 9 - Outstanding, a Must Have 8 - Excellent, Recommended to Anyone 7 - Very Good, Deserves a Look 6 - Good, Qualified Recommendation 5 - Fair, Solid yet Unremarkable 4 - Some Merit, Requires Improvements 3 - Poor Execution, Potential Unrealized 2 - Very Little Appeal 1 - Not Recommended to Anyone