Extend the EMP logic

Bug #895468 reported by AlexB on 2010-04-22
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ares
Wishlist
AlexB

Bug Description

Some features for an extended logic. Write down some more!

The EMP logic should support TypeImmune=. If a unit has a weapon that has an EMEffect=yes warhead, type immunity should not affect it. (Tiberian Sun way.)
- AND/OR -
There should be a [TechnoType] tag ImmuneToEMP=yes/no (default: no) that controls whether a unit can be EMP'd. (This would be more flexible.)
----
Stacking should not be the default. Duration should not stack, if this is not wanted. This has already been proposed as Duration.Cap.
----
A way to remove the EMEffect would be nice. Decreasing the time could be realised by negative durations. An additional Cap=0 would remove it completely.
----
Buildings should show a sign of the EMP effect like the EMPulseSparkles or display dimmed.

AlexB (alexander-b) wrote :
WoRmINaToR (worminator) wrote :

Here's one for the thinking cap regarding duration caps...

Let's say I have a tank unit, like the Rhino, that fires EMP shells. It will have (for all intents and purposes) a ROF of 70, an EMP duration of 100, and a cap of 200. So, by that, the Rhino tank will make 1 shot, disable it for a medium-long amount of time, and then shoot again, and eventually get it up to 200 frames of EMP.

Then, I have a unit that I want to shoot a constant bolt of EMP at the enemy, and I want to make it so that as soon as the bolt stops firing the unit is un-EMP'd. Thus, the weapon will have a ROF of 10, an EMP duration of 15 (if the duration is the same as the ROF the unit will get a split second of activation), and a duration cap of 20.

Now what if I get the unit up to 200 frames of EMP with the rhino and then leave the tank EMP'd, and then come up to the tank and shoot a quick bolt from my other EMP tank and leave, should its duration cap of 20 be applied, thus cancelling the remaining EMP, or should this cap be ignored, keeping the remaining EMP from the rhino tank?

EDIT: By the way, AlexB, there have been plans already to completely rewrite the EMP logic from the ground up, so many changes at this point would essentially be pointless until they do the full rewrite as planned.

AlexB (alexander-b) wrote :

Currently I'm rewriting the logic to deal EMP in it's entirety. A positive EMP.Duration can not decrease the time. In your example, the Rhinos 200 still count down. If they are below 20 when the target is fired upon by the second unit, it will increase up to 20.

WoRmINaToR (worminator) wrote :

aha! alright that works then.

AlexB (alexander-b) wrote :

I'll describe the Duration/Cap logic soon after I'm done with the entire thing. There are six cases, that may be a little complicated. I hope, they are logical or at least understandable.

TypeImmune=(bool) works. An EMP weapon can not paralyse a unit of the same type and house that fired it. Also done is ImmuneToEMP=(bool), which prevents this unit to be paralysed at all. Iron curtained things can not be stopped by EMP anymore.

Buildings that are not Powered=(bool) or don't consume Power= are not affected any more; i.e. Pillboxes can still fire. Exceptions are Radar=yes, UndeploysInto=, Sensors=yes, PowersUnit= and LaserFencePost=yes. (Still missing is special handling for Superweapon=s charging).

What else is missing?

FS-21 (jagarni1983) wrote :

AlexB, I think that the Cyborg infantry logic

AlexB (alexander-b) wrote :

Cyborgs are paralysed also as they were in TS. Cyborg behavoir can be overridden using ImmuneToEMP. I don't know about the special cyborg death logic. If that's always off this would be pointless.

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; DCoder wrote in revision 454:
Related to issue #856 - committing Alex's changes + some slight refactoring. Still stuff to do...
Related to issue 856 .
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=454&sc=1

Chanterier (speederyr) wrote :

Should ImmuneToEMP=yes work by now or not because I'm not sure..? I mean - it doesn't and I thought it should.

AlexB (alexander-b) wrote :

There is no binary version of the dlls yet. I'll try to commit the newest code this night. The next version should contain it.

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 455:
Refactoring of EMP creation. No more globals. Units get deactivated when EMP'd. The EMPSparkle animation is retrieved in a much faster way. Still to do: Check for present Operator= and PoweredUnit='s available control centers before reactivating. Super weapons still charge when EMP'd.
Related to issue 856 .
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=455&sc=1

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; DCoder wrote in revision 456:
Fixed issue #471 - Building Ammo should work correctly now. -- Split the code to Ext/Techno/Hooks.Ammo
Related to issue #856 - binary now contains Alex's EMP code, which might be unfinished/unstable.
Also refactored a rather important piece of template code - unforeseeable crashes might occur, or they might not.
Related to issue 471,856 .
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=456&sc=1

AlexB (alexander-b) wrote :

EMP works like this:
Units/Buildings having ImmuneToEMP=yes should never get paralysed.
Units/Buildings having TypeImmune=yes should not be able to paralyse another object of the same type and the same owner.

Voxel tanks get dimmed and sparkle, SHPs like the terror drone or buildings won't. Infantry with Cyborg=yes should be affected by default, too, as long as they are not ImmuneToEMP=yes.

Duration and Cap
There are five different case for the EMP.Duration and EMP.Cap.
Duration (default=0) is the number of frames (1 second = 15 frames) a unit should be paralysed. Cap (default=-1) is the maximum amount of frames a unit can get paralysed.

Case A: Positive Duration ("Damaging")
Cap0: The target will get paralysed for an additional number of frames, but only if the result does not exceed Cap (in that case, Cap is used). If it is already paralysed for a larger amout of time, this time will not be reduced.

Case B: Negative Duration ("Healing")
Cap

AlexB (alexander-b) wrote :

A new binary just got checked in. Virus Bones would have posted it if I hadn't screwed up in the commit process.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=459&sc=1

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 462:
Related to issue #856: Extracted EMP functions into separate class. Lots of documentation and one fix to comparing houses for EMP type immunity. Left WarheadTypeExt::canWarheadAffectTarget where it is for it makes much more sense there.

The legacy way to EMP, hooking into the EMPulseClass initialize function, is still there. To be removed soon.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=462&sc=1

AlexB (alexander-b) wrote :

Still missing stuff and open questions:
- Spawned aircrafts are destroyed, but will keep respawning and attacking.
- There is no EVA attack warning yet. There should be one. Having the harvesters do nothing while being prone to attacks is not the best thing not to notice.
- Draining does stop for flaks. It has a short break with tesla coils. This needs more testing. Can Yuri's flying disk still drain under the influence of EMP? tested and working. Disk stops draining.
- Test if cloaked/stealth units emerge for the duration of the EMP.
  Boomers decloaked and drifted on the surface deactivated.
- Decision about whether to disable slave miners like the other factions' miners Slaves stop working.

WoRmINaToR (worminator) wrote :

So what's the exact tag for the duration cap? This was never made clear-- is it EMP.Duration.Cap=, Duration.Cap= or Cap=?

Bug Importer (bug-importer) wrote :

AlexB, can you make harvesters always return to their original harvest mission after the EMP? could be annoying for players to see that they stay waiting for your new orders after an EMP attack...

Chanterier (speederyr) wrote :

I agree with the poster above. Additionally, when you EMP AI harvester it won't return to the harvest mission at all unless you EMP it while it's doing the harvest (the moment you see see it's harvesting animation).

There is also an issue with deploy-to-building units like MCV. After you have your MCV emped, you can't call it to deploy unless you move it to another cell.

SovietWarrior (sovietwarrior) wrote :

[quote]tanks get dimmed and sparkle[/quote]

I'd rather prefer it done as customizable effect.
EMP.VEffect= none\dimmed\sparkle\both

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 471:
Related to issue #856: EVA will notify the player if a harvester or the base is under attack. PowerToggle is not used to determine if a building can be EMP'd. Harvesters will resume working after the EMP effect subsides.
Worsens issue #871: Super weapons will not know they're EMP'd until after another building has been placed.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=471&sc=1

AlexB (alexander-b) wrote :

@WoRmINaToR: It's EMP.Cap, as there is also proposed an IC.Cap in issue #791.

@AnnoySumo: I added some code to do that.

@Speeder: I could not reproduce the MCV issue. The MCV just deployed normally.

@SovietWarrior: For the moment it uses the same effect the robot tanks go offline with.

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 473:
Fixed issue #877: Cyborg=yes is not needed anymore to make infantry susceptible to EMP. Use ImmuneToEMP=no instead.
Related to issue #856: ImmuneToEMP's default value depends on the TechnoType now. It is inferred only once, and not on every single use of an EMP warhead. EMEffect weapons now respect the AffectAllies/AffectEnemies tags. GapGenerators are always prone to EMP, just like super weapons, radars and the like.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=473&sc=1

AlexB (alexander-b) wrote :

EMP works like this 2:

Immunity
Use ImmuneToEMP=yes to create a unit that is immune to EMP. There is no way to paralyse this unit at all.

If the unit is Veteran/Elite and there's the EMPIMMUNE veteran/elite ability, the unit counts as immune, too, and can never be emp'd.

Use AffectsAllies=no on the EMP warhead to make units immune to own and allied EMP fire. Likewise, use AffectsEnemies to create positive EMP weapons that really should not help the enemy.

Otherwise, units having at least one EMP weapon can use TypeImmune=yes to protect themself from EMPs fired by the same owner. For example: two Mobile EMPs could not blow each other's lights out.

If ImmuneToEMP=no, this unit may be paralysed (if no other tags already prevent this). It does not matter what type this unit is of.

Default values
ImmuneToEMP infers its default value by whether a type of unit isn't prone to EMP effects. These default values can be overridden and are just used if ImmuneToEMP is not defined for that type.

Buildings are prone to EMP if they have at least one of the following tags set:
Radar, SuperWeapon, SuperWeapon2, UndeploysInto, PowersUnit, Sensors, LaserFencePost, or GapGenerator. If they don't, they are prone if and only if they consume Power and need it to function (Power

Bug Importer (bug-importer) wrote :

Can we have an EMPIMMUNE veteran effect too please :)

Chanterier (speederyr) wrote :

The EM effect is not affected by warheads? I wanted to make two seperate EMP weapons, one against vehicles and one against buildings. With 0% warheads on unit armors it still affected them..

FS-21 (jagarni1983) wrote :

With revision 1.476:
- EMPing a Siege Chopper while it is displaying the deploying animation it become invisible forever and it can't undeploy or attack anything in that state (but it can target things and it show the undeploy cursor).
- EMPing A siege Copper while is undeploying it gets EMPed but it not crash or land to the ground, it is affected by the EMP but stays in the air.
- EMPing a Harvester that has no harvesting mission (like to be stopped because I don't want to harvest with that unit) it gets a harvester mission when EMP effect dissapear.
- EMPing a deployed Slave miner always spawn Slaves to harvest (if is disabled by a EMP warhead then it should do nothing, including spawn slaves).
- EMPing a Slave miner when it is being deployed it becomes bugged. I mean after the EMP effect the Slave miner will still do nothing until you undeploy it again and re-deploy it again. And in that bugged state if you move the screen out of the area where the slave miner is located and you return the screen window to the location of where is the bugged slave minner the unit image will dissapear except the gun turret that is usable in that bugged state.

A little question/suggestion, is possible to add the shutdown color effect of the vehicles to affected buildings to detect visually that the building is disabled?

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 478:
Fixed issue #871: Super weapons won't be able to charge and fire when not operated or under the influence of an EMP any more.
Fixed issue #884: Buildings are not affected by EMP while being constructed or sold.

Reimplemented Westwood's code to not iterate over all buildings in game multiple times just to skip those not owned by the house to update. Also skipped stuff where they double-checked the obvious. Related to issue #856.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=478&sc=1

AlexB (alexander-b) wrote :

@Speeder: At the moment the Verses are not respected. This is just like the Iron Curtain. To what extend should

@AnnoySumo: I'll see what I can do.

@FS-21: Hopefully the SC and SM issues are gone with the constructing issue.

Indeed does a harvester forget that it wasn't doing anything as it does not remember its last action. The logic currently reactivates the vehicle, recognizes this to be a harvester and sends it back to work. If this poses to be a problem, i can fix that.

Dimming the buildings and SHP units is on my wish list, too. Just gotta find out how to do that best.

There are still issues with spawning and the slaves logic. It seems Kirovs and aircraft doesn't work too good with EMP, either. Four big problems to go...

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 479:
Related to issue #856: EMPIMMUNE Veteran- and EliteAbilities added. Harvesters will not start working if they were EMP'd while standing still. Small change to the last commit that may help prevent problems with unit->unit deploy.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=479&sc=1

FS-21 (jagarni1983) wrote :

Testing revision 480:
- I tried to EMP Slave Miner on deploy/undeploy and now they are inmune in that deploy/undeploy state (I don't know if that is what you wanted to code), so "EMPing a Slave miner when it is being deployed it becomes bugged" is fixed.
- I tried EMPing a Siege Chopper while it is displaying the deploying animation but still is invisible (and the other things of that bug).
- Harvesters that start harvesting when they are stopped beore the EMP is fixed.

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 482:
Related to issue #856: Spawning units will stop until EMP effect is over. Launched aircrafts are destroyed. EMEffect is obsolete now, EMP.Duration replaces it. Reverted a fix changing something that was not broken.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=482&sc=1

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 483:
Related to issue 856:Aircraft and BalloonHover units can be affected by EMP. BalloonHovers will not crash but hover in mid-air deactivated.

EMP clean up. The original way the game delivered EMP effects is not needed any more and all hooks and functions related to that are removed.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=483&sc=1

FS-21 (jagarni1983) wrote :

AlexB, about "Related to issue #856: Spawning units will stop until EMP effect is over.", slaves are included in this case? because I'm using revision 1.485 and deployed Slave miners disabled by EMPs still spawn Slaves and re-spawn the killed slaves.

AlexB (alexander-b) wrote :

Alas, slaves use a different system and I have not been able so far to make them stop. This is definitely planned, it would be very unfair if Yuri could still harvest ore.

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 490:
Related to issue #856: When Slave Miners are EMP'd the slaves will stop working.

Also changed the way deactivated technos come back online. Now there are checks in place to not reactivate if the techno has no power.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=490&sc=1

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 491:
Related to issue #856: Technos that are currently unloading will not be deactivated by a firing EMP. They will finish unloading and then get deactivated. This fixes the disappearing Siege Chopper bug. Siege Choppers aren't deploying into a different unit, they are unloading instead.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=491&sc=1

FS-21 (jagarni1983) wrote :

I tested revision 1.492 and:
- Siege Chopper bug is fixed
- Slave miner bug with slaves is fixed.
- V3 rockets are destroyed in Air (as expected) but not when the V3 launcher is preparing the shot (when the V3 is moving the V3 rockets to a good angle to launch missiles), in that case you can EMP the V3 launcher but the missiles will be launched. This happen with other units with similar missile system (boomer).
- Ships that launch aircrafts when are EMP loose his aircrafts as expected.
- EMPed Infantry transports when you are deploying the infantry out of the vehicle they are EMPed but the infantry still exit from the vehicle, and they can re-enter in the EMPed vehicle but you can click to deploy until the EMP effect finish (I don't know if that that is what you expected but I report this by precaution).
- EMPed hover vehicles that are in the water are destroyed as expected
- EMPed Radars are disabled as expected.
- EMPed SW counters are stopped as expected.

I should suggest to use the same method you applied with Siege Chopper deploy bug to EMP the Slave Miner when is deploying/undeploying, I mean EMPing the unit after the deploy/undeploy animation because in this momment SM is immune to EMP during the deploy/undeploy.

Until now is easy to detect what Power plants has been touched by the EMP because its animations are stopped temporally. So another suggestion is if is possible to disable EMPed Power plant buildings producing 0 of power until the EMP effect dissappear. By default this should not happen but adding ImmuneToEMP=no should produce this effect.

mevitar (mevitar) wrote :

After testing with revision 0.1.500 (0.1 RC9):
* War Factories have their animation disabled after being stuck by EMP, but they can still produce units normally
* sometimes EMPing a War Factory that is about to finish production will make the doors stay closed, leaving the unit stuck inside forever (although other units can still be produced and go out without any problems)
* Naval Yards can produce normally after being EMPed and their animation isn't disabled; however, the animation shuts down once the first unit is created (this doesn't affect production in any way) and stays that way until the EMP wears off
* harvesters can unload ore on refineries affected by EMP (although the refinery doesn't animate at all)
* when EMPed while unloading ore, harvesters will stay on the refinery after the EMP wears off, blocking other harvesters until manually ordered to move
* any unit, when EMPed while being kicked out from a War Factory, will stop just at the entrance, blocking any next unit trying to get out; the EMPed unit will stay at the entrance after the EMP wears off, until manually ordered to move
* aircrafts are being affected by EMP even from projectiles that can't attack air (a jumpjet hovering at JumpjetHeight=900 got EMPed by a warhead with CellSpread=1 that hit directly under it and on the next cell, but not 2 cells away)

AlexB (alexander-b) wrote :

Thanks for testing FS-21 and mevitar!
Animations are controlled via artmd.ini tag ActiveAnimPowered. Changing this would mean hard coding them.

Next binary:
Missiles should blow up when fired.
There is now special code to let undeploying buildings finish and paralyse the unit afterwards.
Harvesters should be delay-paralysed as undeploying structures are.
EMP'd units kicked out of a war factory should get out of the way after the effect subsides.

Distant future:
Factories should be disabled.
Deploying (GI, GGI, Transports) is on the list.
Support for EMPing power plants and refineries is on the list.
Using the exact coordinates instead of the entire cell would fix the AA/AG/entire cell problems.
(Verses and ProneDamage support?)

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 505:
Related to issue #856: Many small changes to EMP. Support undeploying to vehicles. Support delayed paralysation if a unit is in a state that requires special handling. Do not re-enable animations on buildings if the owner is on low power.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=505&sc=1

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 555:
Related to issue 856: EMP uses the exact CellSpread value and doesn't affect the entire cell any more. Infantry won't play idle animations when EMP'd.

Re-enable beta notice.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=555&sc=1

AlexB (alexander-b) wrote :

I implemented Verses support but it does not make any sense. Why should a tank get less affected by electronic warfare when its armor is thicker? The EMP is designed to elide armor and strength completely. It is a totally different kind of damage. And: Verses would affect the EMP as well as the convetional damage.

I'd rather support two cases: Verses of 0% or >0%. If it is 0% it will not affect the target otherwise it will be affected 100%. Any other ideas or suggestions?

I think I agree with you.

EVA-251 (eva-251) wrote :

I think being able to scale the EMP's duration, either with Versus.ArmorType or some tag EMP.DurationModifier= on the TechType _COULD_ be useful. You could have units that are extremely prone to the effects of EMP and take a long time to restore themselves- or units that just shrug it off.

Renegade (renegade) wrote :

That's the first kind-of-reasonable argumentation for EMP Verses I've heard so far.

SovietWarrior (sovietwarrior) wrote :

I belive clones of EMP could be used later to simulate Web Cannons,RA3 Frozen beams, Terror drone emp charge or Hydrofoil weapon jammer (this will requre some visual customisation of course). So in case of Frozen beam, Verses sensivity do make sense.

Renegade (renegade) wrote :

#bug:460
#bug:608

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 562:
Related to issue #856: Use correct coords to calculate the distance to impact coords. Small optimisations.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=562&sc=1

Jeffman12 (jeffman12) wrote :

A little late for the party, but I believe my idea fits under here as well.

Long explanation: Not everything is susceptible to EMP, but in modern days, there's rarely a soldier equipped with non-electronic components. And in Tiberian Sun you can assume those hi-tech battle suits all come with fancy HUDS and electronics necessary for target acquisition.

The point: Infantry and some types of aircraft would remain functional for the most part while under the effects of EM weapons (EX: Battlefield 2142), but a temporary debuff would certainly fit. This could affect
1.sight range
2.weapons(anywhere from temporary fire rate decrease to cease of function)
3.mobility in some cases. If some infantry is using a powered exoskeleton, they could still move, but their equipment would suddenly stop carrying its own weight and slow them down.

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in; AlexB wrote in revision 598:
Related to issue #733: Small alterations. Added Temporal warhead check.
Related to issue #856: Units that are being warped out don't make a good target.
Fixed issue #896: Implemented with string constants.
Fixed issue #878: EMP'd infantry is no longer allowed to deploy. TS doesn't know deployed infantry and thus could not handle it.
SVN: http://svn.renegadeprojects.com/listing.php?repname=Ares&path=%2Ftrunk%2F&rev=598&sc=1

angrymod (angrymod) wrote :

Ares 601

After a enemy taskforce(a few tanks lets say) is EMP'ed and the EMP effect is gone, the taskforce do not continue on their mission to attack your base. Instead they stay in the same spot where they were EMP'd.

They will fire at your units that passby but wont move until they are attacked by your units, well they chase after your unit who attack them and after they kill your units they stop again.

WoRmINaToR (worminator) wrote :

I definitely support jeff's ideas. If you could have EMP disable certain parts of a unit (like disable a shock trooper's gun but still let him walk) that would be awesome.

Also, I use EMP rather extensively in many units in my mod and I am happy to say that in all cases of my EMP weapons they work without flaw.

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r706
Revision comment:
Related to issue 856: Power plants cease producing power when EMP'd. Small change to the Customizable template used to fix up ImmuneToEMP parsing.

New binary.
SVN: http://svn.renegadeprojects.com/Ares/706

AlexB (alexander-b) wrote :

I'll add support for verses or a system that does something like EMP.Modifier= and rename EMPThreshold to EMP.Threshold. Shutting down factories and refineries should be the last feature implemented for this issue otherwise it would never be closed.

Disabling weapons is a good idea and definitely worth thinking about, but it should get its own issue.

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r717
Revision comment:
Fixed issue #751: Units get conventional damage before the Iron Curtain warhead effect is applied.
Fixed issue #791: Iron Curtain on Warheads got the same Duration/Cap system as EMP did.
Fixed issue #797: Iron Curtain on Warheads only gets applied if Verses isn't 0%. AffectsAllies and AffectsEnemies.
Related to issue #856: EMP only gets applied if Verses isn't 0%. EMPThreshold has been renamed to EMP.Threshold.

Documentation updated.
SVN: http://svn.renegadeprojects.com/Ares/717

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r723
Revision comment:
Related to issue #751: Fixed null pointer crash if a bullet with no weapon attached would fire.
Related to issue #791: Support IronCurtain.Modifier to allow per-unit customization of the IC effect.
Related to issue #856: Support EMP.Modifier to allow per-unit customization of the EMP effect.
Fixed to issue #894: Disabled Operator units should not be able to drive around any more.

Documentation updated.
SVN: http://svn.renegadeprojects.com/Ares/723

Bug Importer (bug-importer) wrote :

there could be also an infinite emp and a unit cant move until some reairing unit repairs it, also there should be a type of emp that only unables the unit to move but not to aim or to shoot, also another emp that unables it to shoot but not to move, etc just a thought

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r973
Commit contains DLL: Yes
Revision comment:
Fixed issue #1348: TogglePower does not allow powering down buildings that aren't yours.
Fixed issue #1389: EMP disables factories.
Fixed issue #1413: Iron Curtain effects on warheads will not abort if an object with 0% verses is encountered.
Fixed issue #1428: EMP does not deselect units any longer.
Fixed issue #1437: Occupier infantry now get notified a building has been warped away.
Fixed issue #1443: Animate the MultiEngineer damage cursor.
Related to issue #856: Harvesters will stop to play the ore gathering animation if under EMP. Issues bug:1389 and bug:1428 solved.
Related to issue #1401: Reworked the last fix to not interfere with radar jammers.

Updated the manual to explain The First Decade users don't need to copy any files.
SVN: http://svn.renegadeprojects.com/Ares/973

Graion Dilach (graiondilach) wrote :

Harvester sapping is indeed stops when the harvester is hit by an EMP warhead.

Confirmed.

AlexB (alexander-b) wrote :

Because the Powerer Unit feature changed the EMP, EMPneeds to be re-tested. I predict, for instance, Slave Miners will still continue to work if they are hit when deploying/undeploying. There might be more stuff not working, like the EMP anim not appearing.

Graion Dilach (graiondilach) wrote :

Done.

Slave Miner deploy anim stops, SM won't work work until EMP wears off.

EMP anim doesn't appear on Buildings.

Infantry with ImmuneToEMP=yes works as expected although there is no dimming effect. EMPing UnitPowerer buildings seemed to delay some frames offlining the unit, but maybe I seen it wrong. If a building's ActiveAnim is powered, it stops.

SovietWarrior (sovietwarrior) wrote :

EMP anim does appear on building but underneath

Graion Dilach (graiondilach) wrote :

Ungh... well, I wouldn't find that one out.

AlexB (alexander-b) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r1100
Commit contains DLL: Yes
Revision comment:
Related to issue #856: Aircraft that is starting or landing (neither in air nor on ground) is now affected by the EMP.
Fixed issue #1572: Units leaving a weapons factory will not be affected by EMP. Units requiring an Operator will not be disabled if they reside on the weapons factory bib.
SVN: http://svn.renegadeprojects.com/Ares/1100

Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r1101
Commit contains DLL: Yes
Revision comment:
Related to issue #856: Extracted the code to destroy units. This unifies destruction for EMP.Threshold, crashing aircraft and destroying non-missile spawns (if the owner is EMP'd).
SVN: http://svn.renegadeprojects.com/Ares/1101

AlexB (alexander-b) wrote :

I changed the way ImmuneToEMP is read because I suspect it wasn't working as intended when not (!) set. The default value would be inferred from rulesmd.ini. If a tank got the Organic=yes property in a game mode or in a map, it would still not become immune to EMP by default. Now this should be fixed. Same with infantry and Cyborg=, and buildings and a bunch of tags.

Can someone verify it's working as expected now?

mevitar (mevitar) wrote :

Tested with 12.115.1265. I didn't test it for gamemodes, but the emp immunity did work for infantry, units and buildings after setting the appropriate tags on them in a map.

mevitar (mevitar) wrote :

And of course, immunity didn't work when it wasn't supposed to after changing the tags. ;P

AlexB (alexander-b) wrote :

Great, thank you!

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Related blueprints

Remote bug watches

Bug watches keep track of this bug in other bug trackers.