From Dark and Darker Wiki
m (Typo) |
(The last change fixed hitstop for utility items, where applicable. Accidentally hit ctrl+enter to type additional changes, but that saved the changes before I could type them out.) |
||
(18 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<includeonly><!-- | <includeonly><!-- | ||
-- | TODO | ||
- Automate interaction time data for consumables. | |||
- Automate interaction time data for installables. | |||
- Add missing light source abilities. Need to mention the effect of lighting. | |||
--><table cellspacing="0" class="wikitable sortable jquery-tablesorter" style="rgb(220,220,220,0.2); color:#eee; background:transparent; text-align:center; vertical-align:middle;"> | --><table cellspacing="0" class="wikitable sortable jquery-tablesorter" style="rgb(220,220,220,0.2); color:#eee; background:transparent; text-align:center; vertical-align:middle;"> | ||
{{#switch:{{lc:{{{1}}}}} | <tr style="font-weight:bold;"> | ||
|drink | <th style="width:5%">Name</th> | ||
{{#switch:{{lc:{{{1}}}}} | |||
|drink= | |||
<th style="width:5%">Movement Speed</th> | |||
<th style="width:20%">Effect</th> | |||
<th style="width:10%">Action Time</th> | |||
<th style="width:10%">Action Movement Penalty</th> | |||
|consumable= | |consumable= | ||
<th style="width:5%">Movement Speed</th> | |||
<th style="width:20%">Effect</th> | |||
<th style="width:10%">Interaction Time</th> | |||
<th style="width:10%">Action Movement Penalty</th> | |||
|installable= | |||
<th style="width:5%">Class</th> | |||
| | <th style="width:5%">Movement Speed</th> | ||
<th style="width:10%">Damage on Hit</th> | |||
<th style="width:20%">Effect</th> | |||
<th style="width:10%">Interaction Time</th> | |||
|lightsource= | |lightsource= | ||
<th style="width:5%">Movement Speed</th> | |||
<th style="width:10%">Damage on Hit</th> | |||
<th style="width:20%">Effect</th> | |||
<th style="width:10%">Action Movement Penalty</th> | |||
<th style="width:10%">Slowdown On Hit</th> | |||
|throwable= | |throwable= | ||
<th style="width:5%">Class</th> | |||
<th style="width:5%">Movement Speed</th> | |||
<th style="width:10%">Damage on Hit</th> | |||
<th style="width:20%">Effect</th> | |||
<th style="width:10%">Action Movement Penalty</th> | |||
<th style="width:10%">Slowdown On Hit</th> | |||
|musicalinstrument | |||
|mining= | |mining= | ||
<th style="width:5%">Movement Speed</th> | |||
<th style="width:10%">Damage on Hit</th> | |||
<th style="width:10%">Stats</th> | |||
<th style="width:20%">Effect</th> | |||
<th style="width:10%">Action Movement Penalty</th> | |||
<th style="width:10%">Slowdown On Hit</th> | |||
|soulheart= | |soulheart= | ||
<th style="width:20%">Effect</th> | |||
|#default= | |#default= | ||
<th style="width:5%">Class</th> | |||
<th style="width:5%">Movement Speed</th> | |||
<th style="width:10%">Damage on Hit</th> | |||
<th style="width:10%">Stats</th> | |||
<th style="width:20%">Effect</th> | |||
<th style="width:10%">Action Time</th> | |||
<th style="width:10%">Action Movement Penalty</th> | |||
<th style="width:10%">Slowdown On Hit</th>}}</tr><!-- | |||
-->{{#arraydefine:Utilities|{{Utility Data|AllLists|Types|Utility|Both|{{{1}}}}} }}<!-- | |||
}}<!-- | |||
-->{{#loop:i|0|{{#arraysize:Utilities}}<!-- | -->{{#loop:i|0|{{#arraysize:Utilities}}<!-- | ||
-->|{{#vardefine:current|{{#arrayindex:Utilities|{{#var:i}} }} }}<!-- | -->|{{#vardefine:current|{{#arrayindex:Utilities|{{#var:i}} }} }}<!-- | ||
-->{{ | -->{{#vardefine:rarities|{{Utility Data|{{#var:current}}|Rarities}} }}<!-- | ||
-->{{#arraydefine:rarities|{{#var:rarities}} }}<!-- | |||
-->{{#vardefine:types|{{Utility Data|{{#var:current}}|Types|All}} }}<!-- | |||
-->{{#vardefine:is_soulheart|{{#ifeq:Soul Heart|{{#var:current}}|1}} }}<!-- | |||
-->{{#vardefine:is_healing_consumable|{{#pos:Surgical Kit,Bandage|{{#var:current}} }} }}{{#if:{{#var:is_healing_consumable}}|{{#vardefine:is_consumable}}|{{#vardefine:is_consumable|{{#pos:{{#var:types}}|Consumable}} }} }}<!-- | |||
-->{{#vardefine:is_drink|{{#pos:{{#var:types}}|Drink}} }}<!-- | |||
-->{{#vardefine:is_installable|{{#pos:{{#var:types}}|Installable}} }}<!-- | |||
-->{{#vardefine:is_musicalinstrument|{{#pos:{{#var:types}}|MusicalInstrument}} }}<!-- | |||
-->{{#vardefine:is_throwable|{{#pos:{{#var:types}}|Throwable}} }}<!-- | |||
-->{{#vardefine:is_lightsource|{{#pos:{{#var:types}}|LightSource}} }}<!-- | |||
-->{{#vardefine:is_mining|{{#pos:{{#var:types}}|Mining}} }}<!-- | |||
Create an array that will be filtered out from the stats data cell. | |||
-->{{#arraydefine:stats_filter|Move Speed,Physical Base Weapon Damage}}<!-- | |||
-->{{#arraydefine:allstats|{{Utility Data|{{#var:current}}|Stats|AllStats}} }}{{#arraydiff:allstats|allstats|stats_filter}}<!-- | |||
-->{{#arraydefine:all_abilities|{{Utility Data|{{#var:current}}|Abilities|All}} }}<!-- | |||
-->{{#arraydefine:effects_filter|Scaling,Duration}}<!-- | |||
-->{{#arraydefine:ability_filter|Consume,Throw}}<!-- | |||
--><tr><!-- | |||
Iconbox | |||
--><td><!-- | |||
-->{{Iconbox<!-- | |||
-->|{{#var:current}}<!-- | |||
-->|rarity=<!-- | |||
-->{{#if:{{#pos:{{#var:rarities}}|,}}<!-- | |||
-->|2<!-- | |||
-->|{{#var:rarities}} }}<!-- | |||
-->|caption=<!-- | |||
-->{{#if:{{#pos:{{#var:rarities}}|,}}<!-- | |||
-->||<span class="colorrarity{{#var:rarities}}">{{#var:current}}</span>}} }}</td><!-- | |||
Classes | |||
-->{{#if:{{#var:is_drink}}{{#var:is_consumable}}{{#var:is_healing_consumable}}{{#var:is_soulheart}}{{#var:is_lightsource}}{{#var:is_mining}}{{#var:is_musicalinstrument}}<!-- | |||
-->||<td>{{#replace:{{Utility Data|{{#var:current}}|Classes}}|,|<br>}}</td>}}<!-- | |||
Movement Speed | |||
-->{{#if:{{#var:is_soulheart}}<!-- | |||
-->||<td><!-- | |||
WARNING: This structure assumes every utility has uniform movement speed stats. | |||
It is possible that in the future, there exists a utility that doesn't have move speed 5. | |||
In such a case, we would have to change the logic of the second switch statement. | |||
-->{{#switch:1<!-- | |||
-->|{{#if:{{#vardefineecho:utility_stat|{{Utility Data|{{#var:current}}|Stats|Move speed}} }}|1|}}=<!-- | |||
-->{{#var:utility_stat}}<!-- | |||
-->|{{#if:{{#vardefineecho:utility_stat|{{Utility Data|{{#var:current}}|Stats|Move speed 5}} }}|1|}}=<!-- | |||
--><span class="colorrarity1">{{Utility Data|{{#var:current}}|Stats|Move speed 1}}</span><br><!-- | |||
--><span class="colorrarity2">{{Utility Data|{{#var:current}}|Stats|Move speed 2}}</span><br><!-- | |||
--><span class="colorrarity3">{{Utility Data|{{#var:current}}|Stats|Move speed 3}}</span><br><!-- | |||
--><span class="colorrarity4">{{Utility Data|{{#var:current}}|Stats|Move speed 4}}</span><br><!-- | |||
--><span class="colorrarity5">{{Utility Data|{{#var:current}}|Stats|Move speed 5}}</span><br><!-- | |||
--><span class="colorrarity6">{{Utility Data|{{#var:current}}|Stats|Move speed 6}}</span><br><!-- | |||
--><span class="colorrarity7">{{Utility Data|{{#var:current}}|Stats|Move speed 7}}</span>}}</td>}}<!-- | |||
Damages | |||
-->{{#if:{{#var:is_drink}}{{#var:is_consumable}}{{#var:is_healing_consumable}}{{#var:is_soulheart}}<!-- | |||
-->||<td><!-- | |||
WARNING: This structure assumes every combat utility has uniform weapon damage stats. | |||
It is possible that in the future, there exists a utility that doesn't have phys. wep. damage 5. | |||
In such a case, we would have to change the logic of the second switch statement. | |||
-->{{#switch:1<!-- | |||
-->|{{#if:{{#vardefineecho:utility_stat|{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage}} }}|1|}}=<!-- | |||
-->{{#var:utility_stat}}<!-- | |||
-->|{{#if:{{#vardefineecho:utility_stat|{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage 5}} }}|1|}}=<!-- | |||
--><span class="colorrarity1">{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage 1}}</span><br><!-- | |||
--><span class="colorrarity2">{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage 2}}</span><br><!-- | |||
--><span class="colorrarity3">{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage 3}}</span><br><!-- | |||
--><span class="colorrarity4">{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage 4}}</span><br><!-- | |||
--><span class="colorrarity5">{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage 5}}</span><br><!-- | |||
--><span class="colorrarity6">{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage 6}}</span><br><!-- | |||
--><span class="colorrarity7">{{Utility Data|{{#var:current}}|Stats|Physical Base Weapon Damage 7}}</span><!-- | |||
-->|{{#ifeq:{{lc:{{#var:current}} }}|hunting trap|1}}=<!-- | |||
-->{{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Poor|Effects|huntingtraphit|truephysicalbasedamage}} }}</td>}}<!-- | |||
Stats | |||
-->{{#if:{{#var:is_drink}}{{#var:is_consumable}}{{#var:is_healing_consumable}}{{#var:is_lightsource}}{{#var:is_throwable}}{{#var:is_soulheart}}{{#var:is_installable}}<!-- | |||
-->||<td><!-- | |||
-->{{#loop:i|0|{{#arraysize:allstats}}<!-- | |||
-->|{{#vardefine:stat|{{#arrayindex:allstats|{{#var:i}} }} }}<!-- | |||
--><div style="display:inline-block; vertical-align:top; margin-left:15px; margin-right:15px;"><!-- | |||
If the stats isn't Physical Utility Damage or Move Speed, display it. | |||
--><span style="color:#eee8;">{{#var:stat}}</span><br><!-- | |||
-->{{#switch:1<!-- | |||
-->|{{#if:{{#vardefineecho:utility_stat|{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} }} }}|1|}}=<!-- | |||
-->{{#var:utility_stat}}<!-- | |||
-->|{{#if:{{#vardefineecho:utility_stat|{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} 5}} }}|1|}}=<!-- | |||
--><span class="colorrarity1">{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} 1}}</span><br><!-- | |||
--><span class="colorrarity2">{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} 2}}</span><br><!-- | |||
--><span class="colorrarity3">{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} 3}}</span><br><!-- | |||
--><span class="colorrarity4">{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} 4}}</span><br><!-- | |||
--><span class="colorrarity5">{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} 5}}</span><br><!-- | |||
--><span class="colorrarity6">{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} 6}}</span><br><!-- | |||
--><span class="colorrarity7">{{Utility Data|{{#var:current}}|Stats|{{#var:stat}} 7}}</span>}}</div>}}</td>}}<!-- | |||
Effect | |||
--><td><!-- | |||
-->{{#switch:1<!-- | |||
-->|{{#ifeq:{{#var:current}}|Potion of Luck|1}}=<!-- | |||
-->{{Effects|Potion of Luck|3}}<br><!-- | |||
-->{{Effects|Potion of Luck|5}}<!-- | |||
-->|{{#if:{{#var:is_consumable}}|1}}=<!-- | |||
-->{{#switch:{{lc:{{#var:current}} }}<!-- | |||
-->|skull key=Opens the [[Skull Stone Door|Skull Door]]. This door can only be found on the Inferno map that features Ghost King, in the Demon Gate module.<!-- | |||
-->|frozen iron key=Opens the [[Frozen Iron Door]]. This door can only be found in Ice Abyss, in the Charnel House module.<!-- | |||
-->|golden key=Opens the [[Golden Door]]. This door can be found in various modules of the Crypts maps, specifically: the Treasure Room, the Armory, and the Wheel.<!-- | |||
-->|old rusty key=Opens the [[Rusty Iron Door]]. This door can only be found in Ruins.<!-- | |||
-->|mystical gem=Opens the [[Goblin Stone Door]]. This door can only be found in Goblin Caves, in the Goblin Rooms module.<!-- | |||
-->|lockpick=Opens locked doors and chests. Will not work on doors that require special keys.<!-- | |||
-->|trap disarming kit=Allows the player to disable environmental traps.<!-- | |||
-->|#default=TODO_ADD_MISSING_INFORMATION}}<!-- | |||
-->|{{#if:{{#var:is_drink}}{{#var:is_healing_consumable}}{{#var:is_soulheart}}{{#var:is_lightsource}}|1}}=<!-- | |||
-->{{#arraydefine:other_ability|{{Utility Data|{{#var:current}}|Abilities|Other|All}} }}{{#arrayintersect:other_ability|other_ability|ability_filter}}<!-- | |||
-->{{#arraydefine:effects|{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|All}} }}<!-- | |||
-->{{#loop:i|0|{{#arraysize:effects}}<!-- | |||
Collect the information for the effect | |||
-->|{{#vardefine:effects|{{#arrayindex:effects|{{#var:i}} }} }}<!-- | |||
Find the effect name | |||
-->{{#arraydefine:effect_data_name|{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|Global|All}} }}<!-- | |||
-->{{#arraydiff:effect_data_name|effect_data_name|effects_filter}}<!-- | |||
If the effect name is empty, either it's not a global effect or the item doesn't have an effect outside of duration and scaling. We double check the rarity effects. | |||
-->{{#ifexpr:{{#arraysize:effect_data_name}} < 1<!-- | |||
-->|{{#arraydefine:effect_data_name|{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|{{#arrayindex:rarities|0}}|All}} }}<!-- | |||
-->{{#arraydiff:effect_data_name|effect_data_name|effects_filter}} }}<!-- | |||
-->{{#vardefine:effect_data|<!-- | |||
-->{{#switch:1<!-- | |||
-->|{{#if:{{#vardefineecho:global|{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|Global|{{#arrayprint:effect_data_name}} }} }}|1}}=<!-- | |||
-->{{#var:global}}<!-- | |||
-->|{{#if:{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|{{#arrayindex:rarities|0}}|{{#arrayprint:effect_data_name}} }}|1}}=<!-- | |||
-->{{#loop:i|0|{{#arraysize:rarities}}<!-- | |||
-->|{{#ifeq:{{#var:i}}|0|| {{!}} }}<!-- | |||
Need to color by rarity | |||
--><span class="colorrarity{{#arrayindex:rarities|{{#var:i}} }}"><!-- | |||
-->{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|{{#arrayindex:rarities|{{#var:i}} }}|{{#arrayprint:effect_data_name}} }}</span>}} }} }}<!-- | |||
-->{{#vardefine:duration_data|<!-- | |||
-->{{#switch:1<!-- | |||
-->|{{#if:{{#vardefineecho:global|{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|Global|Duration}} }}|1}}=<!-- | |||
-->{{#var:global}}<!-- | |||
-->|{{#if:{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|{{#arrayindex:rarities|0}}|Duration}}|1}}=<!-- | |||
-->{{#loop:i|0|{{#arraysize:rarities}}<!-- | |||
-->|{{#ifeq:{{#var:i}}|0|| {{!}} }}<!-- | |||
Need to color by rarity | |||
--><span class="colorrarity{{#arrayindex:rarities|{{#var:i}} }}"><!-- | |||
-->{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|{{#arrayindex:rarities|{{#var:i}} }}|Duration}}</span>}} }} }}<!-- | |||
-->{{#vardefine:scaling_data|<!-- | |||
-->{{#switch:1<!-- | |||
-->|{{#if:{{#vardefineecho:global|{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|Global|scaling}} }}|1}}=<!-- | |||
-->{{#var:global}}<!-- | |||
-->|{{#if:{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|{{#arrayindex:rarities|0}}|scaling}}|1}}=<!-- | |||
-->{{#loop:i|0|{{#arraysize:rarities}}<!-- | |||
-->|{{#ifeq:{{#var:i}}|0|| {{!}} }}<!-- | |||
Need to color by rarity | |||
--><span class="colorrarity{{#arrayindex:rarities|{{#var:i}} }}"><!-- | |||
-->{{Utility Data|{{#var:current}}|Abilities|Other|{{#arrayprint:other_ability}}|Effects|{{#var:effects}}|Rarity|{{#arrayindex:rarities|{{#var:i}} }}|scaling}}</span>}} }} }}<!-- | |||
-->{{Effects|{{#var:effects}}<!-- | |||
-->|type={{lc:{{#arrayprint:effect_data_name}} }}<!-- | |||
-->|effect={{lc:{{#var:effect_data}} }}<!-- | |||
-->|duration={{lc:{{#var:duration_data}} }}<!-- | |||
-->|scaling={{lc:{{#var:scaling_data}} }} }} }}<!-- | |||
-->|{{#if:{{#var:is_installable}}|1}}=<!-- | |||
-->{{#switch:{{lc:{{#var:current}} }}<!-- | |||
-->|campfire kit=<!-- | |||
-->Build a Campfire which will release a healing aura that [[Healing#Physical_Base_Healing|recovers 3 HP]] and [[Spell_Restoration#Campfire|34 Skill Points per second]] for<br><!-- | |||
--><span class="colorrarity1">{{Prop Data|Campfire|Global|Abilities|Campfire Aura Poor|Effects|campfireturnonstate_poor|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity2">{{Prop Data|Campfire|Global|Abilities|Campfire Aura Common|Effects|campfireturnonstate_Common|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity3">{{Prop Data|Campfire|Global|Abilities|Campfire Aura Uncommon|Effects|campfireturnonstate_Uncommon|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity4">{{Prop Data|Campfire|Global|Abilities|Campfire Aura Rare|Effects|campfireturnonstate_Rare|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity5">{{Prop Data|Campfire|Global|Abilities|Campfire Aura Epic|Effects|campfireturnonstate_Epic|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity6">{{Prop Data|Campfire|Global|Abilities|Campfire Aura Legend|Effects|campfireturnonstate_Legend|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity7">{{Prop Data|Campfire|Global|Abilities|Campfire Aura Unique|Effects|campfireturnonstate_Unique|Duration}}</span> <!-- | |||
-->|hunting trap=<!-- | |||
-->Set a hunting trap that applies a {{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Poor|Effects|trapped_player_Poor|movespeedbonus}} debuff and damages the target until it expires or until it is disarmed.<br><br>1 [[Damage#True_Base_Damage|True Physical Base Damage]]<br>2 [[Damage#True_Base_Damage|True Physical Base Damage]] per step<br><br><!-- | |||
-->Players are trapped for <!-- | |||
--><span class="colorrarity1">{{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Poor|Effects|trapped_player_Poor|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity2">{{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Common|Effects|trapped_player_Common|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity3">{{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Uncommon|Effects|trapped_player_Uncommon|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity4">{{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Rare|Effects|trapped_player_Rare|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity5">{{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Epic|Effects|trapped_player_Epic|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity6">{{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Legend|Effects|trapped_player_legend|Duration}}</span> {{!}} <!-- | |||
--><span class="colorrarity7">{{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Unique|Effects|trapped_player_Unique|Duration}}</span> <!-- | |||
--><br>Monsters are trapped for {{Prop Data|Hunting Trap|Global|Abilities|hunting trap activate Unique|Effects|trapped_monster|Duration}}<br><!-- | |||
-->|#default=TODO_ADD_MISSING_INFORMATION}}<!-- | |||
-->|{{#if:{{#var:is_mining}}|1}}=<!-- | |||
-->Enables the player to interact with [[Containers-Global#Ore|mining nodes]] to produce [[ore]].<!-- | |||
-->|{{#if:{{#var:is_musicalinstrument}}|1}}=<!-- | |||
-->Allows one to play [[Bard#Music-0|{{lc:{{#var:current}}}} songs]], if they have the [[Bard#Skills-0|music memory]] and songs equipped.</td><!-- | |||
-->|{{#if:{{#var:is_throwable}}|1}}=<!-- | |||
-->Throw a {{lc:{{#var:current}} }} at the target location.}}</td><!-- | |||
Action/Interaction Time | |||
-->{{#if:{{#var:is_musicalinstrument}}{{#var:is_lightsource}}{{#var:is_throwable}}{{#var:is_mining}}{{#var:is_soulheart}}<!-- | |||
-->||<td><!-- | |||
-->{{#vardefine:self_effects|{{Utility Data|{{#var:current}}|Abilities|Other|Self|Effects|All}} }}<!-- | |||
-->{{#vardefine:duration|<!-- | |||
-->{{#switch:1<!-- | |||
-->|{{#if:{{#vardefineecho:global|{{Utility Data|{{#var:current}}|Abilities|Other|Self|Effects|DrinkPotionActivateState|Rarity|Global|Duration}} }}|1}}=<!-- | |||
-->{{#var:global}} s<br>100% Scaling<!-- | |||
-->|{{#if:{{Utility Data|{{#var:current}}|Abilities|Other|Self|Effects|{{#var:self_effects}}|Rarity|5|Duration}}|1}}=<!-- | |||
-->{{#loop:i|0|{{#arraysize:rarities}}<!-- | |||
-->|{{#ifeq:{{#var:i}}|0|| {{!}} }}<!-- | |||
--><span class="colorrarity{{#arrayindex:rarities|{{#var:i}} }}"><!-- | |||
-->{{Utility Data|{{#var:current}}|Abilities|Other|Self|Effects|{{#var:self_effects}}|Rarity|{{#arrayindex:rarities|{{#var:i}} }}|Duration}}</span>}} s<br>100% Scaling<!-- | |||
-->|#default={{#switch:{{lc:{{#var:current}} }}<!-- | |||
-->|campfire kit=<!-- | |||
-->10 s<br>100% Scaling<!-- | |||
-->|hunting trap=<!-- | |||
--><span class="colorrarity1">6</span> {{!}} <!-- | |||
--><span class="colorrarity2">5</span> {{!}} <!-- | |||
--><span class="colorrarity3">4</span> {{!}} <!-- | |||
--><span class="colorrarity4">3</span> {{!}} <!-- | |||
--><span class="colorrarity5">2</span> {{!}} <!-- | |||
--><span class="colorrarity6">1</span> {{!}} <!-- | |||
--><span class="colorrarity7">1</span> s<br><!-- | |||
-->100% Scaling<!-- | |||
-->|bandage=<!-- | |||
-->4 s<br>50% Scaling<!-- | |||
-->|surgical kit=<!-- | |||
--><span class="colorrarity1">15</span> {{!}} <!-- | |||
--><span class="colorrarity2">13</span> {{!}} <!-- | |||
--><span class="colorrarity3">11</span> {{!}} <!-- | |||
--><span class="colorrarity4">9</span> {{!}} <!-- | |||
--><span class="colorrarity5">7</span> {{!}} <!-- | |||
--><span class="colorrarity6">5</span> {{!}} <!-- | |||
--><span class="colorrarity7">3</span> s<br><!-- | |||
-->50% Scaling}} }} }}<!-- | |||
-->{{#if:{{#var:duration}}|{{#var:duration}} }}</td>}}<!-- | |||
Action Movement Speed | |||
-->{{#if:{{#var:is_soulheart}}{{#var:is_installable}}<!-- | |||
-->||<td><!-- | |||
If the utility has abilities, loop through them | |||
-->{{#loop:i|0|{{#arraysize:all_abilities}}<!-- | |||
-->|{{#vardefine:ability|{{#arrayindex:all_abilities|{{#var:i}} }} }}<!-- | |||
-->{{#if: {{#vardefineecho:movespeed|{{Utility Data|{{#var:current}}|abilities|{{#var:ability}}|Global|MovementMultiplier}} }}<!-- | |||
-->{{#vardefineecho:preparemovespeed|{{Utility Data|{{#var:current}}|abilities|{{#var:ability}}|Global|PrepareMovementMultiplier}} }}<!-- | |||
-->|<span style="color:#eee8; font-size:110%; font-weight:bold;"><!-- | |||
-->{{#ifeq:{{#var:ability}}|Other<!-- | |||
-->|All Actions<!-- | |||
-->|{{#var:ability}} Attacks}}<br></span><!-- | |||
-->{{#if:{{#var:preparemovespeed}}<!-- | |||
-->|<span style="color:#eee8;"><!-- | |||
-->Mid Attack: </span><!-- | |||
-->{{#var:preparemovespeed}}<br><!-- | |||
--><span style="color:#eee8;"><!-- | |||
-->Otherwise: </span><!-- | |||
-->{{#var:movespeed}}<br><br><!-- | |||
-->|<span style="color:#eee8;"><!-- | |||
-->Always: </span><!-- | |||
-->{{#var:movespeed}}<br><br>}}<!-- | |||
Else loop through all attacks | |||
-->|{{#arraydefine:all_attacks|{{Utility Data|{{#var:current}}|abilities|{{#var:ability}}|all}} }}<!-- | |||
-->{{#loop:i|0|{{#arraysize:all_attacks}}<!-- | |||
-->|{{#vardefine:attack|{{#arrayindex:all_attacks|{{#var:i}} }} }}<!-- | |||
If the attack has a movement multiplier, display it | |||
-->{{#if: {{#vardefineecho:movespeed|{{Utility Data|{{#var:current}}|abilities|{{#var:ability}}|{{#var:attack}}|MovementMultiplier}} }}<!-- | |||
-->{{#vardefineecho:preparemovespeed|{{Utility Data|{{#var:current}}|abilities|{{#var:ability}}|{{#var:attack}}|PrepareMovementMultiplier}} }}<!-- | |||
-->|<span style="color:#eee8; font-size:110%; font-weight:bold;"><!-- | |||
-->{{#if:{{#pos:{{#var:ability}}|Other}}<!-- | |||
-->|{{#var:attack}}<!-- | |||
-->|{{#var:ability}} {{#var:attack}} }}<br></span><!-- | |||
-->{{#if:{{#var:preparemovespeed}}<!-- | |||
-->|<span style="color:#eee8;"><!-- | |||
-->Mid Attack: </span><!-- | |||
-->{{#var:preparemovespeed}}<br><!-- | |||
--><span style="color:#eee8;"><!-- | |||
-->Otherwise: </span><!-- | |||
-->{{#var:movespeed}}<br><br><!-- | |||
-->|<span style="color:#eee8;"><!-- | |||
-->Always: </span><!-- | |||
-->{{#var:movespeed}}<br><br>}} }} }} }} }}</td>}}<!-- | |||
Slowdown On Hit | |||
-->{{#vardefine:ability|{{#if:{{#pos:{{Utility Data|{{#var:current}}|Abilities|All}}|Primary}}|Primary|Other}} }}<!-- | |||
-->{{#arraydefine:all_attacks|{{Utility Data|{{#var:current}}|Abilities|{{#var:ability}}|all}} }}{{#arraydefine:global|Global,Play,Dissonance,PartyMaker,Riposte,Activate Ability,Throw}}{{#arraydiff:all_attacks|all_attacks|global}}<!-- | |||
-->{{#vardefine:global_hitslow|{{Utility Data|{{#var:current}}|Abilities|{{#var:ability}}|Global|Effects|HitSlow|Rarity|Global|Move Speed Bonus}} }}<!-- | |||
-->{{#vardefine:global_hitslow_duration|{{Utility Data|{{#var:current}}|Abilities|{{#var:ability}}|Global|Effects|HitSlow|Rarity|Global|Duration}} }}<!-- | |||
-->{{#if:{{#var:is_drink}}{{#var:is_consumable}}{{#var:is_healing_consumable}}{{#var:is_soulheart}}{{#var:is_installable}}<!-- | |||
-->||<td><!-- | |||
-->{{#if:{{#var:global_hitslow}}<!-- | |||
-->|<span style="color:#eee8;">Hitslow</span><br>{{#var:global_hitslow}}<!-- | |||
-->|{{#loop:i|0|{{#arraysize:all_attacks}}<!-- | |||
-->|{{#vardefine:current_attack|{{#arrayindex:all_attacks|{{#var:i}} }} }}<!-- | |||
-->{{#ifeq:{{#var:i}}|0|<span style="color:#eee8;">Hitslow</span><br>|/}}<!-- | |||
-->{{Utility Data|{{#var:current}}|Abilities|{{#var:ability}}|{{#var:current_attack}}|Effects|HitSlow|Rarity|Global|Move Speed Bonus}} }} }}<!-- | |||
-->{{#if:{{#var:global_hitslow_duration}}<!-- | |||
-->| for {{#var:global_hitslow_duration}}s<!-- | |||
-->|{{#loop:i|0|{{#arraysize:all_attacks}}<!-- | |||
-->|{{#vardefine:current_attack|{{#arrayindex:all_attacks|{{#var:i}} }} }}<!-- | |||
-->{{#ifeq:{{#var:i}}|0| for |/}}<!-- | |||
-->{{Utility Data|{{#var:current}}|Abilities|{{#var:ability}}|{{#var:current_attack}}|Effects|HitSlow|Rarity|Global|Duration}}s}} }}</td>}}</tr>}}</table><!-- | |||
--></includeonly><noinclude> | --></includeonly><noinclude> | ||
List Utilities and generate rows with them | List Utilities and generate rows with them | ||
== Example == | == Example == | ||
<pre>{{ | <pre>{{GenerateUtilityTable|Drink}}</pre> | ||
{{ | {{GenerateUtilityTable|Drink}} | ||
<pre>{{ | <pre>{{GenerateUtilityTable|Consumable}}</pre> | ||
{{ | {{GenerateUtilityTable|Consumable}} | ||
<pre>{{ | <pre>{{GenerateUtilityTable|Installable}}</pre> | ||
{{ | {{GenerateUtilityTable|Installable}} | ||
<pre>{{ | <pre>{{GenerateUtilityTable|MusicalInstrument}}</pre> | ||
{{ | {{GenerateUtilityTable|MusicalInstrument}} | ||
<pre>{{ | <pre>{{GenerateUtilityTable|LightSource}}</pre> | ||
{{ | {{GenerateUtilityTable|LightSource}} | ||
<pre>{{ | <pre>{{GenerateUtilityTable|Throwable}}</pre> | ||
{{ | {{GenerateUtilityTable|Throwable}} | ||
<pre>{{GenerateUtilityTable|Mining}}</pre> | |||
{{GenerateUtilityTable|Mining}} | |||
</noinclude> | </noinclude> |
Latest revision as of 00:38, 25 August 2024
List Utilities and generate rows with them
Example
{{GenerateUtilityTable|Drink}}
Name | Movement Speed | Effect | Action Time | Action Movement Penalty |
---|---|---|---|---|
-20 | You gain 4 | 5 | 6 | 7 | 8 | 9 | 10 strength for 15 seconds. You become dizzy for 15 seconds. | 3 s 100% Scaling | ||
-20 | Creates a magical base shield that blocks 10 | 15 | 20 | 25 | 30 | 35 | 40 magical damage for 24 seconds. Damage blocked by the shield will be unaffected by Damage Reduction or limb/headshot multipliers. The shield has no scaling. | 3 s 100% Scaling | Consume Always: 75% | |
-20 | While sitting, recharge spells for 17 spell points per second for 4 | 6 | 8 | 10 | 12 | 14 | 16 seconds. The recovery amount has no scaling. | 3 s 100% Scaling | Consume Always: 75% | |
-20 | Heals 20 health points over 20 | 17.5 | 15 | 12.5 | 10 | 7.5 | 5 seconds. This counts as magical base healingand has 50% scaling. | 3 s 100% Scaling | Consume Always: 75% | |
-20 | Makes you invisible for 11 | 14 | 17 | 20 | 23 | 26 | 29 seconds. Invisibility is broken when you move, take action, or get damaged. | 3 s 100% Scaling | Consume Always: 75% | |
-20 | Increases Luck by 20(45%) or 50(35%) or 80(20%) Increases Luck by 50(33.33%) or 100(33.33%) or 150(33.33%) | 3 s 100% Scaling | Self Always: 75% | |
-20 | Creates a physical base shield that blocks 10 | 15 | 20 | 25 | 30 | 35 | 40 physical damage for 24 seconds. Damage blocked by the shield will be unaffected by Damage Reduction or limb/headshot multipliers. The shield has no scaling. | 3 s 100% Scaling | Consume Always: 75% | |
-20 | Heals 100 health points over 100 seconds. This counts as magical base healingand has 50% scaling. | 3 s 100% Scaling | Consume Always: 75% |
{{GenerateUtilityTable|Consumable}}
Name | Movement Speed | Effect | Interaction Time | Action Movement Penalty |
---|---|---|---|---|
-20 | Provides 15 | 19 | 24 | 30 | 37 | 45 | 54 recoverable base healing. | 4 s 50% Scaling | Consume Always: 50% | |
Opens the Frozen Iron Door. This door can only be found in Ice Abyss, in the Charnel House module. | ||||
Opens the Golden Door. This door can be found in various modules of the Crypts maps, specifically: the Treasure Room, the Armory, and the Wheel. | ||||
Opens locked doors and chests. Will not work on doors that require special keys. | ||||
Opens the Goblin Stone Door. This door can only be found in Goblin Caves, in the Goblin Rooms module. | ||||
Opens the Rusty Iron Door. This door can only be found in Ruins. | ||||
Opens the Skull Door. This door can only be found on the Inferno map that features Ghost King, in the Demon Gate module. | ||||
-20 | Provides 100% percent max health healing. | 15 | 13 | 11 | 9 | 7 | 5 | 3 s 50% Scaling | Consume Always: 50% | |
Allows the player to disable environmental traps. |
{{GenerateUtilityTable|Installable}}
Name | Class | Movement Speed | Damage on Hit | Effect | Interaction Time |
---|---|---|---|---|---|
-20 | Build a Campfire which will release a healing aura that recovers 3 HP and 34 Skill Points per second for 18s | 21s | 24s | 27s | 30s | 33s | 36s | 10 s 100% Scaling | |||
Ranger | -20 | 5 True Physical Base Damage | Set a hunting trap that applies a -40% Move Speed Bonus debuff and damages the target until it expires or until it is disarmed. 1 True Physical Base Damage 2 True Physical Base Damage per step Players are trapped for 3s | 4s | 5s | 6s | 7s | 8s | 9s Monsters are trapped for 7s | 6 | 5 | 4 | 3 | 2 | 1 | 1 s 100% Scaling |
{{GenerateUtilityTable|MusicalInstrument}}
Name | Movement Speed | Damage on Hit | Stats | Effect | Action Movement Penalty | Slowdown On Hit |
---|---|---|---|---|---|---|
-29 -29~-28 -28~-27 -27~-26 -26~-25 -25~-24 -24~-23 | 24 25~26 27~28 29~30 31 32 33~34 | Allows one to play drum songs, if they have the music memory and songs equipped. | Play Always: 70% Attack 1 Always: 75% | Hitslow -25% for 1s | ||
-13 | 22 23~24 25~26 27~28 29 30 31~32 | Agility 1 2 2 3 3 4 4 Dexterity 2 2 3 3 4 4 5 | Allows one to play flute songs, if they have the music memory and songs equipped. | Play Always: 70% Riposte Always: 70% Riposte Attack 1 Always: 70% Block Reaction Always: 97% | Hitslow -10% for 1s | |
-15 -15 -14 -14~-13 -13~-12 -12~-11 -11~-10 | 20 21~22 23~24 25~26 27 28 29~30 | Knowledge 1 2 3 4 5 6 7 | Allows one to play lute songs, if they have the music memory and songs equipped. | Primary Attacks Mid Attack: 85% Otherwise: 70% Play Always: 70% | Hitslow -17% for 1s | |
-17 -16 -15 -14 -13 -12 -10 | Resourcefulness 1 2 3 4 5 6 7 | Allows one to play lyre songs, if they have the music memory and songs equipped. | Play Always: 70% |
{{GenerateUtilityTable|LightSource}}
Name | Movement Speed | Damage on Hit | Effect | Action Movement Penalty | Slowdown On Hit |
---|---|---|---|---|---|
-10 | While throwing, move speed is reduced by -20. | Throw Always: 97% | |||
Throw Always: 97% | |||||
-10 | While throwing, move speed is reduced by -20. | All Actions Always: 97% | |||
10 | Throw Always: 97% Primary Attacks Mid Attack: 98.5% Otherwise: 97% | Hitslow -7% for 0.5s | |||
LanternThrow Always: 97% | Hitslow for s |
{{GenerateUtilityTable|Throwable}}
Name | Class | Movement Speed | Damage on Hit | Effect | Action Movement Penalty | Slowdown On Hit |
---|---|---|---|---|---|---|
Barbarian Fighter Bard | -10 | 10 11 12 13 14 15 16 | Throw a francisca axe at the target location. | Primary Attack 1 Always: 75% | Hitslow -35% for 1s | |
Rogue Wizard Bard | -10 | 10 11 12 13 14 15 16 | Throw a throwing knife at the target location. | Primary Attack 1 Always: 85% | Hitslow -25% for 1s |
{{GenerateUtilityTable|Mining}}
Name | Movement Speed | Damage on Hit | Stats | Effect | Action Movement Penalty | Slowdown On Hit |
---|---|---|---|---|---|---|
-45 | 25 26~27 28~29 30~31 32 33 35~36 | Regular Interaction Speed 1% 3% 5% 10% 15% 20% 25% | Enables the player to interact with mining nodes to produce ore. | Attack 1 Mid Attack: 82.5% Otherwise: 65% | Hitslow -7% for 0.5s |