Q: How did you get the contract to port Unreal Tournament to the Dreamcast?
"Luckily, soon after that heating application was done, we were contacted by Infogrames (soon to be Atari) about porting UT to the Dreamcast. Some folks we knew from the Jaguar days was working with Infogrames, and recommended us to them. Given our company was so small, we didn’t charge much for the job. It was originally scheduled to take less than a year to complete. At some point, we were given some extra time, but I had to add some features to get that time - which is why we have 4 player split screen and decals (bullet holes and explosion burn marks).
It was mostly me doing the programming on it, but for about half of the project I was joined by David Pridie. He, very sadly, passed away during the development of the game. You can see him in the credits."
Q: Were there any particular challenges you ran into when porting the game? Obviously the Dreamcast had its limitation in comparison to UT's main platform, the PC.
"Oh there were some challenges! The biggest issue was certainly the memory. The Dreamcast has 16 megs of main memory (with another 8 for video memory and 2 for audio). The min spec PC for UT was 64 megs is I recall, so I had to make some changes!
My solutions included:
- No female or Skaarj playable characters, as the animation data was a significant user of memory. You could fight some special boss characters in the last 2 levels of the story mode, however (because those levels were limited enough, and one on one, so we could afford the memory).
- Made sure all audio data for a given level fit into 2 megs, and loaded it right into the audio memory. There was no option to swap audio in and out.
- And the same for textures. We had around 5 megs of the 8 megs of video memory available for textures. It all had to fit, no matter what.
- Removed some weapons from some maps (especially the memory-intensive Redeemer)
- To deal with memory fragmentation over time, I reset the entire console between levels (I didn’t reboot it, I wiped the heap and started over from the start of the game).
The other big problem was the optical drive, which the PC version didn’t have to worry about. Unreal’s loading system in the first 2 versions of the engine were very seek heavy, which is terrible on an optical drive. So, my solution was to load each map and write out every byte that was read in. The development kit was unable to write files out, so I had to use a serial cable to write the data out and I captured it all in a PC terminal program, and turned the data into per-map data files. When loading after that, I could use these ordered byte data file to load from. It sounds pretty crazy, but since I reset the memory between each level, we always started from a known state.
Epic was working on the PS2 version of UT at the same time, and Tim Sweeney decided to use this same solution on the PS2. That was high praise for an indie game developer like me!"
Q: In general, how did you like working on the Dreamcast?
"It was better than some platforms, not as good as others :)"
Q: Other than the fact that the game is on the best console the world has ever seen, is there anything special that makes the Dreamcast version stand out from its PC counterpart?
"The biggest thing is that shear number of maps that we shipped on disk. I believe there were 70 maps (plus 3 tutorial maps). A lot of them came from the rocket arena community! We also supported a whole bunch of controllers and peripherals."
Q: Being that this site is focused on the Dreamcast's online games, I should probably ask about the online mode. Was it easy to implement on the Dreamcast?
"I don’t remember there being too much difficulty in the SegaNet implementation, actually. Given the way I had to preload everything into memory, it wasn’t hard having people join in the middle of a match."
Q: I noticed some maps were restricted to maybe two or three players in spit-screen but supported a full 8 players online. Why was this? I'm guessing this was due to framerate issues?
"I don’t remember exactly, but I would agree it’s likely the framerate. In those days, we measured the number of draws in a frame in 2 or low 3 digits, split screen was definitely a concern for framerate."
Q: What about the SegaNet exclusive maps? Were they designed at Secret Level or Epic and whose idea was it to add them?
"I believe those were the rocket arena community maps. Infogrames paid the creators to put them in the game, as I recall."