I think it would be a good idea if we had a drawing section.
Most maps begin in the head of the creator then goes straight to edit mode. I think map creation could be greatly improved if before editing, we started drawing and posting sketches before editing. :)
Sketches made by software or scanned. So people could comment or draw something to suggest an idea to make someone else map better.
I know you could do that with "new content" but to motivate drawing, a section would essential. That would be so cool.
Would you like that too?
Some people are better architects than engineers.
johnkills
When you make a layout you have to think about several things.
in this tutorial i show you how to make a playable map like you have seen in Sauerbraten. e.g. Reissen, or Tempest.
This tutorial is only about making the layout, not planning out the design and the theme.
but while making the layout or even before you need to know what theme you are using.
and what kind of map it will be, in sauerbraten you have about 3 main modes:
so basically first think about what you would like to design your map for.
if you start a layout without any concept of what youre going to do it will possibly fail.
but because of the high speed you can work at in sauerbraten, the idea only is enough for a first map.
before we start with the layout we still need to know several things, like:
as a level designer you should place NOTHING randomly not even trees or rocks.
but more about that in chapter 3. design.
Mainly we differ 2 gameplay types.
Core Gameplay
The Core Gameplay is the set of rules and tools you have been given by the engine.
It determines if you can jump, and how high, how fast you run, and how you can interact with the world.
As Level designer you cant change the rules of the core gameplay, they already exist.
A Level designers job is to make the map so it fits to the gameplay.
eg. how much space you have to put between a platform so the player can jump to it.
Map Gameplay
The Map Gameplay defines where a player spawns, and gives the player environmental options to utilize the Core Gameplay.
It also provides the ways and routes to get the enemy flag or base.
What Weapons or other Pickups they can obtain, where, and if its put into a zone where you can get easily hit
The Core Gameplay defines the players toolset within a game,
and the Map Gameplay gives the player the instruments they have to use them for their advantage or disadvantage.
Map Gameplay exists to augment and provide variety in the Core Gameplay.
Always think about the "selling" point of the map.
not that you sell literally the map but there are thousands of maps on Quadropolis. and you have to give the player variety in gameplay and design. so people download your map and play it, and like it!
~to be continued~
next chapter: layout
credits to:
with gramatical support from broghan.
Hourences book: the hows and whys of level design
- August, 2009
A skybox for Cube 2 is 6 images; Front, Back, Left, Right, Up, and Down. These images are used to create a sky, or environment, in which the map is located. Many times, the skybox holds the sun, clouds, and inaccessible terrain. The terrain showed in the skybox cannot be walked upon by the player because it is just an image. More often then none, skyboxes are essential for a map to look real. In this document I will explain how to properly use Terragen Classic in an effort to create a skybox for cube 2. I will be using Sauerbraten Trooper Edition as the game in which I show how to import a skybox. I will also be using Windows and ImageMagick 6.5.4 Q16 (Refer to Links section for download)
In this tutorial we will be using Terragen Classic (Refer to Links section for download) to create our skybox. I will not provide help for creating terrains in Terragen throughout this tutorial. Go ahead and create your terrain and world. After you have got a decent world in Terragen, place your camera where you want to render your images at. The camera orientation does not matter at this point.
To render your skybox, we will use a Terragen Script. The script is as follows:
InitAnim "C:\myskybox", 1
Zoom 1.0
CamP 0
CamH 0
FRend
CamH 180
FRend
CamH 90
FRend
CamH 270
FRend
CamH 270
CamP -90
FRend
CamP 90
Frend
Now, save the script as “Render.tgs” without the quotes, using notepad or your favorite text editor. You will have to edit the line “InitAnim "C:\myskybox", 1” and specify your own directory for skybox render output. Go into Terragen and click Terragen, then Execute Script. Navigate to your Render.tgs and run it. The script will output 6 images. These images will be numbered, and will be in .bmp format. These are not your final skybox images.
After the script has finished, navigate to the folder where the script put your images. You will need to make a “bmp2png.bat” file… or something similar. The ImageMajick script we will be using is as follows:
convert 0001.bmp myskybox_ft.png
convert 0002.bmp myskybox_bk.png
convert 0006.bmp myskybox_up.png
convert 0003.bmp myskybox_lf.png
convert 0004.bmp myskybox_rt.png
convert 0005.bmp myskybox_dn.png
You will need to modify this script and replace “my skybox” with your skybox’s name. For this tutorial we will use “my skybox” as the name. run this .bat in the same folder as your images output by Terragen.
Now that you have your .png skybox images, we can use them in Sauerbraten. Navigate to your Sauerbraten/packages folder and create a new folder. Name it anything you wish. For this tutorial, we will use the name “skies”. Copy your .png images to this folder. Now, go in-game into Sauerbraten and go to a map. It can even be a newmap. This doesn’t matter. Execute “/loadsky skies/my skybox” without the quotes in-game to load your skybox into the map. Your skybox will now appear. That’s it. Your Done. You’ve just created a skybox.
This section is not necessary, unless you want to share your skybox. To package it, we will use the .zip format, as it is pretty much universal. The structure of your .zip file will be as follows:
myskybox.zip
Now that your skybox is in a .zip, all someone has to do is unzip the .zip to their sauerbraten directory. That is all that they will need to do to install your skybox.
Thank you for reading this skybox tutorial. Good day to you.
(THE END)
Terragen Classic -- http://www.planetside.co.uk/content/view/16/28/
ImageMagick 6.5.4 Q16 -- http://www.imagemagick.org/download/binaries/ImageMagick-6.5.8-7-Q16-windows-dll.exe
D/L File: http://www.quadropolis.us/files/Skybox Tutorial.html.txt
This tutorial is not from me, but i can recommend it to everyone who wants to learn cubescript for either SP maps or self use.
but copying it over before it vanishes ;)
i think a guy called "rknigh21" made it have fun
CubeScript
Introduction
Cubescript is the scripting language used by the FPS Sauerbraten/Eistenstern
game engines, it was originally developed by Wouter van Oortmerssen for the Cube
game engine. It's main advantage are high execution speed and compact syntax.
It's syntax is somewhat unusual and requires a bit of getting used to. If you
are completely new to map editing in sauer I suggest reading editing.html in
sauer's docs directory to get the basic hang of it. The reference document for
cubescript commands is editref.html also in the docs directory.
I have moved on to texture blending. I have moved on to experiencing more problems.
In the .cfg I wrote one of the textures to have a second blend layer on it. I proceeded to blend textures, but I realized this texture was everywhere so I was blending when I didn't want to. So in the .cfg I removed the "texlayer" line to make it a basic texture.
When I went back to the map, the texture had somehow 'blended' with the invisible blocks. I tried /clearblendmap and /clearpvs, as well as optimizing geometry (should that help..). I have also found that when I edit the blocks the texture is on (pushing it, then pushing it to the normal shape, for instance) this problem goes away.
Any ideas? I don't want to push every single block, or copy-paste. There must be some direct way of dealing with the problem.
Attached are two screenshots of the problem.
Working on the Grid is important to avoid lags and it makes copy and paste much easier.
You got many Gridsizes, use them! to work with the gridsize and to understand what size i mean
when i talk about it in this tutorial you rather write
delta_edit_1 = [gridpower (+ $arg1 $gridpower) ; echo "Gridsize:^f2" $gridpower ]
in your console or copy it to your autoexec.cfg
when you type this line in your chat you get a message when the grid changes,
that tells you what size (from 0 to 12) you are using at the moment.
this will be useful later in the tutorial,
when we go deeper into the other topics: Flow and Layout
default gridsizes we need:
12~9 - only for copy big parts,like 1 part of a ctf map, not for real editing though
8~7 - for copying smaller parts of the map, like houses, terrains etc
6~5 - for building the Main layout, and making buildings, roofs etc, mountains, materials
4 - default size for Crates, Terrain Size, materials
3 - Size to hollow buildings, making doors, windows, wall thickness,
2 - default size for planks, details, borders
1~0 - Details only, you should NEVER ever create buildings with it
Cause we want to avoid Lagness (WTR)
WTR gives back the number of polygons in your map in k (k = kilo = 1000)
think about like Lagness in Percentage, your map should have not more then 100k (%) WTR
more then 100k causes lag, on good computers maps can have up to 200k~300k wtr
but because Sauerbraten is a platform for poor computers too try to make it 100k
for example Urban_C got 56k WTR, so it wont lag
Continue here:
Chapter 2 - Gameplay