Привет, Хабр.
Постараюсь описать наш опыт и к чему мы пришли работая над игрой на ECS. Код приведен для LeoEcs Lite, но сами мысли очень общие. Буду рад критике и вашим мыслям.
Разработка игр
Привет, Хабр.
Постараюсь описать наш опыт и к чему мы пришли работая над игрой на ECS. Код приведен для LeoEcs Lite, но сами мысли очень общие. Буду рад критике и вашим мыслям.
Dishonored меня всегда впечатляла не только своим игровым процессом, но и планировкой уровней, архитектурой мира. Впечатляло всегда и множество интересных задач, сцен в игре, которых встречается, действительно, много. Ради интереса решил перепройти игру и посмотреть на неё свежим взглядом, посмотреть на нее с точки зрения дизайна уровней. Посмотрим, что интересного смог раздобыть.
С момента своего появления в 1986 году франшиза The Legend of Zelda покорила игроков по всему миру захватывающим геймплеем, богатым сюжетом и персонажами. Эта серия, разработанная компанией Nintendo, стала вечной классикой в мире видеоигр.
Главная героиня игры Зельда названа в честь жены писателя Скотта Фицджеральда. Актёр Робин Уильямс назвал свою дочь Зельдой уже в честь героини игры. А вот сама принцесса Зельда появляется далеко не в каждой игре!
12 мая 2023 года вышла новая The Legend of Zelda: Tears of the Kingdom. В честь ее выхода вспомним историю создания серии, расскажем необычные факты и узнаем, что именно привело ее к успеху.
Привет! Я Андрей, предприниматель, опытный инвестор и, с недавних пор, Web3 разраб. И я ловлю дикий батхерт с заявлений о том, что гиганты игровой индустрии типа Blizzard или EA могут легко залететь в GameFi и сделать нормальную Web3 игру, которая всем понравится и всех заонбордит. Рассказываю, почему успешной Диаблы с прикрученным блокчейном никогда не будет, и почему будущее индустрии за инди-студиями.
Думаю, каждый из вас хоть раз слышал о такой игре как Roblox, и о таком языке программирования как Scratch. Это две гениальные вещи. Roblox - платформа для игр, в которой на простом языке программирования Lua, а так же при помощи, можно сказать, конструктора - открывается возможность создания множества игр. Scratch - язык программирования, в котором разберется, думаю, даже шестилетний ребёнок. Ведь всё просто - слева у тебя есть блоки, слаживая их можно получить какую то игру.
Но у них есть недостаток. В Roblox, как выше сказано, используется Lua - хоть и простой (по сложности сравнимый с Python), но тем не менее текстовый ЯП. Много текста - сложно. Такое типичное представление о программировании часто отталкивает среднестатистического человека от его изучения, ведь прийдется что-то учить, запоминать, а иногда просто хочется взять и сделать, сильно не напрягаясь. А Scratch - простой, но довольно бесполезный. Ты можешь создать свою игру, да и опубликовать в принципе тоже - просто зайдя на их сайт. Но вряд ли это станет чем-то популярным. Вспомните, когда вы последний раз играли в какие то игры на Scratch, если вообще играли.
Но что будет если объединить эти две вещи во что-то одно? Так и появилась идея создания Creative+ в Minecraft, блочного языка программирования для создания своих игр и их публикации прямо на сервере.
Сложности моддинга, обзор движка игры и приемы геймдизайна. Какие проблемы были решены для RTS игры и её сообщества.
В процессе разработки разработчик часто реализовывает функционал, который кажется ему логичным даже не задумываясь как этот архитектурный стиль называется. При этом читая про паттерны и шаблоны проектирования архитектуры в научной литературе информация может показаться сложной, а названия трудно запоминающиеся.
В этой статье я без привязки к коду объясню простым языком и в картинках как можно применять в разработке архитектуры авторитарного сервера для онлайн игр шаблон проектирования Event-driven.
Компьютерные игры Японии — это всегда особый мир, который населяют монстры и киллеры, зомби и охотники.
Кто из мальчишек в детстве (вне зависимости от страны проживания) не мечтал об игровой приставке SEGA или Nintendo? Кто не мечтал «порубиться» после школы, уничтожив максимальное число злодеев?
Одним из столпов этого выстроенного виртуального пространства считается Хидэо Кодзима.
Чуть больше чем пол года назад я уже писал статью о выпуске альфа версии инструмента DeckBuilder для игры Tabletop Simulator (TTS) и вот уже сейчас я готов представить первую версию приложения, в котором реализован полный цикл: от создания и описания карт, до замены локальных изображений ссылками файлового хранилища. В данной статье я бы хотел поделиться изменениями, которые произошли с момента написания предыдущей статьи.
Я занимаюсь разработкой игр уже много лет, и ввиду того, что я трудоголик, обожающий свою работу, и могу заниматься работой по 16+ часов в сутки, то и с выгоранием я очень хорошо знаком. На моей памяти десятки выгораний различной тяжести и продолжительности. И в этой статье, я хотел бы рассказать о пути, который прошел: от непонимания, почему я не могу сконцентрироваться хоть на чем-то, до полного контроля над своим состоянием. О том, как я исследовал проблему, какие приемы использовал, какие помогали и в какой степени, а какие нет. Моя цель - чтобы те, кто сталкивается с выгоранием, прошли этот путь быстрее (либо вообще знали об опасности наперед). Осознали серьезность ситуации и взяли ее под контроль.
Графы — это не только математический объект, но и важный инструмент программистов. Они используются в играх, визуализации данных, социальных сетях и других серьезных проектах. Если вы не знаете, как работать с графами, то вы не программист. Конкретно раскладка графа в плоскости — задача не тривиальная. Но что делать, если вы хотите решить эту задачу легковесно и быстро?
Когда я начал работать над своим пет-проектом TESTAMENT, мне нужно было генерировать и отображать произвольные графы. Я хотел, чтобы локации были в виде простых шагов-событий, соединенных между собой. Примерами могут послужить проекты Slay The Spire, Cult of the Lamb, Darkest Dungeon и другие. Исследовав вопрос, я увидел, что существующие библиотеки слишком тяжелые и сложные для моих нужд.
В статье описал разработку 13-ти игр на PixiJS
. Около 70% текста - это описание механики игр, остальное - реализация на PixiJS
. Получилось много текста, т.к. описывать советы для PixiJS
интереснее с примером из игр.
Самая последняя игра будет самой сложной и интересной.
В конце 2022 года открытый игровой движок Героев Меча и Магии 2 (fheroes2) добрался до заветной 1.0 версии. Несколько лет назад на Habr уже была новость о движке, когда текущие разработчики только-только взялись за него. Возможно, кому-то было бы интересно узнать о прогрессе и планах проекта на будущее.
В данной статье речь пойдет о взаимодействии WebSocket сервера и сервера рассчитывающего события в мультиплеерных играх (команды пользователей, игровую физику, алгоритмический искусственный интеллект и т.п.).
Будет затронута тема очередей, асинхронного логирования, параллельного программирования на CPU и использования каналов (сhannel) для взаимодействия между процессами (thread - ветками) на языке программирования PHP (аналогичный функционал есть в языке GO).
Вот уже прошла неделя с момента публикации моей игры, и я получил 7 500+ установок за первые семь дней. Ранее я не публиковал игры, так что это мой первый опыт в качестве разработчика игр, хоть и только одной. Но, как говорят, с чего-то нужно начинать. Все началось с того, что я стал активно использовать Chat GPT в своей работе веб-разработчика, в частности, для создания простых функций, таких как генерация паролей и других подобных задач. У меня сложилось некоторое впечатление о работе с Chat GPT. Я лично считаю, что это эффективный инструмент для уже известных практик и методов программирования, но не для генерации чего-то нового, как все говорят. Поэтому я был настроен скептически относительно полной замены разработчика. Тем не менее, я решил попробовать и передать проект нейросети.
Из новостей: Photon Quantum теперь бесплатен во время разработки, Fyrox Engine 0.30, тех. подробности Nau Engine, Apple упростила портирование Windows-игр на macOS — на Mac запустили Cyberpunk 2077 и «Ведьмака 3».
Из интересностей: жизнь и карьера Американа МакГи, разбор уровня Bioshock Infinite, воспоминания и уроки по разработке Baldur’s Gate 2: Shadows of Amn и Throne of Bhaal, анимация сборки набора LEGO в Blender, за кулисами LURE.
Почти год назад я рассказывал о платформе HighLoad.Fun, где можно посоревноваться в оптимизации кода, но не упомянул Bot-Games.Fun - платформу, где нужно написать своего AI бота для участия в играх. Основное отличие от других аналогичных платформ - код бота не надо загружать на сервер, его нужно запускать на своём железе, что открывает широчайшие возможности по используемым технологиям и затраченным ресурсам на просчёт следующего хода. А ещё все игры с открытым кодом, можно влиять на правила, улучшать плеер, воспроизводящий игры, можно довольно просто написать свою игру, как это сделать расскажу под катом, а заодно и про архитектуру проекта.
В этой серии статей речь пойдет о том что такое PING и какими приемами можно сгладить задержку пересылки пакетов при его низком значении в realtime онлайн играх с примерами кода на C# в игровом движке Unity для игр на ПК, мобильных устройствах и браузерных игр WebGL.
Статья включает в себя видео примеры, демонстрации кода и алгоритм подсчета PING без использований командной строки устройств
Часто встречается мнение, что нарратив в играх - это диалоги, квесты, художественные описания и название персонажей, предметов, регионов... В этой заметке я сделаю попытку продемонстрировать разнообразие инструментария нарративного дизайнера и показать, что в основном это всё не про текст.
Ваш аккаунт