Skip to content

Список серверів ​

Плагін serverlist з @opys/minecraft.

Заповнює наперед список серверів для багатокористувацької гри.

js
serverlist({
  servers: [
    { name: 'My SMP', ip: 'mc.example.com' },
    { name: 'Creative', ip: 'creative.example.com:25566' },
  ],
});

Гравці бачать ваші сервери, коли вперше відкривають багатокористувацьку гру.

Параметри ​

ПараметрЩо робить
serversЗаписи в тому порядку, в якому гра їх перелічує.
toКуди лягає файл. За замовчуванням ${game_directory}/servers.dat.

Кожен запис це { name, ip }. Він також може мати rules.

Що він додає ​

ВидЩо
Файлиservers.dat.
ЗапускНічого.
ЗмінніНічого.
СередовищеНічого.

Про кожен нижче: що це і як він опиняється у маніфесті.

Файли · servers.dat ​

Файл, у якому гра тримає свій список серверів. Він генерується під час збирання і подорожує в бандлі як блоб. Нічого не завантажується.

js
// opys.config.mjs
export default defineConfig({
  plugins: [
    minecraft({ version: '1.21.1' }),
    java({ version: '21' }),
    serverlist({
      servers: [
        { name: 'My SMP', ip: 'mc.example.com' },
        { name: 'Friends', ip: 'friends.example.com:25566' },
      ],
    }),
  ],
  manifest: {
    command: '@minecraft.command',
    args: ['@minecraft.jvmArgs', '@minecraft.mainClass', '@minecraft.gameArgs'],
    workdir: '${game_directory}',
  },
});
jsonc
// у маніфесті
{
  "path": "${game_directory}/servers.dat",
  "source": { "blob": "f5b3f218f52d0ab5593094a9281e8905276a3e7aa405d5b78ea410a089e21b3b" },
  "size": 105
}

Чому згенерований файл: гра не має налаштування «сервери за замовчуванням». Вона лише читає цей файл.

Жодних фрагментів запуску і жодних змінних.

Варто знати ​

  • Він перезаписує. Файл це частина збірки, тому його кладуть назад при кожному встановленні. Сервери, які гравець додає в грі, губляться при наступному оновленні.
  • Порожній список усе одно пише файл, який очищає список гравця.
  • Давайте кожному запису ті самі rules або жодних. Записи з різними правилами стають окремими файлами за тим самим шляхом, і виживає лише один.