Hacker News Digest

Тег: #postscript

Постов: 2

Reviving Classic Unix Games: A 20-Year Journey Through Software Archaeology (vejeta.com)

За двадцать лет автор провёл цифровую археологию, чтобы возродить классическую Unix-игру Conquer 1987 года. Изначально опубликованная в USENET как "conquest – middle earth multi-player game", эта многопользовательская стратегия в мире Средиземья повлияла на множество последующих игр. В 2006 году автор начал поиск создателей Эдварда Барлоу и Адама Брайанта, чтобы relicensировать код под GPL. Как отметил Барлоу: "copyleft didnt exist when i wrote it and it was all for fun so...".

Поиск авторов напоминал детективную работу - адреса электронной почты 80-х были недоступны, приходилось следовать цифровым следам. После пятилетнего ожидания в 2011 году Брайант сам нашёл статью автора и разрешил распространение кода под GPL. В 2025 году выяснилось, что Брайант создал полную переработку - Conquer Version 5 с расширенными возможностями, которую также согласовал лицензировать под GPL. В истории игры также участвовал MaF, создавший утилиты PostScript для генерации печатных карт.

by mwheeler • 09 ноября 2025 г. в 12:44 • 157 points

ОригиналHN

#unix#gpl#conquer#software-archaeology#usenet#multipayer-games#postscript#bsdgames#ttyd

Комментарии (72)

  • Участники обсуждают исторические текстовые игры (Conquer, Trek, Netrek, Empire) и их сохранение для будущих поколений.
  • Поднимаются вопросы лицензирования и переноса старого кода на современные платформы, включая использование веб-интерфейсов (ttyd) и репозиториев (bsdgames).
  • Автор статьи (vejeta) активно участвует, объясняет сложности сохранения Conquer и делится опытом поиска и реставрации кода.
  • Участники делятся воспоминаниями о старых играх и системах (SunOS, IBM minicomputers, PLATO), а также предлагают идеи для музеев и возрождения "Play-by-Mail" игр с использованием ИИ.

An interactive guide to SVG paths (joshwcomeau.com) 🔥 Горячее

SVG <path>: краткий путеводитель

<path> — единственный способ рисовать сложные фигуры и кривые в SVG. Синтаксис пугает, но разобравшись, становится удобным.

Основы

  • Атрибут d — последовательность команд, как «рецепт» для пера.
  • Каждая команда начинается с буквы и получает координаты как аргументы.
  • Предыдущая точка автоматически становится началом следующей команды.
  • Используйте пробелы и запятые — читаемость важнее байтов.

Команды

  • M x,y — поднять перо и переместиться в точку.
  • L x,y — прямая линия до точки.
  • C x1 y1, x2 y2, x y — кубическая Безье.
  • Q x1 y1, x y — квадратичная Безье.
  • A rx ry x-axis-rotation large-arc-flag sweep-flag x y — дуга эллипса.
  • Z — замкнуть путь к начальной точке.

Относительные координаты

Буквы в нижнем регистре (m, l, c…) двигают перо относительно текущей позиции, а не от начала координат.

Цепочки кривых

Повторяйте команды, чтобы строить сложные формы без лишних M.

Анимации

Изменяя d через CSS или JS, можно плавно морфить фигуры.

Советы

  • Начинайте путь всегда с M.
  • Для читаемости группируйте команды построчно.
  • Проверяйте результат в интерактивном редакторе.

by joshwcomeau • 18 августа 2025 г. в 15:19 • 427 points

ОригиналHN

#svg#path#bezier-curves#css#javascript#graphics#postscript

Комментарии (43)

  • Участники обсуждают интуитивные способы задавать эллиптические дуги без булевых флагов, предлагая параметры вроде углов или контрольной точки.
  • Хвалят интерактивный гайд по SVG-путям, его наглядность и звуковые эффекты.
  • Делятся практическим опытом: динамическая генерация карт в играх, разметка сканов, чтение путей «с нуля».
  • Рекомендуют инструменты для редактирования и генерации SVG: GodSVG, Boxy SVG, онлайн-редактор yqnn.
  • Отмечают связь SVG с PostScript, Logo и даже коническими сечениями; обсуждают GPU-ускорение для кривых Безье и рендеринг шрифтов.