+ Ответить в теме
Показано с 1 по 11 из 11

Тема: [Решено] Как правильно задать порядок выполнения миссий ИИ юнитами.

  1. #1

    [Решено] Как правильно задать порядок выполнения миссий ИИ юнитами.

    Вообще, хотел опубликовать одно замечания для людей, кто возьмётся работать с тем же, на что я сегодня убил целый вечер. Но подумал, что каждый раз плодить такие темы тоже не стоит, а вот один раздел с такими замечаниями кому-то наверное поможет. В общем, предлагаю сюда постить всякие особенности разработки, которыми вы считаете нужным поделиться с другими разработчиками. Если, конечно, модераторы не против

    В общем, теперь про само замечание. Делал сегодня нового юнита, которому нужна своя миссия и свой АИ. Долго не мог заставить АИ юзать прописанную мной стратегию, хотя никаких ошибок в логике найти не получалось.
    Оказалось, что при считывании XML важен порядок следования описателей. Конкретно для миссий и стратегий АИ. То есть, последовательность описателей в XML и в дефайнах SDK должна совпадать, иначе весь ряд смещается и ваши юниты будут выбирать не ту стратегию и выполнять не те миссии.

    С уважением, Волод.
    продвинь это сообщение в соцсеть:  

  2. #2
    <div class='quotetop'>Цитата(Волод * 30.1.2010, 19:10) [snapback]323613[/snapback]</div>
    Вообще, хотел опубликовать одно замечания для людей, кто возьмётся работать с тем же, на что я сегодня убил целый вечер. Но подумал, что каждый раз плодить такие темы тоже не стоит, а вот один раздел с такими замечаниями кому-то наверное поможет. В общем, предлагаю сюда постить всякие особенности разработки, которыми вы считаете нужным поделиться с другими разработчиками. Если, конечно, модераторы не против

    В общем, теперь про само замечание. Делал сегодня нового юнита, которому нужна своя миссия и свой АИ. Долго не мог заставить АИ юзать прописанную мной стратегию, хотя никаких ошибок в логике найти не получалось.
    Оказалось, что при считывании XML важен порядок следования описателей. Конкретно для миссий и стратегий АИ. То есть, последовательность описателей в XML и в дефайнах SDK должна совпадать, иначе весь ряд смещается и ваши юниты будут выбирать не ту стратегию и выполнять не те миссии.

    С уважением, Волод.
    [/b]
    Добавлю,что это касается не только миссий,но и всего остального,что прописано одновременно в CvEnums.h и в xml-файлах.
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  3. #3
    Ещё одно замечание, касательно добавления зависящих от порядка объектов.

    Добавлять следует в конец списка, иначе смещается очередь вызовов анимаций. Например, у меня при добавлении новой миссии сразу после FORTIFY перестали проигрываться анимации боя. Но если добавлять в конец списка, всё проигрывается нормально.

    С уважением, Волод.
    продвинь это сообщение в соцсеть:  

  4. #4
    идейный враг всяких трансформероB

    Аватар для Snake_B


    Регистрация
    14.09.2007
    Адрес
    Донецк-Камчатка....
    Сообщений
    13,314
    <div class='quotetop'>Цитата(Волод * 30.1.2010, 20:10) [snapback]323613[/snapback]</div>
    В общем, теперь про само замечание. Делал сегодня нового юнита, которому нужна своя миссия и свой АИ. Долго не мог заставить АИ юзать прописанную мной стратегию, хотя никаких ошибок в логике найти не получалось.
    Оказалось, что при считывании XML важен порядок следования описателей. Конкретно для миссий и стратегий АИ. То есть, последовательность описателей в XML и в дефайнах SDK должна совпадать, иначе весь ряд смещается и ваши юниты будут выбирать не ту стратегию и выполнять не те миссии.
    [/b]
    т.е., если я правильно понял, вот это должно быть по порядку:
    [code]
    продвинь это сообщение в соцсеть:  

  5. #5
    <div class='quotetop'>Цитата(Snake_B * 6.2.2010, 12:31) [snapback]324220[/snapback]</div>
    а можно тогда написать какой порядок в SDK (чтобы не искать)?
    [/b]
    Можно. В файлах Enums.h, CvGameCoreUtils.cpp и CyEnumsInterface.cpp.
    продвинь это сообщение в соцсеть:  

  6. #6
    идейный враг всяких трансформероB

    Аватар для Snake_B


    Регистрация
    14.09.2007
    Адрес
    Донецк-Камчатка....
    Сообщений
    13,314
    <div class='quotetop'>Цитата(Волод * 6.2.2010, 19:34) [snapback]324263[/snapback]</div>
    <div class='quotetop'>Цитата(Snake_B * 6.2.2010, 12:31) [snapback]324220[/snapback]
    а можно тогда написать какой порядок в SDK (чтобы не искать)?
    [/b]
    Можно. В файлах Enums.h, CvGameCoreUtils.cpp и CyEnumsInterface.cpp.
    [/b][/quote]

    [code]
    продвинь это сообщение в соцсеть:  

  7. #7
    Это в CvGameCoreUtils.cpp
    продвинь это сообщение в соцсеть:  

  8. #8
    Как раз здесь порядок не важен. Важно его соблюсти в CvEnums.h :
    [code]enum UnitAITypes
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  9. #9
    идейный враг всяких трансформероB

    Аватар для Snake_B


    Регистрация
    14.09.2007
    Адрес
    Донецк-Камчатка....
    Сообщений
    13,314
    <div class='quotetop'>Цитата(Пашок * 6.2.2010, 21:55) [snapback]324290[/snapback]</div>
    Как раз здесь порядок не важен. Важно его соблюсти в CvEnums.h :
    [/b]
    так ребят, не разгоняемся... мне SDK модинг не интересует... мне интересно в каком порядке надо писать в xml.... а порядок в обоих примерах одинаковый...
    продвинь это сообщение в соцсеть:  

  10. #10
    <div class='quotetop'>Цитата(Snake_B * 6.2.2010, 21:24) [snapback]324292[/snapback]</div>
    <div class='quotetop'>Цитата(Пашок * 6.2.2010, 21:55) [snapback]324290[/snapback]
    Как раз здесь порядок не важен. Важно его соблюсти в CvEnums.h :
    [/b]
    так ребят, не разгоняемся... мне SDK модинг не интересует... мне интересно в каком порядке надо писать в xml.... а порядок в обоих примерах одинаковый...
    [/b][/quote]
    Берём порядок в CvEnums.h и в соответствии с ним упорядочиваем xml. А добавлять действительно лучше в конец списка,мало ли ещё какие тонкости нам неизвестны.
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  11. #11


    <div class='quotetop'>Цитата(Пашок * 6.2.2010, 22:28) [snapback]324310[/snapback]</div>
    Берём порядок в CvEnums.h и в соответствии с ним упорядочиваем xml. А добавлять действительно лучше в конец списка,мало ли ещё какие тонкости нам неизвестны.[/b]
    Добавлять обязательно перед NUM_UNITAI_TYPES
    продвинь это сообщение в соцсеть:  
    Если новые технологии позволяют обходится без услуг простых людей - это прогресс, а если новые технологии позволяют обходится без услуг миллионеров и крупных компаний - это нарушение авторских прав.
    Мой мод

+ Ответить в теме

Похожие темы

  1. Как задать очередь производства?
    от QuibinG в разделе Civ4 - Игровые вопросы
    Ответов: 2
    Новое: 03.07.2009, 15:55
  2. Немогу задать настройки игре! ХЕЛП ПЛИЗ!
    от LusefeRUS в разделе Civ4 - Технические вопросы
    Ответов: 7
    Новое: 02.03.2006, 21:31
  3. Изучение шпионских миссий
    от General в разделе Civ3 - Стратегия игры
    Ответов: 3
    Новое: 10.05.2005, 11:14

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
Рейтинг@Mail.ru

free counters