GeneralsGamePatch icon indicating copy to clipboard operation
GeneralsGamePatch copied to clipboard

GLA SCUD Storm structure has no animation that reveals whether or not it is ready

Open xezon opened this issue 4 years ago • 34 comments

GLA SCUD Storm structure has no animation that reveals whether or not it is ready. Meanwhile China Nuke Missile and USA Particle Cannon Superweapons do have animations that show they are ready to fire. This is an inconsistency that gives GLA a major edge over the other factions in a Superweapon fight.

xezon avatar Sep 07 '21 14:09 xezon

In some mods, the SCUD missiles are raised once the building is ready, kind of like how the Nuke Silo works.

I'd personally say this is a "big change" that not everyone will like. Would stay away from this. You could argue that not revealing which super weapon is ready fits the "sneakiness" of the GLA faction.

commy2 avatar Sep 07 '21 14:09 commy2

I am not clear about the push back potential of changing the visuals of this. Here is a comparison of Superweapons:

USA Particle Cannon

Pros:

  • Good vs Buildings
  • (Cheap for Superweapon General)

Cons:

  • Requires Power
  • Just OK vs Units

China Nuke

Pros:

  • Good vs Units

Cons:

  • Requires Power
  • Just OK vs Buildings, Bad vs GLA buildings
  • Higher countdown than other Superweapons

GLA SCUD Storm

Pros:

  • Good vs Buildings
  • Good vs Units
  • Does not reveal if its ready to fire
  • (Camo Netting for Stealth General)

Cons:

  • Takes twice as long to build

xezon avatar Sep 07 '21 15:09 xezon

A con of the Scud Storm is, that it takes 120 seconds to construct, while the Nuclear Missile Silo and the Particle Cannon take only 60 seconds. This is because the build times for the superweapons are identical, but GLA has to play without power.

commy2 avatar Sep 07 '21 15:09 commy2

Regarding the SCUD Storm visuals... isn't it a bit unfair that China Nuke reveals its ready status but SCUD Storm does not? SCUD Storm is sooooo much better anyway than China Nuke. Would be just fair if all armies had consistent readability.

I agree with this tbh, even though i won't like the new look or we might find opposition from a lot of players, i do think it's the right call, also it's useful for the gla player himself to know which one launches next if for example one of them is under attack and he wants to launch fast

MTKing4 avatar Sep 07 '21 16:09 MTKing4

Main question is when the animation starts, at 0:00 or before that?

ImTimK avatar Sep 07 '21 18:09 ImTimK

Animation can be designed at our own discretion. It can trigger with exact same timing as USA and China Superweapon animation.

xezon avatar Sep 07 '21 18:09 xezon

Possibly 10 sec before launch just like other superweapons

ZekeDlyoung avatar Sep 08 '21 00:09 ZekeDlyoung

I don't think it's a change that is needed. The Super Weapon is fine the way it is.

Jundiyy avatar Sep 10 '21 10:09 Jundiyy

I don't think it's a change that is needed. The Super Weapon is fine the way it is.

Why is it fine that only GLA’s SW stays hidden?

ImTimK avatar Sep 10 '21 10:09 ImTimK

Just felt that it's not broken, it's just a design that the GLA have been given. Hence no need to change. Thinking over things a bit.

Yes looking at it from a SW only point of view, it makes sense that all are the same.

Scud Storm currently gets away many times as the opponent doesn't know which one to attack, so this could change. For most USAs and all China factions I suppose this is a good thing to help balance it out but GLA mirrors wouldn't be good as opponents would know which one to take out first. :: thinking ::

Re-thinking about it a bit more, I think a very small timer could be used, 5s or less.

There is also a very small window to consider, in which a Sabo could be waiting between 2 SWs, and would now know which one to reset. So having 5 or less would make this less likely to happen although still possible.

Jundiyy avatar Sep 10 '21 11:09 Jundiyy

To me this reads like this issue is potentially going for a survey question, because we may be unable to make a uniform decision. Could someone please prepare a small image that shows all super weapons in their ready state for illustration purposes, that we could use in the survey itself to help the reader understand?

xezon avatar Sep 10 '21 12:09 xezon

Re-thinking about it a bit more, I think a very small timer could be used, 5s or less. So having 5 or less would make this less likely to happen although still possible.

How long is it for the other SWs? It should be the same

MTKing4 avatar Sep 10 '21 12:09 MTKing4

Animation Reveal: Particle Cannon: ~11 seconds Nuke Silo: ~7 seconds SCUD Storm: Never

shot_20210910_181929_1

shot_20210910_182315_4

xezon avatar Sep 10 '21 16:09 xezon

I would like the ready animation 10s before. The skill part to Mark the first one is still there.

ReLaX82 avatar Jan 20 '22 10:01 ReLaX82

Should be 7-11 seconds, there just isn't a singular counter argument for not having the animation at all.

ImTimK avatar Jul 12 '22 17:07 ImTimK

Let's add it!

xezon avatar Jul 12 '22 18:07 xezon

SW's are close to being balanced now, this would be the last change to make it perfect :)

ImTimK avatar Aug 14 '22 19:08 ImTimK

I think there are 2 ways to visualize ready Scud Storm:

  1. Idle Scud Storm looks same as Original. Ready Scud Storm shows upright raised missiles at the launch pad, same as Nuke Missile.

  2. Idle Scud Storm shows no missiles. Ready Scud Storm shows lowered missiles on the ground, same as Original Scud Storm.

I think I would prefer option 2, because it would require no timing or visual changes towards the missile launch sequence.

xezon avatar Dec 04 '24 12:12 xezon

Option 2

MTKing4 avatar Dec 04 '24 12:12 MTKing4

2

dmgreeny avatar Dec 04 '24 17:12 dmgreeny

For option 2 to work the animation for the model will need to be changed so there is a state where the model goes from having no missiles to going underground to get missiles. The problem is the only animation that goes underground is hardcoded to start upright without rockets, go down, go underground and make the missiles appear when going up again.

The first option can be fixed with the NuclearMissileBuildingUpdate and some extra conditionstates.

ScudStormUpdate.txt

ViTeXFTW avatar Dec 05 '24 08:12 ViTeXFTW

ScudStormUpdate.txt inplace
Object GLAScudStorm
    Draw = W3DModelDraw ModuleTag_New01 ; Instead of ModuleTag_01
        OkToChangeModelColor = Yes
        ProjectileBoneFeedbackEnabledSlots = PRIMARY
        
        ; ConditionStates for Prestine model only, missing DAMAGED REALLYDAMAGED and RUBBLE
        DefaultConditionState ; lying around
            Model         = UBScudStrm_A1
            Animation     = UBScudStrm_A1.UBScudStrm_A1
            AnimationMode = MANUAL
            Flags         = START_FRAME_FIRST
            WeaponLaunchBone = PRIMARY WeaponA
            TransitionKey = Trans_READY
            
            ParticleSysBone      = SteamM01 SteamLarge
            ParticleSysBone      = SteamS01 SteamMedium
        End

        ConditionState = DOOR_1_OPENING
            Model = UBScudStrm_A1
            Animation = UBScudStrm_A1.UBScudStrm_A1
            AnimationMode = ONCE
            Flags = MAINTAIN_FRAME_ACROSS_STATES
            WeaponLaunchBone = PRIMARY WeaponA

            ParticleSysBone      = SteamM01 SteamLarge
            ParticleSysBone      = SteamS01 SteamMedium
        End

        ConditionState = DOOR_1_WAITING_OPEN
            Model = UBScudStrm_A1
            Animation = UBScudStrm_A1.UBScudStrm_A1
            AnimationMode = MANUAL
            Flags = START_FRAME_LAST PRISTINE_BONE_POS_IN_FINAL_FRAME
            WeaponLaunchBone = PRIMARY WeaponA

            ParticleSysBone      = SteamM01 SteamLarge
            ParticleSysBone      = SteamS01 SteamMedium
        End

        ConditionState = ATTACKING
            Model         = UBScudStrm_A2
            Animation     = UBScudStrm_A2.UBScudStrm_A2
            AnimationMode = MANUAL
            Flags         = START_FRAME_FIRST
            WeaponLaunchBone = PRIMARY WeaponA
            TransitionKey = Trans_ATTACKING
            
            ParticleSysBone      = SteamM01 SteamLarge
            ParticleSysBone      = SteamS01 SteamMedium
            
            ParticleSysBone      = FXBone01 ScudStormBuildingGoo
            ParticleSysBone      = FXBone02 ScudStormBuildingGoo
            ParticleSysBone      = FXBone03 ScudStormBuildingGoo
        End

        TransitionState = Trans_ATTACKING Trans_READY
            Model         = UBScudStrm_A3
            Animation     = UBScudStrm_A3.UBScudStrm_A3
            AnimationMode = ONCE
            Flags         = MAINTAIN_FRAME_ACROSS_STATES2
            
            ParticleSysBone      = SteamM01 SteamVent
            ParticleSysBone      = SteamS01 SteamVent
        End

    End
    
    ; New behavior for condistionstate DOOR_1_OPENING DOOR_1_WAITING_OPEN DOOR_1_CLOSING DOOR_1_WAITING_CLOSE 
    Behavior = MissileLauncherBuildingUpdate ModuleTag_New02 
        SpecialPowerTemplate = SuperweaponScudStorm
        
        DoorOpenTime = 4000
        DoorCloseTime = 4000
    End
    
    Behavior    = OCLSpecialPower ModuleTag_New10 ; Instead of ModuleTag_10
        SpecialPowerTemplate = SuperweaponScudStorm
        OCL                  = SUPERWEAPON_ScudStorm
    End
End

xezon avatar Dec 05 '24 08:12 xezon

We can probably create new animation(s) by borrowing animation frames of the existing ones.

xezon avatar Dec 05 '24 08:12 xezon

Currently, I use beacons to label enemy superweapons in the order they're built. As an 'extended' suggestion, if there's some clever way to show how far along their timer there are, this would save me doing this... and maybe benefit other people. Is it skill that I use beacons to keep track of this?

penfriendz avatar Dec 05 '24 08:12 penfriendz

You could set the OpenDoorTime to be almost the same as the SWs actual countdown and the animation will play very slowly until the superweapon is ready.

My gut feeling says that this should not be the case and players should manage this themselves. But I can't provide an actual good reason other than it is a skill for advanced players

ViTeXFTW avatar Dec 05 '24 08:12 ViTeXFTW

Currently, I use beacons to label enemy superweapons in the order they're built. As an 'extended' suggestion, if there's some clever way to show how far along their timer there are, this would save me doing this... and maybe benefit other people. Is it skill that I use beacons to keep track of this?

I rather use bookmarks myself, because that leaves beacons free to use when needed, plus you can Mark up to 10. My team can't see it no, but I can beacon afterwards anyway if they need to know.

ImTimK avatar Dec 11 '24 18:12 ImTimK

The problem is the only animation that goes underground is hardcoded to start upright without rockets, go down, go underground and make the missiles appear when going up again.

Well, the easy way is to just reuse what's already there:

  1. Default/none - Empty raised missile supports
  2. DOOR_1_OPENING - reload animation (going from empty up to loaded on ground)
  3. DOOR_1_WAITING_OPEN - original default (missiles waiting on the ground)
  4. Keep the transition to attacking (missiles going up) and ATTACKING states as is
  5. No door closing time, so we go to Default state right after firing (keep empty supports raised)

Here the door open time is 12s, with some added sounds:

https://github.com/user-attachments/assets/9dd107e7-83e0-4a70-a16f-96e19d7241aa

Float1ngFree avatar Jan 22 '25 00:01 Float1ngFree

This looks nice. Can you create a Pull for it?

xezon avatar Jan 22 '25 07:01 xezon

I agree, it looks great

dmgreeny avatar Jan 22 '25 07:01 dmgreeny

Do empty supports raised stay raised for 5 minutes at all times until the missiles are loaded?

DevGeniusCode avatar Jan 22 '25 08:01 DevGeniusCode