Wilderness view upgrade
Background
Well, I've been going down quite simulationist lines recently, and this is one of them...
This idea is sort of complementary to this thread over on the forum. It follows up the idea of having a larger wilderness map, since although I have been pondering this for some time, I feel that ATM it would not work as well as it might.
I have yet to decide on any specifics in terms of values, as described below, but I have given thought to the coding, and see no reason why it should not be doable.
So, on to...
The Idea
Pre-waffle
In effect, this radically alters the (as I see it) somewhat basic way in which the wilderness view currently works. ATM it is simply a radius of view around the player which is lit as the player passes, and a certain portion of which is then memorised. There is no doubt that this works, but there is significant room for improvement. Especially if a larger map is desirable.
Description
My idea is effectively to make wilderness view three dimensional. I hasten to add that this does not involve moving from the current plan view, just making the view itself three dimensional. The player will be given a much larger field of maximum vision (something like radius 10 I think), however, not all of this will be memorised. Only a small radius around the player will be remembered, (similar to what it is already). It will be up to the players themselves to remember the rest.
However, that in itself would not be so great a change, and has nothing to do with 3D. In itself it would just be a bit odd. So: in relation to the type of feature, all the map will be given a "height" value. For example, trees could be 5, while hills were 50 and mountains 80. This would then be used to calculate the actual player view. A player would not be able to see a feature shorter than one in front of it.
In addition, it is necessary to find the player's height, determined by the feature on which they are standing, (and perhaps on whether they are flying, but that's going down another thread). This can be used to calculate an accurate field of view for the player. When they are on top of a mountain, looking out over a plain they can see a long way. When they are in a valley, they can't.
This, I hope will in itself make wilderness travel more interesting. I realise that while the player will eventually know where everything is, it makes the initial discovery all the more exciting. As well as this, I see no reason why a careful developer cannot put in certain things to make the travel all the more interesting. (This involves certain random events and features, and I do not know how far I can go to actually make these things visible on the wilderness map. It is also pretty much a different set of ideas...)
Technical details
Looking at my jottings, it appears they really don't help much, so I guess I'll just make it up as I go along
So, what we need to do is:
- First find which features the player has already memorised within the maximum view radius. If they are memorised, there's no need to do anything to them.
- Next, take all the features not yet memorised, find what they are, and so assign height values to each one.
- Find the distance from the player to each of the features.
- Using the heights and distances, to work out an "angle"?
- Find out whether a feature is closer to the player and whether the angle to it is greater than the angle to the one "in front" of it.
- Light up features within the right radius, and which the player can see, and memorise those within the smaller radius (which the player can see).
Chatter
Please feel free to demolish at will...
ReenenLaurie: It definately sounds like a much more interesting way to travel. And in fact... it could be applied to monsters as well. But maybe "size" is more appropriate than height in a monster's case. Size can be determined by the weight of the monster's corpse. Which isn't 100% accurate, but could give a vague idea.
If the dragon is too big, you cannot see the tree. Right? I dunno.
NeilStevens: No monsters in the wilderness. This is for the wilderness view. Ultima would do this, for example.
TheFalcon: I think you mean not in the wilderness don't you, with large monsters blocking the player's view of smaller ones, or features behind them? Hmmm... While I like the idea, and it does seem a logical expansion, I suspect it would alter gameplay to too great an extent if this kind of view was applied out of the wilderness...
So Neil is right, I really only mean to try this in the wilderness.
ToME Wiki