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

 
Ответить в эту темуОткрыть новую тему
> Distro099 - Баг с баффами
ikorus
сообщение 11.10.2014, 22:25
Сообщение #1


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



В Дистро099 возможен эксплойт, связанный с некорректной обработкой стамины/хитов/маны/АР при сохранении-загрузке данных чара.

Сценарий использования такой:
1. Бафаешься
2. Выходишь из игры
3. Заходишь в игру

Получается, что при разлогинивании чару дописываются статы с учтем изменений и факты бафа или дебаффа.
При повторном заходе к уже измененным статам применяюися баффы/дебаффы повторно.

Так можно много раз выйти зайти и в одного пойти на Балрона )))

Так как я играю "сам с собой", то мне достаточно было бы найти возможность сброса статов на дефолтные значения всякий раз при разлогине, но моей квалификации не хватает, чтобы это реализовать.

В Общем, помощь нужна.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RL_ka
сообщение 12.10.2014, 2:01
Сообщение #2


*****

Разработчик Injection
Сообщений: 464
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 13692
Из: Екатеринбург
Пользователь №: 16.211



Откуда скачан дистро?
С сайта ПОЛа или из СВН?
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ikorus
сообщение 12.10.2014, 7:01
Сообщение #3


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



Цитата(RL_ka @ 12.10.2014, 5:01) *

Откуда скачан дистро?
С сайта ПОЛа или из СВН?


С Полсервер.ком
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RL_ka
сообщение 12.10.2014, 12:50
Сообщение #4


*****

Разработчик Injection
Сообщений: 464
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 13692
Из: Екатеринбург
Пользователь №: 16.211



Для начала скачай дистро из СВН, там обновлённая версия. На сайте старая и баговая.
Если и в СВН баг останется, тогда надо будет смотреть.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ikorus
сообщение 12.10.2014, 14:18
Сообщение #5


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



Цитата(RL_ka @ 12.10.2014, 15:50) *

Для начала скачай дистро из СВН...


Попробую, конечно
А информацию об айтемах мультисах и акках восстанавливать надо будет?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RL_ka
сообщение 12.10.2014, 14:53
Сообщение #6


*****

Разработчик Injection
Сообщений: 464
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 13692
Из: Екатеринбург
Пользователь №: 16.211



Так ты замени только скрипты, и ничего не нужно будет больше восстанавливать.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ikorus
сообщение 12.10.2014, 15:58
Сообщение #7


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



только /pkg и /scripts ?

еще бы понять, как скачать отсюда )))
https://svn.code.sf.net/p/pol-distro/code/releases/099/
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RL_ka
сообщение 12.10.2014, 16:38
Сообщение #8


*****

Разработчик Injection
Сообщений: 464
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 13692
Из: Екатеринбург
Пользователь №: 16.211



https://ru.wikipedia.org/wiki/Subversion
для начала стоит прочитать что такое свн и как этим пользоваться(IMG:style_emoticons/default/smile.gif)
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ikorus
сообщение 12.10.2014, 19:56
Сообщение #9


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



Цитата(RL_ka @ 12.10.2014, 19:38) *

https://ru.wikipedia.org/wiki/Subversion
для начала стоит прочитать что такое свн и как этим пользоваться(IMG:style_emoticons/default/smile.gif)


качнул через тартуаз
все-таки, какие разделы подновить? /pkg и /scripts достаточно, или еще что-то надо?
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RL_ka
сообщение 12.10.2014, 20:49
Сообщение #10


*****

Разработчик Injection
Сообщений: 464
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 13692
Из: Екатеринбург
Пользователь №: 16.211



Цитата(ikorus @ 12.10.2014, 18:56) *

качнул через тартуаз
все-таки, какие разделы подновить? /pkg и /scripts достаточно, или еще что-то надо?


Тебе виднее. Оставить то что ты не хочешь менять ("информацию об айтемах мультисах и акках"), а остальное заменить и попробовать запустить это всё.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
oda128
сообщение 12.10.2014, 21:18
Сообщение #11


***

Группа: Пользователи
Наличность: 0
Пользователь №: 15.797



ikorus, чтобы все данные аккаунтов и мира сохранились, скопируй папку /data в новую сборку и всего то дело.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ikorus
сообщение 15.10.2014, 20:17
Сообщение #12


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



Подошел к делу вдумчиво:
1. посадил текущую версию на git
2. перезаписал фалы из версии, полученной через svn
3. перечитал diff, сделал chekout на те области правок, которые не понравились, остальное закоммитил

Это позволило:

- сохранить все данные по объектам и чарам
- увидеть, что изменилось
- сохранить исходное состояние данных для отката, в случае, если что-то пошло бы не так
- сохранить сделанные фиксы по цветам и звукам (клиент некорректно отображает некоторые цвета и падает на AN Ex Por)

Проблема с эксплойтом не повторяется, но при перезаходе перестали отображаться ранее наложенные бафф/дебафф в окошке - невозможно посмотреть, сколько секунд осталось.

Ну и ограничение по установке дома не нравится новое - класс сперва надо получить. Наверное, откачу это.

Остальные проблемы видимо выявятся после
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
RL_ka
сообщение 16.10.2014, 16:09
Сообщение #13


*****

Разработчик Injection
Сообщений: 464
Регистрация: 13.7.2013
Группа: Модераторы
Наличность: 13692
Из: Екатеринбург
Пользователь №: 16.211



Так может быть, раз уж ты так далеко пошёл, просто почитать немного escript и поправить скрипты так как тебе нужно? Это не так уж и сложно(IMG:style_emoticons/default/smile.gif)
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ikorus
сообщение 16.10.2014, 19:33
Сообщение #14


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



Цитата(RL_ka @ 16.10.2014, 19:09) *

Так может быть, раз уж ты так далеко пошёл, просто почитать немного escript и поправить скрипты так как тебе нужно? Это не так уж и сложно(IMG:style_emoticons/default/smile.gif)


Странно, но 10 лет назад по ескрипт было больше инфы доступной, чем сейчас - вообще ничего не смог найти именно по самому языку. А без знания синтаксиса - как слепой котенок, я ведь не программист, только питон немного понимаю, а со скриптовыми языками плотно не сталкивался.

И кстати - это я совсем недалеко пошел, просто контроль версий - это удобнее, чем туеву хучу копий хранить
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
PolDev
сообщение 16.10.2014, 20:38
Сообщение #15


****

Группа: Пользователи
Наличность: 0
Пользователь №: 14.164
Возраст: 22



https://forum.uokit.com/index.php?showtopic...&hl=escript
Можешь познакомится с документацией.

А по поводу твоей проблемы, то её можно легко решить добавив в любой logon/reconnect скрипт проверку на props баффов и уберать их всегда с помощью этих двух скриптов. Аналогично как при смерти игрока.


--------------------
Оказываю услуги по скриптингу Pol серверов.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
ikorus
сообщение 16.10.2014, 21:20
Сообщение #16


**

Группа: Пользователи
Наличность: 0
Пользователь №: 16.948
Возраст: 36



Цитата(PolDev @ 16.10.2014, 23:38) *

https://forum.uokit.com/index.php?showtopic...&hl=escript
Можешь познакомится с документацией.

А по поводу твоей проблемы, то её можно легко решить добавив в любой logon/reconnect скрипт проверку на props баффов и уберать их всегда с помощью этих двух скриптов. Аналогично как при смерти игрока.


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

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

 

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