KWET

Збір даних

Коли які дані надсилати

KWET обчислює все з того, що йому надсилають. Знімок у слушний момент дає повний тиждень; той самий знімок на два дні раніше лишає дірку, яку вже ніщо не заповнить. Ось, вид за видом, момент, що має значення, і чому.

KWET — це інструмент статистики: він не під'єднується до гри й нічого з неї не витягує. Він читає лише документи, які надсилає твій альянс. Який інструмент надсилання обрати й чи дотримується він умов користування грою — вирішує сам альянс.

Завантаж lwvs — інструмент надсилання

lwvs — безкоштовна програма для Windows (інтерфейс англійською, французькою або німецькою), створена для KWET. Її встановлює один R4, який грає в Last War на ПК; більше нікому в альянсі нічого встановлювати не треба.

Завантажити lwvs 0.6.0 для Windows

Ця кнопка завжди дає останню версію. Це ZIP: розпакуй усю теку, lwvs.exe всередині. Що нового і старі версії

Як це працює, коротко

lwvs слухає через Wireshark те, що гра отримує на твоєму ПК. Коли ти відкриваєш у грі екран рейтингу, гра завантажує цей рейтинг — і lwvs читає його в ту ж мить. Він нічого не надсилає грі, нічого в ній не змінює й ніколи не торкається твого акаунта. Desert Storm, Canyon Storm і потяги читаються з листів із результатами, які гра зберігає на твоєму ПК, без Wireshark. Ніщо не покидає твій ПК, доки ти не натиснеш «Send to the site».

Встановлення крок за кроком

  1. Встанови Wireshark (wireshark.org, безкоштовно). Під час встановлення залиш Npcap позначеним і НЕ познач «Restrict Npcap driver's access to Administrators only».
  2. Розпакуй теку lwvs туди, де можеш записувати (Документи, не Program Files), і двічі клацни lwvs.exe. Якщо Windows пише «Windows захистила ваш ПК», натисни «Докладніше», потім «Усе одно запустити»: програма просто не підписана.
  3. У lwvs «Settings» → «Stats site»: встав адресу свого сайту (https://<alliance>.kwet.eu) і токен з Інструменти R4 → Інгест, потім «Test the connection».
  4. Запусти Last War, потім у lwvs «Start capture». Відкрий у грі потрібні екрани (уже відкритий екран треба закрити й відкрити знову), потім «Stop» і «Send to the site».

Усе, що lwvs може надіслати

  • VS (Дуель альянсів)

    Екран: рейтинг Дуелі альянсів.

    Очки кожного учасника за кожен день дуелі й підсумок тижня.

  • Вбивства

    Екран: рейтинг учасників альянсу.

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

  • Донати

    Екран: рейтинг учасників альянсу (той самий знімок, що й для вбивств).

    Очки донатів за день і за тиждень для кожного учасника.

  • Ранги R1–R5

    Екран: рейтинг учасників альянсу (той самий знімок, що й для вбивств).

    Ранг кожного учасника. Це ж оновлює склад: хто прийшов, хто пішов, хто став R4.

  • Загальна сила героїв (THP)

    Екран: рейтинг сервера, вкладка сили героїв.

    THP кожного гравця. Він береться з рейтингу всього сервера, тому там лише топ-200.

  • Сезонні події (Spice Wars…)

    Екран: особистий рейтинг події.

    Очки події кожного учасника. Ти вказуєш lwvs, яка це подія.

  • Desert Storm і Canyon Storm

    Джерело: листи з результатами, прочитані на ПК (без знімка).

    Один результат на битву й команду: очки кожного гравця.

  • Записи на Storm

    Екран: список записаних команди A або B.

    Хто записаний у кожну команду, основний чи запасний.

  • Потяги альянсу

    Джерело: листи про потяги, прочитані на ПК (без знімка).

    Для кожного потяга: машиніст і VIP або Guardian, і чи потяг куплений.

Чого lwvs ніколи не надсилає: паролі, чат, особисті повідомлення, ресурси, твою базу. Кожен рядок містить лише ігровий ідентифікатор гравця, його нік і число з екрана. Окрім THP, зберігається лише твій альянс.

Графік тижня

  • VS: дні дуелі

    Двічі: у суботу, потім у неділю. Частіше, якщо хочеш.

    Знімок у суботу містить повні дні з понеділка по п'ятницю і вже зіграну частину суботи. Недільний знімок доповнює суботу: гра її вже не показує, але вона лишається в отриманих даних. Тиждень повний лише з обома. Надсилання між ними тримають сайт актуальним; нічого не рахується двічі.

  • Вбивства

    Щонайменше раз у неділю.

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

  • Пожертви

    У неділю, якомога пізніше перед скиданням (опівночі за часом сервера, UTC−2).

    Лічильник пожертв щопонеділка починається з нуля. Зараховується останній знімок тижня, а все, що пожертвувано після нього, для сайту втрачено.

  • Загальна сила героїв (THP)

    Щонайменше раз на тиждень, у будь-який день — не пізніше неділі.

    THP — це показник у певний момент, а не лічильник. Одного показника на тиждень досить для рівних графіків і приросту за 30 днів. Він береться з рейтингу всього сервера, де є лише перші 200.

  • Canyon Storm: результати

    Коли завгодно, аби після матчу.

    Під час матчу нічого особливого робити не треба: запусти надсилання, коли надійде результат. Рекомендований сторонній інструмент читає листи гри в застосунку для Windows, тож не видаляй ці листи.

  • Desert Storm: результати

    Коли завгодно, аби після матчу.

    Під час матчу нічого особливого робити не треба: запусти надсилання, коли надійде результат. Рекомендований сторонній інструмент читає листи гри в застосунку для Windows, тож не видаляй ці листи.

  • Desert Storm і Canyon Storm: записані

    Між закриттям запису й початком матчів (необов'язково).

    Саме тоді список записаних остаточний. З ним сайт порівнює записаних із тими, хто справді зіграв. Без нього результати однаково надходять; бракує лише цього порівняння.

  • Потяги альянсу

    Коли завгодно.

    Кожен лист про потяг каже, хто вів і хто супроводжував. Листи лишаються в поштовій скриньці гри, тож чекати не шкодить: сайт звіряє їх із розкладом, щойно вони надходять.

  • Сезонні табірні події

    Під час події, у день результатів.

    Ці події бувають лише під час сезону (близько 4 тижнів кожні 4 місяці). Поза подією надсилати нічого, і нічого не бракує.

На сайті твого альянсу R4 Tools → Збір даних показує, що надійшло цього й минулого тижня і чи вчасно.

lwvs не обов'язковий

Сторонній інструмент, який ми радимо, lwvs, — лише один зі способів надсилати дані. KWET приймає будь-який інструмент, що дотримується того самого контракту: він дивиться не на те, хто надсилає, а на те, що надіслано. Сайт використовує саме ті дані, які описує цей контракт, і нічого більше.

Кожен рейтинг — це один документ JSON, надісланий через POST на https://<alliance>.kwet.eu/api/rankings з токеном альянсу (R4 Tools → Інгест) у заголовку Authorization: Bearer.

POST https://<alliance>.kwet.eu/api/rankings
Authorization: Bearer <token>
Content-Type: application/json

{
  "mode": "kill_rank",
  "exported_at": "2026-10-18T21:40:00Z",
  "records": [
    {"uid": "123456789", "player_name": "Alpha", "score": 1520340, "rank": 1},
    {"uid": "987654321", "player_name": "Bravo", "score": 0, "rank": 2}
  ]
}
  • uid — ідентифікатор гравця в грі та єдиний ключ: ніки змінюються, player_name — лише підпис.
  • Рахунок 0 означає «виміряно, нічого не набрав». Гравець, якого немає в документі, означає «не виміряно». Не вигадуй нулів.
  • exported_at — час знімка в ISO 8601 (бажано UTC), а не час надсилання: саме він відносить документ до потрібного дня й тижня.
  • Необов'язковий блок context додає те, чого не каже сам рейтинг: день дуелі (day), суперника, подію. Якщо він невідомий, пропусти його замість порожніх значень.
  • Повторне надсилання точно того самого документа нічого не робить: його впізнають за відбитком і пропускають. Тож надсилання можна сміливо повторювати.
  • Режим, якого KWET не знає, зберігається як є й ніколи не відхиляється: його використають, щойно сайт навчиться його читати.

Режими, які розпізнаються зараз:

  • kill_rank
  • weekly_rank
  • daily_rank
  • camp_battle_rank
  • donation_weekly_rank
  • donation_daily_rank
  • thp_rank
  • alliance_role
  • desert_storm_rank
  • canyon_storm_rank
  • alliance_train

По детальний контракт (поля кожного режиму, блок context) пиши LittleSanto в Discord.

Створити мій альянс Посібник