Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.

Реклама


**Как получить V.I.P** (Перейти)
Чтобы заказать рекламу на Pro-Pawn.Ru, обращайтесь в Skype.
Баннерная реклама 200руб/мес, Текстовая 100руб/мес.
Показано с 1 по 7 из 7

Тема: SA:MP 0.3z R2

  1. #1
    Аватар для Daniel_Cortez
    new fuck_logic[0] = EOS;

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    1,662
    Репутация:
    2145 ±

    SA:MP 0.3z R2


    Итак, спустя год после предыдущей версии, вышла новая версия SA:MP, 0.3z.

    Что нового:
    • R1:
      • Опциональный режим компенсации пинга увеличивает точность стрельбы.
      • Новые колбэки Pawn для большего контроля над оружием игроков и транспортом.
      • Функции статистики сетевого протокола упрощают администрирование серверов.
      • Множество мелких обновлений безопасности для клиента и сервера.

      Подробно:
        Открыть/закрыть

      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(vehicleidplayeridpassenger_seatFloat:new_xFloat:new_yFloat: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(playeridip_port[], ip_port_len); 


      SA-MP 0.3z RC3
      • Исправлено: Включение автоприцеливания при нажатии Q и E.
      • Исправлено: Снаряды от снайперской винтовки не работали за пределами карты.
      • Доп. данные на стороне сервера для обнаружения модифицированных данных о выстреле.
      • Добавлена функция VectorSize.


      SA-MP 0.3z RC2
      • Удалена возможность автоприцеливания с помощью Joypad
      • Добавлена константа BULLET_HIT_PLAYER_OBJECT (4)
      • Исправлена проблема с эффектами дыма и отлетающих гильз от оружия.


      SA-MP 0.3z RC1
      • Обновлена синхронизация пуль для огнестрельного оружия

        Выстрелы игроков теперь рассчитываются с учётом пинга, поэтому вы можете стрелять прямо по скину вместо прицеливания по пингу.
        Сервер может получить полную информацию о пулях. Теперь можно узнать, попала ли пуля по игроку, машине или объекту.

        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 
        Добавлена новая функция OnPlayerWeaponShot, вызываемая сервером при каждом выстреле:
        PHP код:
        forward OnPlayerWeaponShot(playeridweaponidhittypehitidFloat:fXFloat:fYFloat:fZ); 
        Автовызываемые функции OnPlayerGiveDamage и OnPlayerTakeDamage теперь получают ID части тела, по которой произведено попадание.
        Если в вашем скрипте используются эти функции, вам понадобится обновить их.
      • В файл server.cfg добавлен параметр 'messageholelimit' для предотвращения DoS-атак.
         Описание

        Это переменная для протокола RakNet (уязвимости в котором были использованы для недавних атак).

        Когда клиент/игрок отсылает на сервер поддельные пакеты, сервер думает, что во время доставки было потеряно много пакетов/сообщений.

        Протокол попытается восстановить потерянные пакеты: зарезервирует под них место в памяти и будет ждать, пока клиент не пришлёт эти пакеты заново.
        На весь этот процесс уходит много ресурсов и при большом количестве потерь может привести к лагам и крашу сервера.

        На сервере нет чётких ограничений в количестве потерянных сообщений от игрока. Каждый потерянный блок пакетов можно было считать уязвимостью. Были попытки исправить это в 0.3x R2, был поставлен лимит в 1000 и иногда, если у игроков были проблемы с интернетом и терялось много пакетов, сервер по ошибке принимал это за попытку DoS-атаки.

        Теперь можно вручную указать максимальное кол-во потерянных пакетов. Чаще всего значения по умолчанию уже достаточно и владельцам серверов не стоит беспокоиться об этом.

      • Мод rivershell обновлён до 2-й версии.




    • R1-2:
      • Исправлено обновление оружия у игроков, находящихся в транспорте.


    • R2-1:
      • Исправлена уязвимость в сетевом протоколе, позволявшая с помощью специальных утилит вызывать зависание сервера и потерю соединения с игроками.
      • В server.cfg добавлены переменные "messageslimit", "ackslimit" и "playertimeout". Каждая из них представляет собой ограничение, после превышения которых сервер разрывает соединение с игроком.
        messageslimit (по умолч.: 500) - макс. количество сообщений в секунду, посылаемых от сервера к игроку.
        ackslimit (по умолч.: 1000) - макс. количество сообщений в секунду, посылаемых от игрока к серверу.
        playertimeout (по умолч.: 10000) - макс. время тайм-аута (в миллисекундах), во время которого клиент может не посылать серверу ни одного пакета.
        При разрыве соединения в результате превышения лимитов messageslimit и ackslimit выводятся следующие сообщения:
        Код:
        Warning: client exceeded 'messageslimit' (1) <IP>:<порт> (<кол-во>) Limit: 500/sec
        Warning: client exceeded 'ackslimit' <IP>:<порт> (<кол-во>) Limit: 1000/sec
        При частых ложных срабатываниях рекомендуется увеличить в server.cfg значения указанных в сообщениях лимитов (RLSники, готовьтесь!)


    • R2-2:
      • Значение ackslimit в server.cfg по умолчанию увеличено с 1000 до 3000.
      • Добавлен колбэк OnIncomingConnection, в которую передаются IP-адрес и порт подключившегося игрока.
        PHP код:
        forward OnIncomingConnection(playeridip_address[], port); 
      • Добавлены новые функции:
        PHP код:
        // блокирует подключения с указанного IP-адреса, допускается указание подсети
        native BlockIpAddress(ip_address[], timems);

        // удаляет IP из списка блокировки
        native UnBlockIpAddress(ip_address[]);

        // отсылает указанному игроку сообщение об убийстве
        // (полезно, если нужно, чтобы не все игроки видели убийства в киллчате)
        native SendDeathMessageToPlayer(playeridkillerkilleeweapon);

        // создаёт взрыв, который виден только указанному игроку
        native CreateExplosionForPlayer(playeridFloat:XFloat:YFloat:ZtypeFloat:Radius); 
      • В логи сервера больше не выводятся строки "Packet Modified".
      • Также в логи больше не выводятся строки "[death]", "[kill]" и "[nick]", если значение параметра "chatlogging" в server.cfg равно 0.


    Скачать:

    Источник: http://forum.sa-mp.com/showthread.php?t=494414
    Перевод: Daniel_Cortez
    Специально для Pro-Pawn.ru
    Копирование данной статьи на других ресурсах без разрешения авторов запрещено!
    Последний раз редактировалось Daniel_Cortez; 18.04.2014 в 20:16. Причина: updated description to 0.3z R2-2
    Индивидуально в PM и Skype по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
    SA-MP 0.4 is a lie

  2. 8 пользователя(ей) сказали cпасибо:
    Blood (13.02.2014)Johny (13.02.2014)Londlem (13.02.2014)Mr.DeViLsS (17.04.2014)Osetin (13.02.2014)Salvacore (13.02.2014)semen7907 (13.02.2014)^_^ (13.02.2014)
  3. #2
    Аватар для ^_^
    Übermensch

    Статус
    Оффлайн
    Регистрация
    25.11.2013
    Сообщений
    161
    Репутация:
    243 ±
    Наконец-то...
    Надеюсь, кроме спрятанных функции для защиты сервера, последний пункт включает в себя и что-то полезное...

  4. #3
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Цитата Сообщение от ^_^ Посмотреть сообщение
    Наконец-то...
    Надеюсь, кроме спрятанных функции для защиты сервера, последний пункт включает в себя и что-то полезное...
    Или же ещё десяток дыр, с помощью которых будут класть сервера :D
    Но возможность отследить выстрелы радует. Развязывает руки. Может даже вернусь в скриптинг и доделаю TDM мод, который начал писать где-то год назад :D
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  5. #4
    Аватар для Salvacore
    Инжунер-погромист

    Статус
    Оффлайн
    Регистрация
    10.05.2013
    Адрес
    Аҧсуа бызшәа
    Сообщений
    2,282
    Репутация:
    417 ±
    Жду R2.
    Последний раз редактировалось Salvacore; 13.02.2014 в 21:18.

  6. #5
    Аватар для Osetin
    •Администратор•

    Статус
    Оффлайн
    Регистрация
    26.03.2013
    Адрес
    Pro-Pawn.Ru
    Сообщений
    3,428
    Репутация:
    1079 ±
    Наконец-то вышла...уже заметил что уже начали сервера переходить на 0.3z,Advance уже перешли!

  7. Пользователь сказал cпасибо:
    Sam_Coder (15.02.2014)
  8. #6
    Аватар для Daniel_Cortez
    new fuck_logic[0] = EOS;

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    1,662
    Репутация:
    2145 ±
    Описание обновлено до 0.3z R2-2.
    Индивидуально в PM и Skype по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).
    SA-MP 0.4 is a lie

  9. 2 пользователя(ей) сказали cпасибо:
    DeimoS (19.04.2014)Londlem (18.04.2014)
  10. #7
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    3,931
    Репутация:
    1502 ±
    Обновления хоть и не большие, но приятные. Уверен, что эти функции не были сделаны за день и это всё наработки для 0.4a, которые пришлось выпустить из-за крашеров (хотя, скорее, надеюсь, а не уверен). Если они и дальше поведут разработку в этом направлении, 0.4а обещает отрыть нам большие возможности по индивидуальной настройке и контролю за игроком
    Связаться со мной можно в личных сообщениях этой группы

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •