RSS
Pages: 1 ... 4 5 6 7 8 9 10 11 12 13 14 15 16
[>] Re: Ленты RSS в клубе
std.club
hugeping(ping,1) — Peter
2020-09-09 12:25:19


> Теперь можно получать сводную ленту из нескольких эх. Например, все эхи инстеда в одной RSS ленте:
> authstr можно посмотреть в личном профиле

На новом движке ii-go не так:

http://hugeping.tk/echo/all/rss - Все сообщения
http://hugeping.tk/echo/echo.name/rss - Выбранная эха echo.name
http://hugeping.tk/to/User/rss - Сообщения для User
http://hugeping.tk/from/User/rss - Сообщения от User

[>] Перенос club.syscall.ru на станцию ping
std.club
hugeping(ping,1) — All
2020-09-10 13:38:52


Назад пути нет. Делегирую домены на сервера Яндекс. В относительно скором времени club.syscall.ru и syscall.ru будут указывать на станцию http://hugeping.tk

База поинтов не сохранится, но сообщения сохранятся. Если вы заинтересованы в общении на станции, уже можно регистрироваться на https://hugeping.tk
Новая станция больше похожа на форум.

Сервер крутится на малинке, как будет со стабильностью - не знаю. Статус проекта - личный арт-проект без всякой ответственности. http://hugeping.tk/rOf069UX8K24yAzvWa9N#rOf069UX8K24yAzvWa9N

В общем, поехали! :)

[>] Подкасы переехали на soundcloud
std.club
hugeping(ping,1) — hugeping
2020-09-10 23:00:10


В связи с переездом все подкасты INSTEAD перенесены сюда: https://soundcloud.com/hugeping

[>] Re: Подкасы переехали на soundcloud
std.club
hugeping(ping,1) — artur
2020-09-11 22:59:12


> А можно подкасты загрузить в ВК?

Я честно говоря не знаю что и как там делать. И немного побаиваюсь vk. :) Пусть пока в soundcloud полежат. Тем более, что уже неактуальны.

[>] Re: Подкасы переехали на soundcloud
std.club
hugeping(ping,1) — artur
2020-09-11 23:24:03


> Ну я загружу туда.

Честно говоря, мне кажется наши подкасты там вызовут нездоровую реакцию. Может не стоит?

С другой стороны, смотри сам. Я осяду здесь, а соц-сети пусть живут где-то там. :)

[>] Re: Подкасы переехали на soundcloud
std.club
hugeping(ping,1) — artur
2020-09-12 00:19:57


> Но если не надо --> не буду

Смотри на своё усмотрение. Мне ещё тут предлагали в яндекс-музыку залить. Вроде бы есть раздел: не музыка.

Подкасты нужно писать рассчитанные на широкую аудиторию, все-таки. А сейчас так и вообще - видео.

Где я, где инстед и где видео? :)

[>] Re: Спойлеры в клубе
std.club
hugeping(ping,1) — boscholeg
2020-09-12 00:20:35


> А как назад расшифровать? Зеркальцем воспользоваться?

Ага. Или мозгом. :)

[>] Модуль xrefs: ещё один интерфейс для INSTEAD игр
std.club
hugeping(ping,1) — All
2020-11-21 19:28:26


Играясь с INSTEAD на Plan9, я поймал себя на мысли, что играбельность простых игр в tiny-instead даже выше, чем в обычном настольном INSTEAD. И даже CYOA игры выглядят не так ужасно. Почему?

Не знаю как у других, а у меня сформирован рефлекс нажатия ссылок. Когда я вижу гипертекст, я:

- Сначала обращаю внимание на ссылки;
- Читаю текст фрагментарно и часто непоследовательно;
- Стараюсь нажать на эти ссылки раньше времени.

Поэтому то меня и тянет парсер, где текст -- это просто текст.

Так вот, в tiny-instead текст тоже выглядит текстом, а управление игрой осуществляется через ввод цифр: http://hugeping.tk/lib/uploads/9front-instead-cat.png

И тут я подумал, а может быть можно сделать что-то похожее и в обычном INSTEAD?

Оказалось, можно! Встречайте модуль xrefs.

http://hugeping.tk/lib/uploads/xrefs.png

Модуль уже в репозитории: https://github.com/instead-hub/stead3-modules

Как пользоваться?

1) В начало вашей игры добавьте loadmod 'xrefs'
2) Вы можете пользоваться мышкой, или клавиатурой, нажимая на клавиши для выбора ссылки. Для режима "использовать" нажимайте shift, затем две клавиши по очереди, которые соответствуют предметам.

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

[>] Модуль extlibs: частичка метапарсера для классики
std.club
hugeping(ping,1) — All
2020-11-22 12:54:37


Привет!

Давно уже хотел портировать часть функций метапарсера в классику. Сегодня я это сделал: https://github.com/instead-hub/stead3-modules/tree/master/extlib

Что есть? Словарь. Таким образом, можно делать стандартные реакции в зависимости от типа объекта. На данный момент поддерживаются:

- генерация описаний предметов, если у них не задан dsc (или dsc вернул false);
- supporter;
- container;
- transparent;
- concealed;
- openable;
- switchable;
- item (вещь можно брать и класть);
- дополнительные обработчики у obj: onact, onuse, oninv - которые вызываются перед стандартными.

Демонстрация:

loadmod 'extlib-ru'

obj {
	-"винтовка";
	nam = "винтовка";
	onuse = function(s, w)
		if w ^ 'ваза' then
			p [[Бах!]];
			remove(w)
			return
		end
		return false
	end;
}:attr 'item'

obj {
	-"телевизор";
	nam = "телевизор";
}:attr 'switchable';

obj {
	-"стол";
	nam = "стол";
}:attr 'supporter': with { 'винтовка', 'ваза', 'коробка', 'телевизор' }

obj {
	-"коробка";
	nam = "коробка";
}:attr 'openable,container';

obj {
	-"ваза";
	nam = "ваза";
}:attr 'container,item':with 'цветок'

obj {
	-"цветок";
	nam = "цветок";
}:attr 'item';

room {
	nam = 'main';
	title = "extlib demo";
	obj = { 'стол' };
}

Для сообщений стандартной библиотеки применяется такой-же язык шаблонов как и у метапарсера:

--"видеть"
ex.msg.EXAM = "{#Me} не {#word/видеть,#me,нст} {#vo/{#first/пр}} ничего необычного.";

В общем, как и всегда, надеюсь, что это кому-то понадобится на практике.

P.S. Конечно, модуль будет дорабатываться. Stay tuned!

extlib.png

[>] Официальный и неофициальный чаты INSTEAD
std.club
hugeping(ping,1) — All
2020-11-23 00:11:06


Неофициальный Telegram чат INSTEAD https://t.me/insteadtalk стал большим и флеймообразующим. Новичкам там часто становится страшно и неуютно. Поэтому я создал модерируемый официальный чат.

https://t.me/insteadchat

Этот чат будет жёстко модерироваться. Оскорбления/грубость/сильный оффтоп -- запрещены.

[>] Re: Модуль xrefs: ещё один интерфейс для INSTEAD игр
std.club
hugeping(ping,1) — vvs
2020-11-24 10:45:05


vvs> Ну не знаю. Меня эти торчащие во все стороны индексы отвлекают еще больше, чем малозаметные гиперссылки.

Нужно искать компромисс. На самом деле, делать игры с ссылками, которые выделены в тексте цветом, мне не хочется. Остаются:
- парсер;
- невидимые ссылки (как в Вахте);
- xrefs;
- не писать уже. ;)

Я надеюсь, пока ещё, что xrefs приемлемый компромисс. Часть игроков, наверное, будет недовольна. Но какая часть, это вопрос....

[>] Re: Модуль xrefs: ещё один интерфейс для INSTEAD игр
std.club
hugeping(ping,1) — vvs
2020-11-24 10:52:14


vvs>Разве что сделать так, чтобы они были видны только пока удерживаешь шифт.
Думаю, будет раздражать определённую часть ещё больше. А так- замена визуализации просто. На самом деле, надо смотреть по играм. Испытывать.

[>] Re: Модуль xrefs: ещё один интерфейс для INSTEAD игр
std.club
hugeping(ping,1) — vvs
2020-11-24 22:00:56


vvs> Если сделать их видимыми только пока держишь шифт, то они все будут вообще незаметными.
vvs> Не знаю, кого это может раздражать, да еще имея полный выбор.

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

[>] МЕТАПАРСЕР 1.10
std.club
hugeping(ping,1) — All
2021-01-29 14:38:28


Обновлён модуль МЕТАПАРСЕР3.

Новое:
* mp:pager_mode() experiment;
* for_plural is documented;
* #Drop splitted in #Drop and #Insert;
* use less memory while compiling dict;
* all mp.msg.* can be functions;
* home/end keys while edit line;
* bugfixes.

https://instead3.syscall.ru/page/metaparser/

[>] INSTEAD 3.3.3
std.club
hugeping(ping,1) — All
2021-02-10 15:14:41


Выпустил INSTEAD 3.3.3.

Список изменений:

* добавлен параметр темы scr.col.brd (цвет бордюра);
* поддержка RTL (при сборке с _USE_HARFBUZZ и новым SDL_ttf);
* добавлен флаг instead.tiny в минимальной версии;
* готовность сборки с emscripten 2.0.12;
* gtk3 сборка включается по умолчанию;
* параметр сборки APPIMAGE;
* новая реализация анимированных gif (из движка удалён LGPL код);
* возможность сборки с lua5.4;
* исправления ошибок.

Бинарные сборки будут появляться по мере готовности.

Творите с удовольствием. :)

[>] Re: INSTEAD 3.3.3
std.club
hugeping(ping,1) — artur
2021-02-11 14:15:36


>>добавлен параметр темы scr.col.brd (цвет бордюра);
artur> Это, грубо говоря, рамочка вокруг картинок?
Это облась, которая возникает при масштабировании всей темы. Например, квадратная тема на широком мониторе. Справа и слева будут полосы. Теперь этот цвет можно задать.

[>] CYOA и линейность -- поиск идеального инструмента для написания историй
std.club
hugeping(ping,1) — All
2021-03-22 22:54:02


Недавно @technix подсунул мне статью https://if50.substack.com/p/1981-his-majestys-ship-impetuous в которой рассказывается о Роберте Лафоре (Robert Lafore) создателе интерактивной литературы и его играх. В играх применён довольно простой и забытый сегодня приём. История разворачивается как в CYOA играх, в ключевых моментах предлагая игроку вводить текст в свободной форме. Движок реагирует на:

* присутствие ключевых слов в фразе (например: да, нет, имя NPC и т.д.);
* отсутствие ключевых слов в фразе (попрошу обращаться ко мне как "сэр");
* объём текста и так далее...

При этом, даже в случае отсутствия совпадений с шаблоном, игра может продолжаться по умолчательной ветке. А может зацикливаться, заставляя игрока сделать свой выбор среди жёстко заданных вариантов. Например: атаковать или защищаться.

Сам факт свободной формы вводимого текста тоже может работать на погружение. Интересно, что похожий приём я использовал в своей игре "Вахта" при написании электронного письма.

В общем, статья хорошая, интересно было прочитать. Но после её прочтения я снова задумался о форматах интерактивной литературы.

Мне всегда нравилось писать истории, которые напоминают книги или кино (или театр). Загадки в такой истории воспринимаются как часть происходящих событий и естественно вплетаются в повествование. Поэтому и INSTEAD был написал с упором на такой вид игр. Условно, назовём их играми с моделью мира или просто квестами. Не смотря на ощущение свободы, на самом деле, именно свободы как правило в подобных играх нет. Мы просто "проживаем" разворачивающиеся события. Это "проживание" помогает погружению и не является средством реализации вариативности.

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

Зачем эти рассуждения? Дело в том, что меня давно интересует вопрос применения элементов CYOA для написания _линейных_ историй. И прочитанная статья вроде бы в очередной раз намекает на возможность этого пути. Мне казалось, что должен бысть способ скрестить парсер и CYOA и получить нечто новое.

Что мне нужно от CYOA? Литературный текст. Лёгкость работы с текстом (как в книге). Что мне нужно от парсера? Чувство свободы (хотя бы и мнимое) и вовлечённости. Однако, как только мы убираем модель мира, мы приходим к неизбежной нелинейности! Этот парадокс я долгое время не замечал.

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

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

Предполагаю, что речь идёт о (назову их так) "стратегических" играх. Я имею в виду игры с явно выраженной игровой механикой. Сюжет в таком случае будет "побочным" продуктом. Он будет развиваться не средствами CYOA подхода. Например, в случае игры про детектива, работающего с документами при помощью меню, сюжет, скорее всего, будет развиваться за счёт чтения игроком содержимого документов. А сам игровой процесс при этом не будет иметь прямого отношения к CYOA подходу.

То-есть, при проектировании игры мы можем выделить некую игровую механику и уже вокруг этой механики развернуть сюжет. В качестве примера: SMS игры, работа с документами, игры в виде диалогов, кликеры, текстовые-roguelike, расшифровка текстов и так далее. Да, мы всегда можем придумать новую уникальную (или не очень) механику и навесить на неё сюжет. Но, в таком случае, нельзя говорить об универсальности подхода. И, строго говоря, мы не можем назвать это CYOA. Потому что игровая механика таких игр не влияет на сюжет. Напомню, я говорю сейчас об играх с линейным сюжетом.

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

Игры с моделью мира -- настоящая интерактивная литература. ;)
P.S. Edited: 2021-03-22 18:58:47

[>] Re: CYOA и линейность -- поиск идеального инструмента для написания историй
std.club
hugeping(ping,1) — vvs
2021-03-23 10:16:06


Я говорил об играх в рамках интерактивной литературы или классических point&click квестах. Под "квестом" или игрой с моделью мира я понимал игры в которых моделируются действия игрока. Ходить по локациям, брать предметы и т.д. Тогда и Zork и Maniac Mansion относятся условно к "квестам". Сюжет в таких играх обычно линеен. Чувство свободы возникает от свободы перемещений и действий, но на сам сюжет это не влияет.

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

Конечно и в CYOA можно применить элементы "моделирования", но это довольно дорогое удовольствие по сравнению с "квестом". Потому что требует от автора написания художественного текста для всех развилок.

[>] Новости с INSTEAD фронта
std.club
hugeping(ping,1) — All
2021-05-14 20:41:29


Последнее время я внёс множество изменений в репозитории, которые относятся к проекту INSTEAD. Изменений накопилось масса. И я подумал, что неплохо держать гипотетических энтузиастов в курсе того, что именно происходит. Ведь нет ничего интересней, чем наблюдать за чьей-то работой, правда? :)

Изменения к 14 мая 2021.

# Метапарсер

Метапарсер изменился очень заметно. Толчком послужило мероприятие по написанию коллективного парсера "17 комнат". Сложно уже перечислить всё, что с происходило с кодом МЕТАПАРСЕРа. Назову только самые заметные вещи:

* Значительно улучшены подсказки. Смешных и абсурдных ситуаций должно стать меньше!
* Решение проблемы одушевлённости слов, которые имеют несколько смыслов;
* Улучшено качество распознавания при использовании сокращений;
* Исправлено множество внутренних недоработок (сообщения, ввод, и так далее);
* Улучшена документация;
* Служебные глаголы: счёт, парсер глаголы, парсер версия;
* Безопасный формат записи if "объект" ^ w (по сравнению с if w ^ "объект", w может быть nil);
* Новая тема по умолчанию;
* Экспериментальный модуль приказов.

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

# instead-cli

Долгое время я пользовался для разработки своих игр tiny instead. Эти минималистичный интерпретатор в 100 строк, который можно собрать в дереве исходного кода INSTEAD (src/tiny) и запускать его из терминала.

Для работы в Plan9 я сделал другой вариант tiny, который назвал 9instead. Очень удобная штука! Игра Луна-9 почти полностью написана с его помощью. Можно запустить редактор (acme или emacs), набирать текст и тут же прогонять заготовленный автоскрипт а другом фрейме редактора. Ничего лишнего!

Долгое время меня просили собрать такой интерпретатор, но в виде "продукта". Для Windows в том числе. И в этот раз у меня, наконец, нашлось время это сделать! Теперь на instead-hub появился проект https://github.com/instead-hub/instead-cli Он постоянно развивается. Сейчас готовится новая версия. Все наработки из Plan9 интерпретатора перешли в этот новый проект и я удалил 9instead. Присутствуют статические сборки для Windows и Linux. Особенно instead-cli удобно использовать при разработке парсерных игр, в том числе для перегенерации словаря и прогона тестов. Да и играть в нём тоже неплохо. К тому же, этот интерпретатор можно использовать как референсную реализацию при создании своих версий INSTEAD.

Ну и, конечно, instead-cli собирается в 9front. Так что теперь это официальная версия INSTEAD для Plan9 вместо 9instead.

# Модуль protect

Иногда хочется сделать так, чтобы исходники вашей игры не были доступны для изучения. Для этого есть "штатный" метод в виде doencfile в INSTEAD, но он довольно неудобен в использовании (требуется модификация кода) и легко вскрывается. Поэтому в stead3-modules появился protect! Как он работает?

Для его запуска вам нужен lua или instead с опцией -lua для запуска скрипта. Ну и instead-cli теперь умеет запускать скрипты Lua.

```
instead-cli -xprotect.lua main3.lua main3.lua
```

Осторожно! Файл main3.lua будет закодирован! Вы можете повторить эту процедуру для всех lua файлов вашего проекта.

Конечно, "защиту" можно взломать. Но сделать это сложнее, чем стандартный encoder в INSTEAD. Если вам удалось сделать расшифровщик, расскажите, насколько это было легко. Это правда любопытно. Сам я не сторонник закрытия исходников, но иногда художественный замысел требует этого. Например, если речь идёт о хардкорной головоломке.

# Перевод игры "Архив"

Я перевёл игру Архив на английский. Но нужна вычитка. Если у вас есть скиллы и возможность помочь, прошу на https://github.com/gl00my/instead-game-archive Игра полностью проходима на русском и на английском.

Вообще, с переводом получилось обидно. Единственная причина, по кторой я взялся за работу, это предложение одного активиста в чате INSTEAD. Я перевёл, а активист на данный моент работу остановил. Что теперь делать с этим "повисшим" переводом я не знаю. Но энтузиазм у меня пропал и захлебнулся. Так что всё отдаю на откуп энтузиастов. Если вы поможете - английской версии быть. Нет -- значит нет. Выпущу как есть.

# INSTEAD, вперёд!

В общем, я доволен прогрессом. INSTEAD превращается в инструмент мечты. Много интересных задач. И радость творчества присутствует! Готовлю обновление: метапарсер + metaparser-js + instead-cli + перевыпуск всех своих парсерных игр. Потом в очередной раз подумаю, что делать дальше. Надеюсь, работа над INSTEAD доставляет радость не только мне. :) А пластмассовый мир пусть идёт лесом.

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — hugeping
2021-05-15 14:31:02


Сегодня обновлены:

- МЕТАПАРСЕР3 до версии 2.0;
- metaparser-js до версии 2.0;
- instead-cli до версии 1.2;
- Обновлён metaparser-js на сайте https://parser.hugeping.ru

Ссылки на проекты:

МЕТАПАРСЕР https://instead.hugeping.ru/page/metaparser
instead-cli https://github.com/instead-hub/instead-cli
P.S. Edited: 2021-05-15 11:32:07

[>] Re: CYOA и линейность -- поиск идеального инструмента для написания историй
std.club
hugeping(ping,1) — vvs
2021-05-20 17:11:29


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

Вот что интересно, я почти не играл в "оригинальные" парсеры старой школы. И вообще, любил квесты попроще. Например, предпочитал графические адвенчуры от Lucas Arts (там подписывались объекты при наведнии, в отличие от игр Sierra).

Так что мои игры реконструкцией сложно назвать. Более того, я терпеть не мог эффект "угадай глагол". Почему сейчас всё поменялось, сам не понимаю. Ну, угадай глагол мне и сейчас не нравится, конечно. :) Просто я теперь знаю какие глаголы работают :)

vvs> Кстати, удивляет сегодня, что такое было возможно на компьютерах с 32 _килобайтами_ памяти и 8-битным процессором (в графике!). И да, разумеется, там же рядом можно полюбоваться исходным кодом Zork и Dungeon на ZIL или FORTRAN.

Вообще, старые технологии часто недооценивают. Например, в troff можно верстать не хуже, чем в Latex, но только при этом ресурсов нужно на порядок меньше.

[>] Неофициальный телеграм чат меняет владельца!
std.club
hugeping(ping,1) — All
2021-06-29 00:45:37


Чат https://t.me/insteadtalk, а также все связанные с ним чаты (irc, discord и jabber) целиком переходят под управление нового владельца -- spline. Теперь, неофициальный INSTEAD чат больше не контролируется мной (автором движка INSTEAD). Начиная с этого момента, будущее и политика чата зависят от spline и сообщества любителей INSTEAD.

Судьба официального (модерируемого) телеграм-чата https://t.me/insteadchat пока не решена.

#news

[>] Передача телеграм-чата INSTEAD official
std.club
hugeping(ping,1) — All
2021-06-29 11:41:18


Модерируемый телеграм чат https://t.me/insteadchat передан новому владельцу @canwolf.
Чат переименован в "INSTEAD разработка" и теперь его политика и будущее будут определяться новым владельцем и сообществом INSTEAD.

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

Мне нравится проект INSTEAD, я трачу много своего свободного времени на его кодовую базу и на написание своих игр. (Сейчас, например, готовится новая версия INSTEAD с долгожданной поддержкой hidpi и масштабируемых тем.) Я занимаюсь проектом с 2009 года. При этом, мои социальные роли в проекте вызывали и вызывают эффект выгорания. У меня нет никаких амбиций по продвижению INSTEAD, поэтому я постепенно отчуждаю все ресурсы, которые не относятся непосредственно к разработке движка: группа VK, репозиторий игр, форум... Теперь настало время чатов.

Моей единственной территорией социального взаимодействия остаётся https://hugeping.ru
Присутствие меня в чатах INSTEAD вероятно, но не гарантируется.

Cпасибо @spline и @canwolf за свободу!

P.S. Фактическая передача чатов новым владельцам займёт около 6 дней.

#news

[>] МЕТАПАРСЕР 2.1
std.club
hugeping(ping,1) — All
2021-07-31 17:55:18


Выпустил новую версию метапарсера.

* transcript больше не включается автоматически по команде autoscript;
* mp.detailed_attr;
* mp.msg.INCOMPLETE_NOUN/SECOND_NOUN/UNKNOWN_VERB переписаны;
* mp:content переписан;
* mp:footer();
* mp:verb_filter() (ru: лучшее детектирование глаголов);
* ru: исправлен глагол #Insert;
* исправления в автодополнении;
* исправления в английской библиотеке.

Рекомендую обновиться, если вы пишите свои игры с использованием МЕТАПАРСЕРА.

Выпущены: metaparser, metaparser-js, instead-cli

https://instead.hugeping.ru/page/metaparser/
https://parser.hugeping.ru

#news

[>] МЕТАПАРСЕР 2.2
std.club
hugeping(ping,1) — All
2021-08-15 12:41:50


Выпустил новую версию метапарсера. Исправление содержит исправления ошибок, поэтому рекомендуется для всех авторов.

* исправлено падение при вызове mp:myself();
* исправлено поведение Meta команд;
* исправлен std.busy();
* бекпорт исправлений из проекта re:instead.

С новым модулем выпущены: metaparser, metaparser-js, instead-cli

https://instead.hugeping.ru/page/metaparser/
https://parser.hugeping.ru

#news

[>] RE:INSTEAD 0.1
std.club
hugeping(ping,1) — All
2021-08-15 12:48:26


Сегодня вышла в свет первая версия нового проекта RE:INSTEAD!

Что это: https://github.com/instead-hub/reinstead/blob/master/MANIFEST.md
Скриншоты: https://github.com/instead-hub/reinstead/blob/master/README.md

Вы можете скачать готовую сборку, которая должна работать на Linux (64 бита) и Windows. Также, проект собирается в 9front (Plan9).

https://github.com/instead-hub/reinstead/

RE:INSTEAD распространяется с играми проекта "ПАРСЕРНОЕ СОПРОТИВЛЕНИЕ", которые лицензированы под лицензией CC SA 4.0.

http://parser.hugeping.ru/

#plan9
#news

[>] metaparser-js 2.2.1
std.club
hugeping(ping,1) — All
2021-08-25 19:29:13


Обновлёна js версия метапарсера до версии 2.2.1.

Изменения:
- исправлена работа старой js версии, которая активизируется если браузер не поддерживает wasm;
- исправлена доступность для незрячих (спасибо Даниилу Гусеву за помощь в отладке).

#news

[>] INSTEAD 3.4.0 вышел!
std.club
hugeping(ping,1) — All
2021-08-31 19:07:33


На исходе последнего дня лета вышел INSTEAD 3.4.0! Версия с поддержкой hi-dpi экранов и возможностью создавать игры с адаптивными темами. Список изменений:

- исправление в pxl:fill_triangle (сортировка вершин);
- исправлена сборка с новым SDL_image;
- корректная работа с масштабированием в Windows (dpi awarness);
- поддержка высоких dpi (если включена опция HQ);
- новый параметр -dpi;
- новая функция instead.screen_dpi();
- новый параметр theme scr.gfx.scale;
- новый параметр theme scr.dpi;
- новый параметр theme scr.scale_aware (1|2) - поддержка адаптивных тем;
- возможность запуска игры через командную строку по пути к main?.lua файлу;
- более качественное масштабирование картинки сцены;
- обновлён SDL для windows сборки;
- улучшение: используется GetModuleName для нахождения полного пути к .exe (Windows);
- новая функция pxl:tosprite (конвертация pxl в sprite с масштабированием);
- ускорение pxl:fill;
- экспериментальная поддержка сборки с gtk4.0 (пока отключено).

Бинарные сборки будут появляться по мере готовности.

#news

[>] МЕТАПАРСЕР 2.2.1
std.club
hugeping(ping,1) — All
2021-09-04 20:52:33


Обновлён метапарсер.

- Исправлено формирование с/со в русской библиотеке;
- Исправлены сохранения в metaparser.js.

Обновлениы: metaparser, metaparser-js(до 2.2.2). Заменена сборка instead-cli(1.5).

#news

[>] RE:INSTEAD 0.2
std.club
hugeping(ping,1) — All
2021-09-05 14:33:05


Сегодня, тихо и незаметно, выпущено обновление re:instead 0.2!

RE:INSTEAD это приложение проекта "ПАРСЕРНОЕ СОПРОТИВЛЕНИЕ"

https://parser.hugeping.ru

которое предлагает вашему вниманию сборник парсерных игр в минималистичном формате. Сборки подготовлены для: Windows, Linux и Android. Для других ОС (включая Plan9, MacOS X, BSD*) предлагается тривиальная самостоятельная сборка из исходных кодов.

Изменений масса:

- изменение размера шрифта клавишами ctrl-+/-/0;
- поддержка автоскриптов через параметр -i <autoscript>;
- значительное ускорение работы;
- исправления в играх;
- поддержка сохранения настроек;
- порт на Android;
- исправление ошибок и прочие улучшения.

Сборку для android пока можно скачать прямо в виде .apk файла. А потом, я надеюсь, приложение примут в F-Droid. Соответствующий merge request уже создан.

Проект на github: https://github.com/instead-hub/reinstead

Руководство для игроков: https://github.com/instead-hub/reinstead/releases/download/0.2/manual.pdf

Бинарные сборки: https://github.com/instead-hub/reinstead/releases

#news

[>] Блокировка INSTEAD в Google Play
std.club
hugeping(ping,1) — All
2021-09-05 22:04:07


Сегодня выпустил re:instead. Сделал также merge реквест в f-droid. Настроение выполненной работы держалось до самого вечера, когда пришли тревожные новости...

# INSTEAD от btimofeev заблокирован в Google Play #

Что они там нашли, не знаю... Вероятно, не нравится установка Lua кода из сторонних источников. Что же, закономерный оскал капитализма.

На самом деле, неуместность INSTEAD на коммерческой площадке чувствовалась и раньше. И вот, сейчас мы получили логическую развязку. INSTEAD не место на площадке Apple. Не место на площадке Google.

Не знаю, что будет дальше, но лично моё мнение, что лучше просто послать Google подальше и продолжать заниматься творчеством. Пока ещё есть возможность запускать открытый код на наших (пока?) компьютерах.

Напомню, что скачать приложение вы можете из репозитория открытых проектов на F-Droid: https://f-droid.org/en/packages/org.emunix.insteadlauncher/

Я обновил ссылку на https://instead.hugeping.ru на приложение для Android.

#news

[>] RE:INSTEAD 0.3
std.club
hugeping(ping,1) — All
2021-09-12 19:11:47


Выпущен Re:instead 0.3. В новой версии:

- Настройка conf.width: максимальное число символов в строке;
- Обновлён Метапарсер;
- Исправлены ошибки;
- Улучшена Android версия.

Также, Re:instead уже можно поставить из F-Droid! Правда, пока только прошлую версию (0.2).

https://github.com/instead-hub/reinstead/releases/tag/0.3

#news

[>] Re: RE:INSTEAD
std.club
hugeping(ping,1) — hugeping
2021-09-19 16:29:01


Выпустил RE:INSTEAD 0.4

Новое:

* возможность сборки с одной из трёх библиотек рендеринга шрифтов (stb_truetype/libschrift/freetype);
* статические сборки Linux/Windows теперь собираются с freetype;
* исправление ошибок;
* системные команды теперь начинаются с ! (например, !save);
* команды !saves и !rm для просмотра и удаления сейвов.

Готовы бинарные сборки для Linux/Windows (reinstead-0.4.zip) и .apk для Android.
Обновление в F-Droid должно тоже скоро подоспеть.

https://github.com/instead-hub/reinstead/releases

[>] Re: RE:INSTEAD
std.club
hugeping(ping,1) — hugeping
2021-09-21 18:49:11


tts в re:instead

Со второй попытки, всё-таки, поддержку tts решил оставить. (Пока, только для Android). Спасибо Никите за помощь! Поддержка неидеальна, конечно, но пользоваться можно.

Будет в следующей версии (0.5).

[>] Re: Блокировка INSTEAD в Google Play
std.club
hugeping(ping,1) — hugeping
2021-09-21 18:49:49


Приложение снова доступно :) Ура!

[>] Re:instead 0.5 с поддержкой tts
std.club
hugeping(ping,1) — All
2021-10-02 13:22:07


Выпустил Re:instead 0.5 с поддержкой голосового вывода и улучшениями в Android сборке.

* поддержка голосового вывода на: Linux, Windows и Android.
* !tts команда;
* функции доступности в Android версии;
* лучшая поддержка виртуальных клавиатур Android;
* исправления ошибок.

Этот релиз не состоялся бы без помощи Nikita Tseykovets. Спасибо!

Как обычно, скачать версии для Windows/Linux и Android можно с github: https://github.com/instead-hub/reinstead

Версия в F-Droid будет через несколько дней.

#news

[>] МЕТАПАРСЕР 2.3
std.club
hugeping(ping,1) — All
2021-10-23 12:06:59


Вышло большое обновление для всех проектов, связанных с метапарсером.

# МЕТАПАРСЕР 2.3

* исправление TakeAll (для частей объекта);
* экспериментальный режим mp.strict_mode;
* mp.inp_delim;
* исправление в mp:match;
* исправление в mp:post_action во время abort_cmd (snapshots);
* исправления в стандартной библиотеке.

# RE:INSTEAD 0.6

* перевод Urzi на английский (спасибо, canwolf!);
* новая игра "Краски октября:;
* Android: совместимость с настройкой rotate lock;
* исправление ошибок.

// Версия для F-Droid в пути!

# Сайт парсерного сопротивления https://parser.hugeping.ru

* обновлён МП;
* добавлены новые игры: Краски октября и перевод Urzi.

# instead-cli 1.6

* обновлён до новой версии МП.

# metaparser-js 2.3

* обновлён до новой версии МП.

#news

[>] Парсерное сопротивление: новые версии (МП 2.4)
std.club
hugeping(ping,1) — hugeping
2021-11-27 18:24:38


Встречайте большое обновление ПАРСЕРНОГО СОПРОТИВЛЕНИЯ!

Вышли новые версии проектов: МЕТАПАРСЕР, Re:instead и metaparser-js.

https://parser.hugeping.ru
https://instead.hugeping.ru/page/metaparser/

# МЕТАПАРСЕР 2.4

Парсерный движок для создания игр с текстовым вводом. Для использования требуется INSTEAD или Re:instead.

https://instead.hugeping.ru/page/metaparser/

Изменения:

* комната gameover теперь имеет атрибут 'gameover';
* функция getDaemons() -- получить список фоновых процессов;
* комната gameover останавливает все фоновые процессы;
* атрибут 'concealed' удаляется, когда предмет перемещается в инвентарь;
* новый метод obj.is_once() для проверки факта срабатывания obj.once();
* обновление документации;
* исправлены/улучшены некоторые сообщения.

# Re:instead 0.7

Минималистичный парсерный движок для Unix, Windows, Plan-9 и Android. В комплект включён набор игр.

* значительное улучшение кернинга при работе с freetype и libschrift;
* параметры -noautoload/-noautosave;
* новый метапарсер 2.4;
* исправления в игре "Краски октября";
* поддержка клавиши del;
* исправление при изменении размера шрифта;
* исправление смены иконки приложения в Windows;
* возможность делать синонимы команд (conf.cmd_aliases);
* Windows: перенаправлять stdout/stderr в errors.txt только если stdout не доступен;
* команды !script и !debug;
* !stop команда в autoscript.

# metaparser-js 2.4

Реализация парсера на js.

* обновление метапарсера до 2.4;
* команды !ls, !rm, !restart;
* возможность загружать и выгружать сохранения;
* возможность выгружать транскрипт (пока только в пределах одной игровой сессии);
* локализация на английский (язык выбирается по основному языку браузера).

[>] Re:instead в Google Play
std.club
hugeping(ping,1) — hugeping
2021-12-13 13:47:22


Борис Тимофеев выложил Re:instead в Google Play. Так что библиотечка парсерного сопротивления стала ещё доступнее. Не забывайте оценивать приложение, если оно вам нравится. ;)

https://play.google.com/store/apps/details?id=ru.hugeping.reinstead

#news

[>] Re: Сказки про INSTEAD: как всё начиналось
std.club
hugeping(ping,1) — vvs
2022-05-01 12:56:02


vvs> Не знаю, заметил ли это здесь кто-нибудь ещё...
vvs> Inform 10.1.0-beta: https://github.com/ganelson/inform

Да, тоже заметил. Правда, теперь я уже вряд-ли буду заниматься ещё одним проектом. Тут и на МП то времени нет... Русификация Информ7 интересная задача. Но лично для меня, не очень актуальная. Мне (как программисту) кажется, что логику проще описывать с помощью обычного ЯП.

[>] Использование github workflow
std.club
hugeping(ping,1) — hugeping
2022-08-28 21:19:03


Некоторое время назад у проекта INSTEAD на github отвалился travis-CI. В чём там дело я не помню сейчас, но несколько месяцев CI не работала. Вообще, мне не очень нравится идея завязываться на инфраструктуру которую предоставляют компании. Поэтому сначала я думал просто радикально отказаться от всё этой "блажи". Но как-то постепенно я начал переводить все проекты на рельсы github workflow...

Я понял, что сами по себе сценарии могут быть полезны в плане изучения. Например, теперь можно увидеть как собирается версия emscripten: https://github.com/instead-hub/instead/blob/master/.github/workflows/emscripten.yml

Можно изучить сценарий и повторить уже на реальной машине.

На данный момент автоматизирована сборка проектов: instead, instead-cli, metaparser, metaparser-js.

P.S. С instead есть нюанс, собранная версия под Windows -- нерабочая (битая таблица импорта). Похоже, причина в mingw в Ubuntu. Имейте в виду. Интересно, что в wine, при всём этом, она работает. :)

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — hugeping
2023-11-13 21:20:33


Записал и выложил новый видеоподкаст. INSTEAD и парсерные игры.

https://www.youtube.com/watch?v=5fflaYGf9cY

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — vvs
2023-11-14 02:33:10


hugeping>> Записал и выложил новый видеоподкаст. INSTEAD и парсерные игры.

vvs> Браво! Мне понравилось.

Спасибо!

vvs> Небольшие замечания на будущее. Элизы в моем emacs вообще-то нет, требуется специально её устанавливать, зато везде есть dunnet, который почему-то не упоминается вовсе.

Потому что не знал! Почитал, прикольно.

> Так же не мешало бы упомянуть и SHRDLU, которая являлась настоящей реализацией ИИ для своего времени, тоже в MIT.

Спасибо, не знал!

> Музыка в игре временами заглушала речь, да и голос, бодрый и выразительный в начале, несколько увял к концу :(

Там много проблем было со звуком. Я даже выложил 2й ролик https://www.youtube.com/watch?v=el2Dh2HwB3s где пытался исправить звук, но возможно сделал ещё хуже. Не так просто без опыта это делать.

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — vvs
2024-01-29 02:07:07


> А основной вопрос был там такой: при запуске инстеда в окне шрифт по умолчанию слишком мелкий. В настройках стоят: тема и HQ. Версия инстеда 3.5.1, откомпилированная с исходников, ОС Linux (NixOS), видеорежим 1920x1080. Инстед выбирает коэффициент масштабирования 1.058333, поскольку у моего монитора DPI 101.6. Это ещё одна косметическая проблема: я не могу указать дробный DPI, но если инстед берет его от SDL, то реально использует именно это дробное значение.

Кроме видеорежима хорошо бы сказать размеры монитора, тогда бы мы проверили действительно ли dpi равен 101 :)

А вообще, в таком случае можно указать параметр -dpi число -- чтобы инстед брал именно его, а не тот, что стоит в системе. То-есть, например -dpi 150 -- коэффициент масштабирования станет 150/96

Эту настройку можно записать в профиле инстед. Я сейчас точно не скажу где он лежит (это зависит от ОС и от сборки) но в Linux думаю проще опцию добавить (командной строки).

P.S. Edited: 2024-01-28 22:07:21

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — vvs
2024-01-29 02:27:47


vvs> С моей точки зрения проблема здесь в том, что основная единица измерения, от которой выполняется масштабирование, выбрана произвольно. Согласно википедии, для первоначального значения DPI Apple выбрала 72 типографских пункта, что было вызвано размером экрана, соответствовавшего тогда размеру листа бумаги. Microsoft увеличила это значение ещё на треть и получилось 96. В настоящий момент оно не соответствует никакому физическому явлению и является историческим артефактом.

Мы исходим из того, что сегодня DPI всё-таки указывается верно. Ну по кр мере, я вижу на своих Linux системах что действительно в зависимости от размера экрана картинка масштабируется корректно (в оконном режиме!).

vvs> Если просто вычислить размер экрана, соответствующего разрешению 800x600 и DPI 96, то получается 10" по диагонали - это очень маленький экран.

Это если ты меряешь dpi по диагонали. В инстеде используется "горзонтальный" dpi.

vvs> Вообще, в современных версиях Windows и Linux DPI вообще нигде не используется, а есть другие API для определения масштаба изображения.

В SDL2 API предоставляет именно горизонтальный и вертикальный dpi. Я использую горизонтальный.

vvs> Особенно мешает тот факт, что реальный DPI монитора не имеет ничего общего с 96 DPI.

Вот тут я не понял. Реальный DPI монитора должен быть реальным DPI. Ну то-есть, честным DPI. Если у тебя монитор 96 dpi (горизонтальный) то предполагается что SDL2 вернет именно его и промасштабирует как dpi/dpi-темы. dpi-темы можно указать, но если она не указана - то считается что тему разработали на 96 dpi, что не очень далеко от правды, если говорить о стандартных темах.

> Например, в последних версиях Gnome этот параметр всегда принудительно устанавливается 96 DPI для любых мониторов.

Я на gnome сейчас вот в браузере пишу этот текст и у меня масштаб INSTEAD разный на двух системах. От 0.96 до 1.6. Забавно, что xdpyinfo во всех случаях показывает 96x96, но вот SDL api всё-таки возвращает откуда то "честное" dpi.

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

Это возможно только в reinstead. Там изначально масштабируемый интерфейс. А вот в INSTEAD это невозможно.

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — vvs
2024-01-30 17:03:23


vvs> Ты мне сейчас кое-что напомнил: действительно, некоторые дистрибутивы линукса патчат гном. Так что я не удивлюсь если где-то до сих пор DPI отличается от 96.

У меня xdpyinfo показывает 96, но SDL2 возвращает что-то иное, так что масштаб становится 1.5.
Что именно берет SDL2 я не знаю, но это честный какой-то DPI.

> У меня и xdpyinfo, и SDL, и INSTEAD видят то, что я им укажу. По умолчанию 96x96, я специально меняю на DPI монитора с помощью `xrandr --dpi from-output`, но это даёт 101.6, т.е. 101.6 / 96 = 1.058333

А какие темы-игры? В принципе, можно поменять dpi с 96 на 72.

Какие решения ещё тут могуть быть?

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — hugeping
2024-01-30 18:08:42


hugeping> Какие решения ещё тут могуть быть?

Ты предлагаешь настройку "масштаб" сделать в меню?

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — vvs
2024-01-30 21:20:40


vvs> Странно. А это точно SDL?
Да, я вывожу printf dpi из C кода в момент взятия:

157.825241 -- это НАСТОЯЩИЙ dpi
DPI scale: 1.644013
Video mode: 1315x986@32bpp (opengl)
peter@t480:~/Devel/instead$ xdpyinfo | grep 96
  resolution:    96x96 dots per inch -- это ФИКТИВНЫЙ о котором ты говоришь 

vvs> У меня в гноме установлено масштабирование шрифта 1.5 и все приложения гнома имеют нормальный масштаб и даже Firefox.

Там куча разных настроек. Я сейчас уже не помню детали, но на масштаб шрифта есть свои хитрости, типа Xft.dpi - это к нам не относится.

vvs> Менять на 72 я особого смысла не вижу. А почему тогда именно 72? Это опять какая-то магическая константа. Мне так больше подходит 67, а кому-то может и нет.

Нужно вручную вписать dpi в темы так, чтобы они выглядели нормально. То-есть не меняя системное dpi - меняй dpi каждой темы пока она не станет хорошо. А я проверю это у себя.

vvs> Просто DPI - это достаточно окольный и ненадёжный параметр для масштабирования.

Мне пока кажется что он надёжен. Я пока не видел систем где DPI возвращается неправильно. Даже в windows оно работает как надо. Я тебе верю, но мне нужен какой-то опыт. Но я исходил из 2х предпосылок:

1) Нативные темы НОРМАЛЬНО смотрятся на ЧЕСТНЫХ dpi 96
2) SDL2 даёт верный dpi

Пп1 - возможно, я не прав. Но тогда нужно взять конкретную тему и предложить тот dpi в которой она нормально смотрится. Я попробую у себя и сравним ощущения.

Пп2 можно проверить. Воткни в graphics.c в функции gfx_get_dpi() в конце printf("%f\n", hdpi) и сравним с твоим реальным dpi;

vvs> Разве что идея растягивать окно, но ты говоришь, что это невозможно. А почему?

Потому что INSTEAD поддерживает другую парадигму -- игра жёстко привязана к определенным пропорциям и выглядит одинаково вне зависимо от масштаба. Все игры уже написаны так что привязаны к своему разрешению виртуальному. На лету это не меняется в принципе. Если это менять -- то это уже INSTEAD4. Есть другие мои движки где по другому: reinstead и rein-- если и будет инстед4 то он будет на rein.

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — vvs
2024-01-30 23:04:28


vvs> Запускаю Tutorial: масштаб 1.058333, режим 846x634, окно, шрифт - мелкие. Выхожу, указываю -dpi 144: масштаб 1.5,

А надо было сделать не это, надо было сделать _другое_.
А именно - открыть тему которую ты используешь (.ini файл) и в теме написать
scr.dpi = 72 (или другое число)

vvs> Да, ты прав. SDL действительно видит настоящий DPI - 101.599998, хотя xdpyinfo и показывает 96x96, т.е. для инстеда менять его нет необходимости. Но это ничего не даёт на практике :(

На практике это даёт возможность разработчику темы написать scr.dpi = и тот dpi на котором они её разработали (на котором она хорошо смотрится). Это всё что нужно.. Вот я тебя и прошу - найди такой хороший dpi для стандартных тем, сообщи мне - и я попробую на своих мониторах..

[>] Re: Новости с INSTEAD фронта
std.club
hugeping(ping,1) — hugeping
2024-01-30 23:05:43


https://instead-games.ru/forum/discussion/comment/13852/#Comment_13852

На всякий случай ещё раз укажу на сообщение в котором это написано.

Pages: 1 ... 4 5 6 7 8 9 10 11 12 13 14 15 16