Duke4.net Forums: Map building by code - Duke4.net Forums

Jump to content

  • 2 Pages +
  • 1
  • 2
  • You cannot start a new topic
  • You cannot reply to this topic

Map building by code

User is offline   Dukebot 

#1

As I've seen that map files are text in the end I was wondering if it wold be possible to create maps or parts of the map by code.

I'm thinking on this because my map has a lot of nature terrain and I've enjoyed done this labor manually, but it costed me a lot of time. What if in the future I want to make another big map but spending less time? Actually I think that a script cold do that for me. It cold have some parameters such as the size, the high variation in the z axis, and maybe sine additional parameters such as a quantity of vegetation. Not saying that the script builds the entire map, but it creates a template for you start work on, and don't go from scratch.

The idea came from this but this could be generalized to build other kind of things such as caves for example. If it's possible to actually build parts of a map by scripts it would be great to have some library of utility scripts to generate some things and maybe save time in map development process.

I don't know if there is any tool that already does this. If not, it's possible to do?
1

User is online   ck3D 

#2

Not exactly what you're asking for, but if you're looking for ways to optimize your mapping time so that you don't have to rely on every singular element just visually and can do a lot of work in bulk a lot faster, there's plenty to be said about not overlooking 2D mode sector/sprite editing features in Mapster32 (F7 or F8 depending on what type of map element your cursor is pointing at) to adjust all the values by just inputting numbers - it's a less obvious way to do things but in general, if you consider all the numeric values in your map (from floor/ceiling height to shade values to dimensions working in multiples of 8 etc.), you'll save yourself a lot of the trouble that comes with practical inconveniences (raising floors accurately and instantly, changing textures in sections of the level the player can't reach etc.); pair that up with the bulk sector selection tool and the copy paste feature that allows you to basically map by assembling blocks of level instead of individual bit per individual bit and you can develop a logic for mapping that's closer to coding in essence, without relying on coding. If you're not used to paying attention to the numeric values in Mapster, looking at numbers is going to feel foreign at first but they will quickly become your best ally.

The copy paste feature especially will come in handy too, it used to be a big no-no for me in my earlier years because I thought the idea itself lacked integrity but in reality if you do it right by later fine-tuning the copied sectors independently so they look just a bit different, the repeated portions won't be noticeable in game, which is another reason why it's important to keep track of dimensions, z-unit distances etc. (remember you can always fake start drawing a sector to measure distances with the line): regularity will make it that much easier to copy big doors, windows and maybe whole portions of the map instead of making everything from scratch, basically one could even make a sample map of assets with just doors, windows, SE-affected sectors and just specific level features in general then assemble new levels by just putting those blocks together in 2D mode if they wanted. Anticipating that you're going to want to reuse a certain chunk of your level multiple times, and designing it so that it's going to be very elementary to copy paste is important as well, e.g.. in the case of a city map with a lot of cars, before I even start making the first car I normally draw a larger, simple, square sector with no fancy vertices destined to contain everything, then I build the detailed car inside that and from then on, if I want to put 10 detailed cars in my map then I just have to draw 10 simple squares with the right dimension, copy from the first square then boom, 10 cars in one minute that you can flip in whatever way and invert on both x and y angles in 2D mode (and retouch real quick in 3D mode) for variety, and then finally I can even get rid of the squares by just joining the next sector with them to get my resources back. Developing this type of habit, you can then apply the logic to bigger and bigger sections of a map, from whole streets to indoor sections with corridors and rooms if you feel so inclined (also very useful for making symmetrical areas real quick).

I know this isn't coding per se at all, and someone else will give a reply that pertains to your actual question more. But Mapster32 in itself already kind of has a lot of not-so-obvious features that make mapping feel a bit closer to coding than to drawing in terms of logic and feel, and those are huge, huge timesavers, allowing to push one's mapping a lot further than if they never bothered considering them, once they get into that groove, so I'd say it's worth finding (and not incompatible with trying to solve things by coding).

Fundamentally mapping already is some kind of coding with a what-you-see-is-what-you-get type of rendition, once you start perceiving it like this, considering numeric values as key references and not just the editor as a tool for mostly visual manipulation, the picture starts feeling a lot more complete and you get results done exponentially quicker as though you were semi-subconsciously writing code in whatever language you're comfortable writing.

edit - also I know the map you're currently making is bound to be essentially pretty irregular by design (at least more than a hi-tech map would be for instance), so maybe not the best context for practicing those techniques if you want organic-looking environments as opposed to patterns, but the basic logic still applies and is always good to have in mind in my opinion.

edit 2 - watching some speedmapping videos on YouTube a few years back and then reading more info about the inner workings of the game/engine/editor on here was the source of a lot of those reflections for me, maybe that'll be the case for you as well.

This post has been edited by ck3D: 04 April 2020 - 03:59 AM

0

User is offline   Dukebot 

#3

View Postck3D, on 04 April 2020 - 03:06 AM, said:

Not exactly what you're asking for, but if you're looking for ways to optimize your mapping time so that you don't have to rely on every singular element just visually and can do a lot of work in bulk a lot faster, there's plenty to be said about not overlooking 2D mode sector/sprite editing features in Mapster32 (F7 or F8 depending on what type of map element your cursor is pointing at) to adjust all the values by just inputting numbers - it's a less obvious way to do things but in general, if you consider all the numeric values in your map (from floor/ceiling height to shade values to dimensions working in multiples of 8 etc.), you'll save yourself a lot of the trouble that comes with practical inconveniences (raising floors accurately and instantly, changing textures in sections of the level the player can't reach etc.); pair that up with the bulk sector selection tool and the copy paste feature that allows you to basically map by assembling blocks of level instead of individual bit per individual bit and you can develop a logic for mapping that's closer to coding in essence, without relying on coding. If you're not used to paying attention to the numeric values in Mapster, looking at numbers is going to feel foreign at first but they will quickly become your best ally.

The copy paste feature especially will come in handy too, it used to be a big no-no for me in my earlier years because I thought the idea itself lacked integrity but in reality if you do it right by later fine-tuning the copied sectors independently so they look just a bit different, the repeated portions won't be noticeable in game, which is another reason why it's important to keep track of dimensions, z-unit distances etc. (remember you can always fake start drawing a sector to measure distances with the line): regularity will make it that much easier to copy big doors, windows and maybe whole portions of the map instead of making everything from scratch, basically one could even make a sample map of assets with just doors, windows, SE-affected sectors and just specific level features in general then assemble new levels by just putting those blocks together in 2D mode if they wanted. Anticipating that you're going to want to reuse a certain chunk of your level multiple times, and designing it so that it's going to be very elementary to copy paste is important as well, e.g.. in the case of a city map with a lot of cars, before I even start making the first car I normally draw a larger, simple, square sector with no fancy vertices destined to contain everything, then I build the detailed car inside that and from then on, if I want to put 10 detailed cars in my map then I just have to draw 10 simple squares with the right dimension, copy from the first square then boom, 10 cars in one minute that you can flip in whatever way and invert on both x and y angles in 2D mode (and retouch real quick in 3D mode) for variety, and then finally I can even get rid of the squares by just joining the next sector with them to get my resources back. Developing this type of habit, you can then apply the logic to bigger and bigger sections of a map, from whole streets to indoor sections with corridors and rooms if you feel so inclined (also very useful for making symmetrical areas real quick).

I know this isn't coding per se at all, and someone else will give a reply that pertains to your actual question more. But Mapster32 in itself already kind of has a lot of not-so-obvious features that make mapping feel a bit closer to coding than to drawing in terms of logic and feel, and those are huge, huge timesavers, allowing to push one's mapping a lot further than if they never bothered considering them, once they get into that groove, so I'd say it's worth finding (and not incompatible with trying to solve things by coding).

Fundamentally mapping already is some kind of coding with a what-you-see-is-what-you-get type of rendition, once you start perceiving it like this, considering numeric values as key references and not just the editor as a tool for mostly visual manipulation, the picture starts feeling a lot more complete and you get results done exponentially quicker as though you were semi-subconsciously writing code in whatever language you're comfortable writing.

edit - also I know the map you're currently making is bound to be essentially pretty irregular by design (at least more than a hi-tech map would be for instance), so maybe not the best context for practicing those techniques if you want organic-looking environments as opposed to patterns, but the basic logic still applies and is always good to have in mind in my opinion.

edit 2 - watching some speedmapping videos on YouTube a few years back and then reading more info about the inner workings of the game/engine/editor on here was the source of a lot of those reflections for me, maybe that'll be the case for you as well.


Thanks for detailed answer even if it wasn't 100% what was I asking for. Thanks for letting me know that tricks. Some of them like the copy paste feature is something that I started to use in my map a lot. And yes I see that mapping is like coding in the end, but instead of writting lines, you've a visual interface to design the level, but in the end it is text.

What you said about a template with some premade features it's a very good idea. I tend to do this with code, making template code projects to start with and reuse from other things I've done, this way I don't write the same code over and over again. In maps this also can be appliyed because there are a lot of features that require a few steps to do with the editor, but are present in every map, so having them at some place at hand could be nice for saving time.

But what I was talking about was more like procedural generation of map content. It could be appliyed for cities and other things, but in that case it would be much harder to make such an algorith capable to build a city. On the other hand build a randomized terrain or a cave by code It's not that hard, as they have very irregular shaped (organic things I think you called them). On this case, you could randomize the generation, give to a script some parameters and voliĂ , you have you randomly generated terrain with the parameters you specifiyed. This algorithm wold build sectors with different heights following some patterns but also randomizing things, so everytime you execute the script, you've a complete new terrain.

Of course with this I don't want to do the mappers job, I just want a way to speed up mapping process with autogeneration of certain things. Later on the mapper can adjust by hand things, the algorithm just generates a basic things to start with, but at least you save a lot of time.
0

User is offline   Kyanos 

#4

Oblige is a doom based map generator. Open source. It uses prefab map sections and some procedural generation. I mention this because the map formats are similar enough that one can convert from wad to map, also I do think it's possible to use Oblige as a base and make a map generator for Duke3D.
DoomTC has a nice wad to map convertor that's halfway to a proper doom-duke convertor, with a few m32 scripts Oblige can do most of what your after right out of the box.
0

User is online   ck3D 

#5

View PostDukebot, on 04 April 2020 - 04:34 AM, said:

But what I was talking about was more like procedural generation of map content. It could be appliyed for cities and other things, but in that case it would be much harder to make such an algorith capable to build a city. On the other hand build a randomized terrain or a cave by code It's not that hard, as they have very irregular shaped (organic things I think you called them). On this case, you could randomize the generation, give to a script some parameters and voliĂ , you have you randomly generated terrain with the parameters you specifiyed. This algorithm wold build sectors with different heights following some patterns but also randomizing things, so everytime you execute the script, you've a complete new terrain.

Of course with this I don't want to do the mappers job, I just want a way to speed up mapping process with autogeneration of certain things. Later on the mapper can adjust by hand things, the algorithm just generates a basic things to start with, but at least you save a lot of time.


Yes I understand what you mean here. I'd be skeptical of using such a tool myself, because I tend to find joy in being the one designing the level under every aspect from A to Z, and trying to make every aspect of the layout serve some kind of smart, practical purpose (ideally), so the idea of relying on a randomizer for something like this I know I wouldn't be personally interested in (strictly as far as I'm concerned of course). I feel like such a tool could only do worse than me expressing something directly.

What I've done before though (again without coding) is a whole city map that I started out by designing nothing but the whole outline in 2D mode. Like no thought in what the space would be eventually at all, I just drew one massive sector with plenty of angled walls, then divided it into inner blocks that would later make for the components of the levels and recycled into anything: buildings, sidewalks, floors, rooms etc. Eventually I gave all those sectors different elevations in a way that could kind of work gameplay-wise, and after I did all this all I had to do was texture the level, turn a couple of rooms into actual rooms, basically just work on the presentation and voilĂ . It's a very bare bones approach and honestly, it was only that fun to work with because just texturing and decorating a huge empty space for weeks if not months can get repetitive, but it kind of resembles what you're describing without the actual use of a generator. A lot of people disliked that map when it came out too because it was generally too confusing.
0

User is offline   Dukebot 

#6

View PostPhotonic, on 04 April 2020 - 05:07 AM, said:

Oblige is a doom based map generator. Open source. It uses prefab map sections and some procedural generation. I mention this because the map formats are similar enough that one can convert from wad to map, also I do think it's possible to use Oblige as a base and make a map generator for Duke3D.
DoomTC has a nice wad to map convertor that's halfway to a proper doom-duke convertor, with a few m32 scripts Oblige can do most of what your after right out of the box.


I've checked this Obligue, and it's a generalization of what I was thinking. I was thinking about a terrain generator for example. But this features more things and options, but yes, the concept would be like the same. But in my case I don't want to substitude the mapper job and build an entire map. Just was thinking about a basic terrain genration to start your map with, for example. But it's good to know that tool exists for Doom, this means it could be possible to do something simmilar for Duke.

View Postck3D, on 04 April 2020 - 05:30 AM, said:

Yes I understand what you mean here. I'd be skeptical of using such a tool myself, because I tend to find joy in being the one designing the level under every aspect from A to Z, and trying to make every aspect of the layout serve some kind of smart, practical purpose (ideally), so the idea of relying on a randomizer for something like this I know I wouldn't be personally interested in (strictly as far as I'm concerned of course). I feel like such a tool could only do worse than me expressing something directly.

What I've done before though (again without coding) is a whole city map that I started out by designing nothing but the whole outline in 2D mode. Like no thought in what the space would be eventually at all, I just drew one massive sector with plenty of angled walls, then divided it into inner blocks that would later make for the components of the levels and recycled into anything: buildings, sidewalks, floors, rooms etc. Eventually I gave all those sectors different elevations in a way that could kind of work gameplay-wise, and after I did all this all I had to do was texture the level, turn a couple of rooms into actual rooms, basically just work on the presentation and voilà. It's a very bare bones approach and honestly, it was only that fun to work with because just texturing and decorating a huge empty space for weeks if not months can get repetitive, but it kind of resembles what you're describing without the actual use of a generator. A lot of people disliked that map when it came out too because it was generally too confusing.


Yeah I totally understand your point and it's very valid. This is why I said that this don't aim to replace the mapper job, just to assist and save some time. But yeah I see the point in having everything crafted by hand with love, and I also enjoy doing that. It's just that the terrain making thing in my map, has become very repetitive and boring sometimes because the outdoor area it's really big. This is why I came with this idea, this would speed up a lot the process and maybe big outdoors maps could be done in a shorter amount of time. I don't see myself building a sequel to my map after all the work that it impliyed! But at the same time would be great to have a sequel with the same phylosophy: big outdoor areas full of nature. Maybe having my little tool could be great for building this kind of maps in less time due to the size of the map.

EDIT: Also asking because I like to program. If it could be possible to build maps doing both, programming and then tweaking with mapster, maybe it could be an entertaining experience.

This post has been edited by Dukebot: 04 April 2020 - 06:40 AM

2

User is offline   Kyanos 

#7

Honestly I've wanted to do something like this but in C and have failed repeatedly. What I would love to see is a simple easy to read snippet of code that writes out a very simple multi sector map with a few sprites and such.

This post has been edited by Photonic: 04 April 2020 - 06:19 AM

1

User is offline   Dukebot 

#8

View PostPhotonic, on 04 April 2020 - 06:18 AM, said:

Honestly I've wanted to do something like this but in C and have failed repeatedly. What I would love to see is a simple easy to read snippet of code that writes out a very simple multi sector map with a few sprites and such.


When you say that you've tried this but in C, which language are you supposing that I was talking about?

Can you describe in more depth what did you exaclty try? You said you failed several times, which complications arised or why you failed in the end?
0

User is offline   oasiz 

  • Dr. Effector

#9

It's certainly doable but I would probably use m32/build to do it.
Despite having a very simple map format, you will still need to juggle sector numbers and many things that link to each other in the end.

With m32 you should be mostly able to call internal functions and the engine would handle much of the dirty work.

However I'm not sure if it has provisions for creating new walls/sectors actually, something that might be worth adding.
1

User is offline   Dukebot 

#10

View Postoasiz, on 04 April 2020 - 06:40 AM, said:

It's certainly doable but I would probably use m32/build to do it.
Despite having a very simple map format, you will still need to juggle sector numbers and many things that link to each other in the end.

With m32 you should be mostly able to call internal functions and the engine would handle much of the dirty work.

However I'm not sure if it has provisions for creating new walls/sectors actually, something that might be worth adding.


Hello and thanks for your answer. Editing the answer because I did not understand you well at first. What do you mean with using m32/build to do so?

This post has been edited by Dukebot: 04 April 2020 - 06:45 AM

0

User is offline   LeoD 

  • Duke4.net topic/3513

#11

View PostDukebot, on 04 April 2020 - 06:42 AM, said:

What do you mean with using m32/build to do so?
Exactly what you've been asking for in the first sentence of this thread, I think. Let Mapster32 compile your *.m32 script into a *.MAP file or new parts of an existing one.
(Next thing to happen would be that someone on AMC comes up with an obfuscated code contest...)
0

User is offline   Dukebot 

#12

View PostLeoD, on 04 April 2020 - 07:04 AM, said:

Exactly what you've been asking for in the first sentence of this thread, I think. Let Mapster32 compile your *.m32 script into a *.MAP file or new parts of an existing one.
(Next thing to happen would be that someone on AMC comes up with an obfuscated code contest...)


Well actually I was thinking in a script in any language, not mapster dependant. A script that it's output it's a .map file that the build engine understands. Don't know how viable would be to have that integrated into mapster, but I see as a different things. Mapster is for editing level, and the script that I have in mind would create a .map file that then can be edited with mapster. This is what I had in my head.
0

User is online   ck3D 

#13

View PostDukebot, on 04 April 2020 - 05:55 AM, said:

I don't see myself building a sequel to my map after all the work that it impliyed! But at the same time would be great to have a sequel with the same phylosophy: big outdoor areas full of nature. Maybe having my little tool could be great for building this kind of maps in less time due to the size of the map.


I get you on the rest, just a quick reaction to this in passing: the more you make maps, the quicker they become to make. At least it seems like every time I start something new from scratch, I'm more comfortable with everything I've done in prior maps and feel more free to abuse shortcuts and whatnot than if I was touching a pre-existing map, making mapping speed as though exponentially faster with every new canvas. If you ever start a sequel maybe you'll surprise yourself with the pace of your progress and see what I mean, I think it may be a subconscious thing and reflect in pretty much everybody's consistent body of work over the years. That's also why it can be hard working on a coherent episode, beginners are usually discouraged from trying that because their skills are still evolving in obvious steps but even for veteran matters who know what they're doing and have a consistent style, I reckon it's impossible not to get better and more efficient (since that's the point here) as they go to the point where they ideally have to revisit the earlier maps and whatnot if they're perfectionists.

This post has been edited by ck3D: 04 April 2020 - 07:17 AM

0

User is offline   oasiz 

  • Dr. Effector

#14

Yes, sorry. With m32 I mean the m32 scripting language that mapster has.


Map format is very simple and well documented, you can find it here My link or various other sources replicating this information.

Annoying part is really that you will manually have to keep integrity in check.
Sectors reference walls, sprites reference sectors, etc..

It's nothing overwhelming but if mapster had a function to generate sectors and wallpoints (via scripts) then you'd have it all.
i.e. setting sector 5 to have floor texture 10 is something like:
set sector[5].floorpicnum 10

Pretty much everything can be edited otherwise via scripting and you don't have to worry about struct sizes or exceeding limits.


If you have specific requirements on stuff like sprite generation in sectors, that can be done easily inside the editor and you can even assign it a hotkey to call it on demand on a sector you're pointing at for example.
I highly recommend studying m32 a bit, I can't even work these days without some of the tools I've done to cover shortcomings of the stock editor.
Stuff like being able to hold S and draw a pattern of explosives, then run a menu item on those explosions and the editor will just automatically pseudo-randomize those with a skewed delay. This way I can do explosion set pieces with 100 explosions in under a minute if I want to.
1

User is offline   Dukebot 

#15

View Postck3D, on 04 April 2020 - 07:17 AM, said:

I get you on the rest, just a quick reaction to this in passing: the more you make maps, the quicker they become to make. At least it seems like every time I start something new from scratch, I'm more comfortable with everything I've done in prior maps and feel more free to abuse shortcuts and whatnot than if I was touching a pre-existing map, making mapping speed as though exponentially faster with every new canvas. If you ever start a sequel maybe you'll surprise yourself with the pace of your progress and see what I mean, I think it may be a subconscious thing and reflect in pretty much everybody's consistent body of work over the years. That's also why it can be hard working on a coherent episode, beginners are usually discouraged from trying that because their skills are still evolving in obvious steps but even for veteran matters who know what they're doing and have a consistent style, I reckon it's impossible not to get better and more efficient (since that's the point here) as they go to the point where they ideally have to revisit the earlier maps and whatnot if they're perfectionists.


Yeah totally agree that with practice you get a lot faster and do things really fast, but any way there will be always a time required to do things, even if you are fast. I believe that with some automation a lot of more time can be saved. Why not be able to build big maps in one or two weeks? Maybe with some map building helper tools would be possible. And that tools don't need to replace the mappers job, they are just helpfull and help save time.

View Postoasiz, on 04 April 2020 - 09:24 AM, said:

Yes, sorry. With m32 I mean the m32 scripting language that mapster has.


Map format is very simple and well documented, you can find it here My link or various other sources replicating this information.

Annoying part is really that you will manually have to keep integrity in check.
Sectors reference walls, sprites reference sectors, etc..

It's nothing overwhelming but if mapster had a function to generate sectors and wallpoints (via scripts) then you'd have it all.
i.e. setting sector 5 to have floor texture 10 is something like:
set sector[5].floorpicnum 10

Pretty much everything can be edited otherwise via scripting and you don't have to worry about struct sizes or exceeding limits.


If you have specific requirements on stuff like sprite generation in sectors, that can be done easily inside the editor and you can even assign it a hotkey to call it on demand on a sector you're pointing at for example.
I highly recommend studying m32 a bit, I can't even work these days without some of the tools I've done to cover shortcomings of the stock editor.
Stuff like being able to hold S and draw a pattern of explosives, then run a menu item on those explosions and the editor will just automatically pseudo-randomize those with a skewed delay. This way I can do explosion set pieces with 100 explosions in under a minute if I want to.



This is great, lots of things can be automated then. I could have a key to create a tree composed of 4 or 5 sprites with randomized values for example? Having to tweak the trees manually so the do not look the same it's like a pain because my map is so big. Having a key that places a tree and randomized a few properties would help me a lot. In fact with vegetation in general.

Where I can find more documentation about mapster32 scripting language? I've readed that it's based on CON language, but I am not familiar with this language. You know some good resources to get started?
0

User is offline   oasiz 

  • Dr. Effector

#16

Check this one out:
https://wiki.eduke32...ter32_Scripting
(Plus the other pages linked there)

I could probably take a crack at creating this if you can point me some example on what this is to look like (i.e. example map file).
1

User is offline   Dukebot 

#17

View Postoasiz, on 04 April 2020 - 12:39 PM, said:

Check this one out:
https://wiki.eduke32...ter32_Scripting
(Plus the other pages linked there)

I could probably take a crack at creating this if you can point me some example on what this is to look like (i.e. example map file).


Thanks for your answer. That's the documentation I was seeing but as I don't know CON I was wondering if there is any good documentation about CON language, which I think it's required to know to use m32 scripting language. I am used to object oriented programming languages, so what I readed on documentation felt quiate unfamiliar to me. I understood some things such like a "state" it's like a "static function" in other programming languages bust most of things were unfammiliar to me, so maybe I should check how CON is to understand things.

My initial idea was to create a heightmap, and then translate it to .map file. Something like this image, this is a generic heightmap generation, then the work would be to translate this to build engine data.

Posted Image

But this was just and idea if this would be possible, and how difficult it would be to do.

But now that I know this functionality about scripting things, some scripted shorcuts could be very handy for placing trees for example, composed for 5 different sprites, and randomizing it's size between two values for example. So it would be very helpfull to press a key, execute the script and place the sprite composition on the map. Or even it could be randomized and having a generic key for vegetation and it randomizes between trees, plants or other vegetation sprites.

For example, some trees like the ones that I have on my map (see image below), which I have to adjust manually and it's a lot of time, even if I do copy paste, I have to do modifications to add variation in shapes and sizes.

Posted Image

If you need concrete examples I can send you a map file with some demonstrations, but the idea is what I told you.

Thank you for your time and answers.
3

User is offline   Kyanos 

#18

View Postoasiz, on 04 April 2020 - 09:24 AM, said:

It's nothing overwhelming but if mapster had a function to generate sectors and wallpoints (via scripts) then you'd have it all.

This so much. Do you think it is doable? Can you describe what would need to be done in the editor to get this working?
0

User is offline   Kyanos 

#19

View PostDukebot, on 04 April 2020 - 06:25 AM, said:

Can you describe in more depth what did you exaclty try? You said you failed several times, which complications arised or why you failed in the end?

Just could never write anything mapster could read. Tried simple 1 sector map.
0

User is offline   Micky C 

  • Honored Donor

#20

View PostDukebot, on 04 April 2020 - 01:24 PM, said:

My initial idea was to create a heightmap, and then translate it to .map file. Something like this image, this is a generic heightmap generation, then the work would be to translate this to build engine data.

Posted Image



Imagine being able to place some sprites at specific heights and locations which can describe the overall shape of the terrain, then mapster smoothly interpolates the plane with sectors. That'd be pretty cool.

A point worth noting is that triangles in Build aren't quite the same as in your average mesh, since two of the points need to be at the same height. It'd be great if this limitation could be removed in the future. It doesn't exist in Build 2 for example. Somehow I think that's easier said than done.
0

User is offline   oasiz 

  • Dr. Effector

#21

You can force arbitrary firstwalls to sectors with joining tricks but it gets really messy on a larger scale.

Going to check this tree example now..
0

User is offline   Mark 

#22

I seem to remember many years ago someone actually did that terrain conversion thingie like in dukebot's mesh pic. Or at the very least a discussion was had about it. I have no idea the proper words to search the forum with to find it.
0

User is offline   Micky C 

  • Honored Donor

#23

Are you thinking of LEBuild’s terrain generator? It produces something almost exactly like the image I quoted, and handles slopes with joining tricks like oasiz mentioned. However it was very wall-hungry since every triangle required 6 walls, and there were lots of small non-reachable sectors scattered everywhere.
0

User is offline   Mark 

#24

.

Attached thumbnail(s)

  • Attached Image: capt0008.jpg

1

User is offline   Dukebot 

#25

View PostMicky C, on 05 April 2020 - 01:34 PM, said:

Are you thinking of LEBuild’s terrain generator? It produces something almost exactly like the image I quoted, and handles slopes with joining tricks like oasiz mentioned. However it was very wall-hungry since every triangle required 6 walls, and there were lots of small non-reachable sectors scattered everywhere.


What's that? I googled and finded and editor called like that, it's based on the old build engine I think with some modifications. But I didn't see anything for generation. If this tool exists, where can I download it?


View PostMark, on 05 April 2020 - 03:18 PM, said:

.


Wow the picture looks good, it's that a generated terrain? How did you do that?
0

User is offline   Mark 

#26

The terrain was built manually. Its part of a series of testmaps from an ancient Mblackwell mod that I hope we'll find the time to mess with this decade. Someone figured out thru a lot of trial and error how to get the results. Maybe soon I'll replace that blurry low res texture with something fancy and slap on some 3d model trees and grass for fun.

Attached thumbnail(s)

  • Attached Image: capt0000.jpg


This post has been edited by Mark: 05 April 2020 - 05:34 PM

2

User is offline   blizzart 

#27

View PostMark, on 05 April 2020 - 03:18 PM, said:

.


I remember that. Must have been a tech demo map for Starship Troopers 2 TC. I think I have laying it around o some old HDD.
0

User is offline   Micky C 

  • Honored Donor

#28

View PostDukebot, on 05 April 2020 - 04:06 PM, said:

What's that? I googled and finded and editor called like that, it's based on the old build engine I think with some modifications. But I didn't see anything for generation. If this tool exists, where can I download it?


It's a build engine map editor by Leezing which stopped development in 2008. It has some nice features like sector modelling tools, but IMO there are too many drawbacks to it being a full-time replacement for mapster32, such as limited controls in 3D mode.

http://lzg.duke4.net/leb10.htm
1

User is offline   Mark 

#29

View Postblizzart, on 06 April 2020 - 12:54 AM, said:

I remember that. Must have been a tech demo map for Starship Troopers 2 TC. I think I have laying it around o some old HDD.

Its possible its in there too. This came from a medieval themed project of a different name.
0

User is offline   Dukebot 

#30

View PostMicky C, on 06 April 2020 - 03:05 AM, said:

It's a build engine map editor by Leezing which stopped development in 2008. It has some nice features like sector modelling tools, but IMO there are too many drawbacks to it being a full-time replacement for mapster32, such as limited controls in 3D mode.

http://lzg.duke4.net/leb10.htm


Yes I found that page when I googled and I even downloaded the editor to give it a try. I found it very counter intuitive and did not understand how to do anything with that editor. Anyway I navigated throught the menus searching for some option to generate terrain but did not find it.

So this is the tool you were talking about and it's supposed to be able to do the terrain generation that I mentioned? I was not meaning that this should substitude mapster32 for editing the level, I am only interested on the terrain generatyion part.
0

Share this topic:


  • 2 Pages +
  • 1
  • 2
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options