The NGLE Manual
NGLE: New Levels
by AkyV
PART 1 -
THE BASICS
The Base
These are the minimum requirements if you want to start
building a new level in NGLE:
1. You installed the official level editor: Tomb Raider
Level Editor, TRLE.
2. You used the official TRLE manual to help you to make the
copy of the tutorial project in TRLE to understand what the
basics of editing levels are.
3. You installed the Mk installer on TRLE to “transform” it
into Next Generation Level Editor, NGLE.
4. You updated NGLE with the latest TRNG (Tomb Raider Next
Generation) patch.
You can find all these programs on Skribblerz Tools page.
These are the most important parts of NGLE:
- Tomb4.exe: it starts the game.
- Room Editor (ngle.exe): use it instead of Room Editor of
TRLE (winroomedit.exe).
When you open NGLE Room Editor you can see the look of it
and TRLE Room Editor are almost the same. That’s why if you
have mastered the basics of TRLE then you won’t have real
problems with using NGLE Room Editor.
In Drop Down Menu Bar of NGLE Room Editor, choose Help\NGLE
Help to download the basic tutorial of NGLE.
- Level Converter (NG_Tom2Pc.exe): use it instead of Level
Converter of TRLE (tom2pc.exe).
- If you have tried script editing in TRLE yet (using
Script.bat in Script folder) then forget it in NGLE.
I.e. you will use NG Center (a part of NGLE) to edit script
now. Use Script section of NG Center to edit Script.txt and
Strings section to edit English.txt. If you’ve finished then
you have to save the script then build that with the buttons
in Script section.
STEP 1 – The Conception
Before you start editing you need to make some conception
for your level (what its story is etc).
Write it down, or just imagine it in your head.
Among other things, find out the name of your level.
Let’s suppose it’s “The Great Castle” now.
You need a short, easy ID for your level. Every important
attachment of the level will use this ID as a name.
For example, in maps folder you can find coastal folder. It
means coastal folder is a folder for Coastal Ruins level.
So, for example, grcastle is a good ID for The Great Castle
level. (See more about it below.)
STEP 2 – Making the [LEVEL] Block for your Level
Each level must have a [Level] block in NG Center\Script. A
[Level] block starts from a [Level] entry and ends at the
next [Level] entry.
You can place several entries in the block of a level. Every
entry has two parts: a command that indicates we define a
value for some feature here, and the value itself. - For
example, the entry that starts with “Name” command always
defines the name of your level.
As you’re a beginner the most simply way to create a [Level]
block is if you copy an existing block.
For example, copy the original [Level] block of TRLE level
“Temple Of Karnak”:
[Level]
Name= Temple Of Karnak
Horizon= ENABLED
Layer1= 128,96,64,7
Puzzle= 2,Canopic Jar 1, $0001,$0320,$0000,$0000,$0000,$0002
Puzzle= 3,Canopic Jar 2, $0001,$0320,$0000,$0000,$0000,$0002
Puzzle= 1,Sun Talisman, $0000,$0500,$0000,$0000,$0000,$0002
PuzzleCombo= 1,1,Sun Disk,
$0000,$0180,$0000,$0000,$0000,$0002
PuzzleCombo= 1,2,Sun Goddess,
$0000,$04b0,$0000,$0000,$0000,$0002
Puzzle= 5,Golden Vraeus, $0003,$0300,$0000,$0000,$0000,$0002
Puzzle= 7,Guardian Key, $0009,$0300,$0000,$0000,$0000,$0002
Key= 2,Hypostyle Key, $0000,$0400,$0000,$c000,$0000,$0002
LoadCamera= 89366,-258,48077,88372,-1300,45701,0
Level= DATA\KARNAK,110
Paste it between two other [Level] blocks or before the
first/after the last [Level] block.
It’s important where you place this [Level] block now:
- for example, if you place this block between the third and
the fourth block, then your block becomes the new fourth
[Level] block in Script. In this case, if you type 4 in the
window of a level-jumping (FINISH) trigger in another level,
then the game will load Lara into the level that has the
fourth block when the trigger has been activated. And
- in New Game list of the game the level name of the fourth
block is in the fourth position.
All you have to care about now in this new block is three
commands. These commands have to be in the block when you
start building your new level and they cannot be deleted
later. – I’m talking about Name, LoadCamera, Level commands:
1. Change the value of “Name” command –
because your level name is not “Temple Of Karnak” but “The
Great Castle”:
Name= The Great Castle
If a text that will appear on the screen in the game is
typed in NG Center\Script then it also has to be typed in NG
Center\Strings. Generally into [Strings] section of Strings.
In the case of some [Strings] entries – just as the level
names, for example – it doesn’t matter where you type them,
actually. But don’t forget: there are blocks for the entry
types, without perceivable block borders: for example, in
[Strings] you will find all the level names in the uppermost
part of the list.
So: you’ve typed The Great Castle name in Script that’s why
you also have to type it in Strings, but you can type it
anywhere in the uppermost part of [Strings]. (Updating the
name of a level that is non-used any longer in your game.)
2. LoadCamera command defines the still
picture you’ll always see when the game leaves “The Great
Castle” level.
Now you can’t adjust the value of this command. (You will do
that later, collecting data for the value in the game.) But
that’s not a problem, if you let the
“89366,-258,48077,88372,-1300,45701,0” value of Temple Of
Karnak there now.
(Of course, the still pictures of Temple Of Karnak and The
Great Castle are not the same. Because of this, maybe you
will get a very strange still picture or maybe the whole
screen will be black during jumping from The Great Castle,
until you will adjust the real still picture of the level.)
3. Take a look at Level= DATA\X, Y entry:
- You can find TR4 files in data folder. Each TR4 file will
be loaded by the game, as one level. (In fact, title.tr4
means the title sequence of the game.) The DATA\X means the
game will use X.tr4 file for the level of the actual [Level]
block.
It’s natural we write “GRCASTLE” as X in the [Level] block
of The Great Castle level (instead of KARNAK) so that the
game will load grcastle.tr4 file as a level for the level
named “The Great Castle” in Script. (Grcastle.tr4 doesn’t
exist yet, you will create that later.)
- The Y means the starting background audio of the level of
the actual block. I.e. when the game starts this level then
it also starts Y audio file of audio folder, in loop mode.
It’s 110.wav now – write any audio file ID from audio folder
instead of 110, if you want. (You can define this audio
later, if you want.)
Save the Script, then build it.
If you find that some of the entries are unnecessary or
bothering then you can change or delete them. And, of
course, you can type here any new entries you want. (See
more about all the entries here: NG Center\Reference\Script
Old/New Commands.)
But only later. Now don’t waste your time with that and jump
to the next step.
STEP 3 – Creating your WAD File
Each WAD file contains the objects the game will use in one
level.
If you want to define your object set (i.e. your WAD) for
your level then you have to use WADMerger program.
As you’re a beginner the most simply way to create your WAD
is if you copy an existing, original TRLE WAD from your
graphics\wads folder.
Some of the original TRLE WADs need to be updated to work
properly. So download and install the updated WAD pack (into
your Level Editor main folder). These are available from the
Resources page.
So load a WAS (!) file of wads folder into the left window
of WADMerger. (Seeing the example above it should be
karnak.was now.) The WAS is a list about the contents of the
WAD with the same name. So the list appears in the left
window, and if you click on an object name (object slot) of
the list then you can see (in the smaller window below) what
object belongs to this slot now. – Clicking the buttons on
the top, you can change among the parts of the list to
examine them: list of Moveable objects (M), Static objects
(S) or sprite-taking objects (2D).
It’s important to know that “object slot” notion isn’t equal
with “object” notion. Because if you have an object slot
called A then you can have X, Y or Z object in this slot as
well. - For example, an object called ARCHITECTURE7 can be a
statue, plant, column etc. (One WAD has only one object in
any object slot, of course. So ARCHITECTURE7 is a column now
and not more. But in another WAD it could be even anything
else. – Though, “anything else” is a rough expression. I
mean, you will see later, each slot contains only some types
of objects, actually.)
After that, save the WAD.
“Saving the WAD” means you have to create a WAS file in wads
folder now – using grcastle.was as a name, of course. (Don’t
worry, it also creates grcastle.wad.)
STEP 4 – Creating a Folder for your Project
Create a new folder in maps folder. Name it grcastle. You
will set the project of The Great Castle level in this
folder later.
STEP 5 - Creating your TGA File
Each TGA file contains the square-shaped texture tiles you
will place in the rooms of your project.
If you want to define your tile set (i.e. your TGA) for your
level, then I recommend you to use TBuilder program (see on
Tools page of Skribblerz).
As you’re a beginner the most simply way to create your TGA
is if you copy an existing, original TRLE TGA from a folder
of maps folder.
So load a TGA file of a maps subfolder into the right window
of TBuilder. (Differently the example above it mustn’t be
karntext.tga – TGA of Temple Of Karnak level - now.) The
tiles appear in the right window.
After that, save the TGA.
“Saving the TGA” means you have to create a TGA file in
maps\grcastle folder now – using grcastle.tga as a name, of
course. (As you see, TGA of Temple Of Karnak isn’t
karnak.tga but karntext.tga. So, if you want, you can name
your TGA not grcastle.tga but, for example, grcsattext.tga
now. It doesn’t matter absolutely.)
STEP 6 - Starting your Project
There isn’t a “start a new project” button or menu entry in
Room Editor.
I.e. if you want to start a new project, then all you have
to do is to start Room Editor – and then don’t load any
project into it.
So you’ve just started Room Editor and you can see a
very-very simple fundament of a new, unsaved project in it:
only one, big, absolutely unedited room, without a texture
and an object set attached to the project.
To attach your texture set to the project, click on Load TGA
button in Room Editor or choose Texture\Load TGA in Drop
Down Menu Bar. Go to maps\grcastle folder and click on
gracstle.tga to load its tiles into the huge black window of
texture panel.
Then, to attach your object set to the project, hit SHIFT+O
or choose Objects\Load Objects in Drop Down Menu Bar of Room
Editor. Go to graphics\wads folder and click on gracstle.was
to load the slots with their objects in grcastle.wad into
the object panel.
If you attach the object set before the texture set then you
will notice your objects have strange colors.
It’s easy to prevent this problem: just load your project
(after you saved it, of course).
After that, save your project in maps\grcastle folder. The
saved projects are files with PRJ extension. Of course, your
project name will be grcastle.prj now.
Click on Settings button to adjust the backup savings for
your project.
Backup projects could be very useful if your project will be
corrupted and useless accidentally!
STEP 7 – Trying Your Level in the Game
I’m sure you are very-very curious to try your first own
NGLE level (fundament) in the game.
That’s why I recommend you to make the first one of your
rooms in Room Editor, and use “Move Lara here” button (or
hit CTRL+H) to place Lara in that room. After that, won’t do
any more editing for the time being, but make the playable
version of your level.
To make the playable version of your level, you can use the
usual method (saving project, doing “Output WAD” operation,
converting the level by NGLE Level Converter, starting the
game) or two special methods that NGLE gave us:
These are “Exit&Play” or “Play” methods.
Click on Exit&Play or Play buttons on object panel to start
one of the methods, and these things happen automatically,
one after another:
1. NGLE Room Editor saves the project, overwriting
grcastle.prj.
2. NGLE Room Editor accomplishes an “Output WAD” operation.
(It creates grcastle.tom file in wads folder if it doesn’t
exist or updates it if it does. - TOM files contain many
info of your project.)
3. NGLE Level Converter opens (then closes) to convert your
project (in fact, TOM file of your project) into
grcastle.tr4 level file. (It creates this file if it doesn’t
exist or updates it if it does.)
4. Tomb4.exe (i.e the game itself) starts.
5. NGLE Room Editor is closing (if you used Exit&Play) or
just being minimized on the Tray (if you used Play).
So you have to do only one click to try your level in the
game. – Find The Great Castle name in New Game list, then
select it so that the game will load The Great Castle level
and you can test what you’ve edited so far in this level.
Then quit the game and go on editing on your level.
If the value of PlayAnyLevel command (in [Options] block of
Script) is DISABLED then the game always starts with the
level that has the first [Level] block, if you choose New
Game entry.
Gerneral Notes
1. If you start your level in the game, but the level shows
its former state, then maybe you’ve forgotten to build the
actual Script or make the playable version of the actual
level.
2. I don’t recommend adjusting the exact still picture (see:
LoadCamera Script command) until you’ve finished editing the
level. Because if you adjust that too early, then maybe you
will notice later that the still picture is not the adjusted
picture any more.
3. You should let flying cheat be enabled and use it when
testing your new level. (See more here: FlyCheat Script
command.)
PART 2
FOR ADVANCED LEVEL BUILDERS
Now you can try other cheats to test your new level. (See
more here: DiagnosticType Script command, NG
Center\Reference\Mnemonic Constants\DGX_CHEATS.)
Making Your Own WAD
1. When “Output WAD” operation happens then
a TXT file will be created (or, if it exists: will be
updated) in wads folder, with the same name as the WAD has.
This TXT shows the slots of WAS and how many pieces of the
object of each slot are just placed in the map.
2. Maybe you want to create grcastle.wad as
a brand new set of objects or maybe you want to re-edit
grcastle.wad (now or any time during editing the level) that
exists.
If you want to do them then do some of the things below:
a, Load the source WAD into the right window of WADMerger.
Select an object slot here then use Copy button to put the
selected slot to the left window, i.e. to the object slots
of grcastle.was. – The object that belongs to this slot will
also be copied into grcastle.wad now, of course.
But be careful with Smart Copy (“electric bulb”) button. If
it’s on then some of the object slot-groups that have ID
numbers in the name will use the first free number if you
create a slot in the group. – For example, if you copy a
SWITCH_TYPE4 from the source WAD into the left window, but
there are only SWITCH_TYPE1 and 2 of the SWITCH_TYPE1-8
group in grcastle.wad now, then this switch name will be
automatically SWITCH_TYPE3 in grcastle.wad if Smart Copy is
on now.
These are the groups where it works:
- SWITCH_TYPE
- DOOR_TYPE
- ANIMATING (except MIPs)
- All of the Statics as an organic group (except SHATTERs
and EXTRAs). (The order of the Static partial groups are:
PLANT0-9, FURNITURE0-9, ROCK0-9, ARCHITECTURE0-9, DEBRIS0-9.
So, for example, if I copy a ROCK7 into grcastle.wad, but
there isn’t Static there at all now then this Static name
will be PLANT0 there now, if Smart Copy is on.)
- SHATTER
b, Select an object slot in the left window then click on
Delete button to delete it and its object from the WAS/WAD.
c, Select an object slot in the left window then click on
Rename button to rename it (into another, but existing slot
name) in the WAS.
But be careful with renaming: object slots can’t always take
easily any kind of objects. Because any slot has its own
properties. For example, the so-called ANIMATING objects can
take any types of Moveable objects, but their intelligent is
very low. While the creature objects can only take few
objects (or just one, actually) but their intelligent is
higher. (Somewhere it’s logical, though: for example, you
can’t place a cupboard in a CROCODILE slot, can you?) -
Anyway, you can also use Copy operation to take an object
into another slot: hit SHIFT when you copy an object.
(Rename or Copy+SHIFT operation eliminates any risk if the
properties of the original slot and the new slot are the
same. - For example, non-SHATTER Statics have the same
intelligence. So, for example, if you have a statue in
FURNITURE5 slot then you can rename/copy it without any
problem into DEBRIS2 slot.)
3. When you create grcastle.was then these
files will be created in wads folder:
- grcastle.sam: it’s the list of the sounds in grcastle.sfx.
- grcastle.sfx: contains the sound files that are attached
to the objects in grcastle.wad.
- grcastle.swd: contains the info of the sprites that are
attached to the objects in grcastle.wad.
- grcastle.was: it’s the list of the objects in
grcastle.wad.
- grcastle.wad: contains the objects you can use in The
Great Castle level.
Notes:
1. Open SAM and WAS as if it were TXT files.
2. If you refresh the contents of your grcastle.wad later
(saving the existing WAD again in WADMerger) then all these
five grcastle files will be updated, of course.
4. When you have your WAD attached to your
level and you refresh its contents in WADMerger then you
also have to refresh it in your projects after that, with
one of these methods:
- You attach the WAD again.
- Room Editor offers to refresh the WAD of your project, if
you hit CTRL+O.
- You load the project.
But don’t forget: don’t delete/rename an object from/in the
WAD, if that object is just placed/referred in the
project/script of your level.
Because, for example, the deleted object will disappear from
the map after refreshing the WAD in the project, with some
of its triggers together. Its Script entries and other
triggers will stay there: it’s not only bothering for you
but can cause some malfunction.
Of course, you can do all those things intentionally, but
don’t forget to prevent the malfunction problems. (For
example: you activate a BADDY_1 with an ACTION trigger. If
the BADDY_1 slot is deleted then the ACTION will remain in
the map without anything to activate, so you have to delete
this trigger manually.)
5. Because TRLE and (with modifications)
NGLE use TRLR engine, you can use any TRLR object in your
WAD without problems. There are many ways to get all of the
TRLR WAD files. For example, you can download some TRLR WADs
from Skribblerz\Resources.
You can also rip objects by WADMerger from directly the TRLR
level files (also with TR4 extension), loading them into the
right window.
6. To understand what to do when you want to
choose the objects for your WAD, let’s see the list of the
object slots shortly (see more about them in their
Skribblerz tutorials or in NG Center\Reference) and the
objects that the slots have in TRLR/TRLE WADs:
a, LARA: has to be placed where Lara will be when the level
begins. It also contains all the basic animations that Lara
will use in that level. (Every WAD can have its own
animation set for Lara!)
b, “General ingredients” of Lara (don’t place them in the
map):
- LARA_SKIN: the actual look of Lara
- LARA_SKIN_JOINTS: Lara’s joints (the object didn’t exist
before TRLR)
- LARA_HOLSTERS: Lara’s empty holsters
- HAIR: Lara’s hair
- LARA_SCREAM: it’s Lara’s snarling head when she’s shooting
- GUNFLASH: look of the gunflash when Lara (or an enemy) is
shooting
c, Creatures:
- SKELETON: simple skeleton
- GUIDE: friendly guide who you can control in a complicated
way. It needs (not placed in the map) MESHSWAP2
- VON_CROY: similar to the guide. It needs (not placed in
the map) MESHSWAP1
- BADDY_1: warrior. It needs (not placed in the map)
MESHSWAP3
- BADDY_2: warrior. It needs (not placed in the map)
MESHSWAP2
- SETHA: Egyptian god
- MUMMY: simple mummy
- SPHINX: bull-like demigod
- CROCODILE: simple crocodile
- HORSEMAN with HORSE: a manifested old warrior riding his
horse
- SCORPION: big, mutant scorpion (attacks anyone, made to
attack TROOPS)
- JEAN_YVES: special human character
- TROOPS: friendly warrior (till Lara shoots him)
- KNIGHTS_TEMPLAR: manifested knight templar
- MUTANT: fire-spitting, snake- (or what) like monster
(needs AHMET_MIP – not placed in the map – in the WAD to
spit locusts)
- BABOON (NORMAL, INV, SILENT): they’re all baboons. Normal
is friendly, use it to pull a fake switch
- WILD_BOAR: simple wild boar
- HARPY: “mutant eagle- (or what) like creature”, i.e. the
harpy from the Hellenic mythology
- DEMIGOD1, 2, 3: demigods
- LITTLE_BEETLE: emitting little beetles
- BIG_BEETLE: big, flying insect (“beetle”)
- WRAITH1: wraith that ignites Lara
- WRAITH2: wraith that activates a flipmap when dies
- WRAITH3: “casual” wraith
- WRAITH4: not used in TRLR/TRLE
- BAT: simple bat
- DOG: dog or jackal
- HAMMERHEAD: hammerhead shark
- SAS: regular commando
- SAS_DYING, SAS_CAPTAIN: not used
- SAS_DRAG_BLOKE: a pullable corpse of a SAS
- AHMET: “werewolf- (or what) like creature”, i.e. Ammit, a
demon from the Egyptian mythology
- LARA_DOUBLE: actually, it’s a “still copy of Lara”, that
can be hurt by the enemies – also making Lara hurt!
- SMALL_SCORPION: simple small scorpion
- LOCUST_EMITTER: emitting locusts, needs AHMET_MIP – not
placed in the map - in the WAD (the emitter has the name
“Fish Emitter” in city.wad, but it’s wrong now!)
- BUBBLES: look of the missile of some monsters
- BUTTERFLY, BODY_PART: not used
Each creature and ANIMATING object has one pair, named MIP.
The original objects have a bigger resolution than the MIP
objects. It’s because of technical reasons: MIP appears
instead of it if the original object is far from Lara. That
doesn’t demolish the illusion for the player but saves some
memory.
It’s not necessary to use MIPs for that purpose. (However,
in the case of ANIMATINGs, see the technique at the
description of AnimatingMIP Script command.) Moreover, you
can use ANIMATING_MIPs now as independent, single ANIMATING
objects.
(The MIP for the AHMET and the special AHMET_MIP for the
locusts are not the same.)
d, Vehicles:
- MOTORBIKE: for Lara. It needs PUZZLE_ITEM1 as the canister
of nitro to give the bike a bigger maximal speed and
VEHICLE_EXTRA (renamed MOTORBIKE_LARA maybe), not placed in
the map, for biking animations of Lara
- JEEP: for Lara. It needs PUZZLE_ITEM1 as the ignition key
and VEHICLE_EXTRA, not placed in the map, for driving
animations of Lara
- ENEMY_JEEP: driven by an imaginary enemy that is sitting
in it now
- SMASHABLE_BIKE_FLOOR: floor that smashes under the weight
of a vehicle
- SMASHABLE_BIKE_WALL: wall that smashes when a vehicle has
been driven against it
e, Platforms:
- ONEBLOCK_PLATFORM: not used
- TWOBLOCK_PLATFORM: paper-thin platform that moves up and
down
- RAISING_BLOCK1, 2: block that moves up and down
- EXPANDING_PLATFORM: block that moves forward and backward
- BRIDGE (FLAT, TILT): stable, horizontal/tilted platforms
- BURNING_FLOOR: see its tutorial to learn the use
f, Other tools to move Lara:
- ROPE: nullmesh (“red pyramid”) object that will be a rope
dangling from the ceiling when triggered
- POLEROPE: vertical pole
- DEATH_SLIDE: not used (can be used for zipline of TR2/TR3)
g, Traps:
- DART_EMITTER: spitting DARTS objects
- HOMING_DART_EMITTER: I recommend you to avoid using this.
Customize a DART_EMITTER in Script if you want a special
DART_EMITTER
- FALLING_CEILING: falling rocks from above
- FALLING_BLOCK1, 2: floor that collapses under Lara’s
weight
- ROLLINGBALL: boulder
- SPIKEY_FLOOR: doesn’t seem to be usable
- TEETH_SPIKES: stakes from the floor/ceiling/wall
- JOBY_SPIKES: spinning, long stake that extends by degrees
- SLICER_DICER: attached cylinders with spikes (or what)
that spin around their own axis and around an axis of a
track
- CHAIN: dangling chain/blade/rock
- PLOUGH: needs four pieces and an ANIMATING7 of burial.wad.
Spinning blades
- STARGATE: moving blades in a big, vertical ring
- HAMMER: big hammer
- COG: cog that spin around its own axis and around an axis
of a track
- SPIKEBALL: spiky ball that falls from the ceiling,
dangling in a rope
- SQUISHY_BLOCK1: smashing rock, moves back and forth
- SQUISHY_BLOCK2: smashing rock, falls down
- TRIPWIRE, MINE_DETECTOR: not used
- SENTRY_GUN: machine-gun, won’t hurt Lara with PUZZLE_ITEM5
- MINE: mine. It needs (not placed in the map) MESHSWAP3, if
you want to use a mine detonator
- FLOOR_4BLADE, ROOF_4BLADE, BIRD_BLADE, CATWALK_BLADE,
MOVING_BLADE, PLINTH_BLADE, SETH_BLADE: blade trap types
- LIGHTNING_CONDUCTOR: nullmesh object that produces a
lightning when triggered
h, Flames (nullmeshes):
- FLAME: place it anywhere. Lara takes fire when the object
has been triggered
- FLAME_EMITTER: harmful for Lara. Behavior can be modified
by OCBs
- FLAME_EMITTER2: harmless for Lara. Size can be modified by
OCBs
- FLAME_EMITTER3: harmful for Lara. Not a compact flame.
Using OCBs it becomes an electric arch
i, Lara’s pickable supplies:
- PISTOLS_ITEM: pistols. It needs (not placed in the map)
PISTOLS_ANIM that contains Lara’s pistol shooting animations
and Lara’s “hands with pistols” meshes and
LARA_HOLSTERS_PISTOLS that shows pistols in the holsters and
GUNSHELL that shows the flying gunshells
- UZI_ITEM: Uzis. It needs (not placed in the map) UZI_ANIM
that contains Lara’s Uzi shooting animations and Lara’s
“hands with Uzis” meshes and LARA_HOLSTERS_UZIS that shows
Uzis in the holsters and GUNSHELL that shows the flying
gunshells
- SHOTGUN_ITEM: shotgun. It needs (not placed in the map)
SHOTGUN_ANIM that contains Lara’s shotgun shooting
animations and Lara’s “hands with shotgun” meshes and
SHOTGUNSHELL that shows the flying shotgunshells
- CROSSBOW_ITEM: crossbow. It needs (not placed in the map)
CROSSBOW_ANIM that contains Lara’s crossbow shooting
animations and Lara’s “hands with crossbow” meshes and
CROSSBOW_BOLT that shows the flying arrow that has just been
shot
- GRENADE_GUN_ITEM: grenade gun. It needs (not placed in the
map) GRENADE_GUN_ANIM that contains Lara’s grenade gun
shooting animations and Lara’s “hands with grenade gun”
meshes and GRENADE that shows the flying grenade that has
just been shot
- SIXSHOOTER_ITEM: revolver. It needs (not placed in the
map) SIXSHOOTER_ANIM that contains Lara’s revolver shooting
animations and Lara’s “hands with revolver” meshes and
LARA_HOLSTERS_SIXSHOOTER that shows revolver in the holsters
- PISTOLS_AMMO_ITEM: unlimited pistol ammo, doesn’t need to
be placed in the map (but it doesn’t mean it can be missed
from WAD)
- UZI_AMMO_ITEM: clip of Uzi bullets
- SHOTGUN_AMMO1/2_ITEM: pack of normal/wideshot shotgun ammo
- CROSSBOW_AMMO1/2/3_ITEM: pack of normal/poison/explosive
crossbow arrow
- GRENADE_GUN_AMMO1/2/3_ITEM: pack of normal/super/flash
grenade gun grenades
- SIXSHOOTER_AMMO_ITEM: pack of revolver bullets
- BIGMEDI_ITEM: pack that gives maximal health
- SMALLMEDI_ITEM: pack that gives 50 % health
- LASERSIGHT_ITEM: lasersight for crossbow or revolver. It
needs (not placed in the map) TARGET_GRAPHICS that shows the
screen you will see if Lara uses the lasersight and
LARA_CROSSBOW_LASER or LARA_REVOLVER_LASER that contain
Lara’s “hand with crossbow/revolver and the attached
lasersight” mesh
- FLARE_INV_ITEM: pack of flares. It needs (not placed in
the map) FLARE_ANIM that contains Lara’s flare using
animations and Lara’s “hand with flare” mesh and FLARE_ITEM
that means a flare that Lara has dropped and can pick up
again
- BINOCULARS_ITEM: put the binoculars item in the WAD but
don’t place it in the map – it’s in the inventory
automatically when the game starts. It needs (not placed in
the map) BINOCULAR_GRAPHICS that shows the screen you will
see if Lara uses the binoculars and MESHSWAP2, if you want
to fix binoculars bug.
- COMPASS_ITEM: put the compass item in the WAD but don’t
place it in the map – it’s in the inventory automatically
when the game starts
- MAP, SECRET_MAP: not used
- DIARY_ITEM: not used (don’t even use this if you use Diary
Script command)
Some objects have a name in the game but don’t have one in
Script. These objects must be named only in Strings, using
always the same entries for them.
For example the name of SMALLMEDI_ITEM in inventory of the
game is Small Medipack, because the value of #74 [Strings]
entry is Small Medipack. If you want to see another name in
the game, then change and update that #74.
(Use the same method when you want to change the name of
“USE” inventory command under the small medipack.)
j, Pickable keys and puzzles:
- KEY_ITEM1-12: Lara can pick up a key to use it in its
hole, KEY_HOLE1-12. There are KEY_ITEM_COMBO1-8 slots
without TRLR/TRLE objects in them. But if you place an item
in ITEMX_COMBO1 slot and another one in ITEMX_COMBO2 slot
then you can combine them in the game into ITEMX
- PUZZLE_ITEM1-12: Lara can pick up a puzzle (functionally,
it’s a key, but its look isn’t key-like) to use it in its
hole, PUZZLE_HOLE1-12. There are PUZZLE_ITEM_COMBO1-8 slots,
some of them without TRLR/TRLE objects in them. You can
combine ITEMX_COMBO1 slot and ITEMX_COMBO2 slot in the game
into ITEMX. You have to place PUZZLE_DONE objects in the
WAD, but don’t in the map: these objects show the hole when
the puzzle has been set there yet
Use the proper Script command to give the name to the
key/puzzle/combo that it will show in the inventory in the
game.
k, Other pickable objects:
- PICKUP_ITEM1-4: items that Lara pick up to carry them in
inventory. (There are some NGLE triggers to make these
objects more useful.) – There are PICKUP_ITEM_COMBO slots
without TRLR/TRLE objects in them. But if you place an item
in ITEMX_COMBO1 slot and another one in ITEMX_COMBO2 slot
then you can combine them in the game into ITEMX
If you use the bag of sand (PICKUP_ITEM1) for the element
puzzle (see its tutorial) then you need (not placed in the
map) LARA_DIRT_MESH that contains Lara’s “hand with bag”
mesh.
If you use the jerrycan (PICKUP_ITEM2) for the element
puzzle (see its tutorial) then you need (not placed in the
map) LARA_PETROL_MESH that contains Lara’s “hand with
jerrycan” mesh.
- EXAMINE1-3: items that Lara pick up to examine them from
inventory. As for EXAMINE1, only the object texture shows
the information. But as for EXAMINE2, [Strings] #201 and 202
contains the text that will be printed on the screen. The
[Strings] entry for EXAMINE3 is #203
- QUEST_ITEM1-6: actually, these are pickup items, but had a
special task in TRLR
- WATERSKIN: Lara can pick up a small waterskin
(WATERSKIN1_EMPTY), for 3 liters and a big waterskin
(WATERSKIN2_EMPTY), for 5 liters. WATERSKIN1_1, 2, 3 and
WATERSKIN2_1, 2, 3, 4, 5 objects should be placed in the WAD
but not in the map: these objects are to indicate the actual
amount of water in the waterskin. It needs (not placed in
the map) LARA_WATER_MESH that contains Lara’s “hand with
waterskin” mesh
- CROWBAR_ITEM: crowbar. It needs (not placed in the map)
CROWBAR_ANIM that contains Lara’s “hand with crowbar” mesh
- BURNING_TORCH_ITEM: a torch that can be ignited. It needs
(not placed in the map) TORCH_ANIM that contains some of
Lara’s torch using animations and Lara’s “hand with torch”
mesh
- CLOCKWORK_BEETLE: a mechanical scarab that can be combined
from COMBO1 and COMBO2 object.
See its use in Cleopatra’s Palaces level: you have to send
the scarab – maximum three times – on tracks (once per each
track). Tracks are indicated by MAPPER objects. - Don’t
forget to place a frame under the square of a MAPPER,
clicking on B button of Room Editor.
Except pickups, pickup combos and examines, there aren’t
commands for these items to name them in Script.
l, Other inventory items:
- MEMCARD_LOAD_INV_ITEM: don’t place it in the map. It
indicates the point in the inventory where you can load your
savegame
- MEMCARD_SAVE_INV_ITEM: don’t place it in the map. It
indicates the point in the inventory where you can save your
savegame
- PC_LOAD_INV_ITEM, PC_SAVE_INV_ITEM: not used
m, Switches:
- SWITCH_TYPE1-6: lever on the wall, button etc.
- SWITCH_TYPE7: actually, it could be anything. If Lara
shoots the mesh with the highest ID then the mesh will
shatter, activating the SWITCH trigger
- SWITCH_TYPE8: actually, it could be anything. If Lara
shoots the mesh with the highest ID then it will activate
the SWITCH trigger
- UNDERWATER_SWITCH1: lever on the wall, in the water (you
won’t find any object like this in TRLR/TRLE WADs)
- UNDERWATER_SWITCH2: lever on the ceiling, in the water
- COG_SWITCH: a vertical wheel that Lara must rotate,
grabbing the handles on the wheel
- JUMP_SWITCH: a small lever on the wall. Lara jumps towards
it, gets it, and pulls it down by her weight
- CROWBAR_SWITCH: Lara places the crowbar in it and uses it
as a lever
- PULLEY: a vertical cord that Lara pulls down (you need a
Static object for the illusion of the cord: see settomb.prj)
- TURN_SWITCH: a pedestal-like switch that Lara will turn
around its vertical axis (having a special setup)
- SEQUENCE_SWITCH1, 2, 3: big buttons in a special setup
with SEQUENCE_DOOR1 objects
n, Doors:
- TRAPDOOR1, 2, 3: trapdoors that can be opened/closed by
triggers
- FLOOR_TRAPDOOR1, 2: trapdoor on the floor level. Lara can
open them, manually
- CEILING_TRAPDOOR1, 2: trapdoor on the ceiling level. Lara
can open them, manually
- SCALING_TRAPDOOR: not used
- DOOR_TYPE1-8: many types of doors that can be
opened/closed by triggers. (You can also use doors to be
open by crowbar here.)
- PUSHPULL_DOOR1, 2: doors that need frame. Lara can open
them, manually (grabbing the doorknob)
- KICK_DOOR1, 2: doors that need frame. Lara can open them,
manually (grabbing the doorknob or kicking them)
- UNDERWATER_DOOR: doors in the water. Lara can open them,
manually
- DOUBLE_DOORS: it’s one object with two door wings. Lara
can open them, manually
- SETH_DOOR: not used
o, Effects and other nullmeshes:
- SMOKE_EMITTER_WHITE: nullmesh. Emitting white smoke when
triggered
- SMOKE_EMITTER_BLACK: (actually, it’s the same as
SMOKE_EMITTER_WHITE)
- STEAM_EMITTER: nullmesh. Emitting steam when triggered or
bubbles in the water. Behavior can be modified by OCBs
- EARTHQUAKE: nullmesh. Place it anywhere. It simulates
earthquake (“shaking level”) when triggered
- WATERFALLMIST: nullmesh. It simulates the mist when the
waterfall hits the pool below
- RED_LIGHT: doesn’t have any object in TRLR/TRLE. Copy any
nullmesh here and it will emit red light, when triggered
- GREEN_LIGHT: doesn’t have any object in TRLR/TRLE. Copy
any nullmesh here and it will emit green light, when
triggered
- BLUE_LIGHT: doesn’t have any object in TRLR/TRLE. Copy any
nullmesh here and it will emit blue light, when triggered
- AMBER_LIGHT: nullmesh. Emitting pulsing amber (?) light
when triggered
- WHITE_LIGHT: doesn’t have any object in TRLR/TRLE. Copy
any nullmesh here and it will simulate vibrating neon light
when triggered
- BLINKING_LIGHT: doesn’t have any object in TRLR/TRLE. Copy
any nullmesh here and it will emit blinking light when
triggered. (Use Empty button of WADMerger on it.)
- LENS_FLARE: nullmesh. It simulates “the Sun shines on the
lens of the camera” effect
- LARA_START_POS: nullmesh. When Lara’s back into a level,
then she will continue the level from here and not the
position of LARA object, if you use this object. I mean,
it’s the original purpose of the object, but in NGLE, it can
have more tasks – for example, you can transport an enemy in
a level from its actual position to a LARA_START_POS
- KILL_ALL_TRIGGERS: nullmesh. Doesn’t seem to be usable
- TRIGGER_TRIGGERER: nullmesh. Place it on a square that is
marked by clicking on T button of Room Editor, making it
framed with a blue line. The trigger of this square can’t be
activated until you trigger this TRIGGER_TRIGGERER
- CAMERA_TARGET: nullmesh. Attach a trigger to it, with
subject TARGET. If Lara activates the trigger then she’ll
look where the object is. If the activation happens with
overlapped by a camera trigger then the target of a camera
will be this object
- WATERFALL1, 2, 3: simulates “streaming things”: water,
sand etc.
- PLANET_EFFECT: a special effect. See more
here
p, Artificial intelligence (nullmeshes):
- AI_GUARD: place it on the square of a creature. If the
creature is triggered, it will turn its head, but won’t
move, and won’t notice Lara until she’s bothering
- AI_AMBUSH: place it on the square of a creature and place
another one somewhere else. If the creature has been
triggered, it will run to the other AMBUSH
- AI_PATROL1, 2: place an AI_PATROL1 on the square of a
creature and place another one somewhere else, and an
AI_PATROL2 somewhere else. If the creature has been
triggered, it will run to the other PATROL1 then PATROL2.
After that, it will move back and forth between PATROL2 and
the second PATROL1
- AI_MODIFY: use it instead of or with an AI_GUARD. In this
case the creature has a smaller chance to notice the
bothering Lara (because of fewer or nothing head turnings).
(Sometimes you must have one on a square of a SAS, because
of technical reasons.)
- AI_FOLLOW: indicates the track of some moving object. See
more in the guide’s setup, for example
- AI_X1 and X2: see more about them in the official TRLE
manual (they’re doing some special in the behavior of SAS).
And X1 can also be used in train levels
q, ANIMATING objects:
- ANIMATING1-16: a very simple Moveable object. Sometimes
it’s only a still decoration but sometimes it will do its
own animation, when triggered, without any intelligence
r, Other Moveable objects:
- SCALES: scales with special setup
- PUSHABLE_OBJECT1-5: Lara can push or pull them
- ELEMENT_PUZZLE: a puzzle with a special setup
- SMASH_OBJECT1-8: don’t have any object in TRLR/TRLE. Copy
any Moveable object here and it will work as a SHATTER
object that you can shatter only with exploding ammo now
- HORIZON: horizon of the level (don’t place it in the map)
– use “Horizon= ENABLED” command in Script with it. (You
won’t see sky in the level without HORIZON in the WAD.)
s, Special Moveable objects:
- LARA_SPEECH_HEADX, ACTORX_SPEECH_HEADX: changeable head
for Lara and for (only?) Von Croy
- GAME_PIECE1, 2, 3, ENEMY_PIECE, WHEEL_OF_FORTUNE: objects
for the game of Senet
- MAPPER: a special machine (actually, works like an
ANIMATING) from TRLR level “Guardian of Semerkhet” (so it’s
not equal with MAPPER of the mechanical scarab)
- SARCOPHAGUS_CUT: a Seth statue on a sarcophagus lid.
Actually, use it as an ANIMATING, its special properties are
used in a cutscene, in TRLR level “Burial Chambers”
- HORUS_STATUE: a Horus statue. Actually, use it as an
ANIMATING, its special properties are used in a cutscene, in
TRLR levels “Temple Of Horus”
- GOD_HEAD: use it as an ANIMATING, animating it. It
produces a short “showing Semerkhet’s (?) head” animation.
(Used in TRLR level “Tomb Of Semerkhet”.)
- STATUE_PLINTH: actually, it’s a special hole (pedestal)
for a PUZZLE_ITEM. (Used in TRLR levels “Temple Of Horus”.)
- SPRINKLER: use this sprinkler as an ANIMATING, animating
it, to sprinkle some water. (Used in TRLR level “Chambers Of
Tulun”.)
t, Static objects:
- PLANT0-9, FURNITURE0-9, ROCK0-9, ARCHITECTURE0-9,
DEBRIS0-9: different names with the same properties. These
objects are still decoration.
- SHATTER0-9: objects that will shatter having been hit by a
bullet, a sword etc.
u, Objects for sprites (don’t place them in the map):
- SKY_GRAPHICS: a bit mysterious object. It seems it has
nothing to do with the sky (or maybe anything) at all
- DEFAULT_SPRITES: it contains the looks of many important
things: the rope of ROPE object, the smoke of a gun after
shooting etc.
- MISC_SPRITES: not used in TRLR/TRLE (but in NGLE it will
have a task, see: “Elevators and Detectors” demo project)
Notes:
1. If you don’t know in which WAD to find an object for an
object slot, see
this tutorial.
2. If you can’t identify by its look what a given object is,
then see the project file of its level in Room Editor to
examine the original use of the object.
If you don’t have a project for a TRLR level, then rip it
from its level, using TR2Prj program (on Skribblerz\Tools).
3. NGLE can give some original TRLE object slots new setups.
(See for example QUEST_ITEM1 in “Elevators and Detectors”
demo project.)
7. Open Rename list in WADMerger, seeing
Moveable objects. Some object slots are marked there as NG.
These slots are made by Paolone (creator of TRNG) and used
for some new types of objects:
- objects used in TR games with not TRLR engine (hydra of
TR5, rubber boat of TR3 etc.)
- new objects (PANEL objects to create special collision
etc.)
See more about them in the
demo projects by Paolone.
EXTRA00-99 slots are new Static slots, made by Paolone.
If there are no empty Static slots for your Static object,
then rename one of them into a slot named EXTRA (starting it
with the EXTRA having the lowest free ID). After that, you
can use the original name of the renamed slot to put another
Static object there.
8. If you want to use fan-made objects in
your level then you can find many smaller or bigger fan-made
WAD files on the net (not using them for a level but only
using them as an object source) that are TRLR-compatible. I
recommend Objects page on Skribblerz or TRSearch.
9. You can find many WADs
here that are used by not TRLR but other official Tomb
Raider games. You can use any Static object of these WADs in
any Static slot of your WAD, but be careful with the
Moveable objects of these WADs:
Let’s see an example: you can find a tiger object in a TR3
WAD. But there are no tiger object slot in TRLR WADs. What
should you do? – Well, maybe the best you can do is to find
a fan-made tiger on the net that is on a strange TRLR slot
(for example, DOG) in a TRLR compatible WAD, but tested to
work properly on it.
(The objects of non-TRLR engined WADs can appear in bad TRLR
slots in WADMerger. So ignore those slots and try to
identify the object – or see item #10 just below.)
10. You can rip objects by WADMerger from
directly not only TRLR level files but the level files of
other old-generation Tomb Raider games (PHD, TR2, TRC
files). Maybe this operation is necessary: for example, if
you want to use a TR3 object in your WAD (a so-called v130
WAD), with its original (i.e. TR3 and not TR4) sound slots.
(See
this tutorial.)
These ripped objects appear not in TRLR slots in WADMerger
but using the slots of their own games (or what). It makes
the identification of the object easier.
11. Don’t forget to place the sound files -
that the level will use - in sound\Samples folder. (Now or
any time during editing the level.)
But, if there’s a sound file in that folder it doesn’t mean
automatically that file is usable in your level. To make a
sound to be usable there, it’s necessary to put an object -
that uses that sound - into the WAD or to add the sound to
the WAD without putting an object into it.
You can do the “non-object method” with these tools: the
original TRLE tool (pcwadsfx), the Sound Manager function of
WADMerger or (see Skribblerz, Tools page) Screamer. (So with
these tools you can also update SAM and SFX files. It means
SAM and SFX can contain sound files that are not attached to
any object.)
12. You can find StrPix program on Tools
page of Skribblerz. With this program you can edit the
texture of the objects. (If you want to edit a v130 WAD with
StrPix then don’t forget to use StrPix3_v130.exe – see Tools
folder, created by NGLE installation - instead of the
original StrPix3.exe.)
13. You can find Metasequoia and Meta2tr
programs on Tools page of Skribblerz. With these programs
you can make your own objects (for example, your own tiger)
or re-edit other objects.
(Anyway, Meta2tr can do more things than editing a single
object. It is worth trying.)
14. You can edit the sprites of the WAD with
Sprite Editor tool of NG Center\Tools.
There are some ways in Script to customize fonts. But some
properties of the fonts are handled as sprites of the
FONT_GRAPHICS object. You can edit these sprites by NG
Center\NG Font Editor.
15. There are some more methods (I’m talking
about NGLE and WADMerger now first of all) to edit or
customize your objects. – See for example Switch Manager or
Animation Editor tools of WADMerger or some Script entries
or triggers of NGLE.
Some tools for editing objects in NG Center\Tools2: Fast 3D
or Texturize DXF File.
16. You can create an “encyclopedia” of your
objects if you use Object Manager tool in NG Center\Tools2.
(In this case you will need TRViewer program, but change its
original EXE with the one in Tools folder.)
17. Give a new (any kind of) name to a slot,
if you want:
Open “Select Object” panel of Room Editor (for example,
clicking on object slot window in object panel), select the
slot, then click Rename button.
(The new name is valid only in Room Editor and grcastle.txt
file. – So, grcastle.was always shows the original name when
you open it directly or in WADMerger.)
Making Your Own TGA
1. Maybe you want to create grcastle.tga as
a brand new set of texture tiles or maybe you want to
re-edit grcastle.tga (now or any time during editing the
level) that exists.
If you want to do them then do this:
Load the source TGA into the left window of TBuilder. Click
with the square-shaped cursor on a tile here to select it
then go to the right window, and click, to put the selected
tile here, i.e. to the tiles of grcastle.tga. – Check
TBuilder to also understand the other, easy features of
editing TGA files with it.
2. When you have your TGA attached to your
level and you refresh its contents in TBuilder then you also
have to refresh it in your projects after that, with one of
these methods:
- You attach the TGA again.
- You load the project.
You can have problems if you overdraw a tile in the TGA, if
that tile is just placed/referred in the project/script of
your level. (The description of the problem is similar to
the similar problem of refreshing a WAD. – See above.)
3. TRLE gave us other TGA files to get tiles
from them: see Extra Textures folder.
4. Feel free to use the TGA texture set of
any other Tomb Raider games as tile source.
(If you want, you can load old-generation Tomb Raider level
files into TBuilder to rip their texture tiles from them.)
5. If you want, feel free to make your own
tiles to your own TGA, of course.
Naturally, you can use any picture (or some part of it) to
put it as a tile (directly or edited before that) into your
TGA.
6. Load your project into Room Editor, and
see the texture panel. The texture tiles are arranged into
four columns there. If you click one of the tiles then a red
square-shaped cursor will appear around it.
Click on Big Texture button of Room Editor, making it
yellow. It means you switched on the big texture function:
if you click on a tile now then the red square-shaped cursor
will appear around it, the tile next to it and the two tiles
above/below them. One tile is 64×64 pixel sized so this
“multi-tile” of the four tiles is 128×128 pixel sized. –
Click in the map to place that 128×128 picture there instead
of a 64×64 picture now.
But this method is not perfect. It would be perfect if we
could say “tile” when we see a 128×128 picture. (There are
some reasons to say that. See one of them: just think about
it - you need to place whole tiles into each animation
range. So you can’t place a 128×128 multi-tile into any
range, only if it’s a 128×128 tile.)
If a project uses 64×64 tiles then we call this project
“v49”.
If a project uses 128×128 tiles then we call this project
“v50”.
(Check if your project is v49 or v50: see it on the title
bar of Room Editor.)
If you want to build your TGA using 128×128 tiles and not
64×64 tiles in TBuilder, then you can find many 128×128
tiles on Textures page of Skribblerz.
(You can find the tiles of all the original Tomb Raider
games here and the tiles of some fan-made games. The
original tiles of older Tomb Raider games are 64×64
originally but converted into 128×128.)
If you want to use a TGA file with 128×128 tiles in your
project then you must convert your project (with the TGA
attached to it before) from v49 into v50.
You can find the tool of the conversion in Tools folder:
MapConverter2.exe (not MapConverter.exe). (Don’t forget to
check “Modify ONLY…” option before the conversion.)
After the conversion:
- Big Texture button becomes red “forever”, indicating: “you
can’t switch me off any more”.
- Feel free to go on editing TGA, if you want.
See the basic tutorial of NGLE to read more about “big”
texture tiles.
Arranging Other Files
1. If you want to use sky for your level,
then you need not only a HORIZON in the WAD. You also need a
RAW file in wads folder to show the pattern of the sky and a
Layer1 command in Script to adjust the exact color of the
sky.
Now you can find more RAW files in wads folder. They belong
to the WAD with the same name. – So, for example, city.raw
belongs to city.wad. (Pcsky.raw is a special RAW,
automatically used for a level with HORIZON and Layer1 but
without its own RAW.)
Copy a RAW then paste it with a new name. This new name is
grcastle.raw now, of course. (You can adjust Layer1 later.)
Notes:
1. This sky thing could be specific if you use a special
(TR3 type) HORIZON object – see
here.
(In this case the sky is drawn on the top of HORIZON so you
don’t need RAW and Layer1.)
2. Not only pcsky.raw is the only specific file in wads
folder: font.pc defines the default font type for all the
levels. (Don’t waste your time with creating a new font.pc.
If you want new font properties for your level then – see
above – use FONT_GRAPHICS and/or some Script commands.)
3. You can see many LAR files in wads folder, with the same
names as the WADs have there.
No, it doesn’t mean you need a grcastle.lar file. LAR files
were used for Lara’s animations, but they don’t have tasks
now. I.e. you can find Lara’s animations in WADs now.
2. If you’ve done with the tutorial project
then you know that you can play audio files - some of them
only background “music” (noise) and the other ones are the
“foreground” music (the “real” music) - of audio folder with
WAV extension and 000-111 IDs, if you use a trigger named
CD.
With NGLE you can use more IDs (000-255) that are not only
WAVs and each ID can be used either as background or as
foreground (see more: NG Center\Reference\Mnemonic
Constants\CUST_NEW_SOUND_ENGINE), using not CD triggers but
“Sound. (CD)” FLIPEFFECT triggers. – Read NG
Center\Reference\New Commands\ImportFile to use special
files as audio\sound.
So, in NGLE you can use 256 audio slots in audio folder (and
more with ImportFile) to create your own audio set for your
game. - Feel free to overwrite the original audio files in
the folder.
If you still don’t know what the mood of the level etc. will
be then you can define your audio files later.
Notes:
1. Use cm.exe or start_me.exe in Tools folder if you want to
convert your MP3 files into WAVs.
2. When “Output WAD” operation happens then a file with CD
extension will be created - or, if it exists: will be
updated - in wads folder, with the same name as the WAD has.
Open this file as if it was a TXT file.
This CD file shows some info of CD triggers that are just
placed in the map. – So the file won’t show anything about
“Sound. (CD)” triggers.
3. Maybe you want to use a feature that
needs files to be attached. (See for example Image Script
command.)
In this case place the required files in the required
folders.
If you still don’t know what these files are (or what “with
attached files” feature you will use) then you can place
those files later.
If you place some of the files mentioned in the tutorial in
their folders (for example, if you’re creating a new
font.pc) then you need to do a “making a playable version of
the level” operation to add/refresh that file de facto to/in
your level/game.
Title Features
Actually, the title sequence of the game is a level: you
have a title.prj project file you can edit and convert into
TR4 file. – But you have to know some special things when
you edit title.prj. I.e. there are some editing steps that
belong to title and some other editing steps are not the
same in title and the “real” projects.
However, when I say you can create your own, new level it
also means you can create a new title, instead of the old
one.
But this tutorial is not about making title.
In spite of that, now I’d like to mention some features that
belong to title:
1. To define the name of your game, you have
to draw your own Tomb Raider logo that will appear in title
of the game:
1. Create your logo in Logo folder. (Or get one – for
example, from TRSearch - to customize it.)
This logo is a BMP (named uklogo.bmp) with 512×256 pixel.
(Don’t forget: black color of the picture will be
transparent in the game.)
2. Open the picture with a simple program that can care
about RAW files. (For example with BmpToRaw.)
3. Use the program to overwrite uklogo.raw in Logo folder.
4. Run logo.bat in Logo folder to overwrite logo.pak in data
folder.
5. Start the game to admire your new logo.
2. You can find LoadCamera command not only
in [Level] blocks but also in [Title] block of Script.
The value of LoadCamera in [Title] block defines the still
picture you will see when the game leaves title sequence.
To redefine that value:
1. Copy the whole [Title] block to anywhere the [Level]
blocks, naming this copied block [Level] instead of [Title].
2. Give a Name command to this new [Level] block. - There is
a “Title Load Screen” entry in [Strings]. It seems obvious
as a name now.
3. Save and build the script.
4. Start the game and start Title Load Screen level from New
Game menu.
5. Now you know how to get LoadCamera value for a “real”
level – use the same method now, reading the numbers from
the screen. Then quit the game.
6. Type the numbers to the LoadCamera command of [Title]
block, overwriting the value there.
7. Delete the whole block of Title Load Screen level.
8. Save and build the script.
3. Just after you’ve clicked on tomb4.exe,
you will see a still picture on the screen, just before the
game starts, showing title sequence.
This still picture is 640×480 pixel sized, named load.bmp.
You can find it in the main folder. Swap it for another
picture with the same properties, if you want to see another
picture after clicking on tomb4.exe.