 |
|
 |
|
|
|
Последние Файлы GTA 4 |
Последние Файлы GTA-MP |
Реклама |
|
|
|
|
|
SA-MP 0.3c R3/R4/R5 server update
| |
| stepmex | Дата: Понедельник, 25.07.2011, 12:40 | Сообщение # 1 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| - Исправлены ошибки уязвимости SA-MP серверов на Linux, удаленная атака могла прислать специально сформированный пакет, который вызывал отладку сетевого уровня SA-MP, что вызывало отключение сервера.
Новые функции: native GetPlayerCameraMode(playerid); - возвращает состояние камеры игрока. спасибо JernejL Quote camera 3: tram/train passenger entering camera (??!), tram/train driver camera - посадка в поезд/трамвай camera 4: normal onfoot chasing camera (several variable distances) - нормальная камера на земле (5,6 - её другие позиции) camera 7: sniper aiming mode - целимся из снайперки camera 8: rpg aiming mode - целимся из РПГ camera 16: front closeup camera attached on car (+skimmer+heli+airplane) - камера "на бампере" camera 18: normal car (+skimmer+helicopter+airplane) chase camera (several variable distances) - нормальная камера в машине (19,20,21 - её другие режимы) camera 22: normal boat chase camera (several variable distances) - камера на катере camera 15: chase cinematic camera (also spray garage camera) - кинематическая камера camera 46: picture-camera camera mode - режим при съемке фотоаппаратом camera 51: heatseeker aiming mode - как я понял режим когда нацелен на игрока camera 53: over-shoulder on-foot aiming with a weapon (any, including minigun) - целимся с любого другого оружия camera 55: passenger window-driveby mode - пассажир высунулся из окна машины camera 56: news-reporter style chase cinematic camera (wobbbling and zooming) - тоже какая-то кинематическая камера, сказано режим новостей.
native Float:GetPlayerDistanceFromPoint(playerid, Float:X, Float:Y, Float:Z); native Float:GetVehicleDistanceFromPoint(vehicleid, Float:X, Float:Y, Float:Z); возвращает расстояние от игрока/машины до точки, соответственно.
native GetPlayerSurfingObjectID(playerid); - возвращает ID объекта на котором стоит игрок, если игрок не на объекте вернет INVALID_OBJECT_ID.
Событие: forward OnUnoccupiedVehicleUpdate(vehicleid, playerid, passenger_seat); событие происходит когда игрок меняет позицию транспортного средства в котором нет водителя, или игрок сидит в машине пассажиром(второе не совсем понял надо проверять!)
Офф тема SA-MP 0.3c R3 server update
SA-MP 0.3c R3 Linux Server SA-MP 0.3c R3 Windows Server
Updates:
SA:MP 0.3c R4 Server: - Фикс уязвимости сервера, найденный в версии R3 - Исправлены проблемы с GetPlayerSurfingObjectID (), который возвращал неверный ид объекта. - Исправлены некоторые незначительные проблемы с format(). Новые функции: Quote native GetPlayerNetworkStats(playerid, retstr[], size); native GetNetworkStats(retstr[], size); Данный функции выводят информацию о сервере/игроке, которая выводится при нажатии F5. Включает в себя потерянные пакеты и т.п. Полезно при обнаружении проблем в сети конкретных игроков или самого сервера. Пример использования есть в архиве Windows Server в скрипте netstats.pwn
Скачать:
SA-MP 0.3c R4 Linux Server SA-MP 0.3c R4 Windows Server
SA:MP 0.3c R5 Server:
- Фикс уязвимостей, найденных в версии R4.
Скачать:
SA-MP 0.3c R5 Linux Server SA-MP 0.3c R5 Windows Server
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
Сообщение отредактировал stepmex - Понедельник, 25.07.2011, 19:06 |
| |
|
|
| AirKite | Дата: Пятница, 29.07.2011, 10:33 | Сообщение # 76 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1671
Награды: 21
Город: Новосибирск
Репутация: 2070
Замечания: 0%
Статус: 
| Quote (stepmex) ничего не понял Что всё так туго?
Quote (stepmex) давай попорядку Давай, только я и так всё по порядку объяснил. Ещё более ясней... Твой код в том участке, был бы быстрей при условии что не пришлось бы использовать GetVehiclePos. А так GetVehicleDistanceFromPoint+GetVehiclePos+GetVehicleZAngle не быстрей чем GetDistanceBetweenPoints+GetVehiclePos+GetVehicleZAngle. Или по другому: GetVehicleDistanceFromPoint будет быстрей GetDistanceBetweenPoints+GetVehiclePos но это не означает что она быстрей GetVehicleDistanceFromPoint+GetVehiclePos.
Quote (stepmex) GetDistanceBetweenPoints - замечу самопальная функция, т.е. медленная! По моему не то слово подобрал. В pawn всё самопальное выходит. Она не медленная, медленный pawn. Если бы у тебя была встроенная GetDistanceBetweenPoints в Си, то это другой разговор. А так, как тебе всё равно приходится брать координаты транспорта, нет смысла в использовании GetVehicleDistanceFromPoint.
Вообще конечно со всем этим я могу быть не прав, для конструктивности надо бы сделать тест. А пока что твои слова, что мои не имеют особого веса.
Quote (stepmex) if(floatcmp) - который почти в 2 раза быстрее обчыного сравнение float vs float Ну тут ты конкретно переборщил, в какие 2 раза быстрей, когда оператор != это и есть floatcmp Code stock bool:operator==(Float:oper1, Float:oper2) return floatcmp(oper1, oper2) == 0;
stock bool:operator==(Float:oper1, oper2) return floatcmp(oper1, float(oper2)) == 0; /* "==" is commutative */
stock bool:operator!=(Float:oper1, Float:oper2) return floatcmp(oper1, oper2) != 0;
stock bool:operator!=(Float:oper1, oper2) return floatcmp(oper1, float(oper2)) != 0; /* "!=" is commutative */
stock bool:operator>(Float:oper1, Float:oper2) return floatcmp(oper1, oper2) > 0;
stock bool:operator>(Float:oper1, oper2) return floatcmp(oper1, float(oper2)) > 0;
stock bool:operator>(oper1, Float:oper2) return floatcmp(float(oper1), oper2) > 0;
stock bool:operator>=(Float:oper1, Float:oper2) return floatcmp(oper1, oper2) >= 0;
stock bool:operator>=(Float:oper1, oper2) return floatcmp(oper1, float(oper2)) >= 0;
stock bool:operator>=(oper1, Float:oper2) return floatcmp(float(oper1), oper2) >= 0;
stock bool:operator<(Float:oper1, Float:oper2) return floatcmp(oper1, oper2) < 0;
stock bool:operator<(Float:oper1, oper2) return floatcmp(oper1, float(oper2)) < 0;
stock bool:operator<(oper1, Float:oper2) return floatcmp(float(oper1), oper2) < 0;
stock bool:operator<=(Float:oper1, Float:oper2) return floatcmp(oper1, oper2) <= 0;
stock bool:operator<=(Float:oper1, oper2) return floatcmp(oper1, float(oper2)) <= 0;
stock bool:operator<=(oper1, Float:oper2) return floatcmp(float(oper1), oper2) <= 0;
[1337GAMES] Easy RP (SAMP SERVER, DEVELOPMENT, NOT SAMP-RP, SMART LIFE)
Jabber: airkite@qip.ru [Addon] QuickBinder [FS] Online Players Record
Сообщение отредактировал AirKite - Пятница, 29.07.2011, 10:34 |
| |
|
|
| Nameless | Дата: Четверг, 04.08.2011, 09:13 | Сообщение # 77 |
|
Новенький
Группа:
Продвинутые
Сообщений: 72
Награды: 0
Город: Москва
Репутация: 34
Замечания: 0%
Статус: 
| а почему во вкладке http://sa-mp.com/download.php досих пор R2 ?
|
| |
|
|
| Jumpman23 | Дата: Четверг, 04.08.2011, 10:56 | Сообщение # 78 |
|
Группа:
I'm V.I.P.
Сообщений: 1359
Награды: 23
Город: Kingston, Rastapolis
Репутация: 504
Замечания: 100%
Статус: 
| Nameless, забыли обновить
Тсссс, тссс, отключите снисходительный тон. Помните: вас уже лишали права слова на этом форуме. Прошу прощения у всех кого я заебал или оскорбил (Кроме икварпа и чеза - вы ибланы). Великс ты красава.
|
| |
|
|
| stepmex | Дата: Четверг, 04.08.2011, 11:00 | Сообщение # 79 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Quote (AirKite) оператор != это и есть floatcmp тогда объясни мне зачем сделали отдельную функцию? И по скорости если не веришь проверь сам.
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
Сообщение отредактировал stepmex - Четверг, 04.08.2011, 11:00 |
| |
|
|
| AirKite | Дата: Четверг, 04.08.2011, 21:45 | Сообщение # 80 |
|
Долгожитель
Группа:
I'm V.I.P.
Сообщений: 1671
Награды: 21
Город: Новосибирск
Репутация: 2070
Замечания: 0%
Статус: 
| Quote (stepmex) тогда объясни мне зачем сделали отдельную функцию? Затем что Float не настоящий Функция первоначальная, но "==", "!=", почти макросы функций.
Как я уже и писал: stock bool:operator!=(Float:oper1, Float:oper2) return floatcmp(oper1, oper2) != 0;
Тест: Code #include <a_samp> new Float:result=1.0; main() { new start_tick=GetTickCount(); for(new i; i < 1000000; i++) { if(result == 1.0) { } } printf("Variant 1: %f ms", float(GetTickCount()-start_tick)/1000000); start_tick=GetTickCount(); for(new i; i < 1000000; i++) { if(!floatcmp(result, 1.0)) { } } printf("Variant 2: %f ms", float(GetTickCount()-start_tick)/1000000); } Code Variant 1: 0.000345 ms Variant 2: 0.000218 ms Твой вариант действительно работает быстрее. Быстрее? На 0.000127 миллисекунды? С таким же успехом можно вместо strtok юзать: Code new length = strlen(string); while ((index < length) && (string[index] <= ' ')) { index++; } new offset = index; new result[20]; while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1))) { result[index - offset] = string[index]; index++; } result[index - offset] = EOS; return result; Проверь, это тоже будет быстрей, на те же 0.000127 ms в среднем. Переделай код, а затем заяви что ты его сделал быстрее Не серьёзно всё так
[1337GAMES] Easy RP (SAMP SERVER, DEVELOPMENT, NOT SAMP-RP, SMART LIFE)
Jabber: airkite@qip.ru [Addon] QuickBinder [FS] Online Players Record
|
| |
|
|
| stepmex | Дата: Пятница, 05.08.2011, 10:57 | Сообщение # 81 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2914
Награды: 35
Город: Е-бург
Репутация: 1032
Замечания: 0%
Статус: 
| Quote (AirKite) Твой вариант действительно работает быстрее. Быстрее? На 0.000127 миллисекунды? а теперь представь это в массщтабах того кода который мы обсуждали. Я думаю итоговый выйгрыш даже в эти 0.000127 миллисекунды существенен.
И создал Бог женщину!.. Существо получилось злобное, но симпатичное...
|
| |
|
|
| toneysix | Дата: Воскресенье, 04.09.2011, 18:13 | Сообщение # 82 |
|
Джэдай
Группа:
I'm V.I.P.
Сообщений: 1731
Награды: 77
Город: Салават
Репутация: 1825
Замечания: 0%
Статус: 
| OnUnoccupiedVehicleUpdate вообще хрен знает, как работает. Казалось бы на теории, она должна вызываться в том случаи, если игрок на клиент стороне меняет позицию тачки, при этом не находясь за рулем. На практике мы видим, что она вызывается во всех случаях, когда тачка без водителя меняет местоположение, не зависимо от того, кто её поменял. Уже испробовал 3 алгоритма, все 3 на сервере с 120 игроками дают ложный вызов, например когда игрок падает с мотоцикла, здесь вообще цирк, если он упал, то значит он меняет свой статус на пеший, то есть ONFOOT, соответственно он должен обновить координаты тачки, а получается, что он каким-то странным образом, пишет предупреждение о том, что такой-то игрок тпшнул тачку с расстояния за 100 метров на дистанцию 3.7 метров по отношению к игроку. Или вообще, когда дает предупреждение о тачки за 400 метров, при это определяет, что якобы игрок тпшнул её по по отношению к себе на 3.6 метров, а на самом деле её возле него даже нет и не было.
Русскоязычныи портал о MTA/GTA-IV-MP | http://multi-theft-auto.ru
|
| |
|
|
| Goshik | Дата: Воскресенье, 04.09.2011, 18:55 | Сообщение # 83 |
|
Уверенный в себе
Группа:
Пользователи
Сообщений: 280
Награды: 1
Город: ---
Репутация: 18
Замечания: 60%
Статус: 
| gpci кстати вернулся, точно не знаю в какой версии, но после того шума на самп коме его вырезали кажется в какой то версии ^^
|
| |
|
|
| Jumpman23 | Дата: Воскресенье, 04.09.2011, 19:03 | Сообщение # 84 |
|
Группа:
I'm V.I.P.
Сообщений: 1359
Награды: 23
Город: Kingston, Rastapolis
Репутация: 504
Замечания: 100%
Статус: 
| Quote (Goshik) gpci кстати вернулся Это кто? Или что?
Тсссс, тссс, отключите снисходительный тон. Помните: вас уже лишали права слова на этом форуме. Прошу прощения у всех кого я заебал или оскорбил (Кроме икварпа и чеза - вы ибланы). Великс ты красава.
|
| |
|
|
| Makar364 | Дата: Воскресенье, 04.09.2011, 19:36 | Сообщение # 85 |
|
Новенький
Группа:
Пользователи
Сообщений: 29
Награды: 0
Город: Нск
Репутация: 5
Замечания: 0%
Статус: 
| Quote (Jumpman23) Это кто? Или что? Функция, генерирующая код из пути до папки с документами юзера винды.
|
| |
|
|
| sk47 | Дата: Понедельник, 12.09.2011, 21:23 | Сообщение # 86 |
|
Освоившийся
Группа:
Пользователи
Сообщений: 86
Награды: 2
Город: Магнитогорск
Репутация: 9
Замечания: 0%
Статус: 
| вышла 0.3d http://forum.sa-mp.com/showthread.php?t=282775
|
| |
|
|
| ZiGGi | Дата: Понедельник, 12.09.2011, 21:36 | Сообщение # 87 |
|
Мастер джэдай
Группа:
Продвинутые
Сообщений: 2652
Награды: 34
Город: St. Petersburg
Репутация: 2102
Замечания: 20%
Статус: 
| Пока ещё релиз кандидат 1
Бложе [indent]Мой блог Уроки по Pawn[/indent]
Open-GTO [indent]Блог разработчиков GitHub: https://github.com/Open-GTO/Open-GTO Сборки мода с сервером тут[/indent]
|
| |
|
|
| Impereal | Дата: Понедельник, 12.09.2011, 21:41 | Сообщение # 88 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
| Quote (sk47) http://forum.sa-mp.com/showthread.php?t=282775 ЧЕЕЕЕЕТКООООО!!!!!!
Прощай самп-рус =Р
|
| |
|
|
| Impereal | Дата: Понедельник, 12.09.2011, 21:46 | Сообщение # 89 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
| Кто нить, сделайте качественный перевод Но уже вижу что все за**сь
Прощай самп-рус =Р
|
| |
|
|
| Impereal | Дата: Понедельник, 12.09.2011, 21:56 | Сообщение # 90 |
|
Мастер джэдай
Группа:
I'm V.I.P.
Сообщений: 2677
Награды: 51
Город: Санкт-Петербург
| Функция РемувБилдинПлэйер может быть использована для передвижения любого здания или обьекта из игры ЖЕЕЕСТЬ, я счастлив...
Прощай самп-рус =Р
Сообщение отредактировал Impereal - Понедельник, 12.09.2011, 21:56 |
| |
|
|
|
 |
|
 | |
| |
|