johnbrown написал:
Rand(x,x1)
Мне бы этого хватило, т.к., как я понял, уже сейчас можно повесить перехват событий на переменную.
Пока решено сделать инструкцию "Бросить кость", у которой будет задаваться диапазон и имя переменной, которой присвоить выпавшее значение.
Следить за готовностью можно в трекере http://www.hostedredmine.com/issues/256159
Неактивен
Sonic написал:
Пока решено сделать инструкцию "Бросить кость", у которой будет задаваться диапазон и имя переменной, которой присвоить выпавшее значение.
Следить за готовностью можно в трекере http://www.hostedredmine.com/issues/256159
Инструкция готова, постараюсь в ближайшее время выпустить релиз.
Неактивен
Sonic написал:
Инструкция готова, постараюсь в ближайшее время выпустить релиз.
Готово! ЯРИЛ 2.0 Хоббит, глава 3
Выглядит так:
UPD. Исправил URL скриншота.
Неактивен
У игр платформы ЯРИЛ появилась страничка в рил-архиве. Желаю ей расти, толстеть и вообще.
Отредактировано Серый Волк (29.01.2014 16:59)
Неактивен
Серый Волк написал:
У игр платформы ЯРИЛ появилась страничка в рил-архиве. Желаю ей расти, толстеть и вообще.
Спасибо! Сейчас размещу в самом посте.
Только версия платформы уже новее той, что в архиве - уже 3ий Хоббит вышел https://dl.dropboxusercontent.com/u/878 … 140117.exe
Неактивен
Nex написал:
Присоединяюсь к пожеланиям.
Скачал, запустил игрушку. Как-то уж слишком притормаживает при вводе команд. Видимо, код не оптимизирован.
Спасибо! Интересно. Код реакции уже оптимизирован, он не интерпретируется. Возможно, дело в парсере или в отображении в GUI. В логах должно отображаться время... Правда, не уверен, что там логируется парсер. Но парсер логируется прямо в GUI, если ввести команду "!отладка" (начиная с Хоббит 3).
Неактивен
ЯРИЛ победил на Золотом Хомяке 2013 в номинации "Проект года" по мнению жюри!!! http://zh.ifiction.ru/results/
Неактивен
Привет, Соник. Спасибо за генератор ,)
Скажи, а что ЯРИЛ не дружит с 7 явой?
И еще вопрос. Можно сделать, чтобы название предметов не выводилось в локации. Если установить свойство 'часть пейзажа', то предмет взять не получится .(
Неактивен
johnbrown написал:
Привет, Соник. Спасибо за генератор ,)
Скажи, а что ЯРИЛ не дружит с 7 явой?
Пока нет... вылезает ошибка при загрузке, пока не разобрался. Но инсталлятор всё равно использует свою яву, он её качает и ставит при необходимости.
johnbrown написал:
И еще вопрос. Можно сделать, чтобы название предметов не выводилось в локации. Если установить свойство 'часть пейзажа', то предмет взять не получится .(
Да, так и задумано. Раз часть пейзажа, то предмет нельзя взять - он же описан в локации.
Неактивен
johnbrown написал:
Да, так и задумано. Раз часть пейзажа, то предмет нельзя взять - он же описан в локации.
А можно сделать, чтобы предмет не выводился в описании и его можно было взять? )
А как тогда ты планируешь это потом учитывать в описании? Возьмёшь, а предмет останется в тексте?
Можно перекрыть действие описания локации в этой локации и рулить выводом описания по своему. )
Неактивен
Да, наверное, так и придется сделать.
Просто бывают ситуации, когда есть некий "неисчерпаемый" источник, например колодец или предмет условно "невидим". Было бы здорово если бы можно было установить соответствующий флаг в свойствах. Такое мое скромное пожелание )
Неактивен
условно "невидим" - это то же самое что "спрятан" ?
Для спрятанных предметов обычно есть отдельная механика.
Отредактировано ASBer (18.12.2014 09:58)
Неактивен
johnbrown написал:
Да, наверное, так и придется сделать.
Просто бывают ситуации, когда есть некий "неисчерпаемый" источник, например колодец или предмет условно "невидим". Было бы здорово если бы можно было установить соответствующий флаг в свойствах. Такое мое скромное пожелание )
Колодец нельзя взять, всё равно придётся реализовать другую логику - например, действие "зачерпнуть воды из колодца": перемещать воду из пустоты в кувшин в руках. )
А для невидимых предметов - как и сказал АСБер - обычно другая механика. Хотя, это для скрытых - для тех, что не видно сперва, но открываются при каком-то действии. А если ты имеешь в виду подразумеваемый предмет - например, руль или рычаг передач в салоне автомобиля (не будешь же всё перечислять при описании), - то да, это интересный момент. Можно, в принципе, добавить признак для не упоминаемых предметов.
(Правда и для скрытых пока нет механизма, нужно подумать.)
Неактивен
ASBer написал:
условно "невидим" - это то же самое что "спрятан" ?
Для спрятанных предметов обычно есть отдельная механика.
Просто хочется, чтобы была возможность не выводить описание предметов в локации и все, но чтобы при этом с ними можно было нормально взоимодействовать без лишних процедур и тп. О механиках пока не думал. Мне кажется не нужно слишком усложнять. Надо сделать базовые кирпичики из которых пользователь сможет сам сделать какую ему нужно механику.
Немного раздражает автосохранялка (из-за случайной перезаписи я потерял обучающий файл). Может не стоит выводить список файлов? Сохранить? Ок. И все.
И еще. Я не понял, как работают шаблоны? Ориентируюсь на игру спелеолог. Там на действии срубить есть варианты глагол и два падежа в выпадающем списке. У меня в шаблонах в литерале и в объкте в списках пустота. И еще. Вот ты создал действие. Оно, по-идее, должно всплыть в перехватах в локации и в предмете. Вот, в локации действие у меня добавляется, а в прелмете нет. В чем загвоздка?
Скачал руслана&людмила и фавна, но они зашифрованы. Можно где-то сорцы взять или еще каких-нибудь игрушек для обучения?
Неактивен
johnbrown написал:
Просто хочется, чтобы была возможность не выводить описание предметов в локации и все, но чтобы при этом с ними можно было нормально взоимодействовать без лишних процедур и тп. О механиках пока не думал. Мне кажется не нужно слишком усложнять. Надо сделать базовые кирпичики из которых пользователь сможет сам сделать какую ему нужно механику.
Добавим признак "неупоминаемый". http://www.hostedredmine.com/issues/376059
johnbrown написал:
Немного раздражает автосохранялка (из-за случайной перезаписи я потерял обучающий файл). Может не стоит выводить список файлов? Сохранить? Ок. И все.
Будет http://www.hostedredmine.com/issues/358013
johnbrown написал:
И еще. Я не понял, как работают шаблоны? Ориентируюсь на игру спелеолог. Там на действии срубить есть варианты глагол и два падежа в выпадающем списке. У меня в шаблонах в литерале и в объкте в списках пустота.
Литерал - это список синонимов. Создаёшь литерал - список пустой - нужно добавлять синонимы.
При добавлении объекта должно появляться окно выбора падежа.
johnbrown написал:
И еще. Вот ты создал действие. Оно, по-идее, должно всплыть в перехватах в локации и в предмете. Вот, в локации действие у меня добавляется, а в прелмете нет. В чем загвоздка?
В перехватах в предметах появляются только действия, имеющие в шаблонах объект. Перехват срабатывает при вызове этого действия с этим предметов в качестве параметра.
johnbrown написал:
Скачал руслана&людмила и фавна, но они зашифрованы. Можно где-то сорцы взять или еще каких-нибудь игрушек для обучения?
В новой версии ЯРИЛа будет незашифрованная версия РиЛ. Рабочий вариант (кстати, в нём много доработок и исправлений) можно взять тут: https://dl.dropboxusercontent.com/u/878 … 160125.exe
Неактивен
Выпустил все обновления как новую версию - ЯРИЛ 2014 https://forum.ifiction.ru/viewtopic.php … 367#p31367.
Неактивен
Скачал новую версию. Вынос процедур и действий в основное поле, по-моему давно напрашивался. Стало удобнее. А как ты считаешь, если сделать 4 колонки на одном экране это усложнит работу с программой или наоборот облегчит, позволив сразу видеть и объекты и действия, как например в менюшном редакторе DZQ?
Пока заметил только одну ошибку. Если установить роль предмета читаемый и в верхнее поле текста ввести одинарные ковычки 'текст' то, при попытке прочитать предмет игра вылетает с ошибкой.
Планируется добавление пользовательских ролей(групп,тэгов)?
И, еще пожелание, чтобы все изменения в редакторе сразу отображались, а то приходится выходить и заново входить. Не очень удобно, но я уже привык )
Ап. Как переместить предмет в локацию? И можно его потом будет удалить стандартными средствами? Кстати, обратил сейчас внимание: чтобы взять предмет, нужно, чтобы он где-то лежал. По-моему, это не очень удобно.
Сделал перенос предмета командой локация.предмет. Теперь в описании локации мне пишет 'здесь предмет'. При этом осмотреть его нельзя 'я не знаю слова предмет'.
Соник, можешь рассказать как работают перехваты? Как я понял, если в процедуре нет инструкций, то выполняется перехват в предмете. А если есть, то не выполняется?
Кстати, в процессе написания понял, что не хватает ивентов. Они бы прекрасно работали с процедурами, но ты, наверное, уже об думал.
Баг: процедуру можно сделать безымянной. Редактор никак не прореагирует. Переименовать не получится, только удалить.
В имени переменной почему-то нельзя использовать символ нижнего подчеркивания.
Какой синтаксис/команды используются для работы с ролями?
У действий есть исключения (или как-то так, не помню). Можно сделать, чтобы если действие написано пользователем не полностью выдавалась обработка из исключения? Меня синтаксис интересует. Вообще, к этому больше всего вопросов, особенно к проверкам условий. Хорошо, есть примеры, но они не всегда спасают, приходится самому додумывать.
В условии допустимо только одно условие?
Отредактировано johnbrown (22.12.2014 09:09)
Неактивен
Чуть позже отвечу на пост.
Возможно, быстрее и практичнее будет, если будешь задавать вопросы в скайп-чатике. Добавляй меня в друзья - michael.balanov, я тебя добавлю в чат.
Неактивен
johnbrown написал:
Скачал новую версию. Вынос процедур и действий в основное поле, по-моему давно напрашивался. Стало удобнее. А как ты считаешь, если сделать 4 колонки на одном экране это усложнит работу с программой или наоборот облегчит, позволив сразу видеть и объекты и действия, как например в менюшном редакторе DZQ?
Не знаю, боюсь, на маленьком экране может не уместиться.
Пока заметил только одну ошибку. Если установить роль предмета читаемый и в верхнее поле текста ввести одинарные ковычки 'текст' то, при попытке прочитать предмет игра вылетает с ошибкой.
Спасибо, проверю. http://www.hostedredmine.com/issues/376759
Планируется добавление пользовательских ролей(групп,тэгов)?
Да, планируется добавление пользовательских ролей. А что подразумевается под группами и тэгами?
И, еще пожелание, чтобы все изменения в редакторе сразу отображались, а то приходится выходить и заново входить. Не очень удобно, но я уже привык )
Не понял, а что не отображается? Вообще, в редакторе есть пункт меню "Запустить в Плеере" - туда попадает текущая игра (сохраняется во временный файл и загружается в Плеере).
Кстати, обратил сейчас внимание: чтобы взять предмет, нужно, чтобы он где-то лежал. По-моему, это не очень удобно.
Не совсем понял.
Сделал перенос предмета командой локация.предмет. Теперь в описании локации мне пишет 'здесь предмет'. При этом осмотреть его нельзя 'я не знаю слова предмет'.
А у него настроен словарь?
Соник, можешь рассказать как работают перехваты? Как я понял, если в процедуре нет инструкций, то выполняется перехват в предмете. А если есть, то не выполняется?
Нет, наличие инструкций в процедуре на перехват не влияет. Перехват сработает, если он есть. Если он типа "вместо" - то выполнится вместо выполнения процедуры. Иначе выполнится до или после процедуры.
Кстати, в процессе написания понял, что не хватает ивентов. Они бы прекрасно работали с процедурами, но ты, наверное, уже об думал.
Я думал про ивенты типа "изменилась переменная" или "игрок зашёл в локацию". Но это пока было на уровне мыслей. А чего именно хотелось бы?
Баг: процедуру можно сделать безымянной. Редактор никак не прореагирует. Переименовать не получится, только удалить.
Спасибо. Дописал в баг http://www.hostedredmine.com/issues/227497
В имени переменной почему-то нельзя использовать символ нижнего подчеркивания.
Исправим: http://www.hostedredmine.com/issues/358015
Какой синтаксис/команды используются для работы с ролями?
Роли при добавлении на предмет привносят ему свои свойства, а также признак с именем роли. Т.е. например, если роль "читаемый" (со свойством "текст") повесить на предмет, то у него появится свойство "текст" (к которому можно обращаться предмет.текст), а также признак предмет.читаемый (который будет равен логическому "да").
У действий есть исключения (или как-то так, не помню). Можно сделать, чтобы если действие написано пользователем не полностью выдавалась обработка из исключения? Меня синтаксис интересует. Вообще, к этому больше всего вопросов, особенно к проверкам условий. Хорошо, есть примеры, но они не всегда спасают, приходится самому додумывать.
У действий есть ограничения. Они проверяются по очереди при попытке выполнить действие. Если условие какого-то из ограничений будет истинным (логическое "да"), то выполняются инструкции ограничения, а действие и остальные ограничения уже не выполняются. Пример - в Руслане и Людмиле действие "трубить".
В условии допустимо только одно условие?
Какое условие ты имеешь в виду? Вообще, выражения поддерживают логические операторы: и, или, не.
Неактивен
Да, планируется добавление пользовательских ролей. А что подразумевается под группами и тэгами?
Я имел в виду одно и тоже - возможность навесить на предметы некий признак, тэг. Чтобы объединить схожие группы предметов, чтобы не делать лишней работы с перечислением предметов в условиях. Там даже механики никакой не нужно, просто обычный тэг.
И, еще пожелание, чтобы все изменения в редакторе сразу отображались, а то приходится выходить и заново входить. Не очень удобно, но я уже привык )
Не понял, а что не отображается? Вообще, в редакторе есть пункт меню "Запустить в Плеере" - туда попадает текущая игра (сохраняется во временный файл и загружается в Плеере).
Посмотри процедуры или действия. Внутри них изменения становятся видны визуально только если закрыть и открыть их соответственно, хотя по-факту, да, сразу все изменяется.
Кстати, обратил сейчас внимание: чтобы взять предмет, нужно, чтобы он где-то лежал. По-моему, это не очень удобно.
Не совсем понял.
Я проверял. Чтобы переместить предмет, к примеру, к себе в инвентарь, этот предмет должен быть к чему-то приписан. Т.е., изначально он может висеть в воздухе, редактор это позволяет, но тогда передачи не произойдет. Мне кажется, это не совсем правильно.
Сделал перенос предмета командой локация.предмет. Теперь в описании локации мне пишет 'здесь предмет'. При этом осмотреть его нельзя 'я не знаю слова предмет'.
А у него настроен словарь?
Конечно, есть словарь с синонимами.
Я думал про ивенты типа "изменилась переменная" или "игрок зашёл в локацию". Но это пока было на уровне мыслей. А чего именно хотелось бы?
А все, что сейчас позволяет процедура, все забабахать в ивенты. Нужны процедуры, срабатывающие автоматически, при наступлении условия.
Какое условие ты имеешь в виду? Вообще, выражения поддерживают логические операторы: и, или, не.
Да, это я имел в виду.
У действий есть ограничения. Они проверяются по очереди при попытке выполнить действие. Если условие какого-то из ограничений будет истинным (логическое "да"), то выполняются инструкции ограничения, а действие и остальные ограничения уже не выполняются. Пример - в Руслане и Людмиле действие "трубить".
Вот, скажем есть некий шаблон: глагол + предмет.ип. Я могу сделать такое ограничение, если пользователь не указал предмет (просто написал глагол)?
если предмет.ип = '' то "Что я должен' + глагол + '?'
ЗЫ можно создать отдельный топик по чисто-техническим вопросам реализации языка.
Отредактировано johnbrown (22.12.2014 17:45)
Неактивен