Каталог open-source клонов игр
Open Source Game Clones - каталог репозиториев
Учебные главы раздела (движок, языки, Unity) объясняют принципы. Open Source Game Clones — живой указатель на сотни реальных репозиториев, где энтузиасты воссоздают или переосмысляют известные игры. Сайт ведётся сообществом; исходный список и правила добавления — в репозитории opengaming/osgameclones на GitHub.
Каталог удобен, когда нужен конкретный пример кода под задачу: pathfinding в RTS, сетевой lockstep, UI инвентаря, физика гонок, порт старой adventure на современный движок. Это дополнение к Minecraft и к инструментам в /tools/games, а не замена им.
Как устроен osgameclones.com
Для каждой оригинальной игры перечислены проекты-клоны или ремейки. У записи обычно есть:
| Поле | Что означает |
|---|---|
| type | Clone — своя реализация по мотивам; Remake — часто ближе к оригиналу или порт движка |
| status | Playable, Semi-Playable, Unplayable — насколько проект пригоден для запуска |
| development | Very Active, Sporadic, Halted, Complete — жив ли репозиторий |
| langs | C, C++, C#, JavaScript, Rust и др. — по чему фильтровать при изучении стека |
| frameworks | SDL, Godot, Unity, OpenGL, .NET — связь с видами движков |
| content | Open, Free, Commercial, Swappable — откуда берутся ассеты (важно юридически) |
| licenses | MIT, GPL, Apache и т.д. — можно ли использовать код в своём проекте |
На сайте есть поиск и фильтры; исходные данные каталога лежат в репозитории opengaming/osgameclones (имена файлов со временем меняются — ориентир README репозитория).
:::caution Юридические рамки
Каталог описывает учебные и фанатские проекты. Названия коммерческих игр принадлежат правообладателям. Исходники в репозитории — это чужой код под их лицензией; ассеты с пометкой Commercial нельзя просто перенести в свой релиз. Для портфолио и обучения клонируйте механику и архитектуру; для публикации в store — свой арт, звук и бренд. Подробнее о моддинге и границах — в Minecraft и тестировании.
:::
Что можно делать с каталогом
| Цель | Как использовать каталог |
|---|---|
| Разобрать движок и цикл игры | Выберите жанр, найдите Playable + ваш язык (например C# + Godot). Соберите проект локально, поставьте breakpoint в Update / главном цикле — см. игровой цикл. |
| Изучить AI, pathfinding, сеть | RTS / roguelike / MMO-клоны: ищите multiplayer, C++, активную разработку. Сопоставьте с архитектурой гонок и главой про языки. |
| Вписаться в open source | Фильтр Very Active, откройте Issues / «good first issue» в репозитории. Полезная практика перед командой в студии. |
| Моды и плагины | Смотрите проекты с content: Swappable или отдельные движки вроде ScummVM (много классических adventure) — паттерн «ядро + данные игрока». |
| Новые механики, NPC, транспорт | Найдите клон жанра (симулятор, тактика, аркада) и выпишите 2–3 файла: спавн, FSM, таблица оружия. Переносите идею, не копируйте файлы целиком. |
| Эксперименты с графикой (Unity, RTX, VR) | Фильтр frameworks: Unity или OpenGL / Vulkan; сравните с оптимизацией и платформами 118–122. |
Примеры направлений (отправные точки)
Ниже — иллюстрации типов проектов в каталоге (названия оригиналов — ориентир при поиске на сайте):
| Жанр / тема | Зачем смотреть | Типичный стек в каталоге |
|---|---|---|
| Классические adventure | Скрипты, диалоги, сцены | ScummVM (C++), ремейки на SDL |
| Головоломки (2048, Tetris) | Минимальный game loop, чистая логика | C, JavaScript, Python — быстрый вход после гейм-дизайна |
| RTS / 4X / транспорт | Экономика, карта, AI | C++, C#, иногда Java |
| Шутеры / Quake-линейка | Рендер, сеть, моды | C, OpenGL, GPL-семейство |
| Ретро-консоли | Ограничения железа | Assembly, эмуляторы, порты |
Конкретный репозиторий всегда проверяйте по status и дате коммитов: Halted годами назад всё равно полезен как снимок идеи, но для контрибуции лучше Very Active.
Подборка по стекам
Ниже — стартовые точки под ваш трек в энциклопедии. Статусы (Playable, Very Active) сверяйте на osgameclones.com: каталог обновляется, репозитории иногда замирают. Ссылки ведут на GitHub; на сайте клонов у каждой записи есть кнопка repo.
:::tip Ассеты Часть проектов требует файлы оригинальной игры (особенно RPG и adventure). В README обычно написано, что можно скачать бесплатно, а что нужно купить. Без легальных ассетов сборка может собраться, но мир останется пустым. :::
Unity (редактор Unity, C#)
| Проект | Оригинал | Что разбирать в коде | Каталог |
|---|---|---|---|
| Daggerfall Unity | The Elder Scrolls II: Daggerfall | Огромный мир, квесты, UI, моды, типичные паттерны Unity (MonoBehaviour, сцены, ScriptableObject) | Playable, Complete |
| unitystation | Space Station 13 | Мультиплеер, взаимодействие предметов, «живой» уровень, сетевые рассинхроны | Very Active |
| osu! | osu! | Точный тайминг, UI, аудио, производительность 2D без тяжёлого 3D — хороший C# после Unity | Very Active |
Первое задание: форк → собрать по README → найти один gameplay-скрипт (движение, инвентарь, тик симуляции) и нарисовать схему «кто кого вызывает за один кадр».
C# без Unity (если Unity уже знаком, а хочется другой архитектуры): OpenRA (RTS, C# + Lua), Space Station 14 (свой движок Robust, зато эталон сетевого геймплея и контент-пайплайна).
Unreal Engine и «родственный» C++
В каталоге мало живых проектов именно на UE5/Blueprint: чаще встречаются самописные C++ движки с теми же задачами, что и в Unreal — рендер, физика, AI, сеть. Их разбирают параллельно с Unreal Engine и 401.
| Проект | Оригинал | Что разбирать | Каталог |
|---|---|---|---|
| OpenMW | Morrowind | Открытый мир, скрипты, сохранения, моддинг | Very Active |
| 0 A.D. | Age of Empires (по духу) | RTS: юниты, pathfinding, экономика | Active |
| OpenXcom | X-COM | Пошаговый бой, FSM AI, тактическая сетка | Active |
| OpenSpades | Ace of Spades | Воксели, FPS, сеть с низкой задержкой | Sporadic |
| OpenLoco | Locomotion / Tycoon-линейка | Логистика, pathfinding на карте | Very Active |
Первое задание: в OpenMW или OpenXcom найти цикл обновления мира и один файл с AI/боевым решением; сопоставить с Actor/Component в UE.
Официальные sample-проекты Epic дополняют каталог: там готовый редактор и Blueprint, здесь — «голый» C++ без оболочки маркетплейса.
C++ (нативные движки, SDL, свой рендер)
Подходит и для трека Unreal (C++), и для языков игр в разделе C++.
| Проект | Оригинал | Что разбирать | Каталог |
|---|---|---|---|
| OpenTTD | Transport Tycoon | Pathfinding, экономика, мультиплеер, долгие сессии | Very Active |
| OpenRCT2 | RollerCoaster Tycoon 2 | Симуляция гостей, микро-AI, сохранения | Very Active |
| Endless Sky | Escape Velocity | Космос, торговля, бои, квесты в 2D | Very Active |
| ScummVM | десятки adventure | Движок «ядро + данные игры», скрипты, порты | Very Active |
| SuperTux | Super Mario (по духу) | 2D физика, тайлы, простой game loop | Very Active |
| Widelands | The Settlers | RTS на карте, экономика, Lua для данных | Very Active |
Первое задание: в OpenTTD или OpenRCT2 — как ищут путь и как сериализуют мир в сейв.
Godot (GDScript / C#)
| Проект | Оригинал | Что разбирать | Каталог |
|---|---|---|---|
| OpenCiv3 | Civilization III | Godot 4 + C#, 4X, моды, UI, AI в C7Engine | Very Active, Semi-Playable |
| SuperTux Classic | платформер | Чистый GDScript, 2D, уровни | Active |
См. Виды движков и Godot в /tools/games.
Первое задание: в OpenCiv3 открыть сцену главного меню и один модуль в C7Engine с логикой хода AI.
Roblox (Luau) и близкие по идее
Прямых «клонов Roblox» в каталоге почти нет; зато есть проекты с скриптовым слоем поверх движка — как Luau в Roblox.
| Проект | Оригинал | Что разбирать | Каталог |
|---|---|---|---|
| Minetest | Minecraft (по духу) | Lua-моды, сервер/клиент, блочный мир | Very Active |
| OpenRA | Command & Conquer | Правила и миссии на Lua, данные юнитов | Very Active |
| Widelands | The Settlers | Lua-карты и сценарии поверх C++ | Very Active |
Первое задание: в Minetest включить один mod из документации и проследить, как Lua вызывает API движка; сопоставить с RemoteEvent / ModuleScript в Roblox.
Для UGC и экономики в Roblox — 202; для блочного мира — также Minecraft.
Сводка — один вопрос — один репозиторий
| Вопрос | Куда смотреть первым |
|---|---|
| Как устроен игровой цикл в Unity? | Daggerfall Unity, osu! |
| Мультиплеер и авторитет сервера? | unitystation, Space Station 14 |
| Pathfinding и очереди юнитов? | OpenTTD, 0 A.D., OpenRA |
| Пошаговый AI? | OpenXcom |
| Открытый мир + квесты? | OpenMW, Daggerfall Unity |
| Моды и скрипты? | Minetest, ScummVM, OpenCiv3 |
| 2D платформер? | SuperTux, SuperTux Classic |
| Godot + C#? | OpenCiv3 |
Если проект не собирается за вечер — возьмите соседний из той же строки; цель разбора — один подсистемный ответ, а не прохождение всей игры.
Рабочий порядок «разбор по винтикам»
- Сформулируйте вопрос — например: «как хранят состояние юнита» или «как синхронизируют ход в сети».
- Отфильтруйте на osgameclones.com по языку/движку, который вы уже учите (114).
- Соберите и запустите один
Playableпроект — без запуска легко ошибиться в оценке сложности. - Найдите узел —
grepпо репозиторию:pathfind,inventory,spawn,SaveGame. - Зафиксируйте вывод в своём GDD или конспекте (процесс разработки) — одна схема или псевдокод, не копипаста сотен строк.
Такой разбор хорошо сочетается с дорожной картой геймдева: после базового курса по Unity или Unreal каталог даёт «экскурсии» в чужие кодовые базы без NDA студийных проектов.
Связанные материалы в энциклопедии
- Языки программирования игр — выбор стека перед клоном.
- Виды игровых движков — Godot, Unity, SDL в поле
frameworks. - Игры как объект анализа в IT — зачем разбирать чужие системы.
- Движки и инструменты для видеоигр — установка редакторов и утилит рядом с OSS-проектами.
См. также
- Open Source Game Clones — веб-каталог.
- Репозиторий osgameclones — данные, правила, pull request с новым клоном.
- Итоги раздела · Чек-лист
См. также
Другие статьи этого же раздела в боковом меню (как на странице «О разделе»). Разработка игр — это процесс создания видеоигр, который включает в себя множество этапов, от идеи и концепции до финального продукта. Термин *«дорожная карта»* в контексте игровой разработки часто используется как метафора: предполагается, что существует чёткий маршрут от «нуля» до «профессионала». Разработка компьютерных и видеоигр — одна из наиболее интердисциплинарных и кооперативных областей в индустрии информационных технологий. Игровой движок как платформа - подсистемы рендеринга, физики, ввода и сценариев, ускоряющие создание видеоигр. Roblox Studio не является традиционным игровым движком, но представляет собой платформу как услугу (PaaS) с ограниченной, но эффективной средой разработки. Языки для игр на примере Unity - роль C#, стандартная библиотека, сборка мусора и продуктивность разработки под движок. Моделирование — это процесс создания трёхмерных объектов, называемых моделями, для последующего использования в цифровых средах, особенно в видеоиграх. Текстура в контексте разработки игр — это изображение, накладываемое на поверхность трёхмерной модели с целью придания ей визуальной детализации, цвета, рельефа и других свойств внешнего вида. Гейм-дизайн — механики, баланс, нарратив и MDA; как проектировать опыт и где смотреть реализацию в Unity. Персональный компьютер (PC) остаётся одной из самых значимых платформ в игровой индустрии. PlayStation как платформа — железо PS4/PS5, SDK, сертификация и экосистема Sony Interactive Entertainment. Nintendo - консоли, аксессуары вроде Pro Controller и устройство игровой экосистемы компании.Процесс разработки видеоигр
Дорожная карта геймдева
Команда разработки
Игровой движок
Виды игровых движков
Языки программирования игр
Моделирование
Текстуры
Гейм-дизайн
PC
PlayStation
Nintendo