🎛️Arguments and Properties

Learn about startup arguments and system properties.

The start arguments and system properties are values appended to the used in Plazma execution, which have a overall impact on the operation of Plazma.

According to the start argument and system properties divided by the position added to the command (#user-content-fn-2).


System properties

System properties inputted before -jar are processed in the JVM before Plazma initialization.

Modifying system properties can change the operation of Plazma and JVM, and can have a significant impact on the game!

If you are not sure what each system property does, do not use it under any circumstances!

Usage

System properties are inputted as Java command arguments between java and -jar.

For example, if you want to apply the Plazma.dummyProperty system property, entering the following will initialize Plazma with 37 in the next property.

java -Xms4G (...) -DPlazma.dummyProperty=37 -jar plazma.jar (...)

-D indicates that the argument is an exclusive argument added to Plazma, not embedded in the JVM,

If no value is entered for the property, the value is fixed to .

The Paperweight server platform includes a . in the property name to distinguish system properties for each platform.

In some terminals such as Windows Powershell, these arguments may not be allowed, so " should be added to both ends of the argument (#user-content-fn-4).

Complete System Properties

convertLegacySigns

  • Type: Boolean

  • Default: False

Updates deprecated sign formats.

debug.entities

  • Type: Boolean

  • Default: False

Enables debug logs related to entity information.

debug.rewriteForIDE

  • Type: Boolean

  • Default: False

Disables NMS revision in IDE to correctly load debug information, and automatically remaps internal version information.

disable.watchdog

  • Type: Boolean

  • Default: False

Disables Spigot's Watchdog warning system.

letMeReload

  • Type: Boolean

  • Default: False

Disables confirmation message for the /reload command.

The /reload command is very unstable, so any issues that occur after using /reload are the responsibility of the user themselves.

If you are a plugin developer and need to update a plugin, use hotswapping instead of /reload.

io.papermc.paper.suppress.sout.nags

  • Type: Boolean

  • Default: False

Disables plugins using standard input/output system.

net.kyori.adventure.text.warnWhenLegacyFormattingDetected

  • Type: Boolean

  • Default: False

Warns when deprecated formatting is detected in chat components.

Paper.bypassHostCheck

  • Type: Boolean

  • Default: False

Disables server pattern matching verification when players connect to the server.

Paper.debugDynamicMissingKeys

  • Type: Boolean

  • Default: False

Enables debug logs for missing keys in NBT objects.

Paper.debugInvalidSkullProfiles

  • Type: Boolean

  • Default: False

Enables debug logs for skull blocks with invalid profile information.

Logs all invalid skull blocks in the world with their locations.

Paper.disableChannelLimit

  • Type: Boolean

  • Default: False

Disable the limit of 128 plugin applied per player.

Paper.disableClassPrioritization

  • Type: Boolean

  • Default: False

Disables plugin class prioritization system.

Useful when issues arise in plugin shading.

Paper.disableFlushConsolidate

  • Type: Boolean

  • Default: False

Disables Netty flush consolidation system.

Paper.excessiveTELimit

  • Type: Integer

  • Default: 750

Splits entities into multiple packets if they exceed the set value.

Paper.filterThreshold

  • Type: Integer

  • Default: 8192

Sets the maximum packet size the server can receive at once.

Paper.ignoreJavaVersion

  • Type: Boolean

  • Default: False

Disables Java version verification.

This may allow JVM to attempt to access non-existent code!

Files and overall game mechanics can be permanently damaged, causing the game to break.

Any issues caused by this are the user's responsibility, and Plamza does not provide any support for it.

Paper.maxCustomChannelName

  • Type: Integer

  • Default: 64

Sets restrictions on the plugin channel name.

Paper.maxSignLength

  • Type: Integer

  • Default: 80

Sets the maximum length of characters that can be entered on one line of a sign.

Paper.minPrecachedDatafixVersion

  • Type: Integer

  • Default: (world version) + 1

Sets the version of initial world update information to be initialized.

Useful when updating a large number of chunks, but otherwise not used.

Paper.parseYamlCommentsByDefault

  • Type: Boolean

  • Default: True

Enables processing of comments in YAML files.

Paper.playerConnection.keepAlive

  • Type: Integer

  • Default: 30

Kicks players if no data is received from them for the entered value (in seconds).

In general, the continues to send to the server, so players are not but if the game does not respond, it is considered a crash and the server will no longer process the player and kick them.

Paper.skipServerPropertiesComments

  • Type: Boolean

  • Default: False

Ignores comments in server properties.

Paper.debug-sync-loads

  • Type: Boolean

  • Default: False

Enables debug logs for synchronous chunk loading.

Paper.enable-sync-chunk-writes

  • Type: Boolean

  • Default: False

Enables Minecraft's .

This proceeds to save each chunk in order, causing significant performance degradation.

Paper.explicit-flush

  • Type: Boolean

  • Default: False

Enables Explicit Flushing for network channels.

Paper.strict-thread-checks

  • Type: Boolean

  • Default: False

Always logs errors not occurring on the main thread.

Paper.tickList-warn-on-excessive-delay

  • Type: Boolean

  • Default: False

Outputs a warning if scheduled tasks have excessive wait time.

Paperclip.patchOnly

  • Type: Boolean

  • Default: False

When using the default provided executable, only applies patches without starting the server.

Plazma.aggressiveOptimize

  • Type: Boolean

  • Default: false

  • Conflict: Plazma.disableConfigOptimization

Optimizes the initial configuration more strongly.

Enabling this makes the server faster and safer, but it can have a significant impact on gameplay.

Plazma.disableConfigOptimization

  • Type: Boolean

  • Default: false

  • Conflict: Plazma.aggressiveOptimize

Does not optimize the initial configuration.

This uses the default configuration of Paper.

Plazma.iKnowWhatIAmDoing

  • Type: Boolean

  • Default: false

Suppress the warning message displayed when Plazma is initialized (#user-content-fn-11).

Plazma.useVanillaFavicon

  • Type: Boolean

  • Default: false

Disables Plazma branding and uses the vanilla default server favicon.

Plazma.useVanillaConfiguration

  • Type: Boolean

  • Default: false

  • Conflict: Plazma.disableConfigOptimization

This attribute is still under development.

This attribute reverts all patched vulnerabilities!

This can significantly impact server safety and performance.

Any issues resulting from using this attribute are the responsibility of the server administrator.

Provides the default values provided by Mojang for the initial configuration.

This disables all vulnerability patches applied by Paper.

Vulnerability patches can be re-enabled in Paper configuration or Plazma configuration.

Plazma.vanillaize

  • Type: Boolean

  • Default: true

  • Conflict: Plazma.aggressiveOptimize

This attribute is still under development.

Sets the initial configuration closer to vanilla.

This is applied only to the extent that it does not significantly impact server performance and safety, and configures to use vanilla default values when the Plazma.disableConfigOptimization attribute is used.

Obsolete attribute

The following system attribute is obsolete.

timings.bypassMax

  • Type: Boolean

  • Default: false

  • Deprecated: Since Timings was completely removed from Plazma

Determines whether exceeding the maximum value that can be sent to Aikar's Timings API is allowed.

Even if done so, rate limiting will be applied if not handled in the API.


Start Argument

The start argument is entered after -jar *.jar to initialize Plazma and is processed together.

Usage

System attributes are entered as program command arguments after -jar *.jar.

For example, if you want to apply the nogui start argument, enter as follows to have Plazma process the nogui argument during initialization.

java -Xms4G (...) -DPlazma.dummyProperty=37 -jar plazma.jar nogui (...)

Full Start Argument

bukkit-settings

  • Alias: b

  • Default: bukkit.yml

Sets the name and location of the Bukkit configuration file.

command-settings

  • Alias: c

  • Default: commands.yml

Sets the name and location of the Bukkit command configuration file.

config

  • Alias: c

  • Default: server.properties

Sets the name and location of the server properties file.

demo

Starts the server in demo world.

eraseCache

Removes remaining cache files after world upgrade.

forceUpgrade

Forces upgrading the world regardless of version.

help

  • Alias: ?

Outputs all start arguments and descriptions of Plazma.

initSettings

Creates configuration files only and shuts down the server.

jfrProfile

Enables JFR profiling.

max-players

  • Alias: s, size

  • Default: (server properties)

Sets the maximum number of allowed players.

nogui

Disables the graphical interface panel.

nojline

Disables JLine and uses vanilla console.

online-mode

  • Alias: o

  • Default: (server properties)

Selects whether to verify players with Mojang authentication server.

May be sanctioned for violating the EULA if not using Velocity or other proxies.

paper-settings

  • Alias: paper

  • Default: paper.yml

This argument has been deprecated after 1.19.4

Sets the location of the deprecated PaperSpigot configuration file.

Used to transfer existing configurations to a new configuration file, and is no longer used afterwards.

paper-settings-directory

  • Alias: paper-dir

  • Default: config

Sets the name and location of the folder where Paper configuration files are located.

plazma-settings-directory

  • Alias: plazma-dir

Sets the name and location of the folder where Plazma configuration files are located.

plugins

  • Alias: p

  • Default: plugins

Sets the location of the plugins folder.

pufferfish-settings

  • Alias: pufferfish

  • Default: pufferfish.yml

Sets the name and location of the Pufferfish configuration file.

purpur-settings

  • Alias: purpur

  • Default: purpur.yml

Sets the name and location of the Purpur configuration file.

safeMode

Starts the server in a completely vanilla state (safe mode).

server-ip

  • Alias: h, host

  • Default: (server properties)

Sets the host name or Internet Protocol address of the server.

server-port

  • Alias: p, port

  • Default: (server properties)

Sets the port of the server.

server-name

  • Default: A Plazma Server

Sets the name of the server.

spigot-settings

  • Alias: S

  • Default: spigot.yml

Sets the name and location of the Spigot configuration file.

version

  • Alias: v

Outputs the Plazma version.

world-dir

  • Alias: W, universe, world-container

  • Default: (server folder)

Sets the location where world files are stored.

world-name

  • Alias: w, world

  • Default: (server properties)

Sets the name of the world file.


Last updated