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

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

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

   Страница 1 из 1
 
Поиск в этой теме:
Канал X2: The Threat: «Добавляем новые команды. Координация.»
DragonP
 281 EGP


Рейтинг канала: 3(27)
Репутация: 108
Сообщения: 527
Откуда: Новосибирск
Зарегистрирован: 18.12.2004
Сия тема создается исключительно для координирования работы наших ASM-программистов. По сей причине прошу никого сюда не постить. Принцип работы таков:
В следующем посте я выкладываю задачи и пожелания о новых командах, без каких либо приоритетов, только сами задачи которые любой желающий может указать в теме «Добавляем новые команды». Программисты сами решают которые для них важны и за что они возьмутся, опять же исходя из пожеланий в теме о добавлении команд. Задача же ASM-программиста сообщить мне через личку или мыло то чем он решил заняться. Я помечаю соответствующий пункт в списке указывая чем в данный момент занялся конкретный пилот, что исключит работу над одними задачами. Думаю такая организация позволит максимально эффективно организовать работу.

PS Еще раз прошу никого не постить в эту тему. Если вы хотите что-то высказать указать на ошибки используйте личку или мыло. Пожелания по новым командам в соответствующую тему «Добавляем новые команды».

PSS Все кто считает что эта тема для него важна запомните ссылку на нее, т.к. не подразумевается постоянное освежение темы новыми постами и соответственно она уплывет с первых страниц.
_________________
Звезды зовут...
    Добавлено: 21:07 13-02-2006   
DragonP
 281 EGP


Рейтинг канала: 3(27)
Репутация: 108
Сообщения: 527
Откуда: Новосибирск
Зарегистрирован: 18.12.2004
То что хочется:

<object> destruct: show no explosion= 0|1
Вместо 0|1 по коду удалять объекты с разными эффектами (гиперпрыжок, разрушени, уход во врата)

create ship|station|gate effect: <Var/Number>
Можно просто изменить стандартную команду create добавив параметр effect.

Команду, возвращающую список станций, торгующих товаром в заданном количестве (ресурс или продукт) на расстоянии не более jumps прыжков.(в работе Darth Revan)

Команду, возвращающую массив секторов на расстоянии не более jumps прыжков в порядке возрастания этого числа. (в работе Darth Revan)

START cutscene X: Y:
запустить сцену-ролик на таких-то координатах Это что-то вроде запуска ролика строительства станций при разгрузке ТЛа.

<RetVar> = <object> Get script task <имя скрипта>
Получить стек на объекте <object> в котором выполняется скрипт <имя скрипта>

kill global task PID <Var\Number>
То есть убить выполняющийся скрипт с PID <число> (в работе Darth Revan)

<object> Use Jumpdrive to <object> to sector <sector> x y z
Безусловный джамп любого обекта (станции, астероида, спец.объекта) в указанную точку.

play sample <var/number>
Раскопать привязку номеров сэмплов к игре. Т.е. чтобы расширить список номеров сэмплов, которые можно проигрывать командой play sample вообще, а так же увеличить список номеров, привязанных к пушкам. В игре есть всего штук 7 номеров сэмплов, которые возможно сейчас привязать к пушкам, т.е. прописать в файлы ТБуллетс и ТЛазерс. В это количество входят звуки выстрелов, звуки полета пулек и звуки попаданий. Думаю, не нужно говорить, что на все пушки 7 сэмплов - просто крохи. Нужно хотя бы штук 30-40. (в работе Zman)

sector -> get array of objects of type <anytype>
Отыскать в секторе объекты определенного типа(например, летящие ракеты отыскивать было бы чрезвычайно интересно )

write to xml file #<Var/Number> pageid=<Var/Number> textid=<Var/Number> value=<Value>
Доработать команду чтобы она позволяла создать файл с несколькими идентификаторами на странице.

<ship> -> undock
От стыковать корабль. Должна работать и с PLAYERSHIP. Хотя бы аналог нажатия ESC на станции.

set battletrack Var/Number from sector: Var/Sector
установить определенный номер музтрека боевой темы для сектора Var/Sector. Чтобы не случайный из 5-ти общих играл, а конкретный трек. (в работе Zman)

play list of track: Value1, Value2, Value3, Value4, Value5, Value6
либо сразу так:
play music array: Array
где Array - последовательность названий муз треков. (в работе Zman)

set collision 1|0
Отключить/включить механизм уклонения от столкновений.

get cutscene from sector Var/Sector
Возвращение номера кут-сцены для данного сектора.

play scene: Var/Number x:Var/Number y:Var/Number z:Var/Number
Запустить сценку по заданным координатам в текущем (игрока) секторе. Проигрывание должно быть НЕ цикличным (иначе не удалить потом будет её).

Доработать команду "Send Incoming Question" (добавить новую), чтобы она не скрипт обработчик зупускала, а сама возвращала значение "строки" в зависимости от нажатой кнопки ответа. Ессно скрипт должен останавливаться на этой команде до получения какого-нибудь ответа от игрока.

set maximum speed of ship: Var/Ship
ограничение скорости


gosub
endsub

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

Воспроизведение звуковых сообщений из дополнительных файлов *.dat (в работе Zman)
_________________
Звезды зовут...
    Добавлено: 21:18 13-02-2006   
DragonP
 281 EGP


Рейтинг канала: 3(27)
Репутация: 108
Сообщения: 527
Откуда: Новосибирск
Зарегистрирован: 18.12.2004
Что реализовано на сегодняшний день:

4. Навигационные команды.

4.062 <RetVar>=<RefObj> find nearest missile aiming to me
Изменение команды. Добавлена возможность работы с объектами класса TSTATION, TGATE, TASTEROID и TMISSILE.

6. Работа с объектами.

6.027 <RetVar/IF> get notoriety from race <Var/Race> to race <Var/Race>.
Восстановлена работоспособность.

8. Extended commands

8.001 <RetVar>=get trade ranking
Возвращает торговый рейтинг игрока.

8.002 add trade ranking to player: <Var/Number>
Увеличивает торговый рейтинг игрока на заданное значение (0..1000000).

8.003 <RetVar>=get fight ranking
Возвращает боевой рейтинг игрока.

8.004 add fight ranking to player: <Var/Number>
Увеличивает боевой рейтинг игрока на заданное значение (0..1000000).

8.005 play music track <Var/Number>
Начать (циклическое) воспроизведение музыкального трека с заданным номером. 0 прерывает воспроизведение текущего музыкального трека.

8.006 <Var/Sector> set music track <Var/Number>
Установить для заданного сектора музыкальный трек с заданным номером. Воспроизведение текущего музыкального трека не прерывается. При установке номера музыкального трека в 0, для сектора станавливается музыкальный трек по умолчанию. Определить его номер можно по формуле: МТ = (37*X+103*Y+5) mod 22 + 19, где X и Y - координаты сектора: mod - возвращает остаток от деления.

8.007 set change track to combat music <Var/Number>
Установить признак изменения музыкального трека при приближении врага.
0 - отключить, 1 - включить.
Если воспроизводить музыкальный трек следующей комбинацией команд:
set change track to combat music 0
play music track <Var/Number>
то при уничтожении всех врагов в радиусе 10 км музыкальный трек все равно сменится на трек заданный для текущего сектора.
По этому лучше использовать следующую последовательность команд:
set change track to combat music 0
<Var/Sector> set music track <Var/Number>
play music track <Var/Number>

8.008 <RetVar>=get music track from sector <Var/Sector>
Возвращает номер музыкального трека воспроизводимого для заданного сектора.

8.009 <RefObj> set hull to <Var/Number>
Установить заданное значение корпуса.

8.010 <RefObj> set shield percent to <Var/Number>
Установить величину щита в заданный процент.

8.011 <RetVar> get array from <Var/String>
Получить массив из строки. Значения в строке должны быть разделены запятой (пример: '1,3,4,8,9,20').

8.012 create sector: owner=<Var/Race> x=<Var/Number> y=<Var/Number>
Создать сектор принадлежащий выбранной расе с заданными координатами.

8.013 <Var/Sector> set cutscene to <Var/Number>
Установить для заданного сектора номер cutscene (скайбокс).

8.014 <RefObj> set known by player to <Var/Number>
Установить для объекта (сектор, ворота, станция и т.д.) флаг отображения: для секторов - на галактической карте; для остальных типов объектов - секторальной карте. 0 - не отображать, 1 - отображать.

8.015 set player ship to <Var/Ship>
Переместить игрока в выбранный корабль. Действие команды аналогично
действию Transporter Device. Команда работает для ВСЕХ кораблей в секторе с
игроком.

8.016 dock player ship to <Var/Ship/Station>
Пристыковать корабль игрока к выбранной станции или кораблю. Действие команды аналогично действию Docking Computer. Ограничения по использованию этой команды те же, что при использовании Docking Computer. Например: корабль игрока должен находиться не дальше 5 км. от объекта стыковки.

8.017 set player tracking aim to <RefObj>
Выбрать заданный объект в прицел корабля игрока.

8.018 <RetVar>=<Var/Sector> get sun array from sector
Возвращает массив содержащий все солнца в выбранном секторе.

8.019 <RetVar>=<Var/Sector> get planet array from sector
Возвращает массив содержащий все планеты в выбранном секторе.

8.020 <RetVar>=<Var/Sector> get nebula array from sector
Возвращает массив содержащий все туманности в выбранном секторе.

8.021 <RetVar>=<Var/Sector> get special array from sector
Возвращает массив содержащий все специальные объекты в выбранном секторе.

8.022 <RetVar>=<Var/Sector> get flying ware array from sector
Возвращает массив содержащий все контейнеры с товаром в выбранном секторе.

8.023 <RetVar>=<Var/Warpgate> get destination sector
Возвращает сектор в который ведут выбранные ворота.

8.024 save game to slot: <Var/Number>
Сохраняет игру в выбранный слот. Номер слота может принимать значения от 0 до 20. Использование 20 слота аналогично автосохранению.

8.025 load game from slot: <Var/Number>
Загружает игру из выбранного слота.

8.026 <RetVar>=<Var/Ship/Station> get owned ship array from ship/station
Возвращает массив содержащий все корабли ПРИПИСАННЫЕ к заданному объекту.

8.027 <RetVar>=<Var/Ship> get ware array from ship
Возвращает массив содержащий все товары что есть на заданном корабле.

8.028 <RefObj> set shield to <Var/Number>
Установить заданное значение щита.

8.029 <RefObj> set invincible to <Var/Number>
Установить признак "непобедимости" для заданного объекта.
0 - отключить, 1 - включить.

8.030 write to xml file #<Var/Number> pageid=<Var/Number> textid=<Var/Number> value=<Value>
Создает/перезаписывает текстовый файл-описатель с именем XXYYYY.XML, где XX - идентификатор языка (определяется автоматически, для русского перевода 7),YYYY - номер файла, задается первым параметром команды (может принимать значения от 1 до 9999). В файл, для заданных pageid и textid, записывается значение value.

8.031 send incoming question <Var/String> to player: display it=<Var/Number> callback=<Script Name>
Посылает сообщение-вопрос игроку. Если display it=1, то сообщение сразу же отображается на экране, если 0 - записывается в журнал. При выборе игроком одного из вариантов ответа, вызывается указанный в callback= скрипт в который передается значение ответа.

8.032 quick warp to sector <Var/Sector>
Перемещает корабль игрока в центр заданного сектора без отсчета времени и проигрывания голоса.

8.033 set player ship to <Var/Ship> no animation
Переместить игрока в выбранный корабль без показа анимации. Команда работает для ВСЕХ кораблей в секторе с игроком.

8.034 <RetVar/IF>=<RefObj> fire missile <Var/Ware> on <Value> new
Объекту <RefObj> запустить 1 ракету <Var/Ware> в цель <Value>. Команда работает для ВСЕХ объектов которые находятся в одном секторе с кораблем игрока.

8.035 <retvalue> = <ship> -> jump to sec <sector> <x> <y> <z>
Быстро прыгает СРАЗУ в указанную точку сектора без jumpдров.

8.036 <object> -> set direction vector: <x> <y> <z>
Ориентирует корабль по вектору (x,y,z), устанавливая gamma в 0. Модуль этого вектора не имеет значения. Этот вектор задаёт направления корабля (фактически, alpha и beta).

8.037 <obj1> -> rotate to object <obj2>
Поворачивает obj1 носом к obj2, gamma устанавливает в 0.

8.038 <newnoto> = <race1> -> add notoriety 2: <race2> value <noto>
Добавляет значение <noto> отношения расы <race1> к расе <race2> и возвращает новое значение отношения.
8.039 <race1> -> set notoriety: <race2> value <noto>
Устанавливает значение отношения расы race1 к расе race2 равным noto.

8.040 <race1> set relation to race <race2>: value <value>
Установить отношение <race1> к <race2> как <value>.

8.041 <RetVar> get relation from race <race1> to race <race2>
Получить отношение <race1> к <race2>.

8.042 retvalue=perform operation num, obj: value, par1=value, par2=value
Составная команда выполняющая целый набор операций.

Номер операции:

1: setProdTime obj - фабрика, par1 - время производства.
Устанавливает время производства для фабрики.
Вступает в силу после окончания цикла производства.

2: getProdCount: obj - фабрика. Возвращает кол-во производимого продукта.

3: setProdCount: obj - фабрика, par1 - кол-во производимого продукта.
Устанавливает кол-во производимого продукта для фабрики.
Вступает в силу после окончания цикла производства.

4: createMenu: obj - фабрика, par1 - ID класса.
Создаёт меню для объекта. ID см. в файле дизассемблера после
classdef имя_класса.

5: setPlayerShip obj - корабль. Делает obj кораблём игрока. Тихо, быстро.

6: setMaxTradeJumps: obj - станция, par1 - макс. дальность прыжка при торговле.
Устанавливает макс. дальность прыжка для станции.

7: setDelayFactor: obj - множитель задержки. Устанавливает значение global.gs_DelayFactor.
Влияет на задержку между получениями фокуса станциями.
По умолчанию 1000.

8: dockGetFocusDelay: obj - док. Возвращает задержку между получениями фокуса для дока.

9: facGetFocusDelay: obj - фабрика. Возвращает задержку между получениями фокуса для фабрики.

10: facGetAvgWarePrice: obj - фабрика, par1 - ware maintype(тип товара),
par2 - ware subtype(подтип товара). Возвращает среднюю цену товара фабрики.

11: getDirectionX: obj - объект. Возращает x-координату вектора направления.

12: getDirectionY: obj - объект. Возращает y-координату вектора направления.

13: getDirectionZ: obj - объект. Возращает z-координату вектора направления.
Этот вектор имеет нормирован значением, близким к 10000h

14: mulDiv obj - a, par1 - b, par2 - c. Возвращает a*b/c, обрабатывая возможность
переполнения. Пример: а=b=c=10000000. mulDiv даёт 10000000, a*b/c даёт -17.

15: getProdTime obj - фабрика. Возвращает время производства.

------------------ совмещенный патч Shadie 12d и Darth Revan 1.03-----------



8.043 <RetVar>=<RefObj> get array of missiles aiming to me
Возвращает массив содержащий все ракеты нацеленые на объект <RefObj>. Команда работает с объектами класса TSHIP, TSTATION, TGATE, TASTEROID и TMISSILE.

8.044 <RetVar>=<RefObj> get current max speed
Возвращает текущую максимальную скорость объекта с учетом апгрейдов скорости. Для объекта принадлежащего игроку учитывается повреждения корпуса. Возвращаемое значение в игровых юнитах, для перевода в м/с разделите значение на 222.

8.045 <RetVar>=<RefObj> get current speed
Возвращает текущую скорость объекта. Для объектов находящихся не в секторе с кораблем игрока возвращает максимальную скорость объекта (current max speed). Возвращаемое значение в игровых юнитах, для перевода в м/с разделите значение на 222.

-------------- последние 3 команды патч Shaddie 12d_1 --------------
_________________
Звезды зовут...
    Добавлено: 20:18 26-02-2006   
Канал X2: The Threat: «Добавляем новые команды. Координация.»
 
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Учу плохому. Дорого.(Scanka)

  » Добавляем новые команды. Координация. | страница 1
Каналы: Новости | 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