You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
### Performance & Optimization
* Parallelized the plugin startup and shutdown process, significantly reducing loading times.
* Optimized the logging system to be more flexible and reduce impact on startup speed.
* Introduced a dedicated server dispatcher to ensure background tasks interact safely with the main server thread.
### Configuration & Management
* Centralized all plugin settings into a new configuration system for easier management.
* Added a new configuration option to toggle automatic update checks.
* Simplified the "wipe" command by removing unnecessary confirmation steps for faster administration.
### Diagnostics & Stability
* Added a new "probes" command to help administrators detect and manage memory leaks caused by script hot-reloading.
* Implemented an automated background checker to monitor and report potential performance leaks.
* Improved the accuracy of startup and shutdown duration logging for better performance tracking.
### Documentation
* Updated the README and example code to provide clearer instructions on configuration and resource management.
Copy file name to clipboardExpand all lines: README.md
+3-4Lines changed: 3 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -170,7 +170,7 @@ Backbone provides a simple and powerful way to manage your plugin's data and con
170
170
171
171
#### Resource Pools
172
172
173
-
A `ResourcePool` is a namespaced container for your resources. It's recommended to create a separate pool for each script or feature set to avoid conflicts.
173
+
A `ResourcePool` is a namespaced container for your resources. It's recommended to create a separate pool for each part of your server set to avoid conflicts.
174
174
175
175
```kotlin
176
176
// Create a resource pool for your script's storage
@@ -186,18 +186,17 @@ This will create directories at `storage/mystorage/` and `config/myconfig/` in y
186
186
187
187
You can manage typed configuration files. Backbone handles the serialization and deserialization of your data classes automatically.
188
188
189
-
First, define a serializable data class for your configuration:
189
+
First, define a data class for your configuration:
190
190
191
191
```kotlin
192
-
@Serializable // Requires the kotlinx.serialization plugin
193
192
data classMyConfig(valsettingA:String = "default", valsettingB:Int = 10)
194
193
```
195
194
196
195
Then, use the `config()` function on your resource pool to get a handler for it:
197
196
198
197
```kotlin
199
198
// Get a handler for a config file named 'settings.yml'
200
-
val configHandler = myScriptConfig.config<MyConfig>("settings.yml")
199
+
val configHandler = myScriptConfig.config<MyConfig>("settings.yml", MyConfig())
0 commit comments