There seem to be a lot of questions and a lot of people confused about how to make maps (or other related content) on modern technology. Currently, almost
all of the old mapmaking technology has been redone to expand old capabilities or just provide convenience to people without Mac Classic. So in this topic, I will briefly discuss the tools I recommend for current work as well as provide links to the tutorials.
If you have easy access to Mac OS9 or earlier, then you can use Forge and Anvil with relative ease and be mostly done with it. As far as I can tell, the only real weakness left in the current technology is the Anvil stuff, but I'll get there when I get there.
Forge could draw maps, texture them, and merge them all together as one big complete program. This has been completely replicated across three programs (thanks primarily -- but not exclusively -- to Treellama's tireless efforts), which some may find to be a bit inconvenient, but the extended capabilities of all three of them I think greatly outweigh the "inconvenience" of having to run more than one program at once.
Anyway, here are the seven components involved in creating pretty much all of the content required for Marathon stuff. You don't need to know everything for everything -- for instance, if you want to make multiplayer maps, all you need to know are how to draw, texture, and merge maps. This is, as far as I can think of, a complete guide for content creation. For anyone who thinks that's an awful lot of stuff to make a scenario, try making maps for a modern game. 1. Drawing maps
I recommend using Weland
for drawing maps, though Obed
has existed for quite some time. The primary reason I recommend Weland is, besides the fact that you ought to pay for Obed, Obed was designed for Marathon 2 and, therefore, doesn't operate well with the Marathon Infinity stuff (from what I understand).
Weland is free and is designed to mimic just about all of Forge's functionality, except most notably for Visual Mode and map merging. From the interface to the buttons and commands, those familiar with Forge can switch to Weland without any real trouble. For those of you who are not familiar with Forge or Weland, the Forge guide that shipped with Marathon Infinity as well as the seven tutorial videos apply pretty nicely to Weland as well -- except for, again, Visual Mode, as well as a few interface differences. Forge can be a somewhat daunting program to learn from scratch, but a bit of determination can overcome that fairly nicely.
I found the tutorial videos on Youtube by searching for marathon forge
Additionally, the excellent written guide is available in PDF format on the Trilogy Release website here
. This is the single most important resource for learning about Marathon content creation.
Even if you have Forge available and ready, I recommend using Weland if possible because Weland can circumvent most of Forge's limitations, including (most importantly to me) polygon limits and object limits. Weland also has some smaller advantages or conveniences over Forge, including not repeating colors in elevation mode.2. Texturing maps
Maps need to be textured. The nice thing about Forge (and, really, the only compelling reason to use it still) was how easily you could switch between drawing and texturing. If you plan on using Weland, however, you will also need to use Visual Mode.Lua
VML (for short) is a script that runs inside Aleph One. Installation instructions are pretty straightforward and are included in the download; I actually have a separate installation of Aleph One with different controls to keep things easy and organized between maps in-progress and playable maps.
When you're ready to texture in VML, you need to pave the map and save it in Weland (or Forge), and then load it in Aleph One with the VML script selected as a single-player script. (You can do it in multiplayer too, but I don't recommend it.) From there, it will probably take a little while to familiarize yourself with the iconography and the controls, but before long I at least found it to be much more convenient than using Forge's visual mode. There are three primary advantages that VML has over Forge:
a) Forge will constantly pop up with error messages (or outright crash) if you have over-long view distances or too-complex geometry. These were limitations in the original Marathon 2 engine, but no longer exist in practical measure in Aleph One; therefore, using VML won't present any such error messages. You can still create overly-complex geometry that will cause older computers to slow down, but that requires a very considerable amount of detail.
b) VML allows you to texture with all texture sets at once; Forge will lock you into one. I have written a small treatise
on tasteful use of this ability, but in any event, you can do it in VML but not Forge.
c) Forge can only run in 256 colors, I believe. This is a problem since no monitor produced in at least the last 12 years is limited to that, and the difference in color depth is absolutely extraordinary. In VML, what you see is what you get -- and that can be really important.
Having to make changes or fixes on the fly requires you to save the map in VML and reopen it in Weland, fix the error, and then reopen it in VML -- which may be an inconvenience if five extra seconds of work counts as valuable time lost to you.
Some of the Visual Mode stuff in the Forge tutorials applies to VML as well, but really VML is simpler to learn than Weland. Learning how to texture well
is a different subject. 3. Physics models
This is one of the unfortunate weaknesses at this point. Physics Editor One
is the current offering, and replicates Anvil's physics model creation somewhat well. The interface, while not very attractive, is pretty similar to Anvil's in organization. If you can run Anvil either through Classic or by some other means of emulation, I'd recommend that, because:
a) Anvil's tutorials are built in through a remarkably useful help pop-up window. PEO assumes you're familiar with Marathon physics, but if it weren't for the Anvil help button, it would all be Greek to me.
b) The creator of PEO, HogePiyo, is Japanese, and while his English is pretty good, some of his descriptions or translations are unclear or inaccurate, which just throws another monkey in the wrench.
c) I have had difficulty with saving physics models every now and again -- but this doesn't always happen.
However, it will do in a pinch. The Forge manual also has a small part about Anvil, which can help, but really the most valuable tool is either Anvil's help button or a good friend that can explain it to you. If you can run Anvil, I actually recommend using Hakvil
, which is a modified version of Anvil that provides some of the functionality that Bungie kindly locked out of Anvil, and a few interface improvements besides.
An additionally useful reference guide was written by Mark Levin
.4. Shapes files and graphics creation
(this is not really my area of expertise, but I'll do my best anyway)
For creating new textures, monsters, or other graphics, Adobe Photoshop will serve you best. If you don't have Photoshop, GIMP
is an open-source version that works just fine. For creating new weapons, you might want some kind of 3d modeling program -- Blender
is one open-source opportunity, and from there you can render images.
Importing them into a shapes file is necessary. Anvil can do this as well (and Hakvil can do it better), but barring that, Shapefusion
is the Aleph One program of choice. It has most of the functionality for handling Marathon shapes files. Shapefusion mimics Anvil pretty nicely interface-wise, generally speaking, although it uses a tree layout instead of a pop-down menu, which I think is an improvement. Shapefusion can also open sounds files and import sounds.
As with physics editing, the Forge manual covers using the shapes editor in some detail -- and this translates over into Shapefusion as well.
Shapefusion can also export shapes patches. Shapes patches are useful for merging in custom shapes (textures, primarily) into a map so that you can use those textures without needing a separate shapes file; this is most useful for graphically expanding multiplayer maps.
For the use of high-resolution graphics, you will need Aorta
to convert image files into the DDS image type, which is optimal for performance in the Aleph One engine. You will also need to write some MML to accompany it, which I'll cover briefly later.5. Terminal creation
Terminal files are regular old .txt files, really. One program, Hex!, existed alongside Forge, but that was for the Mac OS days of yore. But the Forge manual covers pretty succinctly everything you need to know about how to write terminals, so just open up Notepad or whatever you prefer and get to writing. It's also going to be extremely useful to have an example for formatting and all that; I would use Atque (described below) to unmerge the Infinity map file and open up one of the resultant .term.txt files.6. Merging map files together
While Forge can make merged map files, Atque
completely supplants Forge's abilities and has quite a bit more beyond that. Even if you use Forge for everything else, Atque is still a more useful merging program.
Map files should be merged before they're distributed. Using Atque (and the included documentation to learn how), Atque can combine:
- Multiple maps together, and for each individual map:
- Physics models
- Terminal text
- Terminal and chapter pictures
- Shapes patches to conveniently extend the existing shapes model*
- Lua scripts*
(asterisks denote things Forge cannot do)
Run it through Atque and it will produce one single .sceA file which is a ready-to-play single player scenario or multiplayer map pack.
Also unlike Forge, Atque can split merged files apart into their constituent components. Forge could extract single maps, but not the associated physics or terminal text. Furthermore, Forge required you to use a stupid "Terminal Picts" file if you wanted to include terminal and chapter pictures, which required you to use ResEdit and add in the images that way -- and, if I remember correctly, this doesn't even work for Windows, but it's all naff anyway. Atque will work fine with normal bitmap files put into an associated folder, reducing the stress by a thousandfold.
There are also a couple terminal functions that Atque can successfully merge, but Forge cannot. Atque can also create .imgA files, which are basically used for the menu screen and so forth. The Atque manual is accessible here
Aleph One allows for extended functionality through MML and Lua. MML stands for Marathon Markup Language and is pretty similar to HTML, and very easy to learn. MML is required for high-resolution replacement graphics, but it can also edit various level or game settings that take place when the level is loaded.
MML will let you circumvent a lot of the stuff that was "hard-coded" into the original Marathon 2 engine.
Lua, on the other hand, is an existing language and has its own syntax with is fairly easy to learn. This is better at handling stuff on-the-fly in-game.
Actually, I'm going to let someone who knows a lot more about this stuff than me explain it for me
and in much greater depth. Linked in that topic are the MML and Lua documentation, which will tell you all of the wonderful stuff they can do (which is a fair bit!). However, I believe some of that documentation is outdated, so for convenience, here's what I use:
- Lua documentation
- MML documentation