summaryrefslogtreecommitdiffstats
path: root/docs/_old_mediawiki/Basic-options.mediawiki
blob: 193ac2372e50e8ca93941eabd0f14fb93420b14d (plain)
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
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
__NOTOC__
Quests allows you to configure '''basic options''' for the plugin. These can all be located in the <code>config.yml</code>. 

== Table of contents ==
* [[Basic options#Categories enabled|Categories enabled]]
* [[Basic options#Trim gui size|Trim gui size]]
* [[Basic options#Titles enabled|Titles enabled]]
* [[Basic options#Quest started limit|Quest started limit]]
* [[Basic options#Quest limit|Quset limit]]
* [[Basic options#Allow quest cancel|Allow quest cancel]]
* [[Basic options#Allow quest track|Allow quest track]]
* [[Basic options#Task type exclusions|Task type exclusions]]
* [[Basic options#Guinames|Guinames]]
* [[Basic options#Sounds|Sounds]]
* [[Basic options#GUI hide locked|GUI hide locked]]
* [[Basic options#GUI confirm cancel|GUI confirm cancel]]
* [[Basic options#GUI hide quests if no permission|GUI hide quests if no permission]]
* [[Basic options#GUI hide categories if no permission|GUI hide categoires if no permission]]
* [[Basic options#GUI use PlaceholderAPI|GUI use PlaceholderAPI]]
* [[Basic options#GUI truncate requirements|GUI truncate requirements]]
* [[Basic options#GUI actions|GUI actions]]
* [[Basic options#Quest autostart|Quest autostart]]
* [[Basic options#Quest autotrack|Quest autotrack]]
* [[Basic options#Verbose logging level|Verbose logging level]]
* [[Basic options#Quests use PlaceholderAPI|Quests use PlaceholderAPI]]
* [[Basic options#Verify quest exists on load|Verify quest exists on load]]
* [[Basic options#Performance tweaking|Performance tweaking]]
* [[Basic options#Tab completion|Tab completion]]
* [[Basic options#Error checking|Error checking]]
* [[Basic options#Placeholder cache time|Placeholder cache time]]
* [[Basic options#Global task configuration override|Global task configuration override]]
* [[Basic options#Global quest display configuration override|Global quest display configuration override]]
* [[Basic options#Storage|Storage]]

== Categories enabled ==
:''<code>options.categories-enabled</code>''
Choose whether or not quests will be sorted into categories. If this is disabled, quests will be put into one big GUI instead, with categories only helping determine the order they are sorted.
```yaml
options:
  ...
  categories-enabled: true
```

== Trim gui size ==
:''<code>options.trim-gui-size</code>''
Choose whether or not the quests GUI will scale down (reduce the number of rows) so that there are not any empty rows.
```yaml
options:
  ...
  trim-gui-size: true
```

== Titles enabled ==
:''<code>options.titles-enabled</code>''
Choose whether or not titles will appear when starting / finishing quests.
```yaml
options:
  ...
  titles-enabled: true
```

== Quest started limit ==
:''<code>options.quest-started-limit</code>''
: ⛔️ '''This option has been removed in version 3.8 and this wiki entry is subject to removal.''' ''Please see [[Basic options#Quest limit]] instead.''

Choose the number of quests players can start at one time. This will include quests which have [[Creating a quest#Autostart|quest-specific autostart]] enabled, however this value will be ignored if [[Basic options#Quest autostart|global <code>quest-autostart</code>]] is enabled.
```yaml
options:
  ...
  quest-started-limit: 2
```

== Quest limit ==
:''<code>options.quest-limit</code>''
Choose the number of quests players can start at one time. This will include quests which have [[Creating a quest#Autostart|quest-specific autostart]] enabled, however this value will be ignored if [[Basic options#Quest autostart|global <code>quest-autostart</code>]] is enabled.

Each key is called a '''limit group''' (sometimes referred to as a quest rank), and players can start the set number of quests depending on their limit group. The group named <code>default</code> must be defined and is available to everybody, however the rest can be granted through the permission <code>quests.limit.<nowiki><limit group></nowiki></code>.
```yaml
options:
  ...
  quest-limit: 
    default: 2
    group1: 5
    group2: 10
    # ...
```
Group permissions are also documented in [[Commands-and-permissions#permissions|Commands and permissions § Permissions]].
== Allow quest cancel ==
:''<code>options.allow-quest-cancel</code>''
Choose whether or not players can cancel quests themselves via command or by right-clicking in the GUI. If this is set to false, consider removing the right-click cancel instruction from the [[Global configurations#Global quest display configuration|global quest display configuration]].
```yaml
options:
  ...
  allow-quest-cancel: true
```

== Allow quest track ==
:''<code>options.allow-quest-track</code>''
Choose whether or not players can track quests themselves via command or by middle-clicking in the GUI. If this is set to false, consider removing the middle-click track instruction from the [[Global configurations#Global quest display configuration|global quest display configuration]].
```yaml
options:
  ...
  allow-quest-track: true
```

== Task type exclusions ==
:''<code>options.task-type-exclusions</code>''
Prevent Quests from allowing specific task type registrations from those bearing a specific name. This can be used if you have an incompatible plugin which causes a dependent task type to activate, thus potentially leading to errors.
```yaml
options:
  ...
  task-type-exclusions: []
```

'''Example'''
```yaml
options:
  ...
  task-type-exclusions:
   - "blockbreak"
   - "blockbreakcertain"
```

== Guinames ==
:''<code>options.guinames</code>''
Change and define specific GUI names for localization. 
```yaml
options:
  ...
  guinames:
    quests-category: "Quests Categories"
    quests-menu: "Quests"
    quests-started-menu: "Started Quests"
    daily-quests: "Daily Quests"
    quest-cancel: "Cancel Quest"
```

== Sounds ==
:''<code>options.sounds</code>''
Choose which sounds play at certain events.
```yaml
options:
  ...
  sounds:
    quest-start: "ENTITY_PLAYER_LEVELUP:2:3"
    quest-cancel: "UI_TOAST_OUT:2:3"
    quest-complete: "UI_TOAST_CHALLENGE_COMPLETE:1.25:3"
    gui:
      open: "ITEM_BOOK_PAGE_TURN:1:3"
      interact: "ITEM_BOOK_PAGE_TURN1:3"
```
To define a sound, choose one from [https://hub.spigotmc.org/javadocs/bukkit/org/bukkit/Sound.html this list] (1.9+) or [https://helpch.at/docs/1.8.8/index.html?org/bukkit/Sound.html this list] (1.8).

To not have a sound play, you can leave the string blank (i.e. <code>""</code>), for example:
```yaml
options:
  ...
  sounds:
    quest-start: ""
```
You can choose a specific pitch and volume by including them in the following format <code>SOUND:PITCH:VOLUME</code>. Note that the pitch is any float between 0.5 and 2 (inclusively), and the volume must be greater than 0. The volume only changes how far out the sound can be heard by the player, not the actual volume played back on the client.

'''Example (1.9+):'''
<code>ENTITY_PLAYER_LEVELUP:2:3</code> -> sound <code>ENTITY_PLAYER_LEVELUP</code> at pitch <code>2</code> with a volume of <code>3</code>.

== GUI hide locked ==
:''<code>options.gui-hide-locked</code>''
Choose whether quests which cannot be started is visible to the player or not.
```yaml
options:
  ...
  gui-hide-locked: false
```

== GUI confirm cancel ==
:''<code>options.gui-confirm-cancel</code>''
Choose whether or not there is a confirmation screen when right clicking to cancel a quest. Cancelling by command does not prompt a confirmation screen.
```yaml
options:
  ...
  gui-confirm-cancel: true
```

== GUI hide quests if no permission ==
:''<code>options.gui-hide-quests-nopermission</code>''
Choose whether or not quests are hidden to the player if they do not have permission for the quest.
```yaml
options:
  ...
  gui-hide-quests-nopermission: false
```

== GUI hide categories if no permission ==
:''<code>options.gui-hide-categories-nopermission</code>''
Choose whether or not categories are hidden to the player if they do not have permission for the category.
```yaml
options:
  ...
  gui-hide-categories-nopermission: false
```

== GUI use PlaceholderAPI ==
:''<code>options.gui-use-placeholderapi</code>''
Choose whether or not the quest GUI is parsed with PlaceholderAPI. This is disabled by default for performance reasons.
```yaml
options:
  ...
  gui-use-placeholderapi: false
```

== GUI truncate requirements ==
:''<code>options.gui-truncate-requirements</code>''
Choose whether or not the displayed quest requirements for specific quests should be cut short. The plugin will show "Quest 1 +X more" as the requirement, rather than listing each quest "Quest 1, Quest 2, Quest 3, ..." to stop lores overflowing off the screen.
```yaml
options:
  ...
  gui-truncate-requirements: true
```

== GUI actions ==
:''<code>options.gui-actions</code>''
Set the click actions for the UI. For a list of click types, check the [https://hub.spigotmc.org/javadocs/spigot/org/bukkit/event/inventory/ClickType.html ClickType javadoc page].
```yaml
options:
  ...
  gui-actions:
    start-quest: "LEFT"
    track-quest: "MIDDLE"
    cancel-quest: "RIGHT"
```

== Quest autostart ==
:''<code>options.quest-autostart</code>''
Choose whether or not players need to start quests themselves. This will ignore the configured [[#Quest started limit|quest started limit]], and is different from the [[#Autostart|autostart]] option.
```yaml
options:
  ...
  quest-autostart: false
```

== Quest autotrack ==
:''<code>options.quest-autotrack</code>''
Choose whether or not players need to track quests themselves. This will automatically track quests when they are started, and will attempt to track the next available started quests when the player finishes a quest.
```yaml
options:
  ...
  quest-autotrack: true
```


== Verbose logging level ==
:''<code>options.verbose-logging-level</code>''
Choose how much quests will log to the console. This will filter the output based on the following options: 0 = errors only, 1 = warnings, 2 = info, 3 = debug
```yaml
options:
  ...
  verbose-logging-level: 2
```

== Quests use PlaceholderAPI ==
:''<code>options.quests-use-placeholderapi</code>''
Choose whether or not start strings, reward strings, reward commands and start commands are parsed with PlaceholderAPI. This is disabled by default for performance reasons.
```yaml
options:
  ...
  quests-use-placeholderapi: false
```

== Verify quest exists on load ==
:''<code>options.verify-quest-exists-on-load</code>''
Verify quests exist when a player's data is loaded - inconsistencies may arise when players progress on specific quests and those quests are later removed. Their progress is still retained in the quest progress file, which may lead to issues such as players reaching a quest started limit when the quests they had active no longer exist - having this option enabled prevents non-existent quests from loading as quest progress. 
```yaml
options:
  ...
  verify-quest-exists-on-load: true
```

== Performance tweaking ==
:''<code>options.performance-tweaking</code>''
Set some specific options within the internals of Quests. 

The <code>queue executor interval</code> relates to how frequently players are checked for completed quests. Not every player is checked at once for performance purposes, and players are only submitted to the queue upon completion of a task. The interval defines how frequently players are polled from the queue.

The <code>autosave interval</code> refers to how frequently all online players data is saved. Data is saved at autosave intervals to prevent data loss should the server crash.

These options are measured in ticks, 1 second = 20 ticks.
```yaml
options:
  ...
  performance-tweaking: 
    quest-queue-executor-interval: 1
    quest-autosave-interval: 12000
```

== Tab completion ==
:''<code>options.tab-completion</code>''
Choose whether or not commands can be tab completed. Quests will never offer tab completions which players cannot run, regardless of this setting. (In other words, players who are not admins will not see tab completions for <code>/quests admin</code> if they do not have the admin permission.)
```yaml
options:
  ...
  tab-completion:
    enabled: true
```

== Error checking ==
:''<code>options.error-checking</code>''
Configure how Quests handles errors in your configuration. By default, Quests will not allow quests to be loaded if they contain an [[Configuration problems#Types of problem|error]], since this could lead to undefined behaviour. The option <code>override-errors</code> will ignore this behaviour and forcibly allow the quest to be registered.
```yaml
options:
  ...
  error-checking:
    override-errors: false
```

== Placeholder cache time ==
:''<code>options.placeholder-cache-time</code>"
Set how long Quests will retain parsed PlaceholderAPI strings in the cache, in seconds. See [[PlaceholderAPI#Caching placeholders|PlaceholderAPI § Caching placeholders]] for more information.
```yaml
options:
  ...
  placeholder-cache-time: 10
```

== Global task configuration override ==
:''<code>options.global-task-configuration-override</code>''
Choose whether or not options set in the [[Global configurations#Global task configuration|global task configuration]] will override per-quest specific options. 
```yaml
options:
  ...
  global-task-configuration-override: false
```


== Global quest display configuration override ==
:''<code>options.global-quest-display-configuration-override</code>''
Choose whether or not the [[Global configurations#Global quest display configuration|global quest display configuration]] will override per-quest specific options. 
```yaml
options:
  ...
  global-quest-display-configuration-override: false
```

== Storage ==
:''<code>options.storage</code>''
Configure how Quests will store playerdata. See [[Storage providers|storage providers]] for more info.
```yaml
options:
  ...
  storage:
    provider: "yaml"
    synchronisation:
      delay-loading: 0
    database-settings:
      network:
        database: "minecraft"
        username: "root"
        password: ""
        address: "localhost:3306"
      connection-pool-settings:
        maximum-pool-size: 8
        minimum-idle: 8
        maximum-lifetime: 1800000
        connection-timeout: 5000
      table-prefix: "quests_"
```