HOOK'S 14 part "BEFORE You Start Mapping ... Tips!"

Post all mapping and skinning related content here!
Locked
User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

HOOK'S 14 part "BEFORE You Start Mapping ... Tips!"

Post by Hook » Mon Nov 12, 2007 6:17 pm

Some General Mapping Tips!
(To avoid some pitfalls)
By “Hook” - 10/28/02

#1

Before You Begin:
It’s not a bad idea to have a plan, either in your head, or better yet, a sketched out plan of what you want to create. You may also want to have an idea of what kind of theme or atmosphere your level (map) should convey. What textures you want to use.
Keep in mind that dimensions of areas you are planning on creating should be general dimensions in your plan. When planning, keep in mind that in Unrealed2, you should keep your room sizes & object sizes to multiples of 16 or 8 – (16 being better than 8). Examples would be 128 units x 512 units or 320 units x 160 units. Units being Unrealed2’s “world units”. This is known as “Building to the Grid”. The map will play much better and be far less laggy with less BSP errors, etc., when built to the grid, than a map built using odd sizes such as 290 x 413 or the like. Also, the map will fit together much easier & will be easier in general to build when you keep to the grid. If you are planning your first map, try to keep it on the small size. A large map can get confusing and overwhelming, especially if it has many objects and rooms in it. You can always add to a map or create a large one later when you are more experienced. Large maps are also more trouble to download & upload to and from the web, do to the map file’s size. They are also less desirable for online play if they are high in poly count, etc.

When you start your map:
First off, you should decide whether your map will be an indoor map or an outdoor map or some of each. In UnrealedII the default world is all solid. If your map will be totally indoors, you will be mainly and basically subtracting rooms from the solid world. If you are building an outdoor map, you will first be subtracting out an area (your outside area) to build your solid, additive objects and rooms into. Another aspect to consider is, will there be areas in the map that are alike? Or, can I make an area of the map, then duplicate it and add it on to or connect it to the original portion I duplicated it from? (See the "Duplication tip for making CTF maps" tutorial for more information on Duplicating portions of maps)
A few good things to remember while building a map.
Do NOT add music, sound effects or decorations until you are mainly finished with the map. These add quite a bit to the file size and can be very annoying when you are loading it into the editor, making changes then going back into the game to look at the map and test it and then back to the editor again. The same goes for Bot Pathing. Only bot path when you are really ready to play test the map with bots in it. Rebuilding the map takes quite a bit longer with the bot pathing in. Dynamic lighting also adds greatly to laggy play and file size. Keep dynamic lights and dynamic lighting to a minimum. Dynamic lights are any lights other than Steady lights. This setting is under light properties, light effect. (See your lighting properties tutorial)
When adding light fixture brushes, (actual lights you can see in the game that YOU create), add them as Semi-Solid brushes! This reduces BSP cuts & therefore reduces the Polycount!
BUT - Do NOT Intersect or De-Intersect Semi-Solids with anything!

*You can and should use the solid space between subtracted rooms as a wall.
If you have already made the rooms, you can move objects to create the solid space needed (thickness) between subtracted rooms.

When you are working on your map:
Have 2 or 3 versions in succession saved so you can always go back to an earlier version if something goes horribly wrong. Save version names such as: DM-KillerX, DM-KillerXX then DM-KillerXXX, with XXX being your most recent work. When you go to work on your map, open up XX and save it as X then open up XXX and save it as XX then finally open up XXX to do some more work on it.
Every time you do work on XXX, go and test that version. If it tests out to your liking, save XX to X then save XXX to XX and go back to XXX and do some more work.
This procedure has saved my you-know-what many times when I started going off on an idea with a map I am working on, only to find that it doesn't work.
I could easily go back to an earlier saved version I had saved before I had tried out some new ideas on the map.
Do not do too much at once! Rebuild and Save your map often when working on it!
Add a few objects, then rebuild and save the map. Many times I myself went on adding objects and doing work on a map only to have the editor freeze up and I lost all my latest work. I didn't rebuild and save it often enough.

Resizing objects is a big no-no! - It should only be used as a last resort!
It is much better to adjust the size of an object when you are first creating the object. Not after it has been added to or subtracted from the world. When you resize an object, often the texture that has been applied to it also resizes with it! This can look very bad.
If you want to adjust the texture size (or scale), right click on the texture, go to texture properties, then alignment. You will find a scaling tool there.
Resizing an object can also cause other problems at times if not correctly done.
It also changes the build order of the object that you resize. This can have a chain effect on other objects that may be associated with the resized object.
You can change the build order of an object by right clicking on the object and then go to order. But this is not part of this tutorial.

Duplication tip for making CTF maps. (Mirroring)
By "Hook"
If the team bases are going to be alike, it is best to create 1/2 of the map, or 1 side first!
Put in everything you can for the one side. Make it as complete as possible.
Then, when that one side is as complete as you can get it, Rebuild & Save it as ANOTHER version, in case something goes wrong! Then, in this new version, select that whole side, right click & select Duplicate. You may have to Drag Select to capture all of the area. *(See Drag Selecting below) The new Duplicated area will remain selected. Do Not Un-select it!
Now rotate and place the duplicated side where you will want the opposite team base to be.
Now, Rebuild & Save it again!
If you cannot connect the two sides as is, then add a connecting room between the 2 mirrored sides of the map. It is better to add a connecting room(s) between the two halves! Now, add in anything that you need to complete both sides. Make sure the flag bases are set to their team color, etc. You can also change some of the textures on one of the sides to make that side look different than the other.
This is a good way of doing a mirrored CTF map. It is often very difficult to build both sides at once and so that both sides are even.
Of course this technique can be used to build any map where you want to have duplicated areas or objects. You can hide or disguise these duplications somewhat by making some changes to the duplicate and/or changing the textures to give it a somewhat different look.

*Drag Selecting:
To drag select, hold down the Ctrl & Alt keys while holding down the left mouse button. Drag a box around the area you want to select in one of the 2D windows. You can only do this in the 2D windows!
If you select more than you want to, release the buttons, then hold down the Ctrl key and left click the mouse on the objects you want to un-select. The rest should stay selected.

Look at Existing Maps!
When you are stumped or confused a bit when trying to do something with a map you are building, you can open up an existing map in UnrealEd that has what you want to do in it.
Take a look at it. Open up properties of things that you may want to adjust or add into your map and see how the author did it. This can make it clearer as to how things are done or how the properties of things are set to achieve the effect you want.
A word of warning though! Do NOT Ever do a save on the existing map! Click NO if it asks you to save changes to the map. If you must, resave the existing map under another name and look at it under the new named map to be safe!
ANY time you do a save to a map, it changes the version of that map, even if you did not make any changes at all to the map. Doing this will make that map Incompatible when you want to play that map online! (Version Mis-Match error) Just a warning!

Before you Distribute your map to the public!
When you think that your map is fully finished and ready to release to the public, ALWAYS give it to some fellow UT Mappers and Players First, to Play-test the map for any problems.
This is called Beta Testing the map. Call the test or Beta map something like DM-NameBeta, with Beta after the name of the map. If you send out more than one Beta map, put a number or date after the Beta in the name, such as DM-NameBeta1 or DM-NameBeta6_14. Change that number or date for each Beta version you send out so you and the Beta testers will know the difference between versions. This way, when the Beta Testers are done testing your map, you can distribute the final version to them and the public without getting the Beta version and the Final, public release version mixed up. Make your final revisions to the map, if necessary, then re-save and re-name the map without the Beta after the name for the final version. Then release it to the public.
Beta testers can often find problems with your map that you missed. Beta testers can also give you some good suggestions or alterations to your map that you may not have thought of.

Happy Mapping!
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(2) Screen Shots & Map Preview Screen Shots in UT

Post by Hook » Tue Apr 22, 2008 10:33 pm

Screen Shots & Map Preview Screen Shots in UT. - (Sticky also?) :wink:

Screen Shot in UT:
By "Hook" Morgan - 6/5/02

This is only how to do a screen shot in UT.
Start the UT Game.
Go to Preferences then HUD. Make the HUD invisible.
Make the Weapon Invisible & the Crosshair Invisible.
Set the Graphics to the best you can.
Now go into your Map. Hit the tilde key "~" to bring up the console.
Enter "fly" (no quotes) so you can fly around & hover for good screen shots.
When you find the scene(s) you want, hit the F9 key. This takes the shot.
You will notice the screen change briefly during the shot.
This stores the shot in your UT System folder. They are labeled numerically such as: Shot0001, etc. The shot files as they are, are bmp (bitmap) files. They are very good quality but they are also not the best looking. They are kind of bland.
You will probably want to enhance them a bit in a photo editor such as MS Photo Editor especially the Color Balance!
They are also very large in file size.
From here you can do with them, as you want. Convert them to jpeg, resize, etc.

Screen Shot For Preview in UT Menu:
By Pete "Hook" Morgan - 6/5/02

Start the UT Game.
Go to Preferences, then HUD. Make the HUD invisible.
Make the Weapon Invisible & the Crosshair Invisible.
Set the Graphics to the best you can.
Now go into your Map. Hit the tilde key "~" to bring up the console.
Enter "fly" (Type fly, no quotes, hit Enter) so you can fly around & hover for good screen shots. Close the console.
When you find the scene(s) you want, hit the F9 key. This takes the shot.
You will notice the screen change briefly during the shot.
This stores the shot in your UT System folder.
They are labeled numerically such as: Shot0001.bmp, Shot0002.bmp, etc.
The shot files as they are, are bmp (bitmap) files. They are very good quality but they are also not the best looking. They are kind of bland.
You will probably want to enhance them a bit in a photo editor such as MS Photo Editor by balancing the color a bit. They are also very large in file size.
Also in the photo editor you must resize the screen shot to a more reasonable size to where the finished photo area you want for you preview will fit approximately into the 256 x 256 pixel area in UT for the preview screen shot. Resize down to say 320 x 280. Of course next you will have to crop the screen shot to an exact square of 256 x 256 pixels. Make sure you pick the 256 x 256 area you want for your final preview shot OUT OF the larger screen shot that you just resized more appropriately. You should cut out (crop) a correct square OUT OF the resized original.
(Do NOT Resize your picture to a 256 x 256 pixel square by software. Your screenshot will most likely be distorted.)
Finally, you must convert the new cropped shot to 256 color, 8 bit color depth.
Now save this shot as a 256 color, 8 bit .PCX or .BMP file. Now you are ready to import this shot into UnrealEd! I personally use the .PCX file format. I believe it saves as a more compact file.

Open the map you did the screenshot for in UnrealEd.
Bring up the Texture Browser window. Click the Import button.
A file dialog will pop up. Browse to the location where your preview is stored and select it, then click the OK button. The Import Texture dialog will pop up. In the "Name:" field enter: "screenshot" (no quotes) and in the "Package:" field enter: "MyLevel" (no quotes). UNcheck the "Generate MipMaps" option and then click the OK Button. After UnrealEd works for a moment you should see the "MyLevel" package displayed in the browser with your preview screenshot shown in the browser texture window. Go to Level Properties. (Right click in a bare part of one of the 2D windows) Under Level Properties, there is a field called "Screenshot" (You need to click on your newly created textured screenshot in the Browser window to have the name come up) Click "use" in the properties window. Rebuild and save your map.
When you run the UT game and select your map in the UT Menu, (when starting a practice session or network game), you should see your screenshot displayed just as it does with all of the maps that came with UT. When a Screen Shot (or texture, see adding custom textures tutorial) is imported to the MyLevel package, you do NOT need to include the screen shot or texture file with the Map in the final zip file to be distributed to the public.

Note: I believe that any/all support files (music, sounds, etc.) can be added into the “MyLevel” package, just as you can with the ScreenShot and Texture files as mentioned above!
I just have never tried it with any other than the ScreenShots & Texture files.

There you have it!
Let me know if you have any questions!
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(3) Adjusting Texture Panning Speeds in UnrealEd

Post by Hook » Tue Apr 22, 2008 10:36 pm

Adjusting Texture Panning Speeds in UnrealEd
By "Hook" Morgan - 6/5/02

This is another adjustment that eludes many mappers.
Like in "Hyperblast", how do you make the stars Pan fast?
Most mappers know how to make textures pan (move), but not how to adjust the speed.
It appears that the stars pan faster then the default pan speed in Hyperblast, and they do!
Can you adjust the panning speed? Yes you can!
First of all, you need a ZoneInfo in that particular zone that you have your panning texture in. After you add the ZoneInfo to that zone, right-click on it and open the ZoneInfo's properties.
Under ZoneLight set the TexUPan or TexVPan speed depending on which way your texture is panning & which direction you want the pan speed to change. UPan is horizontal and VPan is vertical.
You can go into an Existing map (such as Hyperblast) to compare the default speed settings of a ZoneInfo. Add a new ZoneInfo to this existing map right next to the original ZoneInfo. Open the ZoneInfo properties of both and alternate between the two. This way you can get an idea of how much the number settings affect the pan speed. Of course do NOT save the map when you do the comparing!
If I remember, the speed setting in Hyperblast is 1.5 for TexUPan, or 1.5 times the default speed.
If the texture you want to adjust the pan speed of is in the SkyBox, the SkyBoxInfo is the ZoneInfo you would adjust the TexUPan or TexVPan speed in, in its properties.
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(4) Making Windows & Glass in Unreal Tournament Maps

Post by Hook » Tue Apr 22, 2008 10:37 pm

Making Windows & Glass in Unreal Tournament Maps:
By "Hook" Morgan - 6/5/02

You want to put Glass into a window opening? Well here goes!
There are a few ways to make glass. I will briefly tell how to do it one way that uses more objects. I will also explain how to do it an easier way! I will do the easy way first.
For this tutorial we will use a window opening size of 128 x 128 with the window opening width, or the sill, 32 units. We will assume that this window opening has already been made, or subtracted out of a wall that is 32 units thick.
The Easy Way:
You need to pick a Glass texture that suits your purpose.
Open the Texture Browser. Load in a package that has a good glass texture in it.
One package I use that has good glass in it is CoretFX.
Click to highlight the one you like. Leave it highlighted. Now to make the sheet of glass, select the cube brush and make it 128 x 128 x 1. Yes! ONE unit thick. Now position your red brush in the center of the window opening at about the 16 unit point of the 32 unit wall thickness. You may have to change the grid setting to a smaller snap grid increment to position the glass object's red brush where you want it. The red brush should just butt the edges of the window opening on all sides, especially if this window is going to be between two zones. If it doesn't have to separate two zones, it doesn't have to be "airtight". You can also make this glass object slightly larger than the window opening, then de-intersect it to bring it to exactly the right size of the window opening. Now Add the glass object to the world. The glass object will appear. At this point the glass will not be see through, and the textures may not line up the way you would like them to. Right click on the glass to select the texture. Now hit the keys Ctrl B. Ctrl B selects all the textures at once on an object. With all the textures on the glass object selected, right click on the glass texture on the object to bring up the surface properties. Select Semi Transparent. Now go to the next tab of the texture or surface properties and do your aligning of the textures by panning the textures horizontally and/or vertically to achieve the best look of the glass texture.
Rebuild and Save the map. Go and try it out to see what it looks like in the game!
You can also try other surface property settings such as unlit, masked or transparent, etc., to see if there are better looking settings!
The Less Easy Way:
Now I will very briefly outline another way. This is the way I did the windows between the moat & the lower front turrets in DM-FragginsteinCastle. These are the ones that look like aquariums from the inside of the turrets.
Basically, these windows were made using a sheet object, set to the glass prefab setting, with a glass texture on it. Then I added Invisible Collision Hulls (another prefab setting) about 1 or 2 units away from the sheet, on both sides of the sheet. These invisible collision hulls must be slightly smaller than the window opening size. If the window opening is 128 x 128, then the invisible collision hulls would be made at say 126 x 126 x 1 units. These collision hulls must NOT touch anything else! They cause some big problems if they do touch other objects! The sheet between the hulls will create a zone barrier and will stop the water from coming through if they are butting on all sides, but they will NOT stop players or creatures from going through the glass (sheet). The invisible collision hulls are there to stop players and creatures from going through the glass (sheet).
Note: Sheets will not block actors, (gunfire, players, bots, etc.), no matter how you set them. If you want to block actors, you must add Invisible Collision Hulls. To do that, select the cube brush and make it 126 x 126 x 1. Yes! ONE unit thick. Place the new cube brush in front of the sheet, but not touching it or the sides. Note: Make the collision hull smaller than the opening because if it touches the wall or anything else we will get a HOM or Hall-Of-Mirrors effect there.
Now, under Add Special, choose Invisible Collusion Hull from the menu and add the brush. It should be invisible in the 3d view. If you click the little joystick icon it will appear.
The only problem with using collision hulls is that it adds extra steps. If you made the glass out of the 1 unit thick brush as I explained in the first part, you would get the same results with less objects and trouble.

Hope this helps! Any questions just let me know.
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(5) Basic SkyBoxes for UT Maps

Post by Hook » Tue Apr 22, 2008 10:39 pm

Basic SkyBoxes for UT Maps
By "Hook" Morgan - 6/5/02

I have had a number of mappers tell me that they just do not understand how to make and/or how to get a skybox to work. The following tutorial will give you the basics on skyboxes so you will know how to build on what you learn here to create more complex skyboxes. I will give some pointers of course but I do not want to clutter your mind with extra info that may only confuse you & cloud the basics you need to build a working skybox. You can then use this basic knowledge to go on and be creative with your skyboxes.
This tutorial should give you a good idea of how a skybox works!
Just remember that the skybox is separate from the actual playable map area!
Basically, the skybox is a "stage" and the skyboxinfo actor is a "camera" that displays what it sees in the skybox to your map area, on any and all textured surfaces that are set as a fake backdrop.
The textured surfaces that are set as fake backdrops are the "TV screens" that show what the skyboxinfo camera sees, so to speak!
The following will show you how to make a very basic skyboxed UT map:
For this tutorial, your map will be a one room playing area and I will refer to this area as your map.
So start a new map consisting of one room. Make the room size 512 wide x 800 long by 640 high.
The size is not critical. Subtract it from the world using any texture you want. Put a light or 2 in this room and also a playerstart or 2 in it. Rebuild and Save the map as any name you want, say as DM-Skyboxdemo.
Now, outside this room, we will make the skybox. Make this skybox room size 256 wide x 400 long by 320 high. Subtract it from the word using any texture you want. This is about 1/2 the size of the map room, but again, the size is not real important, at least for this tutorial. In this room add a skyboxinfo actor right in the middle of the skybox or at the center. You may have to move the skyboxinfo to get it in the center. Add a light to this skybox room. Now, change all the textures in this skybox room to some kind of starry night texture, if you didn't already use a starry night texture when you made the room. Rebuild and Save the map again. At this point, go into the UT game & play this map just to see what it looks like. It should look just like the map room you just made. Now go back into UnrealEd and open this map again. Now select all of the textures (walls) in the map room OTHER than the floor side. Leave the floor as is for now. Right click to bring up the surface properties of the selected walls. Check the Fake Backdrop check box. Rebuild & Save the map again.
Again, go into the UT game & play this map to see what it looks like. You should be standing on a flat textured floor with a starry night sky on all sides except the floor. Cool isn't it!
You can now go back and try making the skybox textures "unlit" to see if it looks better in the game. You can add planets, big stars & moons or boulders that look like asteroids inside the skybox if you wish. Try what you imagine and see what you can come up with!

Try the following to get a CTF-Face type of look!
Add a block floating in the center of the map room big enough to play on, and not touching the floor. Move the playerstart(s) onto the topside of this block. Then make the bottom side of the map room (the old floor) set as a Fake Backdrop like the other sides of the map room. Rebuild and save the map. When you play the map now, you will be standing on a block floating in space. When you go to the edge of the block you are standing on, you can look down and see stars all around and under the block also. Careful, you can fall off the block now!

To Make the Sky Rotate as in CTF-Face:
I am assuming at this point that you have a nice working skybox built with possibly a starry night sky type of texture. Now you may want to make your map look as though it is floating in space with the sky rotating like in CTF-Face. Many mappers believe that you will have to make the SkyBox rotate some how like making it a mover or making the wall textures of the SkyBox pan. Although you can do things like I just mentioned for certain special effects, it is NOT the way to create a rotating sky effect! The SkyZoneInfo actor is the key to this effect! To do this, you will have to make a few adjustments to the SkyZoneInfo Properties. In UnrealEd there are three axis settings that we use to determine an object's location. They are X, Y & Z. You can see what these are by looking at the 2D view window's properties and seeing that X is the top right window, and Y is the bottom right window. Z is the upper left window, the top view, because Z is up and down. A SkyZoneInfo can be made to rotate on these axes, but the direction it rotates is determined using Pitch, Roll and Yaw. If you do not understand these concepts, you can think of it in these ways:
* Pitch = up/down (like a wheel rolling forward or backward)
* Roll = left/right (like a steering wheel rolling from side to side)
* Yaw = left/right on Z axis (like a revolving door)

At this point, open up the SkyZoneInfo Properties by right clicking on the SkyZoneInfo actor in your skybox. Now pick SkyZoneInfo Properties. When the SkyZoneInfo Properties opens, go down near the bottom. Expand Movement, then expand RotationRate. Do not concern yourself with Rotation! Rotation is for positioning of the skyboxinfo and does not have anything to do with the moving rotation effect we are talking about! There are three fields here under the heading RotationRate. They are Pitch, Roll and Yaw. This is where you tell the engine how fast and which direction you want the SkyZoneInfo to rotate in. You may have to experiment with the settings to these three as to which one(s) you want to set and how fast. The default for these three is 0, (zero), or no rotation at all. For now, pick a speed about 700 and see how you like that. Try this speed setting with each of the three Pitch, Roll and Yaw settings. Just put 700 under each one separately, one at a time, to see what effect and in which direction it makes your sky rotate. Check each one, one at a time in the game. Make a note of the effect for each of the Pitch, Roll and Yaw settings so you can go back and set them to your liking after you test them. I believe that setting these numbers to a negative number such as "-700" will make them move in the opposite direction as a positive number, but I have not tried this! Setting them to negative numbers is not really necessary anyway.
You can set all three of the Pitch, Roll and Yaw settings differently. This is how CTF-Face and my map CTF-LuXor are set. You can try different speeds in each of the three places or even in just two of the places. Be careful that you do not set these to a setting that would make the players get dizzy or annoyed by the rotation! This can be very annoying if set wrong!

PS: Using a RockingSkyZoneInfo MAY be a better way to achieve the rotating sky effect, however I have yet to try this as of the last update of this tutorial. I will try it very soon and update this tutorial again with my findings! I also have to check whether you have to change another setting. This is the bRotating setting. You MAY have to set this to True in order for the rotating effect to take effect, but off hand I can't recall if I did.

Well, that is it for this basic skybox tutorial. Have fun and be creative!
Hope this helps!
Any questions just let me know.
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(6) UT Map Portal Warp Zones

Post by Hook » Tue Apr 22, 2008 10:41 pm

UT Map Portal Warp Zones:
By "Hook" Morgan - 7/12/02

Portals are Zones that teleport you from point to point. They also allow you to See through to the point you are going to teleport to, like a "window" to that area! The better terminology for these structures is Warp Zones. This is because they are actually zones that you can teleport between. Portal refers to the sheet that seals the warp zone and acts as the window to the other zone. There must be at least 2, (and only 2 - as far as I know), of these warp zones in order to work properly. These zones must be exactly the same dimensions and only 1 portal, or opening, in order to work correctly. Warp zones will work with 2 openings or portals, however the effect this causes isn't very good. The warp zones can however have different textures applied to each of them.

Building the Warp Zone Structure
I will assume that you at least know the basics of building maps.
To start with, build two unattached rooms. Make them both 256high x 512 x 512. Texture them anyway you like. You should now have two identical rooms, not touching and in 2 separate locations. Change the textures in one of these rooms so they do not look alike. Now build a workroom 512 x 512 x 512 off to the side. We will build the warp zone structure in this workroom. Make the warp zone itself 128 x 128. The actual structure around this warp zone will have to be slightly larger. Allow for an extra 16 units on all sides, so make the cube for this structure 32 units larger than the inside warp zone area. Size it to 160 x 160 x 160 units (or 128+32). Make sure your red brush is in the workroom, not touching any of the sides at all, and then add it to the world. This cube will be the outside for the warp zone so pick a nice texture for it. Now resize the red brush to 128 x 128 x 128 and position it so it butts or touches one side of the block. Now subtract the brush. This should "hollow out" most of the block, leaving one side open, like a window or door. Resize the red brush so that it completely surrounds the block and then intersect it. Move the new red brush to the first room we made and place it in the center of the room, butting or touching the floor. Add this brush. Now move the red brush to the center of the second room and add it the same way as in the first room. You now have your warp zone structures built. We now need to turn them into zones, and then warp zones. To zone them we need to add zone portals over the openings to seal them. Select the sheet brush tool. Make a sheet 128 x 128 (the exact size of the openings in the structures), and then select X-wall or Y-wall depending on which way your openings face. Apply this sheet to the opening on the block of one of the portals and make sure it is centered and butting all the sides. Place it back into the opening a bit so it is not right on the edge of the opening, but a little bit back. You may have to resize the grid to 8 units and move it back into the cube one "snap" or 8 units.

When it covers the opening, butting to all sides, click the Add Special Brush tool. From the predefined menu select "Zone Portal" and then add this brush. Move the red brush to the other warp zone (in the other room) and repeat. You can check to make sure you have the zones correct now by Rebuilding and then switching the 3D view to Zone/Portal view and making sure you have a different color inside each of the warp zone structures and different from the rooms they are in. There should be 4 separate colors corresponding to 4 zones total, besides the workroom zone.

We now have the portals zoned, but we still need to define them as Warp Zones and set their properties so that they warp to each other. Open the Actor Browser. Go to Info/ZoneInfo and then highlight WarpZoneInfo. Put a WarpZoneInfo inside each of the portals, not touching any walls. Select the first WarpZoneInfo you added and right click it to open its properties. You will see a heading called "WarpZoneInfo." Expand this and look at the last two fields:
OtherSideURL --The "name" of the destination portal.
ThisTag --the "name" of this portal.
Name one Portal Warp1 and the other Warp2. That is, set the above fields to Warp1 and Warp2 in one WarpZoneInfo and to Warp2 and Warp1 in the other, in that order. Now add some lights in each room and a player start in at least one of the rooms. Rebuild, Save and then Play the map. You should now be able to walk all around the portal warp zone structures and see from one room to the next. You should be able to walk through the portal and "warp" to the other room and back again.

Tips:
If you should get a HOM (Hall Of Mirrors) effect or other strange problems in your warp zone portals, try deleting the zone portal sheets, rebuilding, and then adding them in again, making sure they are lined up correctly and sealing the warp zone "air tight". Warp Zone Portals are fairly easy to make but can be kind of "touchy." Just remember to make the warp zones the same size and make sure the sheets are lined up correctly, and that you have the WarpZoneInfo properties correctly set and they should work fine.

Summary
You should have a pretty good idea of how to make a basic Portal or Warp Zone now. You can take this knowledge and experiment with settings and create different sizes and shapes of Warp Zones.

Notes TO SELF:
Check Out using more than 2 warp zones connected!
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(7) Pathnoding for Bots in UT Maps

Post by Hook » Tue Apr 22, 2008 10:42 pm

Pathnoding for Bots in UT Maps
by "Hook" Morgan - 7/2/02

If you have a large map, pathnoding can be quite a project. It is a very necessary feature however, if you want your map to work correctly and be a challenge with bots.

Pathnoding is used to tell bots about the geometry of your map. Unlike a human player, bots are essentially blind and don't see brushes that you place in your map. So, to tell bots where to go, you must leave little apple trails for them to follow. Pathnoding should be balanced carefully. Too many pathnodes can confuse bots! Not enough pathnodes can leave them stranded.
If you place them in awkward positions they may also get trapped.
There is a pathnoding utility or two out there that I hear work pretty well, for the most part. There is also an automatic pathnoding feature in UnrealEd, but it doesn't work well at all.
Here is a small picture, which shows you the kind of thinking you need to have when placing pathnodes. (Picture not included, yet)

Notice how the pathnodes are placed at intersections in the hallways so that navigation is easier for the bots. Also notice the spacing between pathnodes on ramps and stairs as opposed to open areas and hallways. Notice how the weapon and the medbox are used in place of a pathnode, and also to lure bots into places that they may not normally go. At this point, it is important to note that any inventory item or any other kind of navigation point you place in your map will act as a pathnode. Ammo, Armor, Power-Ups, Weaponry and Health are all included and can be particularly useful to coax bots into particular areas. With this in mind, it is best to place these pick up items, etc., BEFORE you pathnode your map. You should not place pathnodes too near to any of these items! Also, plan ahead as to where you may have trouble getting bots to go in your map. With the idea in mind that these pick up items should be placed not only where they may be desirable by players or bots, but also where they will do the best job of drawing bots to locations that they may not go very often, or even not at all, without these items in place. If needed, you can adjust the desirability of a pick up item or health item, etc. You can right click on the item to bring up its properties. Find where it says desirability. Adjust the number higher until it achieves the luring affect you desire.

To actually place pathnodes, do NOT do this in any of the 2d views. You need to do this in the 3d view for at least three good reasons.

1) You can move the camera through the 3d view as if you are the bot running through the map. This gives you an indication of where you should be placing them.
2) Pathnodes will not work if the bot cannot fit into the place that you put the pathnodes. Using the 3d view to place your pathnodes will ensure that this won't happen. If you try to add a pathnode to an area that is to small, it simply won't appear there when you try to add it.
3) Pathnodes placed using the 2d window can end up being on any floor in a map and not necessarily the floor you want it to be on.

To place pathnodes in your map, choose navigation points from the "actorclass browser" and amongst those you should see the "Pathnode" actor. Left Click on "Pathnode" to highlight it, then in the 3d view, right click on the floor and choose "add pathnode". Then move forward several paces in the direction you think the bot should head and place another one. Keep doing this until you have the whole map covered as far as places where bots can and should go. I usually keep my view high enough off the floor so I can still view the last pathnode I placed, when placing a new pathnode. This way I can somewhat gauge how many units away the pathnodes are being placed from one another. You should also look at the 2d top view window to keep an eye on how the placement and spacing of pathnodes is going. Keep pathnodes centered in halls and between objects and fairly evenly spaced between each other.

Here are a few tips for pathnoding:
* If you have a water zone, do not place pathnodes directly above it by the edge to coax bots out. The bots will continually keep jumping in the air to try and reach them. Instead, place the pathnode above the ground a little way off the side of the water area, but still in sight if the bots were to bob above the water. Keep the pathnodes that are at the edge of and in the water in line of sight with the ones just off the edge over the ground that are out of the water.
* Pathnodes placed in the water that are meant for bots to navigate with while in the water should be placed just below the surface. Some pathnodes can be placed near the bottom also for navigation in the deeper parts.
* Pathnodes should be placed roughly 700 units apart, (give or take), in flat and/or open areas. Pathnodes should be placed roughly 250 to 300 units apart, on stairs, ramps and/or inclined areas.


Viewscreen Information
(Checking out the connections between navigation points)

Right click on any of the menu bars where the small joystick is and a menu will appear. Go down to View, then pick View Paths.
View Paths is very useful. By choosing this option, View Paths will show you how and if all your pathnodes and inventory items are connected.
Blue lines connecting pathnodes or navigation points are the best connections and will be the most desirable routes taken by the bots. Red lines are still good connections but will be less desirable or less used routes by the bots.
You can of course move pathnodes just like any other objects to obtain a better fit in the navigation network or pathing.
View Paths is also a great way to see if and how ANY navigation points such as triggers, teleports, etc., are connected and functional!

That is it! If you have any questions, just let me know!
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(8) Intersecting and De-intersecting in UT Maps

Post by Hook » Tue Apr 22, 2008 10:43 pm

Intersecting and De-intersecting in UT Maps
by "Hook" Morgan - 7/3/02

Building maps is not restricted to just using cubes and cylinders, and intersecting brushes is not only useful to create movers.
First of all, I will describe the basic functions of the Intersect and De-Intersect buttons.
Intersect: Intersecting always leaves the part of the red builder brush that is into a solid object, whereas De-Intersecting always leaves the part of the red builder brush that is into a subtracted open area. I will give you an example for you to try so you will be able to understand this and see for yourself how these work.
Make a room subtracted out of the world such as a good-sized cube. Now resize the builder brush to about one third the size of the room cube. Move the red builder brush so that about one half of it is in one of the walls. Now hit the intersect button. The half of the red brush that was inside the solid wall is all that remains and is perfectly butting the wall edge. Now hit the subtract button. There will be a cube subtracted out of the wall and ONLY the wall. Now hit the build button on the cube dialog box again. The red brush is back to its original size again. Move the red brush so that it is half way into the wall in a different place in the room. Hit the De-Intersect button this time. The half of the red brush that was outside the solid wall is all that remains this time and is perfectly butting the wall edge. Now hit the add button. There will be a cube added outside of the wall and ONLY outside of the wall. Remember! You must NEVER add into any part of a solid area and you must NEVER subtract into any part of a subtracted open area! Never!

Intersect and De-Intersect can also be a very useful way of forcing complex brushes to conform to other awkward shapes in your maps and can be used to create shapes that aren't so easy to make using the 2D editor. To give you an example, I'm going to demonstrate making a staircase like the one in the picture below. Ordinarily it's not a brush you can create in the usual ways. (Picture not included, yet)

1) Create an ordinary room and place a large cylinder, upright in the center as in the screenshot. Rebuild the map.
2) Then create a staircase brush and position it so that the bottom half of the staircase overlaps the cylinder (as below)
3) Now, here's where the de-intersect or intersect icon comes in to play. Whether you click on intersect or de-intersect is dependent on where the pivot point (the vertex shaped like a small red star) is positioned. If it's positioned outside the solid cylinder, you need to click "de-intersect". If it's positioned inside the cylinder, you need to click on "intersect". You should see your brush look like the one in the picture below. If you made a mistake simply build the original staircase brush and choose the other icon instead. (Still not sure about this part. I included this part just to let you try it out. Hook)
4) Now add this brush to your world (obviously you need to select a texture first)
5) Next delete the large cylinder that was there in the first place and rebuild. You should now have your special staircase.

Intersecting is a useful tool to take a complex set of brushes and change them into just one brush. This will often improve performance, as fewer polygons will have to be drawn (even though the same amount of nodes will actually be visible).
See the Custom Objects tutorial for more information on using Intersecting to consolidate multi-brush objects into one custom object!

That is it! Any questions let me know!
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(9) Adding Custom Textures in UT Maps

Post by Hook » Tue Apr 22, 2008 10:46 pm

Adding Custom Textures in UT Maps
By "Hook" Morgan - 6/5/02

Pick a texture file you want to add to your map. In a photo editor you may want to resize the texture file to a more reasonable size. You will most likely (and best) want to make it a square with the pixel size a multiple of 16. Examples would be 256 x 256, 128 x 128, 64 x 64 or 32 x 32. This will depend on what you plan on using the texture for in your map, of course. The largest size that it can be is 256 x 256. That is the default in UT and UnrealEd.
Finally, you must convert the new cropped texture to 256 color, 8 bit color depth.
Now save this shot as a 256 color, 8 bit pcx file. Now you are ready to import the texture into UnrealEd!
In UnrealEd, bring up the Texture Browser window. Under File, Click the Import button. A file dialog will pop up. Browse to the location where your new texture is stored and select it, then click the OK button. The Import Texture dialog will pop up. In the "Name:" field enter: (what you want to call it) and in the "Package:" field enter: (whatever you want to call the package). The package name should be associated with the map name and/or what type of texture package it is, but definitely not some other package's name! The "Name:" field should describe the texture itself. Give it a name unlike other textures. Unlike the preview screen shot, leave the "Generate MipMaps" option checked and then click the OK Button. After UnrealEd works for a moment you should see the "The name you gave it" package displayed in the browser with your texture & its name shown in the browser texture window. At this point you can either include this Texture package in the zip file with your map when you distribute it OR you could have imported the texture into the MyLevel package with your Preview Screen shot. When you include custom textures in the MyLevel package, and they are used at least once in the map, they will be saved embedded in the map unr file like the preview screen shot. When your custom texture is in the MyLevel package, you will not have to include the separate texture package in the zip file when you distribute the map. The only difference between the preview screen shot & the texture is that when you import the texture into the MyLevel package, or any package, you Leave the "Generate MipMaps" option checked. Leave this checked for imported textures intended for use in a map. The game engine uses MipMaps for 3D rendering of textures used in the map for the game and is not needed for Preview ScreenShots!
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(10) Making Custom Objects & Brushes in UT Maps

Post by Hook » Tue Apr 22, 2008 10:52 pm

Making Custom Objects & Brushes in UT Maps:
By "Hook" Morgan - 6/5/02

Basically to make a custom object, you will be adding objects and also possibly subtracting some parts to first make a model of what this custom object will look like, texturing it to the final look, then surrounding the model with the red brush and intersecting it. Then, you will use the resulting new red brush to add your custom object to the world or map. It is critical that the scaling and resizing of the red brush be reset before intersecting. If you don't, the custom object may not work right. I usually use RESET ALL under the brush menu at the top, but you can also right click the red brush and select reset all. It is also crucial to have your textures aligned and applied correctly on the model object you built, because once you intersect the red brush with the model, the new custom object will be identical to it and cannot be changed.* <-??? *(I am not sure if the object can or cannot be changed as of the last update of this tutorial)

First off it is best to make a building or workroom to the side of the main map area you are working on. This is a good idea with most any map that you build. Build this workroom big enough to fit any movers, objects or other complex shapes you may want to build in it. Pick a light texture for all six sides of the room. It doesn't matter what texture you use. Add a few lights in this room to see with. This is just the room you should use to build your movers and other shapes in. You will of course want to delete this room and all its contents when you are finished with the map. I will refer to this room as your builder room from now on.

Making the Custom Object:
To build the custom object, first build a shape you want the object to look like. (It can be more than one object put together as in the lifts in FragginsteinCastle) Make sure it is in the center of your builder room, not touching any of the walls. Pick an appropriate texture(s) and apply it to the newly built Model Object. (Remember that this Model Object is merely a model of what you want your Custom Object to look like)
Once you have the Object textured, aligned and looking the way you want it, do a reset all on the red brush and resize it large enough to completely surround the model object, but not touching it or anything else. Position the red brush around, or surrounding the model object and then intersect it (hit the Intersect button) and the red brush should wrap itself around the model object exactly copying it.
Now take the newly formed red brush and move it to the place you want to place it in your map. Now click the ADD button (or Subtract button if you are subtracting this shape out of a solid area) and you should get an exact copy of the model object in the place you have the red builder brush. It will look exactly like the model object you built and intersected the red brush with over in the builder room, only with fewer polys. Also, it will keep the file size down and the map will play better using this method.
Of course you can Save this new custom red building brush for future use if you want.


Notes TO SELF:
Add section on RayTraced Lighting! ??? (not sure if needed for non-movers)
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(11) Creatures in Unreal Tournament

Post by Hook » Tue Apr 22, 2008 10:54 pm

Creatures in Unreal Tournament
By "Hook" Morgan - 6/5/02

Note by Hook 4/22/08: This is what we did before MonsterHunt came out! LOL :lol:

To have Creatures/Monsters/Animals appear in a level:
Animals / Creatures / Monsters are Turned Off by default in UT.
I will call these three Creatures from now on, meaning all three.
The following is how to have Creatures appear in a UT level. (Map)
Some Levels have them and some do not.
Open the UnReal Tournament Configuration.ini file in the UT System Folder.
Find where it says No Monsters: True.<-- (There are several places - one for each game type)
Change the word True to False, in All the game types and places you want Creatures.
Close the file. It will ask you if you want to save the changes. Click Yes, if you want to see the Creatures in your levels that have them.
Creatures can be added in UnReal ED & UnReal ED II. (See below)
I saved a copy of the UN-edited UnRealTournament.ini file in a separate safe folder just in case I needed or wanted to easily swap it back to the UT System Folder. If all is OK with the altered init file, delete the copy, for it will be no good later on.
That's it. I have found that Creatures can add some great suspense to a level.

Creatures/Monsters/Animals can be added in UnReal ED.
Go into UnrealEd 2.0 & open the Actor browser. Then go under Classes, Pawns.
There are Scripted Pawns & Bots & Flock Pawns, etc.
I believe that these are all left in from UnReal. Add some of these into an experimental one-room map with a player start. Then play the map to see what the creatures look like and how they act.
Some maps I have already have the Creatures in them. For example, in CTF- Bad Neighbors,
I fell into the water & low and behold there were some sharks after me.
Some of them are set for "looks", such as Hawks flying in the air or fish swimming in the water on some maps.
These Creatures can be configured in many different ways by right clicking on them In UnrealEd and adjusting their properties.
They can be set to attack or just ignore everything or somewhere in between.
Even their mentality can be adjusted. Creatures are a lot like bots.
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(12) LensFlares (Coronas) in Unreal Tournament Maps

Post by Hook » Tue Apr 22, 2008 10:56 pm

LensFlares (Coronas) in Unreal Tournament Maps:
By "Hook" Morgan - 6/5/02

To start, you need to pick a corona texture.
Open the Texture Browser. Load in GenFX.utx package. Go to the LensFlare sub group.
Click to highlight the one you like. Leave it highlighted.
Now, add in a light or pick an existing light in your level. Click on it to highlight the light.
Now right click the light and open its light properties.
Find bCorona. Set it to True.
Expand Display. Click where it says Skin.
Click the "use" button. The texture name you picked should appear next to it.
Rebuild your level and Save it. You should now have a corona. By default, coronas do not show up in the 3D window in UnrealEd. Go into the UT game. Play your level. You should see the corona if you are in the range of the corona's sight radius. If not move closer to where the corona is emanating from.
There are some settings you should adjust to your liking.
Under the Light Properties in Display you can set how large the corona will be.
Look for DrawScale. Set it to .2 or smaller usually. (DrawScale is up to you)
Setting the LightRadius from 1 to 255 is how far away you can see the corona.
The corona appears in the game when you approach this distance setting.
It disappears when you are outside this radius. I usually put in the maximum of 255.
This will depend on how far away you want it to show up in your level though.
Set the light Brightness to 1. Set the Saturation to 1.
Set the Hue or color to whatever color you want the corona to appear as.
You can "play" with these settings to get the effect you want.
Brightness is of course how bright the light is. Also, the lower the brightness number setting, the less whiteness will be in the color of the light. With a brightness setting of 1, you will have a deep rich color. With a higher brightness setting, say with red as your light color, the light will appear more whitish-red or pinkish, having more white light mixed with the red color the higher the brightness setting you go.
Saturation is how much of the light is reflected off other surfaces from this light.
These coronas can be (and usually are) put in front of regular lights. Let the regular light do the lighting & lighting effects. Let the corona light just display the corona.

Hope this helps! Any questions just let me know.
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(13) Basic Lift Movers for UT Maps

Post by Hook » Tue Apr 22, 2008 10:57 pm

Basic Lift Movers for UT Maps:
By "Hook" Morgan - 7/10/02

Lifts are Movers and are made by adding a brush to the world you want to use for a mover, surrounding the brush with the red brush and intersecting it. Use the new red brush to add your mover. It is critical that the scaling and resizing of the red brush be reset before intersecting. If you don't, the mover will not work right. I usually use RESET ALL under the brush menu at the top, but you can also right click the red brush and select reset all. It is also crucial to have your textures aligned and applied correctly on the model object you built for the mover, because once you intersect the brush, the mover will be identical to it and cannot be changed.

First off it is best to make a building or work room to the side of the main map area you are working on. Build this workroom big enough to fit any movers you may want to build or other complex shapes you may want to build in it. Pick a light texture for all six sides of the room. It doesn't matter what texture you use. This is just the room you should use to build your movers and other shapes in. You will of course want to delete this room when you are finished with the map. I will refer to this room as your builder room from now on.

Making the Lift Mover:
To build the Lift Mover, first build a shape you want the Lift to look like. (It can be more than one object put together as in the lifts in FragginsteinCastle) Make sure it is in the center of your builder room, not touching any of the walls. Pick an appropriate texture(s) and apply it to the newly built Lift Object. (Remember that this Lift Object is NOT a mover at this point, but merely a model of what you want your Lift to look like)
Once you have the Object textured and looking the way you want it, reset the red brush and resize large enough to completely surround the object, but not touch anything else. Position the red brush around the object and then intersect it (hit the Intersect button) and the red brush should wrap itself around the object exactly copying it.
Now take the newly formed red brush and move it to the place you want to place it. This place should be where the Lift is to start from, also called keyframe 0.
Right Click the Mover button and select which mover type you want to add the Lift Mover as. I like to use the ElevatorMover type for Lifts.
Now click the ADD MOVER button and you should get a purple brush in the place you have the red builder brush or at keyframe 0. This purple brush will be the mover, and though it is invisible (except for the purple outline) in the editor, it will look exactly like the brush we intersected over in the builder room.

Setting the Keyframes:
Which brings us to Key Frames! Key frames are "points" where the mover will move to. Obviously you need these to tell the mover where to go. You can have up to 8 key frames (numbered 0 to 7). If you right click the mover brush you will see on the pop up menu under Mover Keyframes all the key frames numbered. We want to make the Lift glide straight up and down. One might think that when you move a mover to a certain position you would then select that key frame number.
This is OPPOSITE of how it works. We add the mover in it's 0 (or base) keyframe position. While it is still at keyframe 0, right click and select mover keyframes and keyframe 1. Now move the mover to its first key frame, keyframe 1. When you move the mover to where key frame 1 will be, then select keyframe 0 and it will automatically go back to its base position. Remember, When the mover is in the BASE or STARTING POSITION select KEY FRAME 1 and move it to KEY FRAME 1, then select KEY FRAME 0 and it will return to base. Think of it like "recording" where the mover will go. You pick keyframe 1, then move it to keyframe 1 and it remembers this path.
So while the mover is in it's base position where we added it, select key frame 1, then move the mover straight up to where we want it to go or open to and then select key frame 0 and the mover will snap back home.

Properties:
Now we need to set some of the Lift's properties. You'll need to move the red brush out of the way. Once the red brush is out of your way, then right click the purple mover brush to open up the Mover Properties window. There are only a few properties we need concern ourselves with. First go to Object and InitialState. This tells the engine how we intend to activate the Lift Mover. The default is BumpOpenTimed. Like it sounds, when touched, the Lift will move to its keyframe(s) for a specified amount of time and then return to keyframe 0. You will want to change this to StandOpenTimed. If the initial state of the lift mover is left at BumpOpenTimed, the lift will take off as soon as it is touched, without the player (or bot) before it gets a chance to get on the lift!
Another way to put it.
Under Object InitialState, change it to StandOpenTimed. It works like BumpOpenTimed, but if we use that the lift will go up as soon as you touch the edge of it, leaving you behind. StandOpenTimed waits until you're on the lift before it moves. Now open the Mover section of ElevatorMover properties.
The first one to check is MoverEncroachType. This tells the editor what to do if someone is in the way of the Lift Mover. The default is ME_ReturnWhenEncroached. With this setting, if you are standing in the way of the Lift, it will go back up until you are out of the way, then it will come back down to keyframe 0.
You Must set NumKeys (for how many key frames it will have). You can set more keyframes if you want, but under Mover Properties, Mover, set the NumKey to however many total keyframes (floor stops), you have set in you Lift Mover. They have to match! Remember key frames start numbering at 0 so if you have just set key frame 3 then you have 4 key frames, numbered 0, 1, 2 & 3.

Lighting Effect (Optional):
Set the lighting for the lift if you wish. Open up the mover properties and then click on bDynamicLightMover. This is set to false by default. If you leave it set to false, your lift, or any mover, will show light as the original, fixed light setting when the lift was built.
If you set bDynamicLightMover to True, your lift or mover will respond to light as it moves. It will receive the light at wherever you have set the swivel point.
Setting bDynamicLightMover to True, is the best most realistic setting, I believe.

Sounds (Optional):
Set the sounds for the lift if you wish. Open up the mover properties and then click on MoverSounds. For normal doors and lifts we need to add a sound to each field, except MoveAmbientSound. The names of the different sounds should be self-explanatory. In the browser, change from Textures to SoundFX. Load an appropriate sound pack. As you can see the sound file names tell you where to put them. Sounds with "end" in the name would go to ClosedSound and OpenedSound, and ones with "start" would go in OpeningSound and ClosingSound. Do not put a Looping sound in any of the fields, except if you are using MoveAmbientSound. MoveAmbientSound can have a looping sound. If you put a looping sound in one of the first 4 fields, it while go on forever!

Adding Support for Lifts (Important)
There are two special NavigationPoint classes used to help bots understand how to use lifts, LiftCenters and LiftExits. Give the lift a unique tag (name). Place a LiftCenter on the lift (in the center of the lift mover as the name implies, at keyframe 0, the starting point), and set its LiftTag attribute to be the tag of the lift.
Now, at each exit from the lift, far enough away so that bots standing at that spot won't interfere with the lift, add a LiftExit. Each LiftExit should have its LiftTag set to the tag of the lift.
If the tag (name) of the lift is Elevator1, then the LiftExit's and LiftCenter's LiftTag will be Elevator1 also.
The default state for movers is BumpOpenTimed. Do not use this state for lifts! Bots misinterpret movers that are BumpOpenTimed as being doors. Instead, use the StandOpenTimed state for most lifts.
If the initial state of the lift mover is left at BumpOpenTimed, the lift will take off as soon as it is touched, without the player (or bot) before it gets a chance to get on the lift! FYI - LiftCenters & LiftExits (and other NavigationPoints also), look like Eagle heads in the editor.
You can check to see if the LiftCenters & the LiftExits are correctly done by selecting Show Paths by right clicking on the blank toolbar area at the top of any of the 4 windows in the editor. LiftCenters & LiftExits should connect to all of the same tag names with blue lines between them, even from floor to floor!

I do NOT recommend the following trigger type lifts! (I left it in just in case you want to know)
Bots will also understand triggered lifts (TriggerOpenTimed, TriggerToggle, etc.). In many cases, they will use triggered lifts without any further help. However, for certain complex situations, such as when a delayed dispatcher is used to control the lift, bots may need a hint. In these cases, set the LiftCenter's LiftTrigger attribute to the tag of the trigger the bot should use to control this lift.
There are two other configurable LiftCenter attributes of interest. These should be modified only if absolutely necessary. MaxZDiffAdd, which defaults to 0, specifies an additional allowable difference in height between the bot and the LiftCenter for the bot to consider that LiftCenter reachable. This is useful if the bot must stand below the lift (down stairs or a ramp) while waiting for it. MaxDist2D is the maximum distance between the bot and the LiftCenter. It defaults to 400 world units.

Summary
You should have a pretty good idea of how to make a basic Lift Mover now. There are other settings you can experiment with and adjust to your liking, especially with the timing settings. You will want to set things like MoverTime, (how fast it opens/closes), etc.

Notes TO SELF:
Add section on RayTraced Lighting! -?
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

(14) Zones or Zoning for UT Maps

Post by Hook » Wed Apr 23, 2008 11:00 pm

Zones or Zoning:
By "Hook" Morgan - 7/18/02

IMPORTANT - The concept of zones ...
UT levels can be huge!
Many of our game levels are pushing 20,000 world polygons.
At any one time, the player only sees a tiny fraction of those 20,000 polygons, typically 100-200 polygons.
The game engine spends a significant amount of CPU time figuring out which 200 polygons, out of a potential 20,000, are visible in each scene. UT employs several techniques to speed up this "visible surface determination" process. Most of these techniques are automatic, requiring no designer intervention. However, one of the most powerful techniques, zoning, requires level designers to manually place invisible polygons called "zone portals" in their levels. Zones greatly accelerate the engine's visibility calculations, and they also enable designers to create many special effects that are specific to a region of space, such as ambient lighting or modified gravity.
A zone is an interior region of connected 3D space, for example a room, or a group of several complex, interconnected rooms.
By dividing your map up into zones, you gain several benefits:
1 - Speed. A well-zoned level typically speeds up the engine's "visible surface determination" process by over 100% in a complex map, compared to an unzoned level.
2 - Ambient lighting. Each zone can have its own ambient lighting value, which is added to the regular lighting on each surface. Ambient lights are very useful for outdoors areas, where pure black shadows are unnatural, as well as in diffuse environments where one would not expect dark shadows.
3 - Reverberation. Each zone can have its own audio reverberation properties.
(see a UT audio document for more information)
4 - Zone-based physics properties, such as friction and gravity.
5 - Water, Lava or other liquid.

Seeing zones ...
UnrealEd has a special mode that enables you to see all the zones in you map graphically, with each zone rendered in a distinct color. In UnrealEd, in the 3D viewport's menu, select "Zone/Portal view". You can also see this in the game by typing "RMODE 2" at the console.
In UnrealEd, zone portals are normally visible, and you normally can't see through them. To hide them, press the joystick button in the viewport, which turns on realtime updating (dynamic lighting) of the viewport. You should only use this for previewing your architecture, as this realtime updating slows down the rest of UnrealEd's user interface and can "crash" the editor in more complex maps.

Partitioning a level into zones ...
Mappers (Level designers) can partition their maps into zones by using special kinds of brushes, zone portals, to seal up regions of their maps and make them "water tight" so to speak.
There are two tools in UnrealEd that you need to use to create zone portals:
1 - The "sheet brush" tool. This is represented by the bottom brush builder icon on the toolbar, which lets you build a flat square polygon. You need to build zone portal polygons using this tool; you need to create polygons that are big enough to block the passages you are sealing up.
2 - The "add special brush" tool. This is represented by the solid green square icon on the toolbar, below the "add" and "subtract" buttons, which enables you to add a polygon to the world with special properties to it. When you click on the "add special brush" tool, a little dialog box comes up with several pull-down options.
Choose the "Zone Portal" pulldown option. Then position your sheet brush and click "add" when you're ready to add the portal.

To zone your map ...
First add a bunch of portal polygons (using the "sheet brush" tool to build them, and the "add special brush" tool to add them). Add these portal polygons "Sealing Up" areas water tight in your map. Place them in small passage ways between large areas for best results!
Next, bring up the "rebuilder" dialog and rebuild your map. The rebuilder will go through your map and detect regions of space which are sealed up "water-tight" and assign a unique zone to each region. You can go into the "Zone/Portal" view to verify, graphically, that your level is properly zoned.
If, in Zone/Portal view, you see that the engine hasn't recognized your zones, you have probably not made the portals "water tight". You need to add in enough portals that the separate zones are completely sealed-off from each other.
If, in the game, you see "hall of mirror" effects where you placed portals, make sure your portals completely seal up the regions of space they separate. If you have a portal that only partially fills up a passageway, you might see through it into nothingness.

Where to place zone portals ...
For special effects zones like water zones you will, of course, place the portals wherever you need the effect.
For zones whose purpose is only to speed up the engine, your goal is to divide your level up into zones while introducing portals whose overall area is as small as possible as I mentioned ealier. The smaller the portals, the less work the engine must do to process the portals. Therefore, we place our portals in passageways which naturally separate large areas, such as doorways and hallways. This approach causes the level to be divided up well, without adding too much portal area.
There is no benefit (and often a performance penalty) to placing portals in the middle of large rooms. These huge portals usually eat up more CPU time being processed than they save. Stick portals in doorways, hallways, and other narrow passages as I mentioned before.

Adding ZoneInfo actors to specify zone properties ...
If you want to assign individual properties to a zone, such as water, ambient lighting, or reverb, you need to add a "ZoneInfo" actor to the zone. You only need to do this if you want to assign custom properties to the zone!
If all you want is the speed advantage of portalization or zoning, you don't need to add ZoneInfo's.
In the class browser, expand the "Info" class and you'll see "ZoneInfo" right there. You can add the ZoneInfo actor anywhere in your zone; as long as it's in empty space and there aren't more than one ZoneInfo's in your zone, the ZoneInfo will work. For the engine to recognize your ZoneInfo actor, you need to rebuild your map again.
(See a ZoneInfo property sheet for a list of the ZoneInfo properties)
There are many cool adjustable parameters, such as friction, gravity, ambient lighting, pain, water, etc.

Water and translucent zone portals ...
To create a water zone, just set the ZoneInfo's bWaterZone variable to True. The UT physics code (in Pawn.uc and PlayerPawn.uc) automatically recognizes these water zones and transitions between walking and swimming physics modes.
Of course there are a number of pre-set ZoneInfos for your use such as WaterZoneInfo that you can select instead of altering a regular ZoneInfo actor.
To make transparent water, just select the zone portal's surface in UnrealEd, bring up the "Surface Properties" and turn its "Translucent" option on.

Caveats ...
A Map (level) can only have 64 zones maximum. If you create more than 64 zones, the game engine will merge some zones together, causing a loss of performance.
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hook
Posts: 3395
Joined: Fri Feb 16, 2007 9:41 am
What is the middle number? (one, TWO, three): 3
extraextraantispam: No
NoMoreSpam: Silver
Location: Minnesota USA (Just West of MPLS - by a pond beneath a tree - Dead & Buried)
Contact:

Post by Hook » Sat May 17, 2008 1:37 am

Yeah, I hear you VatcilliZeitchef.
These are tutorials I wrote several years back - I just wanted to post them ASAP and I haven't had time to re-edit these.
Wish I had time. :(
I have a few maps to finish for MEAT and Hermskii and still need to find the time to finalize them also! :? :wink:
Plus, I run 5 or 6 sites and co-admin on several others.
Aaarrrrrrrrrrgg! :P
BUT, the information is here - that is what is important.
Copy it and change colors or whatever in a WORD doc - then read them if it works better.
That is fine! :wink:
=Hook= of Hook's UT Place - Hopelessly Addicted to UT99!
Forum: https://hooksutplace.freeforums.net
CROSSBONES Missile Madness {CMM} (GT Top 50)
PRO-Redeemer | PRO-SNIPER-Redeemer | SEEKER-Redeemer
Birth Place of ALL Seeker/Scoped Deemers!
IP: 68.232.181.236:7777
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

Locked