Sunday, 23 November 2014

Town Midpoints and Altitude (Part 1)

It's been a while since Magnus last checked in, but he's been a busy fella, measuring all those roads...so far he has covered pretty much all of the roads in Falkreath Hold before venturing over the pass into the Rift, past Ivarstead. One big problem with this job is that one often finds oneself sidetracked from the task at hand into time-consuming battles - in other words, it's easy to forget about measuring the game and start playing it instead. Helgen needed ridding of bandits, for one thing (incidentally, for the purposes of the survey, Magnus opted to measure the roads as if unobstructed by rubble - surely that good-for-nothing Jarl Siddgeir of Falkreath will eventually remember his duties and send troops to repair and repopulate the town). And Magnus now boasts a considerable collection of wolf, bear and sabre cat pelts, among other trinkets looted from various nasties. It takes a seasoned warrior just to travel the roads in Skyrim!

Falkreath
Anyways, as I'm measuring, I realize that in order to give the distance between, say, Riverwood and Falkreath (1.62km via Lake Ilinalta, or 1.71km via Helgen), I first have to determine the exact point within those two towns that I'm using as reference. For Riverwood, as mentioned previously, I settled on the T-junction in the middle of the town. Falkreath's midpoint is actually quite similar-looking, the T-junction where the side street branches off towards the Jarl's longhouse and the barracks.
Riverwood

So in the interest of completeness, Magnus has decided to postpone measuring the roads and will first make a quick tour around Skyrim, visiting each city, town or village and determining its midpoint. While he's at it, and to kill two mudcrabs with one stone, he will also measure their altitude. That's a pretty straightforward process in Skyrim (quicker than measuring distances, at any rate): you find the z value of each point, add 14,000 (because when you stand at sea level in Skyrim, your z value is -14,000) and multiply by 0.01428 to get the altitude in meters. So Riverwood, for instance, is 198m above sea level, and Falkreath is 155m. I'm surprised Falkreath is so low as well - it's probably the furthest of all Skyrim's towns from the sea - and the reason is probably that deep (and geographically kind of inaccurate, I mean, what's with the river that goes nowhere?) valley it nestles within.



Helgen is the next "town" for which Magnus determines midpoint and altitude. For the former I settled on the road junction just inside the east-facing gate - the latter is a pretty respectable 320m.



Ivarstead - Halfway in between the two pairs of buildings that constitute this sorry little village, right where the small path leads up to Shroud Hearth Barrow (and yeah, I know the shadows make it really hard to see Magnus in that picture...). Elevation: 354m.





Riften - I wish that little well hut thing wasn't in the way, otherwise I'd have taken the dead middle of the market - oh well. Southern edge it is. Elevation: 359m.






Shor's Stone - a pretty obvious one, the point where the little path branches off towards Redbelly Mine. Elevation: 301m.



Windhelm - finding a point in this claustrophobic maze of thick stone walls and cold, icy narrow alleys (seriously, Windhelm is depressing) that feels like the "middle" was tricky. The market is too tucked away, so I settled on this spot behind Candlehearth Hall. It's kind of empty, but at least it's central. Elevation: 23m.


Winterhold - the only place in Skyrim possibly even more depressing than Windhelm. Weather there was crappy as usual upon my arrival, but that's nothing a little fw console command can't fix! Elevation: 71m, not bad for a place on the coast.




Dawnstar - only reached after hours of battling with frostbite spiders, trolls, wolves, necromancers, cultists, spriggans, sabre cats, thieves, bandits and ice wraiths along the road. Things are far worse here than Magnus thought - this may take a while. Elevation: 10m.



Well, that's all I've had time for recently. I'll try and post the rest of the cities' midpoints and altitudes later this week.

Tuesday, 11 November 2014

Up to Riverwood (and Plans for Beyond)

Magnus' orders from the Emperor are, first and foremost, to get an idea of the road distances in Skyrim - how far apart the cities are from each other. To that end, he sets off - first eastward past the Honningbrew Meadery to the four-way junction next to the White River bridge, then southward up the winding road that runs parallel to the cascading river. His destination? The sleepy, tranquil logging village of Riverwood.

Dragon's eye view of the junction
Things go pretty smoothly at first - the main road runs pretty much due east-west and Magnus only needs to stop and take six measurements before he arrives at the junction at the White River - a distance of 245.6m. What's more, the negligible differences in altitude means he can largely ignore the getpos z values, simplifying the calculations considerably.

This was a particularly troublesome spot.
It gets a bit trickier once he turns right and begins to climb up to Riverwood. For one thing, those z values stop being quite so negligible. But the bigger problem is that all that gained altitude causes the road to run in serpentines. Those curves are a bit of a headache because of how often they force our poor Cartographer - who can only walk in straight lines, remember - to take his readings. But he signed up for this job, after all, and by the Divines he's going to do it right! Eighteen readings later, he stands at the T-junction in the middle of Riverwood. The distance between there and the White River junction is 575.05m. Now we can add those two sections of road together, along with the previously-measured road up to Whiterun, and find the total distance from Whiterun to Riverwood: 1048.23m. Or, to put it a bit more cleanly, 1.05km.


Downtown Riverwood, bustling as usual.

All right, so maybe one kilometer doesn't sound like much. It sounds more like the distance to the nearest subway stop or grocery store than the distance between two towns in a remote and sparsely populated land such as Skyrim. But you know what? I'm still impressed. Bethesda packs so much detail and eye candy into its world that even such a brief journey (and Whiterun to Riverwood is, even by Skyrim standards, a brief journey) becomes a gorgeous hike through a scenic wilderness. Magnus really enjoys his work; he hopes that reducing Skyrim to a bunch of figures and distances on a map doesn't take the land's indescribable magic away for anybody, because he certainly doesn't feel that way. If anything, it's the opposite.

Magnus pulls out the very basic map of Skyrim the Surveyors' Guild issued him with back in the Imperial City and notes the distances upon it:

That bottom value is 0.58. Yeah, Magnus shouldn't have used a red pen.



To the Cartographer's irritation, this map shows only Skyrim's paved roads, not the dirt paths that nevertheless form an important part of the land's transportation network. Ivarstead, for instance, appears not to have any road connections at all! Magnus makes a mental note to find himself a better map of the land to use when he publishes the full version of his distance map. Until then, this one will suffice to take notes upon...and it should make a decent handkerchief or oilcloth afterwards.

The Road to Whiterun (...AKA The Math Behind All This)

So, OK, there's no real magic behind all this...just console commands. Three simple console commands which nevertheless open up a vast world of things to be measured. player.getpos x tells our friend Magnus how far east or west he is, player.getpos y tells him how far north or south he is, and player.getpos z tells him the altitude of his position, i.e. how far above sea level. That's it. (Oh, and for all you amateur Skyrim cartographers out there who didn't know this already...you hit the ^ button to enter console commands).

Well - it's not quite as simple as all that. Warning - there's math ahead, and quite a bit of it - but I promise, it's just this once!

The first thing the Cartographer needs to do is figure out how to measure any given distance from a to b. Let's start easy: if he's heading due north or south, he takes a getpos y reading at one point, walks to the next, takes another reading, and subtracts the larger from the smaller to get the distance he's covered. If he's facing due east or west, he does the same with getpos x. Pretty straightforward, huh?

The trouble is, Skyrim's roads are a pesky bunch and simply refuse to just run in straight lines along the four cardinal directions. Which means we have to bust out the old Pythagorean Theorem from ninth grade geometry:

 
I just lost most of my readership, didn't I.




So, Magnus takes readings at one point, walks the distance c, and takes readings again at the second. a is the difference between his getpos y values and b is the same for his getpos x values. Let's keep things simple and say a=3 and b=4; 3² + 4² = 25, the root of which is 5 - the total distance walked. Basically, he has to walk (or run) in a straight line as far as he can given the curvature of the road, note the distance, turn, walk another straight line, note the distance, etc. etc. ad infinitum. Of course, having to crunch those numbers every few seconds would likely drive poor Magnus over the brink of madness; fortunately for him (and me), if you Google "hypotenuse calculator", there's a handy little widget thing--ah, I mean, the Imperial Surveyor's Guild has a magic spell for that too. Um. Yeah. Gotta keep this little project lore-friendly, right? Alternatively, you can just imagine Magnus wandering along with a spike and a rope.

With all of the theoreticals out of the way, it's time for Magnus to turn to his first assignment - the little road that leads up to the gates of Whiterun, its "driveway," so to speak. He begins right outside the city's sole gate and immediately takes all three measurements:




Since the road curves pretty much straight away, that's not going to be much of a grand First Distance Ever Measured in the Province of Skyrim, but nevertheless, he walks it dutifully, turns right (northwards) to face further along the road and takes his readings again.


Ignore that top z value, it's just left over from the first set of measurements.

Magnus finds the difference for both x and y values: 1,137.31 for the former and a paltry 22.01 for the latter. But take a look at the compass in the first image; we're heading almost due west, so a negligible value for y (north/south) was to be expected. Plug those two numbers into the Magic Pythagoras Spell (8 magicka per second) and Magnus gets a total distance of 1,137.49.

But his job is not done yet. After all, what about that z value? Skyrim can be a pretty vertical land at times, and on a really steep stretch of road (which this, admittedly, is not), up to the Throat of the World for instance, it could make quite a difference. Anyways, all Magnus has to do is take that 1,137.49 and plug it into the same Pythagoras Spell with the difference between his z-values - 190.75 - and he gets his final distance: 1,153.17.

But that number doesn't mean a whole lot, because we still have to translate it into meaningful units. Those used in the game don't have any inherent meaning (let's say it's the diameter of a fly amanita stalk), but fortunately, there is an official "conversion rate" - one fly amanita stalk is equal to 1.428 cm, or roughly 70 to the meter. An Imperial Magnus may be, but he is no lover of the Imperial system - nevertheless, he can also grudgingly tell you that one FAS = 0.5625 inches, or 21 1/3 to the foot.

Long story short? Magnus' measured distance of 1,153.17 FAS (don't worry, you won't be seeing much of that "unit" anymore) is equal to 16.46m or about 54 feet.


Basically, from here to that gate. Looks about right, don't you think?

The rest of the job is just rinse and repeat. Magnus measures a total of 7 straight-line distances before arriving at the junction with the main road, between Whiterun Stables and Pelagia Farm.


 Add up those seven lengths and you get the total length of the road, a whopping 227.58 meters or 746 feet and 8 inches. The first stretch of road ever measured in Skyrim! Magnus congratulates himself on a job well done and takes a moment to gaze majestically up at the Throat of the World.

Because one day he's going to have to measure the road up to that sucker too, and won't that be fun?




Monday, 10 November 2014

The Cartographer Comes to Skyrim

In case you just crawled out from under a rock or something, there's this little game that came out a few years back called The Elder Scrolls V: Skyrim, and it's not bad. Not bad at all. So not bad, as a matter of fact, that I've sunk something like 300 hours into it with absolutely no regrets.

And without a doubt the best thing about Skyrim is, well, Skyrim itself: a gorgeously realized wilderness of icy beauty just waiting for every nook and cranny to be explored. I mean, sure, the dragons are returning and all of that good stuff, but who cares when you can just go climb the nearest snowy peak or find a river and follow it upstream as far as possible? The world Bethesda has created is simply wonderful, and being something of a geography nut, I soon found myself wanting to draw this enormous map. I got a good start on it and still work at it from time to time...even if by the time it's done, Skyrim will be about as cutting-edge a game as Super Mario Bros 2 is today.

The official map is nice enough...but hardly the masterpiece of videogame cartography Skyrim deserves!

In the meantime, though, a unique spell has been discovered (the magic of console commands) that allows its caster to immediately know exactly where in Skyrim he is. Armed with this new knowledge, the Imperial Surveyors' Guild has sent one of its dignitaries, the enigmatic wanderer known only as Magnus the Cartographer, northwards into the land of the Nords. He is to measure everything he can possibly think of in Skyrim: road distances, altitudes, building heights, cave depths, whatever comes to mind. Perhaps the Empire feels that this knowledge will help in the Civil War or something, I don't know, use your imagination, people!

Magnus' first assignment is a simple one: measure the length of the short road that leads from the gate of the city of Whiterun down to the intersection with the main road...