<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:base="https://sami.shakkour.dev/" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    
    <title>Sami Shakkour&#39;s Blog</title>
    <link>https://sami.shakkour.dev/</link>
    <atom:link href="https://sami.shakkour.dev/blog/rss.xml" rel="self" type="application/rss+xml" />
    <description>Sami&#39;s little corner :3</description>
    <language>en</language>
    <item>
      <title>String Parser</title>
      <link>https://sami.shakkour.dev/blog/2025/string-formatter/</link><description>&lt;p&gt;The philosophy behind making a string parser in any programming language using simple index inspection, this type of formatting was done for the &lt;a href=&quot;https://github.com/SamiSha99/OnlineCommunication/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Online Communication&lt;/a&gt; Mod which I&#39;ve released in June 2024. Looking back it, I think its a very rough implementation and there&#39;s technically a way WAY better approach than the one I wrote but I think engine limitation was the largest hurdle here of course.&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/blog/string-formatter/thumbnail.png&quot; data-description=&quot;String Parser thumbnail&quot; data-gallery=&quot;media-1&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/N9HM3EusuO-1280.webp&quot; alt=&quot;String Parser thumbnail&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1280&quot; height=&quot;640&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;For this page, the parser was made in Unreal Engine 3 for A Hat in Time.&lt;/p&gt;
&lt;h2 id=&quot;background&quot;&gt;Background&lt;/h2&gt;
&lt;p&gt;A Hat in Time uses a &lt;code&gt;HUD&lt;/code&gt; system known as &lt;code&gt;Hat_HUD&lt;/code&gt; where it renders Objects known as &lt;code&gt;Hat_HUDElement&lt;/code&gt;, each element handles everything on their side, this is done to make it easier for the developers and modders to add/remove UI content with simple code requests and avoidining overcluttering the &lt;code&gt;HUD&lt;/code&gt; class rendering everything at once or having a thousands upon thousands lines of code in one file.&lt;/p&gt;
&lt;p&gt;Unreal Engine 3 supports text coloring in through changing the Color Channels where you call &lt;code&gt;SetDrawColor(R,G,B,A?=255);&lt;/code&gt; for the &lt;code&gt;Canvas&lt;/code&gt; before rendering the text where all inputs take a number between &lt;code&gt;0 - 255&lt;/code&gt; on the &lt;b style=&quot;color:red;&quot;&gt;R&lt;/b&gt;&lt;b style=&quot;color:green;&quot;&gt;G&lt;/b&gt;&lt;b style=&quot;color:blue;&quot;&gt;B&lt;/b&gt;&lt;b style=&quot;color:white;&quot;&gt;A&lt;/b&gt; channel scale, &lt;code&gt;A&lt;/code&gt; (alpha) is optional and if not specified its always &lt;code&gt;255&lt;/code&gt; (so no transparency), e.g. &lt;code&gt;SetDrawColor(255,0,0)&lt;/code&gt; will set the text &lt;b style=&quot;color:red;&quot;&gt;red&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;Setting the draw color to a different color will not change the previously drawn text color.&lt;/p&gt;
&lt;h2 id=&quot;limitations&quot;&gt;Limitations&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;HUD&lt;/code&gt; in Unreal Engine 3 is purely point coordinates rendering, if I ask it to render &amp;quot;Hello, World!&amp;quot; in position &lt;code&gt;(X=300, Y=600)&lt;/code&gt; on my screen and &amp;quot;how are you?&amp;quot; in position &lt;code&gt;(X=330, 600)&lt;/code&gt;, both texts will overlap with the latter text rendered ontop of the former text, so I built a solution where I check textsize and offset it correctly and &amp;quot;as accurately as possible&amp;quot; to make sure it looks right.&lt;/p&gt;
&lt;p&gt;Because of this, the HUD doesn&#39;t understand what a new line is, this implementation also solves this issue by making a box size where it will break to the next line when its required.&lt;/p&gt;
&lt;h2 id=&quot;prologue&quot;&gt;Prologue&lt;/h2&gt;
&lt;p&gt;Online Communication is a mod that allows players to write their actions they&#39;ve done in real time to communicate it better with others, from emoting &amp;quot;over here!&amp;quot; and stickers to pinging spots to tell others in the lobby what they want to do, players cannot directly and literally write into the chat because every Chat Log that is inputted is a localization key which contains references to the text its suppose to render including parameters required to replace.&lt;/p&gt;
&lt;pre class=&quot;language-ini&quot;&gt;&lt;code class=&quot;language-ini&quot;&gt;&lt;span class=&quot;token section&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token section-name selector&quot;&gt;general&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;token key attr-name&quot;&gt;TimePieceGet&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token value attr-value&quot;&gt;[color=#528BFF][color=yellow_lemon][announcer][/color] collected the[icon=TimePiece]for @{~LC|[act_name]}, congratulations![/color]&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;So if the passed localization key is invalid on their clients side, this input is dumped away and never rendered to the client, this is a security protocol to avoid abuse such as the ability to send malicious messages freely.&lt;/p&gt;
&lt;p&gt;This message is parsed to achieve a message that looks beautifully rendered with colors and icons that is clear to other players.&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/blog/string-formatter/debug_message.png&quot; data-description=&quot;Example of a parsed debug chat message&quot; data-gallery=&quot;media-2&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/BIfGRr-01g-509.webp&quot; alt=&quot;Example of a parsed debug chat message&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;509&quot; height=&quot;80&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;introduction&quot;&gt;Introduction&lt;/h2&gt;
&lt;p&gt;Essentially the most important part of string parsing finding two points in a string and replace it with different content similar to HTML and Markdown an &lt;strong&gt;opening/closing tag&lt;/strong&gt; or a &lt;strong&gt;special tag&lt;/strong&gt; (like &lt;code&gt;&amp;lt;img /&amp;gt;&lt;/code&gt; or &lt;code&gt;&amp;lt;br /&amp;gt;&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;First I made 2 structs, the one called &lt;code&gt;OCLogInfo&lt;/code&gt; containing the Log&#39;s information for each message, the other struct &lt;code&gt;OCSegment&lt;/code&gt; which contains the text, icons, coloring and so on, &lt;code&gt;OCLogInfo&lt;/code&gt;&lt;/p&gt;
&lt;pre class=&quot;language-java&quot;&gt;&lt;code class=&quot;language-java&quot;&gt;struct &lt;span class=&quot;token class-name&quot;&gt;OCLogInfo&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;String&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;RawText&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Raw unprocessed text&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Color&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Main color&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Array&lt;/span&gt;&lt;span class=&quot;token generics&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;OCSegment&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Segments&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;float&lt;/span&gt; lifetime&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Time until it fades from the chat&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;float&lt;/span&gt; shake&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// When the message is updated or merged with a duplicate&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; bool isNewLine&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Only true when this log is required to linebreak due to limits&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Combo&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// How many times this message was casted by the **same** exact user (stops chat log spam)&lt;/span&gt;
    structdefaultproperties
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token class-name&quot;&gt;Color&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;R&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;G&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;B&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;255&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        lifetime &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;5&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token class-name&quot;&gt;Combo&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

struct &lt;span class=&quot;token class-name&quot;&gt;OCSegment&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; string &lt;span class=&quot;token class-name&quot;&gt;Text&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Surface&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Icon&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Color&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Color&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; &lt;span class=&quot;token comment&quot;&gt;// Segment color&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;var&lt;/span&gt; bool &lt;span class=&quot;token class-name&quot;&gt;AddSpace&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    structdefaultproperties
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token class-name&quot;&gt;AddSpace&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&quot;finding-an-opening-tag&quot;&gt;Finding an Opening Tag&lt;/h2&gt;
&lt;p&gt;Tags are defined as &lt;code&gt;[tag]&lt;/code&gt; and &lt;code&gt;[/tag]&lt;/code&gt; similar to HTML or more accurately &lt;a href=&quot;https://en.wikipedia.org/wiki/BBCode&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;BBCode&lt;/a&gt;, we start by looking for an opening tag so we can start our parsing, for this example I supported two types, &lt;code&gt;[color]&lt;/code&gt; and &lt;code&gt;[icon]&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Both tags work as follows:&lt;/p&gt;
&lt;p&gt;Color has a closing tag &lt;code&gt;[/color]&lt;/code&gt;.&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;[color=red]My red text![/color]
[color=#FFFF00]My Yellow text![/color]
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;But icon doesn&#39;t, similar to &lt;code&gt;&amp;lt;img /&amp;gt;&lt;/code&gt;!&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;[icon=TimePiece]
[icon=TimePiece|Amount: 42]
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;To find a tag, we need to find the first index of &lt;code&gt;[&lt;/code&gt; and &lt;code&gt;]&lt;/code&gt;, this is where &lt;code&gt;GetTag()&lt;/code&gt; comes in.&lt;/p&gt;
&lt;pre class=&quot;language-java&quot;&gt;&lt;code class=&quot;language-java&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;static&lt;/span&gt; function string &lt;span class=&quot;token class-name&quot;&gt;GetTag&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;coerce string msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; out &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    local &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; tagbegin&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; tagend&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token class-name&quot;&gt;InStrPeek&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; tagbegin&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;[&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token class-name&quot;&gt;InStrPeek&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; tagend&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;]&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Mid&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; tagbegin &lt;span class=&quot;token operator&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; tagend &lt;span class=&quot;token operator&quot;&gt;-&lt;/span&gt; tagbegin &lt;span class=&quot;token operator&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;&lt;code&gt;InStrPeek()&lt;/code&gt; is very recurring function call, it takes a message, check if it contains a certain string from the start position (if specified) and returns &lt;code&gt;true&lt;/code&gt; if valid but also sets 2nd parameter &lt;code&gt;pos&lt;/code&gt; to the index where &lt;code&gt;compare&lt;/code&gt; was found.&lt;/p&gt;
&lt;pre class=&quot;language-java&quot;&gt;&lt;code class=&quot;language-java&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// Set pos to index of compare if found&lt;/span&gt;
&lt;span class=&quot;token comment&quot;&gt;// pos = -1 cannot find and also returns false if so&lt;/span&gt;
&lt;span class=&quot;token keyword&quot;&gt;static&lt;/span&gt; function bool &lt;span class=&quot;token class-name&quot;&gt;InStrPeek&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;string msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; out &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; pos&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; string compare&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; optional &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; startpos &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    pos &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;InStr&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; compare&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Max&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;startpos&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; pos &lt;span class=&quot;token operator&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;When we get the tag content inside &lt;code&gt;[&lt;/code&gt; and &lt;code&gt;]&lt;/code&gt;, we need to start finding the cut points for the segment that contains this info by looking for its closing tag if it has one, in this case &lt;code&gt;[color]&lt;/code&gt; has a closing tag, but &lt;code&gt;[icon]&lt;/code&gt; doesn&#39;t.&lt;/p&gt;
&lt;p&gt;In the &lt;code&gt;FindSegmentCutPoints()&lt;/code&gt; function, we are looking for the closing tag, looking at this again I could have definitely wrote this way better to avoid hardcoding &lt;code&gt;[color]&lt;/code&gt; and &lt;code&gt;[icon]&lt;/code&gt; checks to something more organized and better, sorry!&lt;/p&gt;
&lt;pre class=&quot;language-java&quot;&gt;&lt;code class=&quot;language-java&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;static&lt;/span&gt; function bool &lt;span class=&quot;token class-name&quot;&gt;FindSegmentCutPoints&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;string msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; out &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; out &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; end&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; string compare&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    local string compareBreak&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; rawTag&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    rawTag &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; compare&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    compare &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;[&quot;&lt;/span&gt;$compare$&lt;span class=&quot;token string&quot;&gt;&quot;]&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    start &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    end &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;-&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    &lt;span class=&quot;token class-name&quot;&gt;InStrPeek&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; compare&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;InStr&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;rawTag&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;color=&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;class&lt;/span&gt;&#39;&lt;span class=&quot;token class-name&quot;&gt;SS_Color&lt;/span&gt;&#39;&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token keyword&quot;&gt;static&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;token function&quot;&gt;IsValidColor&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;Repl&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;rawTag&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;color=&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        compareBreak &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;[/color]&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;InStr&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;rawTag&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;icon=&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;GetIconByName&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;Repl&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;rawTag&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;icon=&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;None&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        end &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; start &lt;span class=&quot;token operator&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Len&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;compare&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;

    &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;start &lt;span class=&quot;token operator&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        end &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;

    end &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;GetCorrectBreakPointPos&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; start&lt;span class=&quot;token operator&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;[color=&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; compareBreak&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;IsValidTag&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;rawTag&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        start &lt;span class=&quot;token operator&quot;&gt;+=&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Len&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;compare&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;h2 id=&quot;the-correct-closing-tag&quot;&gt;The Correct Closing Tag&lt;/h2&gt;
&lt;p&gt;Tags must follow a nesting rules similar to parentheses &lt;code&gt;()&lt;/code&gt; and brackets &lt;code&gt;[]&lt;/code&gt;. Say for example &lt;code&gt;[color][color][/color][/color]&lt;/code&gt; the closing tag for the first &lt;code&gt;[color]&lt;/code&gt; is the outmost &lt;code&gt;[/color]&lt;/code&gt; while the 2nd &lt;code&gt;[color]&lt;/code&gt; closing tag is contained in the innermost &lt;code&gt;[/color]&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;The solution takes a stack state approach, we have an integer called &lt;code&gt;stackstate&lt;/code&gt; that starts at &lt;code&gt;1&lt;/code&gt; because we already found our opening tag, we do the following:&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/blog/string-formatter/stack_example.png&quot; data-description=&quot;Diagram of the stack state approach for finding the correct closing tag&quot; data-gallery=&quot;media-3&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/qAS2_Qsx4K-773.webp&quot; alt=&quot;Diagram of the stack state approach for finding the correct closing tag&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;773&quot; height=&quot;328&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;When we hit an opening tag we &lt;code&gt;stackstate++;&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;When we hit a closing tag we &lt;code&gt;stackstate--;&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Every time an increment or decrement happens we check if &lt;code&gt;stackstate &amp;gt; 0&lt;/code&gt; if &lt;code&gt;true&lt;/code&gt; we continue our search.&lt;/li&gt;
&lt;li&gt;If &lt;code&gt;stackstate == 0&lt;/code&gt; then we found our closing tag and we can stop searching.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;GetCorrectBreakPointPos()&lt;/code&gt; solves this problem.&lt;/p&gt;
&lt;pre class=&quot;language-java&quot;&gt;&lt;code class=&quot;language-java&quot;&gt;&lt;span class=&quot;token comment&quot;&gt;// iterates each hit for a start and end tag&lt;/span&gt;
&lt;span class=&quot;token comment&quot;&gt;// finding a start tag results in increasing the stackstate by 1&lt;/span&gt;
&lt;span class=&quot;token comment&quot;&gt;// finding an end tag results in decreasing the stackstate by 1&lt;/span&gt;
&lt;span class=&quot;token comment&quot;&gt;// If we reach 0, we found our end tag position under &quot;formatEndPoint&quot;&lt;/span&gt;
&lt;span class=&quot;token comment&quot;&gt;// Returns postion of the matching closing tag, returns -1 if it couldn&#39;t find it&lt;/span&gt;
&lt;span class=&quot;token keyword&quot;&gt;static&lt;/span&gt; function &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;GetCorrectBreakPointPos&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;string msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; startpos&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; string formatstart&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; string formatend&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    local &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; stackstate&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; retries&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; formatStartPoint&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; formatEndPoint&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;const&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;MAX_RETRIES&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;200&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    stackstate &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    &lt;span class=&quot;token keyword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;stackState &lt;span class=&quot;token operator&quot;&gt;&gt;&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; retries &lt;span class=&quot;token operator&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;MAX_RETRIES&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token class-name&quot;&gt;InStrPeek&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; formatStartPoint&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; formatstart&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; startpos&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token class-name&quot;&gt;InStrPeek&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; formatEndPoint&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; formatend&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;   startpos&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

        &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;formatEndPoint &lt;span class=&quot;token operator&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

        &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;formatEndPoint &lt;span class=&quot;token operator&quot;&gt;&amp;lt;&lt;/span&gt; formatStartPoint &lt;span class=&quot;token operator&quot;&gt;||&lt;/span&gt; formatStartPoint &lt;span class=&quot;token operator&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
            stackState&lt;span class=&quot;token operator&quot;&gt;--&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
            startPos &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; formatEndPoint&lt;span class=&quot;token operator&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;else&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;formatStartPoint &lt;span class=&quot;token operator&quot;&gt;&amp;lt;&lt;/span&gt; formatEndPoint &lt;span class=&quot;token operator&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt; formatStartPoint &lt;span class=&quot;token operator&quot;&gt;!=&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
            stackState&lt;span class=&quot;token operator&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
            startPos &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; formatStartPoint&lt;span class=&quot;token operator&quot;&gt;+&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;else&lt;/span&gt;
            retries&lt;span class=&quot;token operator&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;

    &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;retries &lt;span class=&quot;token operator&quot;&gt;&gt;=&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;MAX_RETRIES&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token class-name&quot;&gt;Print&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token string&quot;&gt;&quot;MAX RETRIES REACHED! ABORT!&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; stackState &lt;span class=&quot;token operator&quot;&gt;&gt;&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;?&lt;/span&gt; &lt;span class=&quot;token constant&quot;&gt;INDEX_NONE&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; formatEndPoint&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;With all of these in mind, we make a final function that takes all of these together to create a parser, the parser takes &lt;code&gt;OCsegment&lt;/code&gt; as its starting inputting, on its first iteration it contains one segment that inside &lt;code&gt;OCLogInfo&lt;/code&gt; segments array, this segment is repeatedly checked and breaked to more segments until it reaches the end of the string content.&lt;/p&gt;
&lt;pre class=&quot;language-java&quot;&gt;&lt;code class=&quot;language-java&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;static&lt;/span&gt; function bool &lt;span class=&quot;token class-name&quot;&gt;Parse&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;OCSegment&lt;/span&gt; segment&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; out &lt;span class=&quot;token class-name&quot;&gt;Array&lt;/span&gt;&lt;span class=&quot;token generics&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;OCSegment&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt; segments&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    local &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; end&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; i&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    local string msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; tag&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    msg &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;segment&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;Text&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;segments&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;Length&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    &lt;span class=&quot;token keyword&quot;&gt;while&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;i &lt;span class=&quot;token operator&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;50&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        tag &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;GetTag&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;FindSegmentCutPoints&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;msg&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; end&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; tag&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
            i&lt;span class=&quot;token operator&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
            &lt;span class=&quot;token keyword&quot;&gt;continue&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
        segments &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;CutSegments&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;segment&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; start&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; end&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; tag&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;break&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;

    &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Segments&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;length &lt;span class=&quot;token operator&quot;&gt;&gt;&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Because I knew that I wanted to convert a raw string to a &lt;code&gt;OCLogInfo&lt;/code&gt; type, I&#39;ve also made another function called &lt;code&gt;Build()&lt;/code&gt; which turns a raw string to to colorful text and icons.&lt;/p&gt;
&lt;pre class=&quot;language-java&quot;&gt;&lt;code class=&quot;language-java&quot;&gt;&lt;span class=&quot;token keyword&quot;&gt;static&lt;/span&gt; function &lt;span class=&quot;token class-name&quot;&gt;OCLogInfo&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;Build&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;string msg&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    local &lt;span class=&quot;token class-name&quot;&gt;OCLogInfo&lt;/span&gt; l&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    local &lt;span class=&quot;token class-name&quot;&gt;Array&lt;/span&gt;&lt;span class=&quot;token generics&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;OCSegment&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;&gt;&lt;/span&gt;&lt;/span&gt; parseResult&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    local &lt;span class=&quot;token keyword&quot;&gt;int&lt;/span&gt; i&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; u&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    &lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;l&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;RawText&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; msg&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;l&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;Segments&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;CreateSegment&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;l&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;RawText&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;

    &lt;span class=&quot;token keyword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;i &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; i &lt;span class=&quot;token operator&quot;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;l&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;Segments&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;Length&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; i&lt;span class=&quot;token operator&quot;&gt;++&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;if&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;!&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;Parse&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;l&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;Segments&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;i&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; parseResult&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token keyword&quot;&gt;continue&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;l&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;Segments&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;Remove&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;i&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        &lt;span class=&quot;token keyword&quot;&gt;for&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;u &lt;span class=&quot;token operator&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;parseResult&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;Length&lt;/span&gt; &lt;span class=&quot;token operator&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; u &lt;span class=&quot;token operator&quot;&gt;&gt;=&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt; u&lt;span class=&quot;token operator&quot;&gt;--&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;token class-name&quot;&gt;&lt;span class=&quot;token namespace&quot;&gt;l&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;&lt;/span&gt;Segments&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;InsertItem&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;(&lt;/span&gt;i&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; parseResult&lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;u&lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
        i&lt;span class=&quot;token operator&quot;&gt;--&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
    &lt;span class=&quot;token keyword&quot;&gt;return&lt;/span&gt; l&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;And there we go! We got a properly set chat message that has all its content when it comes to &lt;code&gt;[icon]&lt;/code&gt; and &lt;code&gt;[color]&lt;/code&gt; set correctly! Now all I have to do now is plug it into any program that can show string on your string with all these changes you applied in this string to be parsed into a new!&lt;/p&gt;
&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/blog/string-formatter/example_result.png&quot; style=&quot;display: block; margin: auto;&quot; data-description=&quot;Final parsed result showing colored text and icons&quot; data-gallery=&quot;media-4&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/psn-zUFZJG-416.webp&quot; alt=&quot;Final parsed result showing colored text and icons&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;416&quot; height=&quot;313&quot;&gt;&lt;/a&gt;
&lt;p&gt;In this example, you can see the formatting for icons and coloring is working as intended! For emotes its transforming &lt;code&gt;SamiSha: [color=lime]HI![/color]&lt;/code&gt; and &lt;code&gt;SamiSha: [color=lime]NOPE![/color]&lt;/code&gt; to their appropriate color! Similar to the icon too!&lt;/p&gt;
&lt;h2 id=&quot;closure&quot;&gt;Closure&lt;/h2&gt;
&lt;p&gt;Overall, this taught me a lot about the basics idea of formatting strings to be customized. This is a very basic explanation of it because the project itself has expanded tremendously, it has &lt;a href=&quot;https://github.com/SamiSha99/OnlineCommunication/wiki/Dynamic-Strings&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;dynamic strings&lt;/a&gt;, a pre-parse approach that replaces string content dynamically with player variable settings or cross referencing similar text (such as a localization variable) and replacing key defintition that were passed in the lobby correctly in the text before parsing it with the right content.&lt;/p&gt;
&lt;p&gt;I hope you found this post at least helpful and informative on this particular subject!&lt;/p&gt;
</description><pubDate>Thu, 30 Jan 2025 07:42:00 +0000</pubDate>
      <dc:creator>Sami Shakkour</dc:creator>
      <guid>https://sami.shakkour.dev/blog/2025/string-formatter/</guid>
    </item>
    <item>
      <title>hello world</title>
      <link>https://sami.shakkour.dev/blog/2025/hello-world/</link><description>&lt;p&gt;YOOOO!!!! GAMER??!?!? My first blog post ever!!! 👋👋 I hope I will be motivated enough to write stuff cool stuff here.&lt;/p&gt;
&lt;p&gt;something something shit inspirational speech here&lt;/p&gt;
</description><pubDate>Fri, 24 Jan 2025 18:49:00 +0000</pubDate>
      <dc:creator>Sami Shakkour</dc:creator>
      <guid>https://sami.shakkour.dev/blog/2025/hello-world/</guid>
    </item>
    <item>
      <title>PTR Patch Notes | April 1, 2021</title>
      <link>https://sami.shakkour.dev/blog/2021/hots-april-fools/</link><description>&lt;p&gt;An April Fools collaboration for Heroes of the Storm.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/bb23l7NLod-1280.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1280&quot; height=&quot;720&quot;&gt;&lt;/p&gt;
&lt;p&gt;Since people keep asking or assume a lot: &lt;strong&gt;I am not affiliated with Blizzard, this is unofficial&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Unlike the &lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/&quot;&gt;2020&lt;/a&gt; version, this was a collab with the community who made many artworks such as the &lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#blackthorne&quot;&gt;Blackthorne artwork&lt;/a&gt;, or videos and clips to &amp;quot;sell&amp;quot; the idea something big is coming, I wrote the patch notes, creating the Blackthorne ability icons and the fake &lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#steam&quot;&gt;Steam screenshot&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Reading this again is kinda painful IMO as there&#39;s a lot of grammar errors, I think it would be easy to say that &amp;quot;English isn&#39;t my first language&amp;quot; but no LMAO I speak it more than my mother language!!! A lot of weird sentences and I certainly could improve on it further but thankfully despite this being a clear indicator of it being fake, people took it as legitmate nonetheless and I am very glad that people liked it despite causing massive amount of hope only to be hit with dissapointment that it is well fake crap.&lt;/p&gt;
&lt;p&gt;What is ironic however, is that this patch note actually has some sense of truth behind, it isn&#39;t just &amp;quot;fake&amp;quot; it was based around data mined content known as &lt;code&gt;classic21&lt;/code&gt; which &lt;em&gt;fast forwarding a few months&lt;/em&gt; resulted in the &lt;a href=&quot;https://nexuscompendium.com/events/legends-of-the-past&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;Legends of the Past&lt;/a&gt; an event that represents Blizzard&#39;s classic games.&lt;/p&gt;
&lt;p&gt;Overall, this was the most fun I had in a collab despite being in a time where the game&#39;s content has stagnated to a halt, it showed me how passion can result in creating content that people would believe in while still be close on par with Blizzard&#39;s content quality.&lt;/p&gt;
&lt;p&gt;Personally, I&#39;m shit with closures so I will keep it simple: I will see you in the Nexus.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Credits:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Sami Shakkour | &lt;a href=&quot;https://www.reddit.com/user/SamiSha_/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;u/SamiSha_&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Twinkle SunnySun | &lt;a href=&quot;https://www.reddit.com/user/twinklesunnysun/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;u/twinklesunnysun&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Trolldaeron | &lt;a href=&quot;https://www.reddit.com/user/Archlichofthestorm/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;u/Archlichofthestorm&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;NotBelial | &lt;a href=&quot;https://www.reddit.com/user/NotBelial/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;u/NotBelial&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Gnueless | &lt;a href=&quot;https://www.reddit.com/user/Gnueless/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;u/Gnueless&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Spazzo | &lt;a href=&quot;https://www.reddit.com/user/Spazzo965/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;u/Spazzo965&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Special Thanks:&lt;/strong&gt; Labreris&lt;/p&gt;
&lt;p&gt;Patch Notes Link: &lt;a href=&quot;https://us.forums.blizzard.com/en/heroes/t/50529&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;https://us.forums.blizzard.com/en/heroes/t/50529&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;### BEGIN PATCH NOTES TRANSCRIPTION ###&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/patch-notes.jpg&quot; title=&quot;Heroes of the Storm Logo&quot; data-description=&quot;Heroes of the Storm Logo&quot; data-gallery=&quot;media-5&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ClJWSKT8Xw-760.webp&quot; alt=&quot;Heroes of the Storm Logo&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;760&quot; height=&quot;270&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Our next Heroes of the Storm patch has just hit the Public Test Realm and will be available for playtesting until April 8th. As always, if you encounter any bugs during your PTR play sessions, please stop by the &lt;a href=&quot;https://us.forums.blizzard.com/en/heroes/c/ptr-bug-report&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;PTR Bug Report&lt;/a&gt; forum to let us know about your experiences.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;top&quot;&gt;Quick Navigation:&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#blackthorne&quot;&gt;New Hero: Blackthorne&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#card-system&quot;&gt;Introducing Cards&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#steam&quot;&gt;Steam&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#general&quot;&gt;General&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#collection&quot;&gt;Collection&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#nova-rework&quot;&gt;Nova Rework&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#heroes&quot;&gt;Heroes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#bugfixes&quot;&gt;Bug Fixes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;blackthorne&quot;&gt;New Hero: Blackthorne (Ranged Assassin)&lt;/h1&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/2021/blackthorne.jpeg&quot; title=&quot;Blackthorne, King of Androth&quot; data-description=&quot;Blackthorne, King of Androth&quot; data-gallery=&quot;media-6&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/61si9obvLW-1280.webp&quot; alt=&quot;Blackthorne, King of Androth&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1280&quot; height=&quot;868&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;After years of waiting his destiny on Earth, Kyle Blackthorne has finally come home to face the galaxy&#39;s most terrifying mutant monsters and goblin hordes. With brute strength, animal cunning and a lead-spewing shotgun he&#39;s on a quest to reclaim his once peaceful Planet Tuul.&lt;/p&gt;
&lt;p&gt;With his home world saved, Blackthorne, now roaming the world again in pursuit of his destiny, finds himself in the Nexus.&lt;/p&gt;
&lt;h2 id=&quot;king-of-androth-trait&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/93FZUJnnvW-128.webp&quot; height=&quot;128&quot; alt=&quot;King of Androth&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;128&quot;&gt; King of Androth [Trait]&lt;/h2&gt;
&lt;p&gt;Basic attacks splash in a cone in front of you, each time you attack a target your damage increases against them by 5% up to 50%, lasts for 5 seconds per target.&lt;/p&gt;
&lt;h2 id=&quot;grenade-launcher-q&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/iQCSi35jpP-128.webp&quot; height=&quot;128&quot; alt=&quot;Grenade Launcher&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;128&quot;&gt; Grenade Launcher [Q]&lt;/h2&gt;
&lt;p&gt;Fire a grenade that explodes in the targeted location, dealing 200 damage and causing the next Basic Attack against hit enemies to deal 100% additional damage and heal for 20% of the damage dealt, increased to 40% against heroes.&lt;/p&gt;
&lt;h2 id=&quot;hover-bomb-w&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/4wICiuMXIi-128.webp&quot; height=&quot;128&quot; alt=&quot;Hover Bomb&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;128&quot;&gt; Hover Bomb [W]&lt;/h2&gt;
&lt;p&gt;Send forth a hovering bomb that can bounce off terrain and Structures. If an enemy hero gets close to the bomb, it detonates, dealing 140 damage in an area and slowing enemies hit by 35% for 2 seconds.&lt;/p&gt;
&lt;h2 id=&quot;dash-e&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/HauBE5ywVh-128.webp&quot; height=&quot;128&quot; alt=&quot;Dash&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;128&quot;&gt; Dash [E]&lt;/h2&gt;
&lt;p&gt;Dash to the target area. While Dashing and for 0.5 seconds, Blackthorne evade enemy Basic Attacks.&lt;/p&gt;
&lt;h2 id=&quot;wasp-r1&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/aV3GB5bX8E-128.webp&quot; height=&quot;128&quot; alt=&quot;Wasp&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;128&quot;&gt; Wasp [R1]&lt;/h2&gt;
&lt;p&gt;Deploy a Wasp with 300 health to an enemy Hero, dealing 240 damage over 3 seconds, then explodes dealing 400 damage to all nearby enemies and silencing them for 2 seconds.&lt;/p&gt;
&lt;h2 id=&quot;fire-bomb-r2&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/f_0yICYYIW-128.webp&quot; height=&quot;128&quot; alt=&quot;Fire Bomb&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;128&quot;&gt; Fire Bomb [R2]&lt;/h2&gt;
&lt;p&gt;Throw a Fire Bomb that explodes at a target location, dealing 300 damage in a large area and lighting it on fire, dealing 40 damage per second and slowing enemies by 50%. Lasts 5 seconds.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;card-system&quot;&gt;Introducing Cards&lt;/h1&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/2021/cards.jpeg&quot; title=&quot;Cards&quot; data-description=&quot;Cards&quot; data-gallery=&quot;media-7&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/RSf6KkeGFP-1024.webp&quot; alt=&quot;Cards&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1024&quot; height=&quot;400&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Cards is a new system that makes unlocking new heroes much easier and more fun, this should allow players to own heroes more quickly.&lt;/p&gt;
&lt;p&gt;Cards come in different types which can be:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Role Cards: Grants a hero in that specific role.&lt;/li&gt;
&lt;li&gt;Universe Cards: Grants a hero in that specific universe.&lt;/li&gt;
&lt;li&gt;Wild Cards: Grants any hero.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Cards will replace hero drops from loot chests and will &lt;strong&gt;allow you to unlock any unowned hero based on that Card&lt;/strong&gt;, if none is available the card will behave as a normal duplicate and grant shards.&lt;/p&gt;
&lt;p&gt;Additionally new players will get the following cards as they gradually level up their new account as follows:&lt;/p&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&quot;text-align:center&quot;&gt;Level&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;Card Reward&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;Rarity Level&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;5&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Wild Card&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Legendary&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;10&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Tank Card&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Epic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;20&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Healer Card&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Epic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;30&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Bruiser Card&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Epic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;40&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Ranged Assassin Card&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Legendary&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;50&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Support Card&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Legendary&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;To all our veterans and already above level 50, you will receive a role card for each role as follows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Legendary Ranged Assassin Card.&lt;/li&gt;
&lt;li&gt;Legendary Melee Assassin Card.&lt;/li&gt;
&lt;li&gt;Legendary Support Card.&lt;/li&gt;
&lt;li&gt;Epic Tank Card.&lt;/li&gt;
&lt;li&gt;Epic Healer Card.&lt;/li&gt;
&lt;li&gt;Epic Bruiser Card.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; In an attempt to make the nexus more accessible and grants more motivation to play, we came up with the Cards system! This should replace our previous level up system for new players and help them getting a nice boost in expanding their current rooster with at least 1 for each role, causing them to pretty much fill in every single role possible by playing the game normally.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;steam&quot;&gt;Steam&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;Heroes of the Storm and all Blizzard games are now available on Steam!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Enjoy your favorite games now with more unique features like a Community Hub, Guides, Groups, Achievements and even &lt;em&gt;another&lt;/em&gt; discussions page!&lt;/p&gt;
&lt;p&gt;(Steam Trading Cards, Wallpapers and Nexus custom made Emojis will be available shortly for personal usage)&lt;/p&gt;
&lt;p&gt;And don&#39;t worry about your progress, simply connect your Steam account with your Blizzard account to continue playing like you normally do!&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/8sIa4VWVyi-1280.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1280&quot; height=&quot;693&quot;&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We&#39;ll see you all in the Nexus!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;general&quot;&gt;General&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;Storm League&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Now requires a party of 2 or 3 to queue up in Storm League.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Heroes of the Storm has always been a team based game, and therefore we believe ranked play would be much better with everyone always being in a group.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;collection&quot;&gt;Collection&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;New Bundles (Limited Time Only!)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Blackthorne Heroic Bundle&lt;/li&gt;
&lt;li&gt;The RetCon Bundle&lt;/li&gt;
&lt;li&gt;Rock N Roll Racing Bundle&lt;/li&gt;
&lt;li&gt;Sgt. Lyons Bundle&lt;/li&gt;
&lt;li&gt;Classic Rehgar Bundle&lt;/li&gt;
&lt;li&gt;Racetrack Vikings Bundle&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Skins&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Sgt. Lyons (New)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Racing Sgt.Lyons&lt;/li&gt;
&lt;li&gt;Queen Lyons&lt;/li&gt;
&lt;li&gt;Champion Sgt. Lyons&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Classic Rehgar (New)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Light Classic Rehgar&lt;/li&gt;
&lt;li&gt;Dark Classic Rehgar&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Hell-Iron Diablo (Existing)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Sarlac Hell-Iron Diablo&lt;/li&gt;
&lt;li&gt;Darkstone Hell-Iron Diablo&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cyberhawk Kael&#39;thas (Existing)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Racing Cyberhawk Kael&#39;thas&lt;/li&gt;
&lt;li&gt;Cyber Serpentis Kael&#39;thas&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Lo&#39;Gosh Varian (Existing)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Badlands Lo&#39;Gosh Varian&lt;/li&gt;
&lt;li&gt;Gang Leader Lo&#39;Gosh Varian&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Racetrack Vikings (New)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Champion Racetrack Vikings&lt;/li&gt;
&lt;li&gt;Hot-Rod Racetrack Vikings&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Mounts&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Rock N Roll Racing Cars&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Blue Rock N Roll Racing Car&lt;/li&gt;
&lt;li&gt;Green Rock N Roll Racing Car&lt;/li&gt;
&lt;li&gt;Yellow Rock N Roll Racing Car&lt;/li&gt;
&lt;li&gt;Purple Rock N Roll Racing Car&lt;/li&gt;
&lt;li&gt;Black Rock N Roll Racing Car&lt;/li&gt;
&lt;li&gt;Orange Rock N Roll Racing Car&lt;/li&gt;
&lt;li&gt;Grey Rock N Roll Racing Car&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Announcer&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Blackthorne Announcer&lt;/li&gt;
&lt;li&gt;Larry Announcer&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Content&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Several new Portraits, Emoji Packs and other items have been added to the Collection!&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;nova-rework&quot;&gt;Nova Rework&lt;/h1&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/nova.png&quot; data-description=&quot;Nova&quot; data-gallery=&quot;media-8&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/IzT4INweAi-732.webp&quot; alt=&quot;Nova&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;General&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Moved from Ranged Assassin to Support.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Health increased from 1300 to 1462.&lt;/li&gt;
&lt;li&gt;Health regeneration increased from 2.711 to 3.04.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Snipe (Q)
&lt;ul&gt;
&lt;li&gt;New functionality: Activate to cast Snipe that deals 400 damage. Snipe&#39;s range and damage increases up to 33% the longer it is Channeled. Reactivate to fire. Nova cannot move while channeling Snipe.&lt;/li&gt;
&lt;li&gt;Snipe&#39;s missile thickness increased from 0.75 to 0.9.&lt;/li&gt;
&lt;li&gt;Missile speed increased from 50 to 60.&lt;/li&gt;
&lt;li&gt;Range increased increased from 10.8725 to 12.&lt;/li&gt;
&lt;li&gt;Cooldown reduced from 6 to 5.&lt;/li&gt;
&lt;li&gt;Mana cost reduced from 50 to 40.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Pinning Shot (W)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New ability: Explosive Shot (W)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Deal 50 damage to an enemy then explode 1.25 seconds later dealing 200 damage to all nearby enemies and slow them by 30% for 2 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Holo Decoy (E)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Create a decoy for 20 seconds with 100% of Nova&#39;s current Health that attacks enemies, dealing 45% of Nova&#39;s base damage, whenever a Decoy takes damage it takes an additional 25% of that damage.&lt;/li&gt;
&lt;li&gt;Now is an Active.&lt;/li&gt;
&lt;li&gt;Cast range increased from 8 to 12.&lt;/li&gt;
&lt;li&gt;No mana cost, 40 seconds cooldown.&lt;/li&gt;
&lt;li&gt;Can manually control the decoy by clicking &lt;kbd&gt;6&lt;/kbd&gt;, pressing &lt;kbd&gt;6&lt;/kbd&gt; again will return back to controlling Nova.&lt;/li&gt;
&lt;li&gt;Moved to level 16.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New ability: Defensive Drone (E)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Nova summons a Defensive Drone. Every 1.5 seconds Defensive Drone grants 25 armor for nearby heroes that lasts for 3 seconds reducing damage taken by 25%. Defensive Drone lasts for 8 seconds or until the effects were applied 4 times.&lt;/li&gt;
&lt;li&gt;75 Mana, 16 seconds cooldown, 25 Range.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Triple Tap (R)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New ability: Monomolecular Blade (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Nova pulls out an energy sword for 6 seconds, While active, basic attacks are 25% faster, deals 50% more damage, and ignore armor, additionally Monomolecular Blade can be activated to dash forward, dealing 240 damage in its path.&lt;/li&gt;
&lt;li&gt;100 seconds cooldown, 100 mana cost.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ghost Protocol (Active)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Permanent Clock (Trait)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Longshot (W)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Covert Ops (W)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Advanced Cloaking (Trait)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Tactical Stealth Suit (Trait)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Gain Stealth when out of combat for 3 seconds. Taking damage, attacking, using Abilities, or Channeling ends Stealth. Remaining stationary for at least 1.5 seconds grants Invisible. Passive: While stealthed, Snipe deals 15% additional damage.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Phase Reactor Suit (Trait)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Teleport to a nearby location.&lt;/li&gt;
&lt;li&gt;Passive: After using an Ability, Nova&#39;s next Basic Attack within 3 seconds deals 50% additional damage.&lt;/li&gt;
&lt;li&gt;Passive: Gain 5% Movement Speed.&lt;/li&gt;
&lt;li&gt;25 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 4
&lt;ul&gt;
&lt;li&gt;Rapid Projection (E)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Holo Stability (E)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Covert Mission (Active)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Enemy minions killed near Nova grant a stack of Bribe. Heroes hit by Snipe grants 5 stacks of Bribe. Use 25 stacks to bribe a Mercenary, instantly defeating them. Does not work on Elite Mercenaries. Maximum of 100 stacks.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Leeching Shot (Q)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Enemies hit with Snipe restore 4% of Nova&#39;s Maximum Health this is doubled against heroes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: On the Offense (E)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Allies inside Defensive Drone area receive 15% movement speed and heals nearby allies for 24 health per second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;Perfect Shot (Q)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: If Snipe hits an enemy Hero after traveling at least 60% of its maximum range, the cooldown is reduced by 1 second and 10 Mana is refunded.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;One in the Chamber (Passive)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Anti-Armor Shells (Passive)
&lt;ul&gt;
&lt;li&gt;Additional functionality: Increases basic attack range by 1.&lt;/li&gt;
&lt;li&gt;This talent has no effect while Monomolecular Blade is active.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Talent: EMP Shot (W)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Explosive Shot explosion increased by 20%, and deals up 200 bonus damage to shields.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Psionic Efficiency (Q)
&lt;ul&gt;
&lt;li&gt;Moved to level 20.&lt;/li&gt;
&lt;li&gt;Adjusted functionality: Snipe pierce all targets.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Double Tap (W)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Ionic Force Field (Passive)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Defensive Drone grants protected, effects end instantly after the target takes damage.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Stim Infusion (Active)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Activate to heal 25% of your maximum health over 5 seconds and increase your basic attack speed by 25% for 5 seconds.&lt;/li&gt;
&lt;li&gt;60 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Flashbang Grenades (Active)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Throw a Flashbang Grenade that deals 50 damage and blind enemies for 3 seconds.&lt;/li&gt;
&lt;li&gt;30 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Explosive Round (Q)
&lt;ul&gt;
&lt;li&gt;Renamed to &amp;quot;Boom Headshot!&amp;quot;.&lt;/li&gt;
&lt;li&gt;Adjusted functionality: If Snipe hits a hero, deal 75% damage to enemies near the impact.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Crippling Shot (W)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Breaching Charge (W)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Explosive Shot explosion reduces all enemies armor by 20 for 2 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Lethal Decoy (E)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Fast Reload (R)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Apollo Suit (Trait)
&lt;ul&gt;
&lt;li&gt;Moved to level 1.&lt;/li&gt;
&lt;li&gt;New functionality: Nova&#39;s basic ability cooldowns recharge 40% faster while not taking damage for 5 seconds.&lt;/li&gt;
&lt;li&gt;Passive: Maximum Health increased by 10%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Rewind (Active)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: 1000k Degree Module (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Monomolecular Blade deals an additional 50% damage and slows enemy Movement Speed by 20% for 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Domination (Active)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;After 1 second, mind control the selected enemy hero, allowing you to move or cast abilities, enemy heroes during this state deal 75% less damage and can attack their allies. Nova is revealed, takes 25% more damage and cannot move while mind controlling. Lasts for 2.5 seconds or until cancelled.&lt;/li&gt;
&lt;li&gt;180 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Break Neck (Active)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Activate to deal damage to an enemy Hero equal to 100% of their maximum health.&lt;/li&gt;
&lt;li&gt;300 seconds cooldown.&lt;/li&gt;
&lt;li&gt;Does not work on Probius.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&quot;text-align:left&quot;&gt;Level (Tier)&lt;/th&gt;
&lt;th style=&quot;text-align:left&quot;&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:left&quot;&gt;Nova TALENTS&lt;/th&gt;
&lt;th style=&quot;text-align:left&quot;&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:left&quot;&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:left&quot;&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;1 (1)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Tactical Stealth Suit&lt;/em&gt; (Trait)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Phase Reactor Suit (Trait)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;strong&gt;Apollo Suit (Trait)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;4 (2)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;Covert Mission (Active)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Leeching Shot (Q)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;On the Offense (E)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;7 (3)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;Perfect Shot (Q)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;Anti-Armor Shells (Passive)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;EMP Shot (W)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;10 (4)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;Precision Strike (R)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Monomolecular Blade (R)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;13 (5)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;Ionic Force Field (Passive)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Stim Infusion (Active)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Flashbang Grenades (Active)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;16 (6)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Boom Headshot! (Q)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Breaching Charge (W)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;strong&gt;Holo Decoy (Active)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:left&quot;&gt;20 (7)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;Precision Barrage (R)&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;1000k Degree Module (R)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;strong&gt;Psionic Efficiency (Q)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Domination (Activate)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:left&quot;&gt;&lt;em&gt;Break Neck (Activate)&lt;/em&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;ul&gt;
&lt;li&gt;(!) indicates a Questing Talent.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Italic text&lt;/em&gt; indicates a &lt;strong&gt;&lt;em&gt;NEW&lt;/em&gt;&lt;/strong&gt; Talent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bold text&lt;/strong&gt; indicates a &lt;strong&gt;MOVED&lt;/strong&gt; Talent.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Nova has found a stash in the woods filled with Terran Dominion arsenals, please use them as intended.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;heroes&quot;&gt;Heroes&lt;/h1&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&quot;text-align:center&quot;&gt;TANK&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;BRUISER&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;SUPPORT&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;HEALER&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;MELEE&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;RANGED&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#anubarak&quot;&gt;Anub&#39;arak&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#artanis&quot;&gt;Artanis&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#abathur&quot;&gt;Abathur&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#anduin&quot;&gt;Anduin&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#maiev&quot;&gt;Maiev&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#falstad&quot;&gt;Falstad&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#cho&quot;&gt;Cho&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#dehaka&quot;&gt;Dehaka&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#vikings&quot;&gt;The Lost Vikings&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#brightwing&quot;&gt;Brightwing&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#murky&quot;&gt;Murky&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#gall&quot;&gt;Gall&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#diablo&quot;&gt;Diablo&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#dva&quot;&gt;D.Va&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#kharazim&quot;&gt;Kharazim&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#samuro&quot;&gt;Samuro&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#kaelthas&quot;&gt;Kael&#39;thas&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#etc&quot;&gt;E.T.C.&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#hogger&quot;&gt;Hogger&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#tyrande&quot;&gt;Tyrande&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#zeratul&quot;&gt;Zeratul&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#lunara&quot;&gt;Lunara&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#johanna&quot;&gt;Johanna&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#imperius&quot;&gt;Imperius&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#whitemane&quot;&gt;Whitemane&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#probius&quot;&gt;Probius&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#stitches&quot;&gt;Stitches&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#thrall&quot;&gt;Thrall&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#tracer&quot;&gt;Tracer&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;tank&quot;&gt;Tank&lt;/h1&gt;
&lt;h2 id=&quot;anubarak&quot;&gt;Anub&#39;arak&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/anubarak.png&quot; data-description=&quot;Anub&#39;arak&quot; data-gallery=&quot;media-9&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/aHtzaT1oZc-732.webp&quot; alt=&quot;Anub&#39;arak&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Beetle, Juiced (Trait)
&lt;ul&gt;
&lt;li&gt;New functionality: If a Beetle attacks a hero 5 times its duration is refreshed, becomes fully healed, and gains 100% bonus health and damage. This effect can occur only once per Beetle.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Cryptweave (R)
&lt;ul&gt;
&lt;li&gt;New functionality: Reduce Cocoon cooldown by 20. Staying near the Cocoon allows Anub&#39;arak to extend the duration by up to 5 seconds per Cocoon and causes Cocoon spawn a Beetle every second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Hive Master (R)
&lt;ul&gt;
&lt;li&gt;Now can target allies who&#39;s health are higher than 50%. Can be disabled.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; The Traitor King still has a few more tricks to show off.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;cho&quot;&gt;Cho&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/cho.png&quot; data-description=&quot;Cho&quot; data-gallery=&quot;media-10&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/uAc9k74ls5-732.webp&quot; alt=&quot;Cho&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;The Will of Cho (Passive)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Onion Layers (Passive)
&lt;ul&gt;
&lt;li&gt;While Ogre Hide is active spawn a gassy cloud around Cho that deals 20 damage every second and grant Cho 1 armor for each damaged hero for 2 seconds, up to 10 additional armor, stacks with Ogre Hide.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Surging Dash (Q)
&lt;ul&gt;
&lt;li&gt;Now grants unstoppable.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; What could possibly go wrong?&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;diablo&quot;&gt;Diablo&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/diablo.png&quot; data-description=&quot;Diablo&quot; data-gallery=&quot;media-11&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/sFXrghDps2-732.webp&quot; alt=&quot;Diablo&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Lord of Terror (Active)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Channel for 1 second to steal 10% of the maximum Health of nearby enemy heroes and fear them for 2.5 seconds.&lt;/li&gt;
&lt;li&gt;Cooldown increased from 60 to 90.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We always felt like the Lord of Terror isn&#39;t really living up to his name, this should do it.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;etc&quot;&gt;E.T.C.&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/etc.png&quot; data-description=&quot;E.T.C.&quot; data-gallery=&quot;media-12&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/gYc59c7iFg-732.webp&quot; alt=&quot;E.T.C.&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Health increased from 2250 to 2300.&lt;/li&gt;
&lt;li&gt;Health regeneration increased from 4.6 to 4.7.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Rockstar (Trait)
&lt;ul&gt;
&lt;li&gt;Armor increased from 20 to 30.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Encore (W)
&lt;ul&gt;
&lt;li&gt;Cooldown reduction increased from 5% to 7%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; E.T.C. has been underperforming lately, hopefully these changes should bring him back in line with the other tanks.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;johanna&quot;&gt;Johanna&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/johanna.png&quot; data-description=&quot;Johanna&quot; data-gallery=&quot;media-13&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/W15_fF4GHa-732.webp&quot; alt=&quot;Johanna&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;59&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 13 (Passive)
&lt;ul&gt;
&lt;li&gt;Holy Fury
&lt;ul&gt;
&lt;li&gt;Damage reduced from 12 to 10.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Holy Fury is too strong, we are tuning down its damage a bit to allow more talent variety.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;stitches&quot;&gt;Stitches&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/stitches.png&quot; data-description=&quot;Stitches&quot; data-gallery=&quot;media-14&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/taHfzaLkcq-732.webp&quot; alt=&quot;Stitches&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Meat Hook
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New talent: Indigestion (E)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Using Devour also creates a Retchling that applies Vile Gas Poison when it attacks, additionally Stitches heals for 300% of the damage dealt by the Retchling.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;New talent: Shish Kabob (Q)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Hook pulls all targets in its path.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Stitches still hungry for flesh, and we&#39;ll give him what he&#39;s asking for.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;bruiser&quot;&gt;Bruiser&lt;/h1&gt;
&lt;h2 id=&quot;artanis&quot;&gt;Artanis&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/artanis.png&quot; data-description=&quot;Artanis&quot; data-gallery=&quot;media-15&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/L7ciSzL0EE-732.webp&quot; alt=&quot;Artanis&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Blade Dash
&lt;ul&gt;
&lt;li&gt;Now can be cancelled.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Protector of Aiur (Passive)
&lt;ul&gt;
&lt;li&gt;Bonus per stack increased from 0.1% to 0.15%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Artanis could use more buffs.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;dehaka&quot;&gt;Dehaka&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/dehaka.png&quot; data-description=&quot;Dehaka&quot; data-gallery=&quot;media-16&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/MkUQV2V9sr-732.webp&quot; alt=&quot;Dehaka&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Adaptation (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Additional functionality: Every 50 essence collected grants Dehaka a permanent 5% increase to his Maximum Health and Basic Attack Damage and increases his size by 0.75%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Evolution has no limit and neither does Dehaka!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;dva&quot;&gt;D.Va&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/dva.png&quot; data-description=&quot;D.Va&quot; data-gallery=&quot;media-17&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/CbXmYctKQk-732.webp&quot; alt=&quot;D.Va&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Big Shot (Pilot/R)
&lt;ul&gt;
&lt;li&gt;Damage increased from 150 to 180.&lt;/li&gt;
&lt;li&gt;Cooldown reduced from 6 to 5.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Stop and Pop (Mech/R)
&lt;ul&gt;
&lt;li&gt;New functionality: Bunny Hop grants 25% movement speed. Bunny Hop damage is doubled and its duration is increased by 0.25 seconds per hero hit if D.Va wasn&#39;t moving before the impact.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Headshot! (Pilot/R)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Gamer Fuel (Pilot/Passive)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Pilot Mode: Whenever D.Va eject from Mech, grant Unstoppable for 1 seconds and 100% movement speed decaying over 2 seconds.&lt;/li&gt;
&lt;li&gt;Passive: Call Mech&#39;s cooldown reduction from Basic Attacks increased to 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; &amp;quot;Headshot!&amp;quot; &amp;amp; &amp;quot;Stop and Pop&amp;quot; despite their cool concept have been performing underwhelmingly, in the case of &amp;quot;Stop and Pop&amp;quot; we&#39;ve brought back some of its older variation before the rework while replacing &amp;quot;Headshot!&amp;quot; with a whole new talent.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;hogger&quot;&gt;Hogger&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/hogger.png&quot; data-description=&quot;Hogger&quot; data-gallery=&quot;media-18&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/03bK0JmVi_-732.webp&quot; alt=&quot;Hogger&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;No Control (Active)
&lt;ul&gt;
&lt;li&gt;New functionality: Activate to set all Hogger&#39;s Basic Abilities cooldowns to 2 seconds for the next 10 seconds but you are unable to target, and instead Hogger will trigger random abilities automatically while targeting the nearest enemy, prioritizing heroes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Hogger&#39;s No Control is &lt;em&gt;out of control&lt;/em&gt;, we&#39;ll be giving it a whole new functionality that should put it more &lt;em&gt;in control&lt;/em&gt;, but that&#39;s for you to decide.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;imperius&quot;&gt;Imperius&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/imperius.png&quot; data-description=&quot;Imperius&quot; data-gallery=&quot;media-19&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/QK7rFQD-Wt-732.webp&quot; alt=&quot;Imperius&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Level 1&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Consuming Flame (W)
&lt;ul&gt;
&lt;li&gt;Center damage bonus increased from 125% to 150%.&lt;/li&gt;
&lt;li&gt;Slow bonus increased from 15% to 20%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Level 4&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;All Level 4 Talents have been moved to Level 7.&lt;/li&gt;
&lt;li&gt;Press Forward (Passive)
&lt;ul&gt;
&lt;li&gt;Regeneration Globe duration after basic attacking increased from 8 to 10.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Level 7&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;All Level 7 Talents have been moved to Level 4.&lt;/li&gt;
&lt;li&gt;Blaze of Glory (W)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Enemies hit in the center of Solarion&#39;s Fire take 180 damage over 3 seconds, consuming Valorous Brand marks refreshes its duration.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Holy Fervor (Active)
&lt;ul&gt;
&lt;li&gt;Additional functionality: Each Valorous Brand consumed reduces Holy Fervor cooldown by 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We&#39;ve been looking into some of Imperius&#39; underperforming talents and we saw some potential for some buffs, we also swapped his Level 7 talent with his Level 4 talent to make his power spike come a little earlier, allowing him to fill more roles than just a main tank.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;thrall&quot;&gt;Thrall&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/thrall.png&quot; data-description=&quot;Thrall&quot; data-gallery=&quot;media-20&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/vn6HUHQpV6-732.webp&quot; alt=&quot;Thrall&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Worldbreaker (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;New functionality: Sundering now continuous in its path indefinitely and goes around the world until Sundering gets recasted again. Each time Sundering impacts in its path, it leaves behind an impassable rift, blocking unit movement for 3 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; &amp;quot;Earthquake&amp;quot; is more picked than &amp;quot;Sundering&amp;quot; due its heroic upgrade &amp;quot;Earthen Shield&amp;quot;, because of that, we believe &amp;quot;Sundering&amp;quot; could use a similar level 20 power spike. We&#39;re also buffing &amp;quot;Worldbreaker&amp;quot; to give Thrall a way to break both the pickrate and winrate.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;support&quot;&gt;Support&lt;/h1&gt;
&lt;h2 id=&quot;abathur&quot;&gt;Abathur&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/abathur.png&quot; data-description=&quot;Abathur&quot; data-gallery=&quot;media-21&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/qyZhMvCKGN-732.webp&quot; alt=&quot;Abathur&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Evolutionary Link (R)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) The Imposter (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Abathur can use Ultimate Evolution on visible enemy heroes, cloned enemy heroes receive 15% more damage from their clone.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We believe we can make more interesting talent choices for Abathur so we are replacing Evolutionary Link with a talent that will make his enemies go into suspiciousness.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;vikings&quot;&gt;The Lost Vikings&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/vikings.png&quot; data-description=&quot;The Lost Vikings&quot; data-gallery=&quot;media-22&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/KGscMa6UQV-732.webp&quot; alt=&quot;The Lost Vikings&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This Hero has been removed from the game.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; The Lost Vikings seems lost, we will try to bring them back next patch.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;healer&quot;&gt;Healer&lt;/h1&gt;
&lt;h2 id=&quot;anduin&quot;&gt;Anduin&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/anduin.png&quot; data-description=&quot;Anduin&quot; data-gallery=&quot;media-23&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ts0AL1tvot-732.webp&quot; alt=&quot;Anduin&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Flash Heal (Q)
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 4 to 5.&lt;/li&gt;
&lt;li&gt;Additional functionality: Flash Heal applies a mark for 12 seconds, damaging an enemy Hero heals all marked allies for 32.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Pursued by Grace (Passive)
&lt;ul&gt;
&lt;li&gt;Damaging an enemy Hero grants 2.5% Spell Power for 6 seconds, up to 15%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bold Strategy (Q)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Talent: Enlightenment (Active)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Activate to cause your next Flash Heal to heal 50% around the target.&lt;/li&gt;
&lt;li&gt;30 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Push Forward! (E)
&lt;ul&gt;
&lt;li&gt;New functionality: Damaging an enemy Hero grants Anduin 2.5% Movement Speed for 6 seconds, up to 15%. Ally Heroes who are marked with Flash Heal benefit from this bonus.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Enchanted Boots - Lion&#39;s Speed (Trait)
&lt;ul&gt;
&lt;li&gt;Additional functionality: Rooting enemy heroes with Chastise reduces Leap of Faith cooldown by 5.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Ever since Anduin&#39;s release, Pursued by Grace has simply been underwhelming while at the same time, Bold Strategy dominated the level 1 talent tier. That leaves Renew only to be picked in very niche situations and in order to fix this, we are adding a new functionality to Flash Heal that should serve something similar to Pursued by Grace, while at it, we&#39;ve fleshened out his talent tree a bit.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;brightwing&quot;&gt;Brightwing&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/brightwing.png&quot; data-description=&quot;Brightwing&quot; data-gallery=&quot;media-24&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/auEy47WsYS-732.webp&quot; alt=&quot;Brightwing&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;Peekaboo! (Z)
&lt;ul&gt;
&lt;li&gt;New functionality: Phase Shifting to an ally apply to nearby enemy Heroes 15% Movement Speed and cause them to run in fear for 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Ooh, terrified enemies! Tasty!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;kharazim&quot;&gt;Kharazim&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/kharazim.png&quot; data-description=&quot;Kharazim&quot; data-gallery=&quot;media-25&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/OLZuaSq8jJ-732.webp&quot; alt=&quot;Kharazim&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Pick Your Trait (Trait)
&lt;ul&gt;
&lt;li&gt;Additionally functionality: Gives 25% increased Move Speed for 2.5 seconds.&lt;/li&gt;
&lt;li&gt;Moved from Iron Fists, Transcendence and Insight to baseline.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Moving on.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;tyrande&quot;&gt;Tyrande&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/tyrande.png&quot; data-description=&quot;Tyrande&quot; data-gallery=&quot;media-26&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/CnFbi_Jz0N-732.webp&quot; alt=&quot;Tyrande&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Empower (W)
&lt;ul&gt;
&lt;li&gt;Maximum Health damage reduced from 7% to 56%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Darnassian Archery (Passive)
&lt;ul&gt;
&lt;li&gt;Additional functionality: Everytime Tyrande attacks an enemy Hero 4 times her next basic attack against them fires twice.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We believe Tyrande is in an ok place but some of her talents could use more love, we are giving Darnassian Archery an interesting buff that should allow her to heal more in the process on the risk of not picking &amp;quot;Celestial Attunement&amp;quot;.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;whitemane&quot;&gt;Whitemane&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/whitemane.png&quot; data-description=&quot;Whitemane&quot; data-gallery=&quot;media-27&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/x48PnLk8ZM-732.webp&quot; alt=&quot;Whitemane&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Guiding Light (Active)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Talent: The Disciplinary Action (Passive)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Basic attacks against allied heroes deal 50 damage and grant 15% increased movement speed to them and Whitemane for 2 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; The Scarlet Crusade will not withstand your incompetence.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;melee&quot;&gt;Melee Assassin&lt;/h1&gt;
&lt;h2 id=&quot;maiev&quot;&gt;Maiev&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/maiev.png&quot; data-description=&quot;Maiev&quot; data-gallery=&quot;media-28&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/kdwVBaMu6_-732.webp&quot; alt=&quot;Maiev&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Bonds of Justice (W)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: After applying 10 tethers to secondary targets, Umbral Bind&#39;s cooldown is reduced by 3 seconds per tethered target.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Pursuit of Vengeance (E)
&lt;ul&gt;
&lt;li&gt;New functionality: Spirit of Vengeance gains an additional charge.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Shadow Orb: Vengeance (Active)
&lt;ul&gt;
&lt;li&gt;Now replenish all Spirit of Vengeance&#39;s charges.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We believe Bonds of Justice could use an interesting buff that hopefully should make it more unique and fun, while at it, we&#39;ve given Pursuit of Vengeance a new functionality.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;murky&quot;&gt;Murky&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/murky.png&quot; data-description=&quot;Murky&quot; data-gallery=&quot;media-29&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/Vp1iPdDXD5-732.webp&quot; alt=&quot;Murky&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;... And A Shark Too! (R)
&lt;ul&gt;
&lt;li&gt;Damage increased from 13700% to 42000%&lt;/li&gt;
&lt;li&gt;Additional functionality: Reduces duration by 0.5 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; The murloc found a better shark.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;samuro&quot;&gt;Samuro&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/samuro.png&quot; data-description=&quot;Samuro&quot; data-gallery=&quot;media-30&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ftpXpIgiKg-732.webp&quot; alt=&quot;Samuro&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Illusion Master (R)
&lt;ul&gt;
&lt;li&gt;Cooldown reduced from 8 to 6.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;Burning Blade (Passive)
&lt;ul&gt;
&lt;li&gt;New functionality: Basic attacks deal 100% more damage to enemy heroes but Samuro goes on fire taking 23 damage per second. Can be disabled.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Phantom Pain (Passive)
&lt;ul&gt;
&lt;li&gt;New functionality: Critical Strikes ignore armor. Samuro&#39;s Critical Strikes against enemy Heroes deal an additional 50% of his Basic Attack damage for each Mirror Image that is active.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Crushing Blow (Passive)
&lt;ul&gt;
&lt;li&gt;No longer has a stack limit.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Samuro has been in a struggle ever since the last patch, these changes should address some problems with his kit and make it more versatile while still being effective.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;zeratul&quot;&gt;Zeratul&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/zeratul.png&quot; data-description=&quot;Zeratul&quot; data-gallery=&quot;media-31&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ydYvynj-bD-732.webp&quot; alt=&quot;Zeratul&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Blink (E)
&lt;ul&gt;
&lt;li&gt;Cooldown reduced from 10 to 7.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Might of the Nerazim (R)
&lt;ul&gt;
&lt;li&gt;Cooldown reduced from 20 to 16.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Shadow Hunter (E)
&lt;ul&gt;
&lt;li&gt;Cooldown reduction from basic attacks upon quest completion reduced from 1.5 to 1.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Zeratul isn&#39;t mobile enough like Tracer and Genji are, we believe a Blink cooldown reduction should help fix this.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;ranged&quot;&gt;Ranged Assassin&lt;/h1&gt;
&lt;h2 id=&quot;falstad&quot;&gt;Falstad&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/falstad.png&quot; data-description=&quot;Falstad&quot; data-gallery=&quot;media-32&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/aG9jQW_31S-732.webp&quot; alt=&quot;Falstad&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Lightning Rod (W)
&lt;ul&gt;
&lt;li&gt;New functionality: Select an enemy hero from your top panel to cast Lightning Rod regardless of being visible or how far they are, deal 150 to an enemy, and an additional 125 damage per second for 4 seconds. Damage dealt is increased by 50% based on the Rarity level of the skin, up to 200% against Legendary skins.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; As we specified in one of our Reddit posts, we agree that Falstad only having 66% chance to kill players with Lightning Rod is simply unacceptable, and we&#39;ll buff it to make sure that Falstad players will be guaranteed a kill whenever they use Lightning Rod.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;gall&quot;&gt;Gall&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/gall.png&quot; data-description=&quot;Gall&quot; data-gallery=&quot;media-33&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ffLJ4t8K3U-732.webp&quot; alt=&quot;Gall&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;The Will of Gall (Passive)
&lt;ul&gt;
&lt;li&gt;New functionality: Gall now controls the movement instead of Cho.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Gall is just simply sick of it, he&#39;s taking over.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;kaelthas&quot;&gt;Kael&#39;thas&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/kaelthas.png&quot; data-description=&quot;Kael&#39;thas&quot; data-gallery=&quot;media-34&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/qzJA0Mbj1S-732.webp&quot; alt=&quot;Kael&#39;thas&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Presence of Mind (R)
&lt;ul&gt;
&lt;li&gt;New functionality: Pyroblast instead deals 100% of current health as damage over 10 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We believe Pyroblast is outperformed by Phoenix and could use a much stronger level 20 presence.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;lunara&quot;&gt;Lunara&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/lunara.png&quot; data-description=&quot;Lunara&quot; data-gallery=&quot;media-35&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/98ms8FaWDD-732.webp&quot; alt=&quot;Lunara&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Endless Spores (W)
&lt;ul&gt;
&lt;li&gt;New functionality: Mana cost reduced by 10. Casting Crippling Spores while at least 2 Heroes are afflicted by Nature&#39;s Toxin reduces the cooldown by 2 seconds per affected hero, up to 8 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Lunara will be showing her enemies the true wrath of the forest, or until she runs out of mana.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;probius&quot;&gt;Probius&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/probius.png&quot; data-description=&quot;Probius&quot; data-gallery=&quot;media-36&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/hZbQzo3MC1-732.webp&quot; alt=&quot;Probius&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Shoot &#39;Em Up (Q)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;New Talent: Guardian Shield (Active)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Activate to cover an area around Probius with a Guardian Shield giving all nearby allied Heroes a Shield for 10% of their Maximum Health and 20 armor while near Probius. Guardian Shield last for 6 seconds.&lt;/li&gt;
&lt;li&gt;60 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Probius has been upgraded with some Sentry arsenal and is ready to support his team with style.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;tracer&quot;&gt;Tracer&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/tracer.png&quot; data-description=&quot;Tracer&quot; data-gallery=&quot;media-37&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/qo07l9N6_c-732.webp&quot; alt=&quot;Tracer&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;59&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Basic Attack damage reduced from 23 to 22.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Telefrag (E)
&lt;ul&gt;
&lt;li&gt;New functionality: Recall cooldown increased by 10 seconds, when Tracer arrives at her Recall location, nearby enemy heroes on the Recall return point die.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Get telefragged!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;bugfixes&quot;&gt;Bug Fixes:&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;Probius can no longer become sentient.&lt;/li&gt;
&lt;li&gt;Thrall&#39;s Level 20 &amp;quot;World Breaker&amp;quot; no longer moves terrain permanently.&lt;/li&gt;
&lt;li&gt;Fixed an issue where Lucio plays &amp;quot;Friday&amp;quot; while Speed Boosting.&lt;/li&gt;
&lt;li&gt;Probius Disruption Pulse no longer hits no units when it returns to Probius using Echo Pulse&lt;/li&gt;
&lt;li&gt;Diablo no longer looks into your soul.&lt;/li&gt;
&lt;li&gt;Fixed an issue where Tracer gets deleted for the rest of the match when she casts Recall.&lt;/li&gt;
&lt;li&gt;Chen&#39;s Camera no longer starts violently shaking after casting Fortifying Brew.&lt;/li&gt;
&lt;li&gt;Fixed an issue where Mephisto get haters, too many haters.&lt;/li&gt;
&lt;li&gt;Fixed an issue where Mei enables the Snowing Weather Anomaly after casting Blizzard on Cursed Hollow&#39;s objective.&lt;/li&gt;
&lt;li&gt;Several AI fixes and improvements.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/footer.png&quot; title=&quot;Happy April Fools BTW :)&quot; data-description=&quot;Happy April Fools BTW :)&quot; data-gallery=&quot;media-38&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7u1jXyzgeG-750.webp&quot; alt=&quot;Happy April Fools BTW :)&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;750&quot; height=&quot;86&quot;&gt;&lt;/a&gt;&lt;/p&gt;
</description><pubDate>Thu, 01 Apr 2021 10:00:00 +0000</pubDate>
      <dc:creator>Sami Shakkour</dc:creator>
      <guid>https://sami.shakkour.dev/blog/2021/hots-april-fools/</guid>
    </item>
    <item>
      <title>PTR Patch Notes | April 1, 2020</title>
      <link>https://sami.shakkour.dev/blog/2020/hots-april-fools/</link><description>&lt;p&gt;An April Fools patch notes for Heroes of the Storm.&lt;/p&gt;
&lt;p&gt;Since people keep asking or assume a lot: &lt;strong&gt;I am not affiliated with Blizzard, this is unofficial&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;I personally remember when I started writing this a few months before its release, I had 0 ideas how it will go and I wanted to do, I kept browsing all the patch notes checking what really makes them click and how to exactly replicate it as similar as possible to sell it off as a real patch.&lt;/p&gt;
&lt;p&gt;I mean people CAN tell it is fake literally from the start right? It&#39;s posted on the &lt;strong&gt;&lt;em&gt;FORUM&lt;/em&gt;&lt;/strong&gt; site not the &lt;strong&gt;&lt;em&gt;NEWS&lt;/em&gt;&lt;/strong&gt; site just like all the patch notes are... I was wrong, a lot. It sold so hard, people really thought I was a Blizzard employee, which is really funny and quite the honor despite the abhorrent grammar in the lines that gives it away.&lt;/p&gt;
&lt;p&gt;The video was voice acted by Mochrie (&lt;a href=&quot;https://www.reddit.com/user/Mochrie1713/&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;u/Mochrie1713&lt;/a&gt;), I put so much effort into it but due lack of time I had to cut on budget and I think its funny how it loosely cuts off on random jokes that sounded funny in my head.&lt;/p&gt;
&lt;p&gt;The Nova section in this patch looks like corrupted bug, but in reality this was intentional from the start the entire section of it is just broken because the joke is the hero literally &amp;quot;doesn&#39;t&amp;quot; exist because it can passively go back to stealth, a &amp;quot;ghost&amp;quot; (name of the infantry unit she is).&lt;/p&gt;
&lt;p&gt;Like the &lt;a href=&quot;https://sami.shakkour.dev/blog/2021/hots-april-fools/&quot;&gt;2021&lt;/a&gt; this was enjoyable to write and the reaction that followed it was very fun to read, seeing people speculate if its real, fake or some fabricated April Fools disguised as a real patch (their words not mine) was free entertainment for me on this mischievous date.&lt;/p&gt;
&lt;p&gt;Patch Notes Link: &lt;a href=&quot;https://us.forums.blizzard.com/en/heroes/t/35373&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;https://us.forums.blizzard.com/en/heroes/t/35373&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;### BEGIN PATCH NOTES TRANSCRIPTION ###&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/patch-notes.jpg&quot; title=&quot;Heroes of the Storm Logo&quot; data-description=&quot;Heroes of the Storm Logo&quot; data-gallery=&quot;media-39&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ClJWSKT8Xw-760.webp&quot; alt=&quot;Heroes of the Storm Logo&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;760&quot; height=&quot;270&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Our next Heroes of the Storm patch has just hit the Public Test Realm and will be available for playtesting until April 8th. As always, if you encounter any bugs during your PTR play sessions, please stop by the &lt;a href=&quot;https://us.forums.blizzard.com/en/heroes/c/ptr-bug-report&quot; target=&quot;_blank&quot; rel=&quot;noopener noreferrer&quot;&gt;PTR Bug Report&lt;/a&gt; forum to let us know about your experiences.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;top&quot;&gt;Quick Navigation:&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#mercymainbtw&quot;&gt;New Hero: Mercy&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#nexusanomalies&quot;&gt;Nexus Anomalies&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#general&quot;&gt;General&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#heroes&quot;&gt;Heroes&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#bugfixes&quot;&gt;Bug Fixes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;mercymainbtw&quot;&gt;New Hero: Mercy (Healer)&lt;/h1&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/2020/mercy-thumbnail.jpeg&quot; title=&quot;Mercy, Guardian Angel&quot; data-description=&quot;Mercy, Guardian Angel&quot; data-gallery=&quot;media-40&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/Nmb1lBpsIG-1280.webp&quot; alt=&quot;Mercy, Guardian Angel&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1280&quot; height=&quot;640&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;iframe width=&quot;100%&quot; height=&quot;400&quot; src=&quot;http://www.youtube.com/embed/9SBZdEhWu7g&quot; frameborder=&quot;0&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;
&lt;p&gt;A guardian angel to those who come under her care, Dr. Angela Ziegler is a peerless healer, a brilliant scientist, and a staunch advocate for peace.&lt;/p&gt;
&lt;h2 id=&quot;valkyrie-armor&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ZhzrI5RCXr-500.webp&quot; height=&quot;500&quot; alt=&quot;Valkyrie Armor&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;500&quot;&gt; Valkyrie Armor&lt;/h2&gt;
&lt;p&gt;Regenerate 2% of your maximum Health per second after not taking any damage for 4 seconds.&lt;/p&gt;
&lt;h2 id=&quot;healing-stream-q&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ZleS6Ad-8C-500.webp&quot; height=&quot;500&quot; alt=&quot;Healing Stream&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;500&quot;&gt; Healing Stream [Q]&lt;/h2&gt;
&lt;p&gt;Heal an ally for 100 Health per second as long as they are in range. Reactivate to switch targets, or activate your Trait to cancel channeling. Mercy cannot Basic Attack or use Guardian Angel while channeling and 1 second after stopping so.&lt;/p&gt;
&lt;h2 id=&quot;damage-amplifier-q&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/aff6Cct9YX-500.webp&quot; height=&quot;500&quot; alt=&quot;Damage Amplifier&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;500&quot;&gt; Damage Amplifier [Q]&lt;/h2&gt;
&lt;p&gt;Grant an ally 25% attack speed and 10% Spell Power as long as they are in range. Reactivate to switch targets, or activate your Trait to cancel channeling. Mercy cannot Basic Attack or use Guardian Angel while channeling and 1 second after stopping so.&lt;/p&gt;
&lt;h2 id=&quot;caduceus-staff-w&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/HxwagQvmgc-500.webp&quot; height=&quot;500&quot; alt=&quot;Caduceus Staff&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;500&quot;&gt; Caduceus Staff [W]&lt;/h2&gt;
&lt;p&gt;Change between one of the two abilities for Mercy&#39;s Caduceus Staff.
&lt;strong&gt;Healing Stream:&lt;/strong&gt; Heal an ally for 100 Health per second.
&lt;strong&gt;Damage Amplifier:&lt;/strong&gt; Grant an ally 25% attack speed and 10% Spell Power.&lt;/p&gt;
&lt;h2 id=&quot;guardian-angel-e&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/Vw4EH3T4Xe-500.webp&quot; height=&quot;500&quot; alt=&quot;Guardian Angel&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;500&quot;&gt; Guardian Angel [E]&lt;/h2&gt;
&lt;p&gt;Mercy flies towards a heroic target passing through all enemy units. Cannot pass through terrain.&lt;/p&gt;
&lt;h2 id=&quot;mass-resurrection-r1&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/pKcOXD5fT9-500.webp&quot; height=&quot;500&quot; alt=&quot;Mass Resurrection&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;500&quot;&gt; Mass Resurrection [R1]&lt;/h2&gt;
&lt;p&gt;Channel for 2.5 seconds, reviving all nearby fallen spirits of dead allies back to half of their health, each fallen spirit that gets revived increases Mass Resurrection cooldown by 150 seconds up to 600 seconds. Mercy can use Guardian Angel to fly toward fallen spirits, while channeling for 2.5 seconds Mercy is revealed and has 25 reduced armor taking 25% more damage. [Passive] Each time Mercy heals or amplifies damage reduce Mass Resurrection max cooldown by 0.4%.&lt;/p&gt;
&lt;h2 id=&quot;valkyrie-mode-r2&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/PcIYacwrih-500.webp&quot; height=&quot;500&quot; alt=&quot;Valkyrie Mode&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;500&quot;&gt; Valkyrie Mode [R2]&lt;/h2&gt;
&lt;p&gt;For the next 10 seconds, Guardian Angel recharges 200% faster and Caduceus Staff spreads to nearby allies from the primary target, secondary targets receive half of the effects of the current Caduceus Staff mode.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;nexusanomalies&quot;&gt;Nexus Anomalies&lt;/h1&gt;
&lt;p&gt;Nexus Anomalies are seasonal gameplay changes that directly affect all game modes in Heroes of the Storm. These events will last the entire season, allowing us time to receive feedback on them. Depending on this evaluation, some of them may become permanent additions to the game, while others may just be a limited time event.&lt;/p&gt;
&lt;p&gt;The second Nexus Anomaly has arrived! In order to make game experiences better for the majority, we&#39;re changing how Quick Match works since its our current most played mode. Players will no longer be able to queue to any hero they desire and instead play Unranked draft.&lt;/p&gt;
&lt;h3 id=&quot;quick-match&quot;&gt;Quick Match&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Renamed to Draft Match.&lt;/li&gt;
&lt;li&gt;Players will no longer be able to queue with any hero they want, instead they will be sent to a draft where they have to pick their heroes before the game starts.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;unranked&quot;&gt;Unranked&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;general&quot;&gt;General&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;The victorious team is now rewarded with 10 Shards on top of the previous rewards, vs AI and Brawl matches grant 5 shards.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;toys-2-event&quot;&gt;Toys 2 Event&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Toys 2 Event has been extended to April 28, 2020, PT.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;storm-league&quot;&gt;Storm League&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Players who are Master and higher can play solo only.&lt;/li&gt;
&lt;li&gt;Players who are Diamond can play in a group of 2.&lt;/li&gt;
&lt;li&gt;Players who achieve Bronze 5 with 0 scored points will be unable to play Storm League for a week, afterwards they are automatically set to Bronze 3, doing so multiple times would increase the duration to Permanent.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&quot;design&quot;&gt;Design&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;2+ Vehicles &amp;amp; type-heroes now count more than one hero, affecting abilities and stacks granted.
&lt;ul&gt;
&lt;li&gt;This change affects Cho&#39;Gall, Triglav Protector and The Lost Vikings.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Storm League has been in a very weird spot the pasts few changes, to avoid boosting players more easily to Diamond especially Masters and above, we are going to limit the group queues even further to up the challenge required to climb the ladder.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;heroes&quot;&gt;Heroes&lt;/h1&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#tank&quot;&gt;TANK&lt;/a&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#bruiser&quot;&gt;BRUISER&lt;/a&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#support&quot;&gt;SUPPORT&lt;/a&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#healer&quot;&gt;HEALER&lt;/a&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#melee&quot;&gt;MELEE&lt;/a&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#ranged&quot;&gt;RANGED&lt;/a&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#blaze&quot;&gt;Blaze&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#dehaka&quot;&gt;Dehaka&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#abathur&quot;&gt;Abathur&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#ana&quot;&gt;Ana&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#maiev&quot;&gt;Maiev&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#azmodan&quot;&gt;Azmodan&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#diablo&quot;&gt;Diablo&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#dva&quot;&gt;D.Va&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#medivh&quot;&gt;Medivh&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#anduin&quot;&gt;Anduin&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#illidan&quot;&gt;Illidan&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#chromie&quot;&gt;Chromie&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#etc&quot;&gt;E.T.C.&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#sonya&quot;&gt;Sonya&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#vikings&quot;&gt;The Lost Vikings&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#lili&quot;&gt;Li Li&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#qhira&quot;&gt;Qhira&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#genji&quot;&gt;Genji&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#garrosh&quot;&gt;Garrosh&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#thrall&quot;&gt;Thrall&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#tassadar&quot;&gt;Tassadar&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#uther&quot;&gt;Uther&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#samuro&quot;&gt;Samuro&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#undefined&quot;&gt;Nova&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#malganis&quot;&gt;Mal&#39;Ganis&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#whitemane&quot;&gt;Whitemane&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#valeera&quot;&gt;Valeera&lt;/a&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#liming&quot;&gt;Li-Ming&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#tracer&quot;&gt;Tracer&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;tank&quot;&gt;Tank&lt;/h1&gt;
&lt;h2 id=&quot;blaze&quot;&gt;Blaze&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/blaze.png&quot; title=&quot;Blaze&quot; data-description=&quot;Blaze&quot; data-gallery=&quot;media-41&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/K33Nq2Zwh4-732.webp&quot; alt=&quot;Blaze&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Bunker Drop (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Health increased from 1435 to 1440.&lt;/li&gt;
&lt;li&gt;Cooldown increased from 70 to 75.&lt;/li&gt;
&lt;li&gt;Mana cost increased from 70 to 75.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pyromania (D)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Additional Functionality: Damage dealt to None-Structures applies Afterburn stack that deals 7 damage per second and lasts for 3 seconds, can be stacked 5 times, Afterburn deals twice the damage against Heroes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 7&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Crossfire (Q)
&lt;ul&gt;
&lt;li&gt;Additional Functionality: Hitting an enemy with both streams of Flame Stream increases Afterburn damage by 50%, this effect can stacks twice and lasts until the enemy has no Afterburn stacks.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Level 20&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Blaze It (Passive)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Afterburn now deals triple the damage against Enemy Heroes, heroes who take 420 damage from Afterburn are stunned for 1 seconds then Blinded, Silenced and have their vision reduced for 2 seconds, can only occur once every 15 seconds for each Enemy Hero.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Blaze will be smoking with those changes that should hopefully solve his abysmal winrate.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;diablo&quot;&gt;Diablo&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/diablo.png&quot; title=&quot;Diablo&quot; data-description=&quot;Diablo&quot; data-gallery=&quot;media-42&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/sFXrghDps2-732.webp&quot; alt=&quot;Diablo&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 13&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Devastating Charge (Q)
&lt;ul&gt;
&lt;li&gt;No longer increases Shadow Charge&#39;s Terrain Collision damage.&lt;/li&gt;
&lt;li&gt;Armor reduction increased from 15 to 20.&lt;/li&gt;
&lt;li&gt;Additional functionality: Reduces healing received by 50% for 4 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Devastating Charge is still oppressive to a lot of players, after getting 10 cease and desist letters from Hug a Wall Society we&#39;ve decided to finally change it to something more utility focused and disallow Diablo from one shotting anyone.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;etc&quot;&gt;E.T.C.&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/etc.png&quot; title=&quot;E.T.C.&quot; data-description=&quot;E.T.C.&quot; data-gallery=&quot;media-43&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/gYc59c7iFg-732.webp&quot; alt=&quot;E.T.C.&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 20&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Death Metal (Passive)
&lt;ul&gt;
&lt;li&gt;Now is an Active&lt;/li&gt;
&lt;li&gt;Adjusted Functionality: Upon channeling for 1 second, E.T.C. dies and cast Mosh Pit in its place. [Passive] Enemy heroes who get stunned with Mosh Pit while dead reduces E.T.C.&#39;s Death Timer by 15 seconds up to 60 seconds per stunned hero. [Passive] Upon dying cast Mosh Pit that lasts 2 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; E.T.C. is ready to put on a &lt;em&gt;big&lt;/em&gt; show!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;garrosh&quot;&gt;Garrosh&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/garrosh.png&quot; title=&quot;Garrosh&quot; data-description=&quot;Garrosh&quot; data-gallery=&quot;media-44&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/czx6lJA99u-732.webp&quot; alt=&quot;Garrosh&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wrecking Ball (W)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 16 to 18.&lt;/li&gt;
&lt;li&gt;Mana cost increased from 60 to 75.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Decimate (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Bonus damage against Heroes increased from 100% to 200%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 1&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Unrivaled Strength (E)
&lt;ul&gt;
&lt;li&gt;Additional Functionality: Basic attacks against heroes reduces Wrecking Ball&#39;s cooldown by 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Level 16&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Rough Landing (Q)
&lt;ul&gt;
&lt;li&gt;Additional Functionality: Groundbreaker&#39;s edge now slightly pull Heroes back to Garrosh but no longer stun and Wrecking Ball cooldown increased by 2 seconds.&lt;/li&gt;
&lt;li&gt;Renamed to &lt;strong&gt;Unbalanced Landing&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We want you to pick these talents. Please.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;malganis&quot;&gt;Mal&#39;Ganis&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/malganis.png&quot; title=&quot;Mal&#39;Ganis&quot; data-description=&quot;Mal&#39;Ganis&quot; data-gallery=&quot;media-45&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ltF8MDQiMW-732.webp&quot; alt=&quot;Mal&#39;Ganis&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Health reduced from 2500 to 2395.&lt;/li&gt;
&lt;li&gt;Health Regeneration reduced from 5.21 to 5.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;(New Ability) Connected Vampirism&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Cast Connected Vampirism on an Ally, while they are above 75% health basic attacks against Enemy Heroes from allies causes Mal&#39;Ganis to steal 1% of their Allies maximum health, Allies with Connected Vampirism receive 10% of the damage dealt by Mal&#39;Ganis as healing, this healing effect is doubled against Enemy Heroes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 20&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Wrath of Nathreza (R)
&lt;ul&gt;
&lt;li&gt;Damage dealt to nearby targets reduced from 75% to 50%.&lt;/li&gt;
&lt;li&gt;Additional Functionality: Casting Dark Conversion applies Connected Vampirism for nearby Allies for 3 seconds.&lt;/li&gt;
&lt;li&gt;Allies with Connected Vampirism only benefit from the primary target.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; I must feed...&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;bruiser&quot;&gt;Bruiser&lt;/h1&gt;
&lt;h2 id=&quot;dehaka&quot;&gt;Dehaka&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/dehaka.png&quot; title=&quot;Dehaka&quot; data-description=&quot;Dehaka&quot; data-gallery=&quot;media-46&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/MkUQV2V9sr-732.webp&quot; alt=&quot;Dehaka&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 20&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Mutation (Q)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;After successfully hitting a hero with Drag receive a random Basic Ability from them, can be used once.&lt;/li&gt;
&lt;li&gt;Cannot receive unit target abilities that requires an ally.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Essence Claws (Passive)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We&#39;ve went through some of Dehaka&#39;s Storm Talents and Essence Claws was seriously underperforming compared to the other 3 on that tier, we&#39;ve replaced it with a whole new unique talent! And no don&#39;t even tell us what you are thinking right now, just pick it!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;dva&quot;&gt;D.Va&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/dva.png&quot; title=&quot;D.Va&quot; data-description=&quot;D.Va&quot; data-gallery=&quot;media-47&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/CbXmYctKQk-732.webp&quot; alt=&quot;D.Va&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Mech health increased from 2000 to 2200.&lt;/li&gt;
&lt;li&gt;Mech health regeneration increased from 4.168 to 4.5848.&lt;/li&gt;
&lt;li&gt;Pilot health reduced from 1109 to 960.&lt;/li&gt;
&lt;li&gt;Pilot health regeneration reduced from 2.5664 to 2.2071&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Boosters (Q/Mech Mode)
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 9 to 10.&lt;/li&gt;
&lt;li&gt;Additional functionality: If D.Va doesn&#39;t take nor deal damage during Boosters, lower the cooldown by 5 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Defense Matrix (W/Mech Mode)
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 10 to 11.&lt;/li&gt;
&lt;li&gt;Cooldown starts immediately upon casting Defense Matrix.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Call Mech (E/Pilot Mode)
&lt;ul&gt;
&lt;li&gt;Cooldown reduced from 45 to 40.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bunny Hop (R)
&lt;ul&gt;
&lt;li&gt;Cooldown reduced from 90 to 70.&lt;/li&gt;
&lt;li&gt;Damage dealt increased from 60 to 72.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Ability) Micro Missiles (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Launch 20 explosive rockets over 2 seconds dealing 30 damage and 15 for nearby targets.&lt;/li&gt;
&lt;li&gt;15 seconds cooldown&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Big Shot (R/Pilot Mode)
&lt;ul&gt;
&lt;li&gt;Now baseline&lt;/li&gt;
&lt;li&gt;Damage reduced from 250 to 194.&lt;/li&gt;
&lt;li&gt;Call Mech&#39;s cooldown reduction reduced from 8 to 5.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Mechanized Walker (Z)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: While in her Mech, D.Va can shoot while moving, but her base movement speed is reduced by 15% while basic attacking or using Basic Abilities.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Rush-down (Q)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Hit The Nitros (Q)
&lt;ul&gt;
&lt;li&gt;Additional functionality: Knockback distance of Boosters is increased by 100% for the first 0.5 seconds of casting Boosters.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Pro Moves (Trait)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: D.Va&#39;s Mech gains 1% Movement Speed for 1.25 second every time she takes damage, up to 15%. [Quest] Damage 20 enemy Heroes with Boosters. [Reward] D.Va&#39;s Mech basic attacks and basic abilities now reduce her movement speed by 10%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Crash Course (Q)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 4
&lt;ul&gt;
&lt;li&gt;Diverting Power (W)
&lt;ul&gt;
&lt;li&gt;Movement speed reduction increased from 30% to 35%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Get Through This! (W)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fusion Generator (W)
&lt;ul&gt;
&lt;li&gt;Move to level 7.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bring It On (E)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;Coming Through (Q)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Dazer Zone (W)
&lt;ul&gt;
&lt;li&gt;Slow increased from 20% to 25%.&lt;/li&gt;
&lt;li&gt;Moved to level 13.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Nuclear Option (E)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Increase Self-Destruct damage by 50% but Mech explosion delay is increased by 1, Self-Destruct&#39;s Charge amount gained from losing Mech Health is increased by 30%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Expensive Plating (Trait)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Torpedo Dash (Q)
&lt;ul&gt;
&lt;li&gt;Moved to level 1.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Nanoweave Suit (Trait)
&lt;ul&gt;
&lt;li&gt;Armor increased from 50 to 75.&lt;/li&gt;
&lt;li&gt;Moved to Level 4.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Suppressing Fire (Trait)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Exposing Weaknesses (W)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Enemy heroes who are affected by Defense Matrix have their armor reduced by 10, taking 10% more damage.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Pew! Pew! Pew! (R)
&lt;ul&gt;
&lt;li&gt;Damage reduction per shot reduced from 50% to 35%.&lt;/li&gt;
&lt;li&gt;Moved to 16.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Concussive Pulse (W)
&lt;ul&gt;
&lt;li&gt;Moved to level 4.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Focused Fire (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Each 4th consecutive hit on the same hero increases the next micro missile damage by 200%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Nerf This! (E)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Firing Big Shot on your Mech causes the Mech to explode in 1 second, but Call Mech cooldown gets increased by 6 seconds, this duration cannot be reduced by Big Shot.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th style=&quot;text-align:center&quot;&gt;Level (Tier)&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;D.Va TALENTS&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;/th&gt;
&lt;th style=&quot;text-align:center&quot;&gt;&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;1 (1)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Hit the Nitros (Q)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;strong&gt;Torpedo Dash (Q)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;(!)Pro Moves (Trait)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;4 (2)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Diverting Power (W)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;strong&gt;Concussive Pulse (W)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;strong&gt;Nanoweave Suit (Trait)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;7 (3)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Aggression Matrix (W)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;strong&gt;Fusion Generator (W)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Nuclear Option (E)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;10 (4)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Bunny Hop&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;em&gt;Micro Missiles&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;13 (5)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;strong&gt;Dazer Zone (W)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Ablative Armor (Trait)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Emergency Shielding (Trait)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;16 (6)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;em&gt;Exposing Weaknesses (W)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;strong&gt;Pew! Pew! Pew! (R)&lt;/strong&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;GG, WP (Trait)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style=&quot;text-align:center&quot;&gt;20 (7)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;em&gt;Nerf This! (E)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;MEKAfall (E)&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;&lt;em&gt;Focused Fire (R)&lt;/em&gt;&lt;/td&gt;
&lt;td style=&quot;text-align:center&quot;&gt;Stop and Pop (R)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;ul&gt;
&lt;li&gt;(!) indicates a Questing Talent.&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Italic text&lt;/em&gt; indicates a &lt;strong&gt;&lt;em&gt;NEW&lt;/em&gt;&lt;/strong&gt; Talent.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bold text&lt;/strong&gt; indicates a &lt;strong&gt;MOVED&lt;/strong&gt; Talent.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Our D.Va rework has finally hit the Nexus, these changes hopefully should make D.Va less of a liability and have more of a strong focused Bruiser role while having a focused support build.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;sonya&quot;&gt;Sonya&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/sonya.png&quot; title=&quot;Sonya&quot; data-description=&quot;Sonya&quot; data-gallery=&quot;media-48&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/FnZ_aywDDF-732.webp&quot; alt=&quot;Sonya&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 13&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Passive Aggressive (Passive)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;After not taking damage or dealing Basic Attack damage for 1 second, increase your next basic attack damage by 20% every 0.25 seconds up to 300%, if Sonya attacks an enemy with 300% damage increase generates 30 Fury. [Passive] While out of combat for 3 seconds Sonya loses 5 Fury per second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;thrall&quot;&gt;Thrall&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/thrall.png&quot; title=&quot;Thrall&quot; data-description=&quot;Thrall&quot; data-gallery=&quot;media-49&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/vn6HUHQpV6-732.webp&quot; alt=&quot;Thrall&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 1&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Rolling Thunder (Q)
&lt;ul&gt;
&lt;li&gt;New Functionality: [Passive] Increase the number of Chain Lightning bounces by 1. Casting Chain Lightning on an Enemy Hero causes the next heal from Frostwolf Resilience to heal 5% of Thralls Maximum Health over 5 seconds, this heal refreshes if Thrall is healed by Frostwolf Resilience while its active.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We are rolling another new functionality that hopefully makes Rolling Thunder compete with the other talents.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;support&quot;&gt;Support&lt;/h1&gt;
&lt;h2 id=&quot;abathur&quot;&gt;Abathur&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/abathur.png&quot; title=&quot;Abathur&quot; data-description=&quot;Abathur&quot; data-gallery=&quot;media-50&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/qyZhMvCKGN-732.webp&quot; alt=&quot;Abathur&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 7&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Calldown: MULE (Active)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Spawn Drone (Active)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Spawns a Drone in a visible location targeting the nearest Fort or Keep (regardless of being destroyed) and morphs into a Hatchery. Hatcheries slowly repairs all structures nearby by 25 health every second and spawns a Roachling and 2 Zerglings every 25 seconds, Hatcheries have 750 health and lasts 60 seconds.&lt;/li&gt;
&lt;li&gt;90 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Level 20&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Evolved For Combat (Passive)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Increase Abathur&#39;s Basic Attack damage by 100%, basic attacks against enemy heroes grabs a stack of Biomass, each stack of Biomass increases Abathur basic attack by an additional 100% and reduces Abathur&#39;s respawn time by 10 per stack up to 50 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We&#39;ve heard some of the players feedback regarding adding unique talents to flesh out our heroes, these Abathur change should hopefully address this.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;medivh&quot;&gt;Medivh&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/medivh.png&quot; title=&quot;Medivh&quot; data-description=&quot;Medivh&quot; data-gallery=&quot;media-51&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/_AJSyLc7lG-732.webp&quot; alt=&quot;Medivh&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Ley Line Seal (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Cooldown reduced from 80 to 75.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 7&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Arcane Explosion
&lt;ul&gt;
&lt;li&gt;Additional functionality: Increases Force of Will cooldown by 1.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Level 20&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Medivh Cheats!
&lt;ul&gt;
&lt;li&gt;Additional functionality: Reduces Ley Line Seal cooldown by 6 per hero hit while restoring 5% of your maximum mana.&lt;/li&gt;
&lt;li&gt;Can now be redirected twice.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Medivh Cheats... again!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;vikings&quot;&gt;The Lost Vikings&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/vikings.png&quot; title=&quot;The Lost Vikings&quot; data-description=&quot;The Lost Vikings&quot; data-gallery=&quot;media-52&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/KGscMa6UQV-732.webp&quot; alt=&quot;The Lost Vikings&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Baleog&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Health increased from 1180 to 1095.&lt;/li&gt;
&lt;li&gt;Health Regeneration increased from 2.46 to 2.22.&lt;/li&gt;
&lt;li&gt;Basic Attack damage increased from 78 to 73.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Erik&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Health increased from 840 to 767.&lt;/li&gt;
&lt;li&gt;Health Regeneration increased from 1.75 to 1.6.&lt;/li&gt;
&lt;li&gt;Basic Attack damage increased from 65 to 60.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Olaf&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Health increased from 1540 to 1424.&lt;/li&gt;
&lt;li&gt;Health Regeneration increased from 3.21 to 2.97.&lt;/li&gt;
&lt;li&gt;Basic Attack damage increased from 57 to 52.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; The last changes our Lost Vikings received have made them achieve the highest winrate of any hero on top of very solid 28% popularity in high masters. We are going to revert some of the buffs they&#39;ve received in hope of tuning them down.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;tassadar&quot;&gt;Tassadar&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/tassadar.png&quot; title=&quot;Tassadar&quot; data-description=&quot;Tassadar&quot; data-gallery=&quot;media-53&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/oVESbTA_iE-732.webp&quot; alt=&quot;Tassadar&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Basic Attacks damage increased from 15 to 34.&lt;/li&gt;
&lt;li&gt;Basic Attacks now deal as Spell Damage.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;(New Ability) Feedback (Active)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Steal 90% of the enemy hero&#39;s current mana and deal 102 damage on top of the amount of mana that was stolen over 3 seconds, enemy heroes who are affected by Feedback regain half of their stolen mana over 9 seconds. [Passive] Spell damage reduces Feedback cooldown by 0.5 seconds.&lt;/li&gt;
&lt;li&gt;90 seconds cooldown, 75 mana cost.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Templar&#39;s Will (Passive)
&lt;ul&gt;
&lt;li&gt;New functionality: Tassadar Basic Attacks against heroes deal 1% of their maximum health and reduces Feedback&#39;s cooldown by 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Adun&#39;s Wisdom (Trait)
&lt;ul&gt;
&lt;li&gt;Cooldown charge rate increased from 75% to 100%.&lt;/li&gt;
&lt;li&gt;Additional Functionality: While Oracle is active, Feedback cooldown reduction from spells is quadrupled.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Focused Beam (Trait)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Oracle duration increase by 1, basic attacks deal 0.5% of the heroes maximum health, while Oracle is active, deal an additional 1.5% of the heroes maximum health.&lt;/li&gt;
&lt;li&gt;This damage stacks with other similar effects.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Thank you for your patience.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;healer&quot;&gt;Healer&lt;/h1&gt;
&lt;h2 id=&quot;ana&quot;&gt;Ana&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/ana.png&quot; title=&quot;Ana&quot; data-description=&quot;Ana&quot; data-gallery=&quot;media-54&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/8QIozuyz4G-732.webp&quot; alt=&quot;Ana&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;Anti-Healer (W)
&lt;ul&gt;
&lt;li&gt;Additional functionality: All damage dealt and crowd control effects are 50% more effective against Healers and Supports.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Night Terrors (E)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: During sleep and for the 2 seconds after, their vision is greatly reduced, their map is disabled and non visible areas are replaced with a black fog.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; As our ongoing development in improving talents we are changing some of Ana&#39;s talent functionalities to give her enemies exactly what would they expect from Ana.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;anduin&quot;&gt;Anduin&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/anduin.png&quot; title=&quot;Anduin&quot; data-description=&quot;Anduin&quot; data-gallery=&quot;media-55&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ts0AL1tvot-732.webp&quot; alt=&quot;Anduin&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abiltiies&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Leap of Faith
&lt;ul&gt;
&lt;li&gt;Cooldown reduced from 80 to 60.&lt;/li&gt;
&lt;li&gt;Now can pull enemies.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Because they need faith and hope too you know.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;lili&quot;&gt;Li Li&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/lili.png&quot; title=&quot;Li Li&quot; data-description=&quot;Li Li&quot; data-gallery=&quot;media-56&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/wznBtlIAgH-732.webp&quot; alt=&quot;Li Li&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Healing Brew (Q)
&lt;ul&gt;
&lt;li&gt;Healing increased from 175 to 212.&lt;/li&gt;
&lt;li&gt;Now a skillshot.&lt;/li&gt;
&lt;li&gt;Cooldown increased from 4 to 5.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Blinding Wind (E)
&lt;ul&gt;
&lt;li&gt;Now hits all targets in a radius of 4 in an arc in front of Lili.&lt;/li&gt;
&lt;li&gt;Damage reduced from 133 to 119.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Free Drinks (Q)
&lt;ul&gt;
&lt;li&gt;Cooldown reduction increased from 1 to 2.5.&lt;/li&gt;
&lt;li&gt;Health threshold increased from 50% to 60%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;The Good Stuff (Q)
&lt;ul&gt;
&lt;li&gt;Healing increased from 42 to 50.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Mass Vortex (E)
&lt;ul&gt;
&lt;li&gt;Adjusted Functionality: Increase Blinding Wind&#39;s arc and range by 25%, Blinding Wind deals 50% additional damage for 2 Heroes hit and 25% additional damage for each additional hero.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Two For One (Q)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Upon healing a hero with Healing Brew, share a drink with the nearest target (prioritize heroes) to that hero, if there are no targets nearby the healing effects are doubled.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Pick Me Up (Q)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Healing Brew grants 15% movement speed for 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Lili is one of the easiest characters to play that requires no skill at all to be effective due how her abilities function, we&#39;ve adjusted how these abilities work in general to allow buffing her kit to be both competitive in the lower and higher league.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;uther&quot;&gt;Uther&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/uther.png&quot; title=&quot;Uther&quot; data-description=&quot;Uther&quot; data-gallery=&quot;media-57&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/pdraOzrpjX-732.webp&quot; alt=&quot;Uther&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Devotion (Trait)
&lt;ul&gt;
&lt;li&gt;Armor reduced from 25 to 15.&lt;/li&gt;
&lt;li&gt;Armor duration reduced from 2 to 1.5 seconds.&lt;/li&gt;
&lt;li&gt;Additional functionality: [Quest] Heal and prevent 60,000 damage to you and allies with your basic abilities. [Reward] After accumulating 60,000 healing and damage prevented Uther acquires Redemption.
Redemption: After Eternal Vanguard ends, Uther revives at the spirits location with half of his health restored. This effect has 300 seconds cooldown, everytime Uther heals and prevent damage reduces Redemption cooldown by 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Holy Light (Q)
&lt;ul&gt;
&lt;li&gt;Healing reduced from 362 to 340.&lt;/li&gt;
&lt;li&gt;Healing received for healing allies reduced from 181 to 170.&lt;/li&gt;
&lt;li&gt;Additional functionality: [Quest] Heal and prevent 15,000 damage to you and allies with Holy Light. [Reward] After accumulating 15,000 healing and damage prevented with Holy Light, Holy Light mana cost reduced by 20, range increased by 25% and cooldown reduced by 2 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Holy Radiance (W)
&lt;ul&gt;
&lt;li&gt;Healing reduced from 177 to 160.&lt;/li&gt;
&lt;li&gt;Damage dealt reduced from 177 to 160.&lt;/li&gt;
&lt;li&gt;Additional functionality: [Quest] Heal and prevent 15,000 damage to you and allies with Holy Radiance. [Reward] After accumulating 15,000 healing and damage prevented with Holy Radiance, damaging or healing Heroes with Holy Radiance refunds 5 Mana and reduces its cooldown by 0.5 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Silver Touch (Q)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Wave of Light (W)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Faith (Trait/Quest)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;[Quest] Heal and prevent 60,000 damage to you and allies with your basic abilities. [Reward] After accumulating 60,000 healing and damage prevented, Devotion grants 10% additional armor and duration increased by 1 second.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Divine Haste (Trait)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Devotion grants 10% movement for 2 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;Guardian of Ancient Kings (Trait)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Healing a Hero that is Stunned, Rooted, or Silenced doubles the Armor amount they receive from Devotion.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Benediction
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 60 to 90.&lt;/li&gt;
&lt;li&gt;Now resets all abilities upon activation.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Redemption
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Unstoppable Justice (Trait)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Uther can use Holy Radiance during Eternal Vanguard, each hero healed or hit by Holy Radiance or Flash of Light increases Eternal Vanguard duration by 0.25 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Uther trait has been an issue when it comes to balancing and with the addition of armor that he was given to use he has been rather a very solid pick with a high winrate. With that, we baked some of the level 1 and 20 talents as quests that slowly empowers his base kit games on while reward skillful and timed play by completing those quests and granting other certain unique powers that he can use.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;whitemane&quot;&gt;Whitemane&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/whitemane.png&quot; title=&quot;Whitemane&quot; data-description=&quot;Whitemane&quot; data-gallery=&quot;media-58&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/x48PnLk8ZM-732.webp&quot; alt=&quot;Whitemane&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Health increased from 1400 to 1498.&lt;/li&gt;
&lt;li&gt;Health regeneration increased from 2.9218 to 3.126326.&lt;/li&gt;
&lt;li&gt;Basic Attack damage 62 to 69.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Desperate Plea (Q)
&lt;ul&gt;
&lt;li&gt;Mana cost increased from 45 to 60.&lt;/li&gt;
&lt;li&gt;Mana increase per stack of Desperation reduced from 45 to 40.&lt;/li&gt;
&lt;li&gt;Healing amount increased from 140 to 160.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Inquisition (W)
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 12 to 13.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Scarlet Aegis (R)
&lt;ul&gt;
&lt;li&gt;Duration reduced from 4 to 3.&lt;/li&gt;
&lt;li&gt;Armor increased from 40 to 60.&lt;/li&gt;
&lt;li&gt;Healing amount increased from 250 to 275.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Divine Reckoning (R)
&lt;ul&gt;
&lt;li&gt;Mana restored from damage dealt reduced from 25% to 20%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Zeal (Trait)
&lt;ul&gt;
&lt;li&gt;Cooldown reduced from 40 to 30.&lt;/li&gt;
&lt;li&gt;Armor reduction increased from 25 to 30.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Clemency (Active)
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 12 to 13.&lt;/li&gt;
&lt;li&gt;Now removes all stacks of Desperation upon casting, each removed stack restores 50 mana.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 4
&lt;ul&gt;
&lt;li&gt;Unwavering Faith (Q)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Increase Whitemane&#39;s Basic Attack range by 1. Whitemane gains 10% increase damage dealt for each active Zeal buff.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Lashing Out (E)
&lt;ul&gt;
&lt;li&gt;If Searing Lash&#39;s second strike hits an enemy Hero, reduce its cooldown to 1 second and increase the next Searing Lash damage by 25% per hero hit up to 50%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Saintly Greatstaff (E)
&lt;ul&gt;
&lt;li&gt;Damage reduced from 55 to 40.&lt;/li&gt;
&lt;li&gt;Mark duration increased from 3 to 4.&lt;/li&gt;
&lt;li&gt;No longer removes the mark after the first basic attack.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We&#39;ve been monitoring the feedback for Whitemane for the past months and are ready to showcase our 4th attempt in reworking Whitemane, we&#39;ve decided to give Whitemane the ability to restore mana through baseline and thus allows players to focus on improving Whitemane outside without worrying when it comes mana problems.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;melee&quot;&gt;Melee Assassin&lt;/h1&gt;
&lt;h2 id=&quot;maiev&quot;&gt;Maiev&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/maiev.png&quot; title=&quot;Maiev&quot; data-description=&quot;Maiev&quot; data-gallery=&quot;media-59&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/kdwVBaMu6_-732.webp&quot; alt=&quot;Maiev&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Vault of the Wardens (D)
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 13 to 14 seconds.&lt;/li&gt;
&lt;li&gt;Additional functionality: Deals 15% more damage to Illidan.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Cruel Chain (W)
&lt;ul&gt;
&lt;li&gt;New functionality: Umbral Bind grants 25% Movement Speed for 2.5 seconds, and its pull damage is increased by 30% for each tethered target beyond the first, up to 120%.&lt;/li&gt;
&lt;li&gt;This is a reversion of the reversion to Cruel Chain&#39;s last functionality.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We weren&#39;t satisfied with the reversion to the changes we recently made to Maiev&#39;s Cruel Chain talent were a clear enough win for the hero overall, so we&#39;re going to revert the reversion we made to this talent.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;illidan&quot;&gt;Illidan&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/illidan.png&quot; title=&quot;Illidan&quot; data-description=&quot;Illidan&quot; data-gallery=&quot;media-60&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/LZfg-KyVbW-732.webp&quot; alt=&quot;Illidan&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Betrayer&#39;s Thirst (D)
&lt;ul&gt;
&lt;li&gt;Additional functionality
&lt;ul&gt;
&lt;li&gt;Now grants immunity to Blind.&lt;/li&gt;
&lt;li&gt;Vision is greatly reduced.&lt;/li&gt;
&lt;li&gt;Deal 15% less damage to Maiev.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Blind heroes can&#39;t be blinded, they don&#39;t really see well either.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;qhira&quot;&gt;Qhira&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/qhira.png&quot; title=&quot;qhira&quot; data-description=&quot;qhira&quot; data-gallery=&quot;media-61&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/nLI5rSBgSt-732.webp&quot; alt=&quot;qhira&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;No Sanctuary (Passive)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) You are Already Dead&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Casting Blood Rage reduces healing received by 50% for all affected heroes, if the affected heroes are below 10% they die instantly instead.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;samuro&quot;&gt;Samuro&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/samuro.png&quot; title=&quot;Samuro&quot; data-description=&quot;Samuro&quot; data-gallery=&quot;media-62&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/ftpXpIgiKg-732.webp&quot; alt=&quot;Samuro&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Health reduced from 1725 to 1656&lt;/li&gt;
&lt;li&gt;Health regeneration reduced from 3.5898 to 3.4462&lt;/li&gt;
&lt;li&gt;Basic Attack damage reduced from 102 to 96.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We are reducing his damage to align him with other Assassins as its rather too much.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;valeera&quot;&gt;Valeera&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/valeera.png&quot; title=&quot;Valeera&quot; data-description=&quot;Valeera&quot; data-gallery=&quot;media-63&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/LWuWPcrxIV-732.webp&quot; alt=&quot;Valeera&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Thistle Tea (Active)
&lt;ul&gt;
&lt;li&gt;Cooldown increased from 40 to 60.&lt;/li&gt;
&lt;li&gt;Additional functionality: Now increases all damage dealt by 20% for 4 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Cold Blood (E)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Activate to increase the damage of Valeera&#39;s next Evicerate by 80%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We think Thistle would compete better if we gave it a damage increase component which should definetly increase the overall damage dealt by Valeera, also we are bringing back Cold Blood so Valeera can stab them in the neck with two poisoned tipped daggers before they can react.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;ranged&quot;&gt;Ranged Assassin&lt;/h1&gt;
&lt;h2 id=&quot;azmodan&quot;&gt;Azmodan&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/azmodan.png&quot; title=&quot;Azmodan&quot; data-description=&quot;Azmodan&quot; data-gallery=&quot;media-64&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/lRGftWRKrT-732.webp&quot; alt=&quot;Azmodan&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Trample (Active)
&lt;ul&gt;
&lt;li&gt;Range increased from 6 to 7&lt;/li&gt;
&lt;li&gt;Damage increased from 275 to 295.&lt;/li&gt;
&lt;li&gt;Additional Functionality: Enemy Heroes that die within 2 seconds of being hit with Trample reset the cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Trample has been struggling in competing with the other talents, this change should hopefully address this.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;chromie&quot;&gt;Chromie&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/chromie.png&quot; title=&quot;Chromie&quot; data-description=&quot;Chromie&quot; data-gallery=&quot;media-65&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/cPTPT8EAPV-732.webp&quot; alt=&quot;Chromie&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Abilities&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Sand Blast (Q)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Maximum amount of Sand Echoes increased from 1 to 10.&lt;/li&gt;
&lt;li&gt;Sand Echoes Abilities and Basic Attack damage reduced from 40% to 10%.&lt;/li&gt;
&lt;li&gt;15 mana cost, 2 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Dragon&#39;s Breath (W)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;New Functionality: Launch 8 blasts into the air that land every 0.25 seconds in a large area randomly, dealing 153 damage each.&lt;/li&gt;
&lt;li&gt;Dragon&#39;s Breath Impact Radius increased from 2 to 2.5.&lt;/li&gt;
&lt;li&gt;Cast range increased from 13 to 16.&lt;/li&gt;
&lt;li&gt;50 mana, 10 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Temporal Loop (R)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Adjusted Functionality: Choose an enemy Hero. After 3 seconds, they are teleported back to the location where Temporal Loop was cast on them, during that time Sand Blast cooldown has been removed and Dragon&#39;s Breath has been set to 1.5 seconds.&lt;/li&gt;
&lt;li&gt;Cooldown increased from 50 to 60.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Level 1&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Once Again for the First Time (Q)
&lt;ul&gt;
&lt;li&gt;Adjusted Functionality: Upon quest completion increases Sand Echoes damage by an additional 10% and allows Chromie to spawn 2 more additional Sand Echoes.&lt;/li&gt;
&lt;li&gt;Quest completion stacks increased from 40 to 60.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Level 18&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Stuck in a Loop (R)
&lt;ul&gt;
&lt;li&gt;No longer increases recharge rate.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Chromie has been in a really weird spot in the meta especially with her underperforming Q quest, these changes should hopefully solve of the issues we&#39;ve seen with Chromie in the past few months of data collecting and we should expect a high increase in winrate, either way expect more of changes like these for Chromie in the next couple of months.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;genji&quot;&gt;Genji&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/genji.png&quot; title=&quot;Genji&quot; data-description=&quot;Genji&quot; data-gallery=&quot;media-66&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/tmapXBxrFr-732.webp&quot; alt=&quot;Genji&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;60&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Basic attack damage increased from 44 to 48.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; This tiny yet promising buff should be the start of our upcoming Genji changes that we are planning in the next couple of patches.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;undefined&quot;&gt;Nova&lt;/h2&gt;
&lt;p&gt;![](https://cdn.discordapp.com/attachments/604638273452638208/692062665933193327/Nova_but_where_is_she.png &amp;quot;Nova&amp;quot;)&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Basic ‍??? ‍ ‍ ‍ ‍ ‍ ‍?? ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ from ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍ to 10 ‍&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level ‍6
&lt;ul&gt;
&lt;li&gt;?!?? (W)
&lt;ul&gt;
&lt;li&gt;Armor ???? from undefined to undefined.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;‍ ‍
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;**(New Talent) undefined ()**
&lt;ul&gt;
&lt;li&gt;Nova&#39;s Holo Decoy also cast which deals undefined% damage.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&amp;lt;blockquote&amp;gt;
&amp;lt;b&amp;gt;Developer Comment:&amp;lt;/b&amp;gt; Nova has been ???? in general, these changes should ? her in while ?????? ? ???????? ?? ??? and kill ?? ???? ?????.
&amp;lt;/blockquote&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;a href=&amp;quot;#top&amp;quot;&amp;gt;Return to Top&amp;lt;/a&amp;gt;&lt;/p&gt;
&lt;h2 id=&quot;liming&quot;&gt;Li-Ming&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/liming.png&quot; title=&quot;Li-Ming&quot; data-description=&quot;Li-Ming&quot; data-gallery=&quot;media-67&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/Nyt1WAVYL2-732.webp&quot; alt=&quot;Li-Ming&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;61&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 4
&lt;ul&gt;
&lt;li&gt;Triumvirate (W)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Ess of Johan (W)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;If Arcane Orb hits an enemy Hero after traveling at least 85%, they are pulled toward its center.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;Zei&#39;s Vengeance
&lt;ul&gt;
&lt;li&gt;Damage reduced from 30% to 25%.&lt;/li&gt;
&lt;li&gt;Cooldown reduction increased from 1 to 3.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Calamity (E)
&lt;ul&gt;
&lt;li&gt;Damage reduced from 300 to 290.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Glass Cannon (Passive)
&lt;ul&gt;
&lt;li&gt;Maximum health reduction reduced from 15% to 10%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Arcane Orbit (W)
&lt;ul&gt;
&lt;li&gt;Travel distance reduced from 25% to 15%.&lt;/li&gt;
&lt;li&gt;Additional Functionality: Increases distance travel damage by 15%.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; Despite all the Orb changes its still underperforming badly compared to Calamity build, these changes should finally address her weakest talents.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&quot;tracer&quot;&gt;Tracer&lt;/h2&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/heroes/tracer.png&quot; title=&quot;Tracer&quot; data-description=&quot;Tracer&quot; data-gallery=&quot;media-68&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/qo07l9N6_c-732.webp&quot; alt=&quot;Tracer&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;732&quot; height=&quot;59&quot;&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stats&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Basic attack damage reduced from 26 to 25.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Talents&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Level 1
&lt;ul&gt;
&lt;li&gt;Slipstream (E)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Recall cooldown is reduced by 5 seconds, but the amount of time Recalled is reduced by 1 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 7
&lt;ul&gt;
&lt;li&gt;Jumper (Q)
&lt;ul&gt;
&lt;li&gt;Removed.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Bullet Time (Q)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: Basic Attacks lower the cooldown of Blink by 0.05 seconds, this gets tripled against Heroes.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Spatial Echo (Q)
&lt;ul&gt;
&lt;li&gt;Removed&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Space Sickness (Q)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Activate to increase your next Blink range by 75%, heroes that are caught through that blink are stunned for 0.5 seconds.&lt;/li&gt;
&lt;li&gt;25 seconds cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;(New Talent) Time Paradox (Q)&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;Blink grants 1 stack of evasion that lasts for 0.5 second, can only have 1 stack.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 13
&lt;ul&gt;
&lt;li&gt;Bullet Spray (W)
&lt;ul&gt;
&lt;li&gt;Additional functionality: Reduces Tracer&#39;s Melee cooldown by 2 seconds.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 16
&lt;ul&gt;
&lt;li&gt;Focus Fire (Trait)
&lt;ul&gt;
&lt;li&gt;Adjusted functionality: For every 5th basic attack on the same target, increase all damage dealt by Tracer to them by 5% up to 15%, lasts 2.5 seconds, basic attacks refresh this duration.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Level 20
&lt;ul&gt;
&lt;li&gt;Get Stuffed! (W)
&lt;ul&gt;
&lt;li&gt;No longer reduces Melee&#39;s cooldown.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Developer Comment:&lt;/strong&gt; We&#39;ve seen that Tracer talent tree could use some improvements, here&#39;s a couple of few ideas we&#39;ve been testing out.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7Xj-blAJtZ-800.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;50&quot;&gt;&lt;/p&gt;
&lt;h1 id=&quot;bugfixes&quot;&gt;Bug Fixes:&lt;/h1&gt;
&lt;ul&gt;
&lt;li&gt;Fixed an unexpected search result in queues resulting in insanely fast games being found in 5 ~ 15 seconds in QM.&lt;/li&gt;
&lt;li&gt;Fixed an issue where Whitemane Skeletal Mesh &amp;quot;Legs&amp;quot; Component would stretch more than intended.&lt;/li&gt;
&lt;li&gt;Tracer&#39;s &amp;quot;Recall&amp;quot; no longer causes a time paradox and duplicate herself on the battlefield followed by a server crash for that match.&lt;/li&gt;
&lt;li&gt;Fixed an Anub&#39;Arak in the game.&lt;/li&gt;
&lt;li&gt;Tracer&#39;s Melee no longer misses the target.&lt;/li&gt;
&lt;li&gt;Samuro can no longer swap while in the Hall of Storms.&lt;/li&gt;
&lt;li&gt;Thrall&#39;s &amp;quot;Earthquake&amp;quot; no longer makes Sky Temple fall out of the sky.&lt;/li&gt;
&lt;li&gt;Fixed an issue where Mercy deal a surprising amount of damage, unintentionally.&lt;/li&gt;
&lt;li&gt;Probius&#39;s &amp;quot;Warp Rifts&amp;quot; no longer disable the map&#39;s lightning while they are inside the player&#39;s screen.&lt;/li&gt;
&lt;li&gt;Multiple multiplicative fixes for multiple abilities that grants Spell Power and Physical Damage multipliers.&lt;/li&gt;
&lt;li&gt;Brightwing&#39;s Polymorphs no longer replaces the victims texture with the animal they were turned into.&lt;/li&gt;
&lt;li&gt;Rehgar going back from Spirit form no longer causes to displace one of his shoulders for the rest of the match in Orc form.&lt;/li&gt;
&lt;li&gt;Infinite Quests
&lt;ul&gt;
&lt;li&gt;Fixed the occurrence of dealing infinite damage due going below 0 points and overflowing the value.&lt;/li&gt;
&lt;li&gt;Fixed an issue where the player can go lower below 0 stacks on a quest.&lt;/li&gt;
&lt;li&gt;Fixed an issue where players can receive negative stacks on their quests.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Fixed an issue where Probius cannot play his death sounds.&lt;/li&gt;
&lt;li&gt;Lucio no longer plays &amp;quot;It&#39;s Everyday Bro&amp;quot; while having Speed Boost active with Crossfade.&lt;/li&gt;
&lt;li&gt;Models no longer randomly T-pose in replay mode.&lt;/li&gt;
&lt;li&gt;Leoric no longer spawns a tower when he dies, again.&lt;/li&gt;
&lt;li&gt;Multiple fixes for UI in replay mode.&lt;/li&gt;
&lt;li&gt;Several AI fixes and improvements.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href=&quot;https://sami.shakkour.dev/blog/2020/hots-april-fools/#top&quot;&gt;Return to Top&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;glightbox media-link&quot; href=&quot;https://sami.shakkour.dev/assets/images/hots-april-fools/footer.png&quot; title=&quot;Happy April Fools BTW :)&quot; data-description=&quot;Happy April Fools BTW :)&quot; data-gallery=&quot;media-69&quot;&gt;&lt;img src=&quot;https://sami.shakkour.dev/img/7u1jXyzgeG-750.webp&quot; alt=&quot;Happy April Fools BTW :)&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;750&quot; height=&quot;86&quot;&gt;&lt;/a&gt;&lt;/p&gt;
</description><pubDate>Wed, 01 Apr 2020 10:00:00 +0000</pubDate>
      <dc:creator>Sami Shakkour</dc:creator>
      <guid>https://sami.shakkour.dev/blog/2020/hots-april-fools/</guid>
    </item>
  </channel>
</rss>