Вход

Просмотр полной версии : Vade Retro II



abelenki
12.11.2017, 10:57
новая игра от J.B. - Vade Retro II.

топик на WoS (https://www.worldofspectrum.org/forums/discussion/55500/vade-retro-ii)

krt17
12.11.2017, 15:11
Лучшая игра года, после WAKE ME UP переиграл во все его игры, и наверное еще раз переиграю. Естественно зхновосибам противопоказано.

ZX_NOVOSIB
12.11.2017, 17:17
Хто здесь?:v2_dizzy_aaaaa:

TomCaT
12.11.2017, 17:38
Эге, два персонажа под управлением. А возможность колесить по местности на разнообразных транспортных средствах - это вообще идея.

Black Cat / Era CG
15.05.2020, 16:51
Добрый вечер.

Желание переиграть в эту (на самом деле офигительную) игру привело к тому, что я решился доделать свою поделку, которую начал наверное еще в 2о17, но бросил.
По ссылке лежит две версии игры: Перевод и Перевод + модификация с поддержкой Kempston-джойстика (8 бит). Кемпстон опрашивается тупо параллельно клавиатуре, без всяких вопросов-запросов, поэтому тем, у кого его нет (или не заработает), лучше юзать первую версию. На дополнительные кнопки повешено: взятие/использование предмета, транспорт, смена персонажа. Инвентарь только на клавиатуре (I).
По сути две версии отличаются парой десятков байт, поэтому можно сделать и полноценную (одну) версию с включением/выключением джойстика, но не стал. Так же хотел повесить инвентарь на кнопку транспорта (сидим внутри транспорта или стоим рядом с ним - отрабатывает транспорт, нет - открывается инвентарь), но не сделал, redefine тоже хотел, но не сделал. Если кто сделает (особенно с управлением для Кемпстона), то будет круто.
Модификации особо не тестировались, но вроде бы ничего не сломалось и игра работает.
Исходники (и асм pasmo) прилагаются.

С переводом помогали (точнее, я помогал скорее): Den Jr и michellekg (https://zx-pk.ru/members/5637-michellekg.html). За что им отдельное спасибо.

Ссылка (https://drive.google.com/file/d/1UwDlkRfV3k34b_SZoyDZ_KClSAsiVxI6/view?usp=sharing)

goodboy
15.05.2020, 18:52
Black Cat, ты бы вкратце рассказал про что игра

Black Cat / Era CG
15.05.2020, 23:58
Black Cat, ты бы вкратце рассказал про что игра
Игра - продолжение предыдущей игры Vade Retro, которая была посвящена 30-летию спека. А эта часть посвящена соответственно 35-летию. Сюжет игры показывается в интро. Кратко: некоторого футболиста похищают инопланетяне, но он умудряется бежать. В это же время в другой части вселенной некий доктор Мальфарио собирается отправиться на своем корабле в путешествие во времени и параллельным мирам. Так получается что их корабли сталкиваются и они оказываются на какой-то планете. С этого момента и начинается игра. Мы управляем одним из героев (между ними можно переключаться). В начале игры они находятся в разных частях планеты. Наша задача, применяя предметы и отстреливая враждебную жизнь, помочь им встретиться и вернуться домой. В общем бегаем по миру, постреливаем, находим и применяем предметы. Игра в техническом и графическом плане не блещет. Но при этом очень интересна. Плюс в ней есть некоторое количество юмора и отсылок. Да и свой необычный стиль у нее есть.

Black Cat / Era CG
16.05.2020, 21:44
Давайте обсуждать уже. А то попадем в кандидаты! :(

Lethargeek
17.05.2020, 00:09
попадёте, обязательно попадёте... но потом (когда до 2017 доберусь)

Black Cat / Era CG
17.05.2020, 00:12
Бежииииим!

Uzix
23.05.2020, 16:39
По сути две версии отличаются парой десятков байт, поэтому можно сделать и полноценную (одну) версию с включением/выключением джойстика, но не стал. Так же хотел повесить инвентарь на кнопку транспорта (сидим внутри транспорта или стоим рядом с ним - отрабатывает транспорт, нет - открывается инвентарь), но не сделал, redefine тоже хотел, но не сделал. Если кто сделает (особенно с управлением для Кемпстона), то будет круто.

Сделал версию с автообнаружением Kempston-джойстика.

Black Cat / Era CG
23.05.2020, 17:08
Сделал версию с автообнаружением Kempston-джойстика.
По какому способу?

Uzix
23.05.2020, 17:35
По какому способу?
При считывании значения Kempston-джойстика проверяется старший бит. Если он != 0, то считается что джойстик отсутствует и дальнейший опрос не производится. Проверка происходит при каждом опросе джойстика т.к. порт аттрибутов может дать ложный 0. Это занимает дополнительные такты, но тут, кажется, не критично.

- - - Добавлено - - -

Мда, а для четырёх кнопок то не подойдёт. Есть вообще какой-то стандарт на >1 кнопку?

Black Cat / Era CG
23.05.2020, 18:05
Сейчас ещё покопался, и нашёл информацию, что кнопки 2 и 3 джойстика находятся не на D5/D6, а на D7/D5. Нужно будет переделать код.
В Кемпстоне максимум была одна дополнительная кнопка (D5 вроде). В моем варианте (и это не единственная игра, хоть их и не много) их три, то есть D5,D6,D7.

При считывании значения Kempston-джойстика проверяется старший бит. Если он != 0, то считается что джойстик отсутствует и дальнейший опрос не производится. Проверка происходит при каждом опросе джойстика т.к. порт аттрибутов может дать ложный 0. Это занимает дополнительные такты, но тут, кажется, не критично.
Если шина нестабильная, то там может быть все, что угодно.
Общественное мнение склоняется к том, что автоопределение - зло, прямой вопрос - добро.

- - - Добавлено - - -

А еще фигня вот какая. Щас меня закидают, но... Новые игры под доп. кнопки можно ожидать только по трем причинам:
а) делается адаптер пада от Сеги, который поддерживает все 8 бит Кемпстона (8 кнопок),
б) есть вполне мод базовой конфы для Эволюшн, где такой джой поддержан, я на нем играю,
в) такой джой поддержан в Нексте и некоторые игры, которые пишутся и под него, и под обычный спек, рассчитаны на него в обеих версиях (правда тем у кого кнопка, 1 играть тоже можно, просто придется к клаве тянуться иногда).
И все эти три случая придерживаются одинаковой раскладки.

Вот картинка, которую я нарисовал, опираясь на инфу, так щас у меня в Эве.
https://pic.maxiol.com/images2/1590085468.2989615885.gamepad.png
По ней же уже сделан прототип, о нем вот пост: https://zx-pk.ru/threads/28489-pentagon-1024-4096-ot-northwood.html?p=1064595&viewfull=1#post1064595
Ну и ссыль на доку про Некст: https://wiki.specnext.dev/Kempston_Joystick

Gutten
23.05.2020, 18:06
На старшие биты порта кемпстона может быть заведено все что угодно, так что автоопределение по битам D5...D7 может дать ложный результат.

Black Cat / Era CG
23.05.2020, 18:09
И да. г) Будующий СуперПент тоже будет поддерживать 8 кнопий https://zx-pk.ru/threads/28489-pentagon-1024-4096-ot-northwood/page65.html
Начато наступление всеми группами по всем фронтам.

- - - Добавлено - - -

Поэтому автоопределение и плохо. По идее я ваще делал эту версию для себя. Но решил поделиться. Она именно отдельно под такой пад. На обычном Кемпстоне кнопок слишком мало.

Uzix
23.05.2020, 18:53
Как вариант - проверять наличие джойстика сравнением считанного значения с FF когда нет отрисовки. Если нет подтяжки ШД - это не сработает, но отсутствие подтяжки само по себе серьёзная проблема.

NEO SPECTRUMAN
23.05.2020, 18:58
Как вариант - проверять наличие джойстика сравнением считанного значения с FF когда нет отрисовки. Если нет подтяжки ШД - это не сработает, но отсутствие подтяжки само по себе серьёзная проблема.
ну дык на фирменной машине оно прочитает тот самый порт FF
вместо единиц подтяжки
и решит что кемстон уже жмут

jerri
23.05.2020, 20:48
Хосспадe, как дети.

вот процедура теста кемпстона (5 кнопочного)




test_kemp
ld bc,#001f
ld l,b
ld e,b
i_00
in a,(c)
or e
ld e,a
dec l
jr nz,i_00

ld a,e
and c
jr z,kemp_present
ld a,#c9
kemp_present
ld (kemp_act),a
ret





вот тут его использование



scan_ctrl
ld bc,k_table
ld de,kb_buf
exx
ld b,8
scan_ctrl0
exx
ld a,(bc)
inc bc
ld l,a
ld h,0
add hl,de
ld a,(bc)
inc bc
and (hl)
cp 1
exx
rr e
djnz scan_ctrl0
ld a,e
kemp_act ret
ld bc,#001f
in a,(c)
and #1f
or e
ret


жырным помечена маска кемпстона.
если для начала потестировать сам кемпстон
а потом осторожно пошарить доп биты и ввести их расширением маски в выделенном жырненьким

то все будет работать безо всяких проблем.

NEO SPECTRUMAN
23.05.2020, 23:25
то все будет работать безо всяких проблем.



and c jr z,kemp_present
если нажато что либо на кемстоне
кемстон не определитсо

например из бута с кемстоном мы что то выбрали при помощи кемстона


цикл бесполезен
биты накапливаются по or-у
если поймали нажатие хоть один раз (как раз момент отпускание клавиши при выборе в буте)
то все кемстон не определится
(актуально при работе с рам дисках с мгновенной загрузкой)

- - - Добавлено - - -


Хосспадe, как дети.
так что где дети непонятно

- - - Добавлено - - -

конечно не включение кемстона когда он есть
лучше чем
включение кемстона когда его нет...

jerri
24.05.2020, 00:03
если нажато что либо на кемстоне
кемстон не определитсо

например из бута с кемстоном мы что то выбрали при помощи кемстона


цикл бесполезен
биты накапливаются по or-у
если поймали нажатие хоть один раз (как раз момент отпускание клавиши при выборе в буте)
то все кемстон не определится
(актуально при работе с рам дисках с мгновенной загрузкой)

конечно не включение кемстона когда он есть
лучше чем
включение кемстона когда его нет...

а ты после нажатия в буте джойстик из рук не выпускаешь?

там еще распаковка данных идет - это тоже время.

запусти Аббатство или Гайдена - проблемы с джойстиком есть?