Page 1 of 5
Игра Dungeons of Augastes / Подземелья Аугастеса
Posted: Wed Dec 31, 2014 6:29 am
by Anton_K
Описание игры
Жанр: бродилка с элементами квеста
Авторы: Anton_K (код), AnakreonMW (геймплей), Leency (графика)
Язык программирования: Assembler x86 (FASM)
Лицензия на исходный код: GNU GPL 2.0 (или выше)
Лицензия на ресурсы: см. Resources/Textures/Licenses.txt
Системные требования
Память: 64 MB
Процессор: Intel Pentium 4 / AMD Athlon XP от 2,5 GHz (нужно уточнение, у меня в VirtualBox на i5 Ivy Bridge выдает не меньше 60-70 FPS, хорошо играбельно на > 30-40, можно пересобрать без шейдинга и FPS станет выше)
Разрешение экрана: не менее 1024 x 768
Управление
Перемещение: WASD, стрелки
Сделать что-нибудь: пробел
Использовать предмет из инвентаря: 0..9
Скриншот
Spoiler:
Код игры в SVN
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Wed Dec 31, 2014 9:08 am
by Mario_r4
.
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Wed Dec 31, 2014 5:24 pm
by yogev_ezra
Anton_K wrote:Выкладываю свою игру на конкурс. Исходники уже в svn и оно даже собирается. Правда я не разобрался, как правильно добавить ее в iso. Подскажите?
Нужно отредактировать ещё и файл
/data/Tupfile.lua (там прописываются все программы, собирающиеся в IMG/ISO/distr):
http://websvn.kolibrios.org/filedetails ... upfile.lua
Code: Select all
tup.append_table(extra_files, {
{"HD_Load/9x2klbr/", PROGS .. "/hd_load/9x2klbr/9x2klbr.exe"},
[...]
{"HD_Load/USB_boot_old/", PROGS .. "/hd_load/usb_boot_old/enable.exe"},
*** Строчку добавить вот здесь ***
{"kolibrios/games/rstearth/rstearth", PROGS .. "/games/rstearth/rstearth"},
Кроме того, в папке с игрой нужно удалить "
lang.inc", и в твоём собственном
Tupfile.lua сделать как здесь (чтобы
lang.inc генерировался динамически):
http://websvn.kolibrios.org/filedetails ... upfile.lua
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Wed Dec 31, 2014 5:38 pm
by hidnplayr
Interesting engine.
Is there any support for multi-language (russian-english)?
Source code looks very nice (at first glance), kudos for that.
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Wed Dec 31, 2014 5:49 pm
by Anton_K
Просто у меня сейчас поддерживается только русский. При попытке собрать с другим языком оно не соберется, так как на данный момент нет переводов (даже английского). Поэтому я пока сделал статический lang.inc. Может игру добавить пока тольку в русскую сборку iso? Или все равно во все добавлять?
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Wed Dec 31, 2014 5:58 pm
by Anton_K
hidnplayr wrote:Interesting engine.
Is there any support for multi-language (russian-english)?
At this moment there are no translations, only russian. But other languages can be easily added. I will do it later, maybe
hidnplayr wrote:Source code looks very nice (at first glance), kudos for that.
Thanks! But the code in Levels/1.inc (level description and logic) is not so nice because i had no time to write it properly and was very tired. I will rewrite it next year.
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Wed Dec 31, 2014 6:04 pm
by yogev_ezra
Anton_K wrote:Просто у меня сейчас поддерживается только русский. При попытке собрать с другим языком оно не соберется, так как на данный момент нет переводов (даже английского). Поэтому я пока сделал статический lang.inc.
Хорошо, тогда пока оставь, как есть.
Anton_K wrote:Может игру добавить пока тольку в русскую сборку iso? Или все равно во все добавлять?
Хорошо, добавь только в русскую сборку. Но тогда тебе нужно после этого куска скрипта
Code: Select all
-- For russian build, add russian-only programs.
if build_type == "rus" then tup.append_table(img_files, {
{"PERIOD", PROGS .. "/other/period/trunk/period"},
{"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_rus"},
}) else tup.append_table(img_files, {
{"DEVELOP/TESTCON2", PROGS .. "/develop/libraries/console/examples/testcon2_eng"},
{"GAMES/SOKO", PROGS .. "/games/soko/trunk/SOKO"},
}) end
дописать новое условие
Code: Select all
if build_type == "rus" then tup.append_table(extra_files, {
*** Твоя игра ***
}) end
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Wed Dec 31, 2014 9:03 pm
by Anton_K
Пофиксил несколько мелочей, добавил текстуру в последнюю комнату, добавил игру в образ (русскоязычный). В меню мне ее нужно добавлять или нет?
Еще один скриншотец:
Spoiler:
И бинарник для тех, кому лень качать образ:
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Wed Dec 31, 2014 9:06 pm
by yogev_ezra
Anton_K wrote:Пофиксил несколько мелочей, добавил текстуру в последнюю комнату, добавил игру в образ (русскоязычный). В меню мне ее нужно добавлять или нет?
На твоё усмотрение. Вреда от этого точно не будет
Posted: Thu Jan 01, 2015 2:07 pm
by punk_joker
Продолжение будет?
Re:
Posted: Thu Jan 01, 2015 6:53 pm
by Anton_K
punk_joker wrote:Продолжение будет?
На самом деле этот первый уровень был очень хорошо продуман, с кучей действительно интересных говололомок. Вот скриншот наработки:
Spoiler:
D - двери, разноцветные квадраты - места размещения объектов, с которыми можно взаимодействовать
Но на реализацию у меня оставалось буквально полтора дня, так как много времени ушло на создание движка, больше, чем я планировал. Пришлось урезать всё по максимуму. А еще из меня очень плохой художник
Конечно, хотелось бы продолжить разработку игры, идей то навалом: улучшение графики, звук, анимация, дальнейшая оптимизация кода, много уровней и т. д. Но не знаю, как у меня будет со временем и настроением. Сейчас мне нужно будет немного передохнуть, а то я почти месяц без выходных кодил. Надеюсь, что этот уровень я всё-таки попозже доделаю, а дальше посмотрим.
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Fri Jan 02, 2015 12:29 am
by yogev_ezra
На моей тестовой машине
eBox-3310MX (Vortex86MX+ CPU) (процессор аналогичен Pentium1-MMX, разогнанному до 1GHz) при запуске игры появляется окно заставки с названием и словом "Загрузка...". Это окно показывается в течении 32 секунд (всё это время загрузка процессора стоит на 100%), после чего игра "вылетает" с сообщением о неподдерживаемой инструкции. В твою защиту нужно сказать, что минимальные системные требования указаны в README в папке с игрой, и этот компьютер им не отвечает. Хотя ждать 32 секунды тоже как-то неправильно...
На рабочем компьютере соседки по кубиклу на работе, в несколько раз превышающем твои минимальные системные требования (Intel Core i5-3470 CPU @ 3.20GHz, 8GB RAM), игра запускается моментально (резолюция 1280x1024x32bit), и работает на >25 FPS. Графика мне понравилась. Но загрузка процессора при этом так же всё время 100%, движения персонажа очень медленные (возможно, так и задумывалось, но руки/глаза требуют возможности бежать быстрее). Лог board и фото конфигурации компьютера прилагаю на всякий случай. Хотя на этом компьютере "
Обнаружена проблема MTRR" (и это может снизить производительность игры).
У меня вопрос к другим людям, которые тестировали эту игру
на реальной машине - у вас всех тоже 100% загрузка CPU была? И сколько у кого FPS?
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Fri Jan 02, 2015 1:02 am
by Anton_K
yogev_ezra wrote:На моей тестовой машине
eBox-3310MX (Vortex86MX+ CPU) (процессор аналогичен Pentium1-MMX, разогнанному до 1GHz) при запуске игры появляется окно заставки с названием и словом "Загрузка...". Это окно показывается в течении 32 секунд (всё это время загрузка процессора стоит на 100%), после чего игра "вылетает" с сообщением о неподдерживаемой инструкции. В твою защиту нужно сказать, что минимальные системные требования указаны в README в папке с игрой, и этот компьютер им не отвечает. Хотя ждать 32 секунды тоже как-то неправильно...
Тут я ничем не помогу. Разве что приделывать детекцию слабого железа, как это сделал автор Heliothryx. Но это как-то странно на мой вкус...
(Intel Core i5-3470 CPU @ 3.20GHz, 8GB RAM), игра запускается моментально (резолюция 1280x1024x32bit), и работает на >25 FPS.
Тут что-то явно не так, у меня процессор i5-3450 3.10 Ггц, под VirtualBox не менее 65 fps. Правда я тестировал только при разрешении экрана 1024*768. Но если производительность так существенно падает при увеличении разрешения, то проблема, скорее всего, не в моей игре, так как разрешение окна на данный момент фиксировано и составляет 960*720. Если есть возможность, то можно проверить fps при разрешении 1024*768? Я сам тоже попробую потестировать fps на разных конфигурациях.
Но загрузка процессора при этом так же всё время 100%
Так и задумано, игра постояно перерисовывает сцену. Это делалось, во-первых, с прицелом на анимацию (которой пока нет
), а во-вторых так проще сделать константную скорость и плавность передвижения, которая не будет зависеть от fps (при условии, что fps > 30-40).
движения персонажа очень медленные
Это как раз из-за низкого fps, на такой машине он должен быть существенно выше.
Update: глянул в лог и обнаружил корень
зла низкого fps:
akode_data.OptimizedGetImage: 0
Почему-то используется неоптимизированный вариант одной функции, хотя должен использоваться оптимизированный...
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Fri Jan 02, 2015 1:10 am
by yogev_ezra
Anton_K wrote:(Intel Core i5-3470 CPU @ 3.20GHz, 8GB RAM), игра запускается моментально (резолюция 1280x1024x32bit), и работает на >25 FPS.
Тут что-то явно не так, у меня процессор i5-3450 3.10 Ггц, под VirtualBox не менее 65 fps. Правда я тестировал только при разрешении экрана 1024*768. Но если производительность так существенно падает при увеличении разрешения, то проблема, скорее всего, не в моей игре, так как разрешение окна на данный момент фиксировано и составляет 960*720. Если есть возможность, то можно проверить fps при разрешении 1024*768? Я сам тоже попробую потестировать fps на разных конфигурациях.
Попробовал на 1024x768x32bit - абсолютно идентичное поведение. Ты вообще
на реальной машине тестировал? Или только в VirtualBox?
Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст
Posted: Fri Jan 02, 2015 1:15 am
by Anton_K
Да, только в VirtualBox
На тестирование на реальном железе не было времени.
Проблему с "akode_data.OptimizedGetImage: 0" я уже знаю как пофиксить (оно отвалилось, пока я приделывал нижнюю панель, а я и не заметил), но с другой стороны это всё равно не должно давать такую сильную просадку.