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
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; } Update the above function in elu_functions_i
Posted by 0100010 at 2010-04-2315:19:34
WTF.... if (nInitialPoints
Posted by 0100010 at 2010-04-2315:18:43
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
Posted by 0100010 at 2010-04-2315:17:43
I was not aware the minimum gain was one. 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 14:00:35 Voted10.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 09:07:45 Voted10.00
Duh! Just noticed the erfs with the fixes mentioned. :p _________________________ Quilistan PW: Balarand, Frontiers of the Horde Lands Link
Posted by Quilistan at 23:52:10 Voted10.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 on02/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.
Posted by 0100010 at 2010-02-1508:36:12
whenever you alter a _c file, make sure you "compile all scripts in module". Do that then try again.
Posted by Psionic-Entity at on02/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.
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