PDA

Просмотр полной версии : [Статья] Разбираемся в клонировании вещей.


astral48
05.05.2010, 22:35
Долго думая над способами дюпа решил попросить о помощи у вас. :)
В этой статье я постараюсь раскрыть тему отката, что это, как он происходит, и, может быть, это натолкнет вас на ту или иную идею.

Итак начнем сначала.
Что такое дюп?
Дюп (от англ. dub) - означает "дублировать, в значении размножать".
Осуществляется путем использования недоработок, ошибок ( багов ) сервера в своих целях.

Способы дюпа можно разжелить на два основных вида:
1. Откат сугубо персонажа.
2. Откат определенной месности (данж\мир\другие локации).

Сначала разберёмся как происходит "откат".
Так как наши сервера отнюдь не сервера воинской части китайцев :D, изменения происходящие в игре записываются на сервер через определённые промежутки времени. В пв это 10 минут. Итак, если мы "положили" сервер, а последнее сохранение было 9 минут назад, то нас и откатит на 9 минут, если сохранение было две минуты назад - откатит на две минуты. Всё логично.

С первым всё вроде понятно, но вот откатить персонажа гораздо сложнее чем откатить часть сервера. Почему? Потому что действия персонажа очень ограничены, и в большинстве своем очень легко фиксятся.
Но всё же можно попробовать следующие методы:
а. Закидывание сервера большим обилием пакетов. (закликивание шопа и т.п.)
б. Поиск "битых статов" на вещах. К примеру давно был баг: при крафте определённой вещи с определённым "битым статом" (он может быть любым - как +1 тело, -3 пения и т.д.) и её использования откатывало персонажа. Поискать "битые статы" можно на своём сервере. Это несложно.

Теперь второе. Тут всё несколько сложнее.
В основном, локации падают из за дыр в квестах (tasks.deta), а проверить все квестовые действия персонажа очень проблематично даже с своего сервера.
Есть немало известных дыр в тасксдате приведу несколько:
а. При попадание в закрытую зону ("Не открыто") падает мир. Этот баг уже давно профикшен тем, что ввели гм квест, проверяющий гм ли вы, если нет - вас телепортирует на середину карты.
Между прочим, гм квест можно избежать, если полететь волхаком выше верхней границы ( высота 85+). Можете пробовать уронить сервер, это уже мало где профикшено.
б. При нескольких десятков "провоцированиях" (сагрить\убрать агро, резко снова сагрить) пб, падают некоторые данжи.
в. Искать "битые" места. К примеру, если волхаком залезть в левую стену 59 данжа падает мир (почти везде фикшено), или при отмене в кубе определённого квеста падает куб (почти нигде не фикшено, можете искать вручную - узнает пабик, прикроют сразу. На оффе неработает, на фришках с кубом - работает, я бы дюпал этим способом, да только редко замечают падение куба, и дюпать становится из за этого долго слишком : D ).

Теперь пришла пора разобраться с тем как визуально происходит вылет с игры. Многие вводятся в заблуждение видя окно "репортбагз", думая что их откатывает, это всего лишь ошибка клиента - дюпа из этого выйти неможет. Когда персонаж ложит сервер вылетает ошибка "Соединение с сервером разорвано, попробуйте зайти позднее", что - то в этом роде.

Как именно дюпать описывать нету смысла (складывать вещи в банк \ бросать на землю \ передавать кому то и т.п.), поэтому писать об этом не буду. : )

Надеюсь что это натолкнет вас на ту или иную мысль в отношении дюпа, или вы что- то вспомните. В этом случае буду рад услышать ваши мысли или идеи. Так же хотелось бы услышать конкретные замечания или дополнительную информацию, будем пополнять статью. Итак, давайте сотрудничать. :)

billi
07.05.2010, 21:51
а какая комната в кубе?

Торри
08.05.2010, 15:04
Есть вторая идейка дюпа, через озеро.
Сейчас додумываю её осуществление.

Noob)
11.05.2010, 12:42
на фришках если многа раз нажимать медитацию вылазиет надпись: "Вы отступаете сейчас"
Причем можно бегать "духом" чара, однако у других игроков ты будешь на месте.....

Реально ли дюпнуть ТАКИМ способом? :question:

astral48
11.05.2010, 18:30
на фришках если многа раз нажимать медитацию вылазиет надпись: "Вы отступаете сейчас"
Причем можно бегать "духом" чара, однако у других игроков ты будешь на месте.....

Реально ли дюпнуть ТАКИМ способом? :question:

Кхм.. сопроводите слова скриншотом, пожалуйста. И желательно заархивированные логи игры (находятся в папке с игрой в директории "logs"), тогда можно будет посмотреть, а на слух тяжело что-то сказать.)

wild_Doik
13.05.2010, 18:21
на фришках если многа раз нажимать медитацию вылазиет надпись: "Вы отступаете сейчас"
Причем можно бегать "духом" чара, однако у других игроков ты будешь на месте.....

Реально ли дюпнуть ТАКИМ способом? :question:

только проблема в том что дальше определенной локации ничего не грузит. Поэтому бегаешь духом только по той локации где завис перс=)

astral48
13.05.2010, 19:06
только проблема в том что дальше определенной локации ничего не грузит. Поэтому бегаешь духом только по той локации где завис перс=)

Если всё как вы объясняете, то произошел дисконнект, и вы просто создаете для себя видимость движений.
Другими словами - бегаете по клиенту а не по серверу, как оффлайн игра.)