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

Тема: Условие победы - взятие города N

  1. #1
    Есть город, изначально на карте расположенный. Условие победы - взятие этого города. Где копать?
    продвинь это сообщение в соцсеть:  
    За тремя вещами можно наблюдать бесконечно: как горит огонь, как течет вода и как упоротые ватные клоуны истерично визжат: "Украине скоро хана"

  2. #2

    Консультант/разработчик Firaxis Games




    Регистрация
    18.10.2005
    Сообщений
    531
    Проще всего через CvEventManager.py. Определяется переменная, в которой координаты города. В функции onCityAcquired производится проверка координат взятого города - в случае совпадения, дает победу.
    продвинь это сообщение в соцсеть:  
    Solver, консультант / разработчик Firaxis Games.

  3. #3
    Бессмертный Аватар для Линник


    Регистрация
    24.03.2006
    Адрес
    Правый берег Днепра
    Сообщений
    3,589
    Возможно однозначно - Райе кучу подобных условий в своем моде сделал.
    продвинь это сообщение в соцсеть:  
    Знаю, подло завелось теперь на земле нашей; думают только, чтобы при них были хлебные стоги, скирды да конные табуны их, да были бы целы в погребах запечатанные меды их. Перенимают черт знает какие бусурманские обычаи; гнушаются языком своим; свой с своим не хочет говорить; свой своего продает, как продают бездушную тварь на торговом рынке. Милость чужого короля, да и не короля, а паскудная милость польского магната, который желтым чеботом своим бьет их в морду, дороже для них всякого братства. Но у последнего подлюки, каков он ни есть, хоть весь извалялся он в саже и в поклонничестве, есть и у того, братцы, крупица русского чувства. И проснется оно когда-нибудь, и ударится он, горемычный, об полы руками, схватит себя за голову...
    Н.В. Гоголь, "Тарас Бульба"

  4. #4
    Король Аватар для Blacksun


    Регистрация
    10.05.2006
    Адрес
    М.О. г. Раменское
    Сообщений
    1,873
    <div class='quotetop'>Цитата(Solver * 3.5.2007, 2:44) [snapback]179514[/snapback]</div>
    Проще всего через CvEventManager.py. Определяется переменная, в которой координаты города. В функции onCityAcquired производится проверка координат взятого города - в случае совпадения, дает победу.
    [/b]
    Solver!

    Сделал бы ты описание Питоновских функций. (Хотя бы - что знаешь). У нас и тема такая есть...
    Называется "Осваиваем Питон". Ну, сам то Питон мож осваивать и не надо а вот цивовские файлы Питона - хотелось бы.
    продвинь это сообщение в соцсеть:  
    Программирование - это не то, что ты думаешь.... - Это то, что думает о тебе компьютер.
    http://blacksun.civfanatics.ru
    -------------------------------------------------
    MTDG2 - [civ]christianity[/civ]Монархия
    ---------------------------------
    Председатель CFR Awards 2007
    ---------------------------------
    Председатель CFR Awards 2008

  5. #5

    Консультант/разработчик Firaxis Games




    Регистрация
    18.10.2005
    Сообщений
    531
    Представляешь, сколько у меня на это времени уйдет ? Список функций:

    http://civilization4.net/files/modding/PythonAPI/

    И это функции СДК, доступные через Питон, не описывая сами файлы. Тем более я по русски пишу жуть как медленно, через транслитератор еще. Я то сюда иногда заглядываю, если есть конкретные вопросы с не длинными ответами, то рад написать.
    продвинь это сообщение в соцсеть:  
    Solver, консультант / разработчик Firaxis Games.

  6. #6
    Король Аватар для Blacksun


    Регистрация
    10.05.2006
    Адрес
    М.О. г. Раменское
    Сообщений
    1,873
    <div class='quotetop'>Цитата(Solver * 3.5.2007, 4:24) [snapback]179522[/snapback]</div>
    Представляешь, сколько у меня на это времени уйдет ? Список функций:

    http://civilization4.net/files/modding/PythonAPI/

    И это функции СДК, доступные через Питон, не описывая сами файлы. Тем более я по русски пишу жуть как медленно, через транслитератор еще. Я то сюда иногда заглядываю, если есть конкретные вопросы с не длинными ответами, то рад написать.
    [/b]
    Этот список я видел.

    Чем хороша VS 2003 - это тем, что можно найти любую функцию (по списку классов), найти все вызовы этой функции и, в конце концов понять, что она делает. С Питоновскими сложнее, там нет такой оболочки, чтобы делала поиск по всем файлам, да и многие ф-ции просто скрыты в движке. (Видно, что файл цепляется, а в папках его нет). Отсюда все сложности с Питоном...
    продвинь это сообщение в соцсеть:  
    Программирование - это не то, что ты думаешь.... - Это то, что думает о тебе компьютер.
    http://blacksun.civfanatics.ru
    -------------------------------------------------
    MTDG2 - [civ]christianity[/civ]Монархия
    ---------------------------------
    Председатель CFR Awards 2007
    ---------------------------------
    Председатель CFR Awards 2008

  7. #7

    Консультант/разработчик Firaxis Games




    Регистрация
    18.10.2005
    Сообщений
    531
    Раз список видел, значит понятно, насколько трудоемко было бы полное описание питоновских функций. Я промострел эту питоновскую тему тут, но не вижу новых сообщений / конкретных вопросов. К СДК то же самое относится.
    продвинь это сообщение в соцсеть:  
    Solver, консультант / разработчик Firaxis Games.

  8. #8
    Король Аватар для Blacksun


    Регистрация
    10.05.2006
    Адрес
    М.О. г. Раменское
    Сообщений
    1,873
    <div class='quotetop'>Цитата(Solver * 3.5.2007, 16:02) [snapback]179628[/snapback]</div>
    Раз список видел, значит понятно, насколько трудоемко было бы полное описание питоновских функций. Я промострел эту питоновскую тему тут, но не вижу новых сообщений / конкретных вопросов. К СДК то же самое относится.
    [/b]
    Тогда конкретный вопрос... Когда что вызывается (из движка) - Последовательность действий.
    Пример. (Предыдущий). Ограничить число сетлеров легко (1 - 2 строчки простого кода), Но, ГДЕ ЭТО СДЕЛАТЬ. Это обычно приходится искать... Если СДК я могу посмотреть с помощью дебагера, то Питон - не могу посмотреть никак... (Если только нет конкретных вызовов Питоновских функций из СДК).
    продвинь это сообщение в соцсеть:  
    Программирование - это не то, что ты думаешь.... - Это то, что думает о тебе компьютер.
    http://blacksun.civfanatics.ru
    -------------------------------------------------
    MTDG2 - [civ]christianity[/civ]Монархия
    ---------------------------------
    Председатель CFR Awards 2007
    ---------------------------------
    Председатель CFR Awards 2008

  9. #9

    Консультант/разработчик Firaxis Games




    Регистрация
    18.10.2005
    Сообщений
    531
    Надеюсь, вопрос правильно понял.

    Например, я хотел бы этих сеттлеров ограничить Питоном, но не знаю, где искать место вставки кода. Я бы начал с того, что просмотрел код СДК, где определяется, можно ли строить юнит. Нахожу CvCity::canTrain(), там два раза происходит вызов питоновских функций в блоках:

    if(GC.getUSE_CAN_TRAIN_CALLBACK())

    и

    if(GC.getUSE_CANNOT_TRAIN_CALLBACK())

    Вижы, что код в этих блоках вызывает питон, например:

    gDLL->getPythonIFace()->callFunction(PYGameModule, "cannotTrain", argsList2.makeFunctionArgs(), &lResult);

    Где PYGameModule равно CvGameInterface. В файле CvGameInterface.py вижу, что cannotTrain - функция модуля gameUtils. Соотвественно, понимаю, что код надо вставлять в функцию cannotTrain файла gameUtils.py.
    продвинь это сообщение в соцсеть:  
    Solver, консультант / разработчик Firaxis Games.

  10. #10
    Король Аватар для Blacksun


    Регистрация
    10.05.2006
    Адрес
    М.О. г. Раменское
    Сообщений
    1,873
    Спасиб! Просто СДК настолько обширно, чито, это мона обнаружить тока при пристальных поисках... (Когда просматриваиваешь СДК в поисках чего то другого - это ускользает из поиска зрения....)
    продвинь это сообщение в соцсеть:  
    Программирование - это не то, что ты думаешь.... - Это то, что думает о тебе компьютер.
    http://blacksun.civfanatics.ru
    -------------------------------------------------
    MTDG2 - [civ]christianity[/civ]Монархия
    ---------------------------------
    Председатель CFR Awards 2007
    ---------------------------------
    Председатель CFR Awards 2008

  11. #11

    Консультант/разработчик Firaxis Games




    Регистрация
    18.10.2005
    Сообщений
    531
    Я лично считаю организацию СДК очень хорошей. Почти всегда быстро накожу то, что хочу - хорошые названия функций, итд.

    Конечно, можно запустить поиск по всему проекту на gDLL->getPythonIFace()->callFunction - тогда будут видны места вызова питонобских функций из СДК.
    продвинь это сообщение в соцсеть:  
    Solver, консультант / разработчик Firaxis Games.

  12. #12
    Король Аватар для Blacksun


    Регистрация
    10.05.2006
    Адрес
    М.О. г. Раменское
    Сообщений
    1,873
    <div class='quotetop'>Цитата(Solver * 6.5.2007, 22:47) [snapback]180159[/snapback]</div>
    Я лично считаю организацию СДК очень хорошей. Почти всегда быстро накожу то, что хочу - хорошые названия функций, итд.

    Конечно, можно запустить поиск по всему проекту на gDLL->getPythonIFace()->callFunction - тогда будут видны места вызова питонобских функций из СДК.
    [/b]
    Кроме этих вызовов - есть еще многие другие... (Я например, пытаюсь сделать то, чего нет в СДК, но с помощью тех функций, которые есть в СДК. Так как - я хакер, поэтому приходится писать свои функции, которые, не идут в разрез с функциями СДК (Одну и ту же проблему мона решить разными способами). И поэтому... у меня ... получается (Плох тот хакер, который пытается писать свои функции)...(Которых нет, в данной проге... (Используй то, что есть!))
    продвинь это сообщение в соцсеть:  
    Программирование - это не то, что ты думаешь.... - Это то, что думает о тебе компьютер.
    http://blacksun.civfanatics.ru
    -------------------------------------------------
    MTDG2 - [civ]christianity[/civ]Монархия
    ---------------------------------
    Председатель CFR Awards 2007
    ---------------------------------
    Председатель CFR Awards 2008

  13. #13

    Консультант/разработчик Firaxis Games




    Регистрация
    18.10.2005
    Сообщений
    531
    Ну если конкретные вопросы типа этого возникают, то я сюда иногда заглядываю. E-mail у меня тоже есть
    продвинь это сообщение в соцсеть:  
    Solver, консультант / разработчик Firaxis Games.

  14. #14
    Король Аватар для Blacksun


    Регистрация
    10.05.2006
    Адрес
    М.О. г. Раменское
    Сообщений
    1,873
    <div class='quotetop'>Цитата(Solver * 6.5.2007, 22:57) [snapback]180162[/snapback]</div>
    Ну если конкретные вопросы типа этого возникают, то я сюда иногда заглядываю. E-mail у меня тоже есть
    [/b]

    Хорошо, если ты мне поможешь в будующем, но, на сегодня, я решил все проблемы, которые меня интересовали... Дело осталось за малым, найти время - дописать то, что я уже продумал.... (И проверил...) (Старая школа... Такого - чичас не встретишь... Если бы встретил - передал бы все свои знания...)
    продвинь это сообщение в соцсеть:  
    Программирование - это не то, что ты думаешь.... - Это то, что думает о тебе компьютер.
    http://blacksun.civfanatics.ru
    -------------------------------------------------
    MTDG2 - [civ]christianity[/civ]Монархия
    ---------------------------------
    Председатель CFR Awards 2007
    ---------------------------------
    Председатель CFR Awards 2008

  15. #15
    Полководец Аватар для razer


    Регистрация
    25.12.2006
    Адрес
    Moscow City
    Сообщений
    282
    <div class='quotetop'>Цитата(Solver * 6.5.2007, 22:57) [snapback]180162[/snapback]</div>
    Ну если конкретные вопросы типа этого возникают, то я сюда иногда заглядываю. E-mail у меня тоже есть
    [/b]
    Ухты, а ты в Firaxis работаешь?
    продвинь это сообщение в соцсеть:  
    [civ]christianity[/civ]In baks we trast.

  16. #16

    Консультант/разработчик Firaxis Games




    Регистрация
    18.10.2005
    Сообщений
    531


    Консультирую.
    продвинь это сообщение в соцсеть:  
    Solver, консультант / разработчик Firaxis Games.

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

Ваши права

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

free counters