| Home Page | Recent Changes | Preferences


http://www.esconline.org Revision 1, 09/06/02
Click [here] for the latest version

Here is the up-to-minute latest version of the FAQ for the Esc mod - http://www.esconline.org - the Only Nightclub Mod for Unreal Tournament, and possibly Unreal Tournament 2003 in the near future! Enjoy! -DJPaul

Welcome to the Esc FAQ!

Esc is distributed under the Gnu General Public License. Basically, you can distribute Esc, but you have to include the source or make it available to anyone who wants it. If you modify Esc and distribute it, you need to distribute the source code for your changes as well.

This is a developer's release, which means it's still pretty rough, and a non-technical user may find it difficult to figure out.

Quick Start and Installation

To use Esc, you must have a copy of Unreal Tournament. Make sure Unreal Tournament is patched to the latest version (436). Then double click the installer to install Esc.

If you have DSL or cable modem, configure Esc in the Options→Preferences→Network menu, within the program.

You must update your key configuration, as Esc adds a number of new keys: these are 'P.A Say', 'Admin Say', 'Toggle Dance Mode' and ****TOGGLE UWINDOWS MOUSE***** (you should only worry about the first two new keys if someone tells you to).

Join a multiplayer server as per normal (Servers→Find Internet or LAN Servers). Once the server list has updated on your machine (this should only take a few seconds - if no servers appear, be sure on is hosted and try pressing 'F5'. For more information on hosting games, see 'Starting Your Own Server'), double-click or select and press 'enter' on the entry for the server that you want to connect to.

We have a dedicated server - this should be up 99% of the time. Server address: mrwelchs.ai.mit.edu,

Esc should then connect to the game - enjoy!

If its not up, you can start your own multiplayer game. If you don't hear any music, and dancing doesn't work, try setting an admin password, then in the game bringing down the console (type `), typing "adminlogin <adminpassword>" then "summon dancemode.playlistspeaker" That should create a speaker with the default playlist.

Things To Remember

Dancing is the raison d'Ítre for Esc - therefore it helps if you know your 'Toggle Dance Mode' key - this will switch between the standard interface, and the Dance Mode.

If you wish to dance, are in 'Dance Mode' yet hear no music - you are either downloading the music, or there is no 'Speaker' near you in the level. Read the FAQ list for solutions to these problems.

If you try to look around, but see only a mouse cursor, you are in 'UI Mode' - you can select the 'Buy' and 'Talk' tabs that appear on your HUD, and scroll through your chat log in this mode.

Starting Your Own Server

Their are many reasons you might start an Esc server - perhaps you are hosting your own club online, or perhaps you are just hosting so you can hang out privately with your friends. There are two ways to start an Esc server - standard method, and advanced.

Standard method is as simple as hosting a normal game of UT. In Esc, go to (Servers→Start New Server), customise your settings using the regular menus, and click "Start" (or "Dedicated", if you wish to host a dedicated server).

The only thing that this method of hosting cannot do, is to send audio files to the connected clients - be sure that everyone who will connect has all the music they will need from the Esc website.

The advanced method is exactly the same as above, but it allows your server to send the music files to connected clients. To do this, proceed as follows.

  • You'll need an Esc installation, and a web server with bandwidth limiting; we have used Apache (www.apache.org) with mod_bandwith (http://www.cohprog.com/mod_bandwidth.html) before with no problems. We know this is a pain; hopefully we'll switch to streaming audio using Icecast soon.
  • If you need to know how to install Apache with mod_bandwith, basic instructions are below. For Windows-OSes:

1. Go to http://www.apache.org/dist/httpd/binaries/win32/ and download the no_src.msi file.

2. Go to http://flashexperiments.insh-allah.net/Apache.html and download the mod_bandwidth DSO binary. The file should have a .IA.rar extension.

3. Install Apache with the installer from step 1.

4. Extract the mod_bandwidth DSO binary, and delete the conf folder from the IA.rar extraction. Now drag everything to your apache install folder. You should have mod_bandwidth.so in your apache modules folder.

5. Edit your httpd.conf in the conf folder and add this to the LoadModule section:

LoadModule bandwidth_module modules/mod_bandwidth.so

Also add this to the AddModule section: AddModule mod_bandwidth.c

6.Now try running apache.exe. If it works, you should get something like in a terminal window: "Apache/1.3.24 (Win32) running....".

If that doesn't work and you get a "can't find mod_bandwidth error 126" then go on to step 7.

7. Download http://flashexperiments.insh-allah.net/msvcrt_dlls.zip and put that into your /system32/ folder. Don't overwrite your old ones; chances are you are missing one of the .dlls. Whichever dll doesn't overwrite, add it to the hidden /system32/dllcache folder as well.

8. Go to your Control Panel and click on the 'System' Control Panel. Click on the 'advanced' tab. Click on the 'Environmental Variables' and locate 'Path'. Edit this variable and add to the variable path your apache bin and apache modules folder. Separate them by semicolons.

9. Restart and try to run Apache.exe again.

  • Create two folders, one for the high bandwidth versions of songs, another for the low bandwidth versions. Put the appropriate songs in each, but make sure they have the same name. E.g. both the high bandwidth and low bandwidth versions of Destination are named 'Destination.esc'. In the low bandwidth folder, add this to your '.htaccess':

<Bandwidth all 2600>

And in the high bandwidth folder:

<Bandwidth all 26000>

  • "Are we done yet Spankdude???" Nope. [Props to Alcor.]

In your '\UnrealTournament\System' directory, find the file named 'PlayList.ini'. Put the names of your .esc files and the two URLs in the proper places. Go into your '\UnrealTournament\EscMusic' folder and place the LOW BANDWIDTH versions of your songs in there.

Importing your own music

You need your own music, of course. All songs must have 4 beats to a bar, and the tempo can't change during the song.

Now you need to get your music into Esc's format. This encodes the music in Ogg Vorbis format, and also includes the start and end time of every bar of dancing in the song. For each song, you need to:

  • Get it into '.wav' format at 44 kHz, either stereo or mono (doesn't matter). For CDs, use your favourite ripper (MusicMatch Jukebox rock0rz for this - DJPaul). To convert mp3s, I use WinAmp. Click on the little 'o' to the left of the time display, and select 'preferences'. In 'output plugins', select 'wavOut'. Then try to play the mp3; WinAmp will save it as a '.wav' file instead.
  • Remember to change your WinAmp settings back to what they were now, or every time you'll play an MP3 you'll make yourself a '.wav' file - bad if you have a *big* playlist.
  • Determine the beginning and ending time of each bar. Look in your /UnrealTournament/ folder (C:\UnrealTournament by default) for a directory called 'SongTool'. Inside there is a file 'SongTool.exe'.

Run it, open your '.wav' file and press 'play'. While the song is playing, press 1 2 3 4 in time to the music. The key presses should be evenly spaced.

You should count 'one...two...three...four...' to the music, and press the corresponding key when you count the word. For music at 120 beats per minute, you should be pressing them every half second.

It helps if you bob your head to the beat of the music. It also helps if you keep each key down for as short a time as possible. Try to just "jab" the key, as if you got an electric shock from it.

If a given bar doesn't have a strong beat, you probably don't want people dancing to it. In any bar, if you don't hit the '4', the whole bar doesn't count.

So, get in the habit of hitting '1, 2, 3' anyway, then only hitting the '4' if you really want to keep the bar. This helps you keep synched in quiet parts of a song.

SongTool can detect simple mistakes like keys out of order, but if you skip a bar you really wanted, or included one you didn't, you need to stop the song and start again.

Once you've got it the way you like, select 'Save' from the File menu, which will save a 'bar file'. The barfile is just a text file with the start time and duration of every bar (and some other miscellaneous info).

  • Encode the songs into high bandwidth and low bandwidth versions. In the same SongTool folder should be another executable, 'Encoder.exe'. This one is a command line application, so you'll need to open up a DOS window/command prompt and 'cd\' into the Encoder directory.

If you installed UnrealTournament in the default location, after you open up your DOS window or command prompt you can type:


cd C:\UnrealTournament\SongTool

I tend to put my '.wav' file and my 'bar' file in the /SongTool/ directory as well, and make two subdirectories to hold the Esc files, 'Lo' and 'Hi'.

To create the high bandwidth version, type:

Encoder.exe -1 -x mybarfile.bar mysong.wav -o Hi/mysong.esc

To create the low bandwidth version, type:

Encoder.exe -1 -2 -q 0 -x mybarfile.bar mysong.wav -o Lo/mysong.esc

Congratulations! Your music is now in .esc format.


  • MGanda, aka Marvel, aka Mike Ganda for his sustained energy throughout the project. He coordinated the artists, created animations, put up with crappy tools, and even wrote two of the songs in this package. You're a true soldier Mike.
  • Angleheart, aka John, for the Eden map.
  • Billy Boy, aka Xia Chen, for creating the first version of the network code. Let me know how that Ph.D. went.
  • DJ Kat for the Raver's Island map.
  • DJPaul, aka Paul Gibbs, for all his UnrealScript coding, too much to list here.
  • LeechDemon, aka Jason Elliot, for his kick ass textures and unwrapping.
  • Nemesis, aka Stephen Deaver, for all his code (even the stuff I didn't use, sorry).
  • Saturnite, aka Jason Seabaugh, for his model sheets (including Attitude and WuTang), dance animations and modeling Attitude.
  • Space Grrl, aka Suzanne Duke, for the kick ass web design.
  • All the people who worked on the project and got discouraged before they could contribute. Sorry, I wish I was a better motivator/manager.
  • NilreMK for the great Kasahee model.
  • "Aura - the sound of trace" for letting us distribute Destination Skyline with this package.
  • Dr. Sin for the Window Replication Info class.
  • The Ogg Vorbis team for, well, Ogg Vorbis (http://www.xiph.org)
  • SoX for it's .wav file reader
  • JREIcon (I lost the name and URL, sorry!)

Music Credits

The full version of this mod ships with three songs; the others are downloaded automatically when you connect to an Esc server.

"Atomic Maneuver" and "Noise Machine" are original compositions of Marvel/MGanda, our lead artist.

"Destination Skyline" is by "Aura - the sound of trance" for letting us distribute their awesome song Destination Skyline with this package (http://artists.mp3s.com/info/170/aura1.html).


We need you!

We'd be thrilled if you could come forward and offer your services - coders, mappers, animators, texture artists, musicians, general 1337 people would be more than appreciated. Best email the boss.

Note from MC|Spanky

If you've read this far (well done): What the hell are you doing?? Go join an Esc server!

Tarquin: questions about the installer:

  1. is there any reason why it's an EXE and not a UMOD?
    1. DJP: 'Cos this is nicer - as we might (can't remember offhand) make copies of the user's user.ini/ut.ini files, and use those for Esc. UMODs, in my experiance, are pinniky beasts.
      1. downside is it's not cross-platform...

Mychaeel: That's a big downside, especially if the rest of the mod would otherwise be platform-independent (see also Mychaeel/Modding Etiquette). And I'm actually not sure whether you can or can't do things like copying files with UMod installers; they're by far more powerful than umod Wizard suggests.

  1. what's it going to do to my UT folder? I'm wary of letting things loose on existing applications. A quick summary in the installer info itself would be nice if there's anything beyond the usual Unreal packages (eg overwriting existing files...)
    1. DJP: No files should be overwritten - be less scared, tarquin.
      1. I'll give it a try later :)

Mcspanky: The mod isn't plaform independent, unfortunately. It needs to call DirectSound to play the music for a number of reasons. So, until we can get some Mac/Linux sound programmers interested, it's Windows only. If anybody's done sound programming under either one, porting Esc wouldn't be hard, and would be a BIG help...

Category FAQ

The Unreal Engine Documentation Site

Wiki Community

Topic Categories

Image Uploads

Random Page

Recent Changes

Offline Wiki

Unreal Engine

Console Commands


Mapping Topics

Mapping Lessons

UnrealEd Interface


Scripting Topics

Scripting Lessons

Making Mods

Class Tree


Modeling Topics


Log In