Pushable Objects
by
Bedazzled
The
NG game engine has made available several new features for use with
pushable objects. I shall try to cover them all in this tutorial,
explaining the OCB codes required to make these new features work.
Standing on pushable blocks
By using an appropriate OCB code, Lara is able to stand on pushable
blocks ranging in height from 1 - 28 clicks or the equivalent of 7
blocks. The formulae used to determine this code is: OCB = (64 required
to enable the new features) + (block height measured in clicks.) For
convenience a table listing the required codes for block heights ranging
from 1 - 28 clicks is given below.
This picture shows Lara standing on a 1 block high crate in order to reach a higher tunnel.
Pushable blocks are also able to be stacked and providing that each block has been given the ocb code appropriate to its height, Lara is also able to move a block along the top of other pushables as seen here in order to gain access to another tunnel.
Pushables can also be used in conjunction with climbable walls as seen in this screenshot. In this scenario you would set parameters for the climbing wall to make the climbable section start at a distance of 8 clicks above the ground, necessitating the use of the pushable block.
Pushables & Raising Blocks
Pushables can be used in conjunction with both the RAISING_BLOCK 1 and
RAISING_BLOCK2 objects. When used in this way once placed onto a raising
block the pushable will rise and fall in real time with the raising
block beneath it.
However it should be noted
that due to technical limitations which cannot be changed, when a
previously climbable block is pushed onto a raising block it will lose
its climbable attributes. It regains them once removed from the raising
block.
Pushing objects off Ledges or Platforms
This new move also requires an OCB code, in this case 32 (which must
be added to the OCB of 64 required to enable new features). For statues
and non-climbable blocks this results in a required code of 96. For
climbable blocks simply add 32 to the appropriate OCB code in the table
above.
With this OCB code Lara is able to push an object off a
ledge or platform, with the following exceptions.
1. There is a
shatter object on the tile the pushable object will land on.
2. If
the tile the object will land on is not flat. The tile can be raised
from floor level but it must be flat.
In both these cases Lara
will stop pushing when the object reaches the edge of the ledge or
platform.
You should also ensure there is a minimum clear drop of
one block between the point the object will be pushed from and the tile
it will land on. This is needed to avoid having Lara walking in thin air
as the object tips and begins to fall and also for the object to fall
correctly.
Due to technical
limitations which Paolone can't change, if an object such as a statue is
pushed off a ledge or platform it will tip over as it begins to fall,
but will be standing upright again once it lands.
Disabling pulling & pushing
Note: The OCB values listed
in the table below concerning disabling of pushing or pulling are only
for combining with the OCB codes described in the sections above
covering climbable blocks and pushing objects off ledges.
If the
disable pushing or pulling feature is to be used as a stand alone
feature, OCB 64 must be added to the value shown in the table in order
to enable the NG features and this applies to all pushable objects.
Restricting which Block sides can be Climbed
Applicable only to blocks 8 clicks or more in height, the code given
in the table below should be added to the code for the corresponding
block height found in the first table to arrive at the final OCB code.
If you want Lara to climb on only the West & North sides, for
example, the final code is calculated as follows:
2048 + 4096 +
64 + (block height in clicks)
Pushables and Meta
When creating a pushable object it's important that the point of
origin is at the centre of the object's base as shown here with a
pushable block. This is to ensure it will fall correctly when pushed
from a ledge.