Help Support Our Growing Community

DOTAFire is a community that lives to help every Dota 2 player take their game to the next level by having open access to all our tools and resources. Please consider supporting us by whitelisting us in your ad blocker!

Want to support DOTAFire with an ad-free experience? You can support us ad-free for less than $1 a month!

Go Ad-Free
Smitefire logo

Join the leading DOTA 2 community.
Create and share Hero Guides and Builds.

Create an MFN Account


DOTAFire Blogs

A funnel for all the member blogs on DOTAFire. Clicking an article will take you to the members personal blog page to read the entire post.
Off Topic
July 02, 2018
+Rep Report
I have just begun making dota video :)
everyone see and comment for me
thank you very much !!!

Read More
May 29, 2018
+Rep Report
Having or creating a strategy with players from random servers, or even with your own friends/teammates can be a hustle when trying to catch up with their skills, (if you're noob) or making them follow you (If they're noob). But fear not. There is a soluble solution to that. First, during the banning phase and the picking of heroes, talk to your teammates first. You shouldn't pick a hero right of the bat because it's your favorite or something. Make sure that your team is consisted of these line-ups.

-Tanker (for pushing)
-Support (Obviously, you know what the roles of a support are)
-Hitter + free hit= Long range hitter (SOMEONE HAS TO ATTACK FROM THE BACK TO YA KNOW)
- Another hitter + tanker= Carry (NEVER FORGET THIS. THIS WILL BE YOUR KEY TO VICTORY!!!)

In picking your hero phase, learn to raise your versatility. Don't just stick to one hero. (this is not a relationship BTW) So in times you needed a new hero whether you are a support or carr…
Read More
May 18, 2018
+Rep Report
Hello, everyone! Just wanted to say that my Phantom Assassin guide is OFFICIALLY done! I'll be keeping it updated with the patches to come so don't worry about it being eventually outdated. Now, as for my next move, I'm planning to renew the Bloodseeker guide I made a while back and replace it with this new guide format I've created. Or, I may even make a guide on how to properly go about in solo ranked queues since I've realized that a lot of people are having trouble in this aspect of the game. Besides, I'm starting to get tired of people complaining about their teammates every game when they've basically asked for it by going into matchmaking on their own!

Read More
April 18, 2018
+Rep Report
My eyes beg me for sleep but how can I fall into the land of dreams and nightmares when tomorrow everything will end? After 7 years of blood and pain, All units from the Radiant and the Dire will face each other tomorrow before the dawn and may the gods help us against them.
When the silly dream of sleeping finally goes away I decide to do something more than waiting for the end so I head to the lake to pray with ancient rituals to have faith and strength for the battle. As I walk through the tall old trees and feel the jungle with heart and soul, I think about the years that passed, the blood that was spilled and the souls who were released. Was it all worth it? At first we needed to stop Dire and stop their monster like actions but the more time that passes, the more we became like those monsters. Doesn't matter anymore. Doubts that eat me like acid will end soon one way or another.
I finally reach the silver heart lake where several rivers feed its hunger. The reflection of silver m…
Read More
April 15, 2018
+Rep Report

Slardar: Slithereen Crush

Search around


It's been a while, eh? Don't worry, I'm still pretty much alive (at least physically, but inside...).

So, I've been tweaking around github and decided to split between real version of Dota 2 abilities and tutorial version. Meaning, there are 2 implementations for each ability created in different github branch.

Why the split? I thought that for beginners, it would be better if they just understand basic functions explained in this tutorial, and the ability scripts should only show what's essential for them. Meanwhile, the real version of the ability tends to have a lot of fuss and fancy APIs which may confuse the learners.

I've moved tutorial version of the abilities from "master" branch to "tutorial" branch. Previous links have been updated to the new links, so make sure you get the correct version.

In short, to download ability scripts, go to branch tutorial in the github to get the 'easy' version, and go to branch master to ge…
Read More
March 19, 2018
+Rep Report

Featured Hero :

My most proud creation! Winner of the HCC: Your Dream Hero. Reading her concept is NOT for the faint of heart!

Alryca utilizes Fire, Water, Wood, Metal, Earth (and SUN!) for her spells. Casting a spell that represents one if these elements will leave a trace essence that will modify and boost the next spell she'll cast. Each spell have it's own unique upgrades based on the element it's fused with, and this is what makes her so darn complicated. Each spell starts off weak, but with the right amalgamation, they can rival even the most strongest of ultimates.

Alryca have a grand total of 12 spells. And to get her big spells, she has to learn it from her talents. This gives a sad consequence that once she chose a talent, the other talent she didn't chose is a spell she'll never cast (until level 30).


Previous Page
Go to the previous spell.
Spell Library
Spells from her library shows here.
Next Page

Read More
February 05, 2018
+Rep Report

Chaos Knight's Chaos Bolt

Playing with projectile

EDIT: Some links have been updated due to github repository change.

Ability Form: Precache

I've been avoiding aesthetics up until now, but finally it's unavoidable anymore. If you look at the base .txt file, everything seems normal excluding that "precache" key-value.

Okay, here's the thing about precache: the engine is just pure lazy. It won't load any resources (such as particles and sounds) unless it is explicitly required. This 'precache' is a way to ensure the particle is required 'explicitly'. Spawning a hero is another one, but even the engine won't automatically load his/her voice until they're triggered to speak.
Particle not loaded means it won't show up. Got it?

Knowing a particle's path would require a Workshop Tools or a GCFScape, so if you don't want to be bothered by those, simply use the path I set there. The most essential particle is the "chaos_knight_chaos_bolt.vpcf" one; the rest is optional.

Logic: Tracking…
Read More

January 29, 2018
+Rep Report

Ogre Magi's Fireblast

Straight to the action

EDIT: Some links have been updated due to github repository change.

Previously we've been dealt with passive abilities, which tends to do their action on their modifiers. Now, this unit-targetted ability will have actions that is defined in the main lua instead; modifier will be a simple tag without action.

Ability Form (.txt file)

The base .txt filled with things that have been covered in the first tutorial. Fireblast is a unit-targeted ability which target enemies that may be heroes or creeps, and deals magical damage that may be dispelled by strong dispel but cannot pierce spell immunity.

A question may be raised as to why the damage section is empty even though Fireblast do damages its target. The thing is, it does not have considerable impact as long as your code follows this form. If the form has "AbilityDamage" value, the code may call "Ability:GetAbilityDamage()" to retrieve it. If the form uses "AbilitySpecial" instead, then…
Read More
January 26, 2018
+Rep Report

Troll Warlord's Fervor

a stack neverflow

EDIT: Some links have been updated due to github repository change.


There's not much to discuss for Fervor's base .txt and main lua. As a passive, Fervor does not require targetting filter and other important values, so the txt file is pretty much similar to Spell Shield. There is one difference, however, that it states "SpellDispellable" as no. This is optional, since it only affects the tooltip.
The ability file is also as simple as Spell Shield. A copy-paste, in fact, since the ability is not required to do anything other than spawning the modifier.

The actual actions happened at modifier instead, so let's focus on that one.

Modifier: Characteristics

This modifier should appear at buff bar, hence we need to show it. Since it is not on the background anymore, its characteristics should be specified, such as:
  • Is it hidden?
  • Is it a debuff? (Otherwise is a buff)
  • Is it can be purged?
  • Is it removed on death?

So far, Spell Shiel…
Read More
January 25, 2018
+Rep Report

Antimage: Spell Shield Lua

Let's get our hands dirty.

EDIT: Some links have been updated due to github repository change.

Ability Form Review

Take a brief look on the ability's .txt file. It's quite short, since it's a simple ability.
Notice that the ability has been renamed as "antimage_spell_shield_lua" in order to avoid collision with the real one.
It is a basic ability with a passive behavior, and nothing else. No need for cast points, unit targetting, spell immunity, etc etc. It also has just one ability specials, which defines the magic resistance bonus on each level.
In short, it's short.

Introducing: Main Lua File

Open up a text-editor, create new file and save it as "antimage_spell_shield_lua.lua", placed according to the .txt file. This will be the main script file, which defines what the ability does. Let's begin with the keypoints.

Class Identifier

You should generally want this particular line at the start of your lua files. This defines the start of a class for c…
Read More
<< 1 2 3 4 5 6 7 8 34 61 >>

DOTAFire is the place to find the perfect build guide to take your game to the next level. Learn how to play a new hero, or fine tune your favorite DotA hero’s build and strategy.

Copyright © 2019 DOTAFire | All Rights Reserved