На этой неделе была достигнута еще одна важная веха в области запуска Minecraft неожиданными способами - на этот раз, благодаря проекту CobolCraft с открытым исходным кодом, у нас есть версия сервера Minecraft с большей частью его функциональности, работающая на GnuCOBOL, который является производным от языка кодирования COBOL, разработанного в 1959 году и первоначально стандартизированного в 1968 году до версии x86.
Корни COBOL уходят в финансируемую Министерством обороны попытку создать легко читаемый язык кодирования, оптимизированный для рабочих нагрузок и кроссплатформенной, кросс-архитектурной стабильности и производительности. Новые языки, безусловно, гораздо мощнее и разнообразнее, но обновления COBOL со временем постепенно улучшили современное удобство использования этого устаревшего языка, и CobolCraft подчеркивает, как много всего можно сделать на COBOL.
Наибольший прогресс в современных обновлениях COBOL, вероятно, был достигнут в версии стандарта COBOL 2002 - согласно информации от IBM, эта версия добавляет в язык несколько объектно-ориентированных функций и другие «передовые парадигмы программирования», которые улучшают совместимость с текущим поколением. Этот унаследованный язык программирования до сих пор можно увидеть в современных мэйнфреймах, и он настолько популярен как в частном, так и в государственном секторе, что кодеры на COBOL оставались востребованными на пике волны безработицы 2020 года.
Версия COBOL, используемая CobolCraft, GnuCOBOL, - это версия COBOL, ориентированная на Linux, написанная на языке C (с ответвлением C++) на основе стандарта COBOL 2014. Это означает, что в используемой версии COBOL уже есть все необходимые функции совместимости, что должно помочь CobolCraft без проблем выполнить большинство функций, необходимых для запуска сервера Minecraft.
Согласно официальной странице на GitHub, большинство основных функций «уже работают». К ним относятся бесконечная генерация местности, постоянные данные о мире и игроках, поддержка импорта существующих миров, мультиплеер с 10 игроками, разрушение и размещение блоков, взаимодействие блоков, а также типичные многопользовательские функции, такие как чат, белые списки, консольные команды и отображение пинга/состояния сервера.
В документации CobolCraft отмечается, что «блоки с несколькими состояниями, ориентацией или интерактивные блоки требуют большого количества специализированного кода, чтобы заставить их вести себя правильно», но «некоторые из них поддерживаются».
Наиболее важные интерактивные объекты, такие как факелы, плиты, двери, люки и кровати, полностью функциональны. Однако другие объекты функционируют лишь в ограниченном виде, например неинтерактивные кнопки, а это значит, что самые грандиозные технические достижения в Minecraft с помощью строительства из редстоуна здесь невозможны. Однако это не совсем стандартный геймплей, так что многие игроки смогут получить хороший опыт, не имея возможностей, необходимых для создания функционирующего калькулятора или ПК в Minecraft.
Оригинал
Уникальность