project-navigation
Personal tools

Author Topic: Making new map, any suggestions?  (Read 13004 times)

Offline Llamageddon

  • Rookie
  • ***
  • Posts: 17
    • View Profile
Re: Making new map, any suggestions?
« Reply #15 on: September 01, 2011, 05:21:20 pm »
OK, making progress, understanding the RMA a lot better now.

Edit: All these are using the second assembly, I will scrap the first one once I have worked out why it totally crashes rather than giving an error.

Still not much to show but here is the code:
Code: [Select]
// *********************************
// DESERT THEME
// *********************************

base desert_rock/

//---------------------------------// Tiletypes
// ------
// d: dropship
// h: raised horizontal
// o: step up to the North
// l: step up to the East
// 2: step up to the South
// 4: step up to the West
// p: step up to the NE
// 3: step up to the SE
// 1: step up to the SW
// i: step up to the NW
// w: outcrop NE
// s: outcrop SE
// a: outcrop SW
// q: outcrop NW
// u: raised flat area
// 5: low flat area
// a: ufo/alien squad

//Dropships
tile +des_craft_drop_firebird
{
6 3
0   hu2  hu2  hu2  hu2  0
u4  +du  +du  +du  +du  ul
0   huo  huo  huo  huo  0
}

//Landscape
tile +des_rock_u_h
{
6 3
0   hu2  hu2  hu2  hu2  0
u4  +hu  +hu  +hu  +hu  ul
0   huo  huo  huo  huo  0
}

tile +des_rock_d_flat
{
4 4
0    o5   o5    0
45   +5  +5   15
45   +5  +5   15
0    25   25    0
}

tile +des_rock_d_flat2
{
4 4
0    o5   o5    0
45   +5   +5   15
45   +5   +5   15
0    25   25    0
}

tile +des_rock_u_flat
{
4 4
0    u2   u2    0
1u    +u   +u   4u
1u    +u   +u   4u
0    uo   uo    0
}

tile +des_rock_n_u
{
4 4
0    u2   u2    0
u    +ou  +ou   u
54   +o5  +o5   51
0    52   52    0
}


tile +des_rock_s_u
{
4 4
0    5o   5o   0  
0    +25  +25  0
0    +2u  +2u  0
0    u5   u5   0
}

tile +des_rock_e_u
{
4 4
0    5    u1   0  
54   +l5  +lu  u4
54   +l5  +lu  u4
0    5    u1   0
}

tile +des_rock_w_u
{
4 4
0    ua   5o   0  
u1   +4u  +45  51
u1   +4u  +45  51
0    u5   u5   0
}

tile +des_rock_ne_u
{
4 4
0    uo   uo   0  
uo   +2u  +2u  u4
5o   +25  +2u  u4
0    52   u5   0
}

//Alien Hotspots
tile +des_craft_ufo_scout
{
4 4
0    o5    o5    0
0    +a    +a    0
0    +a    +a    0
0    25    25    0
}

assembly des_rock_test
{
title "_Desert"
size "8 8"
grid "1 1"
+des_craft_drop_firebird "1 1"
+des_rock_u_h "1 3"
+des_rock_d_flat "1 4"
+des_rock_n_u "1 4"
+des_rock_s_u "1 4"
+des_craft_ufo_scout "1 4"
}

assembly desrocktest2
{
title "_Desert2"
size "8 8"
grid "2 2"
+des_rock_d_flat2 "1 2"
+des_rock_d_flat "0 12"
+des_rock_n_u "0 8"
+des_rock_s_u "0 8"
}

Still need to tweak some of the tile definitions I know. Results are this:







I hope it goes without saying that the brushes are just for a rough outline and I will be adding detail and making it look a lot more organic for the proper release. I'm going to work on getting escarpment corners/outcrops etc working so there is some real variety to the map. Not sure if I am naming my .map files well, I understand the syntax I've created but is there any standard mappers are encouraged to stick to?

Just for reference this my base tiles map where I store a collection for reference, might give you a closer idea of what I am trying to do with the RMA. Right now all my tiles are 2x2 big with the exception of the Firebird which is 4x1 and a 4x1 filler to go next to it to avoid confusing the RMA.

« Last Edit: September 01, 2011, 05:24:40 pm by Llamageddon »

Offline Llamageddon

  • Rookie
  • ***
  • Posts: 17
    • View Profile
Re: Making new map, any suggestions?
« Reply #16 on: September 01, 2011, 07:30:22 pm »
Just realised I'm making it overcomplicated. No need to have the level up/down transition on the centre of a tile when I could have it on the edges and get things to align logically in the UMP.

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
Re: Making new map, any suggestions?
« Reply #17 on: September 01, 2011, 10:25:21 pm »
try to not define that many different tile types - you might get in trouble with it, and maintaining this is often a nightmare.

Offline Llamageddon

  • Rookie
  • ***
  • Posts: 17
    • View Profile
Re: Making new map, any suggestions?
« Reply #18 on: September 02, 2011, 05:30:54 am »
try to not define that many different tile types - you might get in trouble with it, and maintaining this is often a nightmare.

Oops;
Code: [Select]
// *********************************
// DESERT THEME
// *********************************

base desert_rock/

//---------------------------------// Tiletypes
// ------
// p: dropship
// o: crash/landing site
// s: generic 1st level tiles
// g: generic 2nd level tiles
// 1: cliff
// i: vertical 2nd level tile
// l: horizontal 2nd level tile
// k: vertical 1st level tile
// j: horizontal 1st level tile
// m: ramp
// u: corner tile
//
//
//
//

//Dropships
tile +des_rock_craft_drop_firebird_132
{
3 5
0   0    0
0   +pg  0
0   +pg  0
0   +pg  0
0   0    0
}

//Alien
//Alien Hotspots
tile +des_craft_ufo_scout_221
{
4 4
0    s1m     s1m     0
ms1    +ls   +ls   ms1
ms1    +ls   +ls   ms1
0    s1m     s1m     0
}
//Landscape

tile +des_rock_df111_01
{
3 3
0    s1m   0
s1m   +s   s1m
0    s1m   0
}

tile +des_rock_df221_01
{
4 4
0    s1m   s1m   0
s1m   +s   +s   s1m
s1m   +s   +s   s1m
0    s1m   s1m   0
}

tile +des_rock_dfh211_01
{
4 3
0    s1m   s1m    0   
s1m   +s   +s    s1m
0    s1m   s1m    0
}

tile +des_rock_dfv121_01
{
3 4
0    s1m   0
s1m   +s   s1m
s1m   +s   s1m
0    s1m   0
}


tile +des_rock_uf112_01
{
3 3
0   g1m   0
g1m   +g   g1m
0   g1m   0
}


tile +des_rock_uf222_01
{
4 4
0    g1m  g1m   0
g1m   +g   +g   g1m
g1m   +g   +g   g1m
0    g1m   g1m   0
}

tile +des_rock_ufh212_01
{
4 3
0    g1m   g1m   0   
g1m  +g    +g    g1m 
0    g1m   g1m   0
}

tile +des_rock_ufv122_01
{
3 4
0    g1m   0
g1m  +g    g1m
g1m  +g    g1m
0    g1m   0
}

tile +des_rock_pne111_01
{
3 3
0    g1m   0
s    +u1   g1m
0    s     0
}

tile +des_rock_pse111_01
{
3 3
0    s     0
s    +u1   g1m
0    g1m   0
}

tile +des_rock_pnw111_01
{
3 3
0    g1m   0
g1m  +u1   s
0    s     0
}

tile +des_rock_psw111_01
{
3 3
0    s    0
g1m  +u1  s
0    g1m  0
}

tile +des_rock_ucn112_01
{
3 3
0    g    0
1um   +1   1um
0    s    0
}

tile +des_rock_uce112_01
{
3 3
0    1um   0
s    +1   g
0    1um   0
}

tile +des_rock_ucs112_01
{
3 3
0    s    0
1um   +1  1um
0    g   0
}

tile +des_rock_ucw112_01
{
3 3
0    1um   0
g    +1   s
0    1um   0
}

tile +des_rock_rqn112_01
{
3 3
0    g    0
1    +m   1
0    s    0
}

tile +des_rock_rqs112_01
{
3 3
0    s    0
1    +m   1
0    g    0
}

tile +des_rock_rqe112_01
{
3 3
0    1   0
s    +m   g
0    1   0
}

tile +des_rock_rqw112_01
{
3 3
0    1   0
g    +m  s
0    1   0
}

tile +des_rock_uf112s_01
{
3 3
0    0   0
0   +g   0
0    0   0
}

assembly drtest1s
{
title "_Desert"
size "4 4"
grid "1 1"
//+des_rock_uf112s_01 "1 1"
+des_rock_craft_drop_firebird_132 "1 1"
+des_craft_ufo_scout_221 "1 1"
//+des_rock_df221_01 "0 1"//
//+des_rock_uf222_01 "0 1"//
+des_rock_df111_01 "0 6"
+des_rock_dfh211_01 "0 1"
+des_rock_dfv121_01 "0 1"
+des_rock_uf112_01 "0 6"
+des_rock_ufh212_01 "0 1"
+des_rock_ufv122_01 "0 1"
+des_rock_pne111_01 "0 1"
+des_rock_pse111_01 "0 1"
+des_rock_pnw111_01 "0 1"
+des_rock_psw111_01 "0 1"
+des_rock_ucn112_01 "0 2"
+des_rock_uce112_01 "0 2"
+des_rock_ucs112_01 "0 2"
+des_rock_ucw112_01 "0 2"
+des_rock_rqe112_01 "1 1"
+des_rock_rqw112_01 "1 1"
//+des_rock_rqn112_01 "0 1"//
//+des_rock_rqs112_01 "0 1"//
}

assembly drtest1m
{
title "_Desert"
size "5 5"
grid "1 1"
//+des_rock_uf112s_01 "1 1"
+des_rock_craft_drop_firebird_132 "1 1"
+des_craft_ufo_scout_221 "1 1"
+des_rock_df221_01 "0 1"
+des_rock_uf222_01 "0 1"
+des_rock_df111_01 "0 6"
+des_rock_dfh211_01 "0 1"
+des_rock_dfv121_01 "0 1"
+des_rock_uf112_01 "0 6"
+des_rock_ufh212_01 "0 1"
+des_rock_ufv122_01 "0 1"
+des_rock_pne111_01 "0 2"
+des_rock_pse111_01 "0 2"
+des_rock_pnw111_01 "0 2"
+des_rock_psw111_01 "0 2"
+des_rock_ucn112_01 "0 2"
+des_rock_uce112_01 "0 2"
+des_rock_ucs112_01 "0 2"
+des_rock_ucw112_01 "0 2"
+des_rock_rqe112_01 "1 1"
+des_rock_rqw112_01 "1 1"
+des_rock_rqn112_01 "0 1"
+des_rock_rqs112_01 "0 1"
}

assembly drtest1l
//SOMETIMES CRASHES Error: R_ModAddMapTile: maps/desert_rock/de.bsp (or similar)//
{
title "_Desert"
size "6 6"
grid "1 1"
//+des_rock_uf112s_01 "1 1"//
+des_rock_craft_drop_firebird_132 "1 1"
+des_craft_ufo_scout_221 "1 1"
+des_rock_df221_01 "0 4"
+des_rock_uf222_01 "0 2"
+des_rock_df111_01 "0 8"
+des_rock_dfh211_01 "0 3"
+des_rock_dfv121_01 "0 3"
+des_rock_uf112_01 "0 8"
+des_rock_ufh212_01 "0 2"
+des_rock_ufv122_01 "0 3"
+des_rock_pne111_01 "0 3"
+des_rock_pse111_01 "0 3"
+des_rock_pnw111_01 "0 3"
+des_rock_psw111_01 "0 3"
+des_rock_ucn112_01 "0 4"
+des_rock_uce112_01 "0 5"
+des_rock_ucs112_01 "0 4"
+des_rock_ucw112_01 "0 5"
+des_rock_rqe112_01 "1 1"
+des_rock_rqw112_01 "1 2"
+des_rock_rqn112_01 "0 2"
+des_rock_rqs112_01 "0 1"
}

Might explain why it starts to crash around 6x6 and higher or is that a hardware limitation? The map tiles are very very basic at the moment but had some good RMA results though:






The problem with larger maps is that certain tiles start to stop rendering or the game tries to load a shortened filename:




Offline tilli

  • Rookie
  • ***
  • Posts: 72
    • View Profile
Re: Making new map, any suggestions?
« Reply #19 on: September 02, 2011, 09:07:22 am »
Quote
try to not define that many different tile types - you might get in trouble with it, and maintaining this is often a nightmare.
completly agree with that.
Try to cut it to the minimum for starters, then expand slowly.
and really think about marking the tiles, you will otherwise search yourself gray with finding that small brush witch doesn't fit in all those many similar looking tiles.

What about some boulders dotting the landscape?

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
Re: Making new map, any suggestions?
« Reply #20 on: September 02, 2011, 10:17:38 am »
you should also not make a lot of very small tiles - but some biggers, too - only small tiles if you need fillers somewhere. this has advantages for our rma algo and for the map balance (though the later point is the more important one).

Offline Llamageddon

  • Rookie
  • ***
  • Posts: 17
    • View Profile
Re: Making new map, any suggestions?
« Reply #21 on: September 02, 2011, 12:54:34 pm »
OK, will follow your advice, I do have some larger tiles cut up. I kind of thought smaller tiles would end up with with a much wider variety of possible layouts which is why I was keeping the tiles quite small. I will definitely be adding things like boulders, I was going to cut up the terrain brushes more to make them more detailed and varied first. Can anyone tell me why the "grid" variable might be important? I assume it helps the RMA if it can alight a bunch of 2x2 tiles into a equivalent grid. Would a x2 gird cause any trouble with 1x1 tiles though?

Offline H-Hour

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 1923
    • View Profile
Re: Making new map, any suggestions?
« Reply #22 on: September 04, 2011, 01:02:24 pm »
I like the idea here. Are you on 2.3.1 or are you on the latest development version? There have been improvements to the RMA algorithm that speed the process up, but if you have too many tiles with complicated connection information, sometimes the algorithm can't find the right setup. It's worth bearing this in mind with your canyon.

You asked in IRC I believe about the size of an RMA. Some RMAs are assembled into 10x12 so you should have plenty of space.

My recommendation for keeping the connections simple is to just use two definitions:

a: connects to low ground
b: connects to high ground

Remember that the definitions are only important for how the connect to each other, so a tile with all "a" could have a rock, a ufo, a cactus, whatever you'd like.

Code: [Select]
// Tile with a canyon that runs vertically with high walls on either side
tile +vertical
{
6 6

0 b a a b 0
b +b +a +a +b b
b +b +a +a +b b
b +b +a +a +b b
0 b a a b 0
}

// Tile with a canyon that has high walls on the left but the low ground wraps around on the north side
tile +corner_sw
{
6 6

0 a a a a 0
a +a +a +a +a a
b +b +b +a +a a
b +b +b +a +a a
b +b +b +a +a a
0 b b a a 0
}

Another thing to keep in mind is that from the player's perspective, it often doesn't matter if you have vertical AND horizontal variations. A canyon running vertical and a canyon running horizontal is identical in the game because the player can simply rotate the view. You only need vertical AND horizontal variations if you want to include both in the same map (ie - a corner, a t-junction, etc.).

Offline H-Hour

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 1923
    • View Profile
Re: Making new map, any suggestions?
« Reply #23 on: September 04, 2011, 01:04:00 pm »
Also, from the screenshots it looks like you may be mapping with texture lock on. You probably want this off and want to make sure all of your rock/sand/dirt textures have x and y values of 0. This will ensure that you can never tell where two brushes meet up, even across different tiles.

Offline Llamageddon

  • Rookie
  • ***
  • Posts: 17
    • View Profile
Re: Making new map, any suggestions?
« Reply #24 on: September 04, 2011, 03:24:13 pm »
Ahh, it all becomes a lot clearer now. Is too many tile "definitions" far more of a concern than the actual number of available tiles the RMA can use? I'll get rid of most of the redundant definitions. I am using the development version and I guess the glitches/crahes were a result of my definitions being too elaborate.
Why I was using lots of small tiles was because, as it was natural terrain rather than an urban setting I wanted the RMA to be as truly "random" and varied as possible. This seems to have worked very well on my medium setting with delightful variety. I made the ramp definitions to ensure that it was extremely unlikely that a map could generate with inaccessible areas, particularly from the drop-ship. I also liked the idea of the Firebird landing on a raised area giving your squad a starting height advantage as that is what you would logically expect of a pilot landing at an alien crash site etc. To balance this I will put cover/LOS blocking around the tiles.
I'm going to follow earlier advice and try making some larger, set-piece tiles and play with the tileset stuff in the UMP to make larger RMA's work better. Will also make some detailed terrain tiles so you guys have a better idea of what I'm aiming for for the finished product.

Offline Llamageddon

  • Rookie
  • ***
  • Posts: 17
    • View Profile
Re: Making new map, any suggestions?
« Reply #25 on: September 06, 2011, 04:24:02 pm »
I've been adding some cactus prefabs. Does it matter if the cactus brush overlaps with the terrain brush or should the base always lie flush to the ground to avoid problems? I am assuming the actor_clip brush is fine to be embedded in the ground as that is how the prefab is made.

Offline H-Hour

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 1923
    • View Profile
Re: Making new map, any suggestions?
« Reply #26 on: September 06, 2011, 05:02:22 pm »
Brushes in general shouldn't overlap because brush faces will split each other when compiled. In some cases it might be best to set the "detail" content flag on the cactus brushes, which puts it in a separate BSP tree so it won't be split.

Actorclip brushes are treated entirely separately so they can overlap however they need.

Offline Llamageddon

  • Rookie
  • ***
  • Posts: 17
    • View Profile
Re: Making new map, any suggestions?
« Reply #27 on: September 06, 2011, 10:33:03 pm »
So, I've massively simplified the tiles and tile definitions but to do this I had to texture the sides of brushes that previously were no_draw. Is this even an issue? If two brushes connect across tile borders, blocking each other's facing texture does this result in any noticeable performance hit, does the game automatically treat them as no_draw?

Offline Mattn

  • Administrator
  • PHALANX Commander
  • *****
  • Posts: 4831
  • https://github.com/mgerhardy/vengi
    • View Profile
    • Vengi Voxel Tools
Re: Making new map, any suggestions?
« Reply #28 on: September 07, 2011, 07:25:55 am »
no, it does not treat them as nodraw - but it should also not be a big performance hit