SunMadcat's Map/Room Randomization.

Maps, modifications, add-ons, projects, and other releases for Zandronum. Also includes announcers.
User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

SunMadcat's Map/Room Randomization.

#1

Post by madcat » Fri Mar 04, 2016 11:53 am

I've been trying to find a way how to make maps surprising even for their author - and this is what I've found. It is a room that can accept one of several possible layouts (in the end the room will do so when the game starts), chosen randomly.

So far I have done only this:

Image

https://www.dropbox.com/s/vfbzi5t9xslp6 ... m.wad?dl=0 - first, one-room version

The yellow line indicates the only part of the room that remains the same.

The layout can be set in the game manually by pressing the 10 switches there, or by killing an object that sets the layout randomly.

Please give me a feedback if you have anything to say about it. So far it is only one simple room but in the future I can try to improve the details.

https://www.dropbox.com/s/5vlbafzcm3bfm ... d.wad?dl=0 - the latest version.
Last edited by madcat on Sat Mar 05, 2016 2:14 pm, edited 1 time in total.

User avatar
Empyre
Zandrone
Posts: 1316
Joined: Sun Jul 08, 2012 6:41 am
Location: Garland, TX, USA

RE: SunMadcat's Map/Room Randomization.

#2

Post by Empyre » Fri Mar 04, 2016 5:55 pm

This is a very interesting concept. Can you make all those different configurations look good? What about the placement of things, like monsters, ammo, health, etc? I look forward to seeing this completed.
"For the world is hollow, and I have touched the sky."

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

RE: SunMadcat's Map/Room Randomization.

#3

Post by madcat » Fri Mar 04, 2016 6:33 pm

about the monster/item placement - the yellow lines indicate areas where the room remains empty in all the variations, so monsters/items can be placed there. About making all the variations look good - quality had to step back in order to make some space for the system if you know what I mean XD

Also, this L shaped room is not the only one in my plan. I want to make a T shaped room as well as a + shaped room. In the end, I will have a set of 9 rooms in the following pattern:

L+L
T+T
L+L

the player will enter the set in the lower + shaped room. From there he will have to get into the upper + shaped room. There are 9 possible layout for this whole room set...and when the game starts, only one of them will be chosen, at random. So in the end, we will have a HUGE amount of possibilities how the whole complex could look like.

User avatar
Combinebobnt
Retired Staff / Community Team Member
Posts: 1893
Joined: Mon Jun 04, 2012 3:37 am
Location: Erth
Contact:

RE: SunMadcat's Map/Room Randomization.

#4

Post by Combinebobnt » Fri Mar 04, 2016 8:09 pm

I was thinking about randomizing maps in a similar way to this as well. You can probably create some powerful stuff with acs randomization, like that zdoom dungeon wad but not all boring squares.

User avatar
arkore
Forum Regular
Posts: 183
Joined: Mon Dec 17, 2012 8:01 pm

RE: SunMadcat's Map/Room Randomization.

#5

Post by arkore » Fri Mar 04, 2016 9:04 pm

This is good, but I would say only have a maximum of 3 designs that the randomizer chooses from. I don't think people want to learn a million different variations of a map.
Creator of Zone-F, Rocket Arena, Jail Break, Hellway Invasion, Hellstop, Bosses from Hell, Chillax II, and ArkDoom.

User avatar
Ænima
Addicted to Zandronum
Posts: 3523
Joined: Tue Jun 05, 2012 6:12 pm

RE: SunMadcat's Map/Room Randomization.

#6

Post by Ænima » Sat Mar 05, 2016 1:27 am

Zandronum SnapMap is finally here.
­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­
Doom64: Unabsolved: New weapons, monsters, and gameplay features for coop !


ZandroSkins
: a pack made by our community

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

RE: SunMadcat's Map/Room Randomization.

#7

Post by madcat » Sat Mar 05, 2016 2:04 pm

I have finished the first full (and automatic) version of this

Now there are 9 rooms and a randomly generated path through them.

In map01 the object has to be shot to start working, while in map02 this is done automatically, plus there is some monsters/health/ammo as well.

https://www.dropbox.com/s/5vlbafzcm3bfm ... d.wad?dl=0

Fonze
New User
Posts: 12
Joined: Thu Sep 24, 2015 4:03 am

RE: SunMadcat's Map/Room Randomization.

#8

Post by Fonze » Mon Mar 07, 2016 5:20 am

This sounds really sweet man; I look forward to trying this out soon!

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

Re: SunMadcat's Map/Room Randomization.

#9

Post by madcat » Sat Dec 16, 2017 8:29 am

I have made a new complex of rooms with randomly chosen way through. This time it is only the doors between the rooms that can randomly change ( the rooms themselves remain the same ) but on the other hand there are 16 rooms total ( in 4 x 4 pattern ) and 34 possible ways through, with every single way forcing the player to visit 15 rooms ( 1 room is omitted ).

In map01 I have tried every single room to look good
in map02 I have made all the rooms the same and simple but there are two such complexes instead of one ( making it 1156 possible ways through total )

Image

Download link - https://www.dropbox.com/s/tw89ep6tg8tko ... .wad?raw=1

PS: Im going to put 4 such complexes into a map someday. Then the amount of possible ways through will be 1336336 ( 34x34x34x34 )

bobvorn
New User
Posts: 3
Joined: Fri Mar 15, 2013 9:06 pm

Re: SunMadcat's Map/Room Randomization.

#10

Post by bobvorn » Sat Dec 16, 2017 3:31 pm

I tried something similar with DM maps a while ago. My mapping skills aren’t great but I love the concept of random map generation. If you made this into an ACS library it would allow others to add this to their projects as well. Keep up the good work

Link to old project: https://zandronum.com/forum/viewtopic.p ... 388#p57388

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

Re: SunMadcat's Map/Room Randomization.

#11

Post by madcat » Sat Dec 16, 2017 7:22 pm

bobvorn wrote:
Sat Dec 16, 2017 3:31 pm
I tried something similar with DM maps a while ago. My mapping skills aren’t great but I love the concept of random map generation. If you made this into an ACS library it would allow others to add this to their projects as well. Keep up the good work

Link to old project: https://zandronum.com/forum/viewtopic.p ... 388#p57388
Making this ACS would not help - this randomization system requires certain sectors to have sector tags 1-24 so it does not matter whether is the action started by ACS or a DECORATE object with doomednum 10000 - you would have to edit your map in order to make this work one way or the other.
Personally I prefer DECORATE because I understand it better and DECORATE can not be compiled like ACS so the source code is always clear ( and others can learn from it) .
Btw I have read your thread and Im ashamed I have not noticed it before - I too, get bored of maps being always the same...especially RPG maps.

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

Re: SunMadcat's Map/Room Randomization.

#12

Post by madcat » Sat Dec 23, 2017 12:50 pm

I have made an additional part for the randomized map - now it consists of the square-shaped complex ( 34 possible shapes ), followed by a semicircle-shaped complex ( 144 possible shapes ) and 5 possible Yellow key locations, making it 24480 possible shapes total ( 34*144*5 )

https://www.dropbox.com/s/g572llr5s38ym ... .wad?raw=1

Samuzero15tlh
Forum Regular
Posts: 253
Joined: Wed Sep 09, 2015 2:21 pm
Location: In home, sweet Home
Clan Tag: <skr>

Re: SunMadcat's Map/Room Randomization.

#13

Post by Samuzero15tlh » Sun Dec 24, 2017 7:10 pm

Wow, random based level, well thats new

User avatar
Combinebobnt
Retired Staff / Community Team Member
Posts: 1893
Joined: Mon Jun 04, 2012 3:37 am
Location: Erth
Contact:

Re: SunMadcat's Map/Room Randomization.

#14

Post by Combinebobnt » Sun Dec 31, 2017 7:00 am

don't get too excited based off the number of possibilities alone. you want to maximize variance too. if I make a rectangle with 10000 possible sizes and sometimes it's upside down, each playthrough won't really be surprising.

I'm sure there's algorithms or whatever for making roguelike dungeons. you can just make a huge sector grid and then write some nice A C S (good luck doing this in decorate, dare you try) and make some fun stuff. that zdoom wad I mentioned didn't get anywhere. going full minecraft with 3d space would be cool but let's be real, who wants to bother with that in doom builder.

Fun things to try:
Divide the map into a huge grid and hope there isn't a sector tag limit:
1. find a roguelike map generator and port that into acs (good luck)
2. make rectangle rooms and connect them p easy
3. Define a ton of prefab rooms like oblige or strafe or whatever and then find ways to connect them. This will be nice for some verticality...
4. something like the above but a trade secret I want to try first in the later future...

Grids are noice for making randomized maps but I guess you can do the room with variance thing in a normal map as well. It's just really easy for no1 to care about this because how exciting can a tunnel or room with a pillar in it be compared to a normal well thought out room... If the room connections are always the same the layout isn't going to be fresh each time. Maps can have areas that barely constitute a room (open spaces). Good luck randomizing that. You could try designing several normal areas and connections and just limiting access to them in one playthrough. That will seem a little more fresh than usual. Only problem with that is that it requires a multiple of additional effort limiting the mapping pace.

Oh yea don't forget about randomized things like monster and item placement. Whodunit has something like this. Now that u can do in ur decorate safe space. I would use acs to ensure everytime is balanced tho.

Just thought of this, good way to disregard all of the above: Contribute to oblige instead and make it $pice so u can just churn out a megawad for each playthrough. things get way easier if they don't need to happen in gametime. Hand design boss arenas and stuff of course.


a man can dream:
someone made like minecraft 20^3 block sized in a mod. extend that? -lol)
extend the 3d possibilites of gzdoom to allow something cooler...

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

Re: SunMadcat's Map/Room Randomization.

#15

Post by madcat » Sun Dec 31, 2017 11:04 pm

I really appreciate your criticism, Combinebobnt. Im aware of the fact that the mere amount of possibilities, no matter how huge, does not mean much. It is up to everyone where to place such randomized complex and how is the complex going to look like - what I made here in this thread are mere templates and examples.

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

Re: SunMadcat's Map/Room Randomization.

#16

Post by madcat » Tue May 15, 2018 5:06 pm

I have started working on a new randomization system. My last successful system provided me with 24480 possible shapes for a map - now I have a plan for 41103477866897391940009988 ( not a joke )

Samuzero15tlh
Forum Regular
Posts: 253
Joined: Wed Sep 09, 2015 2:21 pm
Location: In home, sweet Home
Clan Tag: <skr>

Re: SunMadcat's Map/Room Randomization.

#17

Post by Samuzero15tlh » Wed May 16, 2018 12:53 am

madcat wrote:
Tue May 15, 2018 5:06 pm
Now I have a plan for 41103477866897391940009988 ( not a joke )
DAAAAAMN

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

Re: SunMadcat's Map/Room Randomization.

#18

Post by madcat » Sat May 19, 2018 10:19 am

I have finished the randomized complex. Here it is https://www.dropbox.com/s/n7piqpj6t5n7y ... .wad?raw=1

Image

This complex of 16 rooms ( 4 x 4 grid ), where each room can have up to 40 different shapes, and the amount of possible ways through this complex is 34 ( where the player walks through 15 rooms only ) has an enormous amount of possible shapes total.

If I calculated properly, (40^15) * 34 = 36507222016000000000000000. Besides that all the entrances ( 24 total ) can be either "with a door" or "without a door". Plus in all the rooms, some RedTorches and ShortRedTorches are added randomly ( I do not want to include these in the calculation because thats too much for me )

Im aware of the fact that this labyrinth is dull in appearance - know that its just a placeholder that can be changed into a better-looking map.

PS: I know its lesser than originally planned 41103477866897391940009988 but whatever
PPS: more than 6500 DECORATE strings are working in this

User avatar
Empyre
Zandrone
Posts: 1316
Joined: Sun Jul 08, 2012 6:41 am
Location: Garland, TX, USA

Re: SunMadcat's Map/Room Randomization.

#19

Post by Empyre » Sat May 19, 2018 4:37 pm

DECORATE? This looks like a job for ACS.
"For the world is hollow, and I have touched the sky."

User avatar
madcat
Forum Regular
Posts: 359
Joined: Mon Jul 08, 2013 7:16 pm
Location: Czech republic
Clan Tag: [Sun]

Re: SunMadcat's Map/Room Randomization.

#20

Post by madcat » Sat May 19, 2018 4:42 pm

Empyre wrote:
Sat May 19, 2018 4:37 pm
DECORATE? This looks like a job for ACS.
Im not very good with ACS.. but I know that even if I was, creating this would be just as tiresome as it was with DECORATE. The main difference
between using ACS and DECORATE in this case is how the "script" is being executed. In ACS I would make it happen when the map starts...while in DECORATE I made a monster ACTOR that kills itself less than second after it spawns - and its death state executes all the neccessary stuff.

Post Reply