Делаю небольшую квестовую составляющую для сетевой игры, но так чтобы задания были персонально у каждого игрока независимо от других. (То есть задачи одинаковые, но создаются у игроков, а не на сервере).
Использовал бисовскую Task Framework и выявилась проблема. Создать в ней локальную задачу для игрока можно, но когда задачу завершаешь функцией: [taskName, taskState, showHint] call BIS_fnc_taskSetState, то (так как и аргументы и эффекты у этих функций глобальны) задачи завершаются,(но не удаляются) и у других игроков. Перезаход - помогает восстановить статус, но это потому что у меня там проверка на состояние квестов и воссоздание задачь по новой. Причем удаление задачи можно сделать у каждого игрока персонально, в функции: [taskID, owner] call BIS_fnc_deleteTask такой параметр есть.
Есть идеи, как избежать транслирования результатов другим игрокам?
Пока пришлось перейти на старенький "createSimpleTask" так как там все по умолчанию создается локально. Один недостаток - много писанины приходится делать)).