You are here: start » blitz » objectgimmick

Object Gimmicks

Sponges

Sponges are internally labelled as type A,B,C,D and E, dictated how they expand. For B, they expand equally in all directions. In A and D, the bottom face of the sponge stays in the same place, causing it to expand upwards. In C and E, the top face stays static, causing it to expand downwars. In D and E, the back face stays in the same place, causing it to expand forward.

An unusual quirk of the way these five classes have been set up is that it causes the sponges to shift from their coordinates. In the above screenshot of J07 Outrageous Station (Fld_OctTrench_OctMsn), we can see Obj_SpongeAOcta and Obj_SpongeCOcta occupying the same coords of (735, 285, -90). In the actual game, these sponges become adjacent to each other, with A moving up 5 units and C moving down 5 units.

Normal sponges scale up to 60 units in all dimensions. Rectangles scale to the same degree except for X, which scale to 90 units. Sponges marked Small only grow to 45 units.

Ink-Switch (Spinning Target)

In order to get obejcts to move in accordance with the progress of an Ink-Switch (SwitchShock), you need RailTogglePoint. These are attached in the same way as Obj_AbstractLift, connect it to the rail with RailableParams_Rail, and connect the objects you want moved with ActorBindable. Connect the SwitchShock to the RailTogglePoint with SwitchableSendTo. As far as I can tell, it must be attached to the destination rail point, not the original position.

In Fld_OctCleaner_OctMsn, every RailTogglePointOcta has the following parameters.

      AccOff: 0.01000
      AccOn: 0.10000
      DetectPlayerIsNearDistanceXZ: 100.00000
      IsFollowRailPointRotate: false
      IsFollowRailRotate: false
      IsLinkDest: true
      IsSwitchStopSmooth: true
      LayerConfigName: Cmn
      ModelName: null
      OutAreaSpeedRate: 1.00000
      QuakeAmplitudeCoef: 1.00000
      QuakeDecrement: 0.20000
      QuakeFrequency: 0.50000
      RailableParams__SolveType: !l 0
      SwitchStopFrame: !l 0
      SwitchStopRegist: 0.05000
      SwitchableParams__InitialState: !l 0
      SwitchableParams__RespawnReset: !l 2
      Team: !l 2

However, the following parameters are different.

      SpeedOff: 0.15000
      SpeedOn: 0.80000
      TerminateAtTerminal: false

Objects attached to Ink-Switches typically undo slower than the progress.

Canned Weapons

Canned Main and Sub weapons are handles by an object called Obj_ItemCanMainSub. The “MainWeaponName” parameter is used to decide the main, “SubWeaponName” is for the sub, with these parameters being set to null when the other is in use.

Canned Specials are simply called “Obj_” and the special's internal name, i.e. Obj_SuperLanding for a canned Splashdown.

Obj_CanBuildMachine is used to infinitely spawn canned weapons. Most often it is used to spawn canned specials, but can also be used to spawn Subs or Specials, as seen in Girl Power Station's weapon select podium.

Using it is as simple as linking it to an instance of the relevant can with the DstCan link.

Ink Pistons/Ink Sticks

Internally referred to as Obj_GeyserAuto(Octa).

    - DelayFrame: !l 0
      DurationFrame: !l 180
      IntervalFrame: !l 240
      IsDisplayBaseModel: !l 0
      IsKeepDuration: false
      IsLightType: false
      IsLinkDest: false
      IsMovedByPlayer: false
      IsSetCameraXluFixBB: false
      IsSwitchDrivenType: false
      LayerConfigName: Cmn
      Length: 500.00000
      Links: {}
      MovingFrame: !l 20
      Radius: 20.00000
      Team: !l 0
      UnitConfigName: Obj_GeyserAutoOcta
  • DelayFrame: Frames before the piston first activates
  • DurationFrame: Frames that it is active for
  • IntervalFrame: Frames between activations
  • IsKeepDuration: Boolean that is true if the ink piston never retracts
  • Length: Length of piston (note that the game only renders the last 500 units worth of piston. The hitbox is still active, but that's of little use to a player)
  • Radius: Radius of piston (note that the object itself never changes size, only the hitbox. It is recommended to keep it as 20)
  • Team: If set as 0, the piston's hitbox will repel, but will not damage. The fx surrounding the piston are the player's colour, but not the piston itself.

If you want to have two sets of pistons that alternate, you can use this formula:

x is the time you want the piston to be active for.

y is the time that neither piston is active for.

Piston 1:

    - DelayFrame: !l 0
      DurationFrame: !l x
      IntervalFrame: !l x + 2y

Piston 2:

    - DelayFrame: !l x + y
      DurationFrame: !l x
      IntervalFrame: !l x + 2y

Dash Tracks/Panels

Dash tracks are internally referred to as Obj_DashPanel.

The distances in the below table are measured from the start point of the panel.

Label Distance Height
Wall 195 0
VTOL1 90 0
VTOLEx1 90 0
10 155 7
30 180 30

1VTOL has strange properties compared to other panels, may need further study