In-game Functions: Difference between revisions

From Melvor Idle
(Update for v.0.18.0)
Line 1: Line 1:
{{V|0.18.0}}
In-game functions are responsible for most things in the game. It is possible to interact directly with them through the console. This can be used to add items, levels, GP and more. These functions can be executed though the console. To access the console open Developer Tools (usually by pressing F12) in your browser and navigate to the console. Then, simply paste the code in the input field and press enter. Most functions will require you to fill out variables in the code before executing them. Note that all code is case sensitive.
In-game functions are responsible for most things in the game. It is possible to interact directly with them through the console. This can be used to add items, levels, GP and more. These functions can be executed though the console. To access the console open Developer Tools (usually by pressing F12) in your browser and navigate to the console. Then, simply paste the code in the input field and press enter. Most functions will require you to fill out variables in the code before executing them. Note that all code is case sensitive.


'''Disclaimer:''' Blindly adding items will most likely take away game enjoyment. It is highly encourage only to use this to either test things or recoup lost items/progress due to lost saves.
'''Disclaimer:''' Blindly adding items and experience will most likely take away game enjoyment. It is highly encourage only to use this to either test things or recoup lost items/progress due to lost saves.


'''Disclaimer:''' You are playing around with the code of the game if you make mistakes, it is possible that could corrupt your game. It is highly recommended to BACKUP YOUR SAVE before running any in-game functions.
'''Disclaimer:''' You are playing around with the code of the game if you make mistakes, it is possible that could corrupt your game. It is highly recommended to '''BACKUP YOUR SAVE''' before running any in-game functions.


== addItemToBank ==
== addItemToBank ==
The addItemToBank function can be used to add any item in the game to the bank
The addItemToBank function can be used to add any item in the game to the bank.
  <nowiki>addItemToBank(itemID, quantity, found = true, showNotification = true)</nowiki>
  <nowiki>addItemToBank(itemID, quantity, found, showNotification, ignoreBankSpace)</nowiki>
 
=== Attributes ===
=== Attributes ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Attribute !! Type !! Optional? !! Description
! Attribute !! Type !! Optional? !! Default Value !! Description
|-
|-
| itemID || int || No || The ID of the item
| itemID || int || No || || The ID of the item.<br />For a complete list of items and their IDs, see: [[Table of Items]]
|-
|-
| quantity || int || No || Quantity of item to add
| quantity || int || No || || Quantity of item to add. Will remove items from the bank if a negative value is specified
|-
|-
| found || bolean || Yes || Determinates if it will show in item completion log. Default: true
| found || boolean || Yes || true || Determines if it will show in item completion log
|-
|-
| showNotification || bolean || Yes || Determinates if it will show notification. Default: true
| showNotification || boolean || Yes || true || Determines if it will show notification
|-
| ignoreBankSpace || boolean || Yes || false || If <code>true</code>, the item will be added to the bank even if the bank is already full
|}
|}


=== Example ===
=== Examples ===
  <nowiki>addItemToBank(1, 10, false);</nowiki>
  <nowiki>addItemToBank(1, 10, false);</nowiki>
The above code will result in 10 items with item ID 1 (Oak Logs) being added to the Bank without them appearing in the item completion log, but with notification.
The above code will result in 10 items with item ID 1 (Oak Logs) being added to the Bank without them appearing in the item completion log, but with notification.


== addXP ==
== addXP ==
The addXP function can be used to add XP to any skill. Note that the game will not visually show the updated XP until after refresh or 1 new action.
The addXP function can be used to add experience to any skill. Note that the game will not visually show the updated XP until after refresh or 1 new action.
  <nowiki>addXP(skill, xp)</nowiki>
  <nowiki>addXP(skillID, xp, forceSkill, dropRares)</nowiki>
=== Attributes ===
=== Attributes ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Attribute !! Type !! Optional? !! Description
! Attribute !! Type !! Optional? !! Default Value !! Description
|-
| skillID || int || No || || The ID of the skill
|-
| xp || int || No || || Amount of experience to add. Note that this is the amount of experience added before bonuses such as that from the {{ItemIcon|Firemaking Skillcape}} or {{PetIcon|Pyro}}
|-
|-
| skill|| int || No || The ID of the skill
| forceSkill || boolean || Yes || false || Determines whether experience boosts normally conditional on the skill (such as that granted by the {{ItemIcon|Ancient Ring of Skills}}) are applied regardless of the skill experience is being added to
|-
|-
| xp || int || No || Amount of XP to add
| dropRares || boolean || Yes || true || Determines if rolls for items that have a chance of dropping when the player earns experience are performed (currently includes [[Mastery Tokens]], {{ItemIcon|Crown of Rhaelyx}} parts, and {{ItemIcon|Mysterious Stone|Mysterious Stones}})
|}
|}
=== Example ===
=== Examples ===
  <nowiki>addXP(10, 1000);</nowiki>
  <nowiki>addXP(10, 1000);</nowiki>
The above code will result in 1000 XP being added to the skill with ID 10 (Thieving).
The above code will result in 1000 experience being added to the skill with ID 10 (Thieving).


== addMasteryXP ==
== addMasteryXP ==
The addMasteryXP function can be used to add XP to any specific Mastery in a skill. Note that the game will not visually show the updated Masterry XP until after refresh or 1 new action.  
The addMasteryXP function can be used to add experience to any specific Mastery in a skill. Note that the game will not visually show the updated Masterry experience until after refresh or 1 new action.  
  <nowiki>addMasteryXP(skill, masteryID, qty = 1)</nowiki>
  <nowiki>addMasteryXP(skillID, masteryID, timePerAction, spendingXP, xp, addToPool, offline)</nowiki>
=== Attributes ===
=== Attributes ===
{| class="wikitable"
{| class="wikitable"
|-
|-
! Attribute !! Type !! Optional? !! Description
! Attribute !! Type !! Optional? !! Default !! Description
|-
| skill || int || No || || The ID of the skill
|-
| masteryID || int || No || || The skill specific Mastery ID. See [[#Mastery IDs|below]] for information on how to identify Mastery ID values
|-
| timePerAction || int || No || || The interval (in milliseconds) of the action granting mastery experience. Has no effect on the result if <code>spendingXP</code> is <code>true</code>
|-
|-
| skill|| int || No || The ID of the skill
| spendingXP || boolean || Yes || false || <code>true</code>: The amount of experience specified with <code>xp</code> is added, <code>timePerAction</code> is ignored<br /><code>false</code>: The amount of experience added is determined by the [[Mastery#Earning Mastery XP|Mastery experience per action calculation]], <code>xp</code> is ignored
|-
|-
| masteryID || int || No || The skill specific Mastery ID
| xp || int || Yes || 0 || Amount of experience to add. Has no effect on the result if <code>spendingXP</code> is <code>false</code>
|-
|-
| qty || int || Yes || Quantity of XP to add. Default value: 1
| addToPool || boolean || Yes || true || Determines whether a portion of the specified experience amount is added to the mastery pool for the relevant skill or not
|-
| offline || boolean || Yes || false || Determines if various UI elements are immediately updated to reflect the experience gain. Should usually be left as the default value
|}
|}
=== Example ===
=== Mastery IDs ===
  <nowiki>addMasteryXP(11, 13, 300);</nowiki>
Below is a reference of how the various mastery ID values may be identified.
{| class="wikitable"
|-
! Skill !! Mastery ID
|-
| {{Skill|Woodcutting}} || Index of the required tree within the constant <code>trees</code>
|-
| {{Skill|Thieving}} || Index of the required NPC within the constant <code>thievingNPC</code>
|-
| {{Skill|Farming}} || <code>items[itemID].masteryID[1]</code> replacing <code>itemID</code> with the ID of the planted seed
|-
| {{Skill|Fishing}} || rowspan="9" | <code>items[itemID].masteryID[1]</code>, replacing <code>itemID</code> with the ID of the item produced by the action
|-
| {{Skill|Firemaking}}
|-
| {{Skill|Cooking}}
|-
| {{Skill|Mining}}
|-
| {{Skill|Smithing}}
|-
| {{Skill|Fletching}}
|-
| {{Skill|Crafting}}
|-
| {{Skill|Runecrafting}}
|-
| {{Skill|Herblore}}
|}
 
=== Examples ===
  <nowiki>addMasteryXP(11, 13, 0, true, 300);</nowiki>
The above code will result in 300 Mastery XP being added to the skill with ID 11 (Farming) for Mastery ID 13 (Carrot Seeds).
The above code will result in 300 Mastery XP being added to the skill with ID 11 (Farming) for Mastery ID 13 (Carrot Seeds).
<nowiki>addMasteryXP(2, 3, 3000)</nowiki>
The above code will result in the calculation & addition of the amount of Mastery XP from an action in skill with ID 2 (Firemaking) for item with Mastery ID 3 (Teak Logs), supposing the action took 3,000 milliseconds.

Revision as of 16:38, 26 December 2020

This page was last updated for (v0.18.0).

In-game functions are responsible for most things in the game. It is possible to interact directly with them through the console. This can be used to add items, levels, GP and more. These functions can be executed though the console. To access the console open Developer Tools (usually by pressing F12) in your browser and navigate to the console. Then, simply paste the code in the input field and press enter. Most functions will require you to fill out variables in the code before executing them. Note that all code is case sensitive.

Disclaimer: Blindly adding items and experience will most likely take away game enjoyment. It is highly encourage only to use this to either test things or recoup lost items/progress due to lost saves.

Disclaimer: You are playing around with the code of the game if you make mistakes, it is possible that could corrupt your game. It is highly recommended to BACKUP YOUR SAVE before running any in-game functions.

addItemToBank

The addItemToBank function can be used to add any item in the game to the bank.

addItemToBank(itemID, quantity, found, showNotification, ignoreBankSpace)

Attributes

Attribute Type Optional? Default Value Description
itemID int No The ID of the item.
For a complete list of items and their IDs, see: Table of Items
quantity int No Quantity of item to add. Will remove items from the bank if a negative value is specified
found boolean Yes true Determines if it will show in item completion log
showNotification boolean Yes true Determines if it will show notification
ignoreBankSpace boolean Yes false If true, the item will be added to the bank even if the bank is already full

Examples

addItemToBank(1, 10, false);

The above code will result in 10 items with item ID 1 (Oak Logs) being added to the Bank without them appearing in the item completion log, but with notification.

addXP

The addXP function can be used to add experience to any skill. Note that the game will not visually show the updated XP until after refresh or 1 new action.

addXP(skillID, xp, forceSkill, dropRares)

Attributes

Attribute Type Optional? Default Value Description
skillID int No The ID of the skill
xp int No Amount of experience to add. Note that this is the amount of experience added before bonuses such as that from the Firemaking Skillcape or Pyro
forceSkill boolean Yes false Determines whether experience boosts normally conditional on the skill (such as that granted by the Ancient Ring of Skills) are applied regardless of the skill experience is being added to
dropRares boolean Yes true Determines if rolls for items that have a chance of dropping when the player earns experience are performed (currently includes Mastery Tokens, Crown of Rhaelyx parts, and Mysterious Stones)

Examples

addXP(10, 1000);

The above code will result in 1000 experience being added to the skill with ID 10 (Thieving).

addMasteryXP

The addMasteryXP function can be used to add experience to any specific Mastery in a skill. Note that the game will not visually show the updated Masterry experience until after refresh or 1 new action.

addMasteryXP(skillID, masteryID, timePerAction, spendingXP, xp, addToPool, offline)

Attributes

Attribute Type Optional? Default Description
skill int No The ID of the skill
masteryID int No The skill specific Mastery ID. See below for information on how to identify Mastery ID values
timePerAction int No The interval (in milliseconds) of the action granting mastery experience. Has no effect on the result if spendingXP is true
spendingXP boolean Yes false true: The amount of experience specified with xp is added, timePerAction is ignored
false: The amount of experience added is determined by the Mastery experience per action calculation, xp is ignored
xp int Yes 0 Amount of experience to add. Has no effect on the result if spendingXP is false
addToPool boolean Yes true Determines whether a portion of the specified experience amount is added to the mastery pool for the relevant skill or not
offline boolean Yes false Determines if various UI elements are immediately updated to reflect the experience gain. Should usually be left as the default value

Mastery IDs

Below is a reference of how the various mastery ID values may be identified.

Skill Mastery ID
Error creating thumbnail: File missing
Woodcutting
Index of the required tree within the constant trees
Error creating thumbnail: File missing
Thieving
Index of the required NPC within the constant thievingNPC
Error creating thumbnail: File missing
Farming
items[itemID].masteryID[1] replacing itemID with the ID of the planted seed
Error creating thumbnail: File missing
Fishing
items[itemID].masteryID[1], replacing itemID with the ID of the item produced by the action
Error creating thumbnail: File missing
Firemaking
Error creating thumbnail: File missing
Cooking
Error creating thumbnail: File missing
Mining
Error creating thumbnail: File missing
Smithing
Error creating thumbnail: File missing
Fletching
Error creating thumbnail: File missing
Crafting
Error creating thumbnail: File missing
Runecrafting
Error creating thumbnail: File missing
Herblore

Examples

addMasteryXP(11, 13, 0, true, 300);

The above code will result in 300 Mastery XP being added to the skill with ID 11 (Farming) for Mastery ID 13 (Carrot Seeds).

addMasteryXP(2, 3, 3000)

The above code will result in the calculation & addition of the amount of Mastery XP from an action in skill with ID 2 (Firemaking) for item with Mastery ID 3 (Teak Logs), supposing the action took 3,000 milliseconds.