SA:MP 0.3z в основном представляет собой обновление безопасности, стабильная версия которого будет выпущена в ближайшее время.
Также добавлено несколько новых возможностей:
Обновлена синхронизация пуль для огнестрельного оружия
Выстрелы игроков теперь рассчитываются с учётом пинга, поэтому вы можете стрелять прямо по скину вместо прицеливания по пингу.
Сервер может получить полную информацию о пулях. Теперь можно узнать, попала ли пуля по игроку, машине или объекту.
Добавлена новая функция OnPlayerWeaponShot, вызываемая сервером при каждом выстреле:PHP код:
#define BULLET_HIT_TYPE_NONE 0
#define BULLET_HIT_TYPE_PLAYER 1
#define BULLET_HIT_TYPE_VEHICLE 2
#define BULLET_HIT_TYPE_OBJECT 3
#define BULLET_HIT_PLAYER_OBJECT 4
Автовызываемые функции OnPlayerGiveDamage и OnPlayerTakeDamage теперь получают ID части тела, по которой произведено попадание.PHP код:
forward OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ);
Если в вашем скрипте используются эти функции, вам понадобится обновить их.
Обновления:
SA:MP 0.3z RC5-2
- Исправлено: Игрок с самым большим ID не отсылал информацию об обновлении незанятого транспорта.
SA:MP 0.3z RC5
- В браузере серверов исправлена ошибка выхода за пределы диапазона при добавлении сервера с неправильным портом.
- Добавлены некоторые внутренние оптимизации в клиенте, которые должны увеличить производительность.
- Исправлена проблема с недоступностью PVar'ов в OnPlayerDisconnect во время рестарта сервера.
- Добавлена функция GetServerTickRate(), возвращающая количество серверных тиков в секунду (наподобие FPS).
- Исправлена проблема с видимостью 3D-текстов и никаов игроков сквозь серверные объекты.
- Изменения в поведении и параметрах колбэка OnUnoccupiedVehicleUpdate:
В предыдущих версиях клиенты могли посылать данные об обновлении транспорта, который не был занят другими игроками, при этом у сервера не было возможности отменить эти обновления.
Теперь скрипт будет оповещаться о подобных обновлениях до того, как транспорт будет обновлён на сервере. GetVehiclePos будет возвращать текущие координаты вместо новых.
В новых параметрах будут передаваться координаты транспорта, сообщённые игроком. Теперь скрипт может вернуть 0, чтобы отменить обновление транспорта, и 1, чтобы позволить обновление.
Все скрипты, использующие колбэк OnUnoccupiedVehicleUpdate должны быть обновлены и перекомпилированы для работы в 0.3z.
PHP код:
forward OnUnoccupiedVehicleUpdate(vehicleid, playerid, passenger_seat, Float:new_x, Float:new_y, Float:new_z);
- В server.cfg добавлена опция 'lagcompmode'.
Опция 'shotcompmode' была заменена на 'lagcompmode', чтобы использоваться для настройки компенсации пинга в будущих версиях SA:MP.
Код:lagcompmode 0 ; выкл. компенсацию пинга
lagcompmode 1 ; (по умолчанию) вкл. компенсацию пинга
lagcompmode 2 ; вкл. компенсацию пинга только для обновления позиций.
- Теперь браузер серверов будет показывать режим 'lagcomp' в свойствах сервера.
- Если компенсация пинга выключена, будет действовать старый режим стрельбы по пингу (без вызовов OnPlayerWeaponShot и т.п.).
SA:MP 0.3z RC4
- Исправлена проблема с промахами при выстрелах на большом расстоянии.
- Проверки тега LoS теперь применяются и к серверным объектам.
- OnPlayerGiveDamage теперь вызывается и у NPC-ботов.
- Добавлена функция GetPlayerLastShotVectors для получения расширенной информации о выстрелах.
PHP код:
native GetPlayerLastShotVectors(playerid, &Float:fOriginX, &Float:fOriginY, &Float:fOriginZ, &Float:fHitPosX, &Float:fHitPosY, &Float:fHitPosZ);
- Добавлена настройка режима стрельбы (shotcompmode 2 в server.cfg), позволяющая использовать камеру для наведения и авто-прицеливание с помощью геймпада.
- Исправлено: По игрокам нельзя было попасть из оружия, когда они ехали на крыше машины.
- Добавлена расширенная информация о камере игрока, такая как соотношение сторон экрана и уровень увеличения (для снайперской винтовки).
PHP код:
native Float:GetPlayerCameraAspectRatio(playerid);
native Float:GetPlayerCameraZoom(playerid);
- Добавлены функции для получения расширенной информации о сетевом протоколе. Теперь в Pawn можно будет получить эту информацию без парсинга строки из GetPlayerNetworkStats
PHP код:
native NetStats_GetConnectedTime(playerid);
native NetStats_MessagesReceived(playerid);
native NetStats_BytesReceived(playerid);
native NetStats_MessagesSent(playerid);
native NetStats_BytesSent(playerid);
native NetStats_MessagesRecvPerSecond(playerid);
native Float:NetStats_PacketLossPercent(playerid);
native NetStats_ConnectionStatus(playerid);
native NetStats_GetIpPort(playerid, ip_port[], ip_port_len);
SA-MP 0.3z RC3
- Исправлено: Включение автоприцеливания при нажатии Q и E.
- Исправлено: Снаряды от снайперской винтовки не работали за пределами карты.
- Доп. данные на стороне сервера для обнаружения модифицированных данных о выстреле.
- Добавлена функция VectorSize.
SA-MP 0.3z RC2
- Удалена возможность автоприцеливания с помощью Joypad
- Добавлена константа BULLET_HIT_PLAYER_OBJECT (4)
- Исправлена проблема с эффектами дыма и отлетающих гильз от оружия.
Прочее
- В файл server.cfg добавлен параметр 'messageholelimit' для предотвращения DoS-атак.
- Мод rivershell обновлён до 2-й версии.
Скачать:
- Клиент: http://www.sa-mp.com/stuff/03zRC/sa-...C5-install.exe
- Сервер:
SA-MP 0.3z RC5 Windows Server
SA-MP 0.3z RC5 Linux Server
Оригинал: http://forum.sa-mp.com/showthread.php?p=2867375
Перевод: Daniel_Cortez, ^_^
Специально для Pro-Pawn.ruКопирование данной статьи на других ресурсах без разрешения авторов запрещено!
Посмотрим, как быстро статью скопируют на говно-инфо...