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

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

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

   Страница 69 из 136
На страницу: Пред.  1, 2, 3 ... 68, 69, 70 ... 134, 135, 136  След.    Перейти:   Все страницы
Поиск в этой теме:
Канал X3: Reunion » Модовый и скриптовый отсек X3: Reunion: «Скриптописание - делимся опытом, задаем вопросы»
бухой джедай
 182 EGP


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


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

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

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

Ну к примеру есть такие команды:
Код:
<RetVar> = <RefObj> get max. number of lasers in turret <Var/Number>

· Команда возвращает максимальное число орудий в турели turret <Var/Number> объекта-корабля <RefObj>. Также, если установить turret 0, то команда вернет количество носовых орудий.

Если турели нет вернет 0

Код:
<RetVar/IF><RefObj> get max laser strength in turret <Var/Number>

· Команда  возвращает максимально возможный уровень огневой мощи объекта <RefObj> в турели <Var/Number>.

Если турели нет вернет 0

Осталось только перебрать все возможные турели и определиться какие есть - каких нет.

бухой джедай :
COMMAND_SIGNX3_FSUP_DROP_WARE

Таблица применяемых и свободных команд меню консоли корабля игры X3:Reunion. автор Andrei [<>Ace]

Эта команда из X3 Bonus Pack v3.1.07. При использовании этой коменды нужно указать два аргумента:
1: ware , Var/Ware of Ship , 'ware'
2: position , Var/Sector Position , 'position'
 описание команды   (кликните здесь для просмотра)
Эта команда имеет множество функций, зависящих от того, чем является сбрасываемый груз. Для большинства грузов, корабль просто прилетит в указанную позицию и сбросит весь выбранный товар из своего трюма. Товар будет дрейфовать в контейнере около корабля, и можете быть подобран любым кораблём, используя стандартную команду "Подбирать контейнеры...".

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

Команда будет избегать размещения более одного спутника в секторе в одном месте. Однако Вы можете разместить более одного спутника в одном секторе, когда новый будет располагаться вне зоны действия сканера любого существующего спутника. Использование 2 кораблей для сброса спутников в различных местах сектора может быть хорошей идеей в некоторых секторах Вселенной.

Тип покупаемого спутника базируется на типе, выбранном при старте команды. Если при старте команды Вы выбрали Улучшенный спутник, тогда все сбрасываемые спутники будут Улучшенными спутниками, и корабль попытается докупать только их.

Если желаете ограничить развёртывание спутников определёнными секторами рас, Вы можете настроить значения Друг/Враг корабля. Он посетит только те сектора, которые принадлежат дружественным расам. Корабль не будет посещать или развёртывать спутники в секторах, принадлежащих вражеским расам. Например, для предотвращения размещения спутников в пиратских секторах, всё, что Вы должны сделать, это установить Пиратов врагами в установках Друг/Враг корабля.

Есть одно обстоятельство, когда Вы можете найти свой корабль по развёртыванию спутниковой сети летящим во вражеских секторах. Это то, когда корабль находится в пути для закупки спутников, и прямой маршрут к торгующей ими станции прокладывается кораблём через вражеское пространство. Это та же проблема, от которой страдает торговец во Вселенной, и вызвана стандартными навигационными библиотеками, которые используют все корабли.

Сбросить мину СКВОШ
Если Вы выберете для сброса мину СКВОШ, команда переходит в режим создания минного поля. В этом режиме корабль разместит 8 мин по углам виртуального куба со сторонами 2 км от указанной позиции. Если корабль не располагает достаточным количеством мин СКВОШ, он попытается сначала докупить их.

Как только мины СКВОШ будут размещены, корабль свяжется с Вами и попросит активировать минное поле. В этом месте Вы можете запустить команду снова, пока не заминируете желаемую область, или можете активировать минное поле, связавшись с одной из мин и выбрав команду "Активировать все мины в секторе".

Сбросить Лазерную башню
Если Вы выберете для сброса Лазерную башню, корабль развернёт её в указанных координатах.


Последний раз редактировалось: Andrei [<>Ace] (16:15 12-12-2007), всего редактировалось 2 раз(а)
    Добавлено: 02:15 12-12-2007   
бухой джедай
 182 EGP


Рейтинг канала: 5(141)
Репутация: 70
Сообщения: 7906 Предупреждений: 1
Откуда: Одесса:)
Зарегистрирован: 08.09.2007
Есть несколько вопросов :
1) где можно посмотреть на примерный механизм создания
товара(по поиску не нашел,В 'скрипты-это просто' раздел так и не дописали);
2)если взрывать мину скриптом ,то взрыватся она будет с учетом ее боевых качеств или нет?
3)можно ли создать мину с помощью оператора "create flying ware"?
Заранее спасибо

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

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


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

Зарегистрирован: 24.10.2007
бухой джедай :
2)если взрывать мину скриптом ,то взрыватся она будет с учетом ее боевых качеств или нет?
Да, взорвется как настоящая Улыбка
бухой джедай :
3)можно ли создать мину с помощью оператора "create flying ware"?
Так создашь контейнер, мину создавай через create ship: тип мина, сектор и координаты в нем по желанию Улыбка
    Добавлено: 11:35 12-12-2007   
Andrei [<>Ace]
 303 EGP


Рейтинг канала: 6(416)
Репутация: 108
Сообщения: 766
Откуда: Беларусь, Салiгорск
Зарегистрирован: 29.03.2006
бухой джедай :
1) где можно посмотреть на примерный механизм создания
товара(по поиску не нашел,В 'скрипты-это просто' раздел так и не дописали);

Создаешь языковой файл. В нем вот такую запись:
Код:
<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>

Подгружаешь в игру свой языковой файл. Ищешь в списке товаров свой товар.

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


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

Зарегистрирован: 24.10.2007
Вопрос команда <RetVar> = <RefObj> get max. number of lasers in turret <Var/Number> возвращает номер последней пушки в турели (т.е. в нумерации от нуля) или максимальное число пушек в турели?
    Добавлено: 16:37 13-12-2007   
Andrei [<>Ace]
 303 EGP


Рейтинг канала: 6(416)
Репутация: 108
Сообщения: 766
Откуда: Беларусь, Салiгорск
Зарегистрирован: 29.03.2006
WhiteWolf :
Вопрос команда <RetVar> = <RefObj> get max. number of lasers in turret <Var/Number> возвращает номер последней пушки в турели (т.е. в нумерации от нуля) или максимальное число пушек в турели?

Количество слотов (посадочных мест) под лазеры в турели.
    Добавлено: 16:58 13-12-2007   
WhiteWolf
 55 EGP


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

Зарегистрирован: 24.10.2007
Andrei [<>Ace] :
Количество слотов (посадочных мест) под лазеры в турели.
Тогда почему вот такой код
Код:
$Turret = [THIS] -> get local variable: name= "TuretNumber"
$Guns = [THIS] -> get max. number of lasers in turret $Turret
write to player logbook [THIS]
write to player logbook $Turret
write to player logbook $Guns

в журнале дает строки
Код:
Нова
1
0
если в турели не установлено ни одной пушки?
И такие строки
Код:
Нова
1
1
если в турель установить ствол?

Последний раз редактировалось: WhiteWolf (17:14 13-12-2007), всего редактировалось 1 раз
    Добавлено: 17:12 13-12-2007   
Andrei [<>Ace]
 303 EGP


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

У меня выдает:
Нова
1
1

Стволов на корабле вообще нет Улыбка .

Проверь, как происходит запись в локальную переменную.
Может для первого случая там текст.

Последний раз редактировалось: Andrei [<>Ace] (17:26 13-12-2007), всего редактировалось 2 раз(а)
    Добавлено: 17:18 13-12-2007   
WhiteWolf
 55 EGP


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

Зарегистрирован: 24.10.2007
Andrei [<>Ace] :
У меня выдает:
Нова
1
1
Странно, потому, что у меня вот этот код
Код:
while 1
$Turret = [THIS] -> get local variable: name= "TuretNumber"
$Guns = [THIS] -> get max. number of lasers in turret $Turret
write to player logbook [THIS]
write to player logbook $Turret
write to player logbook $Guns
@ = wait 1000 ms
end

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

Andrei [<>Ace] :
Проверь, как происходит запись в локальную переменную.
В переменной точно число!!! И точно, это номер нужной турели.

PS Обнаружил, что странное поведение проявляется только если данный код запущен в стеке турели (в данном случае в стеке 1), в нулевом же стеке все работает на ура...

Последний раз редактировалось: WhiteWolf (18:40 13-12-2007), всего редактировалось 2 раз(а)
    Добавлено: 17:28 13-12-2007   
AlexYar
 1851 EGP


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

Зарегистрирован: 26.10.2003
WhiteWolf :
Обнаружил, что странное поведение проявляется только если данный код запущен в стеке турели


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

Последний раз редактировалось: AlexYar (20:47 13-12-2007), всего редактировалось 1 раз
    Добавлено: 20:25 13-12-2007   
WhiteWolf
 55 EGP


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

Зарегистрирован: 24.10.2007
AlexYar :
А откуда у Новы взялась передняя турель? А с Turret=3 что выдаёт?
Так почему-то задняя турель и определялась как Turret=1 Расстроен И именно в первой! турели происходили странности Расстроен
AlexYar :
В стеке турели нельзя ничего запускать кроме скриптов работы самой турели. Все скрипты в этих стеках перезапускаются игрой при входе игрока в сектор с потерей всех локальных данных скрипта.
Так я не покидал сектора... Ну и сразу вопрос:
AlexYar :
Все скрипты в этих стеках перезапускаются игрой при входе игрока в сектор с потерей всех локальных данных скрипта.
Т.е. локальные переменные для объекта сбрасываются в null? или всетаки только переменные определенные в самом скрипте?
    Добавлено: 20:44 13-12-2007   
AlexYar
 1851 EGP


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

Зарегистрирован: 26.10.2003
WhiteWolf :
Так почему-то задняя турель и определялась как Turret=1


Глянул в кишки игры Гы-гы Оказалось, что ИД у турелей несколько. Есть idx турели, есть typeID турели, а еще есть positionID турели. Если турель задняя определилась как первая, значит берётся idx. А идиксы у каждого корабля свои и идут в том порядке, как они прописаны в тшипсе. Но если турель всего одна, то можно быть уверенным, что её idx будет 1 (так как 0 у главного кокпита всегда).

WhiteWolf :
или всетаки только переменные определенные в самом скрипте?


Локальные переменные скрипта это такие переменные, которые определяются и используются внутри него. Локальная переменная объекта (корабля, станции и проч) - это совсем другое.
    Добавлено: 20:54 13-12-2007   
WhiteWolf
 55 EGP


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

Зарегистрирован: 24.10.2007
AlexYar :
Глянул в кишки игры Гы-гы Оказалось, что ИД у турелей несколько. Есть idx турели, есть typeID турели, а еще есть positionID турели. Если турель задняя определилась как первая, значит берётся idx. А идиксы у каждого корабля свои и идут в том порядке, как они прописаны в тшипсе. Но если турель всего одна, то можно быть уверенным, что её idx будет 1 (так как 0 у главного кокпита всегда).
Значит нужна команда точно определяющая расположение турели Улыбка (Я думаю понятно в чей огород камень брошен Гы-гы ) А по поводу переменных я так и подозревал Улыбка
    Добавлено: 21:03 13-12-2007   
AlexYar
 1851 EGP


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

Зарегистрирован: 26.10.2003
WhiteWolf :
Значит нужна команда точно определяющая расположение турели (Я думаю понятно в чей огород камень брошен )


Если верить описанию 2.0.02Ext beta 6 - такая команда уже давно есть Улыбка

Цитата:

1526 - <RetVar/IF> <Var/Ship> get cockpit <Var/Number> name

Возвращает имя кокпита.


1527 - <RetVar/IF> <Var/Ship> get turret <Var/Number> text ID

Возвращает t-ID названия турели данного корабля со страницы 2021.


Последняя (1527) команда позволяет узнать ориентацию турели (главная, перед, право, зад, лево, верх, низ) по её номеру. Причём на любой локализации игры.

1526 - возвращает текстовое название турели (то, которое пишется в меню вооружения).



зыж миллион восьмисоттысячная мессага на еге Гы-гы (по ссылке на сообщение).

Последний раз редактировалось: AlexYar (01:48 14-12-2007), всего редактировалось 1 раз
    Добавлено: 01:46 14-12-2007   
Andrei [<>Ace]
 303 EGP


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

AlexYar :
Локальные переменные скрипта это такие переменные, которые определяются и используются внутри него. Локальная переменная объекта (корабля, станции и проч) - это совсем другое.

Проверил - ничего не сбрасывается. Локальные переменные скрипта, запущенного в турели корабля игрока не сбрасывается ни через врата, ни через прыжковые двигатель.
    Добавлено: 16:12 14-12-2007   
Andrei [<>Ace]
 303 EGP


Рейтинг канала: 6(416)
Репутация: 108
Сообщения: 766
Откуда: Беларусь, Салiгорск
Зарегистрирован: 29.03.2006
Мечтатель :
В соседней теме это давненько обсуждалось.
http://www.elite-games.ru/conference/viewtopic.php?p=1542479#1542479
Andrei [<>Ace] ты же с пилотом Chem это обсуждал.

Сошлись на том, что разрабы редиски.

А кто они после такого бардака?

Мечтатель :
Нет ну идеи есть конечно. Ну например. Есть такая команда -
@ <RetVar/IF><RefObj> turn turret <Var/Number> to target <Var/Ship/Station> : timeout=<Var/Number> ms

Вот воспользовался твоей идеей. Улыбка

WhiteWolf :
Идея хорошая, но как ты и сам заметил в некоторых ситуациях может вернуть не верный результат Да и ожидание пока турель наводится на объект не есть хорошо

Хорошие идеи нужно развивать, хотябы в целях эксперемента.

Ниже скрипт. Возвращает массив турелей расположенных согласно таблицы:
0 - главная
1 - передняя
2 - правая
3 - задняя
4 - левая
5 - верхняя
6 - нижняя

Тоесть индекс номера турели укажет куда смотрит турель согласно таблицы.
Есть два нюанса:
1. для М7 работает не корректно, т.к. расположение турелей у М7 нестандартное.
2. скрипт должен обязательно запускаться глобально, чобы не оставить за собой мусора.

ace_service.rar
 Описание:
Возвращает массив турелей расположенных согласно таблицы:
 Имя файла:  ace_service.rar
 Размер файла:  1.94 KB
 Скачано:  379 раз(а)
    Добавлено: 15:36 16-12-2007   
Мечтатель
 75 EGP


Рейтинг канала: 5(188)
Репутация: 39
Сообщения: 357
Откуда: Киев
Зарегистрирован: 08.06.2007
Господа скриптеры. Есть задача. Неоднократно уже обсуждался вопрос о том что для HCF сложно задать цель абордажа.

Я поразмыслив нашел откуда это все дело запускается. Скрипт:
plugin.XTM.Cmd.Cap.xml

Он имеет три параметра. Насколько я понял:
1. Цель захвата;
2. Тип абордажников;
3. Их колличество.

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

Идея такова, чтобы отправить на корабль, котороый в качестве цели игрока всех абордажников которые есть в трюме, по команде горячей клавиши.

Есть предложения. Подмигиваю
_________________
Наука движется настолько быстро, что самые оптимистические прогнозы могут оказаться устаревшими!
    Добавлено: 15:56 16-12-2007   
WhiteWolf
 55 EGP


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

Зарегистрирован: 24.10.2007
Andrei [<>Ace] :
Возвращает массив турелей расположенных согласно таблицы:
Маяки создаются на осях координат в остчете от центра описанной сферы вокруг созданного корабля. На сколько я понимаю турели могут и не располагаться на осях координат идущих из центра корабля Расстроен И турели могут быть и меееееедленными, тогда времени наведения в 1000 мс может и не хватить Расстроен
PS Вот если был бы код возврата, что турель не может быть наведена, тогда было бы счастье, а так...

Последний раз редактировалось: WhiteWolf (16:21 16-12-2007), всего редактировалось 1 раз
    Добавлено: 16:06 16-12-2007   
Andrei [<>Ace]
 303 EGP


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

А зачем им располагаться на осях координат (тот же М7). Главное чтобы они нашли цель в своем сегменте сферы.

WhiteWolf :
И турели могут быть и меееееедленными, тогда времени наведения в 1000 мс может и не хватить

Да куда уже медленнее.

Но всеравно, скрипт только пример. Улыбка

WhiteWolf :
PS Вот если был бы код возврата, что турель не может быть наведена, тогда было бы счастье, а так...

Если бы турели по шаблону стояли, или команда была для определения расположения турели, тогда вообще ничего мудрить не нужно было.

Последний раз редактировалось: Andrei [<>Ace] (16:51 16-12-2007), всего редактировалось 1 раз
    Добавлено: 16:20 16-12-2007   
Канал X3: Reunion -> Модовый и скриптовый отсек X3: Reunion: «Скриптописание - делимся опытом, задаем вопросы»
На страницу: Пред.  1, 2, 3 ... 68, 69, 70 ... 134, 135, 136  След.    Перейти:   Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Я уже бутеры с чайком приготовил. (Ocean) - А я компота сливового попил. (RenderG) - Текстовый инстаграм штоле? (donald)

  » Скриптописание - делимся опытом, задаем вопросы | страница 69
Каналы: Новости | 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