Page 1 of 5

Игра Dungeons of Augastes / Подземелья Аугастеса

Posted: Wed Dec 31, 2014 6:29 am
by Anton_K
Image

Описание игры
Жанр: бродилка с элементами квеста
Авторы: 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:Image
Код игры в 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
yogev_ezra wrote: Кроме того, в папке с игрой нужно удалить "lang.inc", и в твоём собственном Tupfile.lua сделать как здесь (чтобы lang.inc генерировался динамически): http://websvn.kolibrios.org/filedetails ... upfile.lua
Просто у меня сейчас поддерживается только русский. При попытке собрать с другим языком оно не соберется, так как на данный момент нет переводов (даже английского). Поэтому я пока сделал статический 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:Image
И бинарник для тех, кому лень качать образ:

Re: Игра на конкурс Dungeons of Augastes / Подземелья Аугаст

Posted: Wed Dec 31, 2014 9:06 pm
by yogev_ezra
Anton_K wrote:Пофиксил несколько мелочей, добавил текстуру в последнюю комнату, добавил игру в образ (русскоязычный). В меню мне ее нужно добавлять или нет?
На твоё усмотрение. Вреда от этого точно не будет :roll:

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 - двери, разноцветные квадраты - места размещения объектов, с которыми можно взаимодействовать

Image
Но на реализацию у меня оставалось буквально полтора дня, так как много времени ушло на создание движка, больше, чем я планировал. Пришлось урезать всё по максимуму. А еще из меня очень плохой художник :)
Конечно, хотелось бы продолжить разработку игры, идей то навалом: улучшение графики, звук, анимация, дальнейшая оптимизация кода, много уровней и т. д. Но не знаю, как у меня будет со временем и настроением. Сейчас мне нужно будет немного передохнуть, а то я почти месяц без выходных кодил. Надеюсь, что этот уровень я всё-таки попозже доделаю, а дальше посмотрим.

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" я уже знаю как пофиксить (оно отвалилось, пока я приделывал нижнюю панель, а я и не заметил), но с другой стороны это всё равно не должно давать такую сильную просадку.