The following warnings occurred:
Warning [2] Use of undefined constant SAPI_NAME - assumed 'SAPI_NAME' (this will throw an Error in a future version of PHP) - Line: 3388 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3388 errorHandler->error
/showthread.php 116 build_archive_link
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/inc/functions.php 3324 build_forum_breadcrumb
/showthread.php 195 build_forum_breadcrumb
Warning [2] Use of undefined constant IN_ARCHIVE - assumed 'IN_ARCHIVE' (this will throw an Error in a future version of PHP) - Line: 3331 - File: inc/functions.php PHP 7.4.33-nmm7 (Linux)
File Line Function
/inc/functions.php 3331 errorHandler->error
/showthread.php 195 build_forum_breadcrumb






Post Reply 
 
Thread Rating:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
STAT_STR STAT_DEX STAT_INT ?
Author Message
Anarch Cassius
Master
**

Posts: 273
Likes Given: 19
Likes Received: 10 in 9 posts
Joined: Mar 2012
Reputation: 2



Post: #2
RE: STAT_STR STAT_DEX STAT_INT ?
Not secret. It's based on one of the oldest mechanics in UO: tying stats to skills.

Quote:STAT_STR=80 // You will tend toward these stat vals if you use this skill a lot.
BONUS_STATS=10 // What percent of the skill success is based on stat levels. = 10%
BONUS_STR=80 // % of each stat toward success at skill

So STAT_* values are the rate at which using the skill increases the relevant stat.

BONUS_ values are the bonus to the skill you get from the relevant stat. Despite the text saying 'percent' these seem to be weights that just happened to use a 100 scale.

"SKILL_STAT" does not appear in later versions of Sphere. BONUS_STAT does and is the total bonus from all stats put together.

Code:
BONUS_STR=40
BONUS_DEX=60
BONUS_INT=0
BONUS_STATS=50

This means the skill gets up to 5.0% bonus**, derived more from Dex than Str.

When you click "Show Real Values" the client GUI hides the bonus from stats described here.

Now the one problem with the whole system, you might have noticed there is no function for a scripter to pull the current 'unreal' value including bonuses from stats.

I wrote this to do so, now it was written around 55i or something so you may need to alter it but it shows you the basic formula.

Code:
[FUNCTION SKILLMOD]
FLOAT.SKILLMODCALC=<fval (<STR>*<serv.SKILL.<ARGS>.bonus_str>)+(<DEX>*<serv.SKILL.<ARGS>.bonus_dex>)+(<INT>*<serv.SKILL.<ARGS>.bonus_int>)>
FLOAT.SKILLMODCALC *= <serv.SKILL.<ARGS>.bonus_stats>
FLOAT.SKILLMODCALC /= 1000
RETURN <eval <FLOAT.SKILLMODCALC>/1000000>

**Rather if 100 were the actual maximum for each stat you would get up to a 5.0% bonus. If a stat can go higher the maximum will increase proportionately.

Current Projects: Necromancy SCP overhaul. Custom Faction AI/System. Imbuing.
(This post was last modified: 02-05-2017 08:50 AM by Anarch Cassius.)
02-05-2017 08:49 AM
Find all posts by this user Like Post Quote this message in a reply
Post Reply 


Messages In This Thread
STAT_STR STAT_DEX STAT_INT ? - x77x - 11-19-2016, 04:23 AM
RE: STAT_STR STAT_DEX STAT_INT ? - Anarch Cassius - 02-05-2017 08:49 AM

Forum Jump:


User(s) browsing this thread: 2 Guest(s)