This system allows you to get some randomness in your dungeons without too much effort. It also lets you keep using the basic NWN2 encounter scaling, etc.
NOTE: This was originally built for NWN1, so some of the stuff (like parent-child encounters) aren't as useful given the new features in NWN2. Still, I've left them in since there's no real harm to having them.
BASIC USAGE
-----------
* Lay down a group of encounters in the same place with the same trigger shape. You can put as many groups as you want in the dungeon. (may not need same encounter trigger shape, just start point?)
* Place the ree_randomise script either in the onenter event of the area that you want randomised, or on a trigger at the entrance (or some convenient point where PCs will trigger it) to the area.
* For each encounter "group" in the area, this script will randomly select one of them and enable it, while disabling the rest. A "group" of encounters is defined by the distance between them. It seems the position of a trigger is defined by either the starting point or centroid when you paint it down, so provided the ecounter trigger centroids are within GROUP_DISTANCE units of each other they will be considered a "group" and only one of them will be enabled each time.
* If you wish for the system to ignore an encounter in the area, set a variable on it called REE_IGNORE to TRUE. Also, set a variable called REE_DISABLED to FALSE on the area to disable completely - useful if you want to put it in all on enter's for area and then enable or disable by area.
ADVANCED CONCEPTS
-----------------
NOTE: none of these are required for the basic system to work.
* chance of no encounter - Just add a float variable to one of the encounters in a "group" called REE_BLANK_PROB and set it to the percentage probability of the group spawning nothing at all.
* encounter weighting - If you have a group of encounters (say 3) and want one of them to be more common than the others, use the encounter weigtings. On the encounter that should be more common set an int variable called REE_PROB to a value higher than 1. (say 2) The rest will default to a weighting of 1. Now, in the example above of 3 encounters with one having a REE_PROB weighting of 2 this one will be selected randomly every 2 of 4 times while the others will be selected every 1 of 4 times. Look mum, statistics!
* parent-child encounters - Allows you to define child encounter(s) of one of the encounters in the random encounter group. This is useful where you want to have, for example, a group of warriors and a couple of archers backing them up AND you want both the warriors and archers to scale without doing something stupid like replacing all your warriors with archers because the CRs happen to be values such that the current PCs level makes biowares scaling algorithm select all archers or all warriors. To do it, just put a variable on the encounter that should be the "child" named REE_CHILD_OF. This should be a string with the tag of the encounter that should be the parent encounter. Now this encounter will only be enabled when the nearest encounter that has the matching tag is enabled. Hey presto, you've now got archer/mage/cleric support for the parent encounter of meat shields.
10 - A Masterpiece, Genuinely Groundbreaking 9 - Outstanding, a Must Have 8 - Excellent, Recommended to Anyone 7 - Very Good, Deserves a Look 6 - Good, Qualified Recommendation 5 - Fair, Solid yet Unremarkable 4 - Some Merit, Requires Improvements 3 - Poor Execution, Potential Unrealized 2 - Very Little Appeal 1 - Not Recommended to Anyone