Скриптописание: Вопросы и ответы.

Модераторы: Постигший истину, by.@ztek, Модераторы

Re: Скриптописание: Вопросы и ответы.

Сообщение by.@ztek » 07 июн 2011, 12:51

XXXL писал(а):Подскажите, как будет выглядеть строка м5 ИЛИ м4?

Так с М5 уже связан класс. Для М4 будет
<do_when value="{player.ship.class}" exact="{lookup.class@m4}">
Совершенству нет предела...
Аватар пользователя
by.@ztek
Admin
Admin
 
Сообщений: 1850
Изображения: 2
Зарегистрирован: 06 фев 2011, 00:24
DSP: 198
Откуда: Минск, Беларусь
Благодарил (а): 198 раз.
Поблагодарили: 646 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение XXXL » 07 июн 2011, 12:59

by.@ztek писал(а):...Так с М5 уже связан класс. Для М4 будет
<do_when value="{player.ship.class}" exact="{lookup.class@m4}">

В одной строке написать или м5 или м4 не получится?
XXXL
Skilled pilot
Skilled pilot
 
Сообщений: 297
Зарегистрирован: 08 фев 2011, 20:39
DSP: 26
Благодарил (а): 60 раз.
Поблагодарили: 48 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение by.@ztek » 07 июн 2011, 13:08

XXXL писал(а):В одной строке написать или м5 или м4 не получится?

Нет.

Добавлено спустя 11 минут 43 секунды:
Можно попробавать написать
<do_when value="{player.ship.class}" exact="{lookup.class@littleship}">
Только я не помню, какие классы входят в littleship :D . Напиши так и проверь на м3 и в скафандре.

Добавлено спустя 14 минут 24 секунды:
Вылетело из головы :) , можно через сепаратор сделать |
<do_when value="{player.ship.class}" list="{lookup.class@m4}|{lookup.class@m5}">
Совершенству нет предела...

За это сообщение автора by.@ztek поблагодарил:
XXXL
Рейтинг: 1.89%
 
Аватар пользователя
by.@ztek
Admin
Admin
 
Сообщений: 1850
Изображения: 2
Зарегистрирован: 06 фев 2011, 00:24
DSP: 198
Откуда: Минск, Беларусь
Благодарил (а): 198 раз.
Поблагодарили: 646 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение zaartix » 10 июн 2011, 16:18

В списке запущеных глобальных скриптов вижу ПИД, название скрипта и параметры входа. Можно-ли каким-нибудь образом убить скрипт? К примеру TOTT.Scenario.Start2 убить и запустить сюжет TOTT заного.
Аватар пользователя
zaartix
Newbie
Newbie
 
Сообщений: 7
Зарегистрирован: 08 июн 2011, 22:32
DSP: 0
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение by.@ztek » 10 июн 2011, 19:47

zaartix писал(а):Можно-ли каким-нибудь образом убить скрипт?

Можно. Нажми в global tasks на скрипт (выдели его) и кнопкой del убей его. А вот перезапустить...В основном сюжете работают два типа скриптов: МД и СЕ. СЕ ты убил, перезапустил, допустим, а МД скрипт как?
Совершенству нет предела...
Аватар пользователя
by.@ztek
Admin
Admin
 
Сообщений: 1850
Изображения: 2
Зарегистрирован: 06 фев 2011, 00:24
DSP: 198
Откуда: Минск, Беларусь
Благодарил (а): 198 раз.
Поблагодарили: 646 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение zaartix » 10 июн 2011, 22:22

by.@ztek писал(а):Можно. Нажми в global tasks на скрипт (выдели его) и кнопкой del убей его. А вот перезапустить...В основном сюжете работают два типа скриптов: МД и СЕ. СЕ ты убил, перезапустил, допустим, а МД скрипт как?

мда, значит я погорячился. Но все-равно спасибо за ответ
Аватар пользователя
zaartix
Newbie
Newbie
 
Сообщений: 7
Зарегистрирован: 08 июн 2011, 22:32
DSP: 0
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение by.@ztek » 10 июн 2011, 22:34

by.@ztek писал(а):А вот перезапустить..

Тем более, там, вроде бы, глобальная переменная переназначается. И Перезапуск возможен только если эту переменную переназначить, а для этого скрипт писать надо, да и для МД скрипт нужен будет, но он простой (<reset_cue cue="Имя скрипта"/>) , а в МД я разбивал на глобальные эпизоды - достаточно первый перезапустить, остальные пойдут.
Совершенству нет предела...
Аватар пользователя
by.@ztek
Admin
Admin
 
Сообщений: 1850
Изображения: 2
Зарегистрирован: 06 фев 2011, 00:24
DSP: 198
Откуда: Минск, Беларусь
Благодарил (а): 198 раз.
Поблагодарили: 646 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение XXXL » 11 июн 2011, 05:41

by.@ztek писал(а):... Вылетело из головы :) , можно через сепаратор сделать |
<do_when value="{player.ship.class}" list="{lookup.class@m4}|{lookup.class@m5}">

Еще раз спасибо. Но один ответ создаёт два(три) новых вопроса. :)
MD-Scr. 1. Прочитать боевой и торговый рейтинг.
2. Прочитать максимальный размер трюма.
3. Чем отличаются maxspeed (это текущая максимальная или возможно максимальная) от basespeed?
XXXL
Skilled pilot
Skilled pilot
 
Сообщений: 297
Зарегистрирован: 08 фев 2011, 20:39
DSP: 26
Благодарил (а): 60 раз.
Поблагодарили: 48 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение by.@ztek » 11 июн 2011, 23:54

XXXL писал(а):1. Прочитать боевой и торговый рейтинг.

{player.fightrank.rank} - ранг боевой, например, проверить на уровень 10
Код: выделить все
<check_value value="{player.fightrank.rank}" exact="10"/>

На торговый аналогично
Код: выделить все
<check_value value="{player.traderank.rank}" exact="10"/>

Есть еще переменные уровней в процентах (по текущему значению), в баллах, и в имени. Вот для боевого
{player.fightrank} Fight rank of the player
{player.fightrank.rank} Fight rank number of the player
{player.fightrank.percent} Fight rank percentage within rank number of the player
{player.fightrank.name} Fight rank name of the player
Думаю, много придется описывать, пиши мне в личку :)
Совершенству нет предела...
Аватар пользователя
by.@ztek
Admin
Admin
 
Сообщений: 1850
Изображения: 2
Зарегистрирован: 06 фев 2011, 00:24
DSP: 198
Откуда: Минск, Беларусь
Благодарил (а): 198 раз.
Поблагодарили: 646 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение kolxidius » 25 июн 2011, 19:18

Народ привет, есть желание запустить скрипт true_energy_245 . Вроде все понятно что надо нажать R ну и дальше непонятка или null или указать станцию с кораблем.И в том и в том случае помоему ничего не происходит. или я ошиба.сь или не так что то делаю. Помогите нубу плиз???
Я рожден в прошлом столетии, стране и города которых уже нет.
Аватар пользователя
kolxidius
Newbie
Newbie
 
Сообщений: 2
Зарегистрирован: 21 июн 2011, 06:12
DSP: 0
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение by.@ztek » 26 июн 2011, 13:42

kolxidius писал(а):есть желание запустить скрипт true_energy_245

Сторнние скрипты. Не видел такого ни разу. Вообще - надо цель указывать, на которую будет работать скрипт.
Совершенству нет предела...
Аватар пользователя
by.@ztek
Admin
Admin
 
Сообщений: 1850
Изображения: 2
Зарегистрирован: 06 фев 2011, 00:24
DSP: 198
Откуда: Минск, Беларусь
Благодарил (а): 198 раз.
Поблагодарили: 646 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение shvetsov0711 » 26 июн 2011, 20:29

Можно ли написать такой скрипт, чтобы команда ракетный шквал появилась в консоли управления звена М8, т.е. чтобы ее можно было отдать нескольким бомбардировщикам одновременно? И скриптом ли это решается?
Аватар пользователя
shvetsov0711
Skilled pilot
Skilled pilot
 
Сообщений: 288
Зарегистрирован: 08 фев 2011, 21:02
DSP: 13
Благодарил (а): 27 раз.
Поблагодарили: 27 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение XXXL » 03 июл 2011, 07:26

Подскажите пожалуйста typename= для космотоплива или место, где можно найти.
XXXL
Skilled pilot
Skilled pilot
 
Сообщений: 297
Зарегистрирован: 08 фев 2011, 20:39
DSP: 26
Благодарил (а): 60 раз.
Поблагодарили: 48 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение Nimfa » 03 июл 2011, 14:36

XXXL писал(а):Подскажите пожалуйста typename= для космотоплива или место, где можно найти.

SS_WARE_F219

За это сообщение автора Nimfa поблагодарил:
XXXL
Рейтинг: 1.89%
 
Аватар пользователя
Nimfa
Newbie
Newbie
 
Сообщений: 1
Зарегистрирован: 17 май 2011, 07:52
DSP: 3
Благодарил (а): 2 раз.
Поблагодарили: 1 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение DNA78 » 04 июл 2011, 10:30

Ребят такой вопрос, а можно как-то подключить какую нибудь карту галактики с помощью скриптов. Чего-то я слышал, что это можно сделать с помощью MD. Ну вот хотябы на примере этих двух: maps\TOTT_Map_Fight.xml или maps\x3_universe_2.0.xml. Как они загружаются в игру?

Добавлено спустя 8 минут 22 секунды:
А всё нашёл <load_map file="TOTT_Map_Fight"/>. Теперь следующий вопрос: как можно заставить подгрузиться эту карту при включении пункта в настройке Искуственной Жизни, т.е. как управлять MD в SE ?

Добавлено спустя 3 минуты 39 секунд:
И можно это как-то по подробней: на примере мода, наверняка в нём это уже как-то реализовано.

Добавлено спустя 4 минуты 48 секунд:
by.@ztek писал(а):Уровень сложности игры какой? На мои патрули жалуются - что прохода не дают. Но мои только в центральных секторах рас патрулируют. И начиная с уровня "Обычный".

Вот примерно так, только чтобы уровни можно было выберать из настроек ИИ, а в место уровней, ну к примеру "Подключить файл карты".

Добавлено спустя 39 минут 58 секунд:
Я так понимаю логика такова: в SE нужно задать какой-то глобальной переменной значение 1, а в MD прочитать эту переменныю и если значение равно 1, то load map file. Вот только как это всё в MD заскриптить ? В MD я полный нуб.
Аватар пользователя
DNA78
Moderator
Moderator
 
Сообщений: 551
Изображения: 2
Зарегистрирован: 09 фев 2011, 20:08
DSP: 107
Благодарил (а): 95 раз.
Поблагодарили: 317 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение by.@ztek » 04 июл 2011, 12:27

DNA78 писал(а):а в MD прочитать эту переменныю и если значение равно 1, то load map file

МД не читает переменные СЕ. В СЕ надо, при выборе чего-нибудь в настройках ИИ, создавать объект (спутник, астер, маяк (не важно что) по определенным координатам в каком-нибудь секторе, подальше, чтоб никто не нашел), а затем в МД искать этот объект - и если объект есть - тогда уж load_map.
Вот я делал - найти в секторе x="18" y="10" объект аргонский SS_SH_BEACON:
<condition>
<check_all>
<count_ships typename="SS_SH_BEACON" race="argon" min="1">
<sector x="18" y="10"/>
</count_ships>
</check_all>
</condition>
И потом грузить карту.
Совершенству нет предела...
Аватар пользователя
by.@ztek
Admin
Admin
 
Сообщений: 1850
Изображения: 2
Зарегистрирован: 06 фев 2011, 00:24
DSP: 198
Откуда: Минск, Беларусь
Благодарил (а): 198 раз.
Поблагодарили: 646 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение DNA78 » 04 июл 2011, 13:04

by.@ztek писал(а):
DNA78 писал(а):а в MD прочитать эту переменныю и если значение равно 1, то load map file

МД не читает переменные СЕ. В СЕ надо, при выборе чего-нибудь в настройках ИИ, создавать объект (спутник, астер, маяк (не важно что) по определенным координатам в каком-нибудь секторе, подальше, чтоб никто не нашел), а затем в МД искать этот объект - и если объект есть - тогда уж load_map.
Вот я делал - найти в секторе x="18" y="10" объект аргонский SS_SH_BEACON:
<condition>
<check_all>
<count_ships typename="SS_SH_BEACON" race="argon" min="1">
<sector x="18" y="10"/>
</count_ships>
</check_all>
</condition>
И потом грузить карту.

Ага понятно. С атрибутом race="" всё понятно, а атрибут min="" за что отвечает? И ещё, а изменения вступят в силу сразу или после переагрузки ?
Аватар пользователя
DNA78
Moderator
Moderator
 
Сообщений: 551
Изображения: 2
Зарегистрирован: 09 фев 2011, 20:08
DSP: 107
Благодарил (а): 95 раз.
Поблагодарили: 317 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение vivere » 04 июл 2011, 13:10

DNA78 писал(а):Ага понятно. С атрибутом race="" всё понятно, а атрибут min="" за что отвечает?

функция поиска: min означает, как минимум один объект удовлетворяет критериям.
DNA78 писал(а):И ещё, а изменения вступят в силу сразу или после переагрузки ?

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

За это сообщение автора vivere поблагодарил:
DNA78
Рейтинг: 1.89%
 
Аватар пользователя
vivere
Admin
Admin
 
Сообщений: 434
Зарегистрирован: 17 фев 2011, 15:06
DSP: 56
Благодарил (а): 104 раз.
Поблагодарили: 142 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение DNA78 » 04 июл 2011, 14:11

Вот, посмотрите правильно ли я всё сделал :)
Код: выделить все
<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet href="director.xsl" type="text/xsl" ?>
<director name="fight" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="director.xsd">
 <documentation>
  <author name="by.@ztek"/>
  <content name="newfighttraining" description=""/>
  <version number="2.0" date="27-08-2010" status="candidate"/>
 </documentation>
 <cues>
  <cue name="startfighttraining">
   <condition>
    <check_all>
     <count_ships typename="SS_SH_BEACON" race="argon" min="1">
      <sector x="18" y="10"/>
     </count_ships>
    </check_all>
   </condition>
   <action>
    <do_all>
     <load_map file="TOTT_Map_Fight"/>
    </do_all>
   </action>
  </cue>
 </cues>
</director>

Это просто структура нужного мне MD скрипта. И загружаться он будет каждый раз при загрузки сейва или начала новой игры, да?
Аватар пользователя
DNA78
Moderator
Moderator
 
Сообщений: 551
Изображения: 2
Зарегистрирован: 09 фев 2011, 20:08
DSP: 107
Благодарил (а): 95 раз.
Поблагодарили: 317 раз.

Re: Скриптописание: Вопросы и ответы.

Сообщение by.@ztek » 04 июл 2011, 14:50

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

Да. При условии, что объект минимум один есть. Все правильно :)
Совершенству нет предела...

За это сообщение автора by.@ztek поблагодарил:
DNA78
Рейтинг: 1.89%
 
Аватар пользователя
by.@ztek
Admin
Admin
 
Сообщений: 1850
Изображения: 2
Зарегистрирован: 06 фев 2011, 00:24
DSP: 198
Откуда: Минск, Беларусь
Благодарил (а): 198 раз.
Поблагодарили: 646 раз.

Пред.След.

Вернуться в X3: Time Of The Truth

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2