Page 1 of 2

Infestation Mechanics

Posted: Fri Sep 19, 2014 7:20 pm
by Zelknolf
Another thing brought up in the other thread:
oldgrayrogue wrote:Employ the Heegz method of an overarching server wide antagonist with set encounters and forum posts to bring the server alive and provide the PCs with a common back story that all characters regardless of alignment or level can RP around. This is not a campaign, it is merely an environmental context for the PCs to center their RP on.
Active support for events like this is something that tech kicked around extremely casually a few years back (like... 2011? maybe 2012? A while ago-- BG tried to pick up Sandermann's population scripts then, but the project wasn't really ready for prime time and thus became the curious and often-drama-filled goblin spawns in the Cloakwood).

It actually became a lot more viable when we introduced ACR_Candlekeep (which actually builds a complete server map with all of its ATs on startup), and no connection was made.

So the idea, roughly, goes like so...
-- DM hops onto the server and says "Shit is going down!" -- DM pops open some tool (probably the chooser), picks a group spawn waypoint, and says "This place here is the nexus of shit going down."
-- By some UI, the DM specifies several tiers of trouble that might be associated with the shit which is going down (if it's, say, a portal vomiting demons into the prime, the bottom tier would be small fiendish animals; then dretches, quasits, and large fiendish animals; then all that plus babaus and succubi, and so on), and says how aggressively the threat is growing (that is, how many demons are burping out of this portal per game day?). Optionally, the DM specifies a boss monster.

Then that's all that the DM has to do. The whole thing is set up and the rest of this happens even if the DM spends the rest of the time napping. They could also run events around it, lead parties in to shank the boss, maybe run stuff that slows the hoarde's growth or meaningfully damages their numbers. Whatevs. I'd try to provide a UI to make adjust this stuff.

-- Then every group spawn in that area and adjacent areas turns into the threat (maybe restricted per DM instructions like... night only if it's undead, so thick in the miasma of the unliving by night and completely and eerily barren by day). The outermost areas off the infested blob have the bottom tier of infestation and it gets a tier tougher for every area deep you go in.
-- The system tracks how bad the infestation is; if its population gets too chubby for its current areas, it starts to grow and occupy more areas. If PCs heroically charge in and cull the hoarde faster than it grows, then the infestation will start to shrink.
-- If the DM specifies a boss monster, then finding and killing it stops the infestation from growing, and cleanups from PCs can finally end the problem for good. Also the boss monster is a boss monster per the loot proposal definition (so if you burn up a bunch of consumables while heroically destroying the boss, you can actually find enough stuff to replace them and continue your adventurey ways).
-- If a player group clears an area of the infestation, it's a "static quest" worth 25 xp at whatever CR is appropriate for that tier of bad guy, and you get a phat lewt container for that CR and that much gold (e.g. ~35 gold/character for levels 1-5, ~60 gold for levels 6-10, ~150 gold for levels 11-15, ~300 gold for levels 16-20).


Disadvantage would really just be frontloaded work. We'd need to make this operate to begin with-- but because of old ACR work, it wouldn't be very expensive in terms of server performance to make it go.

Advantage would be that it would create a (granted, shallow) event that's available to all levels and time zones in which the actions of players make measurable impact on the results of the event.



So, firstly, I'd need a server where I can do this-- TSM is code rot and WHL isn't well enough standardized to make writing these hooks a good idea. Would BG or MS be willing? Or both?

Secondly, it'd need an audience; who all would play in such an event?

Extra requirements:
Need to be able to shield low-level static content areas from infestations
Need to be able to cap the tier of infestation spawns in specific (e.g. travel) areas

Interested Players so far:
oldgrayrogue
twin axes
brokenbone

Re: Infestation Mechanics

Posted: Fri Sep 19, 2014 7:54 pm
by Brokenbone
This is interesting. Feels like an outgrowth of set and forget type encounters (and rumors) that some people like. Shallow yes, but also fun and a reason to play.

I guess much like such encounters, a rumor asking for some courtesy level range is good. Vermin, rats, goblins? Moderate undead? Horrendous DR critters like fiends? All call for different level ranges. Yes, it can be fun to stomp stuff way below your pay grade (this is also what feats like Cleave are for, or AOE spells like Cloudkill) but unless it's to maybe advance the fun of say, several people, soloing all this stuff would be sad/bad.

Re: Infestation Mechanics

Posted: Fri Sep 19, 2014 8:19 pm
by Zelknolf
Brokenbone wrote:This is interesting. Feels like an outgrowth of set and forget type encounters (and rumors) that some people like. Shallow yes, but also fun and a reason to play.
Oh yes, unambiguously. People seem to like that, so maybe adding the extra little tickle of saying "And we're going to track it, so if you're good at pounding on this stuff it will work." (one of the criticism I've had of previous ones, and heard echoed, was that actually trying to do something about circumstances like this doesn't actually matter-- the vermin or orcs or gnolls or whatever are infinite; the forces which will resist in the final battle will be the same regardless of PC efforts, thus doing anything feels more like grinding than participating in an event; also might reinforce the "living, breathing world" thing that Veilan says he likes, might let OT "earn" a victory, might give OGR novel adventurey challenges, and might give several people something to log in and talk about... and plan about... and do something about. If they all do so together, that's a pretty big win)


Though yeah-- like with anything with a finite supply, I suppose I should put a (* don't be a dick) on it.


Is this a BB saying he'll participate, then? Or just commenting?

Re: Infestation Mechanics

Posted: Fri Sep 19, 2014 8:47 pm
by oldgrayrogue
I would participate in any content that gives an overarching story to a server -- or even all servers -- to play around. I would even volunteer to play test it for you OOC. I presume this could be used for dungeons as well as outdoor areas? The easier it is for DMs to "set and forget" the more likely it is that they will use it. Make a forum post, set an encounter, done. Who knows, if it generates a lot of player activity maybe it can get turned into a campaign for less "shallow" story based fun. Forum posts can be used to further the "story" however. Heegz did this to good effect on BG.

Re: Infestation Mechanics

Posted: Fri Sep 19, 2014 9:40 pm
by Zelknolf
oldgrayrogue wrote:I would participate in any content that gives an overarching story to a server -- or even all servers -- to play around. I would even volunteer to play test it for you OOC. I presume this could be used for dungeons as well as outdoor areas? The easier it is for DMs to "set and forget" the more likely it is that they will use it. Make a forum post, set an encounter, done. Who knows, if it generates a lot of player activity maybe it can get turned into a campaign for less "shallow" story based fun. Forum posts can be used to further the "story" however. Heegz did this to good effect on BG.
By current design, "any collection of continuous areas containing group spawns."

So this could hypothetically cause an unchecked infestation to overrun an entire server, because every area in a real ALFA mod contains group spawns. Those badgers and rabbits on the side of the road = groups; those random-appearanced guards = groups; those goblin clans holed up in their poorly-fortified cave = groups. An infestation would show up, displace the goblins, eat the mushrooms, make adorable rugs out of the badgers and rabbits, and then prepare to punch adventurers in the face. The concept is that this should be an aggressive and threatening force that looks fundamentally disruptive to the locale. I bet I could even add some esthetic stuff to it-- not promising yet, but like... turning the fog dense and red in an area based on whether it's infested with demons should be doable.

But I think that I'll detect and not overrun places where that'd just be shitty (start locations, vital services) and keep the CR super low on roads (so that players keen on responding don't die while trying to meet up, but delving into heavily-infested wilderness would represent escalating CR until you find the source... and come to think of it, such a scheme would also make it so that you could have multiple "nodes" of highest-tier difficulty [like if the Sharp Teeth had an unchecked infestation and we took as assumed that the Trade Way can't go over tier 1 and the roads to Candlekeep and Gullykin can't go over tier 2, then we'd have mid-tier threats in the Sharp Teeth and the caves would contain top-tier badasses]).

Re: Infestation Mechanics

Posted: Fri Sep 19, 2014 9:58 pm
by Ronan
As you probably know something similar to do this was done manually on TSM for the painted tribes plot. It worked well for the level ranges it was designed for, but if Sywyn wasn't in your party the chance of PC deaths was quite high. Large sections of the server were rendered inaccessible to most PCs.

I would strongly recommend making the periphery of the infestation much lower in EL than the center, increasing in difficulty as you move further in. Edit: Yeah what was just said.

Re: Infestation Mechanics

Posted: Fri Sep 19, 2014 10:58 pm
by Castano
this is a great idea, so long as DMs are given good feedback on what they are unleashing. e.g. avoid the rendering of large unplayable servers requiring the assistance of 1-2 high levels who may not be around to clear them off. Nothing sucked in NWN1 more than a server plot that trapped everyone in town while we waited for the leader to show up and clear a path out.

Whatever is created needs to not mess with the server's "safe" zones and low level static content too much.

With those caveats I think this is a f-ing awesome idea.

Re: Infestation Mechanics

Posted: Fri Sep 19, 2014 11:02 pm
by Zelknolf
Hmm... hadn't thought about low-level static content. That'll be harder to detect.

I can probably find a way to account for it, but that's gotta go on the requirements list.

Re: Infestation Mechanics

Posted: Sat Sep 20, 2014 1:32 am
by Twin Axes
Me and AK had a ton of fun stamping out an "infestation" in Ruqel this weekend. More of that would definitely be a reason for me to keep logging in. Count me in.

Re: Infestation Mechanics

Posted: Sat Sep 20, 2014 2:56 am
by Castano
Zelknolf wrote:Hmm... hadn't thought about low-level static content. That'll be harder to detect.

I can probably find a way to account for it, but that's gotta go on the requirements list.
I've previously been in favor of a tagging system for areas where we can associate data with an area that describes its danger level. Once you have that data you can do all sorts of stuff.

Re: Infestation Mechanics

Posted: Sat Sep 20, 2014 3:08 am
by Zelknolf
Castano wrote:
Zelknolf wrote:Hmm... hadn't thought about low-level static content. That'll be harder to detect.

I can probably find a way to account for it, but that's gotta go on the requirements list.
I've previously been in favor of a tagging system for areas where we can associate data with an area that describes its danger level. Once you have that data you can do all sorts of stuff.
We could-- I think I'll just provide the means to let a builder say "I don't care about your fancy math. I want this area to be this hardcore." -- that'd cover a lot of our cases.

But for the others, we currently use something that actually has a lot of potential for some pretty mundane-looking things. The lines in your chooser that are orange to indicate adjacent areas, and the chooser's preference to teleport you next to the connecting AT when you double click an area on it, actually comes from a complete server map built at every module start. The ACR, thus, knows about every area and how every area connects (in real C# collections, where looping over all the areas once every 5 hours--on a background thread if we like-- is well within the realm of "not bad"), and thus could know how far from civilization every area is if it was told which areas were "civilization." Would mean that we'd only need builders to tell us about the exceptions; mark on the map where the cities and roads are, and where the unusually peaceful/tough wilderness areas are, and let the ACR fill out the rest like a heat map.

Re: Infestation Mechanics

Posted: Sat Sep 20, 2014 3:11 am
by Zelknolf
Twin Axes wrote:Me and AK had a ton of fun stamping out an "infestation" in Ruqel this weekend. More of that would definitely be a reason for me to keep logging in. Count me in.
Oh, well, those style of quests don't even need core rules development to do. You might try sniffing around Ruqel for those simple social-sounding quests that'd boost your reputation. If people trusted you, there might be another slightly-grander one to spend an afternoon on.

Re: Infestation Mechanics

Posted: Sat Sep 20, 2014 4:21 am
by Brokenbone
I'd monitor rumors and if I had a character with buddies, yeah I'd play set encounters of this infestation type!

Re: Infestation Mechanics

Posted: Mon Sep 22, 2014 3:22 am
by Zelknolf
OK, so... BB needs a character with buddies, firstly. BB, roll a character and acquire some buddies!


Secondly, a case that I probably "could" handle but I'm not sure is worth the effort of handling. It would be possible to make the progression of tiers of death not perfectly smooth if a character was in an infested area during the recalculation.

e.g., tiers distributed like so:

Code: Select all

~ ~ ~ ~
~ 2 ~ ~
~ 1 1 0
~ ~ ~ ~
With the PCs in the elbow during the recalculation and an infestation with a fecundity of at least 2. Then we end up with...

Code: Select all

~ ~ ~ ~
~ 3 ~ ~
~ 2 1 0
~ ~ ~ ~
... but tier 2 doesn't spawn, because the PC is in the area and we (usually) prevent that, because pooping respawns on PCs in permadeath would suck. But that'd mean that a PC fighting tier 1 at a very bad time would AT and suddenly be fighting tier 3.

Presumably, the PCs would still be able to run (I hope that we don't have a bunch of balors and hastebears in our "tier 3" infestations-- DMs would be able to do that, but I imagine they wouldn't for the same reason they don't currently scatter balors in set encounters or tool them into modules). The scenario also gets less plausible at higher tiers or wider jumps: we don't have a lot of straight paths or linear caves more than a few areas deep-- they tend to either branch off (which will diffuse the growth of the infestation across a wider area) or meet the surface (same).

Though I guess posting this here as a way of noting that I'm aware this is a thing-- and while I'm making a conscious effort to be kind to every level of PC approaching this, spawns won't be perfectly predictable. You'll still be able to generally assume that you'll fight pushovers before competent fellows before hardasses before the big bad.

Also, wiki started: http://www.alandfaraway.org/wiki/Infestation_Quests


Development is still low-level-- getting a global quest C# project up and building, saving/loading infestation data persistently, NWScript wrappers for the major commands, accessing shared resources from ACR_Candlekeep and assembling collections small enough that we're willing to loop over them on the main thread.

Re: Infestation Mechanics

Posted: Mon Sep 29, 2014 3:37 pm
by Zelknolf
Small progress update here-- about half of the back end stuff is done. Have a CLRScript version of spawns, which should (still needs testing) be picked up by the NWScript spawn stuff to make them despawn/ respawn/ run spawn groups out effectively. Also expanding the design to "groups and creatures" -- it turns out that if you want this to run on a server like Moonshaes, and you want to be able to infest those tiny towns, then you'll want to replace the guards and the one merchant standing in the middle of the town (not to give anything away, but y'know, maybe we don't want to be able to infest Corwell or Kingsbay, but Koart? Eh... maybe up to tier 1? Certainly Macsheenan, anyway, because spawning undead are the most-plausible kind of infestation)

Haven't yet set up the timers to make spreading happen; it looks like I'll have to do a lot of stuff on the main thread, though, so I'll probably have to be clever about when I run the spread logic.

There's little bits of the clearing/de-infesting of areas written, though I haven't hooked anything up to make monster death cause areas to spawn less-horrible things. It isn't terribly clear above, but I'm going to go with "killing all of the monsters in the area drops its tier by 1" (so that one person can't just go farm out the whole thing in an afternoon; one person with a normal sleep schedule would probably expect to contain an infestation to a number of areas equal to twice the infestation's fecundity, but one tough guy willing to romp through the whole region and even a couple little guys willing to harrass the fringes should be enough to make them shrink) -- and probably connected to that, I'm thinking that I'll make fecundity linked to the survival of the boss monsters; like "this infestation grows an area 1 tier or occupies a new area at tier 1 per day per boss monster" -- and then gank a boss monster to make the infestation grow more slowly.

Still nothing done on the front end... so while promising for the function of things, it probably won't be a small project to give DMs a reasonable way to st things up.