Hutp map project

Post all mapping and skinning related content here!
Post Reply
User avatar
Terraniux
Posts: 502
Joined: Wed Mar 09, 2011 10:26 am
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
Location: Planet Earth, Zodiac constellation.

Hutp map project

Post by Terraniux » Tue Aug 07, 2018 2:31 pm

I think I haven't posted it here yet.
Same topic as on HUTP:
http://hooksutplace.freeforums.net/thre ... ollTo=1888
A map designed for Redeemer / Sniper related servers. But especially for CMM.

Haven't got a name for it yet, please make suggestions!
----


Today I made some big progress.

I think is good enough to call it an early ALPHA version. Terrain and basic layout and geometry is completed!
Not yet finished yet:
-Botpathing
-Lightning
-Skybox
- General things like pickups, secrets... etc.


Added 18 playerstarts. There is minor health and pickups available. But let's hear the commentary first about bugs and possible wrongs.


Fire at will!

https://www.dropbox.com/sh/gw7p19wi7cng ... k8i0a?dl=0

Since my host will expire soon I am expermenting with droppbox. If the link is not working let know!

Image

Image

Image

User avatar
Nelsona
Posts: 998
Joined: Sun Mar 06, 2011 11:45 am
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
Location: Still at Keyboard
Contact:

Re: Hutp map project

Post by Nelsona » Wed Aug 08, 2018 8:48 pm

Terraniux wrote:But let's hear the commentary first about bugs and possible wrongs
Fist thing which is not a bug but nor useful is this (without even to see map):
Terraniux wrote:Added 18 playerstarts.
Default UT and here I mean DeathMatchPlus games and child classes are using only 16 PlayerStart actors the rest are just pointless, actors increasing iterations with no purpose:

Code: Select all

function NavigationPoint FindPlayerStart(Pawn Player, optional byte InTeam, optional string incomingName)
{
	local PlayerStart Dest, Candidate[16], Best; //This array is here - hard-coded, never bigger unless custom game-types are used
	local float Score[16], BestScore, NextDist;
	
...

	for ( N=Level.NavigationPointList; N!=None; N=N.NextNavigationPoint )
	{
		Dest = PlayerStart(N);
		if ( (Dest != None) && Dest.bEnabled && !Dest.Region.Zone.bWaterZone )
		{
			if (num<16)
				Candidate[num] = Dest;
			else if (Rand(num) < 16)
				Candidate[Rand(16)] = Dest;
			num++;
		}
	}

	if (num == 0 )
		foreach AllActors( class 'PlayerStart', Dest )
		{
			if (num<16)
				Candidate[num] = Dest;
			else if (Rand(num) < 16)
				Candidate[Rand(16)] = Dest;
			num++;
		}

	if (num>16) num = 16;
	else if (num == 0)
		return None;
For finding other problems I will need to do a direct check.
Here I can figure too much brightness at some lights closer each-other which might increase light value in some spot. Lemme guess, this is that map trouble maker with lightning... crashing Editor, probably even player firing weapons around.
To be honest I would script here some common light (no shadows in that case) only for client (servers will not need any light) by hard-coding them into MyLevel and deployed by Map Itself in run-time, but this is a coding subject. Another thing doable is using a general "AmbientBrightness" and after that adding a few lights for any more bright desired spot, more lights with less brightness and radius way better than values over 200 and way too close.

User avatar
Terraniux
Posts: 502
Joined: Wed Mar 09, 2011 10:26 am
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
Location: Planet Earth, Zodiac constellation.

Re: Hutp map project

Post by Terraniux » Fri Aug 10, 2018 8:33 am

Nelsona wrote:
Terraniux wrote:But let's hear the commentary first about bugs and possible wrongs
Fist thing which is not a bug but nor useful is this (without even to see map):
Terraniux wrote:Added 18 playerstarts.
Default UT and here I mean DeathMatchPlus games and child classes are using only 16 PlayerStart actors the rest are just pointless, actors increasing iterations with no purpose:

Code: Select all

function NavigationPoint FindPlayerStart(Pawn Player, optional byte InTeam, optional string incomingName)
{
	local PlayerStart Dest, Candidate[16], Best; //This array is here - hard-coded, never bigger unless custom game-types are used
	local float Score[16], BestScore, NextDist;
	
...

	for ( N=Level.NavigationPointList; N!=None; N=N.NextNavigationPoint )
	{
		Dest = PlayerStart(N);
		if ( (Dest != None) && Dest.bEnabled && !Dest.Region.Zone.bWaterZone )
		{
			if (num<16)
				Candidate[num] = Dest;
			else if (Rand(num) < 16)
				Candidate[Rand(16)] = Dest;
			num++;
		}
	}

	if (num == 0 )
		foreach AllActors( class 'PlayerStart', Dest )
		{
			if (num<16)
				Candidate[num] = Dest;
			else if (Rand(num) < 16)
				Candidate[Rand(16)] = Dest;
			num++;
		}

	if (num>16) num = 16;
	else if (num == 0)
		return None;
For finding other problems I will need to do a direct check.
Here I can figure too much brightness at some lights closer each-other which might increase light value in some spot. Lemme guess, this is that map trouble maker with lightning... crashing Editor, probably even player firing weapons around.
To be honest I would script here some common light (no shadows in that case) only for client (servers will not need any light) by hard-coding them into MyLevel and deployed by Map Itself in run-time, but this is a coding subject. Another thing doable is using a general "AmbientBrightness" and after that adding a few lights for any more bright desired spot, more lights with less brightness and radius way better than values over 200 and way too close.
Thanks! I did not know that. 16 it is.

The lighting is also a bit helped by ZoneLighting, isn't that ideathe same as AmbientBrightness?
I'm using that of a tip back over on ut99.org. As long the map is stable, im more than happy so far. :D

User avatar
Nelsona
Posts: 998
Joined: Sun Mar 06, 2011 11:45 am
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
Location: Still at Keyboard
Contact:

Re: Hutp map project

Post by Nelsona » Fri Aug 10, 2018 4:52 pm

Given said map as a heavy render task because it's an UNI-ZONE level,
Prj_Map.PNG
by setting up AmbientBrightness at ZoneInfo to certain value map will have some uniform light which can be boosted where it has to. Doing a simple test about this won't hurt anything.
This is a sample without a single light - in game has enough light.
Prj_Map01.PNG
In game is something like this. Screenshot has been reduced in brightness because it was too bright.
Prj_Game.jpg
A lot of light without a single light.
You do not have the required permissions to view the files attached to this post.

User avatar
Terraniux
Posts: 502
Joined: Wed Mar 09, 2011 10:26 am
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
Location: Planet Earth, Zodiac constellation.

Re: Hutp map project

Post by Terraniux » Sat Aug 11, 2018 8:57 am

Given said map as a heavy render task because it's an UNI-ZONE level,
So I should divide the map into certain zones? That will boost performance?

User avatar
Nelsona
Posts: 998
Joined: Sun Mar 06, 2011 11:45 am
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
Location: Still at Keyboard
Contact:

Re: Hutp map project

Post by Nelsona » Sat Aug 11, 2018 5:23 pm

Sweeney wrote: Unreal Zones
Tim Sweeney
Epic MegaGames, Inc.

Audience: Level Designers.
Last Updated: 07/21/99
The concept of zones

Unreal levels can be huge; many of our game levels are pushing 20,000 world polygons. At any time, the player only sees a tiny fraction of those 20,000 polygons, typically 100-200 polygons. The engine spends a significant amount of CPU time figuring out which 200 polygons, out of a potential 20,000, are visible in each scene. Unreal 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 non-convex 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:

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.
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.
Reverberation. Each zone can have its own aural reverberation properties; see the audio document for more information.
Zone-based physics properties, such as friction and gravity.
Water.

Seeing zones

UnrealEd has a special mode that enables you to see your level's zones graphically, which 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 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.
Partitioning a level into zones

Level designers can partition their levels into zones by using special kinds of brushes, zone portals, to seal up regions of their maps and make them "water tight".

There are two tools in UnrealEd that you need to use to create zone portals:

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.
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 you add a bunch of portal polygons (using the "sheet brush" tool to build them, and the "add special brush" tool to add them). Next, bring up the "rebuilder" dialog and rebuild you 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. 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.
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 it the speed advantage of portalization, 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 the ZoneInfo property sheet for a complete 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 Unreal physics code (in Pawn.uc and PlayerPawn.uc) automatically recognizes these water zones and transitions between walking and swimming physics modes.

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 level can only have 64 zones. If you create more than 64 zones, the engine will merge some zones together, causing a loss of performance. This limit might be extended in the future.

User avatar
EvilGrins
Posts: 2654
Joined: Thu Jun 30, 2011 8:50 pm
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
NoMoreSpam: Silver
Location: Palo Alto, CA
Contact:

Re: Hutp map project

Post by EvilGrins » Mon Aug 13, 2018 8:10 pm

I am still without a computer, friend is taking an unusually long time fixing it, but... that's a pretty map.

User avatar
Terraniux
Posts: 502
Joined: Wed Mar 09, 2011 10:26 am
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
Location: Planet Earth, Zodiac constellation.

Re: Hutp map project

Post by Terraniux » Thu Aug 16, 2018 7:00 am

Code: Select all

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.
This part I knew already.

Code: Select all

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. 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.
This I did not. Still learning! But that is good! Thanks Nelsona.

User avatar
Nelsona
Posts: 998
Joined: Sun Mar 06, 2011 11:45 am
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
Location: Still at Keyboard
Contact:

Re: Hutp map project

Post by Nelsona » Thu Aug 16, 2018 1:40 pm

As for my poor mapping spree until nowadays, if some bsp cuts are encountered around portals, combined with some semisolids not well aligned will cause ugly BSP borks. When these are aligned well and without Cuts, all nasty stories with semisolids and portals are myths. I did (and I'm using a map) done from Giant Semisolids and portals around, and has ZERO bugs, to mention that has only 10 brushes and it's not that small, just a fast CTF environment with extra translocation stuff... After figuring how do these works, everything goes easier to do. Here I found some prefabs which I used and probably was the only suitable prefab brush in that archive, the rest being crapped up with NON-COPLANAR surfaces - MAPPING'S ENEMY. I don't get why those jesters have been sharing those trashes...

User avatar
Hook
Posts: 3444
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:

Re: Hutp map project

Post by Hook » Fri Aug 17, 2018 11:32 am

EvilGrins wrote:I am still without a computer, friend is taking an unusually long time fixing it, but... that's a pretty map.
Sorry to hear EG :|

Yes, it is a very nice looking map.
I am excited to debut it on our CMM server when it is released. :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: NEW IP to come!
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

User avatar
Hermskii
Site Admin
Posts: 8500
Joined: Sun Jul 10, 2005 9:56 pm
What is the middle number? (one, TWO, three): 2
ExtraAntiSpam: Blue
extraextraantispam: Yes
NoMoreSpam: Silver
Location: Houston, Texas
Contact:

Re: Hutp map project

Post by Hermskii » Mon Sep 03, 2018 2:50 am

IS EG up and running again yet? His post was back in August.
~Peace~

Hermskii

User avatar
Hook
Posts: 3444
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:

Re: Hutp map project

Post by Hook » Tue Sep 04, 2018 10:18 am

Hermskii wrote:IS EG up and running again yet? His post was back in August.
Last I saw posted from EG - No, his computer is still in the shop. :(
=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: NEW IP to come!
CROSSBONES Monster Hunt {CMH} (Special Edition MH by mars007)
IP: 108.61.238.93:7777

Post Reply