RSS
Pages: 1 2 3 4 5 6 7 8 9 10 11 ... 17
[>] Выход в эфир
std.hugeping
Peter(syscall,1) — All
2020-04-19 18:22:50


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

Мне нравилось время ФИДО, потом нравилось время рассвета Живого
Журнала. Нравилась "Компьютерра". Нравился бум подкастов, и те,
которые были хороши и интеллигентны. Нравились каналы #irc. Нравилась
Фрязинский фото-клуб. Да и вообще, цифровая фотография, когда она
появилась. Так вот, сейчас всего этого нет. А то, что предлагается
взамен -- галимый полуфабрикат. Почему?

Но прежде отвечу на вопрос -- зачем? Зачем искать общения в сети?

1) Осознание, что ты не одинок. Ну это примерно, как когда ты читаешь
книгу, которая тебе безумно нравится, и находишь свои мысли у автора
книги. Ещё сюда можно добавить -- желание быть понятым.

2) Творчество. Не требует самооправданий. :)

3) Осмысленное написание длинных текстов -- часто помогает разобраться.

Ну так вернусь к вопросу, где это всё? Почему у меня нет ни малейшего
желания писать в vk? Искренне общаться на площадках типа dtf.ru?
Почему воротит от фейсбука?

Я хочу быть предельно (насколько это для меня возможно) честным.

Рассмотрим варианты ответа.

1) Раньше трава была зеленее... Да, наверное. Но что делать, если она
и правда БЫЛА ЗЕЛЕНЕЕ? Что меняет эта присказка? Она намекает на
изменившееся восприятие. Такую вещь сложно заметить изнутри. Так что,
это возможный ответ. Тогда, нужно или меняться самому, или уйти из
интернета -- забить. Но размениваться на лайки -- не хочу. Это путь
манипуляций и лжи. По крайней мере в моём восприятии.

2) Технологии. Централизация. Переусложнённость и тд. Да, это всё так, но
мне кажется -- это второстепенный вопрос. Да, технология -
второстепенна. Но тут есть хитрый момент. Дело не
в технологиях самих по себе, а в том, чему они служат. Ну например, во
многих соц-сетях есть режим, когда выше показываются посты не
руководствуясь датой их создания, а "интересностью". А это в свою
очередь означает возможность манипулировать.

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

Отчасти, соглашусь. Но только отчасти. Фидо - некоммерческая сеть. irc
серверы -- некоммерческие. Что касается коммерческих ресурсов,
вероятно, на заре Интернета они могли себе позволить человеческие
черты, но когда весь интернет был захвачен коммерсантами -- звериный
оскал стал необходимостью. Иначе - не выжить! Компьютерра закрылась --
помните?

В чём проявляется этот оскал? В том, что люди -- это ресурсы. Винтики
в матрице. Производители контента, который потребляется снова внутри
замкнутой системы социальной сети. Мысль можно развивать, но я не
буду. Нажми на кнопку -- получишь результат... Остальное - ложь.

Так вот, к чему это я?

Я делаю INSTEAD. Делаю странные проекты типа
https://metaparser.syscall.ru/ И наверное, многим нормальным людям это
непонятно и странно. Да и мне самому, это часто кажется странным. Чего
уж там. Но я всегда делал то, что был бы рад найти сам, но так и не
нашёл. Поэтому, я всё ещё надеюсь, что вопреки системы, "наших" людей
полно. Просто их не видно. Они рассеяны. Их умные посты всегда на
дне. Ну и всё такое прочее.

И тут я понял, что единственный путь это или уйти, или самому начать
делать контент! Даже, без надежы на победу. Но пафосно. :)

Я решил завести блог на IDEC, так как у меня есть много разрозненных
блогов. Но надо концентрировать сови усилия. IDEC - имеет прекрасный
формат для такого. Буду периодически высказываться на разные
темы. Что-то вроде текствого радио. Ну, просто потому, что надо что-то
делать!

До связи!

[>] Создание контейнера в STEAD3
std.prog
Peter(harbor:club.syscall.ru) — All
2017-04-10 11:36:40


Класс объектов

Конструкторы объектов широко использовались в STEAD2. В STEAD3 obj/dlg/room реализованы как классы объектов. Класс объектов удобно создавать для тех случаев, когда поведение создаваемого объекта не укладывается в стандартные объекты obj/room/dlg и вы хотите поменять методы класса. Изменив метод класса, например, вы можете вообще изменить то, как выглядит предмет в сцене. В качестве примера, рассмотрим создание класса "контейнер". Контейнер может хранить в себе другие объекты, быть закрытым и открытым.

-- create own class container
cont = std.class({ -- создаем класс cont
    display = function(s) -- переопределяем метод показа предмета
	local d = std.obj.display(s)
	if s:closed() or #s.obj == 0 then
	    return d
	end
	local c = s.cont or 'Внутри: ' -- описатель содержимого
	local empty = true
	for i = 1, #s.obj do
	    local o = s.obj[i]
	    if o:visible() then
		empty = false
		if i > 1 then c = c .. ', ' end
		c = c..'{'..std.nameof(o)..'|'..std.dispof(o)..'}'
	    end
	end
	if empty then
	    return d
	end
	c = c .. '.'
	return std.par(std.space_delim, d, c)
    end;
}, std.obj) -- мы наследуемся от стандартного объекта

После этого, вы можете создавать контейнеры так:

cont {
    nam = 'ящик';
    dsc = [[Тут есть {ящик}.]];
    cont = 'В ящике: ';
}: with {
    'яблоко', 'груша';
}

Когда контейнер будет открыт, вы увидите описание ящика, а также содержимое ящика в виде строки ссылок: В ящике: яблоко, груша. dsc объектов яблоко и груша будут скрыты.

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

[>] Переводы строк в конце dsc/decor и др. методов
std.prog
Peter(syscall,1) — All
2017-05-01 11:31:34


Частый вопрос, это -- как делать переводы строк в конце dsc/decor и прочих методов?
В STEAD3 все начальные и конечные переводы строк (^) -- режутся принудительно. Так как в 99% случаях, наличие дополнительных ^ это ошибка. Например, pn() в конце обработчика. Если вам действительно нужно контролировать вывод настолько глубоко, вы можете:

1) Написать в init() функции std.strip_call = false и тем самым отключить механизм вырезания лишних ^.
2) Использовать подстановки $, например, таким образом:
obj {
   nam = '$',
   act = function(s, w)
      return w
   end,
}

obj {
    nam = 'a';
    dsc = '- 1{$|^}';
}

obj {
    nam = 'b';
    dsc = '- 2{$|^}';
}

obj {
    nam = 'c';
    dsc = '- 3{$|^}';
}

room {
   nam = 'main';
   obj = { 'a', 'b', 'c' };
}

[>] Ссылка на FAQ
std.prog
Peter(syscall,1) — All
2017-05-01 11:34:20


Ссылка на постоянно растущий FAQ будет здесь: http://club.syscall.ru/_faq
Я буду добавлять в него интересные сообщения.

[>] Re: Работа с глобальными переменными
std.prog
Peter(syscall,1) — Wol4ik
2017-07-05 05:54:05


Из документации:

Основное отличие атрибутов от обработчиков событий состоит в том, что обработчики событий могут менять состояние игрового мира, а атрибуты нет. Поэтому, если вы оформляете атрибут (например, 'dsc') в виде функции, помните, что задача атрибута это возврат значения, а не изменение состояния игры! Дело в том, что движок обращается к атрибутам в те моменты времени, которые обычно четко не определены, и не связаны явно с какими-то игровыми процессами!

Если при входе в комнату нужно выполнить какой-то код, оформи его в виде enter или onenter обработчика.

room {
    onenter = function()
        A = 10
    end;
    dsc = ....
}

[>] Re: Работа с глобальными переменными
std.prog
Peter(syscall,1) — Peter
2017-07-05 05:56:20


В документации эти обработчики описаны тут: https://github.com/instead-hub/instead/blob/master/doc/stead3.md#Переходы-между-сценами

[>] INSTEAD 3.1.0
std.english
Peter(syscall,1) — All
2017-08-20 10:44:07


Hi all! INSTEAD 3.1.0 is out. Bug fixes, new features and… The new html5 port INSTEAD-EM (emscripten build) is available as the official new port of INSTEAD! You can run any game from our repository here: http://instead-games.ru/em.php.

Changes of 3.1.0:

* emscripten port;
* fix div by zero in rnd;
* fix in loadmod (from gamefile);
* fix in path (.walk as function);
* fixes in doc;
* code cleanups (compilation warnings);
* instead.noise1/2/3/4 (Perlin Noise);
* pixels: scale()/rotate().

Binary builds will be available as soon as they are ready.

[>] ## std.game@Инстедоз 5 ##
std.game
Peter(syscall,11) — All
2017-04-14 09:12:22


Итак, готовится к выпуску инстедоз 5 -- сборник игр на stead3.
Выпуск сборника назначен на 16 апреля, но, вероятно, сроки будут немного сдвинуты.
Постоянно обновляемая версия сборника тут: http://instead-games.ru/game.php?ID=252
Можно играть онлайн. :) (Спасибо technix)
Еще ждем как минимум 2 игры.

Впечатления, отзывы, мысли -- welcome, Давайте размораживаться. :)

[>] Re: ## std.game@Инстедоз 5 ##
std.game
Peter(syscall,11) — Peter
2017-04-14 10:01:18


От себя напишу.

Очень порадовали игры casper_nn и technix. Это ВЕСНА и ФОТООХОТА.
Но ВЕСНА будет тяжеловата для новичков. Очень рекомендую!

Надеюсь, spline и Major тоже порадуют годнотой. :)

[>] Re: ## std.game@Инстедоз 5 ##
std.game
Peter(syscall,11) — Peter
2017-04-14 10:11:44


Обновил версию Инстедоза.
Внесены правки от MaJoR ZolZ -- спасибо!

[>] Re: ## std.game@Квантовый Кот ##
std.game
Peter(syscall,11) — Ромеро
2017-04-15 06:54:02


Ромеро> стоп, это вообще не та игра :) а где там лифт был? или я прошлый раз не ту игру запустил.

Даже страшно представить, что же ты запустил.
Сама игра про кота тут: http://instead-games.ru/download/instead-cat-1.6.zip

Кстати, когда я делал ИНСТЕД, я как раз вдохновлялся и Lucas Arts играми, которые мы все очень любили.

Есть статья об истории создании, могу показать если интересно. :)

[>] Plan9 и ACME -- бескомпромиссная простота
std.hugeping
Peter(syscall,1) — All
2020-04-21 15:10:27


Вот манит меня plan9... Уже несколько раз ставил его в VirtualBox и
просто смотрел. Последний раз даже собрал golang.

Так вот, интерес мой заключается не в том, что у plan9 интересная и
чистая идея (тут можно смутно вспомнить про UTF-8, /proc, p9fs и
что-то там ещё), а в том, что plan9 даёт совершенно выносящий по
началу опыт.

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

А ещё, там есть такой редактор как acme. В нём нет подсветки
синтаксиса, по исходному коду нельзя двигаться клавишами курсора
(только в пределах строки можно). В нём практически нет кейбиндингов,
без мышки работать невозможно. А текст может быть как текстом, так
пунктом меню или просто командой shell... Так вот, в этом редакторе
люди работали совершенно спокойно. Может быть, что и Rob Pike писал
golang в нём? https://usesthis.com/interviews/rob.pike/

Тут интересная аналогия с велосипедами, бритвами... да чем угодно!
Скажи вот кому угодно -- ты готов писать в редакторе, в котором нет
подсветки синтаксиса?

Q: Is there syntax highlighting?

A: No. The creator of main users of Acme find syntax highlighting
unhelpful and distracting.

Не знаю. Пока мой опыт говорит о том, что привыкнуть можно к чему
угодно. А раз так, то почему бы не предпочесть простоту?

http://fqa.9front.org/dash1.nothinkpad.pdf

[>] Карантинное
std.hugeping
Peter(syscall,1) — All
2020-04-23 14:04:30


Шутки шутками, но карантин реально показывает, кто на самом деле
интроверт, а кто -- прикидывался. Я, кстати, прикидывался. Только
наоборот.

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

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

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

Ну и политические. Бедняги, чем они живут? Страшно представить.

Кстати, в плане новостей старался всегда читать разное: rbc, ria, meduza,
gazeta. Считал что так манипуляции заметней. Как только начинаешь
регулярно читать один ресурс (к примеру - медузу) - всё, жёсткое
ощущение промывки мозгов.

А в последнее время стал в eww смотреть https://www.interfax.ru --
страница достаточно простая, и новости не так жёлто подаются. В общем,
нормальные новости без желтизны и истерик.

Блог постепенно учит писать без явного барьера "я - они". А, похоже,
именно этого мне сейчас и не хватает.

[>] Что такое инстед?
std.tech
Peter(syscall,11) — All
2017-04-15 08:43:42


Так как часто возникают вопросы, а что такое собственно INSTEAD, выкладываю подборку *исторических* статей:

Как все начиналось: http://instead.syscall.ru/ru/2010/05/09/history/
Обзор INSTEAD 1.2.0: http://instead.syscall.ru/ru//2010/09/12/instead-1-2-0-review/
Ответ на одно письмо: https://instead.syscall.ru/wiki/ru/gamedev/quickstart
Что такое метапарсер?: https://instead.syscall.ru/wiki/ru/gamedev/modules/metaparser/article
Выпуски printed: http://printed.syscall.ru/

Напомню, что скоро грядет INSTEAD 3 - который по большей части переписан.
Про STEAD3 мы записали подкаст: http://instead.syscall.ru/podcasts/podcast_05.ogg
Другие подкасты тут: http://instead.syscall.ru/ru/about/

Кому интересно, почитайте. :)

[>] 12 правил для игр-приключений от Рона Гилберта
std.tech
Peter(syscall,11) — All
2017-04-15 18:33:19


А пока вы тут настраиваете idec софт, true-grue перевел статью: 12 правил для игр-приключений от Рона Гилберта

Читать на новом принтеде ;)

http://printed.syscall.ru/post/12-pravil-dlya-igr-priklyuchenij-ot-rona-gilberta

[>] true-grue закончил перевод интересной статьи
std.tech
Peter(syscall,1) — All
2017-04-16 15:56:57


Статья Рона Гилберта.

Рон Ги́лберт — американский разработчик игр, программист и продюсер, работавший над серией квестов компании LucasArts, один из разработчиков игрового движка SCUMM.

http://printed.syscall.ru/post/12-pravil-dlya-igr-priklyuchenij-ot-rona-gilberta

[>] Понимание комикса
std.tech
Peter(syscall,1) — All
2017-04-22 16:12:12


true-grue опубликовал небольшую заметку на полях ПРИНТЕДА:
http://printed.syscall.ru/post/ponimanie-komiksa

[>] INSTEAD 3.0.0
std.tech
Peter(syscall,1) — All
2017-04-23 15:44:05


Привет, друзья! С радость сообщаю о выходе нового INSTEAD 3.0! Этот выпуск готовился целый год, и для него бессмысленно писать список изменений, ведь новое в нем – практически все. В этой версии появился совершенно новый стек STEAD3, который уже успели оценить авторы игр. В нем учтен весь многолетний опыт предыдущего стека, который теперь называется STEAD2, и он также включен в INSTEAD. Так что все старые игры по прежнему работают! Документация по новому стеку написана и включена в релиз. Читайте, пробуйте, творите! Среди других изменений:

- переписана C часть, теперь INSTEAD стал модульным;
- в исходный код включен пример минимального интерпретатора (100 строк);
- графические возможности расширены за счет подсистемы pixels;
- звуковые возможности расширены за счет возможности генерировать звук из кода;
- исправлено множество ошибок.

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

Кроме того, в этот раз одновременно с выходом INSTEAD 3 выходят несколько новых игр, которые написаны с помощью нового движка! Встречайте:

- ПРОВОДНИК: http://instead-games.ru/game.php?ID=247
- ИНСТЕДОЗ 5: http://instead-games.ru/game.php?ID=252
- ИНЖЕНЕР: http://instead-games.ru/game.php?ID=248

И это еще не все! Журнал ПРИНТЕД поменял свой формат, и теперь доступен здесь: http://printed.syscall.ru

Вы думали новости закончились? Нет! Добро пожаловать в только что открывшийся: КЛУБ INSTEAD: http://club.syscall.ru

Спасибо и до новых встреч! :)

[>] Antokolos
std.tech
Peter(syscall,1) — All
2017-04-23 16:44:23


Нам нужен instead-ng 3.0.0! :)

[>] Документация по модулям STEAD3
std.prog
Peter(syscall,1) — All
2017-07-06 14:09:15


Начал писать здесь: https://github.com/gl00my/stead3/blob/master/doc/modules3.md
Можно следить за тем, как она наполняется и задавать вопросы. :)

[>] Re: Динамическое описание сцены
std.prog
Peter(syscall,1) — Wol4ik
2017-07-13 13:10:23


Да, display отвечает за вывод. Но все-таки, я бы не советовал менять его в своей первой игре. Ведь эта логика -- результат мыслей. Там же многие вещи созданы не просто так -- а взаимо-завязаны в плане идейной стройности.

А так, смотри сам. При вставке кода используй 4 символа =, примерно так:

l = std.par(std.scene_delim, reaction or false, av or false, l or false, pv or false) or ’’
заменить на:
l = std.par(std.scene_delim,  l or false, av or false, reaction or false, pv or false) or ’’

[>] Re: Динамическое описание сцены
std.prog
Peter(syscall,1) — Wol4ik
2017-07-13 14:25:13


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

[>] Re: Динамическое описание сцены
std.prog
Peter(syscall,1) — Wol4ik
2017-07-13 16:16:08


Подумай вот о чем.
Мы берем яблоко.
Яблоко пропадает со сцены.
Описание сцены -- ситуация.
В твоем варианте, мы прочитаем сначала описание новой ситуации (без яблока), а только потом, узнаем что мы взяли яблоко.

Типа:

На столе больше нет яблока.
Вы взяли яблоко.

Разве это не настораживает? ;)

[>] Re: ## std.game@Квантовый Кот ##
std.game
Peter(syscall,11) — Ромеро
2017-04-15 07:04:27


Отвечаю про институт

> spoiler!
0K8g0LEg0L3QsNCx0YDQsNC7INGB0LrQvtC70YzQutC+INC00LDQtNGD0YIsINCo0YLRg9C6IDUg0L/QviDQvNC+0LXQvNGDPyDQntC90Lgg0L/QvtC90LDQtNC+0LHRj9GC0YHRjyDRh9GC0L7QsdGLINC/0L7RgdGC0YDQvtC40YLRjCAi0LvQtdGB0YLQvdC40YbRgyI=

[>] ## Солюшены ##
std.game
Peter(syscall,11) — All
2017-04-15 08:30:12


Как то натолкнулся в интернете на пару солюшенов моих игр:

Возвращение Квантового кота: http://dizzy.ucoz.ru/walk/others/Return_of_Quantum_Cat.txt

Особняк: http://dizzy.ucoz.ru/walk/others/Mansion.txt

Спасибо, Dizzy, кто бы ты ни был. :)

Я настоятельно рекомендую прибегать к ним только при крайней необходимости.

[>] ## Тестим игру "Леночка" ##
std.game
Peter(syscall,11) — All
2017-04-15 10:22:18


Субж! Тестить можно в вебе:
http://instead-games.ru/instead-js/#zip:/games/instead-insteadose5-0.28.zip
Игру написала малышка, но там баг на баге... Фиксил как мог, помогайте!
Игра в гите тут: https://github.com/gl00my/stead3/tree/master/tests/insteadose5/games/lenochka

[>] Re: Карантинное
std.hugeping
Peter(syscall,1) — Andrew Lobanov
2020-04-23 16:43:07


> А я вот всё думаю. Например, что в голове у людей, которые ходят погулять. Я и так о людях (в большинстве) хорошо думаю редко, а тут вообще хочется бить людей :(

Когда всё только началось, я думал, что вот сейчас будет жёсткий карантин и более-менее прорвёмся. Но потом стало быстро понятно, что не прокатит. Люди по-прежнему ездят по городу. В магазинах не держат дистанцию. Так что, скорее всего, переболеет большинство. А там -- как повезёт. Это печалит. Особенно, учитывая как испанка протекала.

> Я такого не заметил. Но я не смотрю телевизор, не сижу на форумах и в соц. сетях, не читаю комментарии.

Молодец, а я вот нет-нет да и почитаю что-нибудь эдакое. Надо взять себя в руки.

> Я устал фильтровать это всё и просто прекратил читать новости :)

Я читаю статистику в основном по вирусу.

> Вот спасибо -- попробую. У них есть rss?

Не смотрел, я его в eww откруваю выборочно.

[>] Цифровое рабство
std.hugeping
Peter(syscall,1) — All
2020-04-25 11:12:46


Вчера, после перерыва в несколько лет, снова удалось джейлбрейкнуть
наш старенький Ipad Air 2. Использовал для этого checkra1n.

Как только получил root по ssh, накатила такая технарская
радость. Мол, вот -- наконец-то вернулось устройство ко мне. Ну, с
возвращением. Поставил сразу туда INSTEAD - работает! Хотя последние
годы собирал его вслепую, на какой-то древней виртуалке...

Мне раньше нравилась техника Apple, но золотая клетка все-таки
опротивела. Без джейлбрейка устройство словно бы не принадлежит
тебе. Похоже даже не на аренду, а на предательство,
измену. Противно. Чтобы разрабатывать своё ПО и ставить его на свой же
аппарат я должен иметь лицензию! Такое безумие поддерживать не
хочется.

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

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

Ко всему этому, недавно я стал понимать тех, кто заклеивает камеры на
ноутбуках изолентой. Раньше это казалось проявлением чудачества. Да и
скрывать мне нечего. Смотрите, пожалуйста! Но когда однажды в Lenovo
ThinkPad включился огонёк камеры (камера была заблокирована в BIOS) --
я рефлекторно закрыл её большим пальцем. Несколько дней я не мог найти
себе места, пытаясь объяснить как это возможно. К счастью, скоро
камера перестала работать -- usb кабель начал отходить где-то
внутри. Я вздохнул с облегчением - отходящий кабель мог быть причиной
внезапного включения камеры. Но осадочек то -- остался!

[>] Личное и общее на примере конфликта в проекте Void Linux
std.hugeping
Peter(syscall,1) — All
2020-04-27 07:53:16


Прочитал очередную новость о конфликте основателя проекта с сообществом
разработчика.
https://www.opennet.ru/opennews/art.shtml?num=52809
Основатель Void Linux покидает проект.

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

Почему так? Наверное, потому что я (как мне кажется) прекрасно понимаю
ситуацию. Творческая работа, все-таки, это часто работа одиночки. Дело
в том, что творчество похоже на любовь, и воспринимается как нечто
личное. Это не производство и не коллективный разум и не сделка с
компромиссом. Поэтому (как мне кажется) выдающиеся вещи всегда имеют
свой ярко выраженный характер.

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

Правда, и здесь есть диалектика. Творец один часто неспособен сделать
что-то сложное, ему нужна помощь. Сообщество, как коллектив
единомышленников нужно, чтобы развивать проект. Но только вот
единомышленники -- это друзья. Часто мы видим сообщества друзей?
Очень редко.

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

Конфликт общества и "гения" не заключается лишь в "непонятости".
Он заключается в конфликте общего и личного. Конфликте между
целесообразностью и красотой (которую прибором не измерить).

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

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

"Давай, Хуан! Покажи им! Уделай их всех!".

[>] Re: Динамическое описание сцены
std.prog
Peter(syscall,1) — Peter
2017-07-13 16:21:35


Еще пример. Допустим, есть волк. С методом life. Он убивает гг. При этом идет переход на сцену конец игры.

И вот мы видим:

Конец игры.
Волк бросается на вас.

Вместо: Волк бросается на вас.
Конец игры.

Таких примеров можно еще привести. Вот попытался пояснить мысль. :)

[>] Re: Динамическое описание сцены
std.prog
Peter(syscall,1) — Peter
2017-07-13 16:29:45


Ну и для полноты картины. При входе в комнату вызывается событие onenter. Пусть в нем будет что то вроде: мы вошли в зал.

В твоем варианте будет:

Вы оказались в большом зале!
Вы вошли в зал.

Ты все еще думаешь, что смена display хорошая идея? :)

Дисплей можно менять, но тогда надо менять подход везде. Например, делать ленту вывода (как в мп) или что то еще.

[>] Вопросы генерации сюжета машиной
std.tech
Peter(syscall,1) — All
2017-05-10 13:48:33


При обсуждении идей игр на INSTEAD, часто затрагиваются вопросы вариативности/свободы в подобных играх. В том плане, что если запрограммировать NPC, дать больше свободы игроку, то может получиться что-то интересное... На мой взгляд эти вопросы тесно связаны с более общим вопросом: принципиальной возможности машинного творчества (возможности создания такой иллюзии). Решил описать некоторые мысленные эксперименты, о которых думал раньше. :)

Преамбула. Вероятно, люди ищут разное от игр/книг. Я понял, что часто идет подмена понятий о ценности произведения. В качестве примера приведу шахматы. Сами по себе шахматы это просто игра. Это не произведение. Это свод правил, которые можно оценивать рационально-логически, но сами эти правила не влияют на внутренний мир человека. Но когда люди играют в шахматы -- возникает "диалог" между игроками -- они общаются на языке шахмат. И в каком то смысле, идет воздействие игроков друг на друга.

Так вот, мне не интересны шахматы сами по себе, мне всегда интересен сам диалог. В книге и в классическом квесте - это диалог с автором. Даже если он кому-то не заметен, он есть. Поэтому в данном тексте, я рассматриваю возможность симулировать творчество машиной. Можно ли написать такую игру, в которую даже самому автору будет интересно играть, но это будут не шахматы (не просто свод правил)?

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

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

Я могу написать формулу фрактала, и программа нарисует мне картинку. Но я уже нарисовал ее, введя формулу фрактала. Я просто получаю то, что ожидал увидеть (как автор программы). Это не творчество. Хотя тут есть возможнось использования компьютера, как инструмента для творчества. Но это несколько другая тема.

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

Итак, размер холста: 1x1. Хорошая новость: программа способна нарисовать все возможные картины и таковых картин будет две. Черная точка и белая точка. Правда, сказать что такая картина "красива" или нет мы не очень то можем -- обе слишком примитивны. С другой стороны, просто точка -- это тоже концептуально. А отсутствие точки, можно сказать -- отсутствие картины. :) Итого -- из 2х картин одна может считаться "нормальной".

Хорошо, перейдем на 2x2. Тут будет уже 16 картин. Часть из которых, условно интересные. Например, "уголок", диагональ, квадрат. Часть картин повторяют друг друга -- просто они симметрично отражены, например. Или повернуты.

Повышая размер холста, скажем, до 8x8 -- мы можем сказать, что программа способна создать все возможные картины на этом холсте, простым перебором. Таких "картин" будет 2 ^ 64.

8x8 это уже тот размер, в котором будут прикольные монохромные иконки, и, скажем, полный алфавит русских букв. :) Да вообще, много чего там будет! Все, что сможем уместить в 8x8.

Но мы замечаем, что с ростом размера холста, доля "интересных" картин сокращается. Если на холсте 2x2 мы сразу можем выбрать "интересные" нано-картинки, то на холсте 8x8 нам и жизни не хватит, чтобы выбрать "интересные" вещи. Кроме того, сам перебор на больших холстах, также начинает съедать время и объем диска (на хранение картинок).

Можно пойти дальше, и сказать, что для заполнения крупных холстов, мы используем датчик случайных чисел. А для оценки "качества" картинки -- придется написать "функцию красоты".

"Функция красоты" -- такая функция, которая отбраковывает плохие, неинтересные картинки, и оставляет хорошие, создавая иллюзию творчества. Очевидно, что функция красоты должна быть антропной -- то-есть в ней должны быть заложены функции субъекта и понятия о красоте.

Интересно, что на маленьких разрешениях функция красоты может быть довольно простой, и придерживаться простых правил: например, учитывать симметрию, пропорции, целостность изображения. Возможно, искать принципы само-подобия. Но с ростом степеней свободы, функция красоты начинает стремительно приобретать качества человека, по сути вырождаясь в ИИ. :)

Когда мы переходим на уровень изображений, которые действительно способны стать искусством (изображение 128x128 хотя бы) и воздействовать на нас, мы сталкиваемся с тем, что функция качества, превращается в нас самих.

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

Конечно, все что я написал -- самоочевидные вещи, я решил написать эти соображения чтобы показать следующее:

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

Простите за словоблудие. :)

[>] Re: Динамическое описание сцены
std.prog
Peter(syscall,1) — Peter
2017-07-13 16:36:09


То есть, логика стандартного поведения:
Что ты сделал -> что получилось

Если нужна другая логика, надо ее сначала продумать. Просто смена вывода не поможет. Нужна концепция. В самом твоем вопросе есть подмена. Реакция не добавляется. Каждый новый экран -- это абсолютно новый такт времени.

[>] Re: Динамическое описание сцены
std.prog
Peter(syscall,1) — Peter
2017-07-13 16:46:01


В качестве компромиссного решения можно назвать такое.
dsc
Реакция
decor/объекты

Такое поведение было в stead2. Оно имеет противоречия, но если условиться что dsc не меняется, можно его сделать. Если это нужно, могу помочь. Надо look вызов в display разбить на два.

[>] Re: Работа с об'ектами в сценах, в которые возможно многократное возвращение игрока
std.prog
Peter(syscall,1) — Wol4ik
2017-07-14 13:43:35


Конечно можно. Если я правильно понял вопрос.
Ты можешь класть/убирать любые объекты из/в любые другие объекты/комнаты просто кодом.
Если нужно это, то смотри "Другие функции стандартной библиотеки" и там тебе: place() например.
Ну или на примере кода задай вопрос, чтоб конкретней ответить.
Еще можно явно манипулировать списками obj и way: описано в "Атрибуты-списки". Например objs "лес":zap() -- убил все объекты

[>] Re: Работа с об'ектами в сценах, в которые возможно многократное возвращение игрока
std.prog
Peter(syscall,1) — Peter
2017-07-14 13:44:47


Ну а делать это можно, например, в onenter/enter/exit/onexit.
Код игры на stead3 -- это проводник и инстедоз 5. Можешь для примера изучать эти игры.

[>] Re: ## Солюшены ##
std.game
Peter(syscall,11) — Ромеро
2017-04-15 19:24:34


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

[>] Re: Цифровое рабство
std.hugeping
Peter(syscall,1) — btimofeev
2020-04-28 20:24:26


> думается мне что в гугл сервисах есть алгоритм специального устаревания телефонов)

Да, на 3й год начал (как и все предыдущие!) тупить на ровном месте. Может и правда, рискнуть. :)

[>] Re: ## Тестим игру "Леночка" ##
std.game
Peter(syscall,11) — Ромеро
2017-04-15 19:26:30


Леночка, как и весь инстедоз, будет работать только на не вышедшем еще instead3.
instead3 -- только из гита брать: https://github.com/instead-hub/instead
Или отсюда: http://instead.syscall.ru/instead/2.5.0/
Или онлайн играть.
Релиз 3.0 запланирован на след неделе.

[>] Re: Вопросы генерации сюжета машиной
std.tech
Peter(syscall,1) — XSet
2017-05-10 14:38:46


XSet> Да всё правильно написали, это очень сложная или скорее объемная задача. Поэтому не надо пытаться генерировать литературу машиной, надо поверх некого общего сюжета и продуманных персонажей впихнуть хорошую вариативность, которая таки будет сильно ограничена степенями свободы сюжета и прочих вещей. Такой подход уже опробован в различных играх и он оправдывает себя.

Вопрос в том, чего хочется от игры/книги. Например.

Есть просто литература. Есть книги-игры. (Фактически -- литература, написанная так, чтобы она могла склеиваться из кусочков)
Я никогда не променяю хорошую книгу -- на книгу-игру. Это абсолютно разное воздействие и разные жанры.

Так что, вероятно, то, что для тебя недостаток -- для меня достоинство. Мне нравятся рельсы в квестах. :) Да, это одноразовые игры. Как и одноразовые книги :) Хотя, хорошие книги можно перечитывать. Отсутутвие рельс переводит игру в другой жанр, который мне уже не так интересен.Это детали, которые никак не углубляют само произведение. Мне интересны загадки в том виде, в каком их придумал автор. Мне нравится что сюжет конкретен как в книге... Когда я пробую песочницу на прочность, все-таки, это уже нечто другое. Фактически, это становится игрой -- исследуй законы, которые создал автор. Это тоже интересная игра, конечно, но это ближе к стратегии. К шахматам. Некий другой жанр.

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

Так что я точно не против таких экспериментов, я просто хочу сказать, что это не сильно влияет на содержательную часть истории.

Но повторюсь, пишу просто в рамках обмена мнением. Не более.

[>] Re: Вопросы генерации сюжета машиной
std.tech
Peter(syscall,1) — XSet
2017-05-10 14:38:46


XSet> Хотя вы так смачно описали генерацию сюжета, что и это интересно было бы попробовать. Я бы не сказал, что существующие в репозитории игры (кроме портированных) сильно разнообразны сюжетами.

Ну, пиши, посмотрим что выйдет. :)

[>] Re: Вопросы генерации сюжета машиной
std.tech
Peter(syscall,1) — XSet
2017-05-10 15:46:36


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

XSet> А я думаю у неё такой функции и нет, чтобы улучшать сюжет и литературность или что то делать с рельсами, я думаю это просто другой жанр.

Согласен. Можно так сказать. Вот, кстати, еще пример: http://www.storyteller-game.com/

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

[>] Re: Чтобы избежать ошибок
std.prog
Peter(syscall,1) — Wol4ik
2017-07-19 12:57:43


Проще, все таки в инстед стиле:

obj {
    nam = 'домик';
    burned = false;
    dsc = function(s)
         if s.burned then
             p [[Вы видите, как дымится {дом}.]]
             return
         end
         p [[Вы видите уютный {домик}.]]
    end
}

Ну и все. Теперь в комнате:

room {
    nam = 'Поляна';
    obj = { 'домик' };
}

По-моему, так проще.

[>] Re: Чтобы избежать ошибок
std.prog
Peter(syscall,1) — Wol4ik
2017-07-19 17:17:49


> Аааа. Прошу прощеня, забыл очевидную вещь)))) если убрать return, но отобразятся сразу оба состояния. А return вернет нас просто в room, где об'ект фигурирует.
Дело в том, что есть такое понятие как метод,
Вот dsc - это метод. Когда движку нужно описание, он вызывает метод dsc у всех объектов комнаты. return тут это не возврат в комнату, а выход из функции. Например (это не инстед, просто lua):

function test()
   return 10
end
print(test()) -- выведет 10

function test2()
   return
end
print() -- выведет пустоту


А в инстеде p -- это просто накопление текста, например:

p "hello"

это то же самое, что return "hello"

Или так:

p "hello"
p "world"

то же самое, что и return "hello world"

Теперь про пример:

if s.burned then
   p "сгорел"
end
p "не сгорел"

будет "сгорел не сгорел"

а так:

if s.burned then
   p "сгорел"
   return  -- мы вышли из функции
end
p "не сгорел"

только одно состояние

Еще вариант:

if s.burned then
   p "сгорел"
else
   p "не сгорел"
end

Надеюсь, помог.

[>] Lytdybr (писатель Геннадий Алексеев)
std.hugeping
Peter(syscall,1) — All
2020-05-04 08:24:57


Не пишу, так как занят игрой. Год не писал, а сейчас вспомнил, как это
все-таки здорово! Ещё один сюжет, мир в голове. Эти вымышленные миры
меняют меня, да и лечат. Особенно сейчас это стало заметно. Может
быть, после выпуска игры напишу статью. Так как сюжет удивительным
образом трансформировался прямо на глазах.

По наводке жены натолкнулся на интересного писателя, Геннадия
Алексеева. Почитали вчера немного:

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

Посмотрел, есть дневники у него. Думаю -- почитаю! Но снова встал
интересный вопрос, нормально ли читать дневники ушедших людей?
Затолкал вопрос подальше и открыл книгу в emacs fb2 (оказывается, это
совсем просто!), поискал в тексте слова: Христос, Бог. Выборочно
прочитал.

Как и в случае с дневниками Тарковского, увидел поиск.

> Служить добру или стать над добром и злом?
> Христианство и проблема добра и зла.
> Апокалипсис – торжество зла, но после вечное царство добра.
> Добро как символ жизни и зло – как смерть.
> Добро – условие существования человечества.
> Абсолютность добра и зла. Где критерий абсолютности?

Или вот:

> Толстовское богоискательство мне понятно.
> Толстовское «опрощенство» мне претит. Опроститься нельзя.
> Если уж ты не прост, простым не станешь.
> И это тоже от Бога – быть сложным. Надо иметь мужество и силы,
> чтобы нести этот крест.

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

> Мой пессимизм от атеизма. Но – атеизм мой от пессимизма.
> Печалюсь я оттого, что мир плох. Печалюсь и оттого, что нет мне
> места в этом плохом мире.

А потом:

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

Может быть, почитаю полностью, но пока не решил. Иногда кажется, что
какой смысл повторять это всё? Но такие "знакомства" всегда радуют.

P.S. Кто-то написал отзыв на Вахту. Ну и на Лидию, за одно! Спасибо
тебе, добрый человек, за поддержку. :)

[>] Re: Lytdybr (дополнение о рефлексии)
std.hugeping
Peter(syscall,1) — Peter
2020-05-04 08:38:53


Решил немного дополнить прошлый пост.

Что касается игр. Я раньше как-то всё думал: а что я написал? А какой
посыл у игры? А вдруг, она жестокая? Особенно с Особняком, ага...
И всё такое прочее...

Сейчас я просто плюнул. Может быть, это неправильно. Но по другому, не
работает... Себя не обманешь. Кто я, какие мои игры, что я сделал
хорошего, а что плохого? Откровенно говоря, я не могу этого
знать. (Хотя, про плохое -- попроще.) Так что с определённого момента
я просто начал делать то, что делаю. И будь, что будет. Конечно, я не
только про игры сейчас говорю.

Знаю людей, у которых рассудок совпадает с желаниями. И нет такого:
"Доброго, которого хочу, не делаю, а злое, которого не хочу,
делаю.". Но у меня эта проблема стояла всегда.

[>] Из интервью с Робом Пайком
std.hugeping
Peter(syscall,1) — All
2020-05-04 11:39:47


https://evrone.com/rob-pike-interview

> Evrone: Imagine that you have an opportunity to travel back in time
> and give only one piece of advice to your younger self, at around the
> time you’ve started to design the Go language spec.
> What advice would you give to yourself and your colleagues?

> Rob: That's easy: Ignore the haters. Just listen to the voices that understand
> and share your goals; they're the ones to care about. Not everyone agrees
> with what you're doing, and that's OK. But those who engage in advancing what
> you're trying to do can be a fantastic source of ideas, energy, and inspiration.

> We will always be thankful to our passionate community.

Отличный совет :)

[>] Тишина
std.hugeping
Peter(syscall,1) — All
2020-05-08 18:31:05


"Сдал" игру. Вроде бы прошло в этот раз нормально. Многим понравилось. Хотя, конечно, игра коротковата. Но и в таком объёме я её еле потянул. Конечно, музыка сильно улучшает общее впечатление, поэтому можно сказать, что игра написана в соавторстве. А ещё точнее, я просто дал повод написать Саше музыку. :) Это здорово.

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

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

В общем, надо искать тишину. И пусть всё идёт своим чередом.

[>] Re: ## std.game@Квантовый Кот ##
std.game
Peter(syscall,11) — Ромеро
2017-04-15 19:46:39


> кто эти люди, зачем они здесь, и зачем я вообще за Барсиком туда попёрся?

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

[>] Re: ## Тестим игру "Леночка" ##
std.game
Peter(syscall,11) — Ромеро
2017-04-15 19:50:12


> Вот полила я цветы, один раз второй десятый, и каждый раз мне привидивается Генерал, который когда-то просил кофе.
Мне сложно что то сказать. Игра-- странная. Ее написала девушка без опыта программирования, так что я ее еще допиливал.
Обезбажить бы ее хотя бы. :) Честно, не знаю что сказать. Я наверное когда играл - 1 раз полил.
Там можно много раз это делать?

Pages: 1 2 3 4 5 6 7 8 9 10 11 ... 17