~ lyn ~

~EXPLAINED~

 

By Dano Wilson, Mako studios 2004

 

 

 

 

CONTENTS

 

CHAPTER ONE

Introduction

Lines

Dimensions

The TEXTURE function

The CUBE function

The FACE function

The SPAWN function

The PANEL function

The CIRCLE function

The RAMP function

The SPECIAL function

The BEAM function

The ITEM function

The LIGHT function

 

CHAPTER TWO

The SOUND SOURCE function

The SOUND MAIN property

The SOUND RANDOM function

The NAME property

The AUTHOR property

The FOG property

The VOID property

The SET INDOORS setting

The SET NIGHT setting

Adding Console MESSAGES

The MOVE command

The SHADING property

The SKY property

 

CHAPTER THREE

SPECIAL types

The SALE type

The EXIT type

The MESSAGE type

The WELCOME type

The LAB type

The FORGE type

The FACTORY type

The NUNTERE type

The GRINDER type

The INSTANT type

The SPACHE type

The ALLOW and DISALLOW type

The TRADE_ types

 

CHAPTER FOUR

The CORSET preset

The CAR preset

The COLOR CHART preset
ARENA settings

The SINGLE PLAYER setting

The WATER property

The ORBIT property

The MUSIC property

 

 

CHAPTER ONE


Introduction

 

You have chosen to write maps for the Hymené game engine. To make maps, I have created a language which makes it easier and more efficient, which is universal for other games and systems I have made. It is also possible to code your own map editors using the raw language given here.

 

Lyn maps can be written in simple text documents. It will be slightly different for other games that I have made or will make, but the principles are the same. The only differences will be the commands that you use. This book explains the entire lyn language for HYMENÉ maps, which is pretty much all the commands there are.

 

Every time you make a lyn map, simply rename the .txt extension to .lyn , and you're sorted. Then, put it into the 'hymene/map' directory. You can put subdirectories within that if you wish, as long as you direct where they are when you are loading the maps to play them, and any doors and exits in your maps that lead to other maps. If you are making a town, or a collection of maps that you wish to make official, put them into your own directory, so that it can be seperated from the rest and easier to handle for the administrator.

 

 

Lines

 

The code in Lyn is built up of lines. Each line simply does something. You can manually type the lines yourself, or use an editor that will create the code for you. Some lines you will most likely always have to type, and it is best to have a knowledge of the lyn code in any case, so that you can fix bugs and manually adjust and alter things that the editor might not display. This book will explain the different types of lines

 

 

Dimensions

 

It is best to briefly explain the dimensions of the world to help you understand commands later. Hymené is a fully 3-D world, with X, Y, and Z properties.

 

Z is from north to south, if you where looking from top view. X is from west to east if you where looking top view.

Y is the height, like a building that goes upwards.

The higher the X value, the more east you go, the higher the Z value, the more south you will go.

However, the higher the Y value, the higher upwards you will go, remember that.

When cubes and 3-D areas are created, they are usually placed around the north-west (top-left from top view) corner, and on the Y axis, they are placed at the bottom of the cube.

 

In this chapter we shall cover the basic and most important functions that you will be using most often. A function is something that will add something to your map, and be able to be done several times. A property is something that can be changed that already has a default setting. A setting is something that can be set which originally was not there.

 

 

The TEXTURE function

 

Before building your map, you will need to chose some textures to start with. In Hymené you may have up to ten textures. They go from 0 to 9. It is also possible to use the default textures that load up every time, which can total about 25 textures. For now however, you must chose one or more of your custom map textures.

     

Syntax;

texture [number] [image file]

 

The first value is the number or 'slot' of the texture. This is from 0 to 9. The second is the name of the file. Textures are found in the 'pic/' folder. Since it automatically asigns you to 'pic/', you can type the name of any file within that directory. If there are subdirectories within 'pic/', you must type that too. You must also complete the filename with the extension too. Hymené uses .jpg, but can also use .bmp

 

Examples;

texture 0 rust.jpg

texture 1 world/brick.jpg

 

Note that most textures in the default pic directory will be the ones that are always loaded anyway. They will be explained later in this book.

 

 

The CUBE function

 

The Hymené world is built up of cubes. Each cube has a three-dimensional co-ordinate of X Y and Z, and a height, width, and depth. Each cube also has a texture.

 

Syntax;

cube [x] [y] [z] [x-depth or length] [y-depth or height] [z-depth or width] [texture]

 

As explained in dimensions, cubes are placed on the northwest, at the bottom of the brush. So if you made a simple skyscraper on the floor level of 0, you would place it at 0, and the y depth would allow it to be tall.

 

Note: as with any brush-based command (a 3-dimensional area or block), you cannot have negative depth values (values 4 5 and 6). an inside-out cube or area will not function properly. Place the cube at the right location and you can put it anywhere you want without having to use negative values. If you wish the cube to sink lower, move the Y axis, do not negative the Y-depth.

 

Examples:

cube 2 0 0 2 1 1 1

This example will place a block sightly east, and it will be twice as wide as its length, and just as tall as its length. It will look like two perfect squares placed side by side. Assuming texture 1 is the same as our example above, it will be of a brick texture.

 

cube 2 1 0 1 1 1 0

This example will place a block on-top of the block we have just placed in the previous example. You can see the Y value is 1 more than it was. That is enough to put it up higher by 1. You can see the X depth is 1 instead of 2, so it will simply put a square on top of our rectangle. The texture used this time is texture 0, so you can tell the blocks apart.

 

 

The FACE function

 

It is possible to choose which sides of a cube can be seen or not. Since there are six sides to a cube, there are six values. Each can be 0 or 1. Setting it to 1 will make it visible, and 0 will make it invisible.

 

The main reason for adjusting which faces to display is efficiency and FPS (frames per second). The fewer faces shown, the faster and better the game will run. There will be cubes in your map with faces which don't need to be seen. For example, most floors at the very bottom level only need the top surface shown. The bottom and sides are not needed, and thus waste drawing capacity.

 

Syntax;

face [west] [north] [east] [south] [top] [bottom]

 

The default face settings are all 1 (visible). To change the faces shown, simply put a face line in, and any cube line placed after it will be of that setting. You can keep changing the faces as much as you wish, but it is best to organise your lyn project in such a way to use as few lines as possible. The fewer lines in lyn, the faster it is to download the map for online play.

 

For example, put all your floor sections together in one place so that you only have to use the face once for them. You only need to set face once in order for it to apply to the cubes after it.

 

Although the faces can be visible or not, they are always physically there. The cube interaction does not change. Even if 'face 0 0 0 0 0 0' is set, the cube will be entirely invisible. However, you will still walk into it in the normal way and so will your projectiles.

 

You don't even need to use the face function. You can leave it so that everything is shown if you wish, but it is not as efficient. If you are making maps for administrators of Hymené, try to at least hide faces of large surfaces that are not needed, such as the big main floor sections.

 

You can also use the FACE function for invisible barriers and special ideas as well as efficiency. For example, you could make suspended frame for a platform that is visible, where the main sections are invisible, thus making it look like you are walking on very clear glass.

 

 

The SPAWN function

 

Your default spawning point will be 0,0,0. However, you will obviously be changing this to suit the idea of your map. The SPAWN function will create spawn points, up to 30 if you wish. You are able to set the location of the point, and the angle you start off facing.

 

Syntax;

spawn [x] [y] [z] [angle]

 

Example;

spawn 1 0 2 180

 

So, this example will put you slightly east and slightly more south (1 east, and 2 south). It will put you at angle 180 degrees. This will make you facing south.

 

 

The PANEL function

 

Because a world built of cubes may be rather limited, there is a way to place more customized details into the map quite easily. Although you cannot physically interact with any panels that you place (you will just walk through them), it is possible to put invisible cubes inside the panels to create the illusion that you can.

 

Syntax;

panel [x1] [y1] [z1] [x2] [y2] [z2] [x3] [y3] [z3] [x4] [y4] [z4] [special] [addition] [ratio] [texture]

 

This function will create a four-sided polygon anywhere you wish, with complete freedom of where each corner is located. As there are four corners to the shape, you can see the four individual locations in the beginning of the command. To make it a three sided shape, simply duplicate one of the points.

 

The special and additional function don't need to be used for normal opaque panels. Set them to 0 for default. If you do choose to use them, these are the things you can do with them:

 

SPECIAL

0 will make give your panel the regular opaque look

1 will be the same, apart from it will be unaffected by light points. This is good for signs at night outside bars

2 makes your panel white glass

3 makes it black glass

4 will make it white glass, unaffected by light

5 wil make it black glass, unaffected by light

 

ADDITIONAL

This function will animate the texture of the panel to scroll, almost in a banner-style.

0 means no scrolling, normal

1, 2, 3, and 4 will make it scroll diagonally in a direction. Your best bet is to try experimenting to get the direction you want. This is good for oceans if you use light glass (special set to 2), with a water texture.

 

Nextly, the RATIO setting will set how many textures are displayed. Example, set to 1 will stretch one texture onto the whole panel. 2 will stretch a 2x2 of the texture across the panel. This allows you to do many more effects. For example, if you do a huge panel as a billboard advertisement, and use texture ratio 1, you will be able to blow up the entire 256x256 texture across to suit the size and shape. Cubes always have a texture ratio of 1.

 

Finally, the texture property is the texture you chose to draw the panel with.

 

Example;

panel -1 0 -1 1 0 -1 1 0 1 -1 0 1 2 1 2 0

This will give you a scrolling ocean look, and produce a small square above your head where you spawn at the default location, assuming texture 0 is water.

 

 

The CIRCLE function

 

This function will place a sphere into your map. Like the panels, it is for decoration only, and there is no interaction. To make it solid, simply put an invisible cube inside it.

 

Syntax;

circle [x] [y] [z] [diameter] [texture]

 

Putting circles into Hymené is easy, however there is a catch. The openGL engine will not allow circles to be pre-drawn inside display lists. In fact it simply crashes without any technical explination. Thus, Putting circles into a map rapidly slows the FPS down, because they must be drawn in real-time. If I can fix this bug it will be good, and the majority of todays computers probably wont slow down at all. My advice with placing circles is to just use a few - especially on fighting maps. On non-fighting or non-physical maps, FPS are not as important, so you can use them more generously (ie shops, towns, churches).

 

The diameter is simply the size across. So if you wanted to put a sphere ontop of a square column which is say, 0.5 units wide, you would set the diameter at 0.5 to get it the same width. Also you would put it 0.25 above the column, and 0.25 in the middle. The point indicates the middle of the circle.

 

 

The RAMP function

 

Ramps are basically simple slopes. They where originally not put in until much later. Since ramps are harder for me to code, they are a seperate entity from cubes, and thus have different properties and restrictions. However, ramps where designed to be used as jumps, so if you curve them enough and get the angle right, you can design your own jumps and landing ramps, and so on.

 

Syntax;

ramp [x] [y] [z] [x-depth or length] [y-depth or height] [z-depth or width] [texture] [other] [direction]

 

Firstly, note that the syntax is identical to the cube function, apart from it has two additional numbers at the end. The HOG editor does not display ramps as it was never designed with them, so be careful you know where your ramp is when you place it, because it will be invisible on the editor. Nextly, the face function does not apply to ramps, since it only displays the top surface anyway, it is just the top which is always visible.

 

The other property is not used. It was put there incase of situations in the future where another property would be added. Set it to 0 when you use it.

 

The direction will indicate which of the four directions the ramp will be facing. So if it is facing north, the slope will be sloping upwards towards north. To remember this, think of it as approaching a jump at that same direction.

 

The directions are; 0=north, 1=east, 2=south, 3=west. When building the ramp, place it like a cube in the normal way, but remember that the slope will slope from the bottom of the cube, diagonally towards the top.

 

Example;

ramp -0.5 0 -5 1 0.5 2 0 0

This example would place a ramp directly north of the center, going upwards north at 0.5 units high, and twice as long as it's width.

 

Important Notes

Firstly, I have not yet coded missile->-ramp interaction. This means that your missiles will go straight through the ramps if you fire at them. I am not yet sure whether i will code this or not. It may be a good tactical property to keep if I keep it the way it is, and it would surely save more CPU usage - so keep this in mind when planning tactical maps.

 

Secondly, you cannot stand beneath a ramp. Anyone below a ramp will immediately be forced back ontop of it, that's how it works. Since it was difficult for me to code, it's a small price to pay. Simply make sure that you cannot walk in the area beneath the ramp, by putting most of your ramps and slopes on the floor. You can put ramps within themselves to create 'bowls' and other nice hill designs. Also, remember that a ramp has no sides, so you must manually put the three remaining sides on using cubes or other ramps, or you must make sure that you cannot walk into the sides, otherwise the player will simply snap the height of the ramp. However, this could be used to advantage, such as instant vertical teleporters. Experiment with ramps before you use them, because they are fiddly things to use. As I said before, they where not put in until later.

 

 

The SPECIAL function

 

Now we have come to special brushes. These are universal cubic areas that you can play, like cubes are placed, apart from there are many different types to choose from. They are usually areas which do something when you are standing inside them, such as buying items, or getting near a door or exit. There are many types of special brushes, but the syntax remains the same for all.

 

Syntax;

special [x] [y] [z] [x-depth or length] [y-depth or height] [z-depth or width] [type] [value] [char] [message]

 

Right, the first six properties indicate the area, in the same way as a cube. Firstly take note not to put special brushes too close to each other in situations such as buying items. This will avoid your player being in two areas at once, thus making him accidently buy the other item.

 

The TYPE, VALUE, CHAR, and MESSAGE properties will vary depending on the TYPE. However, certain rules always apply. The TYPE will always be a single word indicating the type, usually in full caps. The VALUE will always be a number, the CHAR will always be a word without any spaces allowed, and the MESSAGE will always be a word, or sentence, with spaces allowed.

 

Now that you know how to place special brushes, the different types will be introduced later in this book.

 

 

The BEAM function

 

This is a simple function allowing you to add elevation beams, which will move your character up or down when they are in the area like an elevator.

 

Syntax;

beam [x] [y] [z] [x-depth or length] [y-depth or height] [z-depth or width] [direction]

 

The direction can be 0 or 1. 0 for down, and 1 for up.

 

 

The ITEM function

 

You are able to place visual items, with the sprites used in the game. This can be used for parked cars, things to buy, statues, trees, shopkeepers with messages, buyable cars, and so on.

 

Syntax;

item [name] [x] [y] [z] [angle] [color1] [color2] [color3]

 

The name is the name used to indicate which sprite it is. Then there are the co-ordinates. Note that sprites such as trees, and people, will be placed at the feet. Even cars will be placed slightly above the point, so place those items on ground level.

 

The angle is simply the angle of rotation, where 180 degrees would be facing south. The colors indicate the three different colors of that item.

 

Certain items will have special options. If you set all three colors to 0 on items such as guns (which already have default colors), then the defaults will be used. If you change them, you can customize them your own colors (such as black for the stone look). So for guns to look like they originally should, set all colors to green which is 0.

 

Here is a quick reminder of the official hymené colors;

 

      [0] green, [1] brown, [2] red, [3] magenta, [4] yellow

      [5] white, [6] black, [7] orange, [8] violet, [9] blue

 

Color 1 is the skin color, 2 is the main color, and 3 is the additional color.

 

There are many other special ways to modify and change the appearance of items, which will be explained later.

 

Example;

item MARKARIGAN 2 0 0 270 0 5 6

This will place a markarigan person directly east of you, facing you, with green skin, wearing a white shirt and black trousers.

 

Again, like panels and circles, you cannot interact with items. You will just walk through them. To make them solid in any way, you must put invisible cubes inside them. This is usually not needed anyway, since you can walk through people and cars in the first place.

 

The idea of items that you buy is that you place a SPECIAL brush with a sale, and then stick the item inside of it. Of course you can put a table there with the item sitting ontop, or whatever.

 

The different types of items will be explained later on in the book.

 

 

The LIGHT function

 

This allows you to place a light source on your map. A light source will generally illuminate things around it and tint them that color.

 

Syntax;

light [x] [y] [z] [intensity] [spread] [red] [green] [blue] [type]

 

Firstly there are the co-ordinates of where the light is placed. Nextly there are the intensity and spread. The intensity is how strong the light is to start with. The spread is how far out it spreads before fading. The art of getting the light right is playing around with the balance of these two properties. It is a question of trial and error. For example, if you wish to make an intense street lamp that only lights a small area, you would put a high intensity with a low spread. If you wish to illuminate an entire map evenly on the other hand, you might lower the intensity, and you would put the spread right up, to around 500. Even I myself have not yet played around with the balances, but i do know the values are optimum at around 1 to 250.

 

The three color values of the light are next in the line. These are each values from 0 to 255. Finally there is the type. The type is a spare variable that was never used, and may only be used later (flashing lights etc). Set this to 0.

 

 

CHAPTER TWO

 

In this chapter we will look at sound functions, and some of the main properties and settings of a map. This chapter is important as you will need to set some of these properties in order to make your map of a proffesional and complete standard.

 

 

The SOUND SOURCE function

 

This function allows you to add a sound to your map which will play at a certain location every so often at a set time. You can use this sort of sound for generators, fires, and other located constant sounds.

 

Syntax;

sound source [filename] [interval] [x] [y] [z]

 

The filename is the name of the wave file. The default folder is 'sound'. Any subfolders must be specified as done in the following example. The interval is the time before the sound is played again, in miliseconds. A thousand miliseconds is one second. Nextly the co-ordinates of where the sound is coming from.

 

Example;

sound source nature/bird1.wav 4000 2 2 0

If this particular wave sound is included in the final version of hymené, this example will play a bird sound every 4 seconds, located slightly east, and above you where you start at 0,0,0.

 

 

The SOUND MAIN property

 

This property is excactly the same as the sound source function, apart from the location part is slightly different. The syntax is the same, but the sound will always come from the area that far away from you.

 

For example, if the same example with the bird sound is used, then you will always hear a bird east and slightly above you, no matter where you are standing. Most sound main functions are set to 0,0,0 anyway, to make the sound generally where you are.

 

Note that you can only have one main sound per map. You can have up to ten of each other sound type. The syntax for this property is the same as the sound source function. The reason that it is called a property is because it is a setting, and does not add main sounds. There is only one possible sound, therefore it is a property.

 

 

The SOUND RANDOM function

 

It is possible to add an ambient sound like the other sound functions, apart from the location will randomly change every time. You do not bother to specify the location. This is good for birds singing all around you, or thunder in the background or something. This way you don't have to specify every single bird! It will randomly make the illusion that they are all around.

 

Syntax;

sound [filename] [interval]

 

 

 

 

 

 

 

The NAME property

 

This will set the name of your map, displayed at the bottom of the screen for the player. It may have spaces.

 

Syntax;

name [name of map]

Examples;

name The Big Hill

name Cavern of Doom

name Cliveville

 

 

The AUTHOR property

 

This will simply set a name of the maps' author. It is not important, but it is a signature of who made the map. It can have spaces.

 

Syntax;

author [name of author]

Examples;

author Aidan Tighe

author Spider

 

 

The FOG property

 

This property sets the color of the sky, and the thickness of the fog. Without this function, there will be no fog, and the sky will be black like space.

 

Syntax;

fog [red] [green] [blue] [fog thickness]

 

The red green and blue are the colors from 0 to 255.

 

The fog thickness set to 0 would be no fog. Set to around 5 would be mild fog. Around 20 would be thick fog, and around 50 would probably be unplayably thick.

 

Example;

fog 0 150 255 0

This would make a nice blue sky color with no fog.

 

fog 255 255 255 20

This would make thick white cloudy fog.

 

 

The VOID property

 

This will determine how far you can fall before you 'die'. The default property is rather low itself, but you may wish to change it for special maps, or maps that go far downward. You don't have to use this command hardly ever.

 

Syntax;

void [y]

 

The Y is how far down vertically the void is. It is a negative number, and the lower negative you go the lower the void will be. If you put the void on or above 0 you will most likely automatically die when you enter the map. Great fun eh.

 

 

The SET INDOORS setting

 

Although there is also the same 'set outdoors' setting too, it is not needed since outdoors is the default setting. By setting indoors on your map, you are not allowing cars to be driven, and not allowing outdoor server weather to be applied. If in doubt, set indoors. Set arenas to indoors too even if they are outside, so that the weather and coloring is always the same

 

Syntax;

set indoors

 

 

The SET NIGHT setting

 

There are two ways to color your map. One is start with everything fully lit, and to tint later and add black lighting for shadows. The other way is to start from complete blackness and work your way up. By setting the NIGHT setting, that is what you are doing. All the default colors will be 0,0,0 as apposed to 255,255,255. This means that without light, negative shading, or color charting, you will not be able to see anything but black. Of course if the sky is brighter you will be able to see the siloutte. This method is strongly recommended for getting the coloring just right

 

Syntax;

set night

 

There is also a set day command, but it is not needed since daytime is the default setting.

 

 

Adding Console MESSAGES

 

You can add simple lines of text in the document which will be displayed to the player in thier console when they load the map. This can be a welcoming, or credits, or rules. It can be any information that you chose. Be sure not to let each line go past 63 chars, as it will go off the edge of the screen. When you go above 63, use another line to continue the text.

 

Syntax;

* [message]

Examples;

* Welcome to the rocky path of death and blood

* Be sure to avoid the evil forest to the east

 

 

The MOVE command

 

This is a special command. It is possible to MOVE your center of axis before placing things on the map such as cubes and panels etc. This is useful for copying and pasting (using par and coda) and for finely adjusting areas. However it doesn't apply to everything so be careful how you use it. Try to use it only for physical structures that you wish to duplicate. The default values are 0,0,0.

 

Syntax;

move [x] [y] [z]

 

Always be sure to set the move back to 0 0 0 before continuing to build things, otherwise you will find everything shifted. Use it only for par and coda if you can.

 

 

The SHADING property

 

This is a simple command which will automatically apply vertical shading on the bottom of every brush. It is not often used since color charting is more accurate and has more freedom, but it's a good effect to add. It adds to color charting, it does not over-ride.

 

Syntax;

shading [value]

 

The value is a number, which determines how much red green and blue to deduct off each color on the bottom four corners of the cube. If you set it to 0, nothing will happen. If you set it to around 50 you will have subtle shading. At 255, it will shade all the way to black.

 

 

The SKY property

 

Finally after many years, the sky function was easily added to Hymené.

 

Syntax;

sky [red] [green] [blue] [size] [texture]

 

This function is very simple. The colors are from 0-255 and will color the sky how you wish, 255 being brightest. The size is the size of the circle which is drawn to represent the sky. The texture is the texture used on the sky.

 

Make sure you save a texture for the sky, or use the built in sky texture for explosions to save texture space. Also make sure the sky is big enough but not too big that it disappears. The circle will always be drawn around the player like his own little dome, giving that indication of a sky.

 

Alternatively you can use a SPHERE function in the same way but it will stay put. This means that falling off the map will cause you to fall through the sphere thus giving the illusion of planets. I will leave you to explore that idea yourself.

 

 

 

CHAPTER THREE

 

This chapter will concentrate on special brushes and some of the basic things you can do with them.

 

 

SPECIAL brush types

 

When you place a special brush down, you get to choose a TYPE. Each type has three different properties depending on which type it is. These three properties are VALUE (a number), CHAR (a single word), and MESSAGE (a word or many words.) The principles of a special brush are usually the same; if you are in that cubic area, it is activated. Here I will list all the different types, and how to use them.

 

NOTE: If any of the three properties are not specified, then they are not used. Any property that is not used should be set to something anyway, so set unused values to 0, and set unused chars and messages to NULL and NULL.

 

 

The SALE type

 

When you are in this area, a sale option will come up, telling you the details of a product, giving you the choice to buy it. To buy the item the player has to press the action key.

 

The CHAR becomes the CHAR_CODE of the item, the VALUE becomes the price, and the MESSAGE becomes a message you can write to advertise or explain about the product. You must see the CHAR CODES to see the different products you can sell.

 

 

The EXIT type

 

When you press the action key in this area, you will be taken to a different map. The CHAR becomes the name of the map, including any subfolders that would be in the map directory. The VALUE becomes the spawn point number on that next map, and the MESSAGE becomes a message telling you where you're going and so on.

 

The spawn point is the most tricky thing to do in lyn. You must pick which spawn point to go to, but you must also know which spawn points are which on the opposite map. To work this out, remember that the first spawn point you place will be number 0, then 1, and so on (up to 30). It is a good idea to put comments on your spawn point telling you which number it is. Once you know which spawn point it is, that is the value.

 

For example, if you know that the opposite map only has one spawn point on it, then it's obviously going to be number 0. Never put a spawn point inside an EXIT brush. Make sure its at least a quarter unit (0.25) away from it. This will avoid someone spawning, accidently pressing action key (out of impatient frustration!) and then immeditately going back (because there is also a door placed on the other map.)

 

 

The MESSAGE type

 

When you're in this brush, there will be a text saying "press action to read this message". When the player holds the action key, you will be able to see the message. The MESSAGE becomes the message, while the CHAR becomes a title (with no spaces). It is a good idea to use the CHAR for example, as the persons name, so CHAR="Bob" and MESSAGE="Hey I'm bob want some nuntergobber?"

 

 

The WELCOME type

 

This type is excactly the same as the message type, apart from it automatically displays the message when you are in the brush. These are better to use than message types, because it's right there and the user doesn't have to press action.

 

 

The LAB type

 

When the player is in a LAB type, he is able to build laboratory items using chemicals. When he walks away from the type, his building cannot continue until he goes back. It is good to put this type around a laboratory desk area, or inside a laboratory room for people to work. It is a type of manufacturing. The three values are not used.

 

 

The FORGE type

 

This is another manufacturing type, apart from it is with weapons and items such as that. It is good to put a forge around a blacksmiths forge, anvil, or fire area. The three values are not used.

 

 

The FACTORY type

 

The other manufacturing type, the factory allows people to build cars and other weird metal stuff. Put it around machines and rooms filled with machines and so on. Read more about the game client itself in order to find out how these manufacturing brushes work. The three values are not used.

 

 

The NUNTERE type

 

NUNTERE is a type of bush that grows in the world of hymené. It is the home of a special rare type of moth called the coyna moth. Coyna means gold in markarigan, thus, it is possible to catch the moths and create Nuntergobber. Put these areas above your nuntere bushes above 0.5 high, so that when the player attempts to punch that area, he is able to catch these moths.

 

When you do a nuntere type, the VALUE becomes the amount of potential moths to catch. While 5 is very few, 50 would be very many. The other two properties, CHAR and MESSAGE, are not used.

 

 

The GRINDER type

 

Once a person has collected many coyna moths, he may grind them in this GRINDER. Put this area around a grinder that you have built, however it may look. The three properties are not used.

 

 

The INSTANT type

 

An instant is a different kind of item that you can pick up. When you pick it up, it instantly takes affect. This is useful for sitting at a bar and buying drinks like shots and so on. It is also good for items which immediately work just the once, such as spraying your car different colors and textures.

 

With an INSTANT type, the VALUE becomes the price of the item, the CHAR becomes a default legal code which is 9999. It is not really used so set it to 9999. The MESSAGE becomes the name of the item, with spaces included. The name must be precise from the instants list in order to work.

 

 

The SPACHE type

 

This type is rather important. Since spache is the markarigan word for special, it is thus a special item sale. Special items have different properties to normal items. There are more of them, you can only have one of each at a time, and you can only carry up to ten. Special items can always be added into the game with ease. They where originally put in at a later time because the RPG element was added.

 

Every type of SPACHE item has its official name, and its legal code. The legal code is always a four-digit number. The name and code must be precise (including case sensitive) in order to work. You must consult the list of spache or special items in order to know which items there are available.

 

When placing a SPACHE type, the VALUE becomes the price, the CHAR becomes the four-digit legal code, and the MESSAGE becomes the case-sensitive name.

 

 

The ALLOW and DISALLOW type

 

These two types are used for single player mode, with ai badguys. It indicates the areas they are allowed, and not allowed to go in. By default they are not allowed in any area until you put an ALLOW area in. The reason for using DISALLOW areas is to put them inside allow areas where there may be columns or other obstacles, instead of making many allow areas around that obstacle which would take up more code and cpu.

 

The properties are not used, so set them to 0, null, and null. Note that it is always a good idea to set the default value to 0 if not used in any special brush case, just incase something is added later, and your random number you put in affects everything greately. 0 is always a safe number to use.

 

More will be explained about ai badguys later in this book.

 

 

The TRADE_ types

 

There are several of these types, for example TRADE_WEAPON. These areas are trade centres where players can trade the items they have bought or created at trade price. However they can only trade that particular item if the item type matches the trade type. These are the different trade types;

 

      TRADE_WEAPON

      TRADE_WAHALECH

      TRADE_DRUG

      TRADE_INDUSTRIAL

      TRADE_BOOK

      TRADE_MATERIAL

      TRADE_CHEMICAL

      TRADE_TRANSPORT

 

There may be items with a different type, therefore a new trade center type can be made for them. These are the basic item types. This includes standard items, not spache items or instants. They cannot be traded. There are no properties in the trade area types.

 

 

 

 

 

CHAPTER FOUR

 

Things get a little more complex in this chapter, which looks into special twists to customize many things, bringing you many more options and extensions to what you already have.

 

 

The CORSET preset

 

This line of code will set the potential characteristics of a manipulated character body shape. The modifications possible are corsets, earrings, horns, and general body shape.

 

Syntax;

corset [waist] [bust] [neck] [horn] [hip] [low] [victorian] [kirk] [ear]

 

As you can see there are nine individual properties. These are all numbers, with a default value of 0. When a number is changed, it will slightly modify one of these body features.

 

The WAIST modifies the waist size. The lower the value, the thinner the waist.

The BUST dictates how wide the top of the body/shoulder area is. The higher the number, the wider the bust.

The NECK indicates the length of the neck, but does not make a person taller or shorter. It raises the bust area to shape the body thus making the neck higher or lower. The higher the number the lower the neckline, and the more feminine it might appear.

The HORN value will modify the length the horns go vertically. Higher numbers makes them fall more Wahalech, while a negative number will make them go upwards more like a Meracan or Markarigan.

The HIP value indicates how wide the hips are. Of course, the wider the better, lol.

The LOW value indicates how low The hips go, where it builds more in the thighs. The higher the value, the lower the hip line, and the more feminine it may appear to look.

The VICTORIAN value indicates the vertical waistline. The higher the number, the higher the waistline, making it more feminine and more victorian-shapes. The lower the number, into negatives, the more masculine the waist will appear.

The KIRK value is the width of the neck, which also joins onto the shoulders. By lowering the neckline and making the kirk value wider, will give the illusion of softer shoulders, and a lower-cut top. To make the shoulders/neck wider, a positive value will do so.

The EAR value indicates how long the earrings are. A negative value should make them go upwards and upsidedown. It has never been tested.

 

If you do not wish to modify a body feature, set the value at 0. Here are some official examples that are used in the game, so take note especially when placing a corset sale item.

 

// lindelle corset

corset -5 2 7 0 0 2 5 1 0

 

// miri corset

corset -4 2 7 0 0 0 0 1 0

 

// charis corset

corset -6 2 7 0 2 3 9 1 0  

 

What does the corset line actually do? It presets the potential for another command to use it. If you follow an ITEM line after this corset preset, and you place a person such as a markarigan or wahalech, that person will have the corset modifications applied to him. The next item placed after that person will not, so you will have to do a corset line for each individual modified piece. This appies to earrings and horns and differently shaped people too.

 

Example;

corset -5 2 7 0 0 2 5 1 0

item WAHALECH 0 0 0 180 4 5 6

 

This bit of code will place a Wahalech character wearing a lindelle corset.

Note that it will not apply to all sprites you wish to draw as that. For example, Markarigans have no horns, so the horn value will not affect them. Other models such as the slither will not allow body values to alter them, because they are drawn in a different way. Angels should be able to accept the changes.

 

 

The CAR preset

 

This is another line like the corset line, that will preset values potentially for commands after it. This however, will set the properties of a car.

 

Syntax;

car [color1] [color2] [color3] [damage] [texture] [turbo] [brakes] [ac] [ver] [save] [model]

Example;

car 0 0 0 500 12 0 0 15 0 0 Saloon Car Supreme

 

Color1, color2, and color3 are the three colors of the car.

Damage is the damage the car can take before it's busted. 500 is a brand new average car. Anything less is used.

Texture is the texture number which is used, from the raw inside hymené textures.

 

TURBO is optional. It's an increase of top speed. Leave it at 0 for default car.

BRAKES is the same as turbo, but the increase of brake power. 0 will leave it un-modified.

AC is the extra acceleration modifier. Leave it 0 for default.

VER is vertical boosters built in or not. 1 will allow the car to fly, 0 will leave as default.

SAVE is the replaced armor save. Leave it at 0 for the default, set it to another value to replace it.

MODEL is the name of the model, with spaces allowed. It does nothing to the car model or the car itself. It is simply a name reference to know what car model you have, where there are many different models of cars, and many different modified series and editions of those cars.

 

Check for updates on the model value, because it is possible that the end of the model sentence will dictate the orientation of the car. ie; man/manual, M will indicate manual, aut,/automatic, A will indicate automatic, and sem/semi, S will indicate semi-automatic. This area is not yet finished. There will be a default orientation, which will probably be semi or automatic.

 

Now when you place an ITEM line after the car, be sure to keep the colors the same and the car sprite name to match your model (like ITAS, NULO etc), see the list of sprites for that. The texture will force to what you set the car preset as.

 

In addition to that, you can place a special SALE line after that, which will also suck in the car preset properties, giving you a complete for-sale customized car. Here is a prime example from the original town of Ruhu Central;

 

// itas turbo

car 2 4 2 500 22 100 20 20 0 0 Itas Turbo

item ITAS -2.75 -0.25 -26 353 2 4 2

special -3.5 -0.25 -27.25 2 1 3 SALE 7000 ITAS Itas Turbo, Very nice, @ 7000 mz, it's yours!

 

Note: When making maps in the hand of God, there is a system to doing this process. Before you set your car line using the car line menu from the top, open up the ITEM type and set the item colors there. Leave it open, then do the car line and build that. Then complete the ITEM and place that, then do the special SALE seperately. Basically, the car line shares the color setting from your current item color settings.

 

 

The COLOR CHART preset

 

This is a new feature which completely changed the potential look of Hymené. Instead of just having light points to color and give moods to your maps, which can take up a lot of CPU when in excess, COLOR CHARTING is a quicker way to manually dictate the colors of cubes and features. By setting one color chart line, it is possible to shade and tint the entire map to totally alter the mood and theme you wish to achieve.

 

Color charting allows you to Manually dictate the red green and blue values of each corner of a cube. It also works for panels, and spheres. Since there are three colors, and 8 corners on a cube, there are 24 values in a color chart command.

 

Syntax;

color chart [r1] [g1] [b1] [r2] [g2] [b2] [r3] [g3] [b3] [r4] [g4] [b4] [r5] [g5] [b5] [r6] [g6] [b6] [r7] [g7] [b7] [r8] [g8] [b8]

 

As you can see it's rather simply, red of point 1, green of point 1, blue of point 1, red of point 2, and so on. The values are from 0 to 1, and with any number in between you wish. 0 would be black, and 1 would be bright default. You cannot color chart white, but only to the textures default brightness. It is like lighting. If you set all the values to 1, everything will look plain like it first did. Using this manual way of shading and coloring, you can color everything, or slightly shade things to give shadow illusions and glowing effects.

 

You are able to have up to 100 color charts in one map, which is more than enough, considering just one will do a lot in itself. Simply set the color chart line, and any cube panel of sphere after it will be altered by it. Set another color chart somewhere down the line and anything after that will apply to that, and so on.

 

Color charting does not over-ride lighting. You can put lighting ontop of colorcharting also! It will also not mess up the weather and time of day. At night-time it will all tint down and work out fine. It does not slow down the game either, unless you are running in REALTIME mode.

 

 

ARENA settings

 

These are settings that will set and change the arena environment. By default, your map will be taken seriously as an official public area. If you die, you die, and if you progress, you're information is carried with you. The default setting for a Hymené map is RPG online play, with the whole works. If you wish for it to be an arena for fighting, you must set that.

 

set arena

 

This command will set the map to arena mode. This means that you will be carrying nothing when you enter this map, and when you die, you will respawn and play on. It's like an official sport, where death cannot happen. Everyone will be, or should be equal and ready to fight just for fun. Of course if you're a little drunk or on hymené drugs, they may affect your performance. Once in arena mode you can set further properties, such as which guns you start off with, and armor etc.

 

arena gun 1

arena armor 1

 

The ARENA GUN command sets which gun you start off with in your hands. In this case, gun 1 is the rocket launcher. The ARENA ARMOR command is the same but with which armor will you begin wearing. In the example, it is the slither. Of course you must own these weapons and armor if you are to start off with them, otherwise you wont have any ammo, and when you change gun it will magically vanish, which can't be good.

 

arena rocket 50

arena fan 50

arena fork 50

arena shotgun 50

arena grenade 50

arena rail 50

arena star 50

arena sherker 1

 

This will give you not only the guns, but the amount of ammo specified too. In this example if gives you all the guns shown plus 50 ammo for each, and 1 sherker. Since a sherker has no ammo, just the one is required.

 

arena hymene 1

 

This will allow you to actually own the slither armor, which is needed if you wish to start off wearing it.

 

arena zartanian 1

arena royal 1

arena robe 1

 

These last three options are zartanian (angel, light of eden), royal (be a dragon), and robe (sherker robe). These are counted as armor and can be worn. To wear them when spawning, use the arena armor [value] to do it. The values are 1=slither, 2=royal, 3=angel, 4=robe, and of course, 0=no armor, leaving you as a markarigan or wahalech as you have pre-chosen anyway.

 

When you leave an arena, which you should have a door somewhere so that people can leave to disconnect, you will be given back all your original belongings, and the performance of the arena will not affect your character in anyway.

 

 

The SINGLE PLAYER setting

 

This quite simply allows you to set the map as single player. This will allow AI (enemies) and level progression, and when finished, save game without being online etc. The single player element is yet to be explored, but AI has been done.

 

Syntax;

set single player

 

Quite simply, that is how to set the map to single player mode.

 

 

 

 

The WATER property

 

This apparently sets the water level but water physics have not yet been done. It works just like the void command, and the default is very low too. Don't worry about this command for now unless you are serious about water. If you do make an ocean, be sure to make sure all water is on the same Y-level everywhere on your map, and set this value to that level.

 

Syntax;

water [y]

 

 

The ORBIT property

 

Yet another non-finished property which may become interesting in the future. Since spacey maps where more of a Brawl 2 thing, this property was left aside. It's the same as void but higher up. This level is supposed to determine how high you can go before you leave the atmosphere, and gravity dissapears. It is not yet done, so don't worry about this command yet.

 

Syntax;

orbit [y]

 

 

The MUSIC property

 

This command is not used either, but incase it ever is completed, it will set midi music of the level as a filename. There would most likely be a music folder automatically assigned, so simply put the filename in on it's own complete with the .mid extension.

 

Syntax;

music [midi filename]