Best View Distance 11.9

Uses view distance to boost performances/ping ! Allow your server to support a view distance of 32 !

  1. Kugge
    Native Minecraft Version:
    1.13
    Tested Minecraft Versions:
    • 1.9
    • 1.10
    • 1.11
    • 1.12
    • 1.13
    Source Code:
    https://github.com/Kugge/BestViewDistance
    Contributors:
    sgdc3, Lxct
    Languages Supported:
    All. You can translate it by yourself.
    BestViewDistance
    (Allow your server to support a view distance of 32 chunks !)

    A view distance plugin for Paper. Created to boost ping/tps and view distance.
    If you're using the plugin, make sure your view-distance inside spigot.yml and server.proprieties is set to 3!
    IT REDUCES LAGS FROM THE "Players needing chunks" EVENT.

    The plugin will override this value, don't worry.

    2018-12-01_09.00.48.png
    How it works ?

    This plugin chooses the best view distance for your players. The view distance is calculated based on your ping and the TPS of the server. If the TPS are low, the view distance is reduced by a percentage called "reduction indice". The reduction indice changes according to the TPS of the server.

    This plugin reduces players lag, reduces players ping and optimizes your server with a better view distance.

    2018-12-16_19.26.13.png

    Dependencies

    Download Paper if you want to run this plugin.
    PlaceholderAPI is optional, only if you want to use placeholders.
    ProtocolLib is needed ONLY for versions below 1.13.2

    Commands / Permissions
    Code (Text):

    /view server => Get reduction indice.
    /view tps => Get server's tps.
    /view ping <player> => Get player ping.
    /view <player> => Get player actual view distance and his max view distance.
    /view => Get help

    Permission : "view.check"

    /view reload => Reload plugin config. Need "view.reload"
    /vdist => Allows your players to see their own view distance. Need "view.info"
    /vping => Allows your players to see their own ping. Need "view.info"

    Permission for update checker : "view.update"

    Bypass algorithm : "view.set.x" (3 to 32)
    (Example : view.set.15 set a view dist of 15 chunks)
    Does not work with "*"/"*.*" permissions nodes !
     
    Default Config
    Code (YAML):

    #   ╔╗ ┌─┐┌─┐┌┬┐  ╦  ╦┬┌─┐┬ ┬  ╔╦╗┬┌─┐┌┬┐┌─┐┌┐┌┌─┐┌─┐
    #   ╠╩╗├┤ └─┐ │   ╚╗╔╝│├┤ │││   ║║│└─┐ │ ├─┤││││  ├┤
    #   ╚═╝└─┘└─┘ ┴    ╚╝ ┴└─┘└┴┘  ═╩╝┴└─┘ ┴ ┴ ┴┘└┘└─┘└─┘
    #       - Get a Better View Distance, By LXCT. -
    #
    # Donate: https://paypal.me/lxct

    Version
    : 2.3 # Version of the config file. Don't change this value.

    Features
    :
      UseLoginView
    : true # Use a custom view on login
      UseAFKView
    : true # Use a custom view if the player is AFK.
      UsePing
    : true # The plugin will give a custom view distance for each players
      UseTasks
    : true # Use tasks. Turn this off will reduce lags, but view distance will change slower.
      UseFlyingView
    : false # Use a custom view if the player is flying.
      UseTeleportView
    : false # Use a custom view on teleport. Can reduce freeze on teleport.
      UsePermissions
    : false # Enable permissions (view.set.x) to bypass algorithm.

    ViewDistance
    :
      Min
    : 4 # Default minimum view distance (Minimum : 3)
      Max
    : 16 # Default maximum view distance (Maximum : 32)
      OnLogin
    : 4 # View distance on login
      OnAFK
    : 3 # AFK view distance (If UseAFKView is on true)
      OnTeleport
    : 4 # View distance on teleport (If UseTeleportView is on true)
      OnFlying
    : 12 # View distance if flying (If UseFlyingView is on true)
      MoreThanSettings
    : 0 # Add x chunks more than player's settings.

    Delay
    :
      CalculationsDelay
    : 1 # Delay in seconds to actualize calculations
      SetViewDelay
    : 15 # Delay in seconds to actualize global view distance
      UnsetTeleportViewDelay
    : 3 # Delay in seconds to unset the OnTeleport custom view
      CheckFlyingDelay
    : 5 # Delay in seconds before set the OnFlying view distance
      AFKDelay
    : 90 # Delay in seconds before set the OnAFK view distance

    Settings
    :
      TpsLimit
    : 19.5 # Below: Decrease Reduction Indice // Over: Increase Reduction Indice.
      TpsChangeIndice
    : 0.01 # How much we had to increase/decrease the reduction indice. 0.01 = 1%
      MaxReductionIndice
    : 0.75 # Maximum Reduction Indice (0.75 = 75%)
      SafePing
    : 1 # Set this value to 0 for local hosting.
      PingForReduction
    : 550 # Ping required to decrease view distance
      PingForAugmentation
    : 90 # Ping required to increase view distance

    Permissions
    :
      BypassAFKView
    : true # Player with permissions (view.set.x) can bypass the "OnAFK" view.
      BypassTeleportView
    : true # Player with permissions (view.set.x) can bypass the "OnTeleport" view.
      BypassFlyingView
    : true # Player with permissions (view.set.x) can bypass the "OnFlying" view.

    Misc
    :
      DecimalsTPS
    : 2 # How many decimals for the %VDIST_DECIMAL_TPS% placeholder
      DecimalsIndice
    : 2 # How many decimals for the %VDIST_REDUCTION_INDICE_DECIMAL% placeholder
      HideVdistLine4
    : false # Hide the 4th line of the /vdist command
      CheckUpdates
    : true # Check for updates
      Metrics
    : true # Send anonymous stats

    Worlds
    : # Custom Min and Max per worlds
      Example
    : # Name of your world
        Max
    : 32 # Max value of world
        Min
    : 16 # Min value of world
      Example2
    : # Another Example.
        Max
    : 8 # Max for Example2 World
        Min
    : 3 # Min for Example2 World
    Placeholders
    (You'll need PlaceholderAPI if you want to use them) :

    Code (Text):
    %VDIST_REDUCTION_INDICE% => Get the reduction indice in percentage
    %VDIST_REDUCTION_INDICE_DECIMAL% => Get the reduction indice with decimals
    %VDIST_TPS% => Get TPS
    %VDIST_DECIMAL_TPS% => Get TPS with decimals
    %VDIST_PLAYER_SETTINGS_VIEW% => Get the render distance in player's settings
    %VDIST_PLAYER_SUPPORTED_VIEW% => Get the supported view distance of a player
    %VDIST_PLAYER_CURRENT_VIEW% => Get the current view distance of a player
    %VDIST_PLAYER_PING% => Get the ping of a player
    2018-10-30_14.04.54.png

    - Garden V2: http://garden-minecraft.com (FRENCH SERVER)
    - Fallen Lords: https://discord.gg/8hyvnBf (IP : fallen-lords.net)
    - Fair Server: fairserver.ru
    - Want to add yours ? => Lxct#9971

    - Your name here ? <3

    Dev builds: https://ci.codemc.org/job/Kugge/job/BestViewDistance/
    Stats: https://bstats.org/plugin/bukkit/BestViewDistance (Thanks to every people who set Metrics on true <3)

    [​IMG]

    Support:
    téléchargement.jpeg

Recent Reviews

  1. PirateCraft
    PirateCraft
    5/5,
    Version: 11.9
    You have no idea how happy I am to find this plugin, I asked 3 years ago or whenever paper first added the dynamic render distance for this exact plugin! I just did a preliminary test for logging in/afk/permission to bypass and it changes! this is an absolute game changer, when we get busy the TPS will drops and this can reduce render distance, when we have media team online to take screenshots or video they can have bigger render distance! Absolutely amazing that its dynamic. I just have one issue with the fly not auto increasing their render distance, I assume its because my max ViewDistance is set to 6 and my Fly is set to 10, so for now I will use ranks to bypass this issue. But im SOOOOO happy you made this plugin, I have asked for years for someone to make this exact plugin and never was able to find this!
  2. alexandre14062
    alexandre14062
    5/5,
    Version: 11.8
    Super plugin, ca fonctionne très bien!

    #caractèressuplémentairesSVPMERCIOKALLERSVP
    1. Kugge
      Author's Response
      Je suis content que ce plugin te plaise ;)!
      #SympaTaTechnique
  3. howtoNhut
    howtoNhut
    5/5,
    Version: 11.6
    ===========================
    Does it work on 1.8 paperspigot?
    ===========================
    1. Kugge
      Author's Response
      The 1.8 version for Paper is in development
  4. BBoyJD10
    BBoyJD10
    2/5,
    Version: 11.6
    Latest version takes a long time change the current view distance to the support one, about 2minutes
    1. Kugge
  5. howtoNhut
    howtoNhut
    5/5,
    Version: 11
    Why do not you help me support version 1.8? ):
    .......... 80 characters ..........
    1. Kugge
      Author's Response
      Because I really need that function who allow to set a custom view distance to a player. This function isn't in paper 1.8
      So i'll add 1.8 support when i'll find a way to set a custom view for a player. (And i'll add support for spigot too)
      This plugin is open source, please help if you can D=

      Anyway, thanks for your review!
  6. CatCode
    CatCode
    4/5,
    Version: 11
    add 1.8
    ___--___---__----____---____---____---_____________----------------------------___________-------------___--___--__--_-_-----____--___------_________---_____-___-_----__________-_____--___---__----___-------__-s--_----__-
    1. Kugge
      Author's Response
      I would add spigot & 1.8 compatibility as fast as I can! ='(
      But right now i do not have enough knowledge to create a function that set a view distance to a player.
      This plugin is open source, you can help!

      Thanks for your review, i hope i can add 1.8 + spigot support soon!
  7. stw222
    stw222
    5/5,
    Version: 9.6
    This plugin has helped a lot. With it we have been able to increase our view distance most of the time (we were using 8 before this plugin) and it has also helped some problematic lag whenever players teleport to different areas.
    1. Kugge
      Author's Response
      I'm happy that you like this plugin. Don't hesitate to make report if something wrong happened. Thanks for your review!
  8. SladeHazard
    SladeHazard
    5/5,
    Version: 9.6
    [17:39:47 WARN]: [BestViewDistance] Plugin BestViewDistance v9.6 generated an exception while executing task 224
    java.lang.NullPointerException: null
    at me.lxct.bestviewdistance.functions.Other.applyViewDistance(Other.java:49) ~[?:?]
    at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftTask.run(CraftTask.java:63) ~[patched_1.12.2.jar:git-Paper-1594]
    at org.bukkit.craftbukkit.v1_12_R1.scheduler.CraftAsyncTask.run(CraftAsyncTask.java:52) ~[patched_1.12.2.jar:git-Paper-1594]
    at com.destroystokyo.paper.ServerSchedulerReportingWrapper.run(ServerSchedulerReportingWrapper.java:22) ~[patched_1.12.2.jar:git-Paper-1594]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:1.8.0_181]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:1.8.0_181]
    at java.lang.Thread.run(Thread.java:748) [?:1.8.0_181]
    1. Kugge
      Author's Response
      Hi. Please use Discord or Discussion (or Github) to make a bug report.
      This should be fixed in the latest build! (9.8)
  9. Zefferis
    Zefferis
    5/5,
    Version: 9.6
    An amazingly interesting plugin. I was genuinely surprised that this was possible so adding it to a server was just great.

    Thanks for the work!
    1. Kugge
      Author's Response
      Don't hesitate if you have some ideas about features to add.
      I'm glad this plugin can help you.
      Thanks for your review!
  10. NoWing31
    NoWing31
    5/5,
    Version: 9.3
    Excellent!
    Support at the top by the creator.
    Could justify by itself the transition to Paper.
    -------------------------------
    Excellent !
    Support au top par le créateur.
    Pourrait justifier à lui seul le passage à Paper
    1. Kugge
      Author's Response
      Thanks for your review ! I'm glad you like this plugin ! =)
      -
      Merci pour ta note, je suis heureux que ce plugin te plaise =)