Jump to content

  • Log in with Facebook Log in with Twitter Log In with Steam Log In with Google Sign In
  • Create Account

Tutorial info Visit support topic

  • Added on: Jan 13 2011 05:44 AM
  • Date Updated: Feb 20 2011 08:20 AM
  • Views: 9640
 


How to Make A Jaymod Server

Beginner's guide to installing and starting a Jaymod server on your home computer

Posted by PHANTASM on Jan 13 2011 05:44 AM
2011-01-13

How to Make a Jaymod Server:

Download the Jaymod folder (jaymod-2.1.7.tar.tar) at http://jaymod.clanfu.org/download.php (use the Zen Enterprises link, the others are dead or full of ads.

Unzip it with winrar or your preferred extractor.

You should now have a folder called jaymod-2.1.7

Put this into your Wolfenstein - Enemy Territory folder right next to the etmain folder.

Now start ET, go to MODS on the Main Menu, and select jaymod-2.1.7.

Click "LOAD MOD". You will go back to the Main Menu. It will look like nothing happened.

Now go to "HOST GAME". Start a server as normal (see the top of this tutorial). It will be a Jaymod server. You can tell by hitting Escape and it should say "JAYMOD" in bright gay colors in the Options Menu.

If you want to make changes, go to the file called "jaymod.cfg" in the "Wolfenstein - Enemy Territory/jaymod-2.1.7" folder. Open it with Notepad (right click on it and select Notepad from the available programs). You will see a confusing file full of settings.

You can read through it and change the various values of all the settings and see what each one does. Before you mess it up, you might want to make a backup copy of the original unmodified jaymod.cfg file somewhere.

When you start the server again, use /exec jaymod.cfg to apply the changes you made. You may have to do this twice for some settings to work.


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2011-01-14

Here are some of the more common cvars (console variables) in the jaymod.cfg file that people alter. You can use ctrl+F in Notepad to find them within the file. Changing these settings can make your server more (or less) fun. Substituting a "1" for "0" turns a feature on. Default values are below.

set g_gravity "800" (set lower to let players jump higher for fun)
set g_speed "320" (changes the speed of the game)
set g_panzerWar "0"
set g_sniperWar "0"
set g_friendlyFire "1" (set to 0 to turn off friendly fire)
set g_xpMax "0"
set g_xpSaveTimeout "1h" (set this to 30d for 30 days, for example)
set g_heavyWeaponRestriction "100" (set to 0 to disable soldiers from using heavy weapons)
set sv_maxRate "13000" (set this higher to take advantage of modern internet, 40000 is common)
set sv_maxclients "20" (ET allows up to 64 players)
set g_wolfrof "0" (set to 1 for the RTCW smg rate of fire, which is faster)


Many cvars run better in a cfg file unique for that map. Create a folder called "mapconfigs" in your jaymod-2.1.7 folder. Then create a new text file with Notepad called "oasis.cfg". Notepad will ask you if you want to change the extension, click OK.

Within oasis.cfg, you can put cvars that will be changed when that map loads. For example, you can set these:

set g_gravity "200"
set g_speed "500"
set g_panzerWar "1"

This code will give you a low-gravity, high-speed panzerwar game when the map Oasis loads.

To reverse this on the next map in the default ET map cycle, create a file called battery.cfg with these cvars:

set g_gravity "800"
set g_speed "320"
set g_panzerWar "0"

and you will be back to normal. Battery is loaded automatically after Oasis in the standard map cycle, so the battery.cfg settings will load then.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2011-01-16

Weird Cvars:

There is a special cvar called g_weapons. It has a number that is made by combining all the "Flag" values of the different weapons in this chart. (I have no idea why they did it this way).

FLAG DESCRIPTION
1 Field-Ops with level 0 battle-sense do not spawn with binoculars
2 syringes function underwater
4 pliers function underwater
8 Too many air strikes requested will restore used charge bar
16 Too many air strikes requested will restore half of used charge bar
32 ammo packs restore a lost helmet
64 players with binoculars drop them upon death
128 allies reload rifles mid-clip to match corresponding axis ability
256 enable throwing knives
512 enable poison throwing knives
1024 enable Winchester M97 (shotgun)
2048 disable adrenaline
4096 enable Molotov-Cocktails


5606 is the default value.

You can copy and paste the values above into an Excel sheet (use "text to columns" to spread them out into different columns) and add them up however you want. Or just use a calculator, or pen and paper.

If you set g_weapons "5870", you will pretty much have everything above including the M97 shotgun.



Another unusual cvar that you may find useful are the pair of cvars used to determine respawn time. These can be a little confusing.

Here are their default values in the jaymod.cfg:

set g_userAlliedRespawnTime "0"
set g_userAxisRespawnTime "0"

You can change these numbers in jaymod.cfg, but nothing happens in the game. The respawn time will not change from whatever is assigned in the map. So, you have to copy these cvars to your map config (see above) and you can change them there.

For example, in our "oasis.cfg" file described above, you can have this:

set g_gravity "200"
set g_speed "500"
set g_panzerWar "1"
set g_userAlliedRespawnTime "1"
set g_userAxisRespawnTime "1"

This will give you a one second respawn time, like playing UT2004. Whatever number you put in will give you the number of seconds you have to wait to respawn. You can set it back to normal by putting "0" for these two cvars in the next map's config.

For more information on the nuts and bolts of jaymod, read the "jaymod.pdf" guide. You can find it in the "docs" folder in your jaymod-2.1.7 folder. You will need Adobe Acrobat Reader to open this file.

You can also combine the contents of your "jaymod-2.1.7" folder with your "jaymod" client folder, if you are comfortable moving the files around. I find it easier to keep them separate actually, so I know which one I am working with, and I can replace the whole thing if I mess it up without touching my jaymod client folder (the one that gets downloaded when you play on a jaymod server).

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2011-01-17

Class Cvars:

There are cvars that let you control the numbers of each players in each class. -1 lets you have an unlimited number. Just change the -1 to whatever number you want. Let's say you hate rambo medics, for example, and only want two per team. Just set the "-1" to "2". Then after two people (if you are running a real server) choose medic it will grey out and no one will be able to choose it until those people are done being medics.

set team_maxMedics "-1"
set team_maxEngineers "-1"
set team_maxFieldOps "-1"
set team_maxCovertOps "-1"


There are cvars that control how many landmines your engineers can plant, and how many artillery your field ops can call. Here are the default values:

set team_maxArtillery "6"
set team_maxLandMines "20"


For soldiers, there is no "set team_maxSoldiers" cvar. Instead, you can limit each type of heavy weapon individually:

set team_maxFlamers "-1"
set team_maxMG42s "-1"
set team_maxMortars "-1"
set team_maxPanzers "-1"


There are also cvars that let you control how quickly the power bars recharge for each class. These give the time in milliseconds they have to wait. Lowering them to 5000, for example, makes them recharge in five seconds. You can raise them too, if you want to slow them down.

set g_covertopsChargeTime "30000"
set g_engineerChargeTime "30000"
set g_LTChargeTime "40000"
set g_soldierChargeTime "20000"
set g_medicChargeTime "45000"


These next cvars control how quickly the cabinets refill with ammo and health packs. You can put them in the mapconfigs to set them for a specific map.

set g_ammoRechargeTime "60000"
set g_healthRechargeTime "10000"

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2011-01-18

How to create a simple map cycle:

There are several ways to set up your maps. You can just use the six default maps in the two campaigns that come with ET. You can use the Single Map selector and just play one map over and over. Some servers do this. You can also make objectivecycle files to set up the maps.

You can even make your own custom pk3 campaign files. If you want to make pk3 files you will need a pk3 opener like Pakscape. You can download Pakscape at http://www.filefront...PakScape-v-0.11 You can learn a lot about ET by looking through all the pk3 files in etmain.

Making pk3 campaign files is a bit tedious for beginners. Custom campaigns crash a lot, or get stuck on one map over and over, leading people to think that you are actually running a lame one-map server.


So, let me show you the easiest and most reliable way to set up your maps.

Start by putting this code in each of your map config files:

set nextmap "map xyz"

where xyz is the name of the next map you want to run.

You can daisy-chain all your maps together with the "nextmap" cvar. For example, let's say you want to make a server with baserace, marrakech, temple, and minas. Create a cfg file for each of them in the jaymod-2.1.7/mapconfigs folder, just like described in the sections above for other cvars. Then add the code below to each map. (Don't add the text in the quotes lol.)

set nextmap "map et_mor2_night_final" (put this in baserace_desert.cfg)
set nextmap "map mlb_temple" (put this in et_mor2_night_final.cfg)
set nextmap "map mml_minastirith_fp3" (put this in mlb_temple.cfg)
set nextmap "map baserace_desert" (put this in mml_minastirith_fp3.cfg)

So, each mapconfig determines the next map to be loaded. It's just a big circle.

Then when you start your server, just select one of the maps in the series, and it will load the next map in the series when that one is done. You must have these maps in your etmain folder, so the game can find them when you have the server running.

If you pick a different map in the series it will just start the cycle from there. There is no beginning or end.

This method is relatively simple and reliable. The nice thing about using mapconfigs is that you end up with just one folder containing all your cfg files, you can customize each map, and you can easily find and change all your other cvars.


You can also change the banners that are displayed on your maps. These are the default cvars from jaymod.cfg that control banners:

set g_bannerLocation "4"
set g_bannerTime "60"
set g_banners "2"
set g_banner1 "^3THIS SERVER IS RUNNING Jaymod 2.1.7"
set g_banner2 "^3Check forums at http://jaymod.clanfu.org"

You can modify these default banners to whatever you want to say. For example, you can make the banner say "Welcome to XYZ server, no aimbots or TKing." or whatever you want to tell people.

You can also put banners in your mapconfig files for each map, telling people what the next map is. For example:

set g_banner3 "^Next Map: MLB Temple with Sniperwar" (put this in the map that comes before Minas). Be sure to change the number of banners in the g_banners "2" cvar.


Here is an example of what the whole mapconfig file (mlb_temple.cfg in jaymod-2.1.7/mapconfigs) can look like:

set g_panzerWar "0"
set g_sniperWar "1"
set g_gravity "800"
set g_userAlliedRespawnTime "5"
set g_userAxisRespawnTime "5"
set g_speed "320"
set timelimit "20"
set nextmap "map mml_minastirith_fp3"
set g_banner2 "^Next Map: Minas Tirith"




----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2011-01-19

Admin levels:

After you have set up your server, and ran it at least once, jaymod creates two files that were not in there before. These are level.db and user.db

These are called "databases", but really they are just little files full of names of players and their admin levels. They can be opened and edited with Notepad.


Here is the default version of the "level.db" file:


###############################################################################
##
## Jaymod 2.1.7 -- level.db
## updated: 01/18/11 20:39:15
## levels: 1
##
###############################################################################

level = 0
name = default
namex = default
greetingtext =
greetingaudio =
acl = +C/listplayers +C/resetmyxp



As you can see, there is only one level, and they have two commands available. You can create as many levels as you want and assign them each whatever commands you want.

=F|A= currently uses 15 levels. A few more commands are added at each level.


Here is an example of a simple level.db file with four admin levels (0-3):

###############################################################################
##
## Jaymod 2.1.7 -- level.db
## updated: 01/16/11 07:26:21
## levels: 4
##
###############################################################################

level = 0
name = default
namex = default
greetingtext =
greetingaudio =
acl = +C/listplayers +C/resetmyxp +C/spec999

###############################################################################

level = 1
name = default
namex = default
greetingtext =
greetingaudio =
acl = +C/finger +C/listplayers +C/mute +C/resetmyxp +C/shuffle +C/spec999 +C/unmute

###############################################################################

level = 2
name = default
namex = default
greetingtext =
greetingaudio =
acl = +C/finger +C/listplayers +C/mute +C/nextmap +C/pants +C/putteam +C/resetmyxp +C/restart +C/shuffle +C/spec999 +C/unmute

###############################################################################

level = 3
name = default
namex = default
greetingtext =
greetingaudio =
acl = +C/ban +C/crybaby +C/finger +C/kick +C/listplayers +C/mute +C/nextmap +C/pants +C/panzerwar +C/putteam +C/rename +C/resetmyxp +C/restart +C/seen +C/setlevel +C/shuffle +C/slap +C/spec999 +C/splat +C/unban +C/unmute +C/lol +C/smite




You actually set each player's admin level in the user.db file. Here is a freshly created user.db file with one player:



###############################################################################
##
## Jaymod 2.1.7 -- user.db
## updated: 01/18/11 20:39:15
## records: 1 (bans: 0)
##
###############################################################################

## DEFAULT VALUES FOR NEW USERS -- IF PRESENT, MUST PRECEDE GUID RECORDS
authLevel = 0

###############################################################################

guid = (removed by me)
timestamp = 1295404755 # 01/18/11 20:39:15
ip = localhost
mac = (removed by me)
name = PHANTASM
namex = PHANTASM
authLevel = 0
greetingText =
greetingAudio =
xpSkills = UyGXtOYA6SPqH999RsmF3P7eI1JnnzEJPgzDXtokgco=


You can open this file and set your level to whatever number you want. Change the "authLevel = 0" to "authLevel = 3" or whatever you have as the highest admin level. Then when you restart the game you will have access to all those jaymod commands at your level.


----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2011-01-20

Adding Omnibots:

Once you have everything set up the way you want it, it's time to add some bots. There is a program called "Omni-bot" that can be used in most Quake 3 based games. ET was based on RTCW (Return to Castle Wolfenstein), which was based on a game called Quake 3, which came out in 1999. Many games are built on the Quake 3 game engine.

Jaymod requires the 0.66 version. You can download the Omni-bot 0.66 installer program at:

http://www.filefront...STABLE-Windows/

Run the installer. It will create two folders on your computer.

The "Omni-bot" folder will be installed in C:Program Files.

The "omnibot" folder will be installed in C:Program FilesWolfenstein - Enemy Territory.

Now, when you load ET, load Jaymod like normal. Then type this line in the console:

/omnibot_enable 1

This will turn on omnibots within Jaymod. It has to be done in the console, or in the server command line if you are running a "real" server. It has to be turned on after Jaymod is running. That's the big secret.

Next use this command within Jaymod:

/bot addbot 1 1 killer

This will make an Axis soldier named "killer".

For more details about omnibots see my tutorial:

http://fearless-assa...home-et-server/

You can make an omnibot config and execute it from your mapconfigs (or load it with "/exec whatever.cfg" in the console). You can have different omnibot settings on every map, which is kind of fun. So you could have a bunch of bots with Christmas names like Santa, Rudolph, etc on the Northpole map. And then on a more serious map you could name them Stalin, Hitler, Bush, etc.

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
2011-02-20

Migrating to a hosted server:

After you've started and stopped your desktop server a few hundred times, and played with every combination of cvars, you may want to have your server hosted on the internet. Hosting is relatively cheap, costing around $1 per player slot per month. Paypal is the usual way to pay your bill.

You will need commands to put in the command line of your server. Here is one I use:

+set dedicated 2 +set net_ip ##.#.##.## +set net_port 27960 +set sv_maxclients 40 +set fs_game jaymod +exec jaymod.cfg +set omnibot_enable 1

I've noticed that the set omnibot_enable 1 part needs to go at the end, at least that's what worked for me.