Template:Sandbox/User:Halworsen/doc

From RuneRealm Wiki

This is the current revision of this page, as edited by Alex (talk | contribs) at 00:44, 17 October 2024 (Created page with "{{documentation}} Template to add expected xp/hr graphs for various skilling activities. This template derives heavily from the Skilling success chart template. ===Where to use=== Pages that discuss skilling experience rates, especially ones which compare experience rates between different skilling options. The rates calculated in this template are optimistic for several reasons (see Caveats), but are very g..."). The present address (URL) is a permanent link to this version.

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search
This is a documentation subpage for Template:Sandbox/User:Halworsen.
It contains usage information, categories, and other content that is not part of the original template page.
Template:Sandbox/User:Halworsen invokes function main in Module:Sandbox/User:Halworsen using Lua.

Template to add expected xp/hr graphs for various skilling activities. This template derives heavily from the Skilling success chart template.

Where to use

Pages that discuss skilling experience rates, especially ones which compare experience rates between different skilling options. The rates calculated in this template are optimistic for several reasons (see Caveats), but are very good for comparing different activities.

Caveats & usage tips

  • This template calculates the statistically expected experience rate over time. Players' actual experience rates may vary (significantly) in the short term if they are particularly lucky or unlucky on their success rolls. Over a long period of time, however, these experience rates should be reasonably accurate assuming players keep uptime (click new trees, fishing spots, etc.).
  • This template assumes full uptime on the skilling action, and does not account for time lost to banking, depleted resources, etc. You can account for this by increasing the ticksPerAction parameter, at the cost of decreased graph accuracy (since this downtime can vary a lot from player to player and instance to instance).
  • This template does not account for temporary boosts. Players using boosts intermittently may see higher experience rates. You can account for this by increasing the xpPerAction parameter, at the cost of decreased graph accuracy (since players may choose to boost at different times, may be using lightbearers, etc.)
  • If using this template for actions that increase the tick delay on a failure (like getting stunned when pickpocketing), set the failurePenalty parameter. This will make the template account for extra downtime caused by being stunned on a failed pickpocket.

Usage

As this template derives from the skilling success chart template, the vast majority of the parameters are the same. The parameters unique to this template are marked with an asterisk.

{{Skilling experience rate chart
|label=Graph title
*  |xpPerAction=How much XP is gained when the skilling action succeeds (the XP drop). Default is 0, so the graph is empty if this parameter is not set.
*  |ticksPerAction=How many ticks are elapsed between a roll on the skilling action (for example, woodcutting rolls once every 4 ticks). Default is 4.
*  |failurePenalty=How many ticks the player is unable to make a new roll for when they fail the action. E.g. getting stunned when pickpocketing. Default is 0.
*  |xpBonus=Additional percentage-based experience bonuses. For example, the lumberjack outfit bonus is 0.025 (2.5%). Default is 0.
*  |yStep=Y axis ticker step. Default is 5000XP. You probably want to change this for activities that have high XP rates to make the graph less crowded.
*  |startAtZero=Set to "yes" to start the Y axis at 0 instead of dynamically scaling the Y axis.
|xlabel=Label for x axis, defaults to "Level"
|ylabel=Label for y axis, defaults to "XP per hour"
|cascade=Set to "yes" to use cascading interpolation, meaning rolls are performed sequentially on failure. When this is enabled, the order of entries matters.
|birdhouse=Set to "yes" to use birdhouse interpolation. 
|caviar=Set to "yes" to use caviar interpolation.
|denom1=Denominator for caviar interpolation.
|showbefore=Option to display graph before the required level; use "no" to omit impossible chances (e.g. Chopping yews at level 20).
|label1=Item used or resource gathered (e.g. bronze axe or raw tuna)
|low1=The chance of success if the player's level in that skill is 1, out of 255 (even if it's not possible to perform that action at that level)
|bonuslow1=In case a secondary opportunity is given for the skill-check to succeed when the main roll fails, the low chance for this bonus roll (e.g. When fishing raw dark crabs and the first Diary-boosted roll fails, it falls back to the regular skill-check as a bonus roll).
|bonushigh1=The corresponding high chance for the bonus roll.
|high1=The chance of success if the player's level in that skill is 99, out of 255
|req1=The skill level required to perform an action (e.g. 85 for fishing raw dark crabs)
|color1=Colour used for the graph line. Fitting colours are recommended, e.g. "blue" for raw cod. Hex colour codes such as "#cb410b" work too.
|image1=Item used or resource gathered (e.g. Bronze axe.png or Raw tuna.png)
}}

Calculating XP rates

Given a skilling action that rolls for success every ticks and provides experience on success, the maximum experience rate is . In other words, it is the experience gained over an hour assuming every skilling action succeeds.

Calculating the expected experience rate given the probability of skilling success, , is simple. .

For any given level , the probability of skilling success, , is .

This template leaves the heavy lifting of computing the interpolated success probabilities () to the skilling success chart module. The underlying module for this template invokes the skilling success chart module and simply computes .

Accounting for failure penalties (e.g. being stunned when pickpocketing) is done by using the expected amount of time the player has to wait before making another action roll, , instead of the theoretical max amount of actions per tick, giving . Here, and are used for the success tick delay and failure tick delay, respectively.

Examples

Script error: No such module "Sandbox/User:Halworsen".


Script error: No such module "Sandbox/User:Halworsen".