ScriptsLab
WikiDownloadsSourcesSupport
ScriptsLab
DocumentationDownloadsGitHubDiscord

© 2026 ScriptsLab

Back to root
M

INSTALL.md

Markdown · 203 lines · 6.5 KB

INSTALL.md
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
# Установка ScriptsLab

## Быстрая установка

1. **Остановите сервер**
   ```bash
   stop
   ```

2. **Замените JAR файл**
   - Удалите старый `plugins/ScriptsLab-1.0.0.jar` (если есть)
   - Скопируйте новый `target/ScriptsLab-1.0.0.jar` в папку `plugins/`

3. **Запустите сервер**
   ```bash
   start
   ```

## Проверка установки

После запуска сервера вы должны увидеть в логах:

```
[ScriptsLab] ╔═══════════════════════════════════════╗
[ScriptsLab] ║         ScriptsLab v1.0.0             ║
[ScriptsLab] ║   Your Minecraft Scripting Lab        ║
[ScriptsLab] ╚═══════════════════════════════════════╝
[ScriptsLab] ✓ Core services initialized
[ScriptsLab] ✓ Commands registered
[ScriptsLab] ╔═══════════════════════════════════════╗
[ScriptsLab] ║   ScriptsLab - Ready!                 ║
[ScriptsLab] ╚═══════════════════════════════════════╝
```

## Тестирование

### 1. Проверьте команды

В игре или консоли выполните:
```
/scriptslab info
```

Вы должны увидеть информацию о плагине.

### 2. Проверьте список модулей

```
/module list
```

### 3. Проверьте список скриптов

```
/script list
```

## Структура папок

После первого запуска ScriptsLab создаст следующую структуру:

```
plugins/
└── ScriptsLab/
    ├── config.yml          # Основная конфигурация
    ├── messages.yml        # Сообщения плагина
    ├── scripts/            # Ваши JavaScript скрипты
    │   └── examples/       # Примеры скриптов
    ├── modules/            # Модули плагина
    │   └── demo/           # Демо-модуль
    └── data/               # Хранилище данных
```

## Создание первого скрипта

1. Создайте файл `plugins/ScriptsLab/scripts/hello.js`:

```javascript
// Регистрируем команду
plugin.registerCommand('hello', function(sender, args) {
    sender.sendMessage('§aПривет, ' + sender.getName() + '!');
});

Console.log('Скрипт hello.js загружен!');
```

2. Перезагрузите скрипты:
```
/script reload
```

3. Используйте команду:
```
/hello
```

## Исправление ошибок

### Ошибка: "Console.log is not defined"

**Решение**: Обновите плагин до последней версии. В новой версии `Console.log()` работает корректно.

### Ошибка: "Script engine not initialized"

**Решение**: 
1. Проверьте, что используете Java 17+
2. Убедитесь, что в `config.yml` параметр `scripts.enabled: true`
3. Перезапустите сервер

### Предупреждение: "JVMCI is not enabled"

**Это нормально!** GraalVM работает в режиме интерпретатора. Для лучшей производительности можно:

1. Установить GraalVM JDK
2. Добавить флаг JVM: `-XX:+EnableJVMCI`

Но это не обязательно для работы плагина.

## Конфигурация

### config.yml

Основные настройки:

```yaml
scripts:
  enabled: true              # Включить скриптовый движок
  auto-reload: true          # Автоматическая перезагрузка при изменении
  timeout: 5000              # Таймаут выполнения скрипта (мс)
  max-memory: 128            # Максимальная память на скрипт (МБ)

modules:
  auto-load: true            # Автозагрузка модулей
  enabled-modules:           # Список включённых модулей
    - demo

storage:
  provider: yaml             # Провайдер хранилища (yaml/json/sqlite)
  cache-enabled: true        # Включить кэширование
```

## Обновление

Для обновления плагина:

1. Остановите сервер
2. Сделайте резервную копию папки `plugins/ScriptsLab/`
3. Замените JAR файл
4. Запустите сервер
5. Проверьте логи на наличие ошибок

## Удаление

Для полного удаления плагина:

1. Остановите сервер
2. Удалите `plugins/ScriptsLab-1.0.0.jar`
3. Удалите папку `plugins/ScriptsLab/` (если хотите удалить все данные)
4. Запустите сервер

## Поддержка

- **Документация**: [README.md](README.md)
- **Сборка**: [BUILD.md](BUILD.md)
- **Архитектура**: [ARCHITECTURE.md](ARCHITECTURE.md)

## Требования

- **Сервер**: Paper 1.20.4+ (или Purpur/Pufferfish)
- **Java**: 17 или выше
- **RAM**: Минимум 2GB рекомендуется
- **Диск**: ~50MB для плагина + зависимостей

## Совместимость

✅ **Совместимо с:**
- Paper 1.20.4+
- Purpur 1.20.4+
- Pufferfish 1.20.4+

❌ **Не совместимо с:**
- Spigot (используйте Paper)
- CraftBukkit (используйте Paper)
- Bukkit (используйте Paper)

## Производительность

ScriptsLab оптимизирован для производительности:

- Асинхронная загрузка скриптов
- Кэширование данных
- Ленивая загрузка модулей
- Потокобезопасные операции

**Типичное использование ресурсов:**
- Загрузка: ~3-5 секунд
- Память: ~100-200MB (зависит от количества скриптов)
- CPU: Минимальное влияние

---

**Готово! Теперь вы можете использовать ScriptsLab! 🚀**