|
Новичкам Информация для всех новичков, новичкам рекомендуется задавать свои вопросы здесь |
|
Опции темы | Поиск в этой теме | Опции просмотра |
22.06.2010, 19:54 | #1 |
Гость
Сообщений: n/a
|
Патчи на scriptdev2: поиск, адаптация, применение.
Доброго временисуток!
Спасибо форумчанам за замечательный мануал по компиляции и настройке сервера на базе Linux. Не совсем сразу, но разобрался. Теперь встал вопрос о наполении боссов "смыслом". Насколько я понял за это отвечяет (в смысле самих моделей поведения) scriptdev2 и еще определенная часть базы, которая наполняет это поведение конкретными параметрами (цифрами). Ну редактирование базы - кропотливый, сложный, но понятный процесс, тем более, что мануалов на данную тему довольно много. А вот с патчами на сам scriptdev2 у меня заминка. На данном этапе выделил для себя несклько вопросов: 1) Существуют-ли централизованные хранилища этих самых патчей, как например git для мангоса? (по данному вопросу "нагуглил" только ScriptDev2.com но если честно, то запутался в нем, если можно "ткните носом" буду благодарен) 2) На какие "внешние" параметры нужно смотреть при выборе патча (в данном случае имею ввиду ревизию scriptdev2 или, другие важные параметры, если они есть) ? 3) Существуют ли (доступные новичку) способы адаптации патчей под новые ревизии scriptdev2 ? Последний раз редактировалось Imitator; 22.06.2010 в 21:48. |
22.06.2010, 21:06 | #2 |
Ученый
|
Не совсем понял, что именно необходимо, патчи для SD2 или же сам SD2?
1) http://github.com/scriptdev2/scriptdev2 2) Даже не знаю, уступлю другим ответить на этот пункт 3) SD2 практически не привередлив к ревизиям MaNGOS.
__________________
Галя: Вот почему когда я пуск делаю и по ярлыку две то запускается, а если вот мне к примеру надо не из пуска её то ничего и в красном показывает, а надо ведь чтобы квадратик жёлтенький открывал и там 3 кнопки должно быть? admin: О Боже! admin: Кто-нибудь, пришлите ко мне уборщицу, пусть мой мозг со стен и потолка отмоет |
22.06.2010, 21:47 | #3 | |
Гость
Сообщений: n/a
|
Цитата:
По п.3 видимо я некорректно выразился - не под патчи ядра, а под ревизии scriptdev2. Поправил первоначальный пост. |
|
22.06.2010, 22:07 | #4 |
Ученый
|
Ок.
1. немного тут: http://ru-mangos.ru/forumdisplay.php?f=19 и очень много тут: http://scriptdev2.com и тут: http://getmangos.com/community/ 3. ScriptDev2 довольно редко обновляется, к тому же в основном у них нет кардинальных изменений, потребовавших бы обновления некоторых патчей, они в основном дополняют функционал, но не изменяют существующий. Если вы имеете рабочий патч под ревизию SD2 0007 и нужно его подогнать под ревизию 0008, то необходимо залезть на репозиторий SD2, открыть лог изменений с версии 0007 на 0008, посмотреть что/где/как/чем изменилось и сделать соответствующие правки в patch-файле.
__________________
Галя: Вот почему когда я пуск делаю и по ярлыку две то запускается, а если вот мне к примеру надо не из пуска её то ничего и в красном показывает, а надо ведь чтобы квадратик жёлтенький открывал и там 3 кнопки должно быть? admin: О Боже! admin: Кто-нибудь, пришлите ко мне уборщицу, пусть мой мозг со стен и потолка отмоет |
22.06.2010, 22:47 | #5 |
Гость
Сообщений: n/a
|
Угу. А теперь вопрос, за который прошу "не бросать в меня тапками", ибо учусь.
На scriptdev2.com я нахожу интересующего меня босса, например Лотхиб. В теме посвященной этому боссу http://www.scriptdev2.com/project.php?issueid=905 я вижу SQL запрос для базы scriptdev2 и ссылку на cpp-файл -> http://paste2.org/p/733173 Мои действия для того, чтобы этот босс в новой сборке заработал: 1) Меняю соответствующий cpp-файл в scriptdev2/scripts/northrend/naxxaramas 2) Компилю новое ядро 3) Выполняю вышеупомянутый SQL запрос Или этого недостаточно ? Есть ли нюансы? |
22.06.2010, 22:51 | #6 |
Ученый
|
Да, этого достаточно.
Главное не забыть зарегистрировать скрипт в файле ScriptLoader.cpp Если автор патча (темы) не указал нюансов - значит их нет (по крайней мере вышеупомянутых трёх пунктов достаточно). Стоп-стоп-стоп. Вы привели патч-файл. Это не есть то, чем нужно заменять существующий cpp-шник. Его нужно применять гитом с помощью команды patch -p1 < patch_name.patch
__________________
Галя: Вот почему когда я пуск делаю и по ярлыку две то запускается, а если вот мне к примеру надо не из пуска её то ничего и в красном показывает, а надо ведь чтобы квадратик жёлтенький открывал и там 3 кнопки должно быть? admin: О Боже! admin: Кто-нибудь, пришлите ко мне уборщицу, пусть мой мозг со стен и потолка отмоет Последний раз редактировалось Hantet; 22.06.2010 в 22:55. |
23.06.2010, 00:37 | #7 |
Forum bot
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
|
И сразу в дополнение:
Imitator Если вы готовы заняться интересной работой - собрать и проверить все доступные и работоспособные патчи на SD2, то мы готовы эту вашу работу предоставить в пользование RMDC. Пока никто этим не занимался. Какие-то личные кусочки выложены: http://ytdb.ru/Yuriy/patches/sd2/ http://ru-mangos.ru/files/ Но полноценного, проверенного, рабочего и, по возможности - полного, собрания не существует. Вот еще репозиторий весь в патчах. http://github.com/insider42/scriptdev2
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
23.06.2010, 00:38 | #8 | |
Пользователь
|
Цитата:
Также будет достаточно перекомпилировать sd2, а ядро можно оставить в покое. Безусловно все sql файлы нужно заливать на базу. Плюс ко всему, нужно обращать внимание на ревизию ядра и сд2, под которые сделан скрипт, так как с новой ревизией он может неработать или работать неполностью. |
|
23.06.2010, 00:43 | #9 |
Forum bot
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
|
Вот это, кстати, верно в общем, но не в каждом отдельном случае... Бывают нюансы...
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
23.06.2010, 21:00 | #10 | |
Гость
Сообщений: n/a
|
Цитата:
Итак , посоветовали взять патчи с http://github.com/frostzhenya/mangos_patch. В принципе "побегав" там какое-то время осознал, что нужно учиться откатывать версии. При помощи git reset --hard HEAD~x. Получив нужные версии исходников ядра и scriptdev-а я смело накатил патчи при помощи patch -p1 < patch_name.patch К моему великому удивлению ошибок при накатывании патчей не было. Уже обрадовавшись, "вот он первый шар" я смело запустил компиляцию ядра. Когда счастье было так близко сборка прервалась с ошибками. Прикрепляю файлик с текстом ошибки eror_mangos_FROST_FAIL.txt и два других на которые, как мне кажется, он ругается DatabaseMysql_h.txt QueryResultMysql_h.txt Как и что мне нужно исправить в данной ситуации ? |
|
24.06.2010, 23:10 | #12 | |
Forum bot
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
|
Цитата:
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
|
24.06.2010, 23:14 | #13 |
Гость
Сообщений: n/a
|
Эх... А проблемой хреновой масштабируемости из-за отсутствия multithreading/miltiprocessing и крашами заняться не хотите, при таком-то рвении к работе? А то все патчи SD2 да патчи на спеллы (читай, свистоперделки второстепенной важности)
|
25.06.2010, 13:31 | #14 |
Forum bot
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
|
Да в принципе - хрен с ней, с масштабируемостью, коли знаний на нее не хватает. Но собрать например все сторонние патчи SD2 на инстансы - и с форума, и откуда там еще получится, подогнать их под актуальную ревизию - уже неплохой задел на будущее. Может потом из такой коллекции получится все-все на форум sd2 высыпать - и пусть они там принимают.
У нас тут на форуме rsa, MaxXx2021, еще кто-то - пишут патчи на инстансы. Даже просто собрать их в один большой комок - уже хорошо. Тут всего несколько патчей, найти и добавить десяток - уже хорошо.
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
26.06.2010, 12:04 | #15 |
Гость
Сообщений: n/a
|
Эх, после раздумий на счет происхождения исходников решил "уйти в себя" и занялся тестом. Результат не порадовал - вышеупомянутые ошибки возникают в 100% случаев, если на исходники наложены какие-то патчи. Даже если я беру отлаженные исходники от Insider42 ...
Вот сижу теперь и думаю, стоит ли разобраться что не так, или просто перевести машину на windows ибо по ним все собирается хорошо и проблем не возникает ... Или может кто-нибудь из linux-оводов сталкивался уже с такими ошибочками ? |
26.06.2010, 12:17 | #16 |
Умный
Старожил
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
|
Ответь для себя на простой вопрос: тебе действительно нужен линукс? Если да - постигай азы и ищи ошибки, исправляй их. Если нет - не мучайся и переходи на "форточки"
|
26.06.2010, 17:54 | #17 |
Пользователь
Регистрация: 07.03.2010
Сообщений: 79
Сказал(а) спасибо: 3
Поблагодарили 10 раз(а) в 8 сообщениях
|
Все дело в том, что в основном люди сидят на Win, соответственно и пишут на ней. Следовательно, не знают, что некоторые вещи не будут работать на Unix платформе. В Win вы спокойно можете использовать разный регистр, а в Unix нет. Есть функции, которые будут работать только под win, как и некоторые только в Unix. Поэтому-то у вас и проблемы. Кстати есть флаги оптимизации. Пробуйте к примеру с CFLAGS=-O0 CXXFLAGS=-O0. Тут нужно пробывать и самому учиться писать на c++ и отлаживать. Зато в дальнейшем вы будете вознаграждены. Win и Unix по возможностям держания сервера не сравнимы. Я держал сервер и на том и на том. Настроенный Unix это гоночный болид, а Win - телега.
|
30.06.2010, 20:08 | #18 |
Гость
Сообщений: n/a
|
В принципе про все это я догадываюсь. Получив информацию про разных авторов остановился на RSA. Замечательные исходники, ни одной ошибочки при компиляции!!! Но есть два вопроса при запуске сервера выдает следующие ошибки:
1) Код:
2010-06-28 13:11:39 2010-06-28 13:11:39 MMM MMM MM 2010-06-28 13:11:39 M MM M M M M 2010-06-28 13:11:39 MM M M M 2010-06-28 13:11:39 MMM M M M 2010-06-28 13:11:39 MM M M MMMM 2010-06-28 13:11:39 MM M M M 2010-06-28 13:11:39 MMM MMM http://www.scriptdev2.com 2010-06-28 13:11:39 2010-06-28 13:11:39 SD2: Using configuration file /misc/srv/core/etc/scriptdev2.conf 2010-06-28 13:11:39 ERROR:SD2: Configuration file version doesn't match expected version. Some config variables may be wrong or missing. Код:
2010-06-28 13:11:39 ERROR:SD2: Script registering but ScriptName npc_arena_honor is not assigned in database. Script will not be used. 2010-06-28 13:11:39 ERROR:SD2: Script registering but ScriptName teleguy is not assigned in database. Script will not be used. 2010-06-28 13:11:39 ERROR:SD2: Script registering but ScriptName npc_mirror_image is not assigned in database. Script will not be used. 2010-06-28 13:11:39 ERROR:SD2: Script registering but ScriptName npc_snake_trap_serpents is not assigned in database. Script will not be used. 2010-06-28 13:11:39 ERROR:SD2: Script registering but ScriptName npc_runeblade is not assigned in database. Script will not be used. |
30.06.2010, 20:11 | #19 | |
Ученый
|
Цитата:
Add:
__________________
Галя: Вот почему когда я пуск делаю и по ярлыку две то запускается, а если вот мне к примеру надо не из пуска её то ничего и в красном показывает, а надо ведь чтобы квадратик жёлтенький открывал и там 3 кнопки должно быть? admin: О Боже! admin: Кто-нибудь, пришлите ко мне уборщицу, пусть мой мозг со стен и потолка отмоет Последний раз редактировалось Hantet; 30.06.2010 в 22:48. |
|
30.06.2010, 20:35 | #20 |
Умный
Старожил
Регистрация: 06.03.2010
Сообщений: 886
Сказал(а) спасибо: 698
Поблагодарили 433 раз(а) в 181 сообщениях
Записей в дневнике: 4
|
Три для на обучение пользования переводчиком и включения логики...
Хантет - ни к чему уподобляться вовжопе и использовать такие цвета и шрифты... |
06.07.2010, 20:47 | #21 |
Гость
Сообщений: n/a
|
Выполнил все пожелания.
Действительно подправил большинство боссов вплоть до ИЧ, ИК и ЦЛК. Дальше столкнулся с проблемой - несмотря на то, что скрипт в базе для босса прописан, он (босс) не действует по этому скрипту. При этом в логе сервера выдается куча ошибок типа (пример взят для http://ru.wowhead.com/npc=36855): Код:
BSW: spell 70842 not found in boss 36855 spelltable. Memory or database error? Подскажите о какой ошибке памяти или базы данных говориться в логах сервера? |
06.07.2010, 20:51 | #22 |
YTDB Dev
Регистрация: 06.03.2010
Сообщений: 259
Сказал(а) спасибо: 28
Поблагодарили 280 раз(а) в 136 сообщениях
|
Вы бы у автора BSW спросили бы идею..) http://github.com/rsa/scriptdev2/blo...scriptdev2.sql
Последний раз редактировалось NeatElves; 06.07.2010 в 20:54. |
06.07.2010, 21:01 | #23 | |
Гость
Сообщений: n/a
|
Цитата:
Спасибо огромное, что "ткнули носом" в очевидное, как обычно "за деревьями не видно леса ...". Еще маленький вопросик - после применения скриптов в таблице boss_spell_table появились данные для боссов вплоть до ЦЛК. Я снова что-то упустил или нужно просто дождаться, пока автор дополнит свои великолепные (без сарказма и издевки) исходники? Последний раз редактировалось Imitator; 06.07.2010 в 22:07. |
|
07.07.2010, 20:32 | #24 |
Почетный флудер
Старожил
Регистрация: 08.03.2010
Адрес: Мурманск, Россия
Сообщений: 788
Сказал(а) спасибо: 55
Поблагодарили 333 раз(а) в 151 сообщениях
Записей в дневнике: 1
|
ЦЛК уже месяц как работает полностью. Потихоньку догоняю боссов до макс. возможного оффлайка. Вот только если я буду обучать всех подряд как SQL в базу засунуть (а мне некоторые дни по 120 писем, в т.ч. на китайском, в ящики падают) то точно никогда не закончу...
|
07.07.2010, 22:19 | #25 |
Forum bot
Регистрация: 01.02.2010
Адрес: пусто
Сообщений: 841
Сказал(а) спасибо: 286
Поблагодарили 418 раз(а) в 190 сообщениях
Записей в дневнике: 60
|
Это не письма - это спам. фризь этот ящик, заводи другой, и не свети им на всех углах.
__________________
Совершенно безопасен для людей, обладающих хотя бы некоторыми минимальными зачатками интеллекта, и способными строить причинно-следственные цепочки. |
07.07.2010, 22:21 | #26 | |
Гость
Сообщений: n/a
|
Цитата:
Всем спасибо за помощь! С вопросом, из-за которого создавал эту тему, разобрался (по крайней мере цели достиг ). |
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Патчи, сорцы, дополнительная информация | anemak | MaNGOS 0.12 (2.4.3) | 4 | 21.10.2011 15:16 |
научиться накатывать патчи на ядро | qGosha | Новичкам | 2 | 26.07.2010 02:54 |
Поиск потерянного | DeusModus | Флудильня | 37 | 09.07.2010 12:26 |
Поиск подземелья | Chestarfild | Опкоды | 15 | 24.05.2010 22:43 |
Поиск знатока | Archon64 | Флудильня | 9 | 04.05.2010 10:28 |