Я читав це: Як створити систему повторної передачі, але вона насправді не відповідає на моє запитання.
Моя гра побудована з клієнтським «поданням» на гру як окрема програма від серверів «модель» та «контролер». (трохи схожа на mmo, або будь-яку багатокористувацьку гру, побудовану таким чином). Сторона сервера - це завжди "правда" гри, вона приймає лише запити про дії як вхід від клієнтів та вихідні події та повідомлення "поточного стану".
Модель і правила гри повністю детерміновані з фіксованим циклом оновлення "галочка", тому на стороні сервера я можу записувати як події, надіслані переглядачам клієнта, так і запити на дії. Обидва пов'язані з певним номером циклу.
Питання полягає в тому, що в цьому випадку для налаштування системи повторення я повинен використовувати введення або запити на дії користувачів (як там запропоновано) або події?
Мені здається, що обидва давали б абсолютно однаковий результат. Єдині відмінності, які я бачу, це:
- Події дають реальний вихід, тоді як запити на дії повинні бути оброблені, щоб дати подіям.
- У запитах на дії може бути набагато менше даних для запису.
Чи варто враховувати інші речі?