Tomb Raider Forums  

Go Back   Tomb Raider Forums > Tomb Raider Level Editor and Modding > Tomb Raider Level Editor > Tutorials and Resources

Closed Thread
 
Thread Tools
Old 17-05-19, 01:04   #1
Topixtor
Member
 
Topixtor's Avatar
 
Joined: Aug 2012
Posts: 544
Default Dxtre3d - Making the Flying Guardians Actually fly (zoning basics)

Yes, after a stupidly long time I finally managed to make this tutorial! Apologies if it's a mess, but I'm not the best at explaining things and that setup in particular is pretty strange...

Before we start, you need to have some basic knowledge about how the Dxtre3d and rview Zones work; here is everything you need to know in order to make the flying guardians ACTUALLY fly (and attack Lara instead of strolling around the sky ):


1) Dxtre3d zones can be applied with precision on individual sectors; rview automatically "reads" the floor and applies zones in somewhat random portions of the floor around where you clicked, depending on the shape of the room; found no way of doing it precisely, may still cause some problems; you also need to apply them everytime you render the level with Dxtre3d, as rview works with the completed .TR* file and not with the project. On the other hand, rview lets you decide wich type of zone to use, wich for example is particularly useful when using flying (or swimming, coding is the same) enemies since you can apply only the "Fly Zone" instead of all the Dxtre3d package (more on that later);

2)It may be useful to know that, at least in the TR2 engine, zones seem to randomly affect the already bugged sinks (water currents); if you plan to use one, make it work before using any zone in the same room so you can know when it's the zone's fault if it stops working (shouldn't be a problem with the Guardians themeselves since it's as of now impossible to make them fly above water rooms, but still good to know right?);

3) If you want the Guardians, or almost every other enemy, to cross portals between zoned rooms it's mandatory to apply the desired zone ON THE PORTALS THEMSELVES; this doesn't seem to be possible using rview, so the only way of doing that is as follows:

- On Dxtre3d, choose the room you want to zone and set the connected one to neighbor;
- Choose a zone ID in the bottom left corner (of course you must use the same one in all rooms);
- You can now apply zones to one or more sectors by simply selecting them with the right click in the 2D map on the top left corner, and then by clicking on "Put Zone", you should already know that; to apply them into the portals, again make sure the other room is set to neighbor, select the portal sector and AT LEAST ONE SECTOR BEFORE IT and then put the zone as usual; maybe it can work by just selecting the portal, but I'm pretty sure I got problems when trying to do that;
- Repeat this step by swapping the current room with the neighbor one (zone needs to be applied from both ways to the portal);
- Be aware that in bigger rooms selecting a lot of floor can get buggy, leading to not every zone being applied, but you will notice how sectors didn't change color and then you can retry, maybe with smaller pieces at a time.


The inability to put "portal zones" with rview is probably the only remaining problem in order for the guardians to work as intended in every scenario: portal zones don't seem to work with vertical portals, probably because there is no way to apply it from the lowest room to the higher one; also, a Dxtre3d "Zone" is equivalent to placing "Ground zone 1", "Ground zone 2" and "Fly zone" all in one sector with rview; you can remove useless zones with rview, but you can't do it into the portal so if you remove it in the room the portal will not function properly... in other words you always need to adapt zones to the one you used for the portals.


Now, with the basics in mind, let's move into the actual tutorial:

WHAT WORKS
- Guardians can fly "flawlessy" in simple, horizontal sets of rooms, with as many height variations as the engine lets;
- It's possible to make them ascend or descent into higher or lower rooms if they aren't DIRECTLY connected like with holes in the floor (Original Floating Islands is an example, with all the big multi-room vertical spaces); will explain in detail after the basic tutorial.
- Descending from higher rooms anyway worked on my past attempt, but I was unable to replicate it unfortunately, not even via other solutions. Putting empty, scenery only rooms directly above them doesn't affect their behaviour.

WHAT DOESN'T
- They can't fly into a 1 block high space, they are simply too big (not zones related, but knwoledge is knowledge);
- Seems impossible to make them fly into vertical portals AND search for Lara at the same time, consistently; that means making them cross a chasm high enough to kill Lara is very hard or even impossible, so if needed Lara must be killed via other means (spikes, death sectors...);
- Pathing can still be somewhat random, enemy AI si messed up; since they fly so slowly, even a one sector deviation can render them useless; trial and error is needed in such cases.


Making Guardians work in a single room or one series of horizontally connected rooms is pretty straghtforward, but it's A LOT easier to understand by looking at the screens below my messed up explanation:
- Place the Dxtre3d default Zone, everywhere with the same ID, on the whole room or where you want the guardians to be able to go;
- If it's a set of rooms, you also need to connect them with zones as described above;
- Build the level into the .TR2 file;
- Open it with rview, select "Zone Editor" mode (you can close the texture panel, no need for it); zones are applied by left clicking on the desired sectors after choosing the zone and the ID;
- Notice how rview knows sectors are already "zoned", as they change colour; as stated before, Dxtre3d automatically applied "Ground Zone 1 and 2" and "Fly Zone", all with the same ID. In order to make the guardians work, we need to modify some of those zones depending on the sectors; found multiple ways of doing it but since we are limited with how portals are zoned the easiest setup is the one below;
- Fly Zone must remain applied everywhere and always with the same ID;
- Ground Zone 1 and 2 must be treated as one single zone, so they need to have the same ID; different height variations and/or separated sectors need different ID of those zones;
Example shown: room with a pair of 1 block high pillars, a single 2 block high pillar and a 3 block high 2x2 pillar; Fly zone applied everywhere, Ground zone 1&2 with 5 different IDs: one for the whole ground floor, one for each of the 1 block high pillars (Same ID on separated sectors leads the Guardians to believe it's only one connected floor; there are 6 IDs, if you need more you should arrange them so that ledges with the same IDs are far enough to make the Guardian starts flying from one before Lara lands on the other), one for the 2 block high pillar, and just one applied to the big 2x2 pillar, since it's a whole "floor". See image: each different texture means a different Ground Zone ID;
- Save the file, close the program - level should be ready to work!



In one of my projects, I wanted to make Guardians fly above a river; technically, this can't be done. However, I found a partial workaround to make them fly across more complicated room connections and have bigger chasms between ledges; honestly, it's better to see it than to read it, basically you need to connect the rooms as shown here:





This way, before crossing the portal to the ground room, the guardian would need to get lower already from the starting room; he will then have no problems navigating between rooms, as said before only vertical portals give problems, and also he will stay high up while traversing the portal. This can work with rooms connected as "stairs" to form one big chasm, but sooner or later the portal zones limitation will make everything too difficult...

Hope it's not a complete mess... it's really easier to do than to explain, but there are a lot of things to consider.
So, that's it for now. You are free to try other setups, maybe using the other Ground Zone Types, who knows, maybe some day they will really fly like intended!
Topixtor is online now  
Closed Thread

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



All times are GMT. The time now is 20:56.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
Tomb Raider Forums is not owned or operated by CDE Entertainment Ltd.
Lara Croft and Tomb Raider are trademarks of CDE Entertainment Ltd.