Adminn_1's review got me thinking about making some sort of single player thing using this map generator concept. It'd result in a KTA style scenario with no plot or anything, but it could be made super long and I could churn out as many of them as people want.

Would there be any interest in something like this? It seems like a lot of the legwork to make something like this has already been done for YugePax, so maybe it wouldn't be too hard.

If there is any interest in this, I'd be curious if any mappers would be willing to help out? The maps are created by stitching together smaller pre-defined pieces that were mapped out by someone. Making these pieces is way easier and faster than making a full map, as you don't have to texture anything or place weapons, aliens, etc.

The more pieces that exist, the more diverse and fun the maps would end up being.

I fully realize it's 2017, and that I'm probably not going to get any responses. But, I figured I'd ask anyway.

Cool. Yeah, I'd have to work out the details myself before anyone could start mapping. I'd likely end up uploading a small handful of maps that act as a template, with small areas to fill in. You'd fill in the areas in different ways and save off the resulting maps as many times as you want.

I'm still undecided on whether I want to do this or not. Honestly, I wouldn't want to do much mapping myself for this, so I'd want at least a couple people willing to help out with that part of it.

As far as it feeling disjointed - yeah, probably. The quality of whatever is produced would obviously not be as high as a bunch of hand-crafted KTA maps. The main benefits are that it'd take about 100x less work, and could result in an endless amount semi-unique maps that are hopefully still fun to play.

I've made some progress on this. Anyone that wants to help out by mapping out areas is welcome to do so. The more contributions, the more diverse and interesting the end result will be.

I've attached a set of templates for mappers to use. I've also included examples of each, for reference, as well as a 3 level scenario, to show how the pieces fit together. I haven't started on generating monster spawns yet, so each level just has a few enemies I placed by hand as well as a bit of ammo (otherwise you could teleport out before exploring the whole map).

If you would like to contribute, pick one of the 'high' or 'medium' priority templates included in this download, save it to a new file, and fill it in. You can repeat this process as many times as you like. I included some 'low' priortiy templates as an FYI that they exist, I don't expect anyone to do anything with them.

Each template has some filled in polygons representing connections to adjoining pieces. You must ensure that there is a path leading to each connection. The floor heights do not have to be the same for each connection. You don't have to fill in the entire boxed off area, but like your kindergarten teacher said, stay in the lines.

To demonstrate what I'm talking about, these two examples would be fine.

Good1.png (3.08 KiB) Viewed 3855 times

Good2.png (3.51 KiB) Viewed 3855 times

This one is not OK, since there is not a path leading to all of the connections.

Bad.png (3.27 KiB) Viewed 3855 times

Some random things to know:* Don't texture anything. The textures are random (ugly), which makes life extremely easy for everyone.* Don't place aliens.* You can place powerups and "item trigger" polygons to indicate polygons where regular ammo should spawn.* Use "glue" polygons to indicate polygons where monsters can spawn.* Use "superglue" polygons to indicate polygons where only monsters with long range attacks should spawn (enforcers, troopers, projectile fighters, etc). This is useful if you want to make ledges where monsters can shoot you from.* The player will initially enter the room from the south entrance. Assume there is a dual monster trigger immediately before entering the room. If you would like more control over the battle, place a zone border in front of the entrance and place your own triggers.* If you're making doors, it's generally best to stick with either from floor or from ceiling. If you want a split door, it needs to be 2 WU high or the texture alignment will be off (and I can't be bothered to figure out texture alignment issues).* Set all platform heights explicitly, even doors.* Don't mess with the pre-filled in connection polygons, they are there for reference only.* The floor height at the southern entrance should be 0, or at least within .3 of 0.* If you want to draw overlapping areas, make sure you don't have 2 vertices that share the same X, Y coordinates, or my method of re-drawing the polygons will fail.* Use Weland to map, if at all possible.* You can place teleporters within a yugepart.* You can have platform switches and triggers. If you want a platform switch, draw the polygon with the switch and add an annotation. "S_30", where 30 is the polygon index of the platform.* You can add rechargers by drawing a polygon with the recharger and adding an annotation: "R". It will randomly become a 1x or 2x recharger, and may not exist in the room every time.* You can add sounds.* You can add juggernaut spawns. Details

I'm sure I forgot to mention something.

Another thing you might notice if you look at the current results: right now the maps can generate multiple dead ends. Each dead end has an exit terminal (if all the monsters are dead), as well as a teleporter to take you back to the last place there was a fork in the road. This should eliminate backtracking. I could make the levels just completely linear, but I'm hoping these makes it more interesting. We'll see.

Also, for almost every template, I only have one piece drawn out right now, which is why the maps all look the same. This is why mappers are needed!

I do! This is the same basic concept, but the pieces are a lot larger than what I remember from elements. Also, instead of having people take completed pieces and try to make an interesting level by stitching them together, people create the pieces. Stitching stuff together is taken care of for you.

treellama wrote:I should be able to download these and have something for you by 2019.

Ha. Even though you're probably joking, something like that is possible.

As long as I'm still wasting time in the mararthon community, I'll incorporate any new contributions and release an update to whatever was already released. One nice thing about this project is that it can have a bunch of releases over time if people continue to contribute to it.

Good to hear! Before you go crazy making a ton of them, you might want to send me a few you worked on (or upload them here) to make sure we're on the same page. I've been editing my post adding to the "random things you should know" section as things are uncovered, but there might still be some assumptions I haven't made clear yet.

As far as texturing, I may end up tweaking things a little, but for now, it basically treats each "piece" separately, as far as which textures are assigned.

I'm defining "piece" as something like a "large intersection", "medium room", etc. From now on I'll refer to them as yugeparts.

For each unique floor height in the yugepart, it will assign a random texture to it, as well as the walls surrounding it. So, if you want to get different textures in a certain area, assign a different floor height than the surrounding areas. You can look at the included Results.sceA to get an idea of how it looks.

Stairs - yeah, they are ugly at the moment. I will probably try to put some effort into detecting them and treating them differently. Maybe if there are a bunch of adjacent polygons with different floor heights and each has a small area, I'll treat them as one thing.

treellama wrote:You could use annotations to mark features like stairs that need special texturing

That's a good idea. Probably the most reliable way of doing it.

@General Tacticus: Your maps are looking good. One thing worth pointing out is that there are often already doors separating each yugepart, so the door you have at the entrance of your medium room will be redundant most of the time. It would probably get annoying having to open 2 doors right next to each other, so I might suggest getting rid of it. Was it there mostly to keep that area separated, or do you really want a door there for other reasons?

I could probably detect doors at entrances and make sure there isn't a redundant door leading into it, if there's a good reason.

Here's 18 yugeparts I put together over the past couple evenings. These things literally take minutes to make since there's no texturing involved. I also made a couple small variations on the same concepts to add more variety to the mix. The more yugerooms we have, the better, though I had fun messing around with some of the low priority templates, too. I'll add more to the heap once my semester winds down.

To other mappers: feel free to check these ideas out if you're looking for any inspiration. If you feel like building off of/modifying one of these yugeparts, go ahead, though I imagine we'd want to stick with as many completely unique yugeparts as possible.