Fast travel/Random encounter revamp...

Quasar

First time out of the vault
So, I was wondering (while wandering)...

SHORT VERSION:
I thought of a possible script to check for random encounters while fast-travelling, fallout style.

LONG VERSION:
I thoroughly miss the travel/random encounters from FO2. I was thinking about how this system could be returned to FO3. And came up with the following idea...

Now: Player fasttravels to a location (coords X1,Y1) from his location (coords X2, Y2). He is teleported to X1, Y1 end of story.

Could something like the following be implemented?

Player clicks fasttravel.

Step 1:
A script checks his current location, and the distance to the target (SQRT[(X1 - X2)^2 -(Y1 - Y2)^2] ). For each, say 200m (or another appropriate value) of distance to the target location, the script rolls a percentage (say, 5 percent) for a random encounter. On a successful check, we have a random encounter, go to step 2. On no successful check, nothing happens and the character indeed fasttravels to his original destination.

Step 2:
Then, we roll on a suitably created table of random encounters (probably the one the game already uses), and check what the player encounters (say, a deathclaw).

Step 3:
Then, we have another check, the characters skill. We now have no outdoorsman skill, but we could make one on the fly. Something truly appropriate would be:
Base: Intelligence + perception
If the game has 50 locations for you to explore, add 1% to this number for each one discovered.
If you have gained the survival expert perk, add another 10% (so we have a maximum 100% for 10per+10agil+70 locations + 10 surv. expert).
*(Obviously, as I don't know the exact number of locations in the game, this can be tweaked accordingly, and it doesn't have to come out exactly 100%.for example, for 25 locations we could have 2% for each and I would still consider the formula okish)

So, check the player's "outdoorsman" check %.

if it is unsusuccessful, the player is teleported to the portion of the distance where he found the encounter (say, if you travelled from A: 100,100 to B: 200,200, the distance was cut to 3 pieces and you encountered something on the second check, you would be teleported to 166,166), and at the same time a command would be given to the game to spawn what the random encounter table said (say, 3 raiders or a deathclaw or an alien spaceship or the carcass of a whale or whatever ;) a small distance from the player.

If the "outdoorsman" check is successful, a popup comes out asking the classic "do you want to encounter: XXX?" and if the player says no, step 2 continues as before, while if he says yes, he is spawned along with the enemies at the predetermined place, at which point the whole fast-travel routine ends (he starts again when he finishes his encounter and starts the fast travel routine again.)

Rinse, repeat until he reaches his destination.

What do you think? Good idea? Bad Idea? Suitable? Doable? Easy? Difficult? POS?

Why don't I do it myself?

a) I don't know how
b) I think it needs a script extender
c) I don't know how
d) I don't have a clue how. My extremely limited knowledge of programming just suggested that this must be possible, and I wanted to check if someone might be willing to give it a shot or anything.

There are obviously complications (for example, being teleported to a normally unreachable location) but, honestly, who cares? if you do, just fasttravel again to leave and you are ok...

POSSIBLE ADDITION:
Does anyone else remember analytical geometry? There is a formula (might check that later) that gives you the distance of a point from a line. We could also check the distance of each location in the game (easier than it sounds) from our line of travel (the line form A to B) and if the distance of a loacation to your line of travel is smaller than, say, 50 meters, it spawns you there so that you explore that location, or simply "unlocks" this location so that you can fasttravel there later. Basically, if your fasttravel passes nearby a game location, it is considered explored.
 
I wholeheartedly support this idea as it makes traveling a liability not some instant VAT-like godmode-style teleport...
 
Have it go off of sneak skill. That IMO makes sense since the idea is that the folks are there but you'd have to sneak to prevent an encounter.

Also, it shouldn't just be distance. There should be areas of different "difficulty" with respect to likelihood of an encounter. For example, certain hotspots on the map tend to have raiders, mutants, etc. Fast travel through these points would have an increased chance of an encounter.

Extreme levels of karma would also increase chance of encounter. However that check should be separate from any other check.

So, let's say your karma is -1000 so you have Regulators hunting you down. Your sneak is 20. You are passing through some spot that is a common Raider hangout. You could fail a sneak check for both Raider avoidance AND Regulator avoidance. When the encounter happens, it creates both Raiders AND Regulators at that location and BAM, you get a three way fight. Likewise with positive karma and Talon company.
 
This is a fairly good start in terms of the script idea.

The hardest thing, I would imagine, would be teleporting the PC and spawning enemies in random areas. There are two things that would make this problematic. The first is the height of the terrain at a given location. You might have issues with dropping the spawns and player either too high or too low, causing falling damage or clipping issues. The second problem would be possibly dropping the spawns in an area where enemies or hazards already exist, creating and impossibly dangerous scenario.

However, all of these issues might be addressable by hand-placing markers throughout the world that your script could use. IE instead of moving the player and spawns to a randomly calculated point, they move them to the nearest Random-Encounter-Marker, which would be placed in an appropriate area and which would take into account the lay of the land. This would mean a lot of hand placing, but would be possible, once we get a CS.

All around, a fairly solid idea.

On a side note, I think my personal method of simulating outdoorsman would be a perception roll, then ask the player if they want to attempt to evade the encounter, if they choose yes, then make a sneak roll.
 
Using sneak is a good idea, but instead of determining if you encounter a sucessfull sneak check will put you in hidden more beinhd the encountered enemies instead or something like that. Would be cool :)
 
If you just spawn enemies at the player's destination it's going to be annoying because the enemies you spawn could kill important NPCs at the destination. I think the best way to handle it would be to pick out maybe 10 different specific and otherwise empty areas in the wasteland and place the player there along with the random enemies. it's a bit ugly but I think it's the closest you can get to the way it worked in the originals.
 
oihrebwe said:
If you just spawn enemies at the player's destination it's going to be annoying because the enemies you spawn could kill important NPCs at the destination. I think the best way to handle it would be to pick out maybe 10 different specific and otherwise empty areas in the wasteland and place the player there along with the random enemies. it's a bit ugly but I think it's the closest you can get to the way it worked in the originals.

It would not just be a check for the entire trip, it would be a check at certain locations along the way.

I personally like the idea of prompting the person with the encounter if they succeed in the check asking if they want to check it out anyway.
 
Thanks for all the feedback people...

Now the long wait for a script extender and some knowledge of scripting ;)
 
I think I might have a simpler solution... but we'd need the construction set... though... I guess a group of folks could probably do this without one, but they would near drive themselves insane in the process.

Anyways, if you haven't noticed this about the downtown DC area... many of the "outside" zones are actually interior rooms with a really big dome-roof. What I suggest, is take all of the exterior zones out past the downtown DC area, and export each one as its own interior cell - with reason given proximity to other points of interest. The game already "gives" you the map location marker for a quest goal, and there are actually enough markers on the world map to... reasonably fairly divide the exterior into pseudo-ext. interiors. This would expand the "size" of the worldmap considerably too. If I'm not mistaken, I swear I remember reading, or hearing, somewhere in the game that megaton is supposed to be a mile from spingsdale or whatever. In other words, I'm pretty darn sure that bethesda shrunk the exterior down by a pretty big factor.

As for messing with the actual process of fast traveling... I'm not sure. Fast Travel would have to be modified to register a flag check on the area first, or activated automatically when the player steps out of bounds with the "interior" cells that are made.

I know, a really really big mess to work out... but honestly, imo would probably make for a better travel setup than Bethesda put together...

We'll probably get a CS soon anyways.
 
The way you propose might cause clipping issues in the environment when you spawn a character. Maybe you could create a few smaller maps, each with a different theme (You should recognize this method). When you are forced into a random encounter you're spawned into one of the maps most appropriate for the environment you're fast traveling in. You could then fight it out, trade, or run. A problem I see is figuring out what is the theme of the environment you're traveling through.
 
CrazyLegs said:
The way you propose might cause clipping issues in the environment when you spawn a character. Maybe you could create a few smaller maps, each with a different theme (You should recognize this method). When you are forced into a random encounter you're spawned into one of the maps most appropriate for the environment you're fast traveling in. You could then fight it out, trade, or run. A problem I see is figuring out what is the theme of the environment you're traveling through.

the game uses a system of grid-based regions that denote environmental behaviors, weather, foliage, etc. this has been around since morrowind. any sort of grid to represent where the player is, where they're going, and the time taken to travel the distance, means you can calculate where on the grid a random encounter takes place, then load the player into a given "random encounter" cell that matches, and load a given encounter on that cell.

it also appears that the SCRIPT LANGUAGE has finally had some upgrades since oblivion, which will greatly improve our capability once we can compile/get a CS.
 
Dubby said:
the game uses a system of grid-based regions that denote environmental behaviors, weather, foliage, etc. this has been around since morrowind. any sort of grid to represent where the player is, where they're going, and the time taken to travel the distance, means you can calculate where on the grid a random encounter takes place, then load the player into a given "random encounter" cell that matches, and load a given encounter on that cell.

it also appears that the SCRIPT LANGUAGE has finally had some upgrades since oblivion, which will greatly improve our capability once we can compile/get a CS.
I didn't know that. Then the first way should by much easier than I thought.
 
Back
Top