PDA

View Full Version : Alternative to the Fog of War



Reyder Axeman
November 24th, 2015, 17:20
The Fog of War, as currently implemented in FG, is simply a black overlay from which the GM periodically carves away sections as the players advance. It does it's job, but is neither efficient (the GM has to continually be updating it) nor particularly aesthetically pleasing (it can look *ugly* on occasion).

The incoming Tabletop Connect (a 3D interface for those who didn't try it) provides light around each character, light that fades out so that things fade to black as they get further away.

Now, I realize that *at the moment* adding all of the extra code and processing to provide LoS and such is not going to happen. However, there is, I think, a useful alternative....


The following are in order of what I think can be sequentially accomplished to provide a better (and potentially scarier) environment for our characters.

Preliminary - for open / daylight areas the GM turns off Fog of War, everything's visible to everybody. For underground / night areas, the GM turns it on, everything's black.



1) Each character is given a visibility range. Whether this is due to special eyesight, or torches, or whatever is unimportant.

All players can see all character visibility areas, no matter where. No LoS limitations.

Simple calculations whereby a 20' circle (or 30', 40', whatever) is drawn around a character when the character's put down. This does not update while moving the character, so the players can't simply sweep their characters across the map to see what's there; they have to advance pretty much only as far as they can see.

(Note: Circle, not 20' movement range. No need to calculate based on squares or hexes, just draw a circle and reveal what's under it. Might be able to do it with something as simple as an XORed overlay, then no calculation at all's needed.)

Opponents might or might not have light with them. If they do then players can see them and their immediate environs exactly as they can their allies. If they don't then players will only see them when / IF the opponent enters the visibility range of a character. Characters might have the extremely unpleasant result of orcs seeing and shooting at them while they can't see to fire back. (Playing P&P, I've killed characters this way because they had torches while the orcs or bandits didn't. Torches can be seen a long way in the dark.)

The GM can also place torch markers which provide areas of light. The only drawback would be that he'd have to place them when the group's fairly close, else they'd see them as soon as the game starts, no matter where they are on the board (no LoS, remember).



2) To each visibility circle, add a further 1/2 range of 50% grey. This allows getting a partial view of things further out. Things in this range would get a 50/50 miss chance when fired on by the characters. This doesn't need to be calculated by the program; I'm pretty sure the GM can decide if it's needed and do the one extra roll.

Still no LoS limitations; all players see all character visibility areas. And torch areas.



3) Add max visibility ranges. This is the range at which the torch / candle / bonfire / whatever can no longer be seen. This is not actually realistic, but allows the GM to put up torches and opponents and not have them seen half-way across the map. Again, these are displayed only when a character is put down within the range, thereby suddenly popping them into view.



4) Add LoS barriers.

This is when complex calculations become necessary. However, updating only when the character is put down will still ease the load. It is not something that has to be continuously calculated in real-time.



Summary: Characters see only 30/40/50 feet. They can also see everybody else's 30/40/50 feet because they can see by someone else's torchlight. If enemies have better visibility ranges, it's entirely possible to be ambushed in the dark and be unable to do anything about it except retreat under fire or charge blindly forward. Light spells and Dancing Lights will suddenly be in every mage's active spell list.



It's an idea.

The Hawk and Sparrow
November 25th, 2015, 08:38
Looks like a great start! I understand that you are being sensitive regarding the code requirements behind individual players only seeing what they are able based on race / spell or surrounding environment. I would want the individual adjustments. Not being a code guy, would that be impossible... or at least prohibitive based on certain resulting latency?

Reyder Axeman
November 25th, 2015, 16:11
What I'm proposing is, for the most part, a very simple visibility method. It is not done by rendering or ray-tracing. It (except for stage 4) does not have any consideration for LoS. It is not done in real-time (i.e., as the characters are moved). This chops the processing requirements to near-zero.


Complex example with multiple methods of view and using both full and half-visibility ranges (this falls between my Step 3 and Step 4):

For each character put on the map, 4 ranges are calculated for him/her. 1) Personal full visibility. 2) Personal half visibility. 3) Other characters' full visibility. 4) Other characters' full visibility for low-light vision. The range "other characters' half visibility" does not happen.

These are simple calculations and only need be done once for each character, unless something happens that changes their ability to see, such as someone casting Darkvision on them or something.

Note that for simplicity, range 4 can be tossed if the devs want; it's nice and gives elves a reason for existing, but is not absolutely necessary.

Alice: Normal vision, 30' torch.
1) 30'. She can see clearly this far.
2) 45'. She can see somewhat this far.
3) 30'. Her torch shows other characters things this far.
4) 60'. Someone with low-light vision can see by her torch this far.

Barney: Low-light vision, 30' torch.
1) 60'. He can see clearly this far.
2) 90'. He can see somewhat this far.
3) 30'. His torch shows other characters things this far.
4) 60' Someone with low-light vision can see by his torch this far.

Cindy: Darkvision 60', NO torch.
1) 60'. She can see clearly this far.
2) 90'. She can see somewhat this far.
3) 0'. No torch, nobody else can see what's around her.
4) 0'. Ditto.

Dan: Normal vision, 30' torch.
1) 30'. He can see clearly this far.
2) 45'. He can see somewhat this far.
3) 30'. His torch shows other characters things this far.
4) 60'. Someone with low-light vision can see by his torch this far.

Each of the above ranges is the radius of a circle of either 100% or 50% visibility. 100% means that the Fog of War (FoW) is fully removed in that area. 50% means that the FoW is replaced with a 50% grey tint to the underlying area. Apply 50% first, 100% second.

Prior to Alice moving, each other character's circle 3 was displayed around them on her screen. These don't change.
When Alice moves, her two circles (1 and 2) are left while her character is being moved.
As soon as her character is put down, her circles 1 and 2 are blacked out where she was and exposed where she is.
In addition, her circle 3 or 4, as appropriate, is blacked out on the other characters' screens and redrawn in her new location.

Prior to Barney moving, each other character's circle 4 (low-light other) was displayed around them on his screen. These don't change.
When Barney moves, his two circles (1 and 2) are left while his character is being moved.
As soon as his character is put down, his circles 1 and 2 are blacked out where he was and exposed where he is.
In addition, his circle 3 or 4, as appropriate, is blacked out on the other characters' screens and redrawn in his new location.

Prior to Cindy moving, each other character's circle 3 was displayed around them on his screen. These don't change.
When Cindy moves, her two circles (1 and 2) are left while her character is being moved.
As soon as her character is put down, her circles 1 and 2 are blacked out where she was and exposed where she is.
In addition, her circle 3 or 4, as appropriate, is blacked out on the other characters' screens and redrawn in her new location. Of course in her case, nothing's drawn.

Prior to Dan moving, each other character's circle 3 was displayed around them on his screen. These don't change.
When Dan moves, his two circles (1 and 2) are left while his character is being moved.
As soon as his character is put down, his circles 1 and 2 are blacked out where he was and exposed where he is.
In addition, his circle 3 or 4, as appropriate, is blacked out on the other characters' screens and redrawn in his new location.

Note that blacking out circle 1 is never needed; circle 2's always larger.

The only operations required after each character moves are 1) blacking out the prior exposed circle 2, 2) 50% exposing the new circle 2 centred on the character, 3) 100% exposing the new circle 1 centred on the character, and 4) updating the appropriate circle 3 or 4 on everybody else's screens.

Reyder Axeman
December 1st, 2015, 01:54
Two things I can't seem to find the answers to on this board:

1) Is this (The Tavern) the right place to be putting suggestions? There's all sorts of fora for the various rulesets and games, and for bugs and technical problems, but nothing stands out as the correct place for suggestions.

2) How do I tell if any of the devs read this? After all, my reason for posting it was to get it in front of them for consideration.

Trenloe
December 1st, 2015, 02:28
Add requests to the FG wishlist: https://fg2app.idea.informer.com/

Do a search before posting - type a couple of keywords in the "I would like to..." field and see if anyone has already logged a similar request.