I know this is game design related, but I have read the StackOverflow FAQ and it states software algorithm questions can be asked here. If this is better off in game design then I hope someone can help me move it, thanks!
I am designing a multi-threaded procedural dungeon generator. However, I am wondering what kinds of problems I am likely to run into-- I haven't been able to find many algorithms that clearly showed multi-threaded in them.
I have three distinct objects which must be created. A 'World' which houses multiple 'Rooms' and each room will house potential 'Objects.'
The current algorithm works like this:
Step 1: Generate World
Step 2: Generate Rooms and Objects concurrently
The World houses a room list, and an 'available objects list.' The Room creation method will generate rooms and add them to the World's room list.-- the Object creation procedure will not communicate with the Room procedure in any way. Rather, the Object creation procedure will pick random rooms from the World's room list and generate random objects in the room.
The only problem I see with this is-- if the Object creation procedure finishes pre-maturely. In other words only some of the rooms in the room list will have objects created in them because the room creation procedure finished later than the object creation procedure.
Are there more problems, and does anyone have any advice or experience with developing such algorithms?