Коды X3: Земной конфликт

Чтобы активировать редактор скриптов необходимо сделать следующее:
1. В боковом меню слева находим раздел "Личные" -- "Дополнительно" -- "Изменить имя"
2. Вводим "Thereshallbewings" точно так как написано здесь (с большой буквы и двумя маленькими буквами "L", обратите внимание что игра блокирует двойное нажатие клавиши, поэтому необходимо сделать небольшую паузу при наборе)

После этого, если все сделано правильно, имя пилота останется прежним. Для проверки имени повторяем пункт 1.

Для входа в редактор скриптов:
1. жмем [Shift]+[C]
2. жмем [S] или находим строку "Редактор скриптов"
3. [Enter], пропускаем справочное окно
4. "Редактор скриптов"

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

Создание корабля

После создания данного скрипта вы сможете создавать любое количество кораблей с оружием, щитами и оборудованием всего за несколько секунд. При создании кораблей можно будет выбрать:
  • количество кораблей;
  • класс кораблей;
  • сектор в котором они будут созданы;
  • кому будут принадлежать созданные корабли (врагу, союзнику или игроку).
В списке выбираем «Новый скрипт»
Вводим название нашего скрипта (любое). Например: newShip

В разделе «Параметры»:
  1. «Новый параметр» -- вводим название параметра number -- в самом низу списка выбираем «Число» -- пишем любое описание. Например: number of ships (чтобы потом можно было понять что от нас хотят)
  2. «Новый параметр» -- вводим название параметра type -- выбираем «Перем/Тип корабля» - пишем любое описание. Например: type of ships
  3. «Новый параметр» -- вводим название параметра: owner -- выбираем «Перем/Раса» -- пишем любое описание. Например: owner
  4. «Новый параметр» -- вводим название параметра: position -- выбираем «Перем/Сектор» -- пишем любое описание. Например: position
В разделе «Код»:
  1. «Новая строка» -- «Общие команды» и выбираем строку «Возвр/IF Выражение» -- в разделе «Ввод кода» выбираем while -- наводим курсор на вопросительный знак возле while и выбираем number
  2. «Новая строка» -- «Общие команды для объектов» -- «Создание объектов» и находим строку «create ship: type=» -- в разделе «Вводи скрипта» выбираем «Переменная» -- вводим название параметра: ship
  3. «Новая строка» -- «Торговые команды» -- «Для кораблей» и находим строку «add default items to ship» -- в разделе «Доступные переменные» вбираем «ship»
  4. «Новая строка» -- «Общие команды» и выбираем строку «dec ВозврПерем =» -- в разделе «Доступные переменные» выбираем number
  5. «Новая строка» -- «Общие команды» -- «Управление исполнением цикла» и выбираем строку «end conditional»
В разделе «Код» строка create ship: type=:
  • наводим курсор на вопросительный знак возле create ship: type= -- в самом верху в разделе «Доступные переменные» выбираем строку type
  • для owner= выбираем owner
  • для addto= выбираем position
  • для x= / y= / z= выбираем null
Жмем [Esc] -- «Да» (сохраняем скрипт)
Все. Скрипт готов к использованию.

Должно получится вот это



Примечание: return null добавляется автоматически при сохранении скрипта и должен быть всегда в самом низу.

Теперь, для создания кораблей наводим курсор на наш скрипт (newShip) и жмем [R](запустить)
Жмем [Enter][Enter]
  1. Выбираем «Число» и вводим необходимое количество кораблей
  2. Выбираем «Выбрать тип корабля» -- выбираем класс корабля который хотим получить
  3. Выбираем «Выбрать расу» -- выбираем кому будет принадлежать созданный корабль. Если хотите чтобы корабль принадлежал вам - выбирайте «Игрок»
    • Раса Игрок — это имя вашего главного героя (можно посмотреть в боковом меню слева в разделе «Личные» — «Дополнительно» — «Изменить имя») или Player.
  4. Выбираем «Выбрать сектор» -- выбираем сектор в котором будет создан наш корабль

Создание кораблей с оборудованием

Скрипт создания кораблей готов, но после создания все корабли будут иметь только базовый набор оборудования, несколько лазеров и щитов. Никакого дополнительного, специфического оборудования, такого как прыжковый двигатель или чего-то еще  у созданных с помощью предыдущего скрипта кораблей не будет. Чтобы это исправить и при создании каждый корабль имел все, что вы только захотите, предыдущий скрипт необходимо немного модифицировать — добавить по одной строке кода для каждого оборудования.

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

Для добавления 1 оборудования, щита, ресурса или оружия в разделе Код между строками 003-004 необходимо добавить следующую:

= $ship add количество units of название_оборудования

Разумеется, вместо «количество» необходимо задать количество добавляемого оборудования, а вместо «название_оборудования» — выбрать из списка то, что вы хотите добавить.

Примечания
  • Если вы добавляете оружие и щиты, то они будут добавлены и установлены только в том случаи, если создаваемый корабль может их нести. Если же корабль не может нести класс добавляемого груза — предмет не будет добавлен (установлен).
  • Если добавить такое оборудование как  «Форсирования двигателя» и «Оптимизация рулевого управления» в количестве, которое превышает максимально возможное для данного корабля, то созданный корабль будет иметь улучшенную маневренность и максимальную скорость. Однако, данное правило не распространяется на щиты и «Расширение грузового отсека».
  • При добавлении всего оборудования, кроме «Форсирования двигателя», «Оптимизация рулевого управления» и  «Расширение грузового отсека» в качестве количества необходимо указывать 1.
  • Расширить грузовой отсек можно, но не больше максимального значения.
  • Если при добавлении оружия и щитов они не устанавливаются на корабль, а только добавляются в грузовой трюм — используйте вместо add команду install, которая полностью аналогичная предыдущей команде по настройке и находится в том же разделе «Торговые команды».
Теперь, чтобы добавить строку «= $ship add количество units of название_оборудования» делаем следующее:
  • выделите строку 004 и нажмите [Insert] — добавите пустую строку;
  • нажмите [Enter] —  Торговые команды —  ... add ... units of ...—  <не возвращает значение>
После этих действий у вас должна появится следующая строка:
  • 004 = <?> add <?> units of <?>
Все три <?> необходимо заполнить. Для этого по очереди наведите курсор на эти знаки и нажмите [Enter].
  • первый знак — выберите из списка вверху переменную ship
  • второй — внизу списка выберите <Число> и укажите какое количество оборудования вы хотите добавить
  • третий — Выбрать товар — выберите что вы хотите добавить
Теперь у вас должна быть строка следующего вида:
  • 004 = $ship add количество units of название_оборудования
Чтобы каждый раз не проделывать все операции по добавлению этой строки ее можно скопировать:
  • выделите строку 004;
  • нажмите на клавиатуре [C] — скопируйте строку
  • нажмите на клавиатуре [V] — вставите строку над выделенной
Скопируйте эту строку необходимое количество раз, поменяйте «количество» и «название_оборудования» — заполните список всем, что вы хотите чтобы было у создаваемых кораблей.

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

Уничтожение любой станции или корабля

В списке выбираем «Новый скрипт»
Вводим название нашего скрипта (любое). Например: DELETE
  1. В разделе «Параметры» выбираем «Новый параметр» -- вводим obj -- выбираем «Перем/Корабль/Станция» -- вводим любое описание
  2. В разделе «Код» выбираем «Новая строка» -- «Общие команды для объектов» -- выбираем destruct: show on explosion= -- «Доступные переменные» выбираем obj
  3. Кликаем возле вопросительного знака destruct: show on explosion= -- выбираем null
  4. Жмем [Esc] -- «Да» (сохраняем скрипт)
Должно получится вот это



Примечание: return null добавляется автоматически при сохранении скрипта и должен быть всегда в самом низу.

Чтобы уничтожить необходимый корабль или станцию:
  1. В списке скриптов наводим курсор на наш скрипт (DELETE) и жмем [R] (запустить)
  2. Жмем [Enter][Enter]
  3. «Выбрать корабль или станцию» - указываем что уничтожить

Добавление оружия, лазеров, щитов и ресурсов

С помощью данного скрипта можно добавить (поместить в грузовой трюм) на выбранный корабль или станцию необходимое количество:
  • ресурсов (батареек, руды, кремневых дисков и т.д.);
  • оружие, щиты и оборудование;
  • увеличить максимальную скорость и маневренность любого корабля;
  • добавить на свой корабль класса TL станцию для дальнейшей постройки.
В списке выбираем «Новый скрипт»
Вводим название нашего скрипта (любое). Например: addObj

В разделе «Параметры»:
  1. «Новый параметр» -- вводим number -- выбираем «Число» -- пишем любое описание.
  2. «Новый параметр» -- вводим obj -- выбираем «Перем/Все товары» - пишем любое описание.
  3. «Новый параметр» -- вводим target -- выбираем «Перем/Корабль/Станция игрока» -- пишем любое описание.
В разделе «Код»:
  1. «Новая строка» -- «Торговые команды» и выбираем add ... units of -- в разделе «Доступные переменные» вбираем target
В разделе «Код» строка $target=
  1. наводим курсор на вопросительный знак возле $target= -- в разделе «Доступные переменные» выбираем строку target
  2. для add выбираем number
  3. для units of выбираем obj
Жмем [Esc] -- «Да» (сохраняем скрипт)

Должно получится вот это



Примечание: return null добавляется автоматически при сохранении скрипта и должен быть всегда в самом низу.

Чтобы добавить ресурсы, оружие, броню, щиты или оборудования:
  1. В списке скриптов наводим курсор на наш скрипт (addObj) и жмем [R] (запустить)
  2. Жмем [Enter][Enter]
  3. «Число» -- вводим количество предметов которое хотим получить
  4. «Выбрать товар» -- выбираем товар/оборудование
  5. «Выбрать корабль или станцию игрока» -- выбираем кода будет помещен груз

Строительство станций 1 (быстро)

С помощью данного метода вы сможете быстро построить неограниченное количество станций. Все построенные данным методом станции будут принадлежать вам.

Чтобы создать собственую станцию необходимо:
  1. С помощью скрипта Создание корабля создать 1 корабль класса TL
  2. Создать скрипт Добавление оружия, лазеров, щитов и ресурсов (инструкция по созданию немного выше)
Чтобы получить станцию:
  1. В списке скриптов наводим курсор на скрипт «Добавления оружия, лазеров, щитов и ресурсов» (addObj) и жмем [R] (запустить)
  2. Жмем [Enter][Enter]
  3. «Число» -- вводим количество станций которое хотим получить
  4. «Выбрать тип станции» -- выбираем станцию
  5. «Выбрать корабль или станцию игрока» -- выбираем корабль класса TL

Строительство станций 2 (больше возможностей)

Данный метод создания станция в первую очередь предназначен для постройки станций других рас. Возможности данного скрипта без необходимости изменения кода:
  • выбор типа станции;
  • выбор сектора и положения станции;
  • выбор расы владельца.
Примечания:
  • все созданные с помощью данного скрипта станции будут иметь максимальное количество всех необходимых для производства ресурсов;
  • при строительстве станций и выборе любой расы, кроме «Игрок/Player», станция будет управляться NPC;
  • все созданные станции NPC будут автоматически изменять стоимость покупки сырья и продажи товаров в зависимости от их количества, то есть точно также как и другие «стандартные» станции;
  • «Оружейные доки», «Торговые станции» и «Корабельные верфи» создаются пустыми, без ресурсов, товаров и оборудования.
Прежде чем приступать к самому скрипту постройки станции хочу заметить, что совсем не обязательно писать скрипт полностью, но в таком случаи он будет лишен некоторых функций. Для создания станции и функционирования скрипта обязательно должны присутствовать все строки в диапазоне 001-006 и раздел «Параметры», а все другие можете добавляйте на свое усмотрение.

Какие строчки кода за что отвечают:
  • 001-003 - определение координат x/y/z из указанной на карте точке;
  • 004 - определение сектора в котором будет создана станция;
  • 006 - создание станции;
  • 007 - добавление стандартного набора продукции, ресурсов и щитов для данного типа станции;
  • 008, 009 - полное восстановление щитов (100%);
  • 010 - запуск станции (без этой строки станция не будет производить товар);
  • 011 - добавление на счет станции 10 000 000 кредитов (не рекомендуется удалять эту строку, если вы создаете станцию NPC);
  • 013-023 - добавление максимального количества ресурсов на станцию;
  • 018, 019, 022 - если удалить все эти сточки, то станция получит не только все необходимые для производства ресурсы, но и сам товар в максимально возможном количестве.


Где искать необходимые строчки кода из раздела Код:
  • 001-004, 017 - «Общие команды» -- «Массивы» -- <Возвр/IF><Перем/Массив>[<Перем/Число>]
  • 006 - «Общие команды для объектов» -- «Создание объектов»
  • 007, 013, 018, 020 - «Торговые команды» -- «для станций»
  • 008, 009, 010 - «Общие команды для объектов»
  • 011 - «Торговые команды» -- «для кораблей и станций»
  • 014 - «Общие команды» -- «Массивы»
  • 015 - «Общие команды» -- <Возвр/IF><Выражение> -- while
  • 016 - «Общие команды» -- dec <ВозврПерем> =
  • 019 - «Общие команды» -- <Возвр/IF><Выражение> -- if
  • 021 - «Торговые команды»
  • 022 - «Общие команды» -- «Управление исполнением цикла» -- end conditional
Запуск скрипта
  1. Выделите созданный скрипт постройки станций в списке.
  2. Нажмите [R][Enter][Enter]
  3. «Выбрать тип станции».
  4. «Выбрать расу» - укажите расу-владельца станции.
  5. «Выбрать положение сектора». Выбираем необходимый сектор и переходим на цифровую клавиатуру. С помощью клавиш перемещения (2,4,6,8) на цифровой клавиатуре и клавиши смены плоскости (Insert) укажите, где именно вы ходите построить станцию и нажмите [Enter].
После этого произойдет постройка станции.

Неуязвимый корабль, станция

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

Раздел Параметры должен выглядеть следующим образом:
Параметр 1: obj, Перем/Корабль/Станция игрока, '[описание]'

Раздел Код:
001 $obj-> ignore collisions: 1

ignore collisions ищем в разделе «Общие команды для объектов» (почти в самом низу).

ignore collisions: 1 - включить неуязвимость
ignore collisions: 0 - отключить неуязвимость

После применения этого скрипта к кораблю сможете пролетать сквозь все объекты, включая вражеские лазеры.

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

Bind скриптов на горячие клавиши

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

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

К примеру, на горячую клавишу можно повесить «Скрипт неуязвимости» и нельзя повесить «Создание корабля», если во время выполнения этого скрипта вы выбираете количество, тип, расу и другие параметры.

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

Раздел Код:
001 $bind-> register hotkey '[Описание клавиши]' to call script '[название скрипта]'
  • register hotkey - ищите в разделе «Общие команды».
  • описание клавиши - здесь пишите что хотите. Это описание будет отображаться при назначении горячей клавиши для скрипта.
  • название скрипта - наведите курсор на вопросительный знак -- нажмите [Enter] и выберите созданный вами скрипт, который необходимо вызывать с помощью горячей клавиши.
После создания этого скрипта в списке скриптов наведите на него курсор и нажмите [R][Enter][Enter]. После этого переходим в главное меню (слева) -- Управление -- переходим на вкладку Интерфейс -- в разделе Дополнительно (самом низу) ищем строку, которую вы задали как описание клавиши и назначаем любую не занятую клавишу. Теперь, если нажмете на заданную клавишу - произойдет выполнение скрипта.

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

Примечание. Чтобы забиндить несколько скриптов на клавиши создайте такое же количество скриптов для бинду. 1 клавиша - 1 скрипт.

Мгновенное восстановление энергии лазеров и щитов

С помощью этого скрипта вы сможете мгновенно восстановить всю энергию лазеров и щитов нажатием всего одной клавиши.

Создаем новый скрипт с произвольным названием. Раздел Параметры оставляем пустым.

Раздел Код:
001 $laser= [PLAYERSHIP]-> get maximum laser strength
002 [PLAYERSHIP]-> set laser energy to $laser
003 $shield= [PLAYERSHIP]-> get maximum shield strength
004 [PLAYERSHIP]-> set current shield strength to $shield


Где искать необходимые строчки кода:
  • get maximum laser strength - в разделе «Общие команды для объектов»
  • set laser energy to - «Общие команды для объектов» -- «Информация об оружии»
  • get maximum shield strength - «Общие команды для объектов»
  • set current shield strength to - «Общие команды для объектов»
Что делает каждая из написанных строчек скрипта:
  • 001 - узнаем максимально возможное количество энергии лазеров для текущего корабля игрока и записываем это значение в переменную $laser
  • 002 - задаем нашему кораблю количество энергии лазеров в $laser единиц.
  • 003 - узнаем максимально возможное количество энергии щитов для текущего корабля игрока и записываем это значение в переменную $shield
  • 004 - задаем нашему кораблю количество энергии щитов в $shield единиц.
Теперь, чтобы этот скрипт «повесить» на одну из клавиш клавиатуры сделайте следующее:
  1. создайте новый скрипт по инструкции «Bind скриптов на горячие клавиши»;
  2. во время создания этого скрипта вместо [название скрипта] выберите из списка скрипт восстанавливающий энергию лазеров и щитов, который только что создали;
  3. запустите созданный скрипт привязки клавиш;
  4. назначите клавишу для скрипта восстановления;
  5. сохраните игру.

Создание врат

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

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

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

Создаем новый скрипт с названием aGate (название не имеет никакого значения, можете ввести любое).

А теперь смотрим на скриншот ниже и заполняем разделы Параметры и Код. Все должно быть точно так как на скриншоте, по-другому скрипт не заработает. Пустые строчки не обязательны. Последняя строчка 020 return null будет добавленная автоматически после сохранения скрипта.



Где искать необходимые строчки кода из раздела Код:
  • строки 001-007, 009, 013 - «Общие команды» -- «Массивы» -- <Возвр/IF><Перем/Массив>[<Перем/Число>]
  • 010, 011, 014, 015 - «Команды секторов и Галактики»
  • 017, 019 - «Общие команды для объектов» -- «Создание объектов»
Примечание. Все что начинается со знака доллара ($) - это переменные. Если их нет в списке - выберите пункт <Переменная> и введите имя переменной, точно такое же как на скриншоте.

Чтобы запустить скрипт создания врат сделайте следующее:
  1. В списке скриптов наведите курсор на созданный скрипт (aGate) и нажмите [R][Enter][Enter].
  2. «Выбрать положение сектора» -- выберите сектор и нажмите [Enter] -- используя клавиши на цифровой клавиатуре 2/4/6/8 и клавишу [Insert] (для переключения плоскости карты) укажите место для размещения первых врат и нажмите [Enter].
  3. Повторите предыдущий пункт, чтобы выбрать сектор и размещение для вторых врат.
Врата созданы. Теперь вы и все другие корабли могут их использовать для перемещения.

Примечания:
  • в одном секторе можно создать неограниченное количество врат;
  • все созданные врата «смотрят» на юг и повернуть их нельзя никак (можно повернуть любой объект, но только не врата);
  • если вы создали несколько врат в одном и том же секторе, то все корабли будут прилетать из последних созданных врат, а все другие будут использоваться только для отправления (это можно исправить, но код увеличится в несколько раз);
  • при создании нескольких врат в одном секторе сделайте между ними большое расстояние (минимум 10 км.), чтобы не было столкновений между кораблями.
Удаление созданных врат
Этот скрипт предназначен для удаления пары врат. При удалении одних врат другие будут удалены автоматически.

Создайте новый скрипт с произвольным названием.

Параметры:
  • Параметр 1: $obj, Перем/Врата, 'любое описание'
Код:
  • 001 $obj -> destruct: show on explosion= 1
Строку destruct: show on explosion ищите в разделе «Общие параметры для объектов».

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

Внимание! При удалении стандартных врат последствия могут быть непредсказуемыми. Восстановить (создать) стандартные намного сложнее и сделать это с помощью написанного выше скрипта вам не удастся.

Абордаж горячей клавишей

С помощью данного скрипта вы сможете быстро отправить свою абордажную команду для захвата вражеского корабля нажатием всего одной клавиши. Искать эту команду в каком-то меню больше не нужно.

Создаем новый скрипт с названием aBoarding или любым другим. Смотрим на скриншот ниже и заполняем раздел Код.

Примечания к созданию скрипта.
  • Раздел Параметры должен быть пустым (как на скриншоте ниже).
  • Все должно быть точно так как на скриншоте, по-другому скрипт не заработает.
  • Пустые строчки не обязательны.
  • Последняя строчка return null будет добавленная автоматически после сохранения скрипта.
  • Все строки в диапазоне от 004 до 016 - не обязательны и предназначены только для увеличения максимальной скорости всех десантников с 28 до 308 м/с. Если вас устраивает стандартная скорость десантников (28 м/с) и вы не хотите ее увеличивать - не добавляйте эти строки во время создания скрипта.


Где искать необходимые строчки кода из раздела Код:
  • 001 - «Команды автопилота»
  • 002 - «Торговые команды» -- «Пассажиры»
  • 003 - «Команды автопилота»
  • 005 - комментарий, никак не влияет на скрипт
  • 006 - «Общие команды для объектов»
  • 007 - «Команды секторов и Галактики»
    • class or type= - в разделе «Ввод скрипта» выберите «Выбрать класс объекта» -- Астронавт
    • flags= - в разделе «Константы» выберите «Выбрать константу» -- Find.Multiple
  • 009 - «Общие команды» -- «Массивы»
  • 010 - «Общие команды» -- <Возвр/IF><Выражение> -- while
  • 011 - «Общие команды» -- dec <ВозврПерем> =
  • 012 - «Общие команды» -- «Массивы» -- <Возвр/IF><Перем/Массив>[<Перем/Число>]
  • 013 - «Торговые команды» -- <Возвр/IF><РефрерОбъекта> instal <Перем/Число> units of <Перем/Товар> -- в разделе «Ввод скрипта» выберите <не возвращает значение>
  • 014 - «Общие команды для объектов»
  • 015 - «Общие команды» -- «Управление исполнением цикла» -- end conditional
Чтобы этот скрипт «повесить» на одну из клавиш клавиатуры сделайте следующее:
  1. создайте новый скрипт по инструкции «Bind скриптов на горячие клавиши»;
  2. во время создания этого скрипта вместо [название скрипта] выберите из списка скрипт aBoarding, который только что создали;
  3. запустите созданный скрипт привязки клавиш;
  4. назначите клавишу для скрипта восстановления;
  5. сохраните игру.

Добавление десантников в X3: Земной конфликт

Данный скрипт X3: Земной конфликт добавляет на ваш корабль десантников разного уровня прокачки навыков, но поменяв всего одно значение в скрипте, вы сможете прокачать всех десантников до максимально возможного уровня по всем специализациям.

Количество создаваемых десантников зависит количества свободного места под десантников. К примеру, если в вашем корабле уже есть 3 десантника из 8 возможных, то будет создано еще 5.

Так как этот скрипт не имеет Параметров, то его можно повесить на горячую клавишу. Как это сделать почитайте в разделе «Bind скриптов на горячие клавиши».

Создаем новый скрипт с произвольным названием. Смотрим на скриншот ниже и заполняем разделы Код. Все должно быть точно так как на скриншоте, по-другому скрипт не заработает. Последняя строчка return null будет добавленная автоматически после сохранения скрипта.


Где искать необходимые строчки кода из раздела Код:
  • 1 - Торговые команды -- Пассажиры
  • 2 - Общие команды -- <Возвр/IF><Выражение> -- while
  • 4-5 - Общие команды -- <Возвр/IF><Выражение> -- <Переменная>
  • 7-10 - Общие команды
  • 12 - Торговые команды» -- Пассажиры
    • Если значение параметров name, race, voice и face установлено в null, то все десантники будут иметь произвольное имя, расу, голос и внешний вид. Устанавливать в null можно не все сразу параметры, а только те, которые вам надо. К примеру, если вы хотите указать определенную расу десантников, но не хотите чтобы у всех были одинаковые имена, то вам необходимо значение параметра name установить в null и выбрать расу для параметра race
    • name= - имя создаваемых десантников. Можете вводить что угодно.
    • race= - раса десантников. Указывайте любую, но имейте введу, что некоторые расы не пойдут на абордаж корабля другой или своей расы.
  • 13 - Торговые команды» -- Пассажиры
  • 15 - Общие команды -- dec <ВозврПерем> =
  • 16 - Общие команды -- Управление исполнением цикла -- end conditional
Скрипт готов к использованию. Если хотите забиндить этот скрипт на горячую клавишу - создайте еще один скрипт следую инструкции написанной в разделе «Bind скриптов на горячие клавиши».

Максимальный уровень прокачки всех навыков десантников

После того как вы написали скрипт X3: Земной конфликт для прокачки десантников, вы должны убедиться, что он работает корректно (это можно сделать только на корабле, который может перевозить десантников и который имеет свободные места для десантников). Если все работает корректно и вы хотите получать только самых лучших специалистов, то есть тех, у которых все умения прокачаны на 100, то вам необходимо в строке 004 поменять число с 1 на 101: ( 004 $min= 101 ). После этого все создаваемые десантники будут иметь уровень прокачки всех навыков равен 100, то есть максимально возможный уровень прокачки.

Изменение репутации с другими расами

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

Создайте новый скрипт с произвольным названием.


Примечание: строку 001 из раздела Код ищите в разделе Общие команды для объектов.

После завершения написания скрипта и его сохранения, для того, чтобы его запустить сделайте следующее:
  1. Выделите скрипт в списке скриптов и нажмите [R][Enter][Enter]
  2. Выбрать расу — выберите из списка ту расу, репутацию с которой вы хотите изменить и нажмите [Enter].
  3. <Число> — введите количество очков репутации (таблица ниже) и нажмите [Enter].
После этих действий репутация с выбранной расой измениться на ту, что вы указали в виде числа очков из таблицы.

Таблица рейтинга
рейтингочки (для скрипта)
-5-1 000 000
-4-100 000
-3-10 000
-2-1 000
-1-100
0-10
+110
+233
+3100
+4333
+51 000
+63 333
+710 000
+833 333
+9100 000
+10333 333 333

Примечания к таблице:
  • все данные в таблице приблизительные;
  • пробелов в числе при вводе быть не должно;
  • количество очков для всех рас одинаково.

Как поссорить 2 расы

С помощью данного скрипта вы сможете понизить/повысить репутацию, взаимоотношения, между любыми другими расами. К примеру, можно сделать так, чтобы Ксеноны и Бороны стали друзьями или поссорить Теледи с Паранидами и т.д.

После запуска этого сприпта указанные расы станут врагами и начнут атаковать корабли и станции друг друга.

Создайте новый скрипт.


После запуска скрипты выберите 2 расы, между которыми должны начаться военные действия или которые должны заключить перемирие, и введите число. В качестве числа укажите какое-то число из таблицы:
  • положительное число - перемирие;
  • отрицательное число - война.

Открытие всех секторов, станций и астероидов

Данный скрипт открывает все присутствующие в игре сектора, станции и астероиды. Астероиды только открываются, но не сканируются на наличие минерborder-collapse:collapse;text-align:right;алов.

Создаем новый скрипт с произвольным названием. Раздел Параметры оставляем пустым. Смотрим на скриншот ниже и заполняем раздел Код.



Где искать необходимые строчки кода из раздела Код:
  • 001, 003, 005, 009 - «Команды секторов и Галактики»
  • 002, 004, 006, 011 - «Общие команды» -- <Возвр/IF><Выражение>
  • 007, 014 - «Общие команды для объектов»
  • 010 - «Общие команды» -- «Массивы»
  • 012, 018, 020 - «Общие команды» -- dec <ВозврПерем> =
  • 013 - «Общие команды» -- «Массивы» -- <Возвр/IF><Перем/Массив>[<Перем/Число>]
  • 015, 017, 019, 021 - «Общие команды» -- «Управление исполнением цикла» -- end conditional
Скрипт готов. После запуска скрипта у вас откроется вся карта вместе со всеми станциями и астероидами.

Создание астероидов

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

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



Так как в разделе Параметры ничего сложного нет и вы быстро найдете все необходимые строчки, то я сразу перейду к разделу Код. И так, где искать необходимые строчки кода из этого раздела:
  • 001-004 - «Общие команды» -- «Массивы» -- <Возвр/IF><Перем/Массив>[<Перем/Число>]
  • 006 - «Общие команды для объектов» -- «Создание объектов»
  • 007 - «Общие команды для объектов»
Вот и все. Теперь у вас есть скрипт создания астероидов. Однако, чтобы его корректно запустить вам необходимо правильно ввести все данные.

Для создания астероидов:
  • В списке скриптов наводим курсор на скрипт «Создание астероидов» (aCreateAsteroid) и жмем [R] (запустить).
  • Жмем [Enter][Enter].
  • «Выбрать положение сектора» . Выбираем необходимый сектор и переходим на цифровую клавиатуру. С помощью клавиш перемещения (2,4,6,8) на цифровой клавиатуре и клавиши смены плоскости (Insert) укажите где именно вы ходите создать астероид и нажмите [Enter].
  • «Число» -- минерал:
    • 0 - руда
    • 1 - кремний
    • 2 - нивидиум
    • 3 - лед
  • «Число» -- насыщенность. Чем больше, тем быстрее будет добиваться минерал.
После этого произойдет создание астероида с указанными характеристиками. Созданный астероид будет сразу же просканирован.

Скрипт создания облака астероидов

Этот скрипт очень похож на предыдущий за исключением того, что он создает не один астероид, а сразу множество хаотически разбросанных — облако астероидов или аналог сектора Рудный пояса в игре, где можно найти огромное количество самых различных астероидов. И если вам это не нужно — пользуйтесь предыдущим, более простым его вариантом.

И так, как же все происходит что на что способен этот скрипт. После запуска скрипта вас попросят выбрать начальную точку создания астероидов. После этого необходимо будет ввести количество астероидов по координатах X, Y и Z. После чего необходимо ввести последний параметр — расстояние в километрах между астероидами. После завершения ввода этих данных будет создано облако астероидов соответствующей формы. Если, к примеру, вы введете количество астероидов по каждой оси 3 и зададите небольшое расстояние между ними, то есть как бы создавая куб из 27 (3х3х3) астероидов, то на самом деле вы визуально не увидите никакого куба — все они будут хаотически разбросаны и будут напоминать больше облако астероидов, чем куб, то есть происходит смещение по всех трех координатах для каждого созданного астероида.

Относительно коллизий, когда один объект сталкивается с другим, а в нашем случаи когда один астероид частично перекрывает другой. Все созданные скриптом астероиды не будут касаться или перекрывать друг друга, но могут достаточно близко находится (минимальное расстояние можно изменить задав другие размеры астероида в самом скрипте, 013 строка) — все это было учтено при написании скрипта изначально. Но вам необходимо учитывать то, что эти астероиды могут перекрывать уже присутствующие во вселенной объекты — создавайте астероидные поля только на свободном от других объектов местах и не забывайте сохранять игру перед каждым запуском этого скрипта.

Несколько замечаний
  • Тип астероида генерируется произвольным образом, то есть или рудный или обычный. Это можно изменить в строке создания астероида (039) указав вместо $resource число от 0 до 3:
    • 0 - руда
    • 1 - кремний
    • 2 - нивидиум
    • 3 - лед
  • Насыщенность генерируется случайным образом от 10 до 80. Можно изменить в строке 029 или заменив $intensity в строке 039 на необходимое число.
  • После создания астероид будет автоматически просканирован. Для отключения сканирования в конце строки 040 замените 1 на 0.

Примечание: Если размеры экрана монитора у вас небольшие и скриншот с кодом скрипта целиком не помещается на странице, то есть от слишком маленький — кликните по нему правой клавишей мыши и выберите пункт «Открыть в новой вкладке или окне».

Где искать строки из раздела Код:
  • 1-4 — Общие команды — Массивы — <Возвр/IF> <Перем/Массив> [ <Перем/Число> ] — Вводим ( <Переменная> ) или выбираем (в разделе Доступные переменные) название переменной. 
  • 6-16, 18, 21, 23, 25, 35-37, 43, 45 — Общие команды — <Возвр/IF> <Выражение> — Выбираем строку <Переменная> и вводим название переменной, если в начале строки должна быть переменная или выбираем один из операторов (if, while) 
  • 17 (else) — Общие команды — Управление исполнением цикла — else 
  • 19, 42, 44, 46 (end) — Общие команды — Управление исполнением цикла — end conditional 
  • 22, 24, 26 — Общие команды — dec <Возвр/Перем> = 
  • 28, 31-33 — Общие команды — <Возвр/IF> random value from 0 to <Перем/Число> - 1 
  • 29 — Общие команды — <Возвр/Перем> = random value from <Перем/Число> to <Перем/Число> - 1 
  • 39 — Общие команды для объектов — Создание объектов — <Возвр/Перем> = create asteroid... 
  • 40 — Общие команды для объектов — <РеферОбъект> set asteroid scanned to <Перем/Число> 
  • 47 (return null) — добавлять не обязательно. Она будет добавлена автоматически во время сохранения скрипта.
Сам процесс создания и запуска скрипта описывать не буду потому как он практически полностью описан в предыдущем разделе, но если возникнут какие-то трудности — пишите в комментариях.

Прекращение боевых действий с указанным кораблем или станцией

Данный скрипт будет работать только в том случаи, если у вас положительные отношения с расой, но по каким-то обстоятельствам корабль или станция этой расы к вам враждебна.

Принцип работы скрипта:
  • Первая строка в разделе Параметры - получаем ссылку на объект, военные действия с которым хотим прекратить и записываем ее в переменную $obj.
  • 001 - определяем расу-владелец указанного объекта и записываем ее в переменную $race.
  • 002 - делаем себя владельцем указанного объекта.
  • 003 - возвращаем права на объект предыдущему владельцу.
Так как скрипт очень простой и маленький выкладывать к нему скриншот я не буду.

Раздел Параметры:
  • Параметр 1: $obj, Перем/Корабль/Станция, 'obj'
Раздел Код:
  • 001 &race= $obj -> get owner race
  • 002 $obj -> set owner race to Player
  • 003 $obj -> set owner race to $race
Все строки из раздела Код вы найдете в разделе «Общие команды для объектов».

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

Автоматический ремонт кораблей внутри ангара

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

Как все это работает? К примеру, у вас есть корабль (один или несколько) класса М1 в ангаре которого есть другие корабли (М3, М4, М5 и т.д.) с разной степенью повреждения корпуса. Все корабли, которые находятся в ангаре корабля М1, будут непрерывно восстанавливать свой корпус (обшивку корабля), то есть производить «ручной ремонт», можно так сказать.

Примечания:
  • ремонт кораблей происходит непрерывно, все корабли в ангаре каждую игровую минуту времени (значение можно изменить) восстанавливают 1% обшивки корпуса (значение можно изменить);
  • класс корабля-носителя, который имеет ангар и внутри которого будет осуществляться ремонт, не имеет значения;
  • ремонт кораблей осуществляется только внутри корабля-носителя игрока;
  • после первого запуска скрипта ремонт будет происходить непрерывно на всех кораблях имеющих ангар и корабли внутри, но только на кораблях игрока;
  • для работы скрипта никакие ресурсы (батареи, кредиты и прочее) не нужны;
  • действие этого скрипта не распространяется на корабли NPC, так как это создало бы слишком большую нагрузку на центральный процессор (CPU), что впоследствии могло бы привести к зависанию игры.
Остановка выполнения скрипта:
  1. заходим в редактор скриптов ( [Shift] + [C], [S] );
  2. находим пункт меню Global Script Tasks - список всех действующих на данный момент скриптов;
  3. находим наш скрипт по названию (aRepairSmallShip);
  4. выделяем строку с названием скрипта и жмем [Del] - скрипт остановлен.
Если все сделано верно, то скрипт исчезнет из списка в этом разделе.

Внимание! Перед повторным запуском скрипта необходимо обязательном порядке остановить выполнения текущего. Если этого не сделать, то один и тот же скрипт будет запущен 2 и более раза.



Перед началом написания скрипта рекомендую сделать следующее (для проверки скрипта на ошибки):
  1. Создать 1 корабль класса М1 или любой другой, который имеет ангар.
  2. Создать несколько кораблей, которые могут стыковаться с М1 кораблем и сбить этим маленьким кораблям немного обшивки корпуса.
  3. Приказать залететь в ангар корабля М1.
  4. Подождать пока все корабли окажутся в ангаре.
  5. Сохранить игру (новое сохранение).
  6. Приступить к написанию скрипта.
После написания и перед запуском скрипта закомментируйте строки 007 и 031, чтобы скрипт не работал все время и не останавливать его в случаи нахождения ошибки. Если в ходе проверки скрипта все заработает как надо - раскомментируйте строки 007 и 031. После этого запустите скрипт еще раз и сохраните игру. После этих действий ваш скрипт будет все время работать и ремонтировать все корабли внутри ангара ваших кораблей.

[>] - закомментировать строку
[<] - раскомментировать строку
Коды (читы) к игре X3: Земной конфликт работают, так считают 80 % игроков.
  • большинство кодов чувствительны к регистру - водите все чит-коды только так, как они написаны;
  • перед редактированием файлов не забывайте создавать их резервные копии;
  • перед использованием чит-кодов рекомендуется сохранить игру, так как не все чит-коды можно отменить.
Комментарии
Нашли какой-то чит-код к игре, который отсутствует здесь, или обнаружили неполное описание — напишите в комментариях. Игроки за подобную информацию будут Вам благодарны.
14 декабря 2011 (15:44)
Kartel_
Лучше не бывает!.. Вот только есть немного неразберихи.. С кораблями понятно, а создание станции?.. Можно ли? Скажите, пожалуйста.. (=Помогите..
14 декабря 2011 (18:04)
admin
С помощью скриптов можно не только создавать различные корабли, станции и другие объекты, но и полностью укомплектовывать их - устанавливать оружие/лазеры/щиты/оборудование.

Станции создаются точно также как и корабли, только вместо create ship: type= тип_корабля надо выбрать тип_станции (если не ошибаюсь, давно играл).

addto= - указать сектор в котором будет созданная станция
x/y/z - указываем точные координаты, если не указать, то станция будет создана в центре сектора

Если не получится - отпишите, зайду в игре и дам точную инструкцию что и как делать.
15 декабря 2011 (06:27)
Kartel_
Всё получилось. Спасибо. P.S. только не продукции, ресурсов нет...
15 декабря 2011 (06:33)
Kartel_
И ещё один вопрос.. Можно ли на станции каким-либо способом установить щиты?
15 декабря 2011 (07:28)
admin
90% что можно. Если найду как это сделать - напишу.

Сегодня напишу инструкция как добавлять в существующие корабли оборудование, лазеры и щиты, а также как быстро создать необходимое количество кораблей разных типов, не изменяя при этом сам скрипт.
15 декабря 2011 (07:36)
Kartel_
И если Вы ещё тут.. Напишите как создать свой сектор. Спасибо.
15 декабря 2011 (07:45)
admin
Сектор создать точно нельзя smile
Хотите иметь свой сектор - зачистите какой нибудь отдаленный сектор пиратов и перенесите его (с помощью хаба) в необходимое вам место.
15 декабря 2011 (10:12)
Kartel_
А "Хаб" что такое?
15 декабря 2011 (11:03)
admin
Огромная станция игрока, которая дается после прохождения сюжетной линии. Хаб имеет всего несколько функций:
- док для кораблей (включая корабли класса М1 и М2);
- огромный склад;
- соединение до 2 секторов между собой.

Принцип соединения секторов. К примеру, есть у нас 2 сектора в разных концах галактики и один сектор с хабом. Эти 2 сектора не связаны между собой и чтобы попасть с сектора 1 в сектор 2 необходимо пролететь, к примеру, 50 промежуточных секторов. Если же соединить все эти сектора с помощью Хаба, то выйдет следующее. Любой корабль залетая во врата S попадет не в следующий сектор и вылетит из врат N, а попадает в сектор с Хабом игрока (в котором есть 4 ворот). После чего он может продолжить свой путь и полететь в следующий сектор или залететь в сектор 2, который находится за 50 секторов от того с которого он прилетел.

То есть, Хаб дает возможность физически соединить между собой, к примеру, «Аргон Прайм» и «Черное солнце».
15 декабря 2011 (11:06)
Kartel_
Это когда выдаётся "Штаб-квартира?". А сектор в игре Воссоединение всё же можно купить или нет? Это так, давно хотел спросить..