Philadelphia experiment gone horribly wrong

Bug #895919 reported by Chanterier
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ares
Fix Released
Medium
AlexB

Bug Description

To put this short - latest superweapon branch allows us to determine whether a building which was deployed from a vehicle can be chronoshifted just like mobile version of it. That's cool, but..

Well, default setting is that you can chronoshift any building.

This bug does not affect infantry - Chronosphere still kills it unless it's a teleporter type.

I've used this opportunity to check building teleportation logic. Here's a short report:

- when there is no space at the destination, building will either appear in the nearest place it is possible for it to appear or explode.

- naval building gets chronosphered, it explodes at the spot it was placed. Same goes for ground building -> water teleportation. It explodes at the original place instead of the destination.

- garrisoned building will be teleported and garrisons will be kept

- if a building which was called to undeploy gets teleported, it will play undeploy anim again. Same goes for a building which is during buildup animation.

- when you teleport an airpad, you can no longer build aircrafts even if it's empty. This does not happen for other factory types.

- when you teleport an airpad with aircraft on it, aircraft will appear next to the airfield instead of next to it. Same goes for tank bunker and service depot with unit on it.

- more to the issue above: if it's a hover unit it won't be able to move afterwards

- bio chamber filled with infantry will be teleported with them just fine

- if chronoshift is used on a tank bunker which is being entered by a unit, unit will stop and game will consider it as a tank-bunkered unit

- building with a turret will appear with it's original turret position

- when you teleport a building with a prepared superweapon, it's still ready. Superweapon will be 'On hold' for the time of teleportation

- chronoshift a spotlight tower with circling spotlight and it will stop circling

- want to have infinite stealth on your buildings? Construct a stealth generator and chronoshift it. Whatever was cloaked by the building before will remain cloaked. Gap Generator's shroud will not remain after the chronoshift.

This takes the cake - I can teleport the activated Chronosphere and nothing happens. YR fears no paradox!!

While this issue is about default setting of building chronoshift, the rest is for your enjoyment mainly and an argument that this logic should REALLY be thought over. Maybe discarded.

##### STEPS TO REPRODUCE #####
1. Superweapon branch.
2. Build Chronosphere.
3. Wait 7:00 (6:00 if you're on MO).
4. PHILADELPHIA HERE I COME.

Revision history for this message
Chanterier (speederyr) wrote :

"aircraft will appear next to the airfield instead of next to it."

Derp. It should be "instead of on it".

Revision history for this message
Tempest (xero-2) wrote :

Personally, I think Speeder's right about how this should be thought over..

Revision history for this message
AlexB (alexander-b) wrote :
Download full text (3.8 KiB)

Hehe, that was to be expected. This bitch took weeks to get it working, not to mention to get it right...

One small note: If you want to chronoshift undeployable buildings only, remove buildings from the SW.AffectsTarget and set Chronosphere.AffectsUndeployable=yes. This way, ordinary buildings will not be affected by default. (See below why you might want to make the Construction Yards un-chronoshiftable... :p)

As all the bullet points remain valid if buildings are to be chronoshifted, so I'll comment on all of them:

- when there is no space at the destination, building will either appear in the nearest place it is possible for it to appear or explode.
- naval building gets chronosphered, it explodes at the spot it was placed. Same goes for ground building -> water teleportation. It explodes at the original place instead of the destination.
This is by design. It's neither a good idea to warp a building into water (slopes, cliffs,...) that would leave rubble behind after destruction nor to warp one building into another, possibly risking a crash. Undeployable buildings will try to find a better spot nearby, all other buildings will blow up. I could add a tag that would spare the buildings if they can't be teleported, though.

- garrisoned building will be teleported and garrisons will be kept
- bio chamber filled with infantry will be teleported with them just fine
What happens if you chronoshift a transport, Flak Track, IFV or Nighthawk?

- if a building which was called to undeploy gets teleported, it will play undeploy anim again. Same goes for a building which is during buildup animation.
- chronoshift a spotlight tower with circling spotlight and it will stop circling
- want to have infinite stealth on your buildings? Construct a stealth generator and chronoshift it. Whatever was cloaked by the building before will remain cloaked. Gap Generator's shroud will not remain after the chronoshift.
They're some bugs and I'll fix them. Thanks! One question, though: Will the cloaked buildings/units recloak once they are sensed?

- when you teleport an airpad, you can no longer build aircrafts even if it's empty. This does not happen for other factory types.
- when you teleport an airpad with aircraft on it, aircraft will appear next to the airfield instead of on it. Same goes for tank bunker and service depot with unit on it.
- more to the issue above: if it's a hover unit it won't be able to move afterwards
- if chronoshift is used on a tank bunker which is being entered by a unit, unit will stop and game will consider it as a tank-bunkered unit
I'll look into them. I'm not sure about the aircraft placement thing. This might be quite complicated, because tanks put on buildings tend to explode...

- building with a turret will appear with it's original turret position
Yeah, I've seen that. Right now the turret facing isn't restored. I'll see how I can fix that.

- when you teleport a building with a prepared superweapon, it's still ready. Superweapon will be 'On hold' for the time of teleportation
From the wording I suppose you expect it to be reset, but why should it do that?

This takes the cake - I can telepor...

Read more...

Revision history for this message
Chanterier (speederyr) wrote :

Wait Alex - not everything I've posted I think of as bugs. Those are just observations. Of course there's nothing wrong with superweapon charge unchanged, biochamber with infantry or garrisoned buildings teleports.

However for ground->water, water->ground teleportation, I think that destruction anim should be played at the target - not the destination. If a ship is teleported to ground it explodes on ground, not water.

When an object with that cheaty cloak decloaks for a while (to fire or something), it will cloak itself again after it's done with the mission.

Revision history for this message
Graion Dilach (graiondilach) wrote :

Source is fixed, Chronosphere doesn't affect buildings by default.

Revision history for this message
WoRmINaToR (worminator) wrote :

but it still can... so this is still an issue.

Revision history for this message
Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: ft-superweapons, r971
Commit contains DLL: Yes
Revision comment:
Fixed issue #199: PsychicReveal type SWs will cap the default value at ten correctly. The parser accepts none and <none> as valid values; you can use them to invalidate tags. Fixed an issue with the SW detection and ready announce events. If sounds were set to none, the default sound would still play for the original super weapons. Removed a NB from the manual mentioning those EVA event sounds, as there is no known bug right now.
Fixed issue #1341: Chronoshifted infantry is placed correctly and won't be centered in their target cell, killing all but one.
Fixed issue #1382: Instead of changing the behavior of the Chronosphere.AffectsUndeployable= tag to something even more dubious, the documentation was updated to better explain what it does.
Related to issue #1307: Cloak Generators stop to provide cloak for their initial location after chronoshift.
Related to issue #1430: Added a better explanation of what tags are valid for the Mutate Explosion mode.
SVN: http://svn.renegadeprojects.com/Ares/971

Revision history for this message
AlexB (alexander-b) wrote :

The Cloak Generator issue has been confirmed working over there: link.

Revision history for this message
Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: ft-superweapons, r975
Commit contains DLL: Yes
Revision comment:
Related to issue #1307: Support for chronoshifting Tank Bunkers. Also, tanks with SpeedType=Hover should not get stuck on the ground if its Tank Bunker or Service Depot gets chronoshifted away.
Fixed issue #1455: SW.AITargeting=Offensive only fires if the owner house chose an enemy. SW.AITargeting=Stealth respects SW.AffectsTarget and SW.AffectsHouse now.
Fixed issue #1461: Naval vehicles should no longer spawn on bridges.
Fixed issue #1465: Possible crash if units are placed on bridges.

This should also fix the bug in the original game where Robot Tanks keep staying on the ground after a service depot was sold or warped out underneath.
SVN: http://svn.renegadeprojects.com/Ares/975

Revision history for this message
AlexB (alexander-b) wrote :

Parts still not solved in this umbrella issue:
- When you teleport an airpad, you can no longer build aircrafts even if it's empty. This does not happen for other factory types.
- Chronoshift a spotlight tower with circling spotlight and it will stop circling
- If a building which was called to undeploy gets teleported, it will play undeploy anim again. Same goes for a building which is during buildup animation.
- Building with a turret will appear with it's original turret position.

The list is ordered by my perceived importance. I consider the first item a blocking issue, the second item is important.

Revision history for this message
Graion Dilach (graiondilach) wrote :

OK, report:

Chronoshifted Tank Bunkers will release their tanks after the shift. BTW, YR limit appears, Hover units aren't bunkerable. Possibly because of that bug you've fixed now.

Service Depots... I tested it with only the Robot Tank, but the depot blew up when it was occupied at the time of the shift.

Revision history for this message
Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: ft-superweapons, r985
Commit contains DLL: Yes
Revision comment:
Fixed issue #1458: Message.Detected and Message.Ready added.
Related to issue #1307: Added NBs mentioning existing chronoshift problems.
Related to issue #1382: Changed the way Chronoshift.AffectsUndeployable works. Added Chronoshift.ReconsiderBuildings.
Related to issue #1447: Added NB.

Super weapon lighting defaults to the scenario's values if set to -1.
SVN: http://svn.renegadeprojects.com/Ares/985

Revision history for this message
Graion Dilach (graiondilach) wrote :

Since merging, Chronosphere can chronoshft buildings again.

Revision history for this message
YR M0ddEr (yr-m0dder) wrote :

it always could?

Revision history for this message
Chanterier (speederyr) wrote :

What?

Revision history for this message
AlexB (alexander-b) wrote :

I tested with binary 1015 and a clean rulesmd.ini. Couldn't reproduce this. May take some more time to investigate.

Revision history for this message
Chanterier (speederyr) wrote :

Code I used:

[ChronoSphereSpecial]
UIName=Name:Chrono
Name=Chrono Sphere
IsPowered=true
RechargeVoice=00-I156
ChargingVoice=
ImpatientVoice=
SuspendVoice=
RechargeTime=6
Type=ChronoSphere
Action=ChronoSphere
SidebarPCX=chroicon.pcx
PreClick=yes
ShowTimer=yes
DisableableFromShell=no
Range=1.4
LineMultiplier=2
SW.FireIntoShroud=no

Revision history for this message
DCoder DCoder (dcoder1337) wrote :

Memory snapshots might help us determine if any settings got reset by gamemode/map or find a different reason for this glitch. Can you make one?

Revision history for this message
AlexB (alexander-b) wrote :

Any new information on this? I tested with 1016 and Speeder's code, to no avail. It's working for me. Can someone confirm there is a problem with the default Chronosphere?

EDIT: Reproduced the bug. Most likely caused by game mode inis or maps having a Chronosphere section that doesn't restate SW.AffectsTarget.

Revision history for this message
Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r1019
Commit contains DLL: Yes
Revision comment:
Related to issue #1307: Chronosphere could chronoshift buildings if a game mode ini or a map had a Chronosphere SW section that didn't restate SW.AffectsTarget.
SVN: http://svn.renegadeprojects.com/Ares/1019

Revision history for this message
Graion Dilach (graiondilach) wrote :

Confirmed as fixed.

Revision history for this message
Untrue (untrue) wrote :

Seconded.

Revision history for this message
Chanterier (speederyr) wrote :

Thirded I guess.

Revision history for this message
AlexB (alexander-b) wrote :

Thanks for verifying. Can't close this yet, as there are four more issues still.

Revision history for this message
YR M0ddEr (yr-m0dder) wrote :

Requesting suspended after what Alex said on IRC.

Revision history for this message
AlexB (alexander-b) wrote :

I think the others will have a hard time to guess what I said in IRC.

I'd keep it open, because there are some things here that still need to be dealt with. If it's not possible to just mention the restrictions the Chronosphere imposes -- like some other features do -- ok. Maybe I'll hardcode the Chronosphere to not affect those buildings, but I will not waste any more time to find out why helipads stop providing parking space or how to fix facings.

Revision history for this message
YR M0ddEr (yr-m0dder) wrote :

I think you should take your time to fix the helipad bug. Thats the only major bug chronosphere have left. I dont really care about the other bugs, and I dont think other people will bothered about it too.

Revision history for this message
AlexB (alexander-b) wrote :

As I said, I tried and didn't even found the reason why this is happening. Fixing it will be by prevening helipads from being chronoshifted. It's a bad solution, but I know how to do that in almost no time.

Revision history for this message
Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r1082
Commit contains DLL: Yes
Revision comment:
Related to issue #1307: Airpads keep working after they have been chronoshifted.

Fixed a hook in BuildingClass::SetOwningHouse. Wrong register was used.

All credit goes to DCoder.
SVN: http://svn.renegadeprojects.com/Ares/1082

Revision history for this message
YR M0ddEr (yr-m0dder) wrote :

Confirmed fixed. But...

SW.AffectsTarget=buildings
The aircrafts that are on the pad wont be chrono shifted. Not sure what the best solution is.

SW.AffectsTarget=buildings,units
The aircraft will chronoshift, but will be placed on wrong place(see attached image).

Revision history for this message
AlexB (alexander-b) wrote :

The first one is no bug. Speed limits are valid for yellow cars also.

The second one is undesirable, but teleporting the units onto a building would simply destroy them. Ares doesn't change that part of the logic. Try to teleport aircraft onto another pad without Ares.

Revision history for this message
Linglin (linglin) wrote :

I think it should be a building which has bib and dock allowed to be chronoshifted with unit on it.

if you can't understand this,here is the sample:
you can chronoshift aircrafts form this airpad to another airpad.
you can chronoshift tanks to emeny refn's docks to prevent emeny miners.(this also can be done by controling a unit go through the dock and press stop)
you can chronoshift units onto service deports.
-----
I think if allowed control units go to the bibs directly will be better
-----
but tank bunker still is a problem

Revision history for this message
sansko (sansko) wrote :

what if this is going to be fixed by letting the aircrafts fly to the new place of the airpad (where it was teleported to)

Revision history for this message
AlexB (alexander-b) wrote :

If you really want this as a feature, not because it would make the Chronosphere more complete but because you actually need it, please report it as new feature request. I won't change the Chronosphere to support this.

Revision history for this message
Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r1109
Commit contains DLL: Yes
Revision comment:
Related to issue #1307: Air pad bug fixed again. (Broken in rev 1086.)
Related to issue #1595: Alternate fix for the invisible building bug.

Buildings with BridgeRepairHut=yes are always exempt from chronoshifting. Ares won't try to move or to destroy it.
SVN: http://svn.renegadeprojects.com/Ares/1109

Revision history for this message
YR M0ddEr (yr-m0dder) wrote :

Works the same way it did in r1082.
Good thing about this, if you have one airpad with 4 aircrafts, and you chronoshift the airpad only(SW.AffectsTarget=buildings), you wont be able to buy new aircrafts(because the airpad can not hold more than 4 aircrafts). In short, they will be remembered towards your maximum limit of aircrafts you can have.

Revision history for this message
Steel Mirage (steel-mirage) wrote :

Wouldn't it just make sense for the Aircraft to be destroyed then?

Revision history for this message
YR M0ddEr (yr-m0dder) wrote :

why?
its fine the way it is.

Revision history for this message
Graion Dilach (graiondilach) wrote :

I agree. The airpad is good and you don't lose the crafts. Besides I guess if they take off after the shift, they will land on the airpad again.

Revision history for this message
AlexB (alexander-b) wrote :

It is possible to chronoshift aircraft onto the ground or into open water using the original Chronosphere. The aircraft doesn't blow up (though it sinks in water). Why should it do now?

Ok, now we have talked about the issue here, even if all four of us are writing in IRC at the moment. :p

Revision history for this message
AlexB (alexander-b) wrote :

From my point of view this issue is fixed.

Spotlights have not been mentioned by anybody but me for eight months. So they are unimportant. The turret facing issue is annoying, but doesn't do any damage. If the buildup anim glitch is too annoying, I'd simply exclude [un]deploying buildings.

If nobody objects, I'll change the status of this issue soon.

Revision history for this message
cranium (cranium) wrote :

to me those are just petty bugs that I'm sure most of us can live with. I for one am fine with how it is.

Revision history for this message
EricAnimeFreak (ericanimefreak) wrote :

I agree with cranium on this. Petty bugs are petty, use your time for more important issues.

Revision history for this message
Hogo (hogo) wrote :

Agreed

Revision history for this message
Graion Dilach (graiondilach) wrote :

I'd call Mirage to do the rest. ;)

Revision history for this message
AlexB (alexander-b) wrote :

Until now, five people concurred this is done. Maybe I'll change the buildup thing, and then this chapter can be closed.

Revision history for this message
Chanterier (speederyr) wrote :

Whaaaaaaat? You're telling me that buildings can be chronoshifted too?

Oh wait, this won't work. This is an issue I reported. Yeah, this seems pretty much done at this point.

Revision history for this message
Steel Mirage (steel-mirage) wrote :

Can this be closed and documented now?

Revision history for this message
Bug Importer (bug-importer) wrote :

Code related to this issue has just been checked in!
Author: AlexB
Location: trunk, r1130
Commit contains DLL: Yes
Revision comment:
Fixed issue #1307: Removed Chronosphere from manual's "Known Minor Issues" section. Nothing more to see, thus no retest needed.
Fixed issue #1656: UnitDelivery was the only SW that reset the cursor manually when anybody else used it at the same time.
Related to issue #1369: Re-applied the fix for SidebarPCX, which was lost while merging the super weapons branch (rev 1012).

Commented out the SW.AnimationVisibility= flag on the Chronosphere, because it isn't supported yet and it thus won't make it into 0.2.
SVN: http://svn.renegadeprojects.com/Ares/1130

Revision history for this message
AlexB (alexander-b) wrote :

Looks like everything is in order now. Closed.

Steel Mirage: Documentation should be up to date already.

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

Other bug subscribers

Bug attachments

Remote bug watches

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