Paradox
©
Fisana

Перейти к содержимому


Фотография

Класс № 129 [ Master_TW_DAR ; txt , M2TWK ]


  • Закрытая тема Тема закрыта
Сообщений в теме: 533

#101 DEN Stark

DEN Stark

    Брат-Сардельер

  • Сардельер
  • 4 494 сообщений
  • Откуда:Владивосток
  • Награды:
  • Должность:Бунчужный
  • Создатель:Пихалыч Мод; Ogniem i Mieczem 2:TW
Регистрация: 01.ноя.10
Слава: 702

Отправлено 24 января 2014 - 14:12

siege_assault_button это конкретное название ui-элемента - кнопки в игре "начать штурм" ЕМНИП, т.е. строка monitor_event ButtonPressed ButtonPressed siege_assault_buttonозначает "Случилось событие - игрок нажал на кнопку "Штурм поселения""В таких случаях ButtonPressed всегда используется дважды, не знаю почему )) Т.е. получается что сочетание "ButtonPressed ButtonPressed" с последующим названием элемента/кнопки значит событие "нажимание чего-то там в игре" :)
  • 0

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

--------------------

Пихалыч Мод 1.0       http://yadi.sk/d/18I7TckI3_tfB
Фикс1 от 11.02.2013 http://yadi.sk/d/ECfr3nHe2mSja

Фикс2 от 07.04.2013 http://yadi.sk/d/FrjF2Yee3rerU

0dc86e7facf4.jpg

 


#102 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Хорунжий
  • 2 819 сообщений
  • Награды:
Регистрация: 30.сен.12
Слава: 222

Отправлено 24 января 2014 - 15:00

18. Небольшой вопрос по скриптамЗначение счетчика.. команда set_counter может принимать значение 0 или 1 (т.е. аналогично false или true) или абсолютно любое, произвольное число ?

Сообщение отредактировал Master_TW_DAR: 24 января 2014 - 16:31

  • 0

#103 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Хорунжий
  • 2 819 сообщений
  • Награды:
Регистрация: 30.сен.12
Слава: 222

Отправлено 24 января 2014 - 17:39

19. Гарнизонный скриптПосле долгого битья об стену головой и невнимательности нашел таки ошибку (поселение не распознавалось скриптом из-за типа события SettlementTurn....).Переписал скрипт совсем по-другому:

declare_counter Anorien_siegemonitor_event SettlementTurnStart SettlementName Anorien and not I_SettlementUnderSiege Anorienset_counter Anorien_siege 0end_monitormonitor_event SettlementTurnStart SettlementName Anorien and I_SettlementUnderSiege Anorienand I_CompareCounter Anorien_siege = 0if SettlementBuildingExists = wooden_pallisadeset_counter Anorien_siege 1end_ifif SettlementBuildingExists = wooden_wallset_counter Anorien_siege 2end_ifif SettlementBuildingExists = stone_wallset_counter Anorien_siege 3end_ifif SettlementBuildingExists = large_stone_wallset_counter Anorien_siege 4end_ifif SettlementBuildingExists = huge_stone_wallset_counter Anorien_siege 5end_ifmonitor_event SettlementTurnStart I_SettlementExists Anorienand I_SettlementOwner Anorien = gondorif I_CompareCounter Anorien_siege = 1create_unit Anorien, Dismounted Kofm, num 1, exp 1, arm 1, wep 0end_ifif I_CompareCounter Anorien_siege = 2create_unit Anorien, Dismounted Kofm, num 2, exp 1, arm 1, wep 0end_ifif I_CompareCounter Anorien_siege = 3create_unit Anorien, Dismounted Kofm, num 3, exp 1, arm 1, wep 0end_ifif I_CompareCounter Anorien_siege = 4create_unit Anorien, Dismounted Kofm, num 4, exp 1, arm 1, wep 0end_ifif I_CompareCounter Anorien_siege = 5create_unit Anorien, Dismounted Kofm, num 5, exp 1, arm 1, wep 0end_ifend_monitor

После тестов лог ничего абсолютным образом не пишет, но и скрипт почему-то не работает ...В чем может быть проблема ?? -_-
  • 0

#104 DEN Stark

DEN Stark

    Брат-Сардельер

  • Сардельер
  • 4 494 сообщений
  • Откуда:Владивосток
  • Награды:
  • Должность:Бунчужный
  • Создатель:Пихалыч Мод; Ogniem i Mieczem 2:TW
Регистрация: 01.ноя.10
Слава: 702

Отправлено 24 января 2014 - 17:42

18. Небольшой вопрос по скриптам

Значение счетчика.. команда set_counter может принимать значение 0 или 1 (т.е. аналогично false или true) или абсолютно любое, произвольное число ?

Абсолютно любое


......... Я бы так попробовал:

declare_counter Anorien_siege

monitor_event SettlementTurnStart SettlementName Anorien
and not I_SettlementUnderSiege Anorien
set_counter Anorien_siege 0
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

if SettlementBuildingExists = wooden_pallisade
set_counter Anorien_siege 1
end_if

if SettlementBuildingExists = wooden_wall
set_counter Anorien_siege 2
end_if

if SettlementBuildingExists = stone_wall
set_counter Anorien_siege 3
end_if

if SettlementBuildingExists = large_stone_wall
set_counter Anorien_siege 4
end_if

if SettlementBuildingExists = huge_stone_wall
set_counter Anorien_siege 5
end_if

end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementOwner Anorien = gondor

if I_CompareCounter Anorien_siege = 1
create_unit Anorien, Dismounted Kofm, num 1, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 2
create_unit Anorien, Dismounted Kofm, num 2, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 3
create_unit Anorien, Dismounted Kofm, num 3, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 4
create_unit Anorien, Dismounted Kofm, num 4, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 5
create_unit Anorien, Dismounted Kofm, num 5, exp 1, arm 1, wep 0
end_if

end_monitor

Сообщение отредактировал DEN Stark: 24 января 2014 - 17:44

  • 0

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

--------------------

Пихалыч Мод 1.0       http://yadi.sk/d/18I7TckI3_tfB
Фикс1 от 11.02.2013 http://yadi.sk/d/ECfr3nHe2mSja

Фикс2 от 07.04.2013 http://yadi.sk/d/FrjF2Yee3rerU

0dc86e7facf4.jpg

 


#105 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Хорунжий
  • 2 819 сообщений
  • Награды:
Регистрация: 30.сен.12
Слава: 222

Отправлено 24 января 2014 - 17:55

DEN Stark, закрыл монитор (все снова невнимательность моя... это наверное уже усталость после нескольких часов разбирательства.. но добить основу хочется :angry: ) - проверил - снова ничего лог не говорит )))

Затем поменял команду на SettlementName - тоже лог молчит )

Ого, после теста осады на 2-м ходу лог заболтал))) :

17:53:55.414 [game.script] [error] Script execution error for <if>, at line 19, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition
17:53:55.414 [game.script] [error] Script execution error for <if>, at line 23, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition
17:53:55.414 [game.script] [error] Script execution error for <if>, at line 27, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition
17:53:55.414 [game.script] [error] Script execution error for <if>, at line 31, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition
17:53:55.415 [game.script] [error] Script execution error for <if>, at line 35, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition

И снова та же проблема... То ли поселение не фурычит с данным событием, то ли с условием.. но так и раньше было...

Сообщение отредактировал Master_TW_DAR: 24 января 2014 - 17:57

  • 0

#106 DEN Stark

DEN Stark

    Брат-Сардельер

  • Сардельер
  • 4 494 сообщений
  • Откуда:Владивосток
  • Награды:
  • Должность:Бунчужный
  • Создатель:Пихалыч Мод; Ogniem i Mieczem 2:TW
Регистрация: 01.ноя.10
Слава: 702

Отправлено 24 января 2014 - 18:05

DEN Stark, закрыл монитор (все снова невнимательность моя... это наверное уже усталость после нескольких часов разбирательства.. но добить основу хочется :angry: ) - проверил - снова ничего лог не говорит )))

Затем поменял команду на SettlementName - тоже лог молчит )

Ого, после теста осады на 2-м ходу лог заболтал))) :



И снова та же проблема... То ли поселение не фурычит с данным событием, то ли с условием.. но так и раньше было...

if не со всеми условиями работает, в таких случаях надо разбивать на отдельные мониторы просто..

declare_counter Anorien_siege

monitor_event SettlementTurnStart SettlementName Anorien
and not I_SettlementUnderSiege Anorien
set_counter Anorien_siege 0
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = wooden_pallisade

set_counter Anorien_siege 1
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = wooden_wall

set_counter Anorien_siege 2
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = stone_wall

set_counter Anorien_siege 3
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = large_stone_wall

set_counter Anorien_siege 4
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = huge_stone_wall

set_counter Anorien_siege 5
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementOwner Anorien = gondor

if I_CompareCounter Anorien_siege = 1
create_unit Anorien, Dismounted Kofm, num 1, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 2
create_unit Anorien, Dismounted Kofm, num 2, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 3
create_unit Anorien, Dismounted Kofm, num 3, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 4
create_unit Anorien, Dismounted Kofm, num 4, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 5
create_unit Anorien, Dismounted Kofm, num 5, exp 1, arm 1, wep 0
end_if

end_monitor

Если и так не сработает - разбей по тому же принципу вторую половину )
  • 0

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

--------------------

Пихалыч Мод 1.0       http://yadi.sk/d/18I7TckI3_tfB
Фикс1 от 11.02.2013 http://yadi.sk/d/ECfr3nHe2mSja

Фикс2 от 07.04.2013 http://yadi.sk/d/FrjF2Yee3rerU

0dc86e7facf4.jpg

 


#107 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Хорунжий
  • 2 819 сообщений
  • Награды:
Регистрация: 30.сен.12
Слава: 222

Отправлено 24 января 2014 - 18:05

Попробовал вот такое изменение:

declare_counter Anorien_siege

monitor_event SettlementTurnStart SettlementName Anorien
and not I_SettlementUnderSiege Anorien
set_counter Anorien_siege 0
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

if I_SettlementExists Anorien
and SettlementBuildingExists = wooden_pallisade
set_counter Anorien_siege 1
end_if

if I_SettlementExists Anorien
and SettlementBuildingExists = wooden_wall
set_counter Anorien_siege 2
end_if

if I_SettlementExists Anorien
and SettlementBuildingExists = stone_wall
set_counter Anorien_siege 3
end_if

if I_SettlementExists Anorien
and SettlementBuildingExists = large_stone_wall
set_counter Anorien_siege 4
end_if

if I_SettlementExists Anorien
and SettlementBuildingExists = huge_stone_wall
set_counter Anorien_siege 5
end_if

end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementOwner Anorien = gondor

if I_CompareCounter Anorien_siege = 1
create_unit Anorien, Dismounted Kofm, num 1, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 2
create_unit Anorien, Dismounted Kofm, num 2, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 3
create_unit Anorien, Dismounted Kofm, num 3, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 4
create_unit Anorien, Dismounted Kofm, num 4, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 5
create_unit Anorien, Dismounted Kofm, num 5, exp 1, arm 1, wep 0
end_if

end_monitor

На старте осаждаю город - от лога ни ответа, ни привета, а от скрипта нет спауна.
На 1-м ходу снимаю осаду и вновь осаждаю поселение - в логе выскакивает то же самое содержание ошибок:

18:00:35.232 [game.script] [error] Script execution error for <if>, at line 20, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition
18:00:35.232 [game.script] [error] Script execution error for <if>, at line 25, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition
18:00:35.232 [game.script] [error] Script execution error for <if>, at line 30, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition
18:00:35.232 [game.script] [error] Script execution error for <if>, at line 35, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition
18:00:35.232 [game.script] [error] Script execution error for <if>, at line 40, in mods/Dagor_Dagorath/data/world/maps/campaign/imperial_campaign/campaign_script.txt:
<settlement> is unavailable from event <>
when testing <SettlementBuildingExists> condition

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

ЗЫ Функционал прост : хочу написать гарнизонный скрипт в зависимости от уровня поселения...

Сообщение отредактировал Master_TW_DAR: 24 января 2014 - 18:13

  • 0

#108 DEN Stark

DEN Stark

    Брат-Сардельер

  • Сардельер
  • 4 494 сообщений
  • Откуда:Владивосток
  • Награды:
  • Должность:Бунчужный
  • Создатель:Пихалыч Мод; Ogniem i Mieczem 2:TW
Регистрация: 01.ноя.10
Слава: 702

Отправлено 24 января 2014 - 18:13

А без if попробовал как я выше написал?
  • 0

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

--------------------

Пихалыч Мод 1.0       http://yadi.sk/d/18I7TckI3_tfB
Фикс1 от 11.02.2013 http://yadi.sk/d/ECfr3nHe2mSja

Фикс2 от 07.04.2013 http://yadi.sk/d/FrjF2Yee3rerU

0dc86e7facf4.jpg

 


#109 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Хорунжий
  • 2 819 сообщений
  • Награды:
Регистрация: 30.сен.12
Слава: 222

Отправлено 24 января 2014 - 18:34

DEN Stark,

declare_counter Anorien_siege

monitor_event SettlementTurnStart SettlementName Anorien
and not I_SettlementUnderSiege Anorien
set_counter Anorien_siege 0
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = wooden_pallisade

set_counter Anorien_siege 1
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = wooden_wall

set_counter Anorien_siege 2
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = stone_wall

set_counter Anorien_siege 3
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = large_stone_wall
set_counter Anorien_siege 4
end_monitor

monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementUnderSiege Anorien
and I_CompareCounter Anorien_siege = 0

and SettlementBuildingExists = huge_stone_wall
set_counter Anorien_siege 5
end_monitor


monitor_event SettlementTurnStart SettlementName Anorien
and I_SettlementOwner Anorien = gondor

if I_CompareCounter Anorien_siege = 1
create_unit Anorien, Dismounted Kofm, num 1, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 2
create_unit Anorien, Dismounted Kofm, num 2, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 3
create_unit Anorien, Dismounted Kofm, num 3, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 4
create_unit Anorien, Dismounted Kofm, num 4, exp 1, arm 1, wep 0
end_if

if I_CompareCounter Anorien_siege = 5
create_unit Anorien, Dismounted Kofm, num 5, exp 1, arm 1, wep 0
end_if

end_monitor

Вроде поперло ) На начале 2-го хода 1 отряд создался - как и предполагается )) Попробовал поиграть с настройками поселения в descr_strat.txt - все работает))
Ну спасибо, иначе я один бы еще неделю долбался)))
ЗЫ На сегодня всё, пожалуй - мутит меня от нотепада уже)))
  • 0

#110 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Хорунжий
  • 2 819 сообщений
  • Награды:
Регистрация: 30.сен.12
Слава: 222

Отправлено 27 января 2014 - 06:10

20. Маленький вопросец по descr_strat.txt

Копаясь в данном файле, обнаружил следующие строки (мод ДД):

faction gondor, balanced smith
ai_label islam
denari 12000
denari_kings_purse 3000

Интересует выделенная строка. Что в ней подразумевается за "метка" и с какой целью она используется ??
И имеет ли какое-ибудь отношение к религии ?

Сообщение отредактировал Master_TW_DAR: 27 января 2014 - 06:10

  • 0




Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных

Total War: WARHAMMER

Мы ждали, мы верили. И наша вера была вознаграждена! Анонс Total War: WARHAMMER состоялся! Скептики были посрамлены, а вахоманы возликовали! Но разработчики на форумах успели уже рассказать немало подробностей. Во первых стало известно? что это будет не одна игра, а трилогия сдобренная целым сомном аддонов и дополнительного платного и бесплатного контента. Во-вторых фракций будет только четыре (Империя Сигмара, Зеленокожие, Гномы и Графы-Вампиры) но обещают сделать их максимально проработанными, богатыми на юниты и реально отличающимися друг от друга по геймплею. В третьих - главы фракций теперь не просто генералы которых не жалко потерять в бою. Теперь это Легендарные Лорды (Карл Франц, Гримгор, Торгрим и Маннфрэд фон Карштайн), герои со уникальным оружием, верховым животным, шмотками и набором квестов. Еще обещают такие новинки как летающие юниты, магию, танки, пушки и мущкеты... в общем вкуснятинка! В общем ждем больше информации и надеемся, что игра станет прорывом в серии.

Ну а апологетам историчности спешим успокоить - над Вархаммер трудится отдельная команда. Исторические игры Тотал Вар производство фэнтэзийной игры не тормозит.

Подробней о Total War: WARHAMMER

Total War: Attila

Анонс Total War: Attila с одной стороны немало удивил нас, а с другой еще раз доказал, что СА идет проторенной дорожкой. Ведь Аттила по сути это сиквэл аддона "Вторжение варваров" для Рима 1. Правда на этот раз они не стали скромничать и назвали его "новой игрой". Ок, мы не будем спорить. Отдельная игра про нашествие варварских племен на цивилизации античного мира - это прекрасно. Нужно отметиьт что разработчики действительно поработали на славу. По мнению большинства игроков, Аттила действительно оказался достойным продуктом, позволившим окунутся в мрачные эпохи.

Подробней о Total War: Attila Часть 1 и Часть 2

Total War: Rome 2

Анонс Rome II Total War состоялся 2 июля и это вызвало настоящую бурю восторга нашего сообщества! Настолько люди истосковались по рукопашному бою и легионерам, что анонс сиквела восприняли как настоящее чудо и "сбычу мечт". Снова вести в бой скованные железной дисциплиной легионы, непоколебимых греческих гоплитов и македонских сариссофоров, топтать врагов слонами и забрасывать отрубленными головами - это ли не счастье! Но ведь новые игры Total War это еще и морские баталии. И тут уж будет море фана, ведь разработчики обещают активное взаимодействие между сухопутными и военно-морскими силами. Обоюдный обстрел между береговыми укреплениями и боевыми кораблями на рейде даст новую степень свободы "стратегосам" античного мира.

Подробней о Total War: Rome II