• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Range modifier

Status
Not open for further replies.
Level 12
Joined
Mar 16, 2006
Messages
992
There's a method I use to do that, but no one believes it works.

It works perfectly for me. :3

Other than that, you're stuck with permanent upgrades using long rifles.
 
Level 34
Joined
Jul 4, 2007
Messages
5,552
What I should do, is looking for a legal unprotected version of Twinklecraft and look at the triggers/skills there since they did put a range modifier in it.


Too bad the ranges are messed up beyond the Acquisition Range.
 
Level 6
Joined
May 3, 2006
Messages
81
The upgrade works the easiest,

A hero learns a skill

Hero Learned Skill = Range Spell

Set level of upgrade (Range Upgrade based on Rifleman one) to level of ability for learning hero

It won't show up that your unit has the upgrade (like Range Upgrade - Level 1 under his attack stats) and it'll seem like he just got bonus attack range instantly without that "Upgrade Complete" sound. Make sure you give the unit the upgrade in Object Editor.
 
Level 9
Joined
Jul 3, 2008
Messages
495
There's a method I use to do that, but no one believes it works.

It works perfectly for me. :3

Other than that, you're stuck with permanent upgrades using long rifles.

What are you talking about? There is no other way to do it.
I understand why no one belives you if you dont show them how.

There are tree ways to do it.
1. Replace the unit with a simlar unit. Just change the
attack range. I would use chaos (orc ability) to morph the unit.

2. Use orbs to change between the unit attack indexs.
But this is a bad way to do it. I remember it hide the damage,
for index two.

3.Enable both attack index, and use the Drunken Haze
to disable melee or range attack. This surely hide the range damage.


I will recommand you to use option 1.
Take a look on this map. It use Option 3
 
2. Use orbs to change between the unit attack indexs.
But this is a bad way to do it. I remember it hide the damage,
for index two.

dont work

The orb enabling index is bugged, thus it can activate the attack 2 which enabling has no effect if you already have the attack 1 enabled unless is a different target type.

What I should do, is looking for a legal unprotected version of Twinklecraft and look at the triggers/skills there since they did put a range modifier in it.


Too bad the ranges are messed up beyond the Acquisition Range.

And I already thought about this cheap way :(
 
Level 19
Joined
Aug 24, 2007
Messages
2,888
There are 3 ways to change attack range
1- Easiest: You make the Attack Range 99999999999999 and you change aqusition range.
In this way game should count aqusition range as attack range as I know.
And Aqusition range can easly be changed with a trigger.
2- You can have 2 attacks with different range values and you can switch between them with enabling-disabling them (which can be done by adding abilities such as orb of fire)
3- You can have a range modifier upgrade and make your unit use that upgrade so as you increase the upgrade level range will be changed
 
There are 3 ways to change attack range
1- Easiest: You make the Attack Range 99999999999999 and you change aqusition range.
In this way game should count aqusition range as attack range as I know.
And Aqusition range can easly be changed with a trigger.

I tried and it doesn't work. If you prove that it works aka provide a map where this simple thing is working, I give you +rep

2- You can have 2 attacks with different range values and you can switch between them with enabling-disabling them (which can be done by adding abilities such as orb of fire)

The orb enabling index is bugged, thus it can activate the attack 2 which enabling has no effect if you already have the attack 1 enabled unless is a different target type.

Again, if you prove it works, another +rep to you

3- You can have a range modifier upgrade and make your unit use that upgrade so as you increase the upgrade level range will be changed

It will affect all units of the specified type. (thats what I forgot to write, but still too much)
 
Level 12
Joined
Mar 16, 2006
Messages
992
I tried and it doesn't work. If you prove that it works aka provide a map where this simple thing is working, I give you +rep

If it's something you're not going to believe until someone else does it for you, then I hope no one provides you with it, as it makes my map and everyone else who uses it that much more special.
 
Level 19
Joined
Aug 24, 2007
Messages
2,888
I wont prove that first way works but in some map when I was newbie I used mortars to fire frost novas as frost nova effect
And they were supposed to attack ground randomy on whole map
Then I noticed that they dont even if I make their attack range 99999999999
I removed their locust and disabled trigger to see if I can attack
And I noticed that I cant attack and on attack range it says 600
So thats when that I get idea your attack range cannot exceed aqusition range
 
Level 2
Joined
Apr 28, 2008
Messages
14
I'm still really new to all this mapping stuff, so you'll have to bear with my lack of experience. I have read through the trigger system quite a bit, however, so here's my 2 cents on the subject.

The method you should use really depends on the type of map you're making. If the map generally only has one unit/hero per player, then the best way (in my opinion) is to just make a passive skill, and create a trigger that does the following:

Event: A hero learns a skill
Condition: Skill learned = (YourSkillHere)
Action: Set the player's tech level to the level of the new skill level for (owning player of (triggering unit)) (There's a few ways to do this)

Setting the tech level can be done by using the arithmetic function which adds +1 to the previous tech level, or you can have a variable that the trigger increases and sets the tech level to when the hero learns the next level of the skill. Also, make sure, in the object editor, under 'Tech Tree - Upgrades Used' to add the range upgrade you've created for that unit.

If a player can have multiple units/heroes with an increasing range, then you just need to create a separate skill, upgrade and trigger for each. Just do exactly what I previously said to do, but for each hero that any one player may have.

Now, if you're looking to create an active skill that can be cast upon a target and increase that target's range, things get a little more complicated. Now, to my knowledge, this is very limited. (without Jass, at least, don't know if it's more workable with Jass or not) The only method I can think of, at the moment, to do this, is to create the upgrade/skill, as previously noted, and create a trigger that increases the tech level of the owner of the triggering unit, when that unit has the buff given by the ability.

The downside to this is that every unit controlled by that player that can use the upgrade will get the increased range, so you'd have to work around that. Either make the spell a global effect for a given player or make it only target a type of unit that any given player can only have one of, and only give that unit type access to the upgrade.

Using the unit classifications and proper conditions in the trigger, you can work around this limitation to a certain extent, but that'd be really complicated, and I suck at explaining really complicated things in text. I could be of more assistance in this matter if you were more specific on the details of the map you're wanting to put this skill into. (Type of map, type of skill, type of targets, stuff like that)


EDIT: Oh, and just so you know, you can lower the tech level with triggers as well. Since the only way (I know of) to lower a hero's skill level is through triggers, just make sure any triggers that lower the skill also lower the tech level. If you ever flat out remove the ability from any unit, then simply make a trigger with a boolean comparison that checks if the unit has the ability, and if it's false, then set that player's tech level to 0.
 
Status
Not open for further replies.
Top