- 1,789
- 2,133
В общем, продолжаем насиловать Simple Lua Multiplayer новым функционалом. Вдоволь отдохнув от разработки и избавившись от очередного приступа лени, я решил добавить синхронизацию объектов и несколько функций для игровых режимов, которые помогают работать с этими самыми объектами. Думаю, что большим разочарованием для многих станет то, что совместимости с редакторами карты для SA:MP нет, но есть и хорошие новости: один из моих старых скриптов, который называется Object Editor v2, хоть и напрямую не поддерживает маппинг для SL:MP и его функции, но в общем и целом совместим, если слегка изменить экспортированный вариант. Основная проблема заключается в том, что координата Z для объектов в SL:MP и в SA:MP рассчитывается из разных точек.
Это ещё не финальный вариант, возможно совместимость будет - точной информации пока не имею.
Ограничения на количество объектов в самом мультиплеере нет, всё опять же упирается в лимиты игры, но установка Limit Adjuster решает этот вопрос. По умолчанию сервер передает значение типа uint32_t в качестве идентификатора объекта, так что фактический максимум - 4294967294 объектов. Помните, что память игры не бесконечная, попытка создать или хотя бы инициализировать таблицу такого размера приводит к прекращению работы мультиплеера.
Это ещё не финальный вариант, возможно совместимость будет - точной информации пока не имею.
Все объекты по умолчанию динамичные, то есть подгружаются, когда игрок находится в непосредственной близи с ними. Возможно загружать объекты только для определенного мира или интерьера, также можно устанавливать дальность прорисовки. Статичных объектов как в SA:MP добавлено не будет.Ограничения на количество объектов в самом мультиплеере нет, всё опять же упирается в лимиты игры, но установка Limit Adjuster решает этот вопрос. По умолчанию сервер передает значение типа uint32_t в качестве идентификатора объекта, так что фактический максимум - 4294967294 объектов. Помните, что память игры не бесконечная, попытка создать или хотя бы инициализировать таблицу такого размера приводит к прекращению работы мультиплеера.