TL;DR is planned to be a regular feature highlighting quality posts (both positive and negative) from Halo-related NeoGAF threads. This entry comes from FyreWulff and covers his ideas for the future of Forge. (Originally posted in Halo 4 Forge |OT| on November 27th.)
What 343 Should Do To Improve Community Content Generation Going Forward
Everyone’s said their piece here and elsewhere about the downfalls and improvements of Halo 4’s Forge. MrBig’s gigantic post addressed a lot of features and tools that could be used within the current Forge system, but I’ve put some thought to it and want to make the following post/suggestion for the next step in controller-based community content creation. Of course, letting people just use the existing Halo tools will always be the best option, but within the confines of the console and controllers, there’s still plenty of room for improvement and flexibility.
With that in mind, I propose splitting map creation into two separate tools, Forge and Anvil. Diagram, courtesy of Devolution:
Forge as a level geometry editor (Halo 3 Foundry and Sandbox, Reach/4 and the STRUCTURE category) was useful for the time, but the limitations are starting to impact actual map development. What should be done is to return Forge to what it started out as in Halo 3: an easy to use object editor that players use to modify objects on existing maps. Anvil (stealing the Marathon tool name) will become the actual geometry/world editor to give map makers more power in creating their world, while making it easy for beginners to easily alter developer maps and community maps.
Anvil would be a single-player only experience. No networking or multiplayer real time tank dropping, let’s leave that over in Forge. Talk to the guys at Ubisoft about their editor, but Anvil will start as a blank slate with basic heightmap editing:
While having Terrain-style objects in 4 would be nice (grassy hills, more useful rocks, trees and such), the problem still exists that the engine treats them as added objects that it has to aggressively drop detail on / dither in and out at range. Anyone who played 4 player split in Reach on Hemorrhage remembers everything popping in and out of view. Imagine that with actual map terrain. Hell no.
This is where the base map geometry/land would be made. Editors would define the water level, the mountains and valleys, trees, and structure objects like buildings and so on. While being able to currently rip apart a map with your buddies in Forge in real time is fun, you rarely need to or want to change your map’s base geometry after you finish it.
This mode would also act like Far Cry in that you’d be able to paint grass, rocks, cliffs, and add Cave objects to make negative space out of the height map (something the Far Cry Editor supported on the original Xbox in 2004). Then you’d set the time of day, the angle the sun is at, and select a skybox, which would determine the overall ambient light on the map. Day/Noon/night/dusk would the the main options, although the FC editor and others let you fine tune what angle the sun is at.
Finally, the forger would be able to add much more lights inside of the map. Currently in 3/Reach/4 Forge, the lights are objects that are placed as objects and barely light anything. In 4, they aren’t considered in the lighting pass done on objects. And they’re not rendered in splitscreen. Waste of budget, performance, and not even consistent for appearances. Anvil lights would be used to light up the insides of buildings, caves, add athmospheric lighting and many other things you can do with lights. They would be baked into the shadowmap when the engine goes to generate it, and would not be rendered as glowing balls in gameplay. Since the engine is no longer generating light in real-time, we can have more of these points of lights in Anvil and you’d see the lighting effect in splitscreen.
You’d also set your ‘hardcoded’ world soft/hard kill zones in Anvil. For beginners, you’d add some random terrain/foliage generation and presets in the menu to start with. You could even make some presets like “Blood Gulch”, “Sidewinder”, “Containment” etc to get people started on some basic map types. After finishing your map and finalizing it, the game would bake the lighting and do some basic geometry welding / optimization. Your new map would be ready for the Forge process.
Forge would return to being a basic editor for spawns, gametype-specific objects and soft / hard kill zones and placing of any objects that move dynamically. Some structure-type objects are still available but are still the basic FW pieces for closing off / opening parts of your map for game modes and really basic map structure editing. This is where you’d do Gametype rigging, and if 343 allowed it, rigging of AI placements, movement maps and such for Firefight. Once you’d be finished, you could go back to Anvil and select your Forge variant as the “Built In” variant of your base geometry.
So say I was remaking Blood Gulch:
* Make Blood Gulch in Anvil. Save.
* Make Blood Gulch’s objects, spawns, etc in Forge. Save.
* Open Blood Gulch in Anvil, Assign Default Forge Variant -> Blood Gulch.
Anvil variants would show up in the top level menu alongside developer maps, with their Forge variants (with at least one built-in required) as a sub selection, just like in 3/Reach/4. So you’d go down the menu and see
Anchor 9 > Anchor 9*
Vortex > Vortex *
The Pit > The Pit *
Cust Map > Cust Map *
Along with upgrades in the editing, we need upgrades in the distribution methods. While we had Bungie.net Web fileshare links and File Sets, and hopefully some Halo 4 web shares eventually, they’re still did not solve all the problems. If any of you have ever released a minigame + map combo, you’ve noticed that you always seem to have roughly half the downloads for the gametype as you do for the map. So there’s a bunch of people playing your map out there.. somehow.. in a completely useless state. I had a Gametype + Map combo on Bungie Favorites at one point called “Flytrap” and included “Sandtrap Fly” next to it in the listings when I submitted it to Urk, and still got tons of “I downloaded Sandtrap Fly, now how do I start flying”. Facepalm.
The solution is something better than File Sets: Packages. What are Packages, you might ask?
A Package is essentially an end-user method of making Map Packs like 343/Bungie can when they sell DLC. It resides as it’s own object in your File Share as a single slot.
A Package can be one of three types:
- A Gametype + Map Package
- A Map Pack Package
- A Collection
A Gametype + Map Package is slightly different but uses the same concept. You create a Gametype from the Gametype editing screen. You can then choose to “Attach Map..” and can select your Forge variant (and the Anvil variant if it’s attached to one), which will automatically create a Gametype Package for you that you can upload to your share. Someone can then download it.
So where in Halo you have the options:
Selecting the Package will automatically bring in the map and the gametype.
A Map Pack Package is simple. You create the package in-game. You name it, add a description and add a thumbnail. You then select maps from your local storage, hit Y, then “Add to Package”. Once your package is finished, you’ll upload it to your fileshare. This Package will now have a unique server ID. A Map Package is different in that the Package is just for maps, and these maps are always “together”. If you delete one map from the package, you delete the entire package (with a notice that you’re doing so). Remember the ID number I mentioned earlier? Packaged maps can also be updated; each time you change your Map Package and upload it again, everyone’s box with that package polls Waypoint for updates, and if they see it, they’ll download the package, delete the old version, and put the new ones in it’s place. If people want to keep a map in a Package permanently, they can Save As and make a copy.
So not only can we make proper minigames, you can also make proper map packs, and also ship updates to maps via the packaging system. Maps and gametypes can still be individually uploaded, of course. There’s already a form of bundling going on currently since Halo 3; if you play a multiplayer film, the film contains the map variant and gametype and will populate your Recent History for both with the map/variant from the film. So it’s not that far of a stretch for the engine.
A Collection is closer to the File Sets of Bungie.net but can contain any file type. Initiating this essentially just auto-queues a collection of files as a download. So someone could collect a bunch of their favorite maps and gametypes together and point people at it. The improvement over Bungie.net is that you wouldn’t have to start each file individually, and you could download it from in-game.
Original post by Fyrewulff (Halo 4 Forge |OT| – 11/27/2012)
If you would like to nominate a post for a future TL;DR feature, send ncsuDuncan a PM on GAF or just email him at ncsuDuncan@gmail.com.