Documentation/heavyspleef 2.0/full-tutorial/configuration

HeavySpleef Logo

MainSetupCommandsDev buildsChangelogRequirementsVideosFAQ

Configurations

Once you started your server all necessary configuration files will be created in plugins/HeavySpleef. After you have edited a config, save it and type /spleef reload to activate changes made.

You may skip this step and continue with the creating games section as HeavySpleef comes out of the box and does not configuration to be able to run.

Main Configuration

This configuration file is located under plugins/HeavySpleef/config.yml and defines general game related settings.
By default the main configuration looks like this:

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
######################################
## -- HeavySpleef  -  Configuration ##
######################################
#
# This is the main configuration file of HeavySpleef
# For database and back-end configuration see database-config.yml

general:
  # This prefix will be shown in every message
  # you receive by the plugin
  spleef-prefix: '&8[&6&lSpleef&8]'
  
  # Whitelisted commands
  # A list of commands which are not blocked
  # while playing spleef
  command-whitelist:
  - spleef
  - money
  - msg
  - tell
  - r
  
  # This is the prefix for players
  # who have the status 'vip'
  # The permission for vip's is heavyspleef.vip
  vip-prefix: '&c'
  
  # Defines wether vip are allowed to join
  # full games. Full games are marked by the
  # 'max-players' flag
  vip-join-full: true
  
  # If you are running a pvp server this
  # will come very handy for you. It allows
  # you to set a timer the player has to wait
  # before he is able to join a game. Movement,
  # damage and death of the player cancelles the
  # join.
  #
  # Given in seconds, use 0 to disable the timer.
  pvp-timer: 0
  
  # Decide wether you want a message
  # to be broadcasted to all players
  # on the server when a Spleef game
  # is about to start
  broadcast-game-start: true
  
  # A list of worlds where global join
  # broadcasts are not broadcasted
  # This only has an effect when
  # broadcast-game-start is set
  # to true
  broadcast-game-start-blacklist:
  - some_world
  - another_world
  
  # If enabled the win message will
  # also be send to players who participated
  # but are already out of the game
  win-message-to-all: true
  
queues:
  # Wether players are able to use queues if they
  # are not allowed to join the game (when it is ingame
  # or full for instance)
  use-queues: true
  
  # Defines wether players in the queue are allowed
  # to execute commands. This can be used to prevent
  # players from joining other games while in queue.
  # The command whitelist will apply on this function.
  commands-in-queues: false

# This section defines the default properties
# for games. Most of these properties are pretty
# basic. For a more complex and challenging gameplay
# see flags.
# 
# Please note that these properties will apply to all
# games if changed.
# 
# Also note that these properties can be overriden by
# flags as some flags require some properties to be
# enabled or disabled (for instance the shovels flags
# disables the instant break)!
default-game-properties:

  # Defines wether or not the players are
  # able to instantly break blocks on floors.
  # Default: true
  instant-break: true
  
  # Defines wether or not a cracking effect
  # will be played when a block is broken
  # in instant-break mode.
  # Default: true
  play-block-break: true
  
  # Defines wether or not players are able
  # to join, even if the game is in countdown.
  # Default: true
  join-on-countdown: true
  
  # Defines wether or not hunger is disabled
  # while playing spleef.
  # Default: true
  disable-hunger: true
  
  # Defines wether or not pvp is disabled
  # while playing spleef.
  # Default: true
  disable-pvp: true
  
  # Defines wether or not environmental damage
  # is disabled while playing spleef.
  # Default: true
  disable-damage: true
  
  # Defines wether or not item pick-ups are
  # disabled while playing spleef
  # Default: true
  disable-item-pickup: true
  
  # Defines wether or not players are able to
  # drop items while playing spleef
  # Default: true
  disable-item-drop: true
  
  # Defines wether or not players are able to
  # place blocks while playing spleef
  # Default: true
  disable-build: true
  
  # Defines wether or not liquid blocks are
  # used to determine if a player has lost
  # These liquids are: Water, Lava
  # Default true
  use-liquid-deathzone: true
  
  # Defines wether or not players are allowed
  # to break blocks on floors
  # Default: false
  disable-floor-break: false
  
  # Defines wether players are able to use
  # commands while in spleef
  # Default: true
  block-commands: true
  
  # Defines a broadcast radius where spleef
  # messages are broadcasted around the game
  # Default: 30
  broadcast-radius: 30
  
localization:
  # The language this plugin is using. Currently
  # an english, german, dutch and a part russian
  # translation is available
  # 
  # Possible values:
  # en_US - English
  # de_DE - German
  # nl_NL - Dutch (translated by waterman1001)
  # ru_RU - Russian (translated by Sollembum78)
  #
  # If you want to help with the translation of HeavySpleef
  # feel free to translate it into your own language.
  # For doing this, use the file located under
  # /language/locale_en_US.yml as a template.
  # Your translated file should have the following
  # format: locale_<language-code>_<country-code>.yml
  locale: en_US

# Flag relevant configuration
flags:
  # Flag: vote
  #
  # Defines how many players have to vote
  # in order to start the game (given in %)
  # This means that x percent of players
  # need to type /spleef vote to autostart
  # the game
  autostart-vote: 75
  
  # Flag: anticamping
  #
  # Defines after how many seconds of camping
  # the player receives a warning. This does
  # only work when anticamping-do-warn is set
  # to true
  anticamping-warn: 3
  
  # Flag: anticamping
  #
  # Defines wether or not the player even
  # receives a warning when camping
  anticamping-do-warn: true
  
  # Flag: anticamping
  #
  # Defines after how many seconds of camping
  # the player is teleported down to the lower
  # floor
  anticamping-teleport: 6
  
  # Flag: vote
  #
  # Defines an alternative block the players
  # have to click in order to vote for the start
  ready-block: IRON_BLOCK
  
  # Flag: spectate, queuelobby
  #
  # An item the player can right-click to leave
  # the spectate mode or the queue lobby
  leave-item: MAGMA_CREAM
  
signs:
  # This prefix may be shown on signs if
  # requested by writing [Spleef] in the first line
  spleef-prefix: '&8[&6Spleef&8]'
  
  # This prefix may be shown on signs if
  # requested by writing [Splegg] in the first line
  splegg-prefix: '&8[&6Splegg&8]'
  
update:
  # Decide wether you want the plugin
  # to check for updates everytime you
  # start the server and notify you
  enable-update-check: true
  
  # Decide wether you want to enable
  # the /spleef update command for
  # operators or admins with the
  # heavyspleef.admin.update permission
  enable-update-command: true

# DO NOT CHANGE THIS UNLESS YOU WANT TO RESET YOUR CONFIG
config-version: 6

Database Configuration

This configuration file is located under plugins/HeavySpleef/database-config.yml and contains connection details for saving games, floors and statistics. You may define if you want to enable statistics and wether you want to use SQLite or MySQL. Furthermore you may configure HeavySpleef internal settings for caching and connection pooling (This is recommended for expert users only).
By default the database configuration looks like this:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# Database configuration for HeavySpleef
# This config includes database connections
# and other details for database modules

# Manage your database modules here
# Please note that you can only use
# a sql database for statistics due
# to performance issues on xml
database-modules:
  statistics:
    enabled: true

    # For experts only
    # Specify the maximim account of statistics
    # which will be cached (other statistics will be evicted from
    # the cache and need to be loaded again from the database)
    max-cache-size: 1024

# This is for advanced users only.
# HeavySpleef automatically handles
# your required database connections if
# you keep this untouched. If you want to
# use MySQL for statistic persistence you need
# to edit this section
#
# Specify your database connection
# details here. 
# 
# Use the {basedir} variable for a reference to
# the HeavySpleef working directory
persistence-connection:
  xml:
    # Define the directory for xml
    dir: "{basedir}/persistence/games/xml"
  schematic:
    # Define the schematic directory
    dir: "{basedir}/persistence/games/schematic"
  sql:
    # Default available drivers:
    #   - MySQL: com.mysql.jdbc.Driver
    #   - SQLite: org.sqlite.JDBC
    driver: org.sqlite.JDBC
    
    # Database connection url
    #
    # MySQL scheme: "jdbc:mysql://{host}/{database}"
    # MySQL example: "jdbc:mysql://localhost:3306/heavyspleef"
    # Note on MySQL: Make sure that you have created the database
    #                when using MySQL before starting HeavySpleef
    #
    # SQLite scheme: "jdbc:sqlite:{path-to-file}"
    # SQLite example: "jdbc:sqlite:{basedir}/persistence/database.sqlite"
    #
    url: "jdbc:sqlite:{basedir}/persistence/database.sqlite"
    
    # Set this to true if you use an authentication based sql database
    # (MySQL for instance)
    use-authentication: false
    
    # Specify a database user for use with MySQL
    # This value is not needed if you prefer using
    # a SQLite database
    user: root
    
    # Only for MySQL
    # Defines your password for the database user as defined above
    password: password
    
    # For experts only. Specify the connection pool name.
    pool-name: heavyspleef_connection_pool
    
    # For experts only. Specify the maximum connection pool size.
    # Use one connection pool for SQLite. The connection pool size
    # depends on your database thread concurrency
    pool-size-max: 1
    
    # For experts only. Specify the idle closure-timeout for an unused connection
    # in the connection pool (in seconds)
    idle-timeout: 600

Sign Layout Configurations

These configuration bundle is stored under plugins/HeavySpleef/layout and define how signs look ingame. You may use color codes prefixed with &. For more information about layout configurations please visit the corresponding article about it.

<< Setup | Configuration | Create your first game >>