CONTENT
NEWS ABOUT ME PROJECTS
IMAGES
PHOTOS DRAWINGS AION MORROWIND OBLIVION WoW WoW: BC KotOR
CONTACT ME
GUESTBOOK LINKS FORUM E-MAIL
QMapGen
Introduction

This simple program compiles a random Quake singleplayer map every time you run it. It does this based on some parameters found in a file called qmapgen.ini. You can alter this file at will, after that you just launch the exe and it will build the map for you, compile it, then place the resulting map file in the specified directory and launch Quake for you.

Ultimately, I would like this program to generate rooms using a complicated constraints system, but I haven't had the time nor resources to complete this. This preliminary version basically just generates a large room (you can specifiy the size) filled with walls, monsters, weapons and items. Since it's entirely random, you should never get the same map twice. I understand the current randomization is far from perfect, as you'll sometimes get dark areas because no lights spawned there, and you'll also frequently encounter monsters placed in walls. This is, after all, an alpha version.

Installation

First, obtain the RAR file here.

To install the program, extract the contents of the RAR file to a directory of your choice. Whatever you do, make SURE that you keep the subdirectories intact. The program looks in the compiler directory for its compiler tools, as well as the texture pack. So if this is missing, things WILL go wrong. You were warned. After extraction, all you need to do is edit the ini file and run the program. Read on.

Configuration

Now then, a little information about the ini file. It's comprised of 10 lines. You should edit the first six lines only once, as they define the paths to the Quake program, as well as any command line parameters you may wish to use. The others are settings used by the randomization process.

Here's a sample qmapgen.ini file:

		d:\qw\qw\maps\
		d:\qw\
		d:\qw\fuhquake-gl.exe
		-window +deathmatch 0 +map test
		test
		TestMap
		1800
		20
		7
		20
		

The first line indicates the path where the program should place the compiled bsp file. This is generally the maps subdirectory in your Quake dir. The second line is your root Quake directory (where the exe is ), and the third is the path to the Quake EXE itself. Line #4 contains any command line parameters you may wish to add to your game. Line 5 and 6 determine the map's filename (ie test.map, test.bsp) and the map's title respectively. The title can be anything you want, but try to keep the filename simple and in one word. There's no real reason to change it from 'test' at this time.

The next parameter determines the size of your map. A value between 1000 and 4000 is suggested. Anything over or under that and it'll be too small or too large. The default size is 1800, which provides you with a generous playing arena. Finally, the last three parameters indicate the amount of monsters, weapons and items to be placed in the map.

The type of monster generated is typically random, though weaker enemies will be more numerous than hard ones. Same goes for the weapons and items. Items can include super powerups like the Quad, Ring, etc. For a complete listing of all the entities and their spawn chance, check the tables below.

Appendices
Monster Chance to Spawn
Tar Baby 3 %
Shambler 4 %
Vore 5 %
Hell Knight 7 %
Zombie 7 %
Dog 7 %
Fiend 8 %
Slag 9 %
Knight 12 %
Enforcer 12 %
Ogre 13 %
Soldier 13 %
Weapon Chance to Spawn
Super Shotgun 30 %
Nailgun 25 %
Super Nailgun 20 %
Grenade Launcher 13 %
Rocket Launcher 6 %
Lightning Gun 6 %
Item Chance to Spawn
Super Item 7 %
Health Kit 23 %
Armor 20 %
Ammo 50 %
Super Item Chance to Spawn
Quad Damage 40 %
Pentagram 20 %
Ring of Invisibility 40 %
Health Kit Chance to Spawn
Megahealth 10 %
25 HP Pack 40 %
15 HP Pack 50 %
Armor Chance to Spawn
Green Armor 50 %
Yellow Armor 35 %
Red Armor 15 %
Ammo Chance to Spawn
Shells 35 %
Nails 35 %
Rockets 15 %
Cells 15 %
Final Word

Well, that's about it. Go ahead and try the program. I may or may not update this program in the future. Any feedback and suggestions are greatly appreciated, and can be sent to webmaster@jennana.com with a suitable subject title.

Thanks for reading this.