The secret: I erase all the walkmesh of the area and a small script that detects the diferences of Z axis when the PC walk or run.
If there are a big difference in a short time, the script makes a climb roll, on failure, you fall down.
Climb Skill = (STR + DEX)/2
CD = Heightx2
Stealth mode: -4 to climb skill
Spot mode: +4 to climb skill
Stairs -20 to CD by default, but is configurable
Tip: If you walk, the climb is easy to do. If you run, probably lose some teeth.
Whatsnew:
- Script is faster.
- Now, Send the climb roll to player only when he falls.
- For default, the stairs substracts 20 to CD, but you can set it changing the local variable 'QLTY' in the stairs trigger (min value 5).
- Now, this script only works on areas with _CLI suffix in his tag.
To Do:
- Racial modiffiers.
- Include a real climb skill in the 2da files.
- Climbing tools & Clothes.
We have about 40 or 45 players in the same time in my PW. You're right when you say (Rumata) it will create "lag".
I think the idea of triggers is a good one, but I don't know anything (or really few things) about scripts and codes so I suppose my opinion is not really important. I'm thinking about putting some triggers in some few places not very big with a rope or something like that.
I ask many questions but you don't have to do anything if you don't want =). There are just some ideas. My last for this day is to put an animation when the PC is climbing. I don't know any animation on the vault or anywhere else that could be uses as it but if you know how to make them, or where find them... I think it would make this system perfect ! Perhaps you are not able to do this but someone else... _________________________ Fanelya
'PW = Persistent World' lol. Sorry, I'm cannot think in english at 100%
The concept is 'I can go up to where my skills allow it'
This concept is valid only for players, the NPC Gain the FREE CLIMB, for 2 reasons. Cannot path the best climbing way, and this consumes too many CPU
process. Only we can do is modify the creature scripts, to ignore the players positioned at more than 3 meters of diference height, this height may be
modified by creature size and skills.
How many people at same time connects to the PW?
Take 64.
By default, this script runs 2 times per second.
2x64 = 128 Executions per second, not good idea for all CPUs, need a Fast computer.
What we do?
1- Simplify the code (I will do this week)
2- Down the execution ratio (becomes easyer to scape from the script detection)
3- Buy a fast computer.
if you use it only in une area or trigger, is dangerous, if a considerable amount of people enters at the 'climbing area' at the same time, all the PW may
experiment a lot of lag until the system becomes stable _________________________ Fly, Swim & Jump in NwN2?
May be...
But, for PW, wouldnt this be more optimized to use the same concept, but reversing the trigger usage ?
Instead of making 'stairs' trigger, creating 'climbable' triggers.
adding /removing creatures concerned by the climb check as they enter/leave the trigger.
Moving module's 'OHB' script and handle it by a reccurent script call on the PC crossing the 'dangerous' area.. This script would do the same thing as you do on your fast_heart script (ie: making real time climbs checks).
The recurrent script would be disabled when trigger exited.
Verified only for my in my computer.
It works well in single player.
It works well in multiplayer with 2 players.
I have not means for test with any more than 2 players.
What is 'PW'?
If you want to use it only for one map, you must insert this at line 61:
if(GetTag(GetArea(oPC)) == 'CLIMB_AREA_TAG'){
and this at line 109:
SetLocalLocation(oPC,"LL",L);}
_________________________ Fly, Swim & Jump in NwN2?
May be...
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