Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Крашит клиент при простом sendpacket
d`ArcZeal
сообщение 7.6.2017, 11:29
Сообщение #1


**********

Elder
Сообщений: 2.962
Регистрация: 27.11.2005
Группа: Пользователи
Наличность: 7840
Пользователь №: 4.522
Возраст: 34



Исправно работает скрипт:

Код

[FUNCTION THORN_AURA_1]
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> <EVAL <P.Z> + 5> W<P.X> W<EVAL <P.Y> - 2> <EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> <EVAL <P.Z> + 5> W<EVAL <P.X> - 2> W<P.Y> <EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> <EVAL <P.Z> + 5> W<P.X> W<EVAL <P.Y> + 2> <EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> <EVAL <P.Z> + 5> W<EVAL <P.X> + 2> W<P.Y> <EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100


Однако если персонаж находится на локации где резкие перепады высоты, при срабатывании этого сенд пакета клиент всегда крашит.

(IMG:http://ximages.net/images/39785615309141722619.jpeg)

Проблема в клиенте, из-за высот, или скрипт написан некорректно?


--------------------
Olmer online administrator
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Aimed
сообщение 7.6.2017, 17:37
Сообщение #2


*********

Grandmaster
Сообщений: 2.250
Регистрация: 29.12.2012
Группа: Пользователи
Наличность: 8769
Пользователь №: 15.607



Так он исправно работает или все-же нет?
Что ты пытаешься сделать?
Судя по айди, посылаешь 0C - Edit TileData пакет, но по нему норм документации нету и то что ты посылаешь никак не подходит.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sirocco
сообщение 7.6.2017, 21:35
Сообщение #3


******

Expert
Сообщений: 810
Регистрация: 2.2.2012
Группа: Пользователи
Наличность: 15484
Пользователь №: 14.566
Возраст: 30



Цитата(Aimed @ 7.6.2017, 17:37) *

Судя по айди, посылаешь 0C - Edit TileData пакет, но по нему норм документации нету и то что ты посылаешь никак не подходит.

Наркоман что ли? http://docs.polserver.com/packets/index.php?Packet=0xC0


BYTE[1] zSource ты забыл.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Aimed
сообщение 7.6.2017, 22:08
Сообщение #4


*********

Grandmaster
Сообщений: 2.250
Регистрация: 29.12.2012
Группа: Пользователи
Наличность: 8769
Пользователь №: 15.607



Цитата(Sirocco @ 7.6.2017, 20:35) *

Наркоман что ли? http://docs.polserver.com/packets/index.php?Packet=0xC0
BYTE[1] zSource ты забыл.


(IMG:style_emoticons/default/biggrin.gif) не туда смотрел, только не я забыл, а он.

Кстати, ты тоже тогда наркоман. У него sourceZ обозначается <EVAL <P.Z> + 5> и targetZ <EVAL <P.Z> + 5>
Если по первой строке смотреть.

Формат правильный, хз почему клиент крашится.
К тому же он крашит только у больших перепадов Z.
Если б что-то с форматом было, крашило-бы всегда, либо ничего не происходило бы.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sirocco
сообщение 7.6.2017, 22:25
Сообщение #5


******

Expert
Сообщений: 810
Регистрация: 2.2.2012
Группа: Пользователи
Наличность: 15484
Пользователь №: 14.566
Возраст: 30



Byte забыл!
B<EVAL <P.Z> + 5>
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Aimed
сообщение 7.6.2017, 22:29
Сообщение #6


*********

Grandmaster
Сообщений: 2.250
Регистрация: 29.12.2012
Группа: Пользователи
Наличность: 8769
Пользователь №: 15.607



Цитата(Sirocco @ 7.6.2017, 21:25) *

Byte забыл!
B<EVAL <P.Z> + 5>


Так были бы проблемы постоянно тогда, не?
Дефолтно разве не байт будет?
Документация у Сферы конечно...

ТС, а какая у тебя там высота на карте?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Aimed
сообщение 7.6.2017, 23:16
Сообщение #7


*********

Grandmaster
Сообщений: 2.250
Регистрация: 29.12.2012
Группа: Пользователи
Наличность: 8769
Пользователь №: 15.607



Цитата
Description: The SENDPACKET function sends the bytes specified exactly as-is to the client. If the client isn't expecting that command, or the command is not formed correctly, the client WILL crash. All SENDPACKET strings must therefore be perfectly formed and expected.

Возможно и правда из-за отсутствия B. Видимо при высоких значениях Z оно из байта делает ворд и тогда формат идет одним местом.
Лучше тогда для всех значений указать тип данных.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
d`ArcZeal
сообщение 8.6.2017, 9:47
Сообщение #8


**********

Elder
Сообщений: 2.962
Регистрация: 27.11.2005
Группа: Пользователи
Наличность: 7840
Пользователь №: 4.522
Возраст: 34



Спасибо.
Видать в одной из заготовок пропала B, затем все сендпакеты начал делать без B.

Правильный скрипт:
Код

[FUNCTION THORN_AURA_1]
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> B<EVAL <P.Z> + 5> W<P.X> W<EVAL <P.Y> - 2> B<EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> B<EVAL <P.Z> + 5> W<EVAL <P.X> - 2> W<P.Y> B<EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> B<EVAL <P.Z> + 5> W<P.X> W<EVAL <P.Y> + 2> B<EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> B<EVAL <P.Z> + 5> W<EVAL <P.X> + 2> W<P.Y> B<EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100

[FUNCTION THORN_AURA_2]
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> B<EVAL <P.Z> + 5> W<EVAL <P.X> + 2> W<EVAL <P.Y> - 2> B<EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> B<EVAL <P.Z> + 5> W<EVAL <P.X> + 2> W<EVAL <P.Y> + 2> B<EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> B<EVAL <P.Z> + 5> W<EVAL <P.X> - 2> W<EVAL <P.Y> + 2> B<EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100
SECTOR.ALLCLIENTS SENDPACKET 0C0 0 D0 D0 W3921 W<P.X> W<P.Y> B<EVAL <P.Z> + 5> W<EVAL <P.X> - 2> W<EVAL <P.Y> - 2> B<EVAL <P.Z> + 5> 0 0 W0 1 0 D0991 D100


--------------------
Olmer online administrator
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 19.4.2024, 8:33
Designed by Nickostyle