chimmmihc
|
  |
| Joined: 24 Jul 2014 |
| Total Posts: 2420 |
|
|
| 20 Aug 2015 11:11 PM |
So I finally finished my project after 82 well made lines and 5 days. Im proud of it and I'd like to share it with you guys. Completely random dungeon generation.
http://www.roblox.com/games/285603975/Garys-Dungeon |
|
|
| Report Abuse |
|
|
|
| 20 Aug 2015 11:14 PM |
Nice!! But why this? Isn't once enough? while wait(60, 300) do math.randomseed(tick()) end
while true do the do |
|
|
| Report Abuse |
|
|
chimmmihc
|
  |
| Joined: 24 Jul 2014 |
| Total Posts: 2420 |
|
| |
|
|
| 20 Aug 2015 11:19 PM |
No seriously, is it just me misunderstanding stuff or does the randomseed update with time once you set it to tick()???
while true do the do |
|
|
| Report Abuse |
|
|
chimmmihc
|
  |
| Joined: 24 Jul 2014 |
| Total Posts: 2420 |
|
| |
|
morash
|
  |
| Joined: 22 May 2010 |
| Total Posts: 5834 |
|
|
| 20 Aug 2015 11:27 PM |
Nice, you actually got the collision detection working.
Now as a challenge, see if you can remove some of the dead ends (don't worry about removing all of them, some might not even be possible to extend from) by connecting them to other dead ends. This was mentioned in the article as being done with an algorithm, but the only detail given was "This problem in itself is complex enough to deserve a separate article." |
|
|
| Report Abuse |
|
|
morash
|
  |
| Joined: 22 May 2010 |
| Total Posts: 5834 |
|
|
| 20 Aug 2015 11:40 PM |
| Oh, you could also toy around with the generation of the content within the rooms, as also shown in the article, with things such as enemies, treasure, scented candles, whatever. Another thing you can look at is an algorithm to "texture" your rooms with things such as cracks in walls, sinkholes, and dirt in the ground. |
|
|
| Report Abuse |
|
|
chimmmihc
|
  |
| Joined: 24 Jul 2014 |
| Total Posts: 2420 |
|
|
| 21 Aug 2015 12:22 AM |
@Morash Thanks for the suggestions. As for dead ends once the alogrithem sees its reached the generstion limit it try's to fill in any infill nodes with rooms; however, if the collision detection doesn't like what it's trying to fill with it removes it and places a wall in its place. But I do have a way of reducing dead ends and I made sure to easily open this problem to solutions by adding in a asset folder just for dead ends.
Dead end solution: Have a straight verticals ladder (down or up) with a start node and one attachment node. Once you have the attachment node it will index it as a open node and generate from the top of the ladder. And if we don't want to solve dead ends, or at least not completely we can just give them a point. After I make the dungeon look like a true dungeon I can add per module generation.
Per module generation: To expand upon the randomness of the whole thing I could make config reader that takes assets you have store and uses that for when it flips thought the parts in the collision detection and index any nodes you placed for per module generation as open Asset nodes. And based on the name of the node we could assign a specific asset folder. Ex:
- Dungeon - Dead ends
- Rooms
- Modules
- Room config - LampsAssetFolder - A Lamp model - Another lamp model - IKEA Lamp model - Somewhat built IKEA Lamp model
So now whenever we index the node named "Lamps" as a open Per Room Gen Node we look for an asset folder named "Lamps" and randomly pick a lamp model out of that asset folder and place it, remove the node and repeat for any other indexes. This would allow for INSANE randomization that could be customized easily.
Give dead ends use: Using per module gen we could set up Bosses or locked doors using this system, and say for the locked door the only way to open it is to find a key stashed somewhere in a Deadends chest. Problems for this would be you'd have to run a check to make sure that both the door and key where spawned in your generation. If not delete and start a new dungeon. Now this is kinda sucky but my generator being so fast even unoptimized it's not super bad.
Thread is still open for discussion or suggestions!
|
|
|
| Report Abuse |
|
|
|
| 21 Aug 2015 01:00 AM |
| thought you were the actual chim ;-; |
|
|
| Report Abuse |
|
|
Qorm
|
  |
| Joined: 25 Jul 2010 |
| Total Posts: 1650 |
|
|
| 21 Aug 2015 01:00 AM |
| jesus christ dude well done |
|
|
| Report Abuse |
|
|
chimmmihc
|
  |
| Joined: 24 Jul 2014 |
| Total Posts: 2420 |
|
|
| 21 Aug 2015 01:13 AM |
@Long http://www.roblox.com/Forum/ShowPost.aspx?PostID=171821726 @Long I think this whole project would be a breeze for chim, I'm not certain but I'm pretty sure he is god tier scripter right? Up there with miss lunate?
@Qorm take it, claims its yours, pee on it for all I care |
|
|
| Report Abuse |
|
|
| |
|
chimmmihc
|
  |
| Joined: 24 Jul 2014 |
| Total Posts: 2420 |
|
|
| 21 Aug 2015 01:30 AM |
| Click the link I directed at long. |
|
|
| Report Abuse |
|
|
chimmmihc
|
  |
| Joined: 24 Jul 2014 |
| Total Posts: 2420 |
|
| |
|