Jump to content
  • entries
    62
  • comments
    118
  • views
    8158

Story Time: The Wandering Slavers Problem


Nonseen

427 views

The original concept ( Before remake ) :

 

Slavers from slave hunter Lair go out and semmi randomly patrol around skyrim, capture evrything on sight, player included.
Player can interact them like kill them or being captured or player follower being captured or player stop slavers capture inicent npcs that put here to slavers capture it ( Victims ).

 

Concept when remake:

 

Slavers from Slaver Camp go out and stay on ambush like positions pre fedifined places where likly the player OR the victims travel. Here if player present they attack it.

 

The problems:

 

Problem No: 1


Player very easy to miss the slaver presence. Plus the victims not non stop move from point A to point B they do it dayly 2-3 times.
The slavers it seams only can catch victims when the fallowing things all come true:
-player present in the area or location is loaded
-slavers present in the loaded area
-victims present in the loaded area

 

by deasign this is flawed:
The victims travel trought the specified area in a sort ammunt of time, this means unless a very specific day and point of time player present the right place not experience any of this.

Becuse the victims move a pre defined times slavers need stay al lday long in one place. and if player chose to move trought a diferent route, nothing will happen.

 

Problem No: 2


its take lot of planning to setup a slaver rute. from starting point not go trought any settlement like riverwood.

 

Problem No: 3


by desigin the slaver guild system need constant intake of slaves, as its right now witgout player direct intervention slavers not capture any slave...
so i need add a sub module that at least turns one victim evry fee weak into a slave if no slave captured by slavers, this needed to be done to the mod work properly...
( slave trader move around whit slaves, slave oweners get their slaves and player get the option buy slaves from slave market or form shady figure! )

 

Problem No: 4


when implemented i not aware a big design problem:


if yo ucheck out 99% of the leveled npcs stay a specific cell or location. only VERY FEW leave their current cell or place. Player followers one of the few expection of this rule.
Only uniqe npcs travel long distances but normal level list generated npcs not.
Based on my sort testings there is a good reason for this:


if a npc spawns a encounter zone where level limit let say minimum 2 maximum 20 the npc spawn as usual let say player lvl 21. So spawning npc maximum lvl 20.
what happen if this npc leave the location where its spawned and same time leave the encounter zone?
what if this npc goes a encounter zone where let say maximum allowed level is 15 OR minimum level is 28?
or even worse: a new cell where is no assigned location AND no assinged encounter zone?
The game engine it seams not happy when any of the above happen...

 

In my littiel expereince it seams game enigne okay if a npc level up with player. liek folowers.

 

But normal leveled list npcs not okay unless i use None as setting.

 

Let me explain this part for those readers who not familiar the leveled lists and spawning system in skyrim!

it seams to me this leveled npc spawn work like this:

 

if a location let say a bandit cave set up properly the bandit cave cell has fallowing "Special" data assigned to it:
-Location
-Encounter zone

 

Location is a object that can be child of other locations, can be contain keywrods that help identify the location type, has own music thame, own horse marker and can be own map marker.
Plus finaly own encounter zone.

 

WE love use locations as making new modss... its very important if you make a new cell to add a location to it and that location being child of other location. this way the new location become part of the larger world.

 

So what is our intrest here is Encounter zones that linked to locations, and cells.
Encounter zones defines the minimum and maximum level of a location. with other things.

This helps determinate what leveled entity can spawn on that encounter zone.
it can be set minimum level that say the system no matter what level the player enter this cell all enemy must have minimum this level.
maximum means from leveled list this is the top leveled enemy can be chosen.

to understand more the problems you need understand a bit leveled lists and leveled characters too. this is the point where things start go intresting from boring :d
Skyrim creation kit make possible to me make a npc let say Bob.

 

this bob npc has loooots of attributes i can change, let say it face, what its name, i can make it invincible, or change it race.
to make things more flexible i can chose to bob is using a other actor as base. what this means? Bob use Alice combat statistics, factions and let say ai data... but use own uniqe Bob face.

Now what if i make Bob 1,2,3,4 with bit different faces but all of them depend on alice as soruce of stats but i want not always the same bob spawn on a location?

well i add it to a leveled character list!
all of them!

when i do it i can select the system what level handle this actors.
this sounds crazy? this actor own existing level... yes but i can change how the system handle it when generate a new leveled character.
this means in leveled list i can make spawn a lvl 100 enemy aginst a lvl 1 player if i sett in the leveled list the enemy considered as lvl 1.
the system when chose what npc need spawned only checks the leveled list level not the npc actual level!

okay let say i added bob 1,2,3,4,5 to bob leveled list. what if i make even stronger version of bob that let say based on Eve! This bob versions use near identical face but let say Eve is 2x higher level than Alice.

 

So i make Bob2 leveled list, add to it Bob 10,11 ( i geting tired making many bobs so we have only 2 variant for faces here )

now i have 2 leveled list let say bob leveled list contain lvl 10 Bobs and Bob2 leveled list contain lvl 20 Bobs

now if i wish make use Bob and Bob2 leveled list i need make another one BobSpawnList this contain Bob and Bob2, here i set bob leveled list to lvl 10 and Bob2 to lvl 20 so system going to know what type of bob need to spawned.

 

Finaly to make any use of BobSpawnList i need make a new actor that make use ALL attributes of BobSpawnList Call this Actor: LVLBob.

Now! the good part if i put LVLBob in any cell i got a green loking marker, this represent a leveled list spawn point. Green color means easy.

 

Okay so here is the point where you need focus hard!
when player enter a encounter zone the system check the player level compered the encounter zone based on this determinates the encounter zone level.
REMINDER:in our example the encounter zone minimum level is 2 maximum is 20.

if player enter here as lvl 10 the encounter zone sett to 10.
so far good? okay. now watch this!

 

inside a zone i can chose: easy, normal, hard, veryhard enemys, none . if default settings in play, no ini setting got changed:

 

easy enemys around 33% of the level of the encounter zone settup level. so in our example if encounter zone lvl 10 the system try to generate evry enemy to lvl 3 or lower.
medium 66% of the encounter zone setting its around lvl  6 enemys or lover

 

Hard: same level as the chosen encounter zone level, but not hinger, so lvl 10 in our example or close to it

 

very hard: 25% above the encounter zone level, or if its not possible to find it step foward on the list the next avible stroner enemy variant. in our example this means around 12 or 13 level enemy or higher.

 

none: the system spawn the closest leveled enemy to the player, but not exceeding that( at least this is the offical story... ).

as you can see these 2 things determinate what level of enemy you going to face.

 

if i place here our LVLBob actor this is going to happen:
easy mode if player enter probably no bob going to spawn
normal mode as lvl 10 player enter nothing going to spawn as no lvl 10 bob on the list
hard enemys as lvl 10 player enter bob 1,2,3,4,5 one of this going to spawn as lvl 10 can be spawn
VeryHard enemys: as lvl 10 player enter bob 10,11 one of this going to spawn as lvl 10 can be spawn, yes its unfair! but hey setting sett very hard and this is the best the system can do with what get...
None enemys: as lvl 10 player enters bob 1,2,3,4,5 one of this going to spawn
if lvl 19 player enters still bob 1,2,3,4,5 going to spawn but if lvl 20 or higher enter bob 10,11 going to spawn.
this is a very big difference!
easy enemys not going to spawn lvl 10 bob until player reaches around lvl 31. as this high level of player get easy bob as lvl 10.

for this reason in case one wish its npcs wander around go other locations and encounter zones:
use none leveled chatater setting OR player level dependent npcs OR face a bug as i did.


the bug triggered when you are higher than lvl 1 and the slavers try to leave the starting location. they stuck and then turned to lvl 1 enemys.
its taken me a loong time to figure out what is the caouse of this problem...
then realized my design mistake.

on paper seamed right but needed test properly on the test bench.So this design idea may end up in the bin.

0 Comments


Recommended Comments

There are no comments to display.

×
×
  • Create New...