This is still a work in progress, but is mostly complete except for adding some border graphics and anything I may have forgotten.
Here is information for creating 4v4 Ball maps. Currently all 4v4 Ball maps are built on top of a base map that is 2600x1080 pixels. This is primarily to greatly reduce time to make maps since we need to quickly convert many maps to 4v4 Ball. Setting up turrets to keep planes out of a specific area is a time consuming process and definitely not one I have time to deal with on each map. From now on the turret protected goal box/circle will be referred to as the “crease”.
One downside is if there are any changes to the major components on the map (such as 1. map size 2. goal size or 3. size of crease), it requires each map to be overhauled. If any of these change all maps may require significant adjustments or even to be redone. We did some testing and a few revisions to get to the current base map and I feel relatively confident it is what we need.
Download the base map to get started
Screenshot of base map in editor:
- Change plane or ball spawn location or angles. This does mean you have to be careful not to put anything too close in front of the plane spawns in the corners (make sure bots aren’t having issues getting around them if close) and you can’t have anything directly in the middle of the map.
- Modify the half circle boundary except changing it between white or red & blue. I use white unless obstacles have a white border. If so it is better to use red & blue.
- Use any teams besides red and blue. I get way too many complaints about teams not red, blue, or yellow. And it just makes everything easier to stick with red and blue on all maps.
- Modify turrets, goals, or the collision outline of the map border inside the crease area containing the turrets. The tiny turrets are placed just far enough back their hp bars don’t show, but close enough that for whatever reason their bullets can shoot through the wall.
- Move powerups although I think it is preferred to have a mid high and mid low powerup as on the base map. This helps balance out upper and lower spawns. If the top or bottom middle is completely blocked, then either raise/lower it a bit if that helps or put one left and one right with a maximum of three power ups per map.
- Adjust any part of the collision outline for the map border outside of the crease area containing the turrets.
- Add additional background layers or modify the properties of the background layer from the base map.
- Adjust the red/blue backing of the crease as necessary. Generally this is just editing the point color alpha level to make it darker or lighter. Depending on the background you may not be able to see it well or it may be too dark. Basically I think we just want it just barely dark enough that you can tell it is red or blue. We don’t want it dark enough that the planes start blending in at all though.
- I have been using layer 7 for the border and prefer you do as well. If there is a second piece of the border which might overlap use layer 7 and 8. Most important than the actual layer though is the fact nothing else is on that layer. This allows the entire border to very quickly be deleted and replaced if needed.
- To protect against rev rubber backing through the sides, there is a second geom on the sides inside the map border that will do max damage to any plane trying to get through.
- I moved real goal back 10 pixels to help reduce lag goals. That gives a tiny bit more time for a catch of a high ping player to register with the server. So I had to create my own goal graphic to sit on top of the actual goal. It looks a bit sharper anyway versus enlarging the actual goal.
- There is a very slight incline at the bottom of the goal to try to prevent people from sticking the ball there. Probably not enough to help, but I don’t want to make it high enough to cause bad bounces or other issues.
- For the border collision outline I usually either draw a single border outline or sometimes a separate left and right border. In either case I find the best way to close them off is to use another invisible, non collidable geom to cover the tiny gap (or gaps if you do half and mirror) as seen on the bottom left of the base map. This can’t be done where it is flat though so I move to the nearest corner in the collision outline. Other methods are likely to cause random ball bounces if the ball hits it at that exact spot. Since we are working off a single base map it will be quicker for you to stick with the single collision outline for the entire border unless you have an extremely complex border which probably isn’t a good idea for ball anyway.
Guidelines for making maps:
- Assuming you create the border in an external graphics program, make it non collidable after importing (if you use Import Large PNG this means deleting the collision outline that is automatically added). Unfortunately the map editor is really bad at importing larger graphics and it can create many obvious flaws on the border. It seems the larger the image is the more likely it will look terrible. Although perhaps less ideal for performance I generally find the best balance is to add the top half and bottom half of the borders to the images folder as described below and add as a sprite. Sometimes it just happens that import as large png may work better or you may have to try to add in different ways until it only has very minor flaws.
- Never import obstacles using Import Large PNG. It is both more likely to create flaws in the image and it makes it much harder to edit in the future. Always copy the image in the images golder for the map /editor/maps//images and textures to the textures folder and add to map as sprite/geom.
- The collision outline for imported images is usually very bad. I touch up the collision outlines for every obstacle added. Generally this doesn’t add to much work but it means the ball will bounce properly and planes shouldn’t get caught on corners of objects when they shouldn’t. To be safe I generally make the collusion outline be a couple pixels inside of the graphic. If you happen to have images with a really rough border (doodle for example), the editor may go crazy adding points everywhere on the collision outline. Instead of going through and deleting all of them right click -> Edit Hull and then go to Poly -> Optimize. Move the slider down until it only leaves like 4 points.
I will be adding some vector/pen graphics of the default base map border for various image editing software soon. For those without paid software, the best options for you will be Inkscape or GIMP. Both of these are free and work on Windows, Mac, and Linux. I will get Inkscape, Adobe Photoshop, and Adobe Fireworks border files added very soon and eventually will add GIMP, Adobe Illustrator, and Affinity Designer.