# Welcome

This website helps you configuring my plugin

* ​[Patreon](http://patreon.com/lonedev)​
* ​[YouTube](http://youtube.com/lonedev)​
* ​[SpigotMC](https://www.spigotmc.org/members/lonedev.88296/#resources)​
* ​[Website](https://www.matteodev.it/)​
* ​[Steam developer page](https://store.steampowered.com/developer/LoneDev/)​
* ​[Discord](https://discord.gg/4dfnpUK)


# First install

## Installing the plugin

* Install **ServerBooster**
* install [ProtocolLib](https://www.spigotmc.org/resources/protocollib.1997/)
* install [LoneLibs](https://www.spigotmc.org/resources/lonelibs.75974/)
* Start the server

### If you want glowing item drops:

* Install **GlowAPI** (for MC [<1.12](https://github.com/InventivetalentDev/GlowAPI/releases/tag/1.4.6-SNAPSHOT), MC [1.12+](https://github.com/InventivetalentDev/GlowAPI/releases))&#x20;
* Install [PacketListenerAPI](https://www.spigotmc.org/resources/api-packetlistenerapi.2930/)


# Configurations


# Language

## Mobs limiter languages

You can translate the only two messages of the mobs limiter copying en.yml file and naming it as you prefer.\
Then change the `lang` property in `config_entity_limiter.yml`

```yaml
lang: en
```

## Drops holograms language (Minecraft 1.12 and lower)

{% hint style="warning" %}
Minecraft 1.13+ already have language files inside the game, no need to download them.
{% endhint %}

Download more languages here:

{% file src="/files/tHMpzH8jY3DJnaHgDw2t" %}

Place the language file you need inside `plugins/ServerBooster/lang/` foder.

Open `config_holo.yml` and change the `lang` attribute.

```yaml
lang: "en_us"
```

##


# Entity limiter

config\_entity\_limiter.yml

{% hint style="info" %}
This configuration helps **reducing enity counter** in the server to **avoid lag**.\
This is an alternative to stacking plugins as they alter gameplay stacking entities into a single one.\
\
ServerBooster lowers down server lag just limiting entity groups without alterating the gameplay.
{% endhint %}

(Description of the option is in gray)

```yaml
#language of the messages (in lang_limiter folder)
lang: en
# Radius in blocks to check for mobs
radius: 56 
# ticks for a farm animal to grow up
growth_ticks: -1 
# dev option
relative_age: false 
# shows message in console when an entity spawn is denied
debug: false 

age-limiter-enabled: false
breeding-limiter-enabled: false
# enable limits by sheep colors (can make lag)
sheep-color-check: false 
# farm animal breeding cooldown in ticks (-1 to disable)
breeding_ticks: -1 
# will block also plugin spawned mobs. Please enable this at your own risk
force-spawn-deny: true 
# enabling this should boost performance of mob removal on spawn
cancel-event-instead-of-remove-entity: true 
# ignore every rule for these entity types
spawn-whitelist:
  types:
    - ARMOR_STAND
    - ITEM_FRAME
    - DROPPED_ITEM
    - PAINTING
# which worlds do you want these options to be applied
worlds:
  - world
  - world_nether
  - world_the_end

# this is the default setting for mobs that are not in the "limites" list
defaults:
  # Enable age limiting and remove the mob after a number of ticks. 
  # (e.g. 18000 for 15 minutes) Set -1 to ignore the age.
  age: -1
  # The maximum number of a mob type to be allowed to spawn in a 
  # "view distance" defined by radius. Set -1 to ignore radius.
  radius_max: 10 
  # The maximum number of a mob type to be allowed to spawn in a single chunk.
  # Set -1 to ignore max entities of this type in chunk.
  chunk_max: 5 
  # If set to a value other than -1, the number of mobs to not be removed 
  # on chunk unload.
  # Set -1 to avoid deleting excess entities on chunk unload.
  cull: 5 
```

### Example entityies limits

```yaml
limits:
  # limits zombie villagers: 
  # Only 15 can spawn in a radius of 56 blocks (radius is set on the top of this page).
  # Only 4 can spawn in the same chunk.
  # Only 10 will remain on chunk unload. Others will be removed.
  zombie_villager:
    radius_max: 15
    chunk_max: 4
    cull: 10
  # limits enderman:
  # Only 7 can spawn in a radius of 56 blocks (radius is set on the top of this page).
  # Only 4 can spawn in the same chunk.
  # No enderman will remain on chunk unload. They all will be removed.
  enderman:
    radius_max: 7
    chunk_max: 4
    cull: 0
```

{% hint style="warning" %}
To avoid entities from being removed (like enderman farms entities and similar) you have to **rename** the **entities** using a [nametag](https://minecraft.gamepedia.com/Name_Tag).

There are some methods to avoid entity removal:

* **rename** the entities using nametag
* put the entity on a **vehicle** (**minecart**, **boat**)
* make the entity **Invulnerable** (NBT tag)
* **tame** the entity (only **dog**, **cat**...)
* entity has an **item equipped** (armor, item in hand)
* is a [Guardian ](https://minecraft.gamepedia.com/Guardian)or [Elder Guardian](https://minecraft.gamepedia.com/Elder_Guardian)
  {% endhint %}


# Chunks optimizer

chunks\_optimizer.yml

{% hint style="info" %}
This config allows to optimize how chunks are managed in Minecraft.\
What you can do:

* **detect chunks** with **lagging** mechanics (redstone machines, 0 tick machines, water or lava lagging the server, plugins listening to high frequency block updates)
* **lower down chunks packets** sending **frequency** to players if the server TPS is low or if the player ping is high (to avoid player losing connection if they have slow internet)
* **unload chunks** from **RAM** when players are not around them, to avoid high RAM usage, low TPS and crash
  {% endhint %}

(Description of the option is in gray)

```yaml
slow-down-chunk-packets:
  # slow down chunks packets sending when TPS is below this value
  when-tps-below:
    enabled: true
    value: 19
  # slow down chunks packets sending when player ping is below this value
  when-high-player-ping:
    enabled: true
    value: 150
  # only in these worlds
  worlds:
    - world
    - world_nether
    - world_the_end
block-physics-lag-detector:
  enabled: true
  # detect chunks lagging only when TPS is below this value
  low-tps: 18
  lag:
  # notify lag only after these ticks (example 950000) to avoid message spam
    warning-threshold: 950000
  # notify online OP players
    notify-op: true
  # enable this to cancel the lagging event (to block the lagging machine for example)
    cancel-event: false
  # only in these worlds
  worlds:
    - world
    - world_nether
    - world_the_end
unload-chunks:
  enabled: true
  # unload chunks with no players only after some ticks (example 6000)
  interval-ticks: 6000
  log:
    # log the unload event in console
    unload: true
  # only in these worlds
  worlds:
    - world
    - world_nether
    - world_the_end
```


# Items Holograms

config\_holo.yml

{% hint style="info" %}
This config allows you to:

* show **holograms** on dropped items (item name)
* **merge** dropped items **above** the **64 stack** limit, to avoid lag
* **merge** dropped **unstackable items** (on the ground)
* glow the **items** to make them more recognizable by players
  {% endhint %}

(Description of the option is in gray)

```yaml
# language of the holograms (items names). folder: "lang"
lang: "en_us"
enabled: true
#which worlds do you want these options to be applied
worlds:
  - world
  - world_nether
  - world_the_end
merge:
  # merge dropped items even if their stack limit is exceeded (64+)
  force_merge:
    enabled: true
    radius: 7
    # please enable it only if you have duplication problems or incompatibility
    # with holograms plugins. For example with holograms of Shops plugin.
    # this option can increase CPU usage.
    more_precise_item_similarity_check__ENABLE_ONLY_IF_ANY_DUPE_PROBLEM: false
    max_stack:
      # max amount of stacked items of the same type
      custom_amount: 512
  merge_only_player_drops: false
  hologram:
    enabled: true
    format: "&f{name} &bx{amount}"
    glow:
      enabled: true
      # color of the hologram: 
      # https://hub.spigotmc.org/javadocs/spigot/org/bukkit/ChatColor.html
      color: "AQUA"
      only_player_dropped_items: true
      only_current_player: true
  blacklist:
    - BEDROCK
pickup_delay:
  legit_stacks: 2
  unstackable_items_stacks: 2
```

### languages

Download more languages here: <http://matteodev.it/spigot/holodrops/assets/lang.zip>

```bash
Afrikaans = af_za
اللغة العربية = ar_sa
Asturianu = ast_es
Azərbaycanca = az_az
Беларуская = be_by
Български = bg_bg
Brezhoneg = br_fr
Braobans = brb
Bosanski = bs_BA
Catala (Valencià) = ca-val_es
Català = ca_es
Čeština = cs_cz
Cymraeg = cy_gb
Dansk = da_dk
Österreichisches Deitsch = de_at
Schwiizerdutsch = de_ch
Deutsch = de_de
Ελληνικά = el_gr
Pirate Speak = en_7s
English (Australia) = en_au
Canadian English = en_ca
English (UK) = en_gb
New Zealand English = en_nz
ɥsᴉꞁᵷuƎ (ɯopᵷuᴉꞰ pǝʇᴉuՈ) = en_ud
English (US) = en_us
Shakespearean English = en_ws
Anglish = enp
Esperanto = eo_uy
Español (Argentina) = es_ar
Español = es_CL
Español (España) = es_es
Español (México) = es_mx
Español (Uruguay) = es_uy
Español (Venezuela) = es_ve
Eesti = et_ee
Euskara = eu_es
فارسی = fa_ir
Suomi = fi_fi
Filipino = fil_ph
Føroyskt = fo_fo
Français québécois = fr_ca
Français = fr_fr
Frysk = fy_nl
Gaeilge = ga_ie
Gàidhlig = gd_gb
Galego = gl_es
Gaelg = gv_im
ʻŌlelo Hawaiʻi = haw
עברית = he_il
हिन्दी = hi_in
Hrvatski = hr_hr
Magyar = hu_hu
Հայերեն = hy_am
Bahasa Indonesia = id_id
Igbo = ig_ng
Ido = io_en
Íslenska = is_is
Italiano = it_it
日本語 = ja_jp
la .lojban. = jbo
ქართული = ka_ge
Taqbaylit = kab_dz
ಕನ್ನಡ = kn_in
한국어 = ko_kr
Kölsch/Ripoarisch = ksh_de
Kernewek = kw_gb
Latina = la_va
Lëtzebuergesch = lb_lu
Limburgs = li_li
LOLCAT = lol_aa
Lietuvių = lt_lt
Latviešu = lv_lv
Te Reo Māori = mi_nz
Македонски = mk_mk
Монгол = mn_mn
Kanien’kéha = moh_us
Bahasa Melayu = ms_my
Malti = mt_mt
Norsk Bokmål = nb_no
Platdüütsk = nds_de
Vlaams = nl_be
Nederlands = nl_nl
Norsk Nynorsk = nn_no
Norsk Bokmål = no_no
Nuučaan̓uł = nuk
Occitan = oc_fr
Ojibwemowin = oj_ca
Övdalsk = ovd_se
Polski = pl_pl
Português (Brasil) = pt_br
Português (Portugal) = pt_pt
Quenya = qya_aa
Română = ro_ro
Русский = ru_ru
Slovenčina = sk_sk
Slovenščina = sl_si
Davvisámegiella = sme
Af-Soomaali = so_so
Shqip = sq_al
Српски = sr_sp
Svenska = sv_se
Oschdallgaierisch = swg
Säggs'sch = sxu
Ślōnskŏ gŏdka = szl
தமிழ் = ta_IN
ภาษาไทย = th_th
tlhIngan Hol = tlh_aa
Türkçe = tr_tr
Татарча = tt_ru
Talossan = tzl_tzl
Українська = uk_ua
Vèneto = vec_it
Tiếng Việt = vi_vn
Frängisch = vmf_de
Yorùbá = yo_ng
简体中文 - 中国 = zh_cn
繁體中文 - 台灣 = zh_tw
```


# Optimize entities

config\_optimize\_entities.yml

{% hint style="info" %}
This config allows you to:

* override and optimize spigot.yml and bukkit.yml configurations in a single place
* limit entities AI to avoid useless CPU processing
  {% endhint %}

(Description of the option is in gray)

```yaml
### Override bukkit.yml and spigot.yml configs
# ALL THESE SETTINGS ARE SPIGOT.yml SETTINGS. Search online about a good explaination. 
# ServerBooster just overrides these values ignoring the spigot.yml values
# https://www.spigotmc.org/wiki/spigot-configuration/
# https://bukkit.gamepedia.com/Bukkit.yml

override_spigot_bukkit_configs: true
mob-spawn-range: 3
entity-activation-range:
  tick-inactive-villagers: false
  animals: 16
  monsters: 16
  raiders: 25
  misc: 2
ticks-per:
  animal-spawns: 70
  monster-spawns: 6
spawn-limits:
  monsters: 7
  animals: 2
  water-animals: 1
  ambient: 1

######################################################################################################
# Special functions only available on Spigot 1.14+, won't be activated if 
# server version is below 1.14
######################################################################################################
#Log when the plugin untrack entities
log-to-console: false
log-detailed: false
log-tps:
  enabled: false
  interval: 1200

# DO NOT ENABLE. Can cause excessive amount of mobs spawned: 
# Disable tick for untracked entities (experimental, use at your own risk).
# Minecraft won't see these entities anymore until they are unfrozen 
# by the plugin, so the server will spawn more entities
# thinking there is no entitity.
disable-tick-for-untracked-entities: false
#disable ai for untracked entities
disable-ai-for-untracked-entities: true

trigger-options:
  # If set to true: optimization takes place every "untrack-ticks" 
  # also if tps is not below value specified in "when-tps-below"
  always:
    enabled: true
    # How many ticks between untrack process
    # The untrack process will check for untracked entities by players 
    # but still by the server, and untrack them.
    untrack-ticks: 600
  when-tps-below:
    enabled: true
    # if tps are not below this value, the task will not perform the untrack
    # and it will wait for the next run
    value: 18.5
    # How many ticks between untrack process
    # The untrack process will check for untracked entities by players 
    # but still by the server, and untrack them.
    untrack-ticks: 450


#frecuency in ticks to check untracked entities
#It will check for players traking entities and will track it again 
#(this is to prevent invisible entities)
check-untracked-entities-frequency: 35

#Distance in blocks to check for players near untracked entities
tracking-range: 35

#Entities with these properties will be ignored from optimization. 
#You should leave this as default
ignore:
  custom-named: false
  invulnerable: false
  drops: true
  itemframes: true
  armorstands: true
  villagers: false

#which worlds do you want these options to be applied
worlds:
  - world
  - world_nether
  - world_the_end
```


# TPS actions

config\_tps.yml

{% hint style="info" %}
This config allows you to execute commands when a low TPS value is reached.

You can create as many as groups you want. Also commands are unlimited.

You can use these placeholders in commands: {tps}
{% endhint %}

This config is just an example, it's not really useful to remove items on the ground:

```yaml
tps-commands:
  enabled: false
  commands:
    group_1:
      tps: 16
      delay_ticks: 36000
      list:
        command_1:
          command: "broadcast Server is lagging ({tps} tps). Please be patient. "
          delay_ticks: 0
        command_2:
          command: "broadcast Removing entities on the ground in 60 seconds..."
          delay_ticks: 20
        command_3:
          command: "minecraft:kill @e[type=item]"
          delay_ticks: 1200
```


# Default configurations

* [config\_entity\_limiter.yml](https://pastebin.com/fvpGPMs7)
* [config\_optimize\_entities.yml](https://pastebin.com/5iiAeshG)
* [config\_holo.yml](https://pastebin.com/EgdG7hwY)
* [config\_tps.yml](https://pastebin.com/8aSeHddS)


# Support


# Report a bug

## To report a bug please click here:

{% embed url="<https://github.com/PluginBugs/Issues-ServerBooster/issues>" %}


