Новый\старый движок для Arcanum |
Здравствуйте, гость ( Вход | Регистрация )
Новый\старый движок для Arcanum |
san |
30.4.2023, 12:01
Сообщение
#21
|
Некромант форума Arcanum
Группа: Гл. администраторыСообщений: 2 876 Регистрация: 17.10.2006 Из: Москва Пользователь №: 2 |
Основа/суть игры - прописана в скриптах. Не знаю, насколько реалистично их переконвертировать программно в иной вид.
Вручную "перепилить" вряд ли реально, по количеству. В принципе, наверное, любопытная задача. |
Jordan |
30.4.2023, 12:17
Сообщение
#22
|
Диггер
Группа: ДегустаторыСообщений: 39 Регистрация: 3.6.2015 Пользователь №: 6 449 |
Основа/суть игры - прописана в скриптах. Не знаю, насколько реалистично их переконвертировать программно в иной вид. Вручную "перепилить" вряд ли реально, по количеству. В принципе, наверное, любопытная задача. Примерно с год назад, экспериментировал с парсингом msg диалога в скрипт на C++, сверх сложного там нет. Парсер получается максимально простым и тупым. Читаем строку, и конвертируем условия. Так же можно поступить и со скриптами. Понятно, что это не за один вечер пишется. Но это проще на мой взгляд, чем писать интерпретатор скриптов арканума. Я чуть позже, опишу идеи и покажу как я это собираюсь реализовать в коде. Это проект для экспериментов был. https://github.com/JordanCpp/ArcanumWorld Из него тоже код перенесу в движок. Сейчас довести проект, до состояния возможности загрузки sec файла. Тупо указываем путь до файла, и двиг визуализирует карту. Без анимаций. Просто рисование. И это даже не минимум. Ресурсы описывающие форматы арканума. https://github.com/vleon1/Arkanum https://github.com/iamkisly/ArcanumFileFormats Жаль, что за столько лет, никто и не выложил полное описание форматов. Столько проектов было, остались только сообщения на форуме. Сообщение отредактировал Jordan - 30.4.2023, 12:21 |
san |
30.4.2023, 12:46
Сообщение
#23
|
Некромант форума Arcanum
Группа: Гл. администраторыСообщений: 2 876 Регистрация: 17.10.2006 Из: Москва Пользователь №: 2 |
Перечень, наверное, действительно не сделан.
С каждым форматом была "отдельная песня", спецификация, собственно, зачем? Их не так и много. Мне основная проблемка видится в перепиливании *.scr и "увязка" оных с mes и dlg. И смотря еще с какой версии брать "исходный код", баги до сей поры встречаются, несмотря на 20 лет правок |
Jordan |
30.4.2023, 14:21
Сообщение
#24
|
Диггер
Группа: ДегустаторыСообщений: 39 Регистрация: 3.6.2015 Пользователь №: 6 449 |
Нашёл ещё полезный ресурс по воссозданию движка арканума.
https://github.com/arcanum-project https://youtu.be/qmdx32MjVnY |
Jordan |
30.4.2023, 16:58
Сообщение
#25
|
Диггер
Группа: ДегустаторыСообщений: 39 Регистрация: 3.6.2015 Пользователь №: 6 449 |
Движок обрастает мясом
Сейчас создаю базовые классы, менеджер спрайтов, чтение msg и т.д Нужно переместить проект, в отдельный репозиторий. Сообщение отредактировал Jordan - 30.4.2023, 17:00 |
Amrel |
30.4.2023, 17:38
Сообщение
#26
|
Прохожий
Группа: ДегустаторыСообщений: 9 Регистрация: 8.8.2022 Пользователь №: 7 330 |
Нашёл ещё полезный ресурс по воссозданию движка арканума. https://github.com/arcanum-project https://youtu.be/qmdx32MjVnY Это мой проект, кстати. |
Jordan |
30.4.2023, 18:05
Сообщение
#27
|
Диггер
Группа: ДегустаторыСообщений: 39 Регистрация: 3.6.2015 Пользователь №: 6 449 |
Нашёл ещё полезный ресурс по воссозданию движка арканума. https://github.com/arcanum-project https://youtu.be/qmdx32MjVnY Это мой проект, кстати. Отличный проект, но насколько я понял, ты делаешь только под IOS? Я заимствую у тебя код по чтению sec файлов? В редми добавлю. А вообще я изучаю твой проект, правда c api Metal никогда не работал. |
Amrel |
30.4.2023, 18:15
Сообщение
#28
|
Прохожий
Группа: ДегустаторыСообщений: 9 Регистрация: 8.8.2022 Пользователь №: 7 330 |
Нашёл ещё полезный ресурс по воссозданию движка арканума. https://github.com/arcanum-project https://youtu.be/qmdx32MjVnY Это мой проект, кстати. Отличный проект, но насколько я понял, ты делаешь только под IOS? Я заимствую у тебя код по чтению sec файлов? В редми добавлю. А вообще я изучаю твой проект, правда c api Metal никогда не работал. Изначально для Apple устройств, iOS и macOS. Сейчас подключился к проекту еще один человек, добавляем другие платформы на openGL. Изучать там и правда есть что, думаю я добился наибольшего прогресса со времен раджа и криптона. Код открытый, лицензия там указана, пользуйся, конечно. Буду следить за твоим проектом, особенно в части openGL, всегда есть чему научиться. |
Jordan |
30.4.2023, 23:00
Сообщение
#29
|
Диггер
Группа: ДегустаторыСообщений: 39 Регистрация: 3.6.2015 Пользователь №: 6 449 |
Изначально для Apple устройств, iOS и macOS. Сейчас подключился к проекту еще один человек, добавляем другие платформы на openGL. Изучать там и правда есть что, думаю я добился наибольшего прогресса со времен раджа и криптона. Код открытый, лицензия там указана, пользуйся, конечно. Буду следить за твоим проектом, особенно в части openGL, всегда есть чему научиться. Отлично, что нашли общий язык. Предлагаю, по возможности делиться знаниями и кодом. Перенес проект в отдельный репозиторий. https://github.com/JordanCpp/ArcanumWorld Ссылка для скачивания движка (ссылка постоянная): https://github.com/JordanCpp/ArcanumWorld/a.../heads/main.zip Распакуйте в любой каталог и запустите Arcanum.exe В архиве, скомпилированная библиотека LDL, движок собираю под Visual Studio 2022. Exe собираю в режиме 32 бит Debug Работает начиная с Windows 8. Библиотека LDL позволяет скомпилировать проект под Windows 95, но я пока такие сборки не делаю. Сообщение отредактировал Jordan - 30.4.2023, 23:01 |
Jordan |
30.4.2023, 23:12
Сообщение
#30
|
Диггер
Группа: ДегустаторыСообщений: 39 Регистрация: 3.6.2015 Пользователь №: 6 449 |
Сейчас закладываю базовые вещи в движок. Следующий шаг, конвертация pro файлов и файлов карт sec в текстовый формат. Формат выбрал xml, так как уже написан парсер xml в 300 строк, не люблю лишние зависимости.
Текстовые форматы легко читать и править. Буду рад обратной связи от форумчан, по коду, архитектуре. Критика и идеи приветствуются. Я сам бэкенд разработчик, по этому опыта в разработке игровых движков нет. Но смотрю как устроены другие движки. Примеры движков. Реализация движка fallout 2 https://github.com/falltergeist/falltergeist Реверс инженеринг движка fallout 2 рабочий, можно играть https://github.com/alexbatalov/fallout2-ce Реализация движка HOMM 2 https://github.com/ihhub/fheroes2 Fonline думаю не нуждается в предоставлении https://github.com/cvet/fonline Кладезь кода, примеров архитектуры, в том числе и сетевой архитектуры. Сообщение отредактировал Jordan - 30.4.2023, 23:26 |
Текстовая версия | Сейчас: 22.12.2024, 5:43 |