Legacy GM Help with map generation; need good noise function

W

whale_cancer

Guest
Hello!

My game's maps are composed of 16x16 tiles (which each have 256 variants). The tiles represent things like rocky ground or gritty ground. Sometimes, a tile is a mix of two elements (e.g. rocky and gritty).

Manually placing these on my map would take quite a while; making them look good would take even longer.

I want to use some kind of procedural logic to randomly place these in large swaths. Where two types of terrain overlap, I want to use the tile combining both types.

In my other projects I randomly placed circles on ds_grids and set terrain and, within the confines of that circles, randomly placed and removed additional terrain to create some noise and make the terrain look more natural. I could use this method again and incorporate the idea of overlapping terrain types. However, I feel like there is almost surely a better way to do this. Any thoughts? Thanks in advance!
 
Last edited:

Xer0botXer0

Senpai
Do you want objects as tiles or sprites as tiles ?

Ive kinda figured this out for you. will show you my method once i know which you'd prefer.
 
W

whale_cancer

Guest
Do you want objects as tiles or sprites as tiles ?

Ive kinda figured this out for you. will show you my method once i know which you'd prefer.
My map data is stored in ds_grids I render to the screen as tiles.
 

Xer0botXer0

Senpai
hmm, well you just need to see it as recipes.

any tiles created should be stored in a ds list or something, with coordinates, so when ever you want to place a new tile compare that new location to the list or data and see if there's a tile there, if there is a tile then what is that tiles type/name, then compare that tiles name/type with the tile you want to add and look at recipes where this and that equals a different tile to be placed, remove current tile at that location, and place the new one or just draw the new tile over the old one and update the entry within the list by removing the previous tile information and replacing it with the new tile information. I was thinking of using arrays so this is the best suggestion i can do.
 
W

whale_cancer

Guest
hmm, well you just need to see it as recipes.

any tiles created should be stored in a ds list or something, with coordinates, so when ever you want to place a new tile compare that new location to the list or data and see if there's a tile there, if there is a tile then what is that tiles type/name, then compare that tiles name/type with the tile you want to add and look at recipes where this and that equals a different tile to be placed, remove current tile at that location, and place the new one or just draw the new tile over the old one and update the entry within the list by removing the previous tile information and replacing it with the new tile information. I was thinking of using arrays so this is the best suggestion i can do.
Oh, I think you misunderstand me. I already have a fully functional system to manually place tiles in an editor and then play it in my game engine already. My issue is with creating noise to vary my tiles.
 
Top