Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » Скрипт-школа (Задачи для начинающих скриптописателей) | страница 7
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 7 из 10
На страницу: Пред.  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  След. | Все страницы
Поиск в этой теме:
Канал X3: Reunion » Модовый и скриптовый отсек X3: Reunion: «Скрипт-школа (Задачи для начинающих скриптописателей)»
Нужна ли школа скриптописателей
Да. чем нас больше, тем игра веселее
95%
 95%  [ 65 ]
Нет, развелось вас.
4%
 4%  [ 3 ]
Всего проголосовало : 68
AlexYar
 1851 EGP


Рейтинг канала: 13(2096)
Репутация: 324
Сообщения: 31640

Зарегистрирован: 26.10.2003
Вот ещё пища для размышления и тренировки смекалки Улыбка

Что будет делать такой скрипт?

Код:

001   $b = 1
002   while 1
003 @  = wait 1000 ms
004    if $b
005     write to player logbook $b
006     inc $b =
007     
008     skip if $b
009     
010    end
011    write to player logbook 'opa'
012   end
013   write to player logbook 'test'
014   
015   return null


Попробуйте дать ответ (себе) до того, как испробуете скрипт в деле Улыбка

Последний раз редактировалось: AlexYar (04:57 08-12-2007), всего редактировалось 1 раз
    Добавлено: 04:55 08-12-2007   
бухой джедай
 182 EGP


Рейтинг канала: 5(141)
Репутация: 70
Сообщения: 7906 Предупреждений: 1
Откуда: Одесса:)
Зарегистрирован: 08.09.2007
Алекс может написать им ответ? А то школяры толи испугались толи повисли
_________________
Так Добрый вечер...Превед с большого Бодуна...
Магистр Непросыхаемость...
Злобный Рецедивист...
    Добавлено: 03:08 10-12-2007   
Andrei [<>Ace]
 303 EGP


Рейтинг канала: 6(416)
Репутация: 108
Сообщения: 766
Откуда: Беларусь, Салiгорск
Зарегистрирован: 29.03.2006
Чего приуныли? Улыбка Где ответы на задания? Аль не интересны?

Предложу свое. Если желающих сделать не будет, а идея понравится, буду сам делать.

История:
. Жил один Телади, звали его Винтопопус V. Как и все Телади, он не ощущал всей полноты жизни, если не совершал грандиозной сделки. А как его убивала, морально, потеря какого-нибудь корабля или контейнера с бесценным товаром при пиратском нападении, трудно даже представить.
. Но Винтопопус V не обделен был умом и создал небольшое, но дорогое устройство - миносбрасыватель. Миносбрасыватель встраивается в турель и использует ее устройство в своей работе. В качестве боеприпаса применяется мина Сквош. В мине заменяется система инициирования: с сенсорной на таймерную. На время установки миносбрасывателя, другое вооружение из турели удаляется.
. Винтопопус V настолько приноровился к своему устройству, что на своем немного тюненгованном корабле «Shishvamdam» (Falconе Sentinel, форсирование двигателя – 20, оптимизация рулевого управления – 15) и небольшой группе поддержки, проводил свои конвои через пиратские секторы, а по неподтвержденным слухам и ксенонские) без потерь.
Но пираты, просто возмущенные такой дерзостью, а еще больше – потерями, устроили засаду. Чем закончился бой, толком никто не знает, но и Винтопопус V исчез вместе со своим конвоем. Некоторые пилоты рассказывали, что в секторе «Убежище Ми Тона», в восточной его части, среди мин Сквош, покоится полуразрушенный Falconе.

Задание:
1. В качестве устройства (Кто воображением не обделен – придумайте название) используем шаблон товара SS_WARE_SW_NEW15.
2. Для настройки таймера и активизации устройства - COMMAND_TYPE_SPECIAL_20
3. Пример и имя языкового файла - xx4000.xml
 xx4000.xml   (кликните здесь для просмотра)
Код:
<?xml version="1.0" encoding="UTF-8"?>
<language id="7">
<!-- language id="7" – русский \ language id="44" – английский -->

 <page id="300017" title="Boardcomp. objects" descr="" voice="yes">
  <t id="5893">(do not speak) миносбрасыватель (SS_WARE_SW_NEW15)</t>
  <t id="5894">Здесь можно разместить краткое описание устройства.</t>
 </page>

 <page id="2008" title="Script Object Commands" descr="0" voice="0">
  <t id="520">Новая команда вместо (COMMAND_TYPE_SPECIAL_20)</t>
 </page>

 <page id="2010" title="Script Cmd Names" descr="Long version of commandos. These are the commandos assigned to ships using the commandconsole. Page 2010 and 2011 belong together and hold short and long versions of the same commands" voice="0">
  <t id="520">Вид команды в меню консоли корабля. пример: (Настроить таймер и активировать миносбрасыватель.)</t>
 </page>

 <page id="2011" title="Script Cmd Shorts" descr="Short version of commandos. These are the commandos assigned to ships using the commandconsole. Page 2010 and 2011 belong together and hold short and long versions of the same commands" voice="0">
  <t id="520">Сокращенный вид команды.</t>
 </page>

 <page id="2022" title="Command Info" descr="0" voice="0">
  <t id="520"> Здесь можно разместить краткое описание команды.</t>
 </page>

 <page id="4000" title="Messages" descr="0" voice="0">
  <t id="40001"> </t>
 </page>

</language>

4. Зарезервировать клавишу для выброса мин.
5. Реализовать и приукрасить задание Улыбка .

Если есть вопросы, предложения – высказываем. Только не флудить.

Последний раз редактировалось: Andrei [<>Ace] (12:22 11-12-2007), всего редактировалось 2 раз(а)
    Добавлено: 16:31 10-12-2007   
Else
 140 EGP


Рейтинг канала: 3(26)
Репутация: 29
Сообщения: 313
Откуда: Тверская обл.
Зарегистрирован: 08.11.2007
Andrei(<>Ace), Можно немного поподробнее про языковые файлы и использование команд консоли, такими заданиями да сразу по башке Совсем запутался... , больно ведь. Теория, вещь нужная.
_________________
Интересно, а пить водку в полночь, считается после работы или до?

Последний раз редактировалось: Else (16:44 10-12-2007), всего редактировалось 2 раз(а)
    Добавлено: 16:41 10-12-2007   
бухой джедай
 182 EGP


Рейтинг канала: 5(141)
Репутация: 70
Сообщения: 7906 Предупреждений: 1
Откуда: Одесса:)
Зарегистрирован: 08.09.2007
+ пример чегонибудь подобного если можно Улыбка( ну привык я разбиратся на примерах если не уверен в своих силах )
_________________
Так Добрый вечер...Превед с большого Бодуна...
Магистр Непросыхаемость...
Злобный Рецедивист...
    Добавлено: 16:42 10-12-2007   
WhiteWolf
 55 EGP


Рейтинг канала: 2(13)
Репутация: 0
Сообщения: 53

Зарегистрирован: 24.10.2007
Извенясь, на выходные был отлучен от интернета Расстроен Теперь по делу
AlexYar :
Нет. Не строка 009 пропускается, а происходит выход из цикла по строке 010 Улыбка Первый значащий оператор - это IF. Только потом WHILE.

Я имел в виду, что пустая строка а также закомментированная не яляются значащими операторами Улыбка а следующая за пустой строкой
Код:
007     skip if $b
008     
009    end
строка 009 содержит end, т.е. значащий оператор процедурной скобки, вот он и будет выполнен/пропущен в соответствии с условием в строке 007 Улыбка Вроде теперь понятно? NOP действительно в скрипт-языке нет, но во многих других языках высокого уровня содержится как оператор не выполняющий никаких действий....
бухой джедай :
скрипт пишется так чтоб лог был с метками по типу тегов
ну а далее данному програмисту не шибко стоит усилий написать
просмотровшик к своему логу (кстати чем и является на 60% карта скорпа)
значит нужен обработчик во внешнем софте... А к скриптам Х3 это как относится?

AlexYar :
Что будет делать такой скрипт?

В логе будет
Код:
1
opa
test
и больше ничего....
2Andrei [<>Ace] сейчас почитаю, подумаю, а то пока читал/писал, смотрю и пост новый...
Andrei [<>Ace] :
. Но Винтопопус V не обделен был умом и создал небольшое, но дорогое устройство - миносбрасыватель. Миносбрасыватель встраивается в турель и использует ее устройство в своей работе. В качестве боеприпаса применяется мина Сквош. В мине заменяется система инициирования: с сенсорной на таймерную.
а вот и вопросы:
1. встраиваемый в турель? тут не красиво, без модинга не появится миносбрасыватель в поддерживаемом типе вооружения для турели. (если же он чисто скриптовый, то смотрим п.2)
2. есть много дополнительных скриптов, которые на ходу меняют вооружение в турели и управляют ее поведением (даже стандартные типа атаковать врага, сбивать ракеты) как тогда это отслеживать?
3. И в чем всетаки секрет замены системы инициирования мины с сенсорной на таймерную? Не может быть все так просто как разрушить ее через паузу Расстроен
Все остальное вроде решаемо и выполнимо Улыбка

Последний раз редактировалось: WhiteWolf (17:14 10-12-2007), всего редактировалось 1 раз
    Добавлено: 16:51 10-12-2007   
бухой джедай
 182 EGP


Рейтинг канала: 5(141)
Репутация: 70
Сообщения: 7906 Предупреждений: 1
Откуда: Одесса:)
Зарегистрирован: 08.09.2007
WhiteWolf :
значит нужен обработчик во внешнем софте... А к скриптам Х3 это как относится?

а просто относится Улыбка пишем скрип и программу Улыбка скрипт в Х3 а программу в чем тебе удобно Улыбка

именно по такому принципу работает например карта скорпа

так весьма удобно инфу из игры тырить Улыбка
_________________
Так Добрый вечер...Превед с большого Бодуна...
Магистр Непросыхаемость...
Злобный Рецедивист...

Последний раз редактировалось: бухой джедай (16:56 10-12-2007), всего редактировалось 1 раз
    Добавлено: 16:54 10-12-2007   
WhiteWolf
 55 EGP


Рейтинг канала: 2(13)
Репутация: 0
Сообщения: 53

Зарегистрирован: 24.10.2007
бухой джедай :
а просто относится Улыбка пишем скрип и программу Улыбка скрипт в Х3 а программу в чем тебе удобно Улыбка

именно по такому принципу работает например карта скорпа

так весьма удобно инфу из игры тырить Улыбка
Согласен, просто при наличии внешнего обработчика, но в этой теме «Скрипт-школа (Задачи для начинающих скриптописателей)» это ИМХО флуд и непотребсто. Здесь вроде мы учимся скриптописанию, а не как написать обработчик файла на чем-либо...
    Добавлено: 17:19 10-12-2007   
бухой джедай
 182 EGP


Рейтинг канала: 5(141)
Репутация: 70
Сообщения: 7906 Предупреждений: 1
Откуда: Одесса:)
Зарегистрирован: 08.09.2007
WhiteWolf :
Согласен, просто при наличии внешнего обработчика, но в этой теме «Скрипт-школа (Задачи для начинающих скриптописателей)» это ИМХО флуд и непотребсто. Здесь вроде мы учимся скриптописанию, а не как написать обработчик файла на чем-либо...

да мб флуд но без скрипта обработчик пустой звук а лог можно прочитать и без обработчика поэтому главная роль здесь скрипт а человек который сможет создать такой скрипт не будет иметь каких либо проблем с обработчиком
_________________
Так Добрый вечер...Превед с большого Бодуна...
Магистр Непросыхаемость...
Злобный Рецедивист...
    Добавлено: 17:31 10-12-2007   
AlexYar
 1851 EGP


Рейтинг канала: 13(2096)
Репутация: 324
Сообщения: 31640

Зарегистрирован: 26.10.2003
WhiteWolf :
строка 009 содержит end, т.е. значащий оператор процедурной скобки, вот он и будет выполнен/пропущен в соответствии с условием в строке 007


Я ж у же сказал, что это неправильно. Пропускается не 009 строка, а 010, т.е. выход из цикла Подмигиваю
Если бы было, как ты говоришь, и пропускалась бы только строка 009, то выхода из цикла не было бы (строка 009 относится не к циклу, а к IF).

WhiteWolf :
В логе будет

Код:
Код:
1
opa
test   

и больше ничего....


Неправильно Улыбка

бухой джедай :
Алекс может написать им ответ?


В данном случае полезнее понять и прочувствовать всё самому Улыбка
    Добавлено: 18:11 10-12-2007   
WhiteWolf
 55 EGP


Рейтинг канала: 2(13)
Репутация: 0
Сообщения: 53

Зарегистрирован: 24.10.2007
AlexYar :
Неправильно Улыбка
Все сдаюсь, а без Х3 под рукой не вкурю Расстроен разжевывай, где собака порылась
    Добавлено: 18:50 10-12-2007   
бухой джедай
 182 EGP


Рейтинг канала: 5(141)
Репутация: 70
Сообщения: 7906 Предупреждений: 1
Откуда: Одесса:)
Зарегистрирован: 08.09.2007
Это я не вкуриваю как хоткей прилипитьУлыбка да и ненашел пока команду на катапультирование из грузового отсека Расстроен
_________________
Так Добрый вечер...Превед с большого Бодуна...
Магистр Непросыхаемость...
Злобный Рецедивист...

Последний раз редактировалось: бухой джедай (19:23 10-12-2007), всего редактировалось 1 раз
    Добавлено: 19:21 10-12-2007   
WhiteWolf
 55 EGP


Рейтинг канала: 2(13)
Репутация: 0
Сообщения: 53

Зарегистрирован: 24.10.2007
бухой джедай :
Это я не вкуриваю как хоткей прилипить
<RetVar> = register hotkey <Var/String> to call script <Script Name> не пробовал?

Последний раз редактировалось: WhiteWolf (20:33 10-12-2007), всего редактировалось 1 раз
    Добавлено: 20:04 10-12-2007   
бухой джедай
 182 EGP


Рейтинг канала: 5(141)
Репутация: 70
Сообщения: 7906 Предупреждений: 1
Откуда: Одесса:)
Зарегистрирован: 08.09.2007
Пробывал ,но не заработало, может там какие нюансы есть
_________________
Так Добрый вечер...Превед с большого Бодуна...
Магистр Непросыхаемость...
Злобный Рецедивист...
    Добавлено: 20:14 10-12-2007   
WhiteWolf
 55 EGP


Рейтинг канала: 2(13)
Репутация: 0
Сообщения: 53

Зарегистрирован: 24.10.2007
Нюансы? Все просто, данной командой ты столбишь хоткей для выполнения скрипта-обработчика, саму же клавишу назначаешь в игре в настройках (имя для хоткея указанное в <Var/String>). Да, и скрипт-обработчик должен быть уже создан и лежать в папке скриптов игры, иначе хоткей не застолбится Улыбка
    Добавлено: 20:32 10-12-2007   
бухой джедай
 182 EGP


Рейтинг канала: 5(141)
Репутация: 70
Сообщения: 7906 Предупреждений: 1
Откуда: Одесса:)
Зарегистрирован: 08.09.2007
Епт! ПасибаУлыбка вот шо значит переучилсяУлыбка я думал тама нада клавишу обозначитьУлыбка
_________________
Так Добрый вечер...Превед с большого Бодуна...
Магистр Непросыхаемость...
Злобный Рецедивист...
    Добавлено: 20:39 10-12-2007   
AlexYar
 1851 EGP


Рейтинг канала: 13(2096)
Репутация: 324
Сообщения: 31640

Зарегистрирован: 26.10.2003
WhiteWolf :
где собака порылась


Собака порылась в том, что действие команды skip будет непредсказуемым, если после неё будет пустая или закомментированная строка. Поэтому никогда не нужно этого допускать.

зыж Не стал расписывать особенности работы в каждом отдельно-взятом случае, чтобы ещё больше не запутать, поэтому написал так, как написал Хы...

зыыж Кому интересно - сами потетсируйте на игре различные комбинации.
    Добавлено: 02:52 11-12-2007   
Andrei [<>Ace]
 303 EGP


Рейтинг канала: 6(416)
Репутация: 108
Сообщения: 766
Откуда: Беларусь, Салiгорск
Зарегистрирован: 29.03.2006
Else :
Andrei(<>Ace), Можно немного поподробнее про языковые файлы и использование команд консоли, такими заданиями да сразу по башке , больно ведь. Теория, вещь нужная.

Несколько постов выше просил, чтобы посмотрели Справочник по скриптовым командам для Х2. Там очень хорошо расписано, что такое языковой файл. Как застолбить команду. Как привязать к команде скрипт. Просто настоятельно рекомендую почитать все в подлиннике. Улыбка .

WhiteWolf :
1. встраиваемый в турель? тут не красиво, без модинга не появится миносбрасыватель в поддерживаемом типе вооружения для турели. (если же он чисто скриптовый, то смотрим п.2)

Поэтому и встраиваемый в турель. Важно наличие самой турели, и обязательное отсутствие в ней какого либо вооружения. Поэтому ничего модить не будем. В тереле будет отображаться то, что отображается когда ничего не установлено.

WhiteWolf :
2. есть много дополнительных скриптов, которые на ходу меняют вооружение в турели и управляют ее поведением (даже стандартные типа атаковать врага, сбивать ракеты) как тогда это отслеживать?

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

WhiteWolf :
3. И в чем всетаки секрет замены системы инициирования мины с сенсорной на таймерную? Не может быть все так просто как разрушить ее через паузу

Да нет секрета. Мину скриптом взорвать можно, а вот активировать, на монер стандартного режима, без скриптования этого режима, нельзя.
    Добавлено: 03:22 11-12-2007   
WhiteWolf
 55 EGP


Рейтинг канала: 2(13)
Репутация: 0
Сообщения: 53

Зарегистрирован: 24.10.2007
бухой джедай :
чегото все равно не получается Расстроен
Конкретней, что не получается?

Andrei [<>Ace] :
Врятли на корабле игрока команды меняются без его ведома
Команды то не меняются, но может присутствовать скрипт (и не в стеке турели) который активно может менять задачи для турели и ее вооружение (хотя в оригинальной игре таких скриптов нет) и тогда получим Задница турель будет и стрелять и сбрасывать мины Расстроен или при проверке наличия ствола в турели прекратит сброс мин Расстроен
Andrei [<>Ace] :
Поэтому на время работы устройства, в стеке турели запускаем скрипт, имитируя установку.
А вот тут сразу вопрос, как сделать команду, которая будет относится только к определенной турели (ну не хочу я пользовать раздел спец. команд), и не будет отображаться в командах для других турелей и в общей для всех турелей Ничего не понимаю... Хотя вроде задумка есть, но сейчас не могу проверить Расстроен В остальном задание почти выполнено, но времени жутко не хватает Рыдания.
    Добавлено: 15:36 11-12-2007   
Andrei [<>Ace]
 303 EGP


Рейтинг канала: 6(416)
Репутация: 108
Сообщения: 766
Откуда: Беларусь, Салiгорск
Зарегистрирован: 29.03.2006
бухой джедай :
чегото все равно не получается

Да обратись ты с этим вопросом в тему Скриптописание - делимся опытом, задаем вопросы, если поиском лень воспользоваться.
Да не просто скажи: "Вай не получается Расстроен ". Ты кусок из кода покажи, что ты набрал то там вообще. Поверь мне, помогут тебе и все у тебя получится.

WhiteWolf :
А вот тут сразу вопрос, как сделать команду, которая будет относится только к определенной турели

Легко. Читай справочник, команд там много.
1. Проверяем наличие турелей у корабля, предпочитаем кормовую, если нет - сойдет любая.
2. В ее стеке запускаем и крутим скрипт.
Остальные турели ведут себя как положено.

Последний раз редактировалось: Andrei [<>Ace] (11:36 12-12-2007), всего редактировалось 4 раз(а)
    Добавлено: 15:47 11-12-2007   
Канал X3: Reunion -> Модовый и скриптовый отсек X3: Reunion: «Скрипт-школа (Задачи для начинающих скриптописателей)»
На страницу: Пред.  1, 2, 3, 4, 5, 6, 7, 8, 9, 10  След. | Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: ...из-под асфальта лужа бьет фонтаном... (Fry)

  » Скрипт-школа (Задачи для начинающих скриптописателей) | страница 7
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18