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

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

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

   Страница 15 из 17
На страницу: Пред.  1, 2, 3 ... 14, 15, 16, 17  След.    Перейти:   Все страницы
Поиск в этой теме:
Канал X2: The Threat: «Добавляем новые команды в скрипт редактор»
Darth Revan
 345 EGP


Рейтинг канала: 5(153)
Репутация: 42
Сообщения: 349
Откуда: Belarus Prime
Зарегистрирован: 01.02.2006
Скрипты OnSelect - это как события. Они запускаются, если игрок нажал кнопку. Если он нажал ESC, это всё равно, что он не нажал ничего, или, иными словами, что меню ещё не открылось. Или оно открылось и игрок час думает над тем, что ответить. Если время ожидания меню критично, то точно также будет критично и думанье игрока час над ответом.

В любом случае, ты всегда знаешь:
1. Открыто ли меню.
2. Если да, то какая вкладка.

Ты всегда можешь, зная это, замочить текущее меню и открыть новое.

Наличие ESC-выхода новых проблем не добавляет. И блокировать его я не буду.
    Добавлено: 13:06 30-07-2006   
akm
 470 EGP


Рейтинг канала: 1(4)
Репутация: 173
Сообщения: 1638
Откуда: Паразит Прайм
Зарегистрирован: 23.10.2002
А мне нравится реализация Darth Revan'а Круто!
Единственное, пока сам не поробуешь пачку многоэтажных меню сделать в моде и дать этот мод потом на растерзание юзверям, на сколько хорош данный метод/команды не прочувствуешь.

Но писать/отлаживать кучу кода никому не хочется. Особенно, если делать поноценные диалоги в миссиях, а если еще делать ветвления в сюжете миссии (альтернативные способы прохождения)... Рыдая, стреляется нафиг
Есть такая идея. А не сделать ли программирование диалогов в ... xml? Все равно туда придется все тексты меню и кнопок загонять. Так не добавить ли туда еще несколько полей, например имя скрипта при нажатии кнопки, метку следующего окна меню, которое отображать при нажатии кнопки, и др.
В итоге, необходимо будет написать 1 скрипт-пак, который универсально обслуживал бы произвольный набор меню произвольной иерархии с произвольными ветвлениями. Отладить его 1 раз и юзать в любом моде без изменений. А мод-мейкеру лишь останется диалоги продумать, вписать их в xml вместе с ссылками и вызовами скриптов там, где после нажатия опред. кнопки должны выполниться опред. действия.
Кстати, из предыдущего опыта знаю, на ЕГе полно талантливых энтузиастов, готовых сочинять миссии с гибким сюжетом и кучей разветвленных диалогов. Но этим людям как правило крепко в падлу разбираться со скрипт-движком Х2. А вот если бы писать новые диалоги было бы не сложнее русификации игры, то можно было бы наклепать огромную кучу интересных миссий. И даже наделать всяких мини-игр в Х2/Х3 Улыбка

Darth Revan,
можно ли еще реализовать такую фичу?
Сейчас реализовано так, что при нажатии кнопки в сообщении запускается некий скрипт с параметрами (answer, offer).
Можно ли запустить этот скрипт так, чтобы он при своем запуске еще и выплюнул игроку список возможных значений для ввода, в таком виде как игрок его видит при запуске какого-то скрипта с 1 параметром?
Например, в нашем сообщении есть кнопка "Выбрать Станцию". Можно ли сделать так, что при ее нажатии игроком, ему выплевывалась бы карта галактики, в которой путем навигации он мог бы выбрать одну из станций, но только принадлежащих игроку? Т.е. чтобы игроку вывести тот же интерфейс, что ему выкидывает движек игры когда игрок дает в консоли корабля команду "Задать Homebase".
Затем, выбранное игроком значение (в нашем примере выбранную Homebase) передать скрипту-обработчику нажатия кнопки сообщения вместе с параметрами (answer, offer)?
    Добавлено: 18:33 30-07-2006   
Darth Revan
 345 EGP


Рейтинг канала: 5(153)
Репутация: 42
Сообщения: 349
Откуда: Belarus Prime
Зарегистрирован: 01.02.2006
1. Кода от самих меню немного. Если что-то реализовывать, то код всё-равно писать придётся, и много. И проблема будет не в реализации меню.
2. Задел для реализации многоярусных меню я сделал. Ковырять обработку xml я не буду. Но это и не надо. Никто не мешает нужную информацию разместить в том же xml, но с id, следующими за id сообщения. Так что скрипт пак для диалогов написать можно. И легко.

Например, пусть текст вопроса имеет некоторый id. Имеем:
id: текст вопроса.
id+1: максимальное число ответов.

id+2: 1-ый вариант ответа.
id+3: скрипт проверки условия наличия 1-ого варианта ответа. Или 0 - присутствует всегда.
id+4: скрипт, выполняющийся при выборе 1-ого варианта ответа. Или 0.
id+5: номер следующего вопроса. Или 0 - выход.

id+6: 2-ой вариант ответа.
id+7: скрипт проверки условия наличия 2-ого варианта ответа. Или 0 - присутствует всегда.
id+8: скрипт, выполняющийся при выборе 2-ого варианта ответа. Или 0.
id+9: номер следующего вопроса. Или 0 - выход.
...

Одно из назначений скриптов проверки условий - проверка глобальных переменных; а скриптов, выполняющийся при выборе - их установка. Поэтому можно улучшить структуру следующим образом.
После, скажем, id+3 добавить следующие.
- число скриптов проверки условий
- первый скрипт
- число аргументов
- первый аргумент - имя глобальной переменной или число
...
- n-ный аргумент - имя глобальной переменной или число
- AND или OR
- второй скрипт
- число аргументов
и т.д.
Здесь скрипты, как правило, заранее готовые. Например, cmp(a,b) - скрипт сравнения двух переменных и т.п.
Аналогично можно обойтись с установкой глобальных переменных при выборе.
- число скриптов
- имя первой
- первый скрипт
- число аргументов
- первый аргумент - имя глобальной переменной или число
и.т.д.
Опять же, и здесь скрипты, как правило, уже готовые.

3. Насчёт запуска менюшек с выбором не знаю. Теоретически, конечно, можно. Но может оказаться очень геморно. Так что приму во внимание, но ничего не обещаю.
    Добавлено: 22:41 30-07-2006   
Darth Revan
 345 EGP


Рейтинг канала: 5(153)
Репутация: 42
Сообщения: 349
Откуда: Belarus Prime
Зарегистрирован: 01.02.2006
Вот, более сформировавншиеся мысли.

id: информация о версии. Предполагается вида тип.номер версии, где тип определяет спрособ обработки. Пока два типа, скажем, 1 и 2.

Рассмотрим тип 1.

id+1: название скрипта препроцессора текста вопроса (т.е. обрабатывает в тексте вещи типа $CURRENT_SECTOR$). Или 0.
id+2: текст вопроса (не включает selectы).
id+3: максимальное число ответов.
далее
- Текст 1-ого варианта ответа (содержит что угодно, включая один select).
- чиcло скриптов (скажем, n) проверки условия наличия 1-ого варианта ответа. Или 0 - присутствует всегда.
- script1_name arg1,arg2,...,argm1
- ...
- scriptn_name arg1,arg2,...,argmn
- число скриптов (скажем, k), выполняющийся при выборе 1-ого варианта ответа.
- script1_name arg1,arg2,...,argl1
- ...
- scriptk_name arg1,arg2,...,arglk
И так для каждого варианта ответа.

- заключительный текст. Опционально.

Отметим, что если аргумент какого-нибудь скрипта- число, то он и будет воспринят в скрипте как число.

Тип 2.

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


Реализовать такую схему очень легко.
    Добавлено: 12:10 31-07-2006   
Darth Revan
 345 EGP


Рейтинг канала: 5(153)
Репутация: 42
Сообщения: 349
Откуда: Belarus Prime
Зарегистрирован: 01.02.2006
Есть хорошая новость. Удастся увеличить число доступных тегов для изменения цвета текста. Ну, и цвета кнопок и прочего тоже можно поменять.
    Добавлено: 20:49 02-08-2006   
SD
 251 EGP


Рейтинг канала: 2(21)
Репутация: 30
Сообщения: 2406

Зарегистрирован: 05.03.2006
Я смотрю Уликс вернулся из отпуска. Ну как, получил доступ к секретам Игософта? Подмигиваю Мне было бы интересно какой комментарий написан в исходниках DoSaveGame рядом с кодом который ни с того ни с сего отнимает у игрока половину денег... Там такая чушь написана... Счастье что весь этот код обернут в "if(false)".
    Добавлено: 07:21 04-08-2006   
Darth Revan
 345 EGP


Рейтинг канала: 5(153)
Репутация: 42
Сообщения: 349
Откуда: Belarus Prime
Зарегистрирован: 01.02.2006
Может хотели наказывать часто сохраняющихся игроков с некоей малой вероятностью. Да передумали.Улыбка
    Добавлено: 01:38 14-08-2006   
Gward
 310 EGP


Ведущий раздела
Рейтинг канала: 2(21)
Репутация: 75
Сообщения: 1307
Откуда: Ставрополь
Зарегистрирован: 11.06.2004
Мурзилка :
После того как я переписал в папку scripts игры скрипт !ship.cmd.build.pl из архива патча ux2story13_dr1_12b.rar глюк с "голыми" ксенонами после установки нового x2story.obj из этого архива исчез.

И не только ксенами. Все репопящиеся на станциях НПЦ были бы голыми. Просто ксены чаще репопятся на своей станции. Улыбка
Мурзилка :
НА ВСЕХ СТАНЦИЯХ ВСЕХ ТИПОВ - ЦЕНЫ НА ВСЕ ТОВАРЫ И РЕСУРСЫ - ЛИБО 0 кр. либо 1 кр. !!!

К данному скрипту это никак не может иметь отношения. Ибо сам скрипт состоит только из инициации навешивания дефолтового оборудования.
    Добавлено: 21:41 02-10-2006   
SD
 251 EGP


Рейтинг канала: 2(21)
Репутация: 30
Сообщения: 2406

Зарегистрирован: 05.03.2006
Это к DR. Его глюк. Лично я DockGetWarePriceMod из его патча просто выкинул, но может он сможет пофиксить... А цены на станциях лечатся рестартом игры.
    Добавлено: 07:15 03-10-2006   
SD
 251 EGP


Рейтинг канала: 2(21)
Репутация: 30
Сообщения: 2406

Зарегистрирован: 05.03.2006
Лично я начал новую игру и больше не видел нулевых цен на станциях. Нулевые цены в доках исчезли после убирания из Дарт Ревановского патча вышенаписанного куска.
    Добавлено: 07:04 04-10-2006   
SD
 251 EGP


Рейтинг канала: 2(21)
Репутация: 30
Сообщения: 2406

Зарегистрирован: 05.03.2006
Понятия не имею. Для начала возьми свежий асм (25-ю версию). Если не поможет - комментируй инклуды пока не доберешься до проблемного.
    Добавлено: 07:37 09-10-2006   
ren
 77 EGP


Репутация: 3
Сообщения: 27
Откуда: Бокситогорск
Зарегистрирован: 16.07.2002
У меня та же трабла с ценами в доках при начале новой игры. Асм 25 версии, ux2story.asm - 13-я от Shaddie + 1.12 beta от DR, obj - из оригинальной игры, не правленный. Сэйвы, сделаные на obj, пропатченном 11-й версией от Shaddie, не грузит, говорит "save my be corrupted" или что-то в этом роде.
To SD
где можно взять sdx2story.asm? Или как выкинуть из DR патча DockGetWarePriceMod?
    Добавлено: 08:14 13-10-2006   
SD
 251 EGP


Рейтинг канала: 2(21)
Репутация: 30
Сообщения: 2406

Зарегистрирован: 05.03.2006
ren :
где можно взять sdx2story.asm? Или как выкинуть из DR патча DockGetWarePriceMod?

"Или"? Они не взаимозаменяемые. Брать можно здесь. Выкинуть можно любым текстовым редактором.
    Добавлено: 07:32 16-10-2006   
ren
 77 EGP


Репутация: 3
Сообщения: 27
Откуда: Бокситогорск
Зарегистрирован: 16.07.2002
SD :
Выкинуть можно любым текстовым редактором.

Это понятно. Вопрос дилетанта: достаточно заремить строку
jump DockGetWarePriceMod или еще что-то надо сделать?
    Добавлено: 07:26 17-10-2006   
SD
 251 EGP


Рейтинг канала: 2(21)
Репутация: 30
Сообщения: 2406

Зарегистрирован: 05.03.2006
Теоретически достаточно, но я заремил все четыре строки с "$ = 000758C8h" по "DockGetWarePriceRet:". Можно еще заремить и сам кусок DockWarePriceMod...
    Добавлено: 07:00 18-10-2006   
Darth Revan
 345 EGP


Рейтинг канала: 5(153)
Репутация: 42
Сообщения: 349
Откуда: Belarus Prime
Зарегистрирован: 01.02.2006
Посмотрю. Явно мой глюк. Расстроен
    Добавлено: 22:49 24-10-2006   
Doc77
 40 EGP


Репутация: 0
Сообщения: 73 Заблокирован

Зарегистрирован: 13.11.2006
Уважаемые пилоты не подскажите чем лучше пользоваться для открытия bod файлов.
Если не трудно еще дать сылочку
_________________
Doc это не скорая помощь
- а помощь к скорому уходу
    Добавлено: 19:37 16-11-2006   
Tension MAN
 1220 EGP


Рейтинг канала: 4(56)
Репутация: 383
Сообщения: 8350
Откуда: Москва, корпус Д&Ф
Зарегистрирован: 30.11.2002
фак читай
_________________
EVE-online - TensionMAN in game.
    Добавлено: 23:39 16-11-2006   
Doc77
 40 EGP


Репутация: 0
Сообщения: 73 Заблокирован

Зарегистрирован: 13.11.2006
Дайте мне пожайста 2 EGP? Подозрение. ато кто то у меня отобрал.
Потом когда у меня будет два EGP я верну Расстроен
_________________
Doc это не скорая помощь
- а помощь к скорому уходу
    Добавлено: 05:18 17-11-2006   
Tension MAN
 1220 EGP


Рейтинг канала: 4(56)
Репутация: 383
Сообщения: 8350
Откуда: Москва, корпус Д&Ф
Зарегистрирован: 30.11.2002
2Doc77
Правила читать надо. Получаешь первое предупреждение за выпрашивание ЕГП, п2.9 правил.
_________________
EVE-online - TensionMAN in game.
    Добавлено: 12:12 17-11-2006   
Канал X2: The Threat: «Добавляем новые команды в скрипт редактор»
На страницу: Пред.  1, 2, 3 ... 14, 15, 16, 17  След.    Перейти:   Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Я когда в прошлый раз у них ХТ на мониторах увидел - от удивления аж зашел и какую-то мышку купил. (Alone о железячниках)

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