Why Custom Maps Crash, Question & Possible Answer!
blackjackel
Join Date: 2002-11-01 Member: 2151Members, Constellation
<div class="IPBDescription">proof, examples, and a link.</div> Alright,
I have conducted scientific tests to help solve this answer....
I loaded up regular standard maps (ns_bast, ns_hera....etc) and i built turrets and offencechambers and i counted how many i built...
Then i loaded up custom maps (ns_siege..etc) and i built less than HALF THE AMOUNT OF TURRETS i built in the standard maps in the same room and the server crashed...
I think the reason the server crashes is because too many buildings are being rendered at the same time.....
More explanation here:
<a href='http://www.hl-nation.com/forum/index.php?showtopic=70' target='_blank'>http://www.hl-nation.com/forum/index.php?showtopic=70</a>
Of course i am not 100% sure about all of this....
Now here comes the question part, how can i stop a map like ns_siege005 from crashing, i need to make it so that buildings in two giant rooms can not be seen both rooms...
Possible solutions i can think of are:
1- Make a pass-thruable wall that players cant see-thru between the rooms.
2- Make a solid wall in an S shape so that players cant look into both rooms at the same time.
3- Make two doors that open half-life style when someone comes near them, and they open REAL FAST, and both doors cant be open at the same time
If you know anything about this please post, which possible solutions would work, which wouldnt, and if you can suggest anything else let me know.
I have conducted scientific tests to help solve this answer....
I loaded up regular standard maps (ns_bast, ns_hera....etc) and i built turrets and offencechambers and i counted how many i built...
Then i loaded up custom maps (ns_siege..etc) and i built less than HALF THE AMOUNT OF TURRETS i built in the standard maps in the same room and the server crashed...
I think the reason the server crashes is because too many buildings are being rendered at the same time.....
More explanation here:
<a href='http://www.hl-nation.com/forum/index.php?showtopic=70' target='_blank'>http://www.hl-nation.com/forum/index.php?showtopic=70</a>
Of course i am not 100% sure about all of this....
Now here comes the question part, how can i stop a map like ns_siege005 from crashing, i need to make it so that buildings in two giant rooms can not be seen both rooms...
Possible solutions i can think of are:
1- Make a pass-thruable wall that players cant see-thru between the rooms.
2- Make a solid wall in an S shape so that players cant look into both rooms at the same time.
3- Make two doors that open half-life style when someone comes near them, and they open REAL FAST, and both doors cant be open at the same time
If you know anything about this please post, which possible solutions would work, which wouldnt, and if you can suggest anything else let me know.
Comments
Also, if you didnt notice, there is now a mapping questions forum linked at the top, that would probably be the right place to put this.
you need vis blocking.
also i know the limits on structures are by location thus id this a fact ro or not?
There's a total limit of 1024 for the map, but I believe you can also crash by overloading the network traffic (even in a LAN game) with too many entities in a single update (at least, I did this with HL 4 years ago). The network hit could explain why too many visible buildings are crashing the game.
Also make sure that when you are doing your final compile you are doing vis on full mode, because by default the vis calculations are less accurate and so you can end up receiving information for part of the map that's two or 3 corners away...
Another BIG thing is that if you select 3 brushes and click "to entity", they become one single entity. So while doing this will let you save on entity limits, you will also find that if you select to entities on opposite sides of the map, and make them into one entity, then when you see one part of the entity, the engine will assume you can see all parts of the entity.
Imagine this: You have two completely separate rooms, not connected in any way. You make some shallow water in the bottom (water ents are where you most commonly make this mistake) out of world brushes. You then select the water brushes in both rooms and turn them into a single func_water. Standing in one room now makes the engine think you can see into both rooms.
Run the map and go into one of these rooms, and run up to the wall nearest the other room. You will notice that you have an extremely high wpoly count considering that you are supposedly just staring at a wall. Now get a buddy on the other side, as a gorge, randomly placing buildings. You should now see your epoly rising and rising and rising... Since you can supposedly see into the other room, the server is sending you data for everything that goes on in that other room...
What this means is that if you've accidentally grouped entities across several rooms, you may find the server having to send a lot of unneccesary data to a lot of clients... Hence the crash...
how do i do this?
nope <!--emo&:)--><img src='http://www.unknownworlds.com/forums/html/emoticons/smile.gif' border='0' style='vertical-align:middle' alt='smile.gif'><!--endemo-->
BJ: Look in info_mapinfo->top down xy cull distance
If you are a server admin, you could use ripent to set the commander view distance to a lower value for your server. The players will still be able to connect and play. (server-side only entity modification)
excatly, I think it was amerken who did this first, the door(entity) at the far end of a room would suddenly appear as he approached it and vanish as he walked away. This was happening because he was entering/leaving the visable distance to the door entity.
<!--QuoteBegin--NerdIII Oct 4 2003+ 03:24 PM--></span><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td><b>QUOTE</b> (NerdIII Oct 4 2003 @ 03:24 PM)</td></tr><tr><td id='QUOTE'><!--QuoteEBegin-->exactly. so set it ...<!--QuoteEnd--></td></tr></table><span class='postcolor'><!--QuoteEEnd-->
<!--emo&:D--><img src='http://www.unknownworlds.com/forums/html/emoticons/biggrin.gif' border='0' style='vertical-align:middle' alt='biggrin.gif'><!--endemo-->
Could you elaborate more on this, i dont understand what you meant by 2.1 times greater distance...
Also anyone know the distance a commander can see from one side of his screen to the other?