[Краткое содержание]
Сегодня вы узнаете,как:
-Поменять статы шмота или оружия.
-Поменять статы персонажа.
-Сделать скиллы другой рассы.
-Вытащить застрявшего персонажа.
-Прочие функции айвеб.
[Некоторые пояснения]
Предпологается,что у вас уже есть установленный сервер Perfect World и на него установлен айвеб.
Уточню,что также предпологается что вы знаете пароль от айвеба.
Также вам понадобится программа octets editor,её можно скачать [Ссылки могут видеть только зарегистрированные пользователи. ].
Начнём
Для начала запустим сервер,и убедимся,что айвеб загрузился.
Зайдем в игру,и создадим персонажа,который станет жертвой наших сегодняшних опытов:
Для того,чтобы что то сделать с нашим подопытным в айвебе нам нужно знать его айди. В моем случае это 64...вы же можете узнать его написав что нибудь в чат и нажав ctrl + ПКМ по нику.
Посмотрим статы меча с которыми будем работать:
[Ссылки могут видеть только зарегистрированные пользователи. ]
Не особо внушительные?
Мы это поправим.
Открываем айвеб...если вы не меняли порты,то найти его можно[Ссылки могут видеть только зарегистрированные пользователи. ]
И видим мы примерно (зависит от версии айвеба) вот такое:
[Ссылки могут видеть только зарегистрированные пользователи. ]
В конце этого гайда вы будете знать,что находится во всех этих подпунктах...
А пока нам нужен меч...
Итак жмем первый пункт с надписью редактор персонажей и видим меню этого подпункта:
[Ссылки могут видеть только зарегистрированные пользователи. ]
[Ссылки могут видеть только зарегистрированные пользователи. ]
Тут вы можете поменять настройки начальных персонажей или же какого нибудь одного,что нам и нужно...в поле айди вводим айди нашего персонажа или точный ник,если незнаем айди и жмем синюю надпись-
Код:
XML персонажа
Открывается вот что:
[Ссылки могут видеть только зарегистрированные пользователи. ]
Это XML код персонажа...рассмотрим код моего персонажа,он не должен сильно отличаться от вашего...
Важно! Для успешного сохранения изменений сделанных в айвебе персонаж должен быть не в игре.
PHP код:
<?xml version="1.0" encoding="UTF-8"?><role> //Кодировка XML прописана тут. <base><variable name="version" type="byte">1</variable> <variable name="id" type="int">64</variable> //Здесь айди персонажа прописан. <variable name="name" type="Octets">CocaineC</variable> //Здесь Ник персонажа <variable name="race" type="int">0</variable> //Номер расы ( 0 - люди) <variable name="cls" type="int">0</variable> // Номер класса ( 0 - воин) <variable name="gender" type="byte">0</variable> //Пол ( 0 -муж. 1 -жен.) <variable name="custom_data" type="Octets">00700010605f400042004200328984002c006e8086808069716680807b807680805e8068a180808080804a0032005a01300093898080806380938980808063802d00440080808080808080808080808029003a0070806a7b3900806450004d005300b4c040a03400c0c080823b00c0c05602aa01cc0050023d01b10152020000cad2dbff2b3641ff663ed4ffd14a6aff4ad295ffdd9831ff51cd51ff00000000cad2dbff926e646e6e800000</variable> <variable name="config_data" type="Octets">0300000078014b6160606001e2ff4800c865608262109b1144000188660662901c3f108300482f880f03ec50c672208d64e47f19a066364606460880a91e01f499ffff89f1e57160f8f04014c2c20848331801438c85914188a182d19e4100282ff16e520d28224061fb9a6d728d0b504c086a01480d283e18d980049308588fde91fde50bfe4254704a4fae79f0770583c16311a80e0875426905c30ba0382b90ab00c41c0620717b0686df420c2f80d8e49f10d8de0f2061b0ebc01488034e13407782256004481ca402240a62823c0201607120f3f0fe72092095003418e440101b0440eeb66ccd61106ccf61b0f1ec61b085d220b9676d10313e201b841ddaba184c5eb582d931ff56c0f9ad137318407c504285a9cdf0e901b303a6e6c0f42838323034d833417d00544b3d000049385c2a</variable> <variable name="custom_stamp" type="int">0</variable> <variable name="status" type="byte">1</variable> <variable name="delete_time" type="int">0</variable> <variable name="create_time" type="int">1256559243</variable> //Время создания. <variable name="lastlogin_time" type="int">1256559246</variable> <variable name="help_states" type="Octets">010018009d93a793bb93c593f303f483fd8307841184db87e5872584ef872f84f98703880d881788ab8f2188b58f2b88358893937f80</variable> <variable name="reserved1" type="int">0</variable> //В этих трех полях вписывается айди мужа или жены. <variable name="reserved2" type="int">0</variable> <variable name="reserved3" type="int">0</variable> </base> <status><variable name="version" type="byte">1</variable> <variable name="level" type="int">1</variable> // Здесь уровень персонажа <variable name="level2" type="int">0</variable> <variable name="exp" type="int">0</variable> //Опыт <variable name="sp" type="int">0</variable> //Мана <variable name="pp" type="int">0</variable> <variable name="hp" type="int">75</variable> //ХП <variable name="mp" type="int">45</variable> <variable name="posx" type="float">1106.8368</variable> //В этих трех полях текущая позиция <variable name="posy" type="float">219.46352</variable> <variable name="posz" type="float">4372.3115</variable> <variable name="worldtag" type="int">1</variable> // Номер мира ( 1 -основной мир) <variable name="invader_state" type="int">0</variable> <variable name="invader_time" type="int">0</variable> <variable name="pariah_time" type="int">0</variable> <variable name="reputation" type="int">0</variable> // Репутация <variable name="custom_status" type="Octets"></variable> <variable name="filter_data" type="Octets">00000000</variable> <variable name="charactermode" type="Octets"></variable> <variable name="instancekeylist" type="Octets">000000001800000069000000010000006a000000010000006b000000010000006c000000010000006d000000010000006e000000010000006f0000000100000072000000010000007300000001000000740000000100000075000000010000007b000000010000007c000000010000007d000000010000007e000000010000007f0000000100000081000000010000008300000001000000e600000001000000e700000001000000e800000001000000e900000001000000ea00000001000000eb000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000006900000040000000000000006a00000040000000000000006b00000040000000000000006c00000040000000000000006d00000040000000000000006e00000040000000000000006f00000040000000000000007200000040000000000000007300000040000000000000007400000040000000000000007500000040000000000000007b00000040000000000000007c00000040000000000000007d00000040000000000000007e00000040000000000000007f0000004000000000000000810000004000000000000000830000004000000000000000e60000004000000000000000e70000004000000000000000e80000004000000000000000e90000004000000000000000ea0000004000000000000000eb0000004000000000000000</variable> <variable name="dbltime_expire" type="int">0</variable> <variable name="dbltime_mode" type="int">0</variable> <variable name="dbltime_begin" type="int">1256508000</variable> <variable name="dbltime_used" type="int">0</variable> <variable name="dbltime_max" type="int">7200</variable> <variable name="time_used" type="int">4774</variable> <variable name="dbltime_data" type="Octets">01000000000000008f92e54a</variable> <variable name="storesize" type="short">0</variable> <variable name="petcorral" type="Octets">0000000100</variable> <variable name="property" type="Octets"></variable> <variable name="var_data" type="Octets">0600000000000000000000000000000038d9570d00000000000000001000000000000000ffffffff00000000000000000000000031000000</variable> <variable name="skills" type="Octets"></variable> //Октеты Скиллов персонажа <variable name="storehousepasswd" type="Octets"></variable> //Пароль от банка (в данном примере пароля нет.) <variable name="waypointlist" type="Octets">3508</variable> <variable name="coolingtime" type="Octets">ffffffff00000000</variable> <variable name="reserved1" type="int">0</variable> <variable name="reserved2" type="int">0</variable> <variable name="reserved3" type="int">0</variable> <variable name="reserved4" type="int">0</variable> </status> <pocket><variable name="capacity" type="int">32</variable>//Тут начинается перечисление вещей в инвентаре.Вещь начинается тегом <item> и кончается </item> сейчас в инвентаре вещей нет. <variable name="timestamp" type="int">9</variable> <variable name="money" type="int">0</variable>//Тут прописывается количество денег <variable name="reserved1" type="int">0</variable> <variable name="reserved2" type="int">0</variable> </pocket> <equipment><inv><variable name="id" type="int">2097 //Тут написанно айди вещи...в нашем случае это стандартный меч</variable>//Тут начинается список предметов одетых на персонаже. теги <inv> и </inv> <variable name="pos" type="int">0</variable> <variable name="count" type="int">1</variable> <variable name="max_count" type="int">1</variable> <variable name="data" type="Octets">0100ff000500000005000000f00a0000f00a00002c00030000000000010000000000000000000000030000000500000000000000000000001000000000004040000000000000000000000000</variable> // Это полоса свойств предмета. <variable name="proctype" type="int">0</variable> <variable name="expire_date" type="int">0</variable> <variable name="guid1" type="int">0</variable> <variable name="guid2" type="int">0</variable> <variable name="mask" type="int">1</variable> </inv> </equipment> <storehouse><variable name="capacity" type="int">16</variable> // Количество слотов в банке <variable name="money" type="int">0</variable> <variable name="reserved1" type="int">0</variable> <variable name="reserved2" type="int">0</variable> </storehouse> <task><variable name="task_data" type="Octets">0000010000000000</variable> <variable name="task_complete" type="Octets">01000000d101</variable> </task> </role>
Смотрим выше пояснения к строкам...так же добавлю,что отсчет места в инвентаре начинается с 0,следовательно если в строке вида.
Код:
<variable name="pos" type="int">0</variable>
стоит цифра 0 то предмет будет в первой ячейке...
Внимание! строка pos ( англ. сокр. position - местонахождение) в списке вещей одетых на персонаже будет означать не ячейку а совсем другое..так что пока не меняйте эту строку, иначе это может привести к слету базы.
Итак вот и настало время поговорить о слете базы.
Если ваша база слетела,а именно если вам при попытке выбрать персонажа выдает.
Код:
Link - ошибка входа в систему
Значит вы что-то перехимичили и базы упали...первым что надо сделать,это постараться поменять то, что только что изменяли обратно.
После этого нужно остановить сервер,потом остановить MSSQL и вновь запустить..
Опять запускаем сервер и больше пытаемся не ощибаться.
Если при попытке входа персонажем,которого вы меняли до перезагрузки опять падают базы,то забудте про него и делайте нового - вы испортили персонажа.)
Итак,нам нужен меч...ищем в коде вот такие строки..
Код:
<inv><variable name="id" type="int">2097 //Тут написанно айди вещи...в нашем случае это стандартный меч</variable>//Тут начинается список предметов одетых на персонаже. теги <inv> и </inv>
<variable name="pos" type="int">0</variable>
<variable name="count" type="int">1</variable>
<variable name="max_count" type="int">1</variable>
<variable name="data" type="Octets">0100ff000500000005000000f00a0000f00a 00002c00030000000000010000000000000000000000030000 00050000000000000000000000100000000000404000000000 0000000000000000</variable> // Это полоса свойств предмета.
<variable name="proctype" type="int">0</variable>
<variable name="expire_date" type="int">0</variable>
<variable name="guid1" type="int">0</variable>
<variable name="guid2" type="int">0</variable>
<variable name="mask" type="int">1</variable>
</inv>
Следовательно свойства нашего предмета хранятся тут:
Теперь знакомимся с программой [Ссылки могут видеть только зарегистрированные пользователи. ]...
Отрываем её и видим вот такое окошечко :
[Ссылки могут видеть только зарегистрированные пользователи. ]
В поле ввода копируем код свойств нашего октета и жмем обработать.
Далее жмем кнопку редактор в левом нижнем углу.
[Ссылки могут видеть только зарегистрированные пользователи. ]
Тут редактируются основные свойства предмета..я думаю всё должно быть ясно тут...
Жмем внизу - дополнительный редактор и видим вот это.
[Ссылки могут видеть только зарегистрированные пользователи. ]
А тут рассмотрим подробнее:
1) Добавление ячеек в пуху или шмот...в бижу нельзя.
2) Дополнительные свойства предмету...
3) Выбираем свойство....
4) Выбираем множитель свойства...на сколько будет умножено его действие...тут можно писать целые числа..
Дальше жмем сохранить,из верхнего поля,куда копировали код снова его копируем,но теперь заменяем его в xml коде нашего персонажа..
Жмем сохранить,заходим в игру и смотрим новые статы меча...тепрь гораздо лучше,не так ли?)
Теперь опять выйдем из игры персонажем и продолжим наше обучение...
Опять откроем:
[Ссылки могут видеть только зарегистрированные пользователи. ]
Введем наш айди,но на сей раз нажмем стандартная информация о персонаже-
И видим:
[Ссылки могут видеть только зарегистрированные пользователи. ]
Что можно изменить тут?
Во-первых если персонаж где то застрял,вы можете скопировать мои координаты(выше) и вставить ему.Он появится в мире.
Можно поменять количество репутации...тут можете писать сколько хотите..
Можно поменять количество денег и опыта.
Чтобы поменять уровень и не уронить базы нужно прописывать не только уровень но и количество очков для распределения...
Если очки еще не раскидывались,то цифру которую нужно написать в поле очки умений можно найти по формуле
5*(уровень) - 5 = количество очков...тоесть для уровня 150 количество очков будет 745.
Поле культивация отвечает за статус...
Тут может быть
Храниться информация о стандартных скиллах.Скопируем её в редактор,обрабатываем,редактируем и ....
[Ссылки могут видеть только зарегистрированные пользователи. ]
Тут я думаю особых пояснений не надо...просто уточню,что после того,как закончили работу со скиллами,жмем сохранить,копируем код и заменяем его в XML коде персонажа,после чего сохраняем...
Теперь разберем остальные функции айвеба...
[Ссылки могут видеть только зарегистрированные пользователи. ]
Из менеджера персонажей мы можем получить различную информацию о персонажах и аккаунтах сервера...списки персонажей аккаунта и так далее...я думаю тут всё понятно...
[Ссылки могут видеть только зарегистрированные пользователи. ]
Это менеджер сервера...давайте немного разберем его функции...
Тут можно установить такие бонусы,как удвоенный дроп,опыт деньги дух и прочее...
Можно передать глобальное сообщение- красным в мир.
Можно передать сообщение определенному миру...для этого нужен его айди...
Можно остановить сервер,после чего будет написанно,что сервер на профилактике.
Можете запретить создание или любые другие операции с кланами...запретить торговлю или аукцион.Я думаю тут тоже всё вполне понятно.
[Коопирайты]
[Ссылки могут видеть только зарегистрированные пользователи. ]
iweb - это не прога, а внутренний сайт, который работает при включенном серве ( в режиме сервер и iweb)
адрес айвеба:
[Ссылки могут видеть только зарегистрированные пользователи. ]
аналогично регистрация:
[Ссылки могут видеть только зарегистрированные пользователи. ]
Добавлено через 26 минут
можно вопрос-как узнать октеты шмотки?например,я хочу добавить с базы шмотку,которой нет просто в игре,те же ГМ пухи,через базу знаю только id,а октеты не знаю,тем самым-добавить не могу.Как узнать?кто знает,ответьте плиз.
Последний раз редактировалось William; 06.02.2011 в 15:58.
Причина: Добавлено сообщение