Well, thought I'd pass on the lessons I learned in the process of making Phase Shift, so that other mappers don't fall into the same problems.
1) Bots suck. Apparently they don't like it if the map is divided into two completely isolated sections and those sections are too far apart. The original version of the map has the bases offset 60,000 UU apart, and you can see what happened with that. Huddling them closer together (20,000 UU) is what ended up fixing the bots. If you are building a map with two completely isolated bases (only accessible by teleporters etc), keep them close together.
2) Multiple skies. I will update the tutorial soon, but I'll post it here first. If you make the MultiSkyZoneInfo a subclass of ZoneInfo instead of SkyZoneInfo, you can use separate sunlights in the different areas. Just put them in the actual level part, not the skyboxes. Putting the skyboxes at opposite ends of the level, with both of the level parts between them, you will avoid the problem I note in the tutorial where it will flicker between the two if you look at certain angles.
3) Open collision. The engine doesn't like it. For some of the meshes I made, I originally imported a lower poly version, did a Convert To Brush, then Use Brush As Collision. Since some of these weren't completely solid, the game froze when trying to load the map. Collision for meshes must be a solid structure. The way I worked around it, I turned off all the collision for the visible higher poly mesh, then just left the collision mesh as an actual mesh in the level and set bHidden=True and bShadowCast=False.
1) Bots suck. Apparently they don't like it if the map is divided into two completely isolated sections and those sections are too far apart. The original version of the map has the bases offset 60,000 UU apart, and you can see what happened with that. Huddling them closer together (20,000 UU) is what ended up fixing the bots. If you are building a map with two completely isolated bases (only accessible by teleporters etc), keep them close together.
2) Multiple skies. I will update the tutorial soon, but I'll post it here first. If you make the MultiSkyZoneInfo a subclass of ZoneInfo instead of SkyZoneInfo, you can use separate sunlights in the different areas. Just put them in the actual level part, not the skyboxes. Putting the skyboxes at opposite ends of the level, with both of the level parts between them, you will avoid the problem I note in the tutorial where it will flicker between the two if you look at certain angles.
3) Open collision. The engine doesn't like it. For some of the meshes I made, I originally imported a lower poly version, did a Convert To Brush, then Use Brush As Collision. Since some of these weren't completely solid, the game froze when trying to load the map. Collision for meshes must be a solid structure. The way I worked around it, I turned off all the collision for the visible higher poly mesh, then just left the collision mesh as an actual mesh in the level and set bHidden=True and bShadowCast=False.
Comment