Editing User:Samlovesmath/Sandbox

Warning: You are not logged in. Once you make an edit, a temporary account will be created for you. Learn more. Log in or create an account to continue receiving notifications after this account expires, and to access other features.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then publish the changes below to finish undoing the edit.
Latest revision Your text
Line 1: Line 1:
__TOC__
__TOC__
=Infobox Tests=
=Infobox Tests=
(Note: Full experience with [[Wiki_Redesign.css]] recommended.)
(Note: Only properly viewable with [[User:Samlovesmath/common.css]], and with site's default Common.css disabled.)


===Hero Infobox v2===
===Lady Geist===
This template ([[User:Samlovesmath/Template:Infobox_hero]]) uses the following:
'''Uses new variables:'''
* [[User:Samlovesmath/Template:Infobox_hero/styles.css]]
* color1 (#098959)&nbsp;&nbsp;<span style="font-size:small; opacity:50%">*quote color</span>
* [[User:Samlovesmath/Template:Infobox_hero/themes.css]]
* color1_grad (#0F6D4C)&nbsp;&nbsp;<span style="font-size:small; opacity:50%">*lower background gradient color</span>
* [[Module:Sandbox/Samlovesmath/Infobox_hero]]
* color2 (#6DD48C)&nbsp;&nbsp;<span style="font-size:small; opacity:50%">*same hue as roster select, brightened for clarity</span>
* [[Data:Sandbox/Samlovesmath/Infobox_hero.json]]
* background image ([[:File:Geist_select_background.png|Geist_select_background.png]])




<div><tabber style="width:100%;">
'''Todos:'''
|-| Abrams=
* Fix Stat key word links--certain parts that stand for the same thing point to different places
{{User:Samlovesmath/Template:Infobox hero
* Fix name logo resizing--unstandard sizing allows images to stretch too high. Check for height instead of width?
| key = hero_atlas
**Also make the square behind thumbnail remain the same size even if this error occurs?
| voice_actor = Samoa Joe
* Add class name to bullet/spirit superscript template on certain stats (ex. +48 [heart-gun image]) to make CSS for padding displacement to avoid clipping over where it is placed
| release_date = April 24, 2024
* Fix/finish quote replacement
| codenames = Atlas; Bull
* Lang.json:
}}
** Change Citadel_HeroPage_BaseStats -- BASE STATS ➔ BASE STATISTICS
 
 
'''Errors noted:'''
* Weapon Stat property "Max Range" is a manual template input for heroes such as [[Bebop]]. Future updates to this value would have to be updated manually. Make it properly implemented in HeroData for automatic changes? (ask Sur/LVL/Domo?)
 
<span style="font-size:small; opacity:50%">'''''WIP -- Last edited: Mar 22, 2026'''''</span>
<!--
-->{{#vardefine:key|hero_ghost}}<!-- hero keyname
 
-->{{#vardefine:color1| #098959 }} <!-- custom color1
-->{{#vardefine:color1_grad|\#0F6D4C}} <!-- custom color1 (gradient end)
-->{{#vardefine:color2|\#6DD48C}} <!-- custom color2
-->{{#vardefine:text_title|\#DCFFE7}} <!-- title color for text
-->{{#vardefine:stats_text|\#bbffbf}} <!-- text color for stat/info dropdowns
-->{{#vardefine:stats_back|\#12301aA3}} <!-- background color for stat/info dropdowns
 
-->{{#vardefine:voice_actor|Abigail Marlowe}} <!-- voice actor
-->{{#vardefine:release_date|April 24, 2024}} <!-- release date
-->{{#vardefine:codenames|Geist; Ghost; Spectre}} <!-- code names
-->{{#vardefine:hero_key_or_en|{{#var:key}}}} <!-- en
-->{{#vardefine:hero_en|{{#invoke:Lang|get_string|{{#var:key}}|lang_code_override=en}}}}<!-- en
 
-->{{#vardefine:quotemark|"}} <!-- for inserting into html
 
--{{#vardefine:max_range|31}} <!-- manual template value (weapon stats)
-->
 
<p>{{#invoke:Samlovesmath/Sandbox|get_theme_value|hero_ghost|color1}}</p>
 
<p>{{#invoke:Samlovesmath/Sandbox|get_theme_value|default|background_image}}</p>
 
<!---- Overridden Variable Styles ---->
<div class="infobox" style=
{{#var:quotemark}}
--infobox_th_text_title: {{#var:text_title}} !important,
--infobox_th_stats_text: {{#var:stats_text}} !important,
--infobox_th_stats_back: {{#var:stats_back}} !important
{{#var:quotemark}}>
 
<!---- Box Background ---->
<div class="infobox-background">[[File:Geist select background.png|x700px|right]]</div>
 
{| class="infobox-content" style="background-image: linear-gradient(180deg, {{#var:color1}}b3 300px, {{#var:color1_grad}} 700px); background-color: transparent;"
! colspan="2" class="infobox-title" style="font-size: {{{font-size|25px}}};" |
 
<!---- Title + Name Image + Hero Thumbnail ---->
<div class="infobox-title-hero" style="display: flex; justify-content: space-between">
<div class="infobox-title-hero-left"></div>
<div class="infobox-title-hero-middle">{{If lang|{{#ifeq: {{{no_name|}}}|true|{{{name|{{#invoke:Lang|get_string|{{#var:key}}}}}}}|{{Template:Icon/White|[[File:{{{name|{{#invoke:Lang|get_string|{{#var:key}}}}}}}_name.png|145px|class=notpageimage]]}}}}|{{{name|{{#invoke:Lang|get_string|{{#var:key}}}}}}}}}</div>
<div class="infobox-title-hero-right"><div>
<div class="infobox-title-hero-tornbox" style={{#var:quotemark}}background-color:{{#var:color2}};{{#var:quotemark}}></div>
<div class="infobox-title-hero-icon">{{#ifeq: {{{no_icon|}}}|true||[[Image:{{{icon|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|Name}}}}}.png|frameless|center|35px]]}}</div></div>
</div>
 
<!---- Hero Image Card ---->
|-
! colspan="2" class="infobox-image" style="margin:auto; border:none; --secondaryColor: {{#var:color2}};" |<div style="overflow:hidden; border-radius:15px; padding:0px; background-color: var(--secondaryColor); max-width:190px; height:auto; margin:auto; box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.7);">[[File:{{{card|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|Name}} card.png}}}|190px|alt={{{BASEPAGENAME}}}]]</div>
 
<!---- Weapon Name ---->
|-
!colspan="2" class="infobox-text-weapon infotext-bold" | <span class="infotext-title">{{#invoke:Lang|get_string|CitadelCategoryWeapon}}:</span><br><span class="infotext-bold infotext-bigger">''"{{{weapon_name|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|NameKey|true}}}}}"''</span>
 
<!---- "Base Statistics" ---->
|-
!colspan="2" class="infobox-text-stat-subtitle" style="border-top: solid 3px {{#var:color2}};"|
<span class="infotext-bold infotext-title infotext-big">{{#invoke:Lang|get_string|Citadel_HeroPage_BaseStats}}</span>


'''Abrams''' is a [[Hero]] in ''[[Deadlock]]''. He is a hard-boiled, hard-hitting bruiser of a character that focuses on engaging groups of enemies and relying on his high health, high damage output, and life draining ability to stay in the fight. With a powerful area stun and a devastating shoulder charge, Abrams can isolate fragile targets from the rest of the team and set-up his more damaging allies to finish them off.
<!---- Weapon Dropdown ---->
|-
! colspan="2" class="infobox-subsection infobox-dropdown infobox-dropdown-weapon" |
{| class="mw-collapsible mw-collapsed infobox-subsection-child"
|+ class="infobox-dropdown-header" | [[Stats#Weapon|<span class="infotext-bold infobox-dropdown-title">{{#invoke:Lang|get_string|CitadelHeroStats_Weapon}}</span>]]
|-
<!---- Damage per second ---->
| [[Damage per second{{If_lang}}|<span>{{#invoke:Lang|get_string|DPS_label}}</span>]]:
| style="white-space: nowrap;" | {{Icon/Brown|[[File:Damage.png|20px|link=Damage per second]]|{{{dps|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|DPS|3}}}}}}}
|-
<!---- Bullet Damage ---->
| [[Bullet Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletDamage}}</span>]]:
| style="white-space: nowrap; padding-right: 5px;" | {{Icon/Brown|[[File:Bullet damage.png|20px|link=Bullet Damage]]|{{{bullet_damage|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|BulletDamage|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|BulletDamage}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|BulletDamage}}}}
|-
<!---- Ammo ---->
| [[Ammo{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_ClipSizeBonus}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Clip size icon.png|20px|link=Ammo]]|{{{ammo|{{#ifeq: {{{no_ammo|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|ClipSize|3}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|ClipSize}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|ClipSize}}}}}}}}}
|-
<!---- Bullets per sec ---->
| [[Damage per second{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_RoundsPerSecond}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Bullets per sec icon.png|20px|link=Fire Rate]]|{{{bullets_per_sec|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|RoundsPerSecond|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|RoundsPerSecond}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|RoundsPerSecond}}}}
|-
<!---- Reload Time ---->
| [[Reload Time{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_ReloadTime}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:AttributeIconReloadTime.png|20px|link=Reload Time]]|{{{reload_time|{{#ifeq: {{{no_ammo|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|ReloadTime|3}}s}}}}}}}
|-
<!---- Bullet Velocity ---->
| [[Bullet Velocity{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletSpeed}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:AttributeIconBulletSpeed.png|20px|link=Bullet Velocity]]|{{{bullet_velocity|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|BulletSpeed|3}}}}}m/s}}
|-
<!---- Light Melee ---->
| [[Melee Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_LightMeleeDamage}}</span>]]:
| style="white-space: nowrap; padding-right: 5px;"| {{Icon/Brown|[[File:Melee damage.png|20px|link=Melee attack#Light]]|{{{light_melee|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|LightMeleeDamage|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|LightMeleeDamage}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|LightMeleeDamage}}}}
|-
<!---- Heavy Melee ---->
| [[Melee Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HeavyMeleeDamage}}</span>]]:
| style="white-space: nowrap; padding-right: 5px;"| {{Icon/Brown|[[File:Melee damage.png|20px|link=Melee attack#Heavy]]|{{{heavy_melee|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|HeavyMeleeDamage|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|HeavyMeleeDamage}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|HeavyMeleeDamage}}}}
|-
<!---- Falloff Range ---->
| [[Falloff Range{{If_lang}}|<span>{{#invoke:Lang|get_string|CitadelHeroStats_Weapon_Falloff}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Brown||{{{range|{{#ifeq: {{{no_falloff|}}}|true|N/A|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|FalloffStartRange|2}}m <span style="color:#ecac19;">➔</span> {{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|FalloffEndRange|2}}m}}}}}}}
|-
<!---- Maximum Range (Manual Input) ---->
{{#if: {{#var:max_range|}} |
{{!}} Max Range:
{{!}} style="font-size: 16px;text-shadow: 1.5px 1.5px 0.8px rgba(0, 0, 0, 0.8);text-align:left"{{!}}{{Icon/Brown||31}}}}
|-
<!---- Crit Bonus Scale ---->
{{#ifexpr: {{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|CritDamageBonusPercent|3}} != 0 |
{{!}} [[Weapon Damage{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_CritDamageBonusScale}}</span>]]:
{{!}} style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Crit reduction.png|20px|link=Weapon Damage#Headshots]]|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|CritDamageBonusPercent|3}}%}}}}
|}


A capable and well-known detective of New York, Abrams solved crimes ranging from kidnappings to ritual murders. One day, a mysterious Tome was left on his desk with a note of "Don't let them have it" scrawled in Onyx blood; followed by car bombings and break-ins to his office. Now, Abrams is trying to figure out just what the hell is going on.
<!---- Vitality Dropdown ---->
|-| Dynamo=
|-
{{User:Samlovesmath/Template:Infobox hero
! colspan="2" class="infobox-subsection infobox-dropdown infobox-dropdown-vitality" |
| key = hero_dynamo
{| class="mw-collapsible mw-collapsed infobox-subsection-child"
| voice_actor = John Patrick Lowrie
|+ class="infobox-dropdown-header" | [[Stats#Vitality|<span class="infotext-bold infobox-dropdown-title">{{#invoke:Lang|get_string|CitadelHeroStats_Vitality}}</span>]]
| release_date = April 24, 2024
|-
| codenames = Prof_dynamo; Prof; Sumo; Jeong
<!---- Health ---->
}}
| style="padding-top: 8px;"| [[Health{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HealthAttribute}}</span>]]:
| style="white-space: nowrap; padding-right: 5px; padding-top: 8px;"| {{Icon/Grey|[[File:Health.png|20px|link=Health]]|{{{max_health|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|MaxHealth|3}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|MaxHealth}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|MaxHealth}}}}
|-
<!---- Health Regen ---->
| [[Health Regen{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_HealthRegen}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Health regen.png|20px|link=Health Regen]]|{{{health_regen|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|BaseHealthRegen|2}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|BaseHealthRegen}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|BaseHealthRegen}}}}
|-
<!---- Crit Resistance ---->
{{#if: {{{crit_reduction|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key_or_en}}|CritDamageReceivedPercent}} |
{{!}}[[Damage Resistance{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_CritDamageReceivedScale}}</span>]]:
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Crit reduction.png|20px|link=Damage Resistance]]|{{{crit_reduction|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|CritDamageReceivedPercent|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|CritDamageReceivedPercent}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|CritDamageReceivedPercent}}}}}}
|-
<!---- Bullet Resistance ---->
{{#if: {{{bullet_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key_or_en}}|BulletResist}} |
{{!}}[[Damage Resistance{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletArmorDamageReduction}}</span>]]:
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Bullet Armor.png|20px|link=Bullet Resist]]|{{{bullet_resist|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|BulletResist|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|BulletResist}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|BulletResist}}}}}}
|-
<!---- Spirit Resistance ---->
{{#if: {{{spirit_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key_or_en}}|TechResist}} |
{{!}}[[Damage Resistance{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_TechArmorDamageReduction}}</span>]]:
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Spirit Armor.png|20px|link=Spirit Resist]]|{{{spirit_resist|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|TechResist|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|TechResist}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|TechResist}}}}}}
|-
<!---- Melee Resistance ---->
{{#if: {{{melee_resist|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key_or_en}}|MeleeResist}} |
{{!}}[[Damage Resistance{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_MeleeResist}}</span>]]:
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:Melee damage.png|20px|link=Damage Resistance#Melee Resist]]|{{{melee_resist|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|MeleeResist|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|MeleeResist}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|MeleeResist}}}}}}
|-
<!---- Bullet Lifesteal ---->
{{#if: {{{bullet_lifesteal|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key_or_en}}|BulletLifesteal}} |
{{!}}[[Lifesteal{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_BulletLifesteal}}</span>]]:
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:AttributeIconBulletLifesteal.png|20px|link=Lifesteal#Bullet Lifesteal]]|{{{bullet_lifesteal|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|BulletLifesteal|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|BulletLifesteal}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|BulletLifesteal}}}}}}
|-
<!---- Spirit Lifesteal ---->
{{#if: {{{spirit_lifesteal|}}}{{#invoke:HeroData|hero_has_stat|{{#var:hero_key_or_en}}|SpiritLifesteal}} |
{{!}}[[Lifesteal{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_SpiritLifesteal}}</span>]]:
{{!}}style="white-space: nowrap;"{{!}}{{Icon/Grey|[[File:AttributeIconBulletLifesteal.png|20px|link=Lifesteal#Spirit Lifesteal]]|{{{spirit_lifesteal|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|SpiritLifesteal|3}}}}}%{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|SpiritLifesteal}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|SpiritLifesteal}}}}}}
|-
<!---- Move Speed ---->
| [[Move Speed{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_RunSpeed}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Move speed.png|20px|link=Move Speed]]|{{{move_speed|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|MaxMoveSpeed|2}}}}}m/s{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|MaxMoveSpeed}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|MaxMoveSpeed}}}}
|-
<!---- Sprint Speed ---->
| [[Move Speed#Sprint{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_SprintSpeed}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Move speed sprint.png|20px|link=Move Speed#Sprint]]|{{{sprint_speed|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|SprintSpeed|2}}}}}m/s{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|SprintSpeed}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|SprintSpeed}}}}
|-
<!---- Dash Speed ---->
| [[Stamina#Dash_Speed{{If_lang}}|<span>{{#invoke:Lang|get_string|DashSpeed_label}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Springy_boots_icon.png|20px|link=Stamina#Dash_Speed]]|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|GroundDashSpeed|3}}s{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|GroundDashSpeed}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|GroundDashSpeed}}}}
|-
<!---- Dash Speed ---->
| [[Stamina{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_Stamina}}</span>]]:
| style="white-space: nowrap;"| {{Icon/Grey|[[File:Springy_boots_icon.png|20px|link=Stamina]]|{{{stamina|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|Stamina|2}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|Stamina}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|Stamina}}}}
|-
<!---- Dash Speed ---->
| [[Stamina{{If_lang}}|<span>{{#invoke:Lang|get_string|StatDesc_StaminaCooldown}}</span>]]:
| style="white-space: nowrap;"|{{Icon/Grey|[[File:AttributeIconTechDuration.png|20px|link=Stamina#Cooldown]]|{{{stamina_cooldown|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|StaminaCooldown|2}}}}}s{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|StaminaCooldown}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|StaminaCooldown}}}}
|}


Professor '''Dynamo''' is a [[Hero]] in ''[[Deadlock]]''. He is a man of wit, using his brain and his brawn to provide support to his teammates by healing them, teleporting them, knocking his opponents into the air, and when the time is right, unleashing a Singularity which can drastically shift the tides of battle.
<!---- Spirit Dropdown ---->
|-
! colspan="2" class="infobox-subsection infobox-dropdown infobox-dropdown-spirit" |
{| class="mw-collapsible mw-collapsed infobox-subsection-child"
|+ class="infobox-dropdown-header" | [[Stats#Vitality|<span class="infotext-bold infobox-dropdown-title">{{#invoke:Lang|get_string|CitadelHeroStats_Spirit}}</span>]]
|-
| style="padding-top: 8px;"| [[Spirit Power{{If_lang}}|<span>{{#invoke:Lang|get_string|SpiritPower_label}}</span>]]:
| style="white-space: nowrap; padding-right: 4px; padding-top: 8px;"| {{Icon/Grey|[[File:Spirit_scaling.png|20px|link=Spirit Power]]|{{{spirit_power|{{#invoke:HeroData|get_hero_var|{{#var:hero_key_or_en}}|TechPower|2}}}}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Level|TechPower}}{{#invoke:HeroData|get_hero_scalar|{{#var:hero_key_or_en}}|Spirit|TechPower}}}}
|}


Once just a mere professor for Columbia College, his life would change after letting his ego get the best of him when he and his team of professors were studying an Astral Gate in New York. Dynamo ventured too close to the anomaly which obliterated his body and reduced it to that of a dying star. But that didn't stop him, because although his body may be gone, his spirit and curiosity live on, with his condition only further fueling his desire for knowledge and a way out of his metal body.
<!---- "Information" ---->
|-| Lady Geist=
|-
{{User:Samlovesmath/Template:Infobox hero
!colspan="2" class="infobox-text-stat-subtitle"|
| key = hero_ghost
<span class="infotext-bold infotext-title infotext-big">{{#invoke:Dictionary|translate|Information}}</span>
| voice_actor = Abigail Marlowe
|-
| release_date = April 24, 2024
! colspan="2" class="infobox-subsection" |
| codenames = Geist; Ghost; Spectre
{| class="infobox-subsection-child"
|-
<!---- Pronouns (Manual Input) ---->
{{#if: {{{pronouns|}}} |
{{!}}Pronouns:
{{!}}{{{pronouns}}}
}}
}}
|-
<!---- Voice Actor (Manual Input) ---->
{{#if: {{#var:voice_actor}} |
{{!}}{{#invoke:Dictionary|translate|VoiceActor}}:
{{!}}{{#var:voice_actor}}
}}
|-
<!---- Release Date (Manual Input) ---->
{{#if: {{#var:release_date}} |
{{!}}[[Heroes by release{{If_lang}}|<span>{{#invoke:Dictionary|translate|ReleaseDate}}</span>]]:
{{!}}{{#var:release_date}}
}}
|-
<!---- Codenames (Manual Input) ---->
{{#if: {{#var:codenames}} |
{{!}}{{#invoke:Dictionary|translate|Codenames}}:
{{!}}{{#var:codenames}}
}}
|}


'''Lady Geist''' is a [[Hero]] in ''[[Deadlock]]''. A [[wikipedia:Socialite|socialite]] with a necromantic pact, Lady Geist consumes her own health for her abilities while draining the life away from opponents. Sacrificing her life force to launch Essence Bombs and Malice "Blood Shards", Lady Geist can regain lost health with Life Drain, sapping enemy heroes and [[Unit|units]] of their health. Her Soul Exchange swaps health values with an enemy hero, turning the odds against them for a killing blow.
|}
</div>


The Toast of the Town, Lady Geist was famed by all and invited to every ball and gala in the city... until her beauty faded in her old age and left her with only memories and stories of her glory. In desperation, she formed a pact with a powerful spirit and bound it by powerful wards until she was safe and young again. All she needs to do now is feed on the life force of her fellows to maintain her beauty... and hope desperately that the [[Oathkeeper]] will stay bound.
<!---- Search Engine Optimization ---->
|-| Rem=
{{#seo:
{{User:Samlovesmath/Template:Infobox hero
|keywords=Deadlock, {{{name|{{#invoke:Lang|get_string|{{{key}}}}}}}}, hero, abilities, wiki, MOBA, shooter, character, heroes, game, valve
| key = hero_familiar
|image_alt = A portrait image of {{{name|{{#invoke:Lang|get_string|{{{key}}}}}}}} from the video game Deadlock
| release_date = January 26, 2026
| codenames = Familiar
}}
}}
'''Rem''' is a [[Hero]] in ''[[Deadlock]]''. An accidental stowaway from the world of dreams, Rem has found himself stranded in the city that never sleeps. Pillow fights are Rem's preferred form of conflict, tossing his favorite pillow at enemies to knock them back when they're getting too close. His friends, however, he likes to keep nearby - leaping to their aid when things get dicey and taking a quick nap on their shoulder. His Lil Helpers are curious creatures, taking interest in everything the streets of New York have to offer, and cheering on his allies as they go. Ultimately when Naptime hits, no one will be able to keep their eyes open.


Rem was released on [[Update:January 26, 2026|January 26, 2026]] as the first winner of the [[Update:January 22, 2026|Old Gods, New Blood]] update contest.
<!---- Quotes rendering ---->
|-| Sinclair=
{{#ifeq: {{{no_summary|}}}|true||{{Quotation||<b>{{#invoke:HeroData|get_hero_tag|{{#var:hero_en}}|1}} - {{#invoke:HeroData|get_hero_tag|{{#var:hero_en}}|2}} - {{#invoke:HeroData|get_hero_tag|{{#var:hero_en}}|3}}</b>}}}}
{{User:Samlovesmath/Template:Infobox hero
| key = hero_magician
| release_date = January 17, 2025
| codenames = Magician
| pronouns = They/Them
| voice_actor = Harron Atkins (Henry);
Andia Winslow (Savannah)
}}
</tabber></div>
Please note that all contributions to The Deadlock Wiki are considered to be released under the Creative Commons Attribution-NonCommercial-ShareAlike (see Deadlock:Copyrights for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource. Do not submit copyrighted work without permission!
Cancel Editing help (opens in new window)

This page is a member of a hidden category: