72hr Randomly Generated Maps 0.5

I made a program that creates maps. Here's its first attempts.

  1. The_Evil_Pickle

    The_Evil_Pickle L2: Junior Member

    Messages:
    56
    Positive Ratings:
    63
    Randomly Generated Maps - I made a program that creates maps. Here's its first attempts.

    What's the best way to make maps as fast as possible? Make a program that makes the maps for you! For this 72hr jam, I'm making a random map generator in C++. I'll post all the source code at the end of the event, but until then, I'll be posting some of the maps it creates here.

    Currently the results are a bit glitchy, but they seem to work fine gameplay-wise. Any feedback is appreciated!

    Here's some screenshots of the first randomly generated map I'm posting to this site, ctf_pipegen!
    Hammer top-down C++ output Outdoors Pickups Indoors Underground Pipes Pipes entrance
     
    • Like Like x 14
  2. The_Evil_Pickle

    The_Evil_Pickle L2: Junior Member

    Messages:
    56
    Positive Ratings:
    63
    I've now added two more maps to the download, each of which demonstrates a new feature of the generator.

    pl_abandon_physics
    I just got payload map generation working, but only barely. The cart physics are... interesting, to say the least. Plus the pit the cart falls in at the end managed to spawn on top of the underground pipe system. But hey, randomly generated payload path! It's pretty neat.

    arena_lol_displacements
    Still haven't gotten arena logic to work, which is strange, because I figured it would be the easiest gamemode to do. But even if the objective doesn't work properly, this map very nicely demonstrates the randomly generated displacements the program produces. Those took me more time than anything else I've done thus far, so I messed with the settings a bit to make this map show them off more than the other maps do.

    Read the rest of this update entry...
     
    • Like Like x 1
  3. worMatty

    aa worMatty Repacking Evangelist

    Messages:
    1,072
    Positive Ratings:
    836
    Holy shit. It's like Minecraft for maps.
     
    • Agree Agree x 3
  4. Coding Ethan

    Coding Ethan L2: Junior Member

    Messages:
    82
    Positive Ratings:
    70
    AlphaTF 24/7 automated rotation server would be interesting once it's a bit more polished.
     
    • Agree Agree x 2
  5. worMatty

    aa worMatty Repacking Evangelist

    Messages:
    1,072
    Positive Ratings:
    836
    Would be an excellent use of the Map Workshop. You would be able to make new 'seeds' and just have the game replace the map file instead of downloading lots of random maps you're never going to play again.
     
    • Agree Agree x 3
  6. The_Evil_Pickle

    The_Evil_Pickle L2: Junior Member

    Messages:
    56
    Positive Ratings:
    63
    Ironed out a lot of bugs, and made it so that arena and ctf modes now work completely! There's even an auto-balancing feature for the asymmetrical ctf maps, which ensures the placement of spawn points and flags will be relatively fair.

    Also fixed some of the sewer bugs, and made more lights spawn in the map. Plus the random displacements no longer trap players when they exit the tunnels.

    The arena and ctf maps from the original upload have been replaced with some from the new version of the program. They should be fun and balanced, if everything worked right. I've not had a chance to test them yet.

    Oh yeah, pl_abandon_physics is still in the zip folder. It's still horrible.

    Read the rest of this update entry...
     
  7. The_Evil_Pickle

    The_Evil_Pickle L2: Junior Member

    Messages:
    56
    Positive Ratings:
    63
    Added more variety to what can spawn in maps, including the possibility for turbine vents to spawn as part of the tunnel system. Added one new arena map to the set, which has vents in it.



    Read the rest of this update entry...
     
  8. The_Evil_Pickle

    The_Evil_Pickle L2: Junior Member

    Messages:
    56
    Positive Ratings:
    63
    I've now included the source code in the download. It's the most ungodly jumble of spaghetti code you've ever seen, but if you can manage to figure out how it works, feel free to modify and use it however you like! I just request that if you post or use maps made with it, you give me some credit.

    Read the rest of this update entry...
     
  9. The_Evil_Pickle

    The_Evil_Pickle L2: Junior Member

    Messages:
    56
    Positive Ratings:
    63
  10. Crowbar

    aa Crowbar perfektoberfest

    Messages:
    1,441
    Positive Ratings:
    1,196
    Interesting idea, but making a virtual VMF, then compiling it and doing stuff and then launching the map would take time. Making it work with BSP would easen it, but you still have to, say, build (and, well, place before) cubemaps.
     
    • Agree Agree x 1
  11. DrLambda

    aa DrLambda L69: Teeheehee, Member

    Messages:
    458
    Positive Ratings:
    454
    This is pretty awesome. Haven't seen random map generators in a long while, i will have a look at the source over the next few days.
     
  12. Nioxed

    Nioxed L2: Junior Member

    Messages:
    60
    Positive Ratings:
    35
    Im totally going to setup a 24/7 random map server if its stable enough ;)
     
  13. Infomaniac

    Infomaniac L6: Sharp Member

    Messages:
    348
    Positive Ratings:
    175
    You deserve the medal, indefinently
     
    • Thanks Thanks x 1
  14. The_Evil_Pickle

    The_Evil_Pickle L2: Junior Member

    Messages:
    56
    Positive Ratings:
    63
    The jam's over, but this project isn't! Probably, anyway. I've gone and fixed most of the bugs I didn't have time to iron out originally. This new version contains the updated source files, as well as a whopping 25 randomly generated arena maps! I might try to get a server up and running with them, we'll see if that happens or not. In the meantime, feel free to try them out yourself.

    Thank you everyone who's been commenting on this! I'm very glad you all like it :D


    Update notes, because why not:
    -Comes with 25 pre-made arena maps
    -Tunnels are a lot less glitchy than before
    -Maps no longer spawn with random holes in them (I think)
    -Removed a lot of water, because it was causing rendering issues
    -Entrances between above-ground and underground areas that spawn in buildings now have ceilings above them
    -Arena and CTF gamemodes have better self-balancing algorithms
    -Fixed a LOT of crashes caused by terrible code

    Read the rest of this update entry...
     
    Last edited: Feb 19, 2017
  15. worMatty

    aa worMatty Repacking Evangelist

    Messages:
    1,072
    Positive Ratings:
    836
    All of that can be automated. What does "Making it work with BSP," mean? It doesn't seem like a great challenge. I think the most tricky part would be publishing to the Workshop, as you have to use the game's UI.

    1. Produce VMF. Pickle's program does this.
    2. Compile VMF. You can use a batch file to do this.
    3. Build cubemaps (again, something that can be done with a batch file. Or, just pack in a set of default cubemaps since you don't really need them on maps like this).
    4. Upload the map to the Workshop (human intervention, or some kind of mouse and keyboard control application, or some previously unknown in-game console commands).
    5. Set the server on a rotation that includes multiple maps, each with a different game mode. If any of the maps are updated, the server updates them automatically.
    Someone must do this!
     
    Last edited: Feb 23, 2017
  16. Crowbar

    aa Crowbar perfektoberfest

    Messages:
    1,441
    Positive Ratings:
    1,196
    I was talking about the time it takes - it's not a moment for a VMF to compile, even for smaller game modes like arena.
     
  17. worMatty

    aa worMatty Repacking Evangelist

    Messages:
    1,072
    Positive Ratings:
    836
    Twenty minutes?
     
  18. Crowbar

    aa Crowbar perfektoberfest

    Messages:
    1,441
    Positive Ratings:
    1,196
    Opposed to a maximum of five when loading a map from Workshop.
     
  19. worMatty

    aa worMatty Repacking Evangelist

    Messages:
    1,072
    Positive Ratings:
    836
    I don't understand the point you are trying to make, Crowbar. But if it's that five minutes is a long time to download a map, I don't have anything in response.

    The process of randomly-generating and compiling a map, then uploading it to the Workshop could take as little as twenty minutes. If you have a server that plays randomly-generated maps, with an example map duration of two hours, then there is no reason why a fresh randomly-generated map can't be compiled in that time in preparation for the end of the map, so there is always a rolling supply with no downtime. The only delay for the player is the one where they download the new map.

    [​IMG]
     
    • Agree Agree x 2
  20. Nixon

    aa Nixon

    Messages:
    108
    Positive Ratings:
    72
    Omg this is genius, are you taking submissions on some of the sections?