+ Ответить в теме
Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 20 из 21

Тема: Помогите с SDK

  1. #1
    Никак не могу наладить работу с CodeBlocks и получить CvGameCoreDLL.dll. Выскакивает одна и та же ошибка. Чувствую,что всё очень просто,просто я ещё лох в этом . Знающие люди,помогите,пожалуйста. Вот лог:
    -------------- Build: Final Release Win32 in CvGameCoreDLL ---------------

    CvArea.cpp
    CvArtFileMgr.cpp
    CvCity.cpp
    CvCityAI.cpp
    CvDLLButtonPopup.cpp
    CvDLLEntity.cpp
    CvDLLPython.cpp
    CvDLLWidgetData.cpp
    CvDeal.cpp
    CvDiploParameters.cpp
    CvFractal.cpp
    CvGame.cpp
    CvGameAI.cpp
    CvGameCoreDLL.cpp
    CvGameCoreUtils.cpp
    CvGameInterface.cpp
    CvGameTextMgr.cpp
    CvGlobals.cpp
    CvHallOfFameInfo.cpp
    CvInfoWater.cpp
    CvInfos.cpp
    CvInitCore.cpp
    CvMap.cpp
    CvMapGenerator.cpp
    CvPlayer.cpp
    CvPlayerAI.cpp
    CvPlot.cpp
    CvPlotGroup.cpp
    CvPopupInfo.cpp
    CvPopupReturn.cpp
    CvRandom.cpp
    CvReplayInfo.cpp
    CvReplayMessage.cpp
    CvSelectionGroup.cpp
    CvSelectionGroupAI.cpp
    CvStructs.cpp
    CvTalkingHeadMessage.cpp
    CvTeam.cpp
    CvTeamAI.cpp
    CvUnit.cpp
    CvUnitAI.cpp
    CvXMLLoadUtility.cpp
    CvXMLLoadUtilityGet.cpp
    CvXMLLoadUtilityInit.cpp
    CvXMLLoadUtilitySet.cpp
    CyArea.cpp
    CyAreaInterface.cpp
    CyArgsList.cpp
    CyArtFileMgr.cpp
    CyArtFileMgrInterface.cpp
    CyCity.cpp
    CyCityInterface1.cpp
    CyDeal.cpp
    CyEnumsInterface.cpp
    CyGame.cpp
    CyGameCoreUtils.cpp
    CyGameCoreUtilsInterface.cpp
    CyGameInterface.cpp
    CyGameTextMgr.cpp
    CyGameTextMgrInterface.cpp
    CyGlobalContext.cpp
    CyGlobalContextInterface1.cpp
    CyGlobalContextInterface2.cpp
    CyGlobalContextInterface3.cpp
    CyGlobalContextInterface4.cpp
    CyHallOfFameInfo.cpp
    CyHallOfFameInterface.cpp
    CyInfoInterface1.cpp
    CyInfoInterface2.cpp
    CyInfoInterface3.cpp
    CyMap.cpp
    CyMapGenerator.cpp
    CyMapGeneratorInterface.cpp
    CyMapInterface.cpp
    CyPlayer.cpp
    CyPlayerInterface1.cpp
    CyPlayerInterface2.cpp
    CyPlot.cpp
    CyPlotInterface1.cpp
    CyRandomInterface.cpp
    CyReplayInfo.cpp
    CySelectionGroup.cpp
    CySelectionGroupInterface.cpp
    CyStructsInterface1.cpp
    CyTeam.cpp
    CyTeamInterface.cpp
    CyUnit.cpp
    CyUnitInterface1.cpp
    FAssert.cpp
    FDialogTemplate.cpp
    _precompile.cpp
    Linking dynamic library: ..\Beyond the Sword\Assets\CvGameCoreDLL.dll
    LINK : fatal error LNK1181: cannot open input file 'Files\Microsoft.obj'
    Process terminated with status 1181 (15 minutes, 31 seconds)
    1 errors, 0 warnings


    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  2. #2
    Super Moderator

    Аватар для Gromozeka


    Регистрация
    13.10.2005
    Адрес
    Бердск Новосибирской обл.
    Сообщений
    4,185
    Версия проги на которой это делаешь?
    продвинь это сообщение в соцсеть:  
    Любая сложная проблема имеет простое, доступное для понимания неправильное решение (Закон Мерфи)

  3. #3
    <div class='quotetop'>Цитата(Gromozeka * 17.11.2008, 18:35) [snapback]268629[/snapback]</div>
    Версия проги на которой это делаешь?
    [/b]
    VC++ Toolkit 2003
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  4. #4
    Пашок, конкретно по ошибке ничего сказать не могу, не разбираюсь в деталях. Но устанавливал "бесплатный вариант" по этой инструкции - все работает в итоге. Там надо не забыть для BtS убрать лишние флаги и опции, как указано в конце. Возможно, в них дело...
    продвинь это сообщение в соцсеть:  

  5. #5
    <div class='quotetop'>Цитата(NeverMind * 17.11.2008, 22:56) [snapback]268657[/snapback]</div>
    Пашок, конкретно по ошибке ничего сказать не могу, не разбираюсь в деталях. Но устанавливал "бесплатный вариант" по этой инструкции - все работает в итоге. Там надо не забыть для BtS убрать лишние флаги и опции, как указано в конце. Возможно, в них дело...
    [/b]
    Да вот и я по ней делаю,только не получается
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  6. #6
    <div class='quotetop'>Цитата(Пашок * 18.11.2008, 1:34) [snapback]268684[/snapback]</div>
    <div class='quotetop'>Цитата(NeverMind * 17.11.2008, 22:56) [snapback]268657[/snapback]
    Пашок, конкретно по ошибке ничего сказать не могу, не разбираюсь в деталях. Но устанавливал "бесплатный вариант" по этой инструкции - все работает в итоге. Там надо не забыть для BtS убрать лишние флаги и опции, как указано в конце. Возможно, в них дело...
    [/b]
    Да вот и я по ней делаю,только не получается
    [/b][/quote]

    там же сказано как побороть

    <div class='quotetop'>Цитата</div>
    Well I am at my wits end here, I keep getting the same error that ?Eclipse? got a page ago (wonder if he ever resolved it?)

    fatal error LNK1181: cannot open input file &#39;C:\Program Files\Microsoft Visual C++ Toolkit 2003\Lib.obj

    I am shure the pathway is correct I pasted it from its installed location. What confuses me is why its trying to open the lib directory as a .obj file? I tried using C:\Program Files\Microsoft Visual C++ Toolkit 2003\Lib\ to try to make it desend into the lib directory but this gives me an even more confusing

    canot open input file &#39;Files\Microsoft.obj&#39;

    Code Blocks is clearly insane[/b]
    <div class='quotetop'>Цитата</div>
    I know I got exactly that error when I tried to install. The issue was I had entered something incorrectly in the codeblocks configuration (so many of the dialog boxes are called the same thing). I wish i could remember exactly which one I entered incorrectly.

    I went back and added screenshots at each of the configuration steps in the 1st post, hopefully that helps.[/b]
    <div class='quotetop'>Цитата</div>
    Finaly it works, I whet in and deleted ALL the stuff in step 6 and re-did it

    I think the problem was had entered the directories under Linker->Link Libraries and it was trying to open the directory as a libraby object. Once I removed them I got a sucessfull compile and a .dll file. Other have mentioned it and I noticed it as well that without even altering the sorce code you get a dll that is 4.66 MB vs the normal Civ4 dll of 3 something. I dont notice any game play differences though.

    Thanks a bunch everyone out their in tutorial/help thread land![/b]
    сурс: http://forums.civfanatics.com/showthread.p...=5&t=166933

    и еще глянь сюда - может поможет без переустановки: http://forums.codeblocks.org/index.php?topic=5693.0
    продвинь это сообщение в соцсеть:  

  7. #7
    В общем,всё оказалось просто. Microsoft Platform SDK криво встал. Переустановил и всё заработало.
    Можно заниматься моддингом. Хочу радиус обрабатываемых клеток в городе увеличить до трёх,не могу понять как,не получается. Буду думать...
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  8. #8
    Ура,я это сделал! Своими руками . Теперь у меня три клетки радиус города и 30 цивилизаций вместо 18.
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  9. #9
    ПОЗДРАВЛЯЮ!!!
    продвинь это сообщение в соцсеть:  

  10. #10
    <div class='quotetop'>Цитата(Пашок * 18.11.2008, 22:10) [snapback]268815[/snapback]</div>
    Ура,я это сделал! Своими руками . Теперь у меня три клетки радиус города и 30 цивилизаций вместо 18.[/b]
    Круто! Файлы - в студию, пожалуйста! Ждем.
    продвинь это сообщение в соцсеть:  

  11. #11
    Да ладно . Неужели для 3.17 этого ещё не сделали? Могу выложить dll-ку,сам мод у меня ещё в разработке и одновременно на тестировании.
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  12. #12
    Нет, ты первый.

    Так что давай выкладываем, вместе и потестируем.


    Тема с готовым файлом тут.
    продвинь это сообщение в соцсеть:  

  13. #13
    Блин,не могу понять как получить имя игрока,например,Саша или Володя. Или этой функции в SDK вообще нет?
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  14. #14
    Вау! Я тоже сделал тройной радиус! Такой простой код, я думал все гораздо сложней.

    И почему я раньше думал, что SDK это так сложно?!

    Ну все
    продвинь это сообщение в соцсеть:  

  15. #15
    Да нет,несложно. Я вот даже С++ не знаю. Тяжело всегда разбираться в чужом коде. Свой то через некоторое время забываешь...
    Кстати,мне удалось таки этот радиус города запихнуть в опции,чтоб можно было выбирать,два или три.
    Столько возился,а ответ то на поверхности. Смекалка,однако.
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  16. #16
    <div class='quotetop'>Цитата</div>
    Кстати,мне удалось таки этот радиус города запихнуть в опции,чтоб можно было выбирать,два или три.
    Столько возился,а ответ то на поверхности. Смекалка,однако.[/b]
    Супер!

    А код покажешь? Я тоже хочу эту опцию вставить.
    продвинь это сообщение в соцсеть:  

  17. #17
    <div class='quotetop'>Цитата(NeverMind * 23.11.2008, 16:07) [snapback]269478[/snapback]</div>
    <div class='quotetop'>Цитата
    Кстати,мне удалось таки этот радиус города запихнуть в опции,чтоб можно было выбирать,два или три.
    Столько возился,а ответ то на поверхности. Смекалка,однако.[/b]
    Супер!

    А код покажешь? Я тоже хочу эту опцию вставить.
    [/b][/quote]
    Пожалуйста! Вот мануальчик от меня по созданию новых пунктов в меню:
    Создание своей игровой опции
    Допустим, мы хотим создать опцию,увеличивающую время исследований. Для начала откроем файл CIV4GameOptionInfos.xml. По образу и подобию других опций создаём ниже(!) свою опцию,назовём её,к примеру, GAMEOPTION_TECHCOST. Соответственно пропишем текстовые ссылки, заранее прописанные в соответствующем файле. Сохраним файл и пойдём редактировать SDK. Открываем CyEnumsInterface.cpp. Там находим строку python::enum <Game Option Types>. Ниже мы видим список всех игровых опций, указанных в точно таком же порядке(!),как и в xml-файле. Ниже всех опций,перед строкой value("NUM_GAMEOPTION_TYPES", NUM_GAMEOPTION_TYPES) пропишем свою:
    .value("GAMEOPTION_TECHCOST", GAMEOPTION_TECHCOST)
    Затем откроем CvEnums.h. Найдём строку enum DllExport GameOptionTypes. Здесь мы видим тот же список опций. Точно также после всех перечисленных опций прописываем свою:
    GAMEOPTION_TECHCOST,
    Компилируем проект. Теперь, если мы запустим игру, мы увидим в списке опций свою. Осталось только написать код,который будет выполняться при активации этой опции. Выглядит это так:
    If (CG.getGameINLINE().isOption(GAMEOPTION_TECHCOST))
    {
    …Ваш код…
    };
    P.S. Если вы хотите,чтобы ваша опция отображалась не в конце списка,просто поменяте порядок опций во всех трёх списках на нужный.
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  18. #18
    За инструкцию спасибо. Собственно с добавлением опции все достаточно понятно.

    Вопрос непосредственно с 3-радиусом. Условие включение этой опции надо прописывать и в CvDefines.h, и в CvGlobals.cpp? Ты не мог бы в качестве примера привести добавление именно этой опциии или выложить соответствующий код?
    продвинь это сообщение в соцсеть:  

  19. #19
    <div class='quotetop'>Цитата(NeverMind * 23.11.2008, 19:20) [snapback]269492[/snapback]</div>
    За инструкцию спасибо. Собственно с добавлением опции все достаточно понятно.

    Вопрос непосредственно с 3-радиусом. Условие включение этой опции надо прописывать и в CvDefines.h, и в CvGlobals.cpp? Ты не мог бы в качестве примера привести добавление именно этой опциии или выложить соответствующий код?
    [/b]
    Ах,вон ты о чём. Это вопрос сложнее,и ответ на него,наверное,знает кто-то кто разбирается в этом SDK.
    Я же не нашёл ничего лучшего,чем ввести новую переменную в CvCity.cpp и присваивать ей значение по условию.
    Поэтому кода как такового и нет. просто во всём коде надо заменить NUM_CITY_PLOTS на свою переменную.
    Я долго пытался сделать что-то в CvGlobals.cpp,ставя определяющие параметры в зависимость от выбора игрока,ничего не получилось,такой вот я знаток С++, попробуй,если получится,поделись,это ведь намного проще,чем мой варварский способ. Ещё неизвестно чем это аукнется в ходе игры, поэтому тот мод,что я выложил пока без этой опции.
    продвинь это сообщение в соцсеть:  
    Интересная идея для заработка

  20. #20


    Попробовать, конечно, попробую. Только я далек не только от С++, но и от программирования вообще.
    продвинь это сообщение в соцсеть:  

+ Ответить в теме
Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

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

free counters