Показать сообщение отдельно
Непрочитано 21.04.2010, 10:14   #1
Аватар для Mag_i_str
Пользователь

Автор темы (Топик Стартер) IWEB - редактор XML

IWEB

IWeb дает нам большие возможности по редактированию персонажа и вещей в удобном виде, с помощью XML (сам IWeb находится здесь )
можно например поменять скилы, уровень, культивацию, очки опыта, дух, ник, кол-во денег, очки умений, местоположение в мире, также дать/удалить вещь, даже добавить/убрать ячейки в вещи и придать ей доп. свойства.

Урок 1. добавляем вещи персонажу через XML


Доступно только для пользователей
Перс, над которым мы будем проводить опыты - это персонаж только созданный, 1-го левела, женского пола, воин, с пустым рюкзаком.

Итак, для начала посмотрим, где в XML перса хранятся вещи.
запустим сервер (проверьте, чтобы стартовал iweb), после полного запуска серва откроем страницу айвеб-а в браузере (xttp://ВАШ_IP:8080/iweb/loginform.jsp), войдем и перейдем на "Редактор персонажей".
Важно! перед изменением чего-нибудь через IWeb вы должны выйти из игры (выйти на страницу выбора персонажа)



внизу указываем имя (или ID) персонажа и жмем на ссылку XML персонажа.
откроется страница



на которой мы видим данные перса в виде XML (в синем поле)

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

для более удобного редактирования предлагаю вам бесплатную программу для русскоязычных пользователей php expert editor


смотрим на рисунок, самое для нас сейчас интересное - это рюкзак перса и его экипировка.
все, что находится между тегами pocket (выделен красным) это рюкзак персонажа.
сейчас рюкзак пуст, поэтому кроме денег там ничего нет.
дадим сразу денег, к примеру 100 кк.
для этого просто впишите вместо 0 нужную цифру
должно выглядеть так:
Цитата:
<variable name="money" type="int">100000000</variable>
все, что находится между тегами equipment (выделен синим) это экипировка.

найдем в базе громкоговорител, например вот этот.
если посмотреть в адресную строку браузера, то вы увидите ID предмета - 12823

положим его в рюкзак, для этого добавим в наш XML след. код:
Цитата:
<items><variable name="id" type="int">12823</variable>
<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">03000000</variable>
<variable name="proctype" type="int">8</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">524288</variable>
</items>


обратите внимание, каждая вещь находится внутри тега items. обратите внимание куда вставлена вещь, - после money, и перед reserved1 !
важное, на рисунке отмечена позиция, куда будет полoжена вещь, в данном случае 0.
это означает, что вещь будет занимать первую ячейку в рюкзаке,
вторая ячейка в рюкзаке соответствует значению 1, ну и т.д.
теперь копируем наш xml из ворда и вставляем в IWeb нашего чара, жмем внизу "Сохранить"
заходим в игру и видим в рюкзаке появился громкоговоритель, а также небольшое количество денег.



Авторские права на данный материал принадлежат Пила и сайту usd.3dn.ru

Добавлено через 5 минут
Урок 2. Меняем левел персонажа и другие его параметры.

итак, для начала выйдем из клиента.
открываем страницу IWeb, вводим id или имя перса и жмем кнопку "Стандартная информация о персонаже".
наша задача поднять левел, ну например с 1 до 200

чтобы не было проблем запомните, при изменении левела нужно провести предварительный несложный расчет очков, сколько будет всего, сколько раскидать на статы.
перейдем к делу, отнимаем от 200 (наш будущий левел) 1(наш нынешний левел).
200 - 1 = 199
теперь умножим 199 на 5 (это сколько очков всего появится)
199 х 5 = 995
мы можем просто оставить эти статы нераспределенными и распределить в игре, для этого просто указываем "Уровень:" 200 и "Очки умений:" 995.
жмем Сохранить, заходим в игру и распределяем очки:


но! мышкой клацать 995 раз не очень-то интересно поэтому прямо в IWeb указываем в какие характеристики пойдет сколько очков.
к примеру, на ловкость пойдет 150, а на силу все остальное.
995 - 150 = 845 (это на силу скоко останется)
считаем
5 + 150 = 155 (ловкость)
5 + 845 = 850 (это силa)


сохраняем, заходим и видим


Дополнение:
данная версия iweb не позволяет давать левел персу выше 999 через стандартную информацию о персонаже, больше просто не получится вписать.

ок, но нам это не подходит, и хотелось-бы давать до 30000 левела, а не клацать в игре мышкой до посинения, распределяя статы
пошурудив внутри iweb-a я обнаружил, что за это поле отвечает файл modrole.jsp, который находится по адресу /opt/jakarta-tomcat-5.5.9/webapps/iweb/roles/
находим внутри этого файла строку maxlength="3" и ставим 5
будет так:
Цитата:
maxlength="5"

сохраняем, запускаем сервер.
все, теперь в айвеб можно крутить левел до 30000
p.s.
Чтобы изменить статус персонажа нужно в поле Культивация поставить соответствующее число, напр. для статуса "Благочестивый" ставим 8.
Авторские права на данный материал принадлежат Пила и сайту usd.3dn.ru

Последний раз редактировалось Mag_i_str; 21.04.2010 в 10:20. Причина: Добавлено сообщение
Mag_i_str вне форума Отправить сообщение для Mag_i_str с помощью ICQ Отправить сообщение для Mag_i_str с помощью Skype™ Ответить с цитированием
Сказали спасибо: