1. Head to the 33rd Modeling Contest Poll and drink to your heart's desire.
    Dismiss Notice
  2. Choose your means of doom in the 17th Mini Mapping Contest Poll.
    Dismiss Notice
  3. A slave to two rhythms, the 22nd Terraining Contest is here.
    Dismiss Notice
  4. The heavens smile on the old faithful. The 16th Techtree Contest has begun.
    Dismiss Notice
  5. The die is cast - the 6th Melee Mapping Contest results have been announced. Onward to the Hive Cup!
    Dismiss Notice
  6. The glory of the 20th Icon Contest is yours for the taking!
    Dismiss Notice
  7. Check out the Staff job openings thread.
    Dismiss Notice
Dismiss Notice
60,000 passwords have been reset on July 8, 2019. If you cannot login, read this.

[Campaign] Warcraft 2 Remake: Spells Balance

Discussion in 'Idea Factory' started by LordPerenoldeII, Aug 9, 2019.

  1. LordPerenoldeII

    LordPerenoldeII

    Joined:
    Nov 20, 2005
    Messages:
    919
    Resources:
    2
    Maps:
    2
    Resources:
    2
    I'm looking for advices:

    If you're familiar with wc2 campaigns, one thing that would certainly come to attention is the spell system, and how unbalanced it was, let's just be honest.
    I need to rebalance the spells system of the game, because in the way it is at the moment, it terribly lacks balance:

    - Bloodlust: it basically TRIPLES the damage of units. Even if not fully upgraded, a group of Ogres can chew through anything in this condition. What i did to emulate this spell in the remake is altering the original wc3 bloodlust for units to have increased attack speed, so to resemble the effects of the wc2 bloodlust. The problem is that even at 2.20x attack speed, the ogres are still killing machines!
    So far the only way i've seen of countering an attack wave of this type in the least painful way is to mass-spam Mages with Polymorph, but there has to be another way as well. Towers collapse pretty quickly too!

    - Healing: it heals 10 hp any 60 mana points! What's the balance here? Ok, i get it, it can heal anything organic in the game, can keep up units durability and stuff, but when it comes to directly face Bloodlusted units it sux, and it sux bad. Even if i gave it autocast function, bloodlust still has a major upper hand.

    - Polymorph: i wanted to balance this, because it was never pleasant back then, to have one of your own units killed all of a sudden from nowhere. What i did was giving a duration to the spell of "only" 5 minutes. During this amount of time the sheep can be killed ofc, but at least it won't stay morphed forever, and the player can go tactical, arranging defensive formations around morphed units if he wants to save them(being important units) etc.

    - Exorcism: Can't seem to find any viable spell for this. All i get is a Holy Bolt spell which can hence has the function of healing my units as well(without the autocast function). If i can't find any viable replacement for this what should i do? Shall i give it a more powerful damage/heal factor, giving a justification that "it purifies the soul of the target unit", obviously with an increased mana requirement? The difference between this spell, used in this way, and the normal Healing would be the absence of the autocast function.

    How do i sort things out?
     
  2. Bribe

    Bribe

    Joined:
    Sep 26, 2009
    Messages:
    8,362
    Resources:
    25
    Maps:
    3
    Spells:
    10
    Tutorials:
    3
    JASS:
    9
    Resources:
    25
    With WarCraft 3 and StarCraft 2 those previous spells become insanely imbalanced thanks to SmartCast.

    The way to fix this problem is to entirely disable SmartCast. One such way is like this:

    • Force Dumbcast
      • Events
        • Unit - A unit starts the effect of an ability
      • Conditions
      • Actions
        • Set TempAbility = (Ability being cast)
        • Set TempOrder = (Current order of (Triggering unit))
        • Set TempPoint = (Target point of ability being cast)
        • Set TempTarget = (Target unit of ability being cast)
        • Set TempGroup = Units selected by (Triggering player)
        • Unit - Remove (Triggering unit) from TempGroup
        • Unit Group - Pick all units in TempGroup and do (Actions)
          • Loop - Actions
            • Set TempUnit = (Picked unit)
            • If (All conditions are True) then
              • (Level of TempAbility for TempUnit) Greater than 0
            • Then - Actions
              • If (All conditions are True) then
                • TempTarget Not Equal to No unit
              • Then - Actions
                • Unit - Order TempUnit to TempOrder TempTarget
              • Else - Actions
                • Unit - Order TempUnit to TempOrder TempPoint
            • Else - Actions
        • Custom script: call DestroyGroup(udg_TempGroup)
        • Custom script: call RemoveLocation(udg_TempPoint)