wl.illusion Опубликовано 19 января, 2013 Жалоба Поделиться Опубликовано 19 января, 2013 (изменено) [script][src][custom] Квас — один глоток сделает вас монстром Встречал на ЛюмиРо, очень понравилась идея. Описание Отличный мод для внесения кое-какого разнообразия в игру — из мобов выпадает особый предмет, который позволяет игроку принимать облик этого моба. Работает до перезахода в игру. Можно создавать интересные ивенты и квесты. Необходимо скачать PHP-скрипт для конвертации: conv_mobtosql.php (2.00) (после сохранения удалите расширение файла .txt) eA-скрипт для выпадения предметов: drop_kvass.txt Установка Правим только один файл src/map/pc.c, находим: sd->itemindex = n; Добавляем после: /* NeoTemple Extra - Kvass */if( sd->status.inventory[n].card[0] == 254 || sd->status.inventory[n].card[0] == 255 ) {pc_setglobalreg(sd, "useditemsign", ((sd->status.inventory[n].card[3]<<16)+sd->status.inventory[n].card[2]) );}/* end of NeoTemple Extra */ Готово, теперь нам нужно немного изменить базу предметов, открываем db/re/item_db.txt находим строку: 12233,Kvass,Kvass,0,20,,200,,,,,0xFFFFFFFF,7,2,,,,,,{ percentheal 100,100; },{},{} И заменяем её на: 12233,Kvass,Kvass,0,200,,50,,,,,0xFFFFFFFF,7,2,,,,,,{ disguise useditemsign-140000; },{},{} (настройки веса и стоимости продажи можете сами поменять на нужные вам) Шаманим с базой монстров Теперь нам понадобится скаченный ранее файлик .php, запускать его нужно на сервере, но для начала необходимо сделать настройки. В самом файле есть такие строчки: // Измените эти данные в соответствие с вашими настройками сервера MySQL$mysql_host = "localhost";$mysql_name = "ragnarok";$mysql_pass = "ragnarok";$mysql_db = "ragnarok";$chardb_start_id = 140000; // С какого ID будет стартовать список мобов$mob_account_id = 1999999; // ID аккаунта, которое выставляется для мобов Основные настройки — это данные для подключения к базе MySQL, внестите необходимые изменения в переменные: $mysql_host — сервер для подлючения к MySQL $mysql_name — имя пользователя MySQL $mysql_pass — пароль $mysql_db — название базы данных Следующие две переменных можно не изменять, но всё равно расскажу о них: $chardb_start_id — каждый персонаж имеет уникальный ID, чтобы подпись к предмету работала, нам нужно создать псевдо-персонажей с именами монстров, с данного ID они будут начинаться (если не знаете, что это, то настоятельно рекомендую ничего не менять) $mob_account_id — у персонажей должен быть уникальный аккаунт, это идентификатор (тоже самое предупреждение, что и в предыдущем пункте) Так же необходимо поместить вместе с файлом и файл базы монстров — mob_db.txt. Если создание пройдёт успешно, то мы увидим на экране заветное: All Done Остаётся только подгрузить скрипт выпадения предметов: - script kvassDrop -1,{OnNPCKillEvent:if (rand(10000) <= 40) {set .@itemdrop, killedrid+140000;getitem2 12233,1,1,4,0,254,0,.@itemdrop&0xffff,(.@itemdrop>>16)&0xffff;}end;} И всё будет готово, в скрипте выставлен шанс выпадения предмета 0.40 (<= 40), вы можете поменять его на любое удобное для вас. Как это работает Небольшой сорц-мод создаёт глобальную переменную персонажа: useditemsign — это сделано потому, что разработчики eA не сильно заботились мыслью о том, что кому-то могут понадобиться данные об используемом предмете внутри скрипта предмета. Более того, если предмет последний в инвентаре, то до вызова скрипта будут удалены его данные и даже зная его порядковый номер в инвентаре уже ничего нельзя получить. Поэтому, данная переменная сразу делает то, что нам нужно — вычисляет ID подписанного персонажа (в нашем случае — это псевдо-персонаж с ID монстра). Но данный фикс был бы неполный, если бы не скрипт выпадения предмета, который создаёт данную подпись персонажа. Впринципе, можно немного дописать скрипт и сделать, чтобы изменение сохранялось (допустим) на продолжительный срок даже после перезахода. Перспективы тут достаточно интересные. Изменено 14 марта, 2015 пользователем wl.illusion 5 Ссылка на комментарий Поделиться на другие сайты Поделиться
unknown Опубликовано 19 января, 2013 Жалоба Поделиться Опубликовано 19 января, 2013 Спасибо за данный мод. Только возник вопрос на счет пшп скрипта. Как запустить? Если можно чуток поподробнее. Спасибо. Ссылка на комментарий Поделиться на другие сайты Поделиться
wl.illusion Опубликовано 19 января, 2013 Автор Жалоба Поделиться Опубликовано 19 января, 2013 (изменено) Спасибо за данный мод. Только возник вопрос на счет пшп скрипта. Как запустить? Если можно чуток поподробнее. Спасибо.Если у вас купленный хостинг, то там скорее всего уже есть php, тогда просто копируйте файл и mob_db.txt на сервер. Если у вас там уже крутится какой-то сайт, то просто поместите в корень папки с сайтом и выполните <url сайта>/conv_mobtosql.php (не забудьте потом удалить файлы), если у вас есть SSH доступ и вы знаете что это такое и как им примерно пользоваться, то можно выполнить консольную команду:php conv_mobtosql.phpНужно находиться в директории с файлом, разумеется. В остальном установка зависит от того, каким хостингом вы обладает, что за ПО там стоит. Изменено 19 января, 2013 пользователем wl.illusion 1 Ссылка на комментарий Поделиться на другие сайты Поделиться
exXtaZzy Опубликовано 29 июня, 2014 Жалоба Поделиться Опубликовано 29 июня, 2014 ыыыы прикольная вещь) Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения