The NGLE Manual
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.
