Jump to content
twistking

Proper MP View Distance Implementation

Recommended Posts

Now with Dynamic Simulation shaping up quite nicely, is there a chance we can get a rework and unification of multiplayer view settings? I always suspected that changing the view distance in MP only worked with the forced "view distance" command, had to do with netcode being dependent on object viewdistance.

Wouldn't it be possible to link the Dynamic Simulation settings with netcode settings and give more freedom to clients concering view distance? Maybe mission designer could choose to force min/max view distance for terrain and objects seperately.

 

I think. it's a pity, that in SP you can have the expanded terrain view distance with the landmark-buildings being rendered at great distances, while in MP you either have the low default visibility, or you have object and terrain distance linked and forced on you. I think it should work, that in MP you could (!) have your personal terrain (!) viewdistance with the landmark buildings being rendered, while AI netcoding and general PvP engagement ranges for the netcode (optionally also object draw distance) would be set by the mission designer with the Dynamic Simulations manager or a seperate netcode setting.

 

With the upcoming Jet DLC it is even more important to have better implemented and more unified controls over view distance settings for MP...

At the moment I'm quite sure, that most mission designers and server admins don't even know, how to set view distance in MP, since the server configs for view distance simply don't do anything!

  • Like 1

Share this post


Link to post
Share on other sites
28 minutes ago, HeroesandvillainsOS said:

View distance in MP is dictated by the server? Client settings take no effect at all?

 

Hmmm. That's news to me. Interesting topic.

 

... and exactly that is one of the reasons the devs should take a look at this. Many players don't know what effects their view distance setting. Is it a script command inside the mission, a server parameter or is the personal setting used afterall.

 

A solution for this issue would be to improve the video options menu by displaying the current, min. and max. view distance and whether it's limited by the server or forced by the mission.

 

In case it's forced by the server, it would perhaps also make sense to show this in the lobby, like the difficulty options.

 

  • Like 6

Share this post


Link to post
Share on other sites

Yeah I mean. Wow. Now granted, of my 1600 hours in the game, only maybe 200-300 hours are in MP, but you'd think if someone with my playtime wasn't aware of this, the average user would have NO clue at all.

Share this post


Link to post
Share on other sites
2 hours ago, HeroesandvillainsOS said:

View distance in MP is dictated by the server? Client settings take no effect at all?

 

In vanilla arma MP, if view distance is set in the mission with "setviewdistance", these settings are forced upon you. last time i checked, you could still decrease (not increase) the view distance in the options, after you loaded into the mission. this however doesn't work well and seems to give inconsitents results between clients.

also you loose control over seperated terrain/object view distance.

If view distance is set via the server config nothing happens at all and all clients load in the mission with the default MP view distance,which is somewhere between 1 and 2 km, when i remember correctly.

 

as far as i know there is no way whatsoever to have terrain view distance exceed object view distance in vanilla arma MP. it's a pity because, arma could look much better in MP with the high terrain view distance (which should (!) have no impact on netcode, gameplay etc.).

Share this post


Link to post
Share on other sites

View distance control is a bit of an issue for vanilla arma.

 

I don't know one big mission/framework/addon that doesn't have a custom view distance/visibility menu.

Share this post


Link to post
Share on other sites
10 hours ago, fn_Quiksilver said:

View distance control is a bit of an issue for vanilla arma.

 

I don't know one big mission/framework/addon that doesn't have a custom view distance/visibility menu.

 

The question is, why?

 

Well, I believe it's long overdue that we are able to set different view distance settings depending on whether we are in an aircraft, ground vehicle or on foot.

  • Like 1

Share this post


Link to post
Share on other sites

i hope that with the 64bit exe comign along, there wouldn't even be a need to have different view distances for different situation, but of course it would not hurt to have the possibility to tweak these nevertheless...

 

some things, that should also be considered:

- Mission Editor: easy UI to set up view distances, if mission designer wants to force settings on client, or "recommend" settings, that could still be overwritten by client.

- Mission Editor: easy UI for engagement ranges (visibility of distant units, client or AI), could be linked to "dynamic simulations".

- Mission Editor: Possibitlity of higher visibility (engagement ranges) for Aircrafts etc., again could be linked to dynamic simulations.

- Client: If not enforced by mission, use Custom View Distance Settings in MP, with possibility to use settings recommended by Mission. (checkflag in visual Options for using recommended where possible)

- Client: If view distance is enforced by mission, terrain view distance could perhaps not be affected, as terrain view distance alone should not interfere with balancing or MP related performance...

- Client: Warning message if MP mission doesn't enforce view distance, but personal object view distance is lower than "netcode engagement range". Option to always set object view distance to engagement range or higher in MP.

Share this post


Link to post
Share on other sites
Quote

in MP you could (!) have your personal terrain (!) viewdistance with the landmark buildings being rendered, while AI netcoding and general PvP engagement ranges for the netcode (optionally also object draw distance) would be set by the mission designer with the Dynamic Simulations manager or a seperate netcode setting.

 

This I think is a good idea. 

I play on 12 km terrain distance no problem in SP, I hate it so much when a server imposes me an ugly 2 km view distance in MP. In cases like this, client preferences should come above server-enforced settings.

Share this post


Link to post
Share on other sites
6 hours ago, R3vo said:

 

The question is, why?

 

Well, I believe it's long overdue that we are able to set different view distance settings depending on whether we are in an aircraft, ground vehicle or on foot.

 

that is the main thing.

 

lots of missions have the player switch between infantry and in a helicopter/aircraft.

 

when i am on foot I have ~1200 view distance for better FPS and i dont need to see further.

 

but when I jump into a helicopter, I want higher view distance. This is basic gameplay ergonomics that should be accounted for in vanilla.

Share this post


Link to post
Share on other sites
57 minutes ago, fn_Quiksilver said:

 

that is the main thing.

 

lots of missions have the player switch between infantry and in a helicopter/aircraft.

 

when i am on foot I have ~1200 view distance for better FPS and i dont need to see further.

 

but when I jump into a helicopter, I want higher view distance. This is basic gameplay ergonomics that should be accounted for in vanilla.

 

Exactly. What I usually do is, constantly opening the video options everytime I jump in and out of a air vehicle.

Share this post


Link to post
Share on other sites

in addition to the suggestion above, i want to highly suggest, to add presets (low, medium, high, very high, ultra, custom) for view distance in the video options.

 

there are multiple reasons for it: comparability of video settings / performance, basic guidelines for what the devs consider decent settings for gameplay (with jets dlc and tank dlc view distance is getting more important for gameplay, so presets would help players to adjust and tune their settings from a baseline. it would also help in the discussion about problems and limitations of gamepaly features that require certain view distance. a player that runs "low" view settings (whatever actual ranges that would mean) might accept some limitations in gameplay, while medium settings should give enough range to enjoy the new mechanics decently, with very high and ultra being more than needed from a gameplay point of view.

 

of course custom view distance would still be possible, but adding presets could help new players find good settings for jet dlc and it will help veteran players in comparing performance and discussing gameplay limitations of upcoming dlc.

if view distance settings for MP get improved by the devs, the presets could also be helpful in quickly setting up a mission.

Share this post


Link to post
Share on other sites

I think the biggest issue regarding view d8stance in MP is performance. I can run 50k view distance fine in single player on my crappy laptop with around 60-40 fps, but in a multiplayer scenario, it's a struggle at 5k view distance depending on the server. 

Share this post


Link to post
Share on other sites

Viewdistances in MP... As I understand it works somewhat like this:

  • The viewDistance and objectViewDistance in MP are dictated by what the host/server uses (unless it's later changed, see below)
  • On a dedicated server this usually means a viewDistance of ~1600m, since this is the default setting and usually noone bothers to change it on a dedicated server
  • A mission designer can change it, if they are using the setViewDistance and setObjectViewDistance commands, for example in the init.sqf.
  • Both those commands have to be executed on every client, since they are executed locally only. As far as I know those frameworks use those commands as well.
  • Since both setViewDistance and setObjectViewDistance commands are executed locally, it is actually possible to set viewdistances different for different players. E.g.
    if (player == Pilot1) then {
    	setViewDistance 12000;
    	setObjectViewDistance 4000;
    }
    else {
    	setViewDistance 3000;
    	setObjectViewDistance 2000;
    };

    If the player (init gets executed on every machine) is playing the unit named Pilot1 then he'll get the high wievdistance, otherwise he will be limited.

The reason to force the servers settings upon players is probably fairness and balancing. In the example above, the pilot will be able to see (and aim at) any enemy (AI or player) at a distance of 4000m, whereas the other players will be limited to 2000m. They can get shot from an enemy they can't even see. Also the AI will engage enemies (including the plane Pilot1 is flying in) at a maximum distance of 2000m, since they are limited by the viewdistance of the computer they are local on (usually the server).

Nevertheless improving this would be a good thing. Maybe let us set mission default values in the eden editor and define limits in wich players are allowed to set their preferred settings.

 

  • Like 1

Share this post


Link to post
Share on other sites
13 hours ago, iratus said:

 

The reason to force the servers settings upon players is probably fairness and balancing. In the example above, the pilot will be able to see (and aim at) any enemy (AI or player) at a distance of 4000m, whereas the other players will be limited to 2000m. They can get shot from an enemy they can't even see. Also the AI will engage enemies (including the plane Pilot1 is flying in) at a maximum distance of 2000m, since they are limited by the viewdistance of the computer they are local on (usually the server).

 

Isn't that the main reason for vehicles to use their engagement ranges?

I usually enjoy shooting 120mm HE rounds on unsuspecting players from 4km+.

The new setFeatureType command will most likely help to at least even this out a bit.

 

 

Cheers

Share this post


Link to post
Share on other sites
7 hours ago, Grumpy Old Man said:

 

Isn't that the main reason for vehicles to use their engagement ranges?

I usually enjoy shooting 120mm HE rounds on unsuspecting players from 4km+.

The new setFeatureType command will most likely help to at least even this out a bit.

 

 

Cheers

Yeah thats fun, especially on public servers :P

 

But eingagement range is a different animal. Viewdistance becomes less a problem if everybody has a objectViewDistance > max. engagement range. When it is shorter than that it becomes problematic. Imagine the following example:

Players A and B are both commanding a MBT (engagement range 4000m). A has set his objectViewDistance to 2000m, whereas B has set his to 3000m. A takes a stealthy, camouflaged overwatch position over a valley and observes it carefully. B drives up on a hill on the opposite side of the valley, about 2500m from A's position (skylining his Tank) and begins to scan the area. After about 5 minutes of searching, B finds A, his gunner takes aim and hits A with his first shot. The players in A's tank probably feel cheated by now, since they still can't see B even if they observed the shot comming in.

Share this post


Link to post
Share on other sites

That's exactly why mission makers need to learn about setFeatureType.

Rendering vehicles like tanks or aircraft at terrain distance instead of object distance is already a blessing.

The command is already out, it just needs to be utilized.

 

Cheers

  • Like 1

Share this post


Link to post
Share on other sites
18 hours ago, Grumpy Old Man said:

That's exactly why mission makers need to learn about setFeatureType.

Rendering vehicles like tanks or aircraft at terrain distance instead of object distance is already a blessing.

The command is already out, it just needs to be utilized.

 

Cheers

 

It wasn't really designed for ground objects though. It was added for aircraft. The issue on the ground is say, a tank is hiding behind a building. the tank cant hide if its featuretype 2.

  • Like 1

Share this post


Link to post
Share on other sites

Honestly I'm kinda okay with how it is now (everyone being forced to use the same settings, but script commands being able to change that). Viewdistances mainly become a problem when neither the server admin nor the mission designer thought about setting it propperly and you end up with something mission breaking like having to fly a plane witht the default viewdistance of 1600m. Or if people use computers with vastly different specs and the admin/mission designer sets viewDistance/objectViewDistance to somethig ridiculously high (people will blame "crappy arma-engine" if they suddenly only have 10 FPS because the server set objectDrawDistance to 9000m).

This might have to do with me not playing much on public servers. If I was making missions for pubby servers, I might use some sort of script allowing players to change it in mission for for performance reasons, but still set a reasonable default value.. But in my eyes selecting a propper and reasonable setting for viewDistance and objectViewDistance is part of good mission design. That's why I would appreciate the possibility to set default values in Eden editor.

Share this post


Link to post
Share on other sites

I don't see why we can't have 3 view distance settings: on foot, vehicle  and air, it's 2017 afterall.

 

I find myself changing the view distance constantly depending on the type of mission I play.

The suggestion someone had with different presets could be added too.

 

29 minutes ago, iratus said:

But in my eyes selecting a propper and reasonable setting for viewDistance and objectViewDistance is part of good mission design. That's why I would appreciate the possibility to set default values in Eden editor.

 

Yes, please.

Share this post


Link to post
Share on other sites

after testing out the new jet dlc features, which seemed to be designed for greater view distance than i can run smoothly on my pc (i have an "old" i7-860 with decent oc and run ultra settings but only [ 3000 / 1500 / 140 ] view settings),

i find it even more important to have a better implementation, as the default MP view distance makes sense neither for jet / heli gameplay, nor for anything involving gun emplacements / tanks...

it would be great, if not only the mission designer could set forced or recommended view distance, but also the server / host could adjust view settings with easy UI on mission start.

 

also i found out, that i should buy a new pc maybe;)

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×