This is a demo of my RAD (Random Area Decorator) system. With no pre-placed information, this can realistically and randomly decorate an area with any type of object.
For the purposes of this demo, I only used one aboveground area with 3 types of tree and one underground area with 1 type of tomb. However, it could be any type of object you can think of, for example wild animals, rocks, secret doors, etc.
Ive worked on this a bit more (for example, now it avoids putting things on tileseams) and its coming a long nicely. its actually suprisingly quick when generating an area (but you still wouldn't want to do it too often) Ive connected it to my Random Area Linker system so that the tiles are varied a bit. Ive also connected it to a Random Encounter Generator which in turn calls my Random Equipment Functions and Random Item Generator (which causes the most lag for some reason Im not clear about).
The overall effect is that its quite unpredictable in the details, yet consistent in the overall pattern. Ive started working on a Random Plot Generator to provide a story element to it. Once thats finished, I can populate the lists with things and release a proper version of NWAngband, finally.
Posted by QSW at 2006-02-21 10:03:04 Voted 9.75 on 02/21/06
*Blinks* This is a really interesting idea! I see that the random script is fired when you pull the floor lever? Well I can think of some SP modules where this could be put to good use with a little alteration, if that is possible?
For instance, a SP module where the player might run through a snowy/forested area. All they are going to be doing there is meeting a few encounters. If this system could be placed up the OnClientEnter of a specific area, then the player could run in, have a few fights, and run out again. This could in theory mean that the replayability of a module increases a LOT, especially if the builder can put in random encounters from a large enough list. What would be even greater is if this system could be scripted so that when a player leaves the area, everything is De-spawned, thus they could run back through the area (let us assume they have to go somewhere and return with a certain item) and it would look totally different again! But even if the latter were not possible, this would give builders a real opportunity to work on the plot specific areas, and leave the area 'look' of the unimportant in between areas to this script.
This is assuming I have even a tiny grasp on what you have just shown us ;)
Posted by QSW at 2006-02-21 10:02:38 Voted 9.75 on 02/21/06
*Blinks* This is a really interesting idea! I see that the random script is fired when you pull the floor lever? Well I can think of some SP modules where this could be put to good use with a little alteration, if that is possible?
For instance, a SP module where the player might run through a snowy/forested area. All they are going to be doing there is meeting a few encounters. If this system could be placed up the OnClientEnter of a specific area, then the player could run in, have a few fights, and run out again. This could in theory mean that the replayability of a module increases a LOT, especially if the builder can put in random encounters from a large enough list. What would be even greater is if this system could be scripted so that when a player leaves the area, everything is De-spawned, thus they could run back through the area (let us assume they have to go somewhere and return with a certain item) and it would look totally different again! But even if the latter were not possible, this would give builders a real opportunity to work on the plot specific areas, and leave the area 'look' of the unimportant in between areas to this script.
This is assuming I have even a tiny grasp on what you have just shown us ;)
Thank you for sharing, and a comment from the great Georg_Zoeller is smashing, and must mean you are onto something. _________________________ QSW -NWVault Reviewers Forum
1) The major point of what I am trying to do is that it requires no builder action at all. No waypoints to pre-place stuff, no defining of regions that can and can't be spawned into, no elevation mapping, nothing. Litterally just place the tiles and doors in the toolset, then its ready to go in-game because its randomly generated on-the-fly.
2) I had forgotten about the tile-seam lag issues. I should be able to work in checks so that it does not spawn within a certain distance of a seam. Has anyone got any real figures on how bad placeables on seam are? Currently the system is fast enough for SP or small-scale MP, but I wouldnt want to use it on a full-scale PW.
3) & 4) are kind of combined. This is a spawn system, not an area cleaning system ;) For my purposes, I will use this system for one-shot areas, such as wilderness encounters, dungeons, DM-ing on-the-fly etc. Then when the area is finished with (encounter over, dungeon completed, a different DM wishes to re-use the area), it can all be thrown away and never re-used. If someone wanted to re-use the same placeables in the same area, one suggestion that springs to mind would be to make a replacement random number generator system. Then if you could set a specific "seed" number, you would (in theory) get the same placeables in the same position each time.