Transformer

来自Ballance Wiki
跳转至: 导航搜索
Chinese version / 中文版: 变球器
Transformer
变球器.png
The three transformers equipped with the decorative road blocks below after rendering the texture in Virtools (it is slightly different from the in-game display). On the left is its model in Virtools.
Basic information
Modul P_Trafo_Stone, P_Trafo_Wood, P_Trafo_Paper
Name Transformer
Appears in All levels (Level 1 doesn't have paper transformers)

Transformer (Trafo for short) is an object that is used to switch the material of the Player Ball. In the game, there are three kinds of transformers corresponding to the three materials of balls, which are recorded in the game as P_Trafo_Stone (stone transformer), P_Trafo_Wood (wood transformer), and P_Trafo_Paper (paper transformer).

Introduction

The transformer is a very common object in Ballance. The transformers appear to be 5m x 5m (1 unit x 1 unit) (height unknown), curved square "metal" frame with a circular hole in the middle. Its surface is smooth, glossy and shaded.

In order to distinguish the three kinds of transformers, the four corners of have colored circles: the stone transformer is green, the wood transformer is yellow, and the paper transformer is blue.

There is usually a cube road surface with the same material under the transformer, but this texture has nothing to do with the transformer itself. It can be separated from the transformer for the sake of aesthetics and easier identification, or mixed for increased difficulty.

When the player ball comes close to a transformer of a different type, the ball will be attracted to the transformer. Afterwards, there will be a 2-second animation; the circular hole expands, and as the metal rods protruding from the four corners move up, the ball is wrapped; Then a beam of "current" is generated from the bottom of the transformer to penetrate the ball; finally, the circular hole shrinks back to its original size as the metal rod is withdrawn, and at the same time, accompanied by white smoke, the surface material of the player's ball bursts, revealing the material corresponding to that of the transformer. The physical properties change at the same time.

Parameters

The transformer is in the nmo file under the \Ballance\3D Entities\PH folder, and consists of two parts: P_Trafo_*_MF and P_Trafo_*_Shadow (the * is the material of the ball changer, namely Stone/Wood/Paper).

Observing it from the outside, the side of the bottom is 5 meters (1 unit) long. It has a position slightly shifted from the model, and the shape and size of the bottom are exactly the same. The height information is not yet available.

Schematic diagram of the detection range of the transformer.

The transformer does not have a hitbox for detecting player balls. The textual explanation of its actual operation principle is roughly as follows:

  1. Find the closest transformer to the player's ball.
  2. Detect the distance between the transformer and the ball, if is less than 4.3m (0.86 units), go to the next step, otherwise go back to the first step.
  3. Determine whether the ball can be transformed (material of ball is different from material of transformer). If the ball can be transformed, continue to the next step, otherwise return to the first step.
  4. Formally transform the ball. This process usually lasts 2.5 seconds: the timing starts from playing the transformer animation, at this time the player ball is dephysicalized; the player ball is attracted by the transformer and hangs, and the player cannot operate; 2.35 seconds later, fragments are generated and exploded, but "the player ball is still not replaced at this time"; after another 0.15 seconds, the transformation ends, the player ball is replaced and physicalized, and the player can continue to operate at this time.
  5. After transformation, the process returns to the first step.

It can be deduced from its actual operation principle that whether the ball can be attracted by the transformer is related to the distance between the ball and the transformer, where the distance is under the local coordinate system of the player ball; the Euclidean distance between the origin and the pivot point of the transformer. When the distance is less than 4.3m (0.86 units) and the type of the player ball is different from the type of the transformer, the player ball will be attracted by the transformer.

Since only the coordinate value is used when calculating the distance, scaling the transformer model in Virtools will not affect its detection distance. But scaling the transformer model can still deform the final generated transformer. And during transformation, the hovering position of the ball is always the center of the upper bound of the model (that is, the top surface of the bounding box, the side facing the local coordinate y+ direction). This location may be the center of the actual transformer, but it is difficult to verify. In fact, the height of the transformer animation is twice the height of the ball transformer model, and the length and width match the model, so it can be roughly considered that the hovering position of the player ball is the center of the animation.

Did you know

Glitch: the ball is sucked into a non-existent transformer
  • Part of the transformer can be activated when the player is in a section that is not activated (the ball passes by an empty transformer in a earlier or later section; the transformer suddenly appears and starts to change the ball). No regularity has been found for this phenomenon, and its principle is not yet clear.
  • When the player ball is within the detection range of multiple different types of transformers, once the player ball triggers any one of the ball changers, it will be randomly absorbed by other transformers after the ball change is completed, and the ball is stuck in an infinite loop, resulting in a non possum mori. At this time, you can only press and hold the Esc key to try to open the menu or force close the game. This is usually caused by a mapping error (there are also custom levels that use this intentionally), but it is can also be a glitch, as shown in the right picture.
  • Although scaling the model of the transformer will not change its detection range, the ball will still be pulled to the corresponding position of the scaled model after being sucked in. Using this feature, you can make a huge transformer with strong viewing, or scale it to be so narrow and long that it is difficult to detect, to achieve the effect similar to a teleporter.
  • The transformer can also be triggered when the player's ball enters the detection area from below. This feature is generally used as a trap or obstacle, but can also be used as a teleporter.
  • If the resetpoint contains a transformer, and the player ball is born/reborn, if the ball type is different from the transformer, the transformer will change the ball when the ball is "generating".
  • When triggering the transformer before respawning after triggering death, it will respawn near the transformer (not in the death zone) and activate a transformer that appears out of thin air at the same time, and the player ball is transformed. The mechanism of this phenomenon is not yet clear.
  • When the player ball is locked and changed by the transformer, the player ball is dephysicalized and becomes a non-entity that cannot be physically collided, so other objects and roads can pass through the ball at this time.
  • When the player's ball is sucked into the transformer, if the computer is stuck, it may cause the ball to stay at a position that is not the center of the transformer to complete the change.
  • When the player ball is in the transformer, it stays for a long enough that the Extra Points chasing the player ball can catch up with the player. However, if the player's computer is lagging or is in “Far Lands”, it is possible that the extra points may not catch up with the player after the player's transformaion is completed.
  • Although the "shards" produced by the player ball have thickness, the ball's diameter will not decrease.
  • After the player ball transformed, wooden balls, stone balls, and paper balls will produce 16, 17, and 18 pieces of debris respectively.
  • In the original levels, most of the ball changers are equipped with the corresponding bases. However, the base of the wood transformer in the level 4 section 5 actually uses the texture of the surrounding wooden board, while tin level 12 section 8, the paper ball changer that is blocked under the arch wood actually has no base texture (although the transformer body can still be seen from a distance).
  • You can see the real operation logic of the ball changer in the decrypted game file Gameplay.nmo. Before discovering this logic, the transformer is usually mistaken for having a pyramid-shaped collision box for detecting the player's ball, and it is speculated that the detection area that triggers the ball change has a corresponding height below the pyramid with a cuboid area with a height of 2.5m (half of a unit).
  • 1.35 seconds after the start of the ball change, the in-game Debug will output: Ball dephysicalize(Trafo)! in the console and log files. However, since the game console is invisible, it is unknown in the game, and this prompt can only be found by decrypting the game file.

Other pictures