Ru-MaNGOS

Ru-MaNGOS (http://mangos.ytdb.ru/index.php)
-   MaNGOS 0.12 (2.4.3) (http://mangos.ytdb.ru/forumdisplay.php?f=47)
-   -   MangosOne + Scriptdev2TBC (http://mangos.ytdb.ru/showthread.php?t=3699)

Mediv 26.01.2011 19:01

scriptdevtbc
 
Он вообще обновляется? У меня выдает кучу ошибок как синтаксических так и обычных.

У кого удалось собрать?

https://github.com/mangos/one
https://github.com/scriptdev/scriptdevtbc

Или че там у них со скриптами? Мб я не те скрипты взял)

Vladimir 27.01.2011 01:21

https://github.com/scriptdev/scriptdevtbc - неофициальное зеркало sd2 с примененым патчем совместимости с mangos one. Как и когда оно будет обновлятся ведомо только его создателю который куда-то запропал в последнии дни.

FreeBSD 28.01.2011 09:20

А не подскажите какая последняя ревизия scriptdev2 под TBC? чтоб подходила к ветке mangos one.

Vladimir 29.01.2011 05:52

Цитата:

Сообщение от FreeBSD (Сообщение 18814)
А не подскажите какая последняя ревизия scriptdev2 под TBC? чтоб подходила к ветке mangos one.

Вопрос некорректен. В репозитарии sd2 есть пачт которые позволяет поправить sd2 исходники до совместимости с mangos one. Естесвеено он переодически требует обновления что не всегда регулярно делается.

Mediv 03.02.2011 01:38

При компиляции mangos one с последней ревой scriptdevtbc выдает 6 ошибок. 3 удалось легко устранить.

С остальными хз че делать, С++ не знаю совсем... :sorry:

Может есть возможность что-то отрезать чтобы собралось? Я пробовал, не получилось =)))

Ошибка №1 - error C3861: GetScriptId: идентификатор не найден

Код:

//*********************************
//*** Functions used internally ***

void Script::RegisterSelf(bool bReportError)
{
    int id = GetScriptId(Name.c_str());
    if (id != 0)
    {
        m_scripts[id] = this;
        ++num_sc_scripts;
    }
    else
    {
        if (bReportError)
            error_log("SD2: Script registering but ScriptName %s is not assigned in database. Script will not be used.", (this)->Name.c_str());

        delete this;
    }
}

Ошибка №2 - error C3861: GetAreaTriggerScriptId: идентификатор не найден

Код:


MANGOS_DLL_EXPORT
bool AreaTrigger(Player* pPlayer, AreaTriggerEntry const* atEntry)
{
    Script *tmpscript = m_scripts[GetAreaTriggerScriptId(atEntry->id)];

    if (!tmpscript || !tmpscript->pAreaTrigger)
        return false;

    return tmpscript->pAreaTrigger(pPlayer, atEntry);
}

Ошибка №3 - error C3861: GetEventIdScriptId: идентификатор не найден


Код:


MANGOS_DLL_EXPORT
bool ProcessEvent(uint32 uiEventId, Object* pSource, Object* pTarget, bool bIsStart)
{
    Script *tmpscript = m_scripts[GetEventIdScriptId(uiEventId)];

    if (!tmpscript || !tmpscript->pProcessEventId)
        return false;

    // bIsStart may be false, when event is from taxi node events (arrival=false, departure=true)
    return tmpscript->pProcessEventId(uiEventId, pSource, pTarget, bIsStart);
}


NeatElves 03.02.2011 11:48

Для наглядности - https://github.com/mangos/mangos/com...61d43036345ff4

ltechik 10.02.2011 22:15

MangosOne + Scriptdev2TBC
 
Доброе время суток !
При сборке ядра WOW TBC [s0799] commit и ScriptDev2 TBC [ScriptDev2_1910_to_MaNGOS_0.12] последний коммит.
Вылетает целая серия ошибок :
№1
Код:

..\base\pet_ai.cpp(52) : error C2039: 'CanReachWithAttack' : is not a member of 'Creature'
        d:\ltechik\work\wow\ishodniki\git tbc\one\src\game\Creature.h(374) : see declaration of 'Creature'

№2
Код:

1>..\scripts\eastern_kingdoms\blackwing_lair\boss_vaelastrasz.cpp(183) : error C2248: 'Unit::CastSpell' : cannot access private member declared in class 'Unit'
1>        d:\ltechik\work\wow\ishodniki\git tbc\one\src\game\Unit.h(1822) : see declaration of 'Unit::CastSpell'
1>        d:\ltechik\work\wow\ishodniki\git tbc\one\src\game\Unit.h(1017) : see declaration of 'Unit'
1>..\scripts\eastern_kingdoms\blackwing_lair\boss_vaelastrasz.cpp(193) : error C2248: 'Unit::CastSpell' : cannot access private member declared in class 'Unit'
1>        d:\ltechik\work\wow\ishodniki\git tbc\one\src\game\Unit.h(1822) : see declaration of 'Unit::CastSpell'
1>        d:\ltechik\work\wow\ishodniki\git tbc\one\src\game\Unit.h(1017) : see declaration of 'Unit'

№3
Код:

1>..\scripts\outland\boss_doomwalker.cpp(70) : error C2248: 'Unit::CastSpell' : cannot access private member declared in class 'Unit'
1>        d:\ltechik\work\wow\ishodniki\git tbc\one\src\game\Unit.h(1822) : see declaration of 'Unit::CastSpell'
1>        d:\ltechik\work\wow\ishodniki\git tbc\one\src\game\Unit.h(1017) : see declaration of 'Unit'

№4
Код:

1>..\ScriptMgr.cpp(207) : error C3861: 'GetScriptId': identifier not found
1>..\ScriptMgr.cpp(428) : error C3861: 'GetAreaTriggerScriptId': identifier not found
1>..\ScriptMgr.cpp(439) : error C3861: 'GetEventIdScriptId': identifier not found
1>..\ScriptMgr.cpp(465) : error C3861: 'GetEventIdScriptId': identifier not found
1>..\ScriptMgr.cpp(474) : error C2598: linkage specification must be at global scope
1>..\ScriptMgr.cpp(475) : error C2601: 'ItemUse' : local function definitions are illegal
1>        ..\ScriptMgr.cpp(463): this line contains a '{' which has not yet been matched
1>..\ScriptMgr.cpp(484) : error C2598: linkage specification must be at global scope
1>..\ScriptMgr.cpp(485) : error C2601: 'EffectDummyCreature' : local function definitions are illegal
1>        ..\ScriptMgr.cpp(463): this line contains a '{' which has not yet been matched
1>..\ScriptMgr.cpp(495) : error C2598: linkage specification must be at global scope
1>..\ScriptMgr.cpp(496) : error C2601: 'EffectDummyGameObject' : local function definitions are illegal
1>        ..\ScriptMgr.cpp(463): this line contains a '{' which has not yet been matched
1>..\ScriptMgr.cpp(506) : error C2598: linkage specification must be at global scope
1>..\ScriptMgr.cpp(507) : error C2601: 'EffectDummyItem' : local function definitions are illegal
1>        ..\ScriptMgr.cpp(463): this line contains a '{' which has not yet been matched
1>..\ScriptMgr.cpp(517) : error C2598: linkage specification must be at global scope
1>..\ScriptMgr.cpp(518) : error C2601: 'AuraDummy' : local function definitions are illegal
1>        ..\ScriptMgr.cpp(463): this line contains a '{' which has not yet been matched
1>..\ScriptMgr.cpp(528) : error C2598: linkage specification must be at global scope
1>..\ScriptMgr.cpp(529) : error C2601: 'CreateInstanceData' : local function definitions are illegal
1>        ..\ScriptMgr.cpp(463): this line contains a '{' which has not yet been matched
1>..\ScriptMgr.cpp(540) : fatal error C1075: end of file found before the left brace '{' at '..\ScriptMgr.cpp(463)' was matched

При попытке самостоятельно разобраться в ошибках, путём редактирования или добавлением новых переменных из ревизий Mangos LichKing всё закончилось ничем. Война продолжается до сих пор , прошу помощи более опытных союзников. :swoon2:
Добавлено: PS. Может кто-то имеет свои соображения , от чего отталкиваться ?

Hantet 11.02.2011 13:20

В ScriptDev2 уже переписали код под master-ветку MaNGOS.
Ошибки возникают из-за того, что в mangos-one ещё не внесли изменения некоторых достаточно новых коммитов.

Можешь использовать связку из [s0793] и 1962 SD2.

anvd24 25.02.2011 15:50

сегодня пробовал собрать последнюю ревизию мангос ONE + ScriptDev2(тоже последняя).(патч на совместимость там же)
Базу мира использовал последнюю с YTDB под 0.12.

Все пропатчил, залил базу мира, пропатчил ее скульками, что идут в комплекте update(довел базу до состояния возможной загрузки), такого количества ошибок в логах DBErrors.log, я не видел никогда.
+ отъехали вообще все госипы, и почему то пропали в базе полностью.
В gossip_menu_options осталось 16 записей, после прогонки всех патчей на базу.
куча крика на ГО, на кричеров, на их вэйпоинты, на BGE(BattleGroundEvent), SD2-script_texts очень много ошибок.
В остальном, удивительно, но собралось и работает,кривовато в плане базы мира.

грешу на базу.
потому как больше не на что, ну и на голову с мозгами...

Vladimir 25.02.2011 16:18

Цитата:

Базу мира использовал последнюю с YTDB под 0.12.
Такого зверя _никогда_ не существовало. Была возможно версия под 2.4.3 для mangos master того времени, НО с того времени куча всего поменялась в структуре базы и пытаться ее использовать для Mangos one без длительной обработки напильником безсмыссленно. А говорить про госипы вообще лол. Они ввиде таблиц базы вообще в те времена даже в проекте не были.

Единственная известная мне база для Mangos One - http://tbc-db.sourceforge.net/

anvd24 26.02.2011 15:55

За ссылку спасибо уважаемый.
я пытался из http://svn2.assembla.com/svn/ytdbase...rev6928_TBC.7z этого собрать .
попробуем с вашей и божьей помощью использовать http://tbc-db.sourceforge.net/ .
а насчет госипов, лол не лол, бывает.:thank_you:

Еще раз огромное спасибо.

Vladimir 26.02.2011 20:05

Учитывая хотя-бы разницу в номерах иконок в POI и полях creature*_addon - база от 3.x не может работать _нормально_ на 2.x без обработки напильником.

Mediv 26.02.2011 20:09

Цитата:

Сообщение от Vladimir (Сообщение 19560)
Учитывая хотя-бы разницу в номерах иконок в POI и полях creature*_addon - база от 3.x не может работать _нормально_ на 2.x без обработки напильником.

Без напильника да, никуда) Но оно того стоит.

Vladimir 26.02.2011 20:14

Ну так и пишите явно - что окромя базы использовался напильник. И после обработки - это уже не YTDB как таковая.

YuruY 26.02.2011 21:12

Ну да, TBC у нас есть на SVN, финальная.
Когда перешли на Лича, мы ее долго потом поддерживали, пока не стало заинтересованных людей, со стороны пользователей (все что к тому моменту было, все внесено в фулл).

Vladimir 26.02.2011 22:11

Да, но структура One ближе к master чем к тому состоянию что было во времена master для 2.4.3.

anvd24 26.02.2011 22:53

уважаемые.
Я твердо могу заявить, что в данный момент, "прикрутить" базу, без танцев с бубном и напильником, нет никакой возможности, я об устаревшей базе, от уважаемой команды YTDB.

Так же, могу с уверенностью заявить, что всем тем, кто хочет сейчас танцевать с ONE, это крайне занятное мероприятие и для практики очень даже интересное.

Уважаемый tempura, вы как всегда в своем духе, что несомненно радует, желаю вам здоровья и всяческих благ, причем, в эти слова ни вложено ни капли сарказма, это от чистого сердца, как говорят.

В понедельник, испытаю способы предложенные в этой теме.
О результатах, несомненно доложу - что использовалось, в каком виде и с чем.

Всем огромное спасибо за комментарии.
Скорее всего с понедельника , нужна будет помощь,надеюсь найду в этой ветке поддержку.



anvd24 26.02.2011 23:11

Уважаемые.
Вопрос то стоял в том, что нужно для того, чтобы ONE был максимально приближен к рабочему состоянию.
То есть:
Исходники Mangos ONE + ScriptDev2 + база мира = рабочее состояние с минимальным количеством проблем.

Нет, я не к тому что мне подавайте все готовое и рабочее .
Обожаю танцы с бубном,напильником и другими шаманскими атрибутами.
Просто, возможно, есть информация.
Я с понедельника, готов поделиться всем, что найду, и естественно информацией, что из этого получилось.


Приходит время заводить бранчь на гите походу.
Кстати сразу вопрос, если все собрать в кучку, никто мне не скажет потом, что я злостный нарушитель авторских прав, и что то у кого то украл?

Vladimir 26.02.2011 23:33

Я только не понял, а использование базы специально созданой для mangos one - табу?

http://tbc-db.sourceforge.net/

Mediv 26.02.2011 23:35

http://rus-udb.googlecode.com/svn/trunk/

https://unifieddb.svn.sourceforge.ne...oot/unifieddb/

Добавлено через 1 минуту
Цитата:

Сообщение от Vladimir (Сообщение 19571)
Я только не понял, а использование базы специально созданой для mangos one - табу?

http://tbc-db.sourceforge.net/

http://sourceforge.net/projects/tbc-db/files/

И где файлы?

Vladimir 26.02.2011 23:38

Как и UDB релизы выкладываются через svn: http://tbc-db.svn.sourceforge.net/viewvc/tbc-db/ - никто файлы ручками не качает.

anvd24 26.02.2011 23:55

давайте дождемся понедельника.
Результаты будут к вечеру, обещаю.
За информацию еще раз спасибо.


tempura 27.02.2011 06:42

Цитата:

Сообщение от Mediv (Сообщение 19557)
И вообще, ваши бурления говн мне непонятны.

Согласен. Больше не буду.
По теме - удаляю все "бурление говн" от Mediv.
Самого его пока не буду - пусть побурлит.

anvd24 28.02.2011 09:30

Вложений: 1
ну что могу сказать.

Использовал https://tbc-db.svn.sourceforge.net/svnroot/tbc-db/

с начала фул.
Потом из папки все апдэйты.
Потом долил все аптдэйты из мангос one доведя базу до актуального состояния под запуск.

получил в итоге вот такое в логах.

На первый взгляд вроде как все ок.
Но, тренера опять же с госипами беда.

Надписи типа
GOSSIP_OPTION_TRAINER
GOSSIP_OPTION_UNLEARNTALLENTS

+ Гварды в городах и где либо, не указывают локации.
то есть жмешь, а нпс не отображает ничего кроме
WORLD: Received CMSG_GOSSIP_HELLO

в остальном завелось, работает.
Локаль РУ не поддерживает ибо все таблицы с локалями пустые.
Пока вот так.
лог загрузки сервера в аттаче.

апт*
Почему таблицы gossip_** почти все пустые.?
не могу понять(((
может есть идеи?



FG/

Таблица gossip_menu_options содержит 16 записей.
остальные таблицы пустые.
что делать не знаю,перепробовал уже множество вариантов.

Vladimir 28.02.2011 17:39

Вы точно установили 1.0.4_updatepack.sql - там были госипы доделаны
Так как у меня как раз с меню все нормально.

Mediv 28.02.2011 21:54

Цитата:

Сообщение от tempura (Сообщение 19582)
Согласен. Больше не буду.
По теме - удаляю все "бурление говн" от Mediv.
Самого его пока не буду - пусть побурлит.

Да от вас другого и не ждешь. Кстати я это уже давно написал, только долетело чтоли?

Добавлено через 54 секунды
Цитата:

Сообщение от anvd24 (Сообщение 19630)
ну что могу сказать.

Использовал https://tbc-db.svn.sourceforge.net/svnroot/tbc-db/

с начала фул.
Потом из папки все апдэйты.
Потом долил все аптдэйты из мангос one доведя базу до актуального состояния под запуск.

получил в итоге вот такое в логах.

На первый взгляд вроде как все ок.
Но, тренера опять же с госипами беда.

Надписи типа
GOSSIP_OPTION_TRAINER
GOSSIP_OPTION_UNLEARNTALLENTS

+ Гварды в городах и где либо, не указывают локации.
то есть жмешь, а нпс не отображает ничего кроме
WORLD: Received CMSG_GOSSIP_HELLO

в остальном завелось, работает.
Локаль РУ не поддерживает ибо все таблицы с локалями пустые.
Пока вот так.
лог загрузки сервера в аттаче.

апт*
Почему таблицы gossip_** почти все пустые.?
не могу понять(((
может есть идеи?



FG/

Таблица gossip_menu_options содержит 16 записей.
остальные таблицы пустые.
что делать не знаю,перепробовал уже множество вариантов.

Может что-то не так сделал?

Попробуй это --> TBCDB_1.0.4_MaNGOS_One_0793+

Vladimir 28.02.2011 23:06

Mediv, прекратите нести ахинею.
Все апдейты в TBC_DB защищены sql update order guards так же как и sql updates в ядре. Так что вы можете их применить только в порядке. Так что описание порядка установки базы у anvd24 правильное. Но у меня с gossips все нормально.

Кстати не забываем чистить WDB при обновлениях. Хотя это госсипов не касается работы вроде.

Mediv 28.02.2011 23:16

Цитата:

Сообщение от Vladimir (Сообщение 19646)
Mediv, прекратите нести ахинею.
Все апдейты в TBC_DB защищены sql update order guards так же как и sql updates в ядре. Так что вы можете их применить только в порядке. Так что описание порядка установки базы у anvd24 правильное. Но у меня с gossips все нормально.

Кстати не забываем чистить WDB при обновлениях. Хотя это госсипов не касается работы вроде.


anvd24 01.03.2011 10:54

Сегодня или завтра попробую еще раз и все по порядку.
Очень может быть, что я мог где то ошибиться.
Накатывал, как руками по порядку, так и скриптом.
Хотя вру, руками, на второй папке, уже устал и "глаза поехали".
Но скриптом, вливает без ошибок.
Я лучше, еще пару раз перепроверю.
Огромное спасибо за помощь.

Цитата:

Сообщение от Vladimir (Сообщение 19646)
Кстати не забываем чистить WDB при обновлениях. Хотя это госсипов не касается работы вроде.

Это единственное, чего я не делал.

Flahmod 29.04.2011 18:55

https://github.com/scriptdev/scriptdevtbc

Ссылка не действительная. Откуда тогда качать скриптдевы????

Mediv 12.05.2011 14:58

Ну наверное вот от сюда ---> https://scriptdev2.svn.sourceforge.n...ot/scriptdev2/

или отсюда --> https://github.com/scriptdev2/scriptdev2

Естественно нужно применить патч для 0.12

Mediv 20.08.2011 17:06

Со второй ссылки новые SD2 у меня не патчатся почему-то, если использовать черепашку.

Попробую руками позже.

1994 под мангос one допиливается с 2-х кликов.


Текущее время: 14:22. Часовой пояс GMT +3.

ru-mangos.ru - Русское сообщество MaNGOS