November 4, 20178 yr SA-MP 0.3.8RC В версии SA-MP 0.3.8 будет предоставлена возможность использования кастомных моделей на стороне сервера. В настоящее время уже поддерживаются кастомные объекты и скины игроков, а в будущем планируются и другие. Т.к. эта функция вносит крупные изменения, некоторым серверам ещё рано переходить на 0.3.8 RC, а пока RC версия находится в тестировании, владельцы серверов получат достаточное количество времени для планирования изменений. Эти новые функции потребуют некоторого времени для формализации, поэтому будьте терпеливы. И хотя уже есть несколько новых функций безопасности, связанных с кастомными моделями, но они ещё не включены в состав текущей сборки. Используйте RC версию только с людьми, которым вы доверяете, поскольку в кастомных моделях GTA:SA могут находиться неизвестные уязвимости. Обновления: SA-MP 0.3.8 RC4-4 клиентское обновление - Удалено сообщение «Server timer wrapped», которое отображалось ошибочно. После некоторого тестирования я обнаружил, что в игре не было никаких негативных последствий от таймера. SA-MP 0.3.8 RC4-3 клиентское обновление - Теперь актёры не будут поднимать руки вверх, когда в них целятся. - Увеличен лимит игрового таймера, чтобы исправить ошибки интерполяции камеры, хотя это увеличит риск обхода таймера. - Вы должны использовать загруженные txds как спрайты с тегом "mdl-ID:texturename". где "-ID" - это модель, добавленная с помощью функции AddSimpleModel. - Система textdraw, скорее всего, будет обновлена в будущих RC, с функциями подобными MaterialText, поэтому я бы не рекомендовал использовать загруженные текстуры для текстовых сообщений. - Максимальное количество слотов для спрайтов (sprite) увеличено со 100 до 200. - Добавлены дополнительные проверки txd. Клиент не будет принимать текстуры с шириной или высотой больше 2048 пикселей. - Выход из автомобиля, находящегося на созданных сервером объектах, теперь должен работать правильно. SA-MP 0.3.8 RC4-2 клиентское обновление - Теперь при загрузке "2D эффектов" из скаченных кастомных моделей, клиент будет загружать только огни и эскалаторы. Все частицы уже доступны в SA-MP как отдельные объекты. SA-MP 0.3.8 RC4-1 клиент/серверное обновление - Теперь клиент будет отображать HTTP ошибку вместо "bad checksum" при попытке загрузки кастомных моделей с "битых" URL адресов. - Исправлена серверная ошибка: если функция RedirectDownload() вызывалась с "return 1" в коллбеке OnPlayerRequestDownload, то клиент не мог определить какой из способов загрузки кастомных моделей необходимо использовать. - Если функция SetSpawnInfo используется с кастомным скином, то он не будет сбрасываться на скин с ID 0. SA-MP 0.3.8 RC4 клиент/серверное обновление - Добавлена поддержка URL ссылок для загрузки моделей и текстур. Это означает, что вы можете размещать свои модели и текстуры на веб-сервере вместо игрового сервера SA-MP. Загрузка по URL-адресу осуществляется с помощью библиотеки libcurl версии 7.57.0, скомпилированной с поддержкой http, https, и zlib (gzip). - Если вам для загрузки по HTTP требуется прокси-сервер, то его адрес можно ввести в диалоговом окне Tools -> Settings в клиенте SA-MP. - Добавлены различные функции pawn для загрузки с редиректом. Боле подробно можно посмотреть в файле dl_redirect.pwn. - Добавлена функция GetPlayerCustomSkin(). Когда SetPlayerSkin используется для установки кастомного скина для игрока, функция GetPlayerSkin по-прежнему возвращает базовый скин, а не кастомный. Поэтому вместо неё вы должны использовать GetPlayerCustomSkin, которая вернёт идентификатор кастомного скина. Клиент и сервер SA-MP предполагают, что загрузка кастомных моделей может окончиться неудачей или, что модели могут не догрузиться, в этом случае базовый скин, используемый в AddCharModel(), по-прежнему останется основным. forward OnPlayerRequestDownload(playerid, type, crc); // вызывается когда игрок запрашивает загрузку native FindModelFileNameFromCRC(crc, retstr[], retstr_size); native FindTextureFileNameFromCRC(crc, retstr[], retstr_size); native RedirectDownload(playerid, url[]); native GetPlayerCustomSkin(playerid); SA-MP 0.3.8 RC3-4 клиентское обновление - Пункт "FreeTXDs" из статистики, с открываемого по кнопке F5 экрана, удалён т.к. приводил к крашам некоторых игроков. SA-MP 0.3.8 RC3-3 клиентское обновление - Добавлены дополнительные проверки для dff/txd. SA-MP 0.3.8 RC3-2 клиентское обновление - Выгрузка кастомных моделей, добавленная в RC3, вызывает краши у некоторых людей и по этой причине был отключен. SA-MP 0.3.8 RC3-1 клиентское обновление - Считыватель dff не мог прочитать расширение некоторых скинов. SA-MP 0.3.8 RC3 клиент/серверное обновление - Добавлен первый уровень проверок безопасности для загружаемых моделей/текстур. Дополнительные функции проверки безопасности будут добавляться в процессе выхода последующих бета версий 0.3.8 RC. Пока вы должны заходить только на те серверы, владельцам которых доверяете. - Теперь вы можете изменить расположение папки кэша моделей с помощью меню «Сервис» -> «Настройки» в клиенте SA-MP. - Объекты, созданные на загруженных кастомных моделях, теперь освобождаются из памяти после их удаления. - Добавлено сжатие данных при загрузке файлов с сервера. Примечание: загрузка тысяч небольших по весу файлов всё ещё будет медленной. SA-MP 0.3.8 RC2 клиент/серверное обновление - Максимальное количество объектов (MAX_OBJECTS) увеличено до 2000. - Исправлена ошибка отрисовки прицела снайперской винтовки. - В RC1 функция SelectObject выдавала ошибку и крашилась, если информация была недоступна. - Исправлена ошибка краша, связанная с моделями для скинов, которая была в 0.3.8 RC1. - Добавлен «лакальный» концепт кеша, чтобы не загружать большое количество моделей в игру. Эта функция ещё не доделана. Подробная информация об этом будет позже. - В RC1 потоковая передача могла быть сломана, если вы пытались телепортироваться из виртуального мира в тот же самый виртуальный мир. - Добавлена возможность установки времени, в диапазоне которого будут отображаться объекты кастомных моделей. - Теперь функции AddCharModel/AddSimpleModel можно вызывать из pawn. В настоящее время нет ограничений на возможность вызова этих функций, но имейте в виду, что если вы не вызываете их внутри OnFilterScriptInit/OnGameModeInit, вы рискуете, что некоторые игроки, которые уже находятся на сервере, возможно, не загрузили модели. native AddCharModel(baseid, newid, dffname[], txdname[]); native AddSimpleModel(virtualworld, baseid, newid, dffname[], txdname[]); native AddSimpleModelTimed(virtualworld, baseid, newid, dffname[], txdname[], timeon, timeoff); Как работают кастомные модели в SA-MP Кастомные модели хранятся на сервере SA-MP, обычно в папке «models». Когда игрок подключается к серверу, клиент получает с сервера весь список кастомных моделей, используемых на нём. Клиент игроков будет загружать модели по мере необходимости, а не все сразу при подключении, и сохранять их кеш в папке «cache». Каждый сервер, к которому подключается игрок, будет иметь отдельное хранилище под кеши моделей. Этот локальный кеш хранится в папке по пути: Documents\GTA San Andreas User Files\SAMP\cache + IP.Port сервера. Загрузка кастомных скинов начинается сразу при подключении к серверу, так как игра не может быть приостановлена для загрузки скинов. Для объектов, прикрепляющихся к игроку, таких как аксессуары, загрузка так же начинается при коннекте к серверу. Объекты, расположенные на карте, будут загружаться в зависимости от того в каком виртуальном мире находится игрок. Это отзначает, что могут существовать виртуальные миры, объекты которых не нужно загружать игроку, пока он не войдёт в них. Формат модели Формат скинов такойже как и у стандартных скинов игры. Для моделей объектов требуются коллизии связанные с dff и эти коллизии можно добавить к модели с помощью утилиты kdff tool. Основные инструменты моделирования для GTA:SA написаны для 3dsmax, однако, для программы Blender есть и другие инструменты. Здесь я написал короткий учебник по экспорту из Blender. Определение кастомных моделей в файле artwork.cfg Кастомные модели в настоящее время описываются в серверном файле artwork.cfg. Строка AddCharModel используется для добавления новой модели скина, а AddSimpleModel используется для определения кастомного объекта, включая как объекты игрового мира, так и объекты, которые будут прикрепляться к игрокам в виде аксессуаров. Скины игроков используют диапазон идентификаторов от 20000 до 30000 (всего 10000 слотов) Объекты используют стандартные идентификаторы от -1000 до -30000 (всего 29000 слотов) Другие исправления функционала версии 0.3.7 - Контур радара теперь должен правильно масштабироваться на мониторах с широкоформатным (16:9) разрешением. - Ошибка с функцией PlayerPlaySound и звуком ID 0 должна быть исправлена. - Актёры теперь могут снова поворачиваться. Загрузки: Клиент 0.3.8 RC4 SA-MP 0.3.8 RC4-4 Client Installer SA-MP 0.3.8 RC4-3 Client Installer SA-MP 0.3.8 RC4-2 Client Installer SA-MP 0.3.8 RC4-1 Client Installer SA-MP 0.3.8 RC4 Client Installer Сервер 0.3.8 RC4 SA-MP 0.3.8 RC4-1 Windows Server SA-MP 0.3.8 RC4 Windows Server SA-MP 0.3.8 RC4-1 Linux Server SA-MP 0.3.8 RC4 Linux Server Клиент 0.3.8 RC3 SA-MP 0.3.8 RC3-4 Client Installer SA-MP 0.3.8 RC3-3 Client Installer SA-MP 0.3.8 RC3-2 Client Installer SA-MP 0.3.8 RC3-1 Client Installer Сервер 0.3.8 RC3 SA-MP 0.3.8 RC3 Windows Server SA-MP 0.3.8 RC3 Linux Server Клиент 0.3.8 RC2 SA-MP 0.3.8 RC2 Client Installer Сервер 0.3.8 RC2 SA-MP 0.3.8 RC2 Windows Server Клиент 0.3.8 RC1 SA-MP 0.3.8 RC1 Client Installer Сервер 0.3.8 RC1 SA-MP 0.3.8 RC1 Windows Server
November 4, 20178 yr Author Добавлю от себя. Т.к. разработчики заявили о добавлении и других видов моделей, а модели для скинов и объектов уже сделаны, можно сделать вывод, что речь идёт о добавлении возможности создавать кастомные модели автомобилей. Ждём. А пока, вот несколько скриншотов, которые уже начали появляться. На них видны новые скины, а так же видно, что на широкоформатном мониторе, мини-карта (радар) больше не растягивается по горизонтали, а выглядит в виде круга. Скрины: Скрытый текст
November 4, 20178 yr Author Видео с демонстрацией использования кастомных скинов https://youtu.be/0x8-vZqzOXA
November 16, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC2 - Максимальное количество объектов (MAX_OBJECTS) увеличено до 2000. - Исправлена ошибка отрисовки прицела снайперской винтовки. - В RC1 функция SelectObject выдавала ошибку и крашилась, если информация была недоступна. - Исправлена ошибка краша, связанная с моделями для скинов, которая была в 0.3.8 RC1. - Добавлен «лакальный» концепт кеша, чтобы не загружать большое количество моделей в игру. Эта функция ещё не доделана. Подробная информация об этом будет позже. - В RC1 потоковая передача могла быть сломана, если вы пытались телепортироваться из виртуального мира в тот же самый виртуальный мир. - Добавлена возможность установки времени, в диапазоне которого будут отображаться объекты кастомных моделей. - Теперь функции AddCharModel/AddSimpleModel можно вызывать из pawn. В настоящее время нет ограничений на возможность вызова этих функций, но имейте в виду, что если вы не вызываете их внутри OnFilterScriptInit/OnGameModeInit, вы рискуете, что некоторые игроки, которые уже находятся на сервере, возможно, не загрузили модели. native AddCharModel(baseid, newid, dffname[], txdname[]); native AddSimpleModel(virtualworld, baseid, newid, dffname[], txdname[]); native AddSimpleModelTimed(virtualworld, baseid, newid, dffname[], txdname[], timeon, timeoff);
November 24, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC3 - Добавлен первый уровень проверок безопасности для загружаемых моделей/текстур. Дополнительные функции проверки безопасности будут добавляться в процессе выхода последующих бета версий 0.3.8 RC. Пока вы должны заходить только на те серверы, владельцам которых доверяете. - Теперь вы можете изменить расположение папки кэша моделей с помощью меню «Сервис» -> «Настройки» в клиенте SA-MP. - Объекты, созданные на загруженных кастомных моделях, теперь освобождаются из памяти после их удаления. - Добавлено сжатие данных при загрузке файлов с сервера. Примечание: загрузка тысяч небольших по весу файлов всё ещё будет медленной.
November 25, 20178 yr Author Вышли обновления бета-версий SA-MP 0.3.8 RC3-1 и 0.3.8 RC3-2 SA-MP 0.3.8 RC3-2 клиентское обновление - Выгрузка кастомных моделей, добавленная в RC3, вызывает краши у некоторых людей и по этой причине был отключен. SA-MP 0.3.8 RC3-1 клиентское обновление - Считыватель dff не мог прочитать расширение некоторых скинов.
November 26, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC3-3 - Добавлены дополнительные проверки для dff/txd.
November 29, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC3-4 - Пункт "FreeTXDs" из статистики, с открываемого по кнопке F5 экрана, удалён т.к. приводил к крашам некоторых игроков.
December 3, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC4 - Добавлена поддержка URL ссылок для загрузки моделей и текстур. Это означает, что вы можете размещать свои модели и текстуры на веб-сервере вместо игрового сервера SA-MP. Загрузка по URL-адресу осуществляется с помощью библиотеки libcurl версии 7.57.0, скомпилированной с поддержкой http, https, и zlib (gzip). - Если вам для загрузки по HTTP требуется прокси-сервер, то его адрес можно ввести в диалоговом окне Tools -> Settings в клиенте SA-MP. - Добавлены различные функции pawn для загрузки с редиректом. Боле подробно можно посмотреть в файле dl_redirect.pwn. - Добавлена функция GetPlayerCustomSkin(). Когда SetPlayerSkin используется для установки кастомного скина для игрока, функция GetPlayerSkin по-прежнему возвращает базовый скин, а не кастомный. Поэтому вместо неё вы должны использовать GetPlayerCustomSkin, которая вернёт идентификатор кастомного скина. Клиент и сервер SA-MP предполагают, что загрузка кастомных моделей может окончиться неудачей или, что модели могут не догрузиться, в этом случае базовый скин, используемый в AddCharModel(), по-прежнему останется основным. forward OnPlayerRequestDownload(playerid, type, crc); // вызывается когда игрок запрашивает загрузку native FindModelFileNameFromCRC(crc, retstr[], retstr_size); native FindTextureFileNameFromCRC(crc, retstr[], retstr_size); native RedirectDownload(playerid, url[]); native GetPlayerCustomSkin(playerid);
December 4, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC4-1 - Теперь клиент будет отображать HTTP ошибку вместо "bad checksum" при попытке загрузки кастомных моделей с "битых" URL адресов. - Исправлена серверная ошибка: если функция RedirectDownload() вызывалась с "return 1" в коллбеке OnPlayerRequestDownload, то клиент не мог определить какой из способов загрузки кастомных моделей необходимо использовать. - Если функция SetSpawnInfo используется с кастомным скином, то он не будет сбрасываться на скин с ID 0.
December 11, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC4-2 - Теперь при загрузке "2D эффектов" из скаченных кастомных моделей, клиент будет загружать только огни и эскалаторы. Все частицы уже доступны в SA-MP как отдельные объекты.
December 12, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC4-3 - Теперь актёры не будут поднимать руки вверх, когда в них целятся. - Увеличен лимит игрового таймера, чтобы исправить ошибки интерполяции камеры, хотя это увеличит риск обхода таймера. - Вы должны использовать загруженные txds как спрайты с тегом "mdl-ID:texturename". где "-ID" - это модель, добавленная с помощью функции AddSimpleModel. - Система textdraw, скорее всего, будет обновлена в будущих RC, с функциями подобными MaterialText, поэтому я бы не рекомендовал использовать загруженные текстуры для текстовых сообщений. - Максимальное количество слотов для спрайтов (sprite) увеличено со 100 до 200. - Добавлены дополнительные проверки txd. Клиент не будет принимать текстуры с шириной или высотой больше 2048 пикселей. - Выход из автомобиля, находящегося на созданных сервером объектах, теперь должен работать правильно.
December 13, 20178 yr Author Вышло обновление бета-версии SA-MP 0.3.8 RC4-4 - Удалено сообщение «Server timer wrapped», которое отображалось ошибочно. После некоторого тестирования я обнаружил, что в игре не было никаких негативных последствий от таймера.
January 13, 20188 yr Author Релиз SA-MP 0.3.8 отменен и не будет выпущен в качестве основного обновления SA-MP. Отсутствует интерес к функции загрузки кастомных моделей у большинства существующих серверов SA-MP. Поскольку некоторые серверы по-прежнему хотят, чтобы функция загрузки кастомных моделей теперь была доступна, 0.3.8 будет переиздан как отдельная версия SA-MP под названием 0.3.7-DL, в которой загрузка моделей будет опциональной, а также будет иметь свои собственные списки серверов. Части существующего кода 0.3.8, которые не связаны с загрузкой моделей, будут перенесены в 0.3.7 последующими обновлениями. В конечном итоге функция загрузки кастомных моделей всё же будет частью основной версии SA-MP, но версия 0.3.8 будет пропущена.
Create an account or sign in to comment