Вход

Просмотр полной версии : Игра TANK-1990 (128)



Dwa83
05.06.2018, 22:21
TANK-1990
Версия 1.04
Добавлена TR-DOS версия от creator

DJs3000
05.06.2018, 23:03
Делитесь исходниками)

Dwa83
05.06.2018, 23:14
Вот, правда я программист так себе, любитель)
65461

ZX_NOVOSIB
06.06.2018, 10:01
http://zx-pk.ru/threads/26092-eshchjo-odin-klon-battle-city-na-zx.html - как говорится, почувствуйте разницу :)

Лишь бы Epsilon не забыл, и всё-таки допилил свой tank 1990 , всё же поделка кружка юных пионеров это хорошо, но полноценный нормальный играбельный порт лучше ))

goodboy
06.06.2018, 14:17
Если бы автор её довел до ума, убрал снег
а что мешает запуску в режиме Пентагона ?

Dwa83
06.06.2018, 19:25
http://zx-pk.ru/threads/26092-eshchjo-odin-klon-battle-city-na-zx.html - как говорится, почувствуйте разницу :)


Я видел этот шикардос, но у меня уровня не хватит такое сделать)

abelenki
08.06.2018, 07:20
народ просит версию с "нормальным" управлением ;) :

https://www.worldofspectrum.org/forums/discussion/comment/941962/#Comment_941962

Labrador
09.06.2018, 17:05
А мне понравилась реализация. Если добавить AY, подправить графику и добавить спец.эфекты будет не хуже версии от Epsilon.

Dwa83
10.06.2018, 20:28
народ просит версию с "нормальным" управлением
Щас пока выходные начались, попробую добавить редефайн кейс. Доделывать до идеала не хотел, так как задачей было написание хоть одной игры на zx, так как с платформой с детства знаком, а ничего не написано. Раз народ просит, попробую сделать)

Dwa83
10.06.2018, 23:06
Я в шоке, пытался найти видео тех крутых танков, а нарвался на прохождение этой версии))) https://www.youtube.com/watch?v=DPd9x0cWn2w

Dwa83
11.06.2018, 22:11
Обновил шапку.


TANK-1990 (128) v101.zip
Добавлено назначение клавиш
Убран "снег"

Dwa83
11.06.2018, 22:28
Круто! Ещё бы кэмпстон-джойстик добавить, дабы у буржуев проблем не было.
Я его как бы.. сделал, но при одновременном управлении клавиатурой и кэмпстоном(при отсутствии второго) танк бесится. А выбор или то, или другое - не сделал. Возможно позже, так как с памятью проблема - кончается зараза. Придётся уровни в дополнительный банк перемещать и много чего переделывать.
Потому выложил без кэмпстона..

Dwa83
14.06.2018, 02:31
Немного допилил
(новая версия в шапке)

Добавлено управление кемпстон-джойстиком(тестировал бегло)
Добавлены уровни сложности
Добавлены звёздочки - теперь есть градации мощности танка
Добавил "бритьё" кустов :)

Reobne
14.06.2018, 09:22
Dwa83, Заметил, что не хватает звукового эффекта когда твой танк убивают. И вообще, пауз в игре не хватает. Вот убивают наш штаб, нужно секундочку подождать, поиграть грустную музыку, и только потом очищать экран.
Игра выглядит и звучит как для 48К, так что немного жаль что она для 128К. Может есть какой-то шанс, упаковать звук, уровни, код и графику, чтобы всё влезло в 48К? :)

Dwa83
14.06.2018, 10:23
Может есть какой-то шанс, упаковать звук, уровни, код и графику, чтобы всё влезло в 48К?
Уровни упакованы, звук почти не занимает места. Тут дело в том, что используются банки памяти 5 и 7 в роли теневого экрана, так что 48 не получится. Звуки и задержку сделать не проблема(хотя на AY ещё не делал)

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



Игра выглядит и звучит как для 48К, так что немного жаль что она для 128К
звучит да, но не выглядит. До этого ведь 48 была) и она в итоге стала такой медленной(ввиду масок, восстановлений фонов, и теневого экрана, выводимого LDIR и т.д.), так что мне не жаль, что она 128 ))

Точно есть такая фишка. Читаем.
Так она не работает на 48к. Ну и ладно, те у кого 48к лишатся моего мегашедевра из-за того что я не умею делать плавную картинку стандартными методами :v2_dizzy_biggrin2::v2_dizzy_coder:

Epsilon
17.06.2018, 18:59
Добро пожаловать в лигу "писателей танчиков"! :)

На самом деле получилось очень культурно, у игры есть свой собственный шарм. Звук вылетающего снаряда напоминает выстрел "дезинтегратора" в моём любимом Quazatron'е. Так держать!

Выложил на виву, мало ли, кто-то захочет онлайн погамить :)

https://viva-games.ru/game/tank-1990-128k

P.S. Есть претензии только к музыке перед левелами, можно было бы немного убавить басы.

Dwa83
18.06.2018, 13:43
Звук вылетающего снаряда напоминает выстрел "дезинтегратора" в моём любимом Quazatron'е.
Друг то же про звук из квазатрона упомянул, когда услышал) раньше часто в него рубили)
А так, я возможно под ay переделаю. Вообще я её ещё допиливаю до кондиции. Так что это не финальная версия пока что)

Epsilon
18.06.2018, 14:51
Друг то же про звук из квазатрона упомянул, когда услышал) раньше часто в него рубили)
А так, я возможно под ay переделаю. Вообще я её ещё допиливаю до кондиции. Так что это не финальная версия пока что)

Давай, ждём :) Всё у тебя получится! :v2_dizzy_roll:

null_device
18.06.2018, 15:04
Epsilon, оффтоп-вопрос: как обстоят дела с написанием игры (http://zx-pk.ru/threads/26092-eshchjo-odin-klon-battle-city-na-zx.html?p=863199&viewfull=1#post863199)?

Epsilon
18.06.2018, 15:43
Epsilon, оффтоп-вопрос: как обстоят дела с написанием игры (http://zx-pk.ru/threads/26092-eshchjo-odin-klon-battle-city-na-zx.html?p=863199&viewfull=1#post863199)?

Времени пока не хватает. Но планы есть таки закончить. Тем более теперь появилось ещё больше мотивации )

null_device
18.06.2018, 17:16
Epsilon, ясно. Желаю, скорейшего появления свободного времени на завершения задуманного! ;)

Dwa83
21.06.2018, 05:53
Epsilon, К тебе у меня вопрос по организации данных в памяти в игре батл сити. Где и в каких страницах и в страницах ли хранятся спрайты и уровни?
У меня пока так, обычный экран и страница-7 меняются как свапскрины. Вторая половина этих обеих страниц копии этих экранов без спрайтов(одинаковые), чтоб с них восстанавливать фон при любом подключенном экране быстро. Зачем я так сделал - ну просто сделал, теперь хочу оптимизировать код, чтоб влезла копия экрана с изображенеием уровня для восстановления в одном экземпляре в память до #C000(код программы с #8000 до #BFFF, а вторуючасть банок 5 и 7(больше чем половину) в обоих страницах занять полезным. Все уровни находятся в нулевой странице, теперь я её включаю только при распаковке и перекидке уровня в рабочую область. Раньше был один спрайт танка проскролленый по горизонтали для боковых движений(на лету медленнее будет, лучше сразу скрольнуть). Но потом подумал, зачем с ленты всё это записывать, можно ведь программно сделать. Итого, для каждого вида танка загружаю только спрайт, смотрящий вверх и влево(и маски). Вверх - просто отображаю вниз, а тот что влево - переворачиваю вправо и оба варианта с масками скроллирую на 1 пиксель 8 раз. Итак один спрайт с маской занимает теперь в развёрнутом виде в программе 2496 байт (!!)(а на ленте 160). Считаем - 1 наш танк + 3 вражеских разного вида - 9984 байт! Это вообще норм? + код программы должен поместиться в одну страницу. Или скролл делать на лету как раньше??? Но для этой игры важна скорость и динамичность.. Я теперь хочу удавить код, чтоб с ним в рабочей банке поместились 4 рабочих спрайта танков, распакованный уровень 624 байта(можно 312, если каждое значение в полубайт, но это уже сложности начинаются)(кстати его тоже можно убрать из этой страницы). Вобщем я разрываюсь, никогда ничего в такие жёсткие рамки загнанное не делал..

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


чтоб влезла копия экрана с изображенеием уровня
Понял, что не получится..

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

Похоже всё-таки сделаю 4 грейда нашего танка и один вид вражеского - в одну банку влезает, а музыка так и останется квазатронская с басами(ну можно ноту второго голоса(кто-нибудь слышит, что их два?) при басах сдвинуть немного по частоте или вообще другой подход слизать)

Epsilon
21.06.2018, 06:10
Epsilon, К тебе у меня вопрос по организации данных в памяти в игре батл сити. Где и в каких страницах и в страницах ли хранятся спрайты и уровни?
У меня пока так, обычный экран и страница-7 меняются как свапскрины. Вторая половина этих обеих страниц копии этих экранов без спрайтов(одинаковые), чтоб с них восстанавливать фон при любом подключенном экране быстро. Зачем я так сделал - ну просто сделал, теперь хочу оптимизировать код, чтоб влезла копия экрана с изображенеием уровня для восстановления в одном экземпляре в память до #C000(код программы с #8000 до #BFFF, а вторуючасть банок 5 и 7(больше чем половину) в обоих страницах занять полезным. Все уровни находятся в нулевой странице, теперь я её включаю только при распаковке и перекидке уровня в рабочую область. Раньше был один спрайт танка проскролленый по горизонтали для боковых движений(на лету медленнее будет, лучше сразу скрольнуть). Но потом подумал, зачем с ленты всё это записывать, можно ведь программно сделать. Итого, для каждого вида танка загружаю только спрайт, смотрящий вверх и влево(и маски). Вверх - просто отображаю вниз, а тот что влево - переворачиваю вправо и оба варианта с масками скроллирую на 1 пиксель 8 раз. Итак один спрайт с маской занимает теперь в развёрнутом виде в программе 2496 байт (!!)(а на ленте 160). Считаем - 1 наш танк + 3 вражеских разного вида - 9984 байт! Это вообще норм? + код программы должен поместиться в одну страницу. Или скролл делать на лету как раньше??? Но для этой игры важна скорость и динамичность.. Я теперь хочу удавить код, чтоб с ним в рабочей банке поместились 4 рабочих спрайта танков, распакованный уровень 624 байта(можно 312, если каждое значение в полубайт, но это уже сложности начинаются)(кстати его тоже можно убрать из этой страницы). Вобщем я разрываюсь, никогда ничего в такие жёсткие рамки загнанное не делал..

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


Понял, что не получится..

Организация почти такая же. Два экрана меняются для даблбуферинга, есть ещё копия без танков, только статика - оно используется для стирания танков и пуль. Сами уровни занимают 6.4к, хранятся в какой-то странице, это не суть важно, можно ещё поджать, если нужна будет память позарез. Для скорости и FPS 50 все танки хранятся в памяти (в страницах памяти), сдвинутые, с разными фазами гусениц. Они занимают 18 Кб. Масок в игре нет, потому как танки ездят в основном по чёрному полю, толку от масок мало. Вся графика выводится по OR с фоном. Я пытался делать разными способами, но отобразить сразу 6 танков, каждый с летящей пулей, 4 взрыва и два защитных поля вокруг танков игроков с FPS 50 удалось только так. Идеи уменьшать код не было, оно влезает в 128К и ещё остаётся где-то килобайт 5 на разные фишки. Основной код находится в единственной быстрой статической странице RAM 2 (т.е. 0x8000-0xbfff), а также частично в RAM 1 и RAM 3.

Версию для загрузки с кассеты делать не планировал, а с диска загружается достаточно быстро в уже сдвинутом виде. Нет смысла что-то генерировать на лету в ущерб качеству графики.

Dwa83
21.06.2018, 06:48
Масок в игре нет
Мне пришлось, так как есть лёд, каноничность едрить. По ор, тоже не хотелось, хотя.. в 2 раза меньше памяти на танкоспрайты.. надо посмотреть как будет смотреться. Но вроде я изначально без масок пробовал и не понравилось танк + патрон(хотя тут можно проигнорировать, но нет), танк + лёд, танк + кусты, патрон + это же. Вроде.. было плохо. Такие штуки всегда были на виду и в первую очередь добавляли минуса, по сравнению с играми, где такого не было.

отобразить сразу 6 танков,
Решил попробовать вывести против себя все 20 танков сразу, экран обновлялся раз в три секунды))) Я не дождался, пока они штаб убьют. 4 танка, как у тебя ещё терпимо, но 6 и больше - как первая версия без даблбуфера.

защитных поля вокруг
Я решил защитное поле не делать спрайтом, потому как лень 768 на один эффект - жирно.


Версию для загрузки с кассеты делать не планировал, а с диска
Мы с другом плакали тогда над нерабочим, чудесным образом попавшим к нам в руки дисководу на пятидюймовках. И проклинали изобретателя кассет, когда был безжалостно зажёван тобос, когда мы только-только начали понимать его круть)
И меня завораживали фишки в загрузчиках с кассеты)) Потому с дискетами на яче я не знаком)


Вобщем я свой предел понял, конечный вариант увидел, буду стремиться к нему, скоро доделаю) Основная цель такова, помнится кто-то говорил, помоему в теме с твоими танками, что взятие поверапов должно визуально отображаться, или что-то типа того, а это я уже сделал)

И ещё все ждут твою новоделку танков 1990(с кораблями и обязательно бритьём кустов). Тебе возможно и не понадобится( так как у тебя вроде сжатие уровней больше) но кину сюда свою поделку. После уровня пятого в танках на нес, у меня зарябило в глазах от переписи уровней цифрами, и мне стало интересно запилить программулину под мой способ сжатия. Формат такой. каждое число - 3 младших бита тип блока. Старшие, сдвинутые до нуля - количество повторений. Ноль - конец. Может кому и пригодится, так как я исходник тоже выложу.
Эх позже редактор уровней выложу, почему-то не релизится)

Epsilon
21.06.2018, 07:25
Мне пришлось, так как есть лёд, каноничность едрить. По ор, тоже не хотелось, хотя.. в 2 раза меньше памяти на танкоспрайты.. надо посмотреть как будет смотреться. Но вроде я изначально без масок пробовал и не понравилось танк + патрон(хотя тут можно проигнорировать, но нет), танк + лёд, танк + кусты, патрон + это же. Вроде.. было плохо. Такие штуки всегда были на виду и в первую очередь добавляли минуса, по сравнению с играми, где такого не было.

Решил попробовать вывести против себя все 20 танков сразу, экран обновлялся раз в три секунды))) Я не дождался, пока они штаб убьют. 4 танка, как у тебя ещё терпимо, но 6 и больше - как первая версия без даблбуфера.

Я решил защитное поле не делать спрайтом, потому как лень 768 на один эффект - жирно.


Мы с другом плакали тогда над нерабочим, чудесным образом попавшим к нам в руки дисководу на пятидюймовках. И проклинали изобретателя кассет, когда был безжалостно зажёван тобос, когда мы только-только начали понимать его круть)
И меня завораживали фишки в загрузчиках с кассеты)) Потому с дискетами на яче я не знаком)


Вобщем я свой предел понял, конечный вариант увидел, буду стремиться к нему, скоро доделаю) Основная цель такова, помнится кто-то говорил, помоему в теме с твоими танками, что взятие поверапов должно визуально отображаться, или что-то типа того, а это я уже сделал)

И ещё все ждут твою новоделку танков 1990(с кораблями и обязательно бритьём кустов). Тебе возможно и не понадобится( так как у тебя вроде сжатие уровней больше) но кину сюда свою поделку. После уровня пятого в танках на нес, у меня зарябило в глазах от переписи уровней цифрами, и мне стало интересно запилить программулину под мой способ сжатия. Формат такой. каждое число - 3 младших бита тип блока. Старшие, сдвинутые до нуля - количество повторений. Ноль - конец. Может кому и пригодится, так как я исходник тоже выложу.
65574 Вроде в релизе откомпилил..

Хорошо, что ты делаешь свою собственную версию, не дерёшь фишки с уже существующих игр - это респект! Отлично, если будет версия с масками, с 48к звуком, с быстрой кассетной загрузкой - комьюнити оценит.

Свою версию 1990 тоже сделаю, постараюсь в следующем месяце, разгружусь только немного.

Уровни под 1990 мы всем форумом рисовали (точнее, правили), используя новомодный редактор Tiled, эти уровни уже в готовом виде где-то у меня лежат. Tiled сохраняет в XML или JSON и потом оттуда довольно просто перепаковать в любой нужный бинарный формат. И не надо городить свою тулзу для отрисовки карт. Кстати Tiled уже очень многие спектрумисты юзают, в частности, Ianna в нём полностью нарисована (и не только графика, но и триггеры тоже, это выглядит забавно).

https://e-wm.org/i/E20180621-092453.png

Dwa83
21.06.2018, 07:58
И не надо городить свою тулзу
мне так интереснее, сам сделаешь - больше поймёшь)) и танки мои на самописном ассемблере написаны) тут на форуме в "разном" кидал) я упёртый велосипедодел-любитель)

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

я даже опенгл и директикс-подобное как-то пытался писать, с учителем матиматики советовался. Она мне сказала "так это матрицами делается". Я всё-таки свою херню допилил на виндовой графике, а потом узнал, то что я пилил - уже есть в директикс и опенгл. А у меня вся комната закидана листами а4 с формурами была, причём некоторые не на одном листе)):v2_lol:

Epsilon
21.06.2018, 08:15
мне так интереснее, сам сделаешь - больше поймёшь)) и танки мои на самописном ассемблере написаны) тут на форуме в "разном" кидал) я упёртый велосипедодел-любитель)

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

я даже опенгл и директикс-подобное как-то пытался писать, с учителем матиматики советовался. Она мне сказала "так это матрицами делается". Я всё-таки свою херню допилил на виндовой графике, а потом узнал, то что я пилил - уже есть в директикс и опенгл. А у меня вся комната закидана листами а4 с формурами была, причём некоторые не на одном листе)):v2_lol:

Это зависит от того, что больше зажигает - процесс или результат. На вкус и цвет, как говорится, дело хозяйское :)

Dwa83
21.06.2018, 08:48
Это зависит от того, что больше зажигает - процесс или результат
Иногда результат не очевиден. Я начинал танчики делать с уверенностью, что они нафиг никому не нужны, и я делал просто потому, что нужны были мне. Это уже в процессе дела я узнал о том, что спектрум-то живее всех живых) потому у меня больше процесс, но, это всё увеличивается, если результат нравится не только тебе) подогревает)

даже не так. (хотя процесс - часть этого). У меня идея - поучить любимые платформы
сделаю танчики на zx, а потом хочу попробовать квазатрона на нес)

результат тут будет - самоудовлетворение, а процесс и так интересен)

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

у тебя буду консультироваться, когда параметры всяких стресс пластилов нужны будут и урон дизраптором)

Epsilon
21.06.2018, 09:09
У меня идея - поучить любимые платформы
сделаю танчики на zx, а потом хочу попробовать квазатрона на нес)

результат тут будет - самоудовлетворение, а процесс и так интересен)

у тебя буду консультироваться, когда параметры всяких стресс пластилов нужны будут и урон дизраптором)

У нас ковыряльщиков тут полфорума, по части посмотреть чё в коде внутри, можешь в принципе не только у меня спрашивать.

А квазатрон да, я его очень люблю. У меня была идея немного оживить эту игру в современном плане, сделать, чтобы всеми роботами управляли люди, например, поделить всех на две или три команды. То есть игровой процесс как на спектруме, а кайф совершенно иной :)

Но это ещё в будущем, у меня тут две игры висят незаконченные, как только появится время - буду допиливать.

ZX_NOVOSIB
21.06.2018, 09:39
Меня в квазатроне дико смущает дерганый познакоместый скролл. Ведь игра у нас монохромная, а значит скролл должен быть плавный попиксельный. А тут джыга-дрыга какая-то.

Lethargeek
21.06.2018, 13:49
один спрайт с маской занимает теперь в развёрнутом виде в программе 2496 байт (!!)(а на ленте 160)
что-то многовато, откуда столько при размере 2x2 знакоместа

null_device
21.06.2018, 15:07
откуда столько при размере 2x2 знакоместа

Если сам спрайт умещается в 2х2 знакоместа, то для вывода его со смещением (при передвижении в виде спрайта) нужна еще полоска из двух знакомест, т.е. получим 2х3.

Lethargeek
22.06.2018, 06:10
Если сам спрайт умещается в 2х2 знакоместа, то для вывода его со смещением (при передвижении в виде спрайта) нужна еще полоска из двух знакомест,
не нужна (точнее, необязательна - например, в AGD циклически спрайты сдвинуты, при печати маска сдвига режет по вертикали)


т.е. получим 2х3.
и всё равно меньше 160 намного

Dwa83
22.06.2018, 08:14
что-то многовато, откуда столько при размере 2x2 знакоместа
я за 1 спрайт в данном случае принимаю спрайты одного вида танка вместе с масками

первая фаза, танк вверх 2х2 - 32 байта
вторая фаза, гусеницы сдвинуты -32 байта
общая для фаз маска - 32 байта
первая фаза, танк влево 2х3(решил хранить с полоской для скрола) - 48 байт
вторая фаза - 48 байт
маска для них - 48 байт

Я ошибся. Не 160 байт(это раньше было без движения гусениц), а 240 байт
в развернутом виде
32 байта - вверх фаза 1
32 - вверх фаза 2
32 - вверх маска

32х3 - вниз

48х8 = 384 - спрайт влево
384 - влево фаза 2
384 - влево маска

348 - вправо 1
348 - вправо 2
348 - вправо маска

Итого 2496 байт

Dwa83
22.06.2018, 19:26
Reobne, а за что спасибо?)) Мне кажется нельзя людям понапрасну спасибы раздавать, только если реально что-то полезное для тебя сделал) И кстати про задержки я помню)

Epsilon
22.06.2018, 20:04
Reobne, а за что спасибо?)) Мне кажется нельзя людям понапрасну спасибы раздавать, только если реально что-то полезное для тебя сделал) И кстати про задержки я помню)

Ну реально полезное же. Форумчане 3 дня думали как у тебя столько много получилось, а ты пришёл и разрулил )

Dwa83
24.06.2018, 00:05
Прошу потестировать новую версию

Добавлены типы танков
Добавлены типы танка игрока
Добавлена страница подсчёта очков
Мелкие поправки

Обновил шапку с новой версией
Также, как говорил ранее, выложу исходники
Листинг самой игры
65592
Пришлось всё-таки лишиться масок в угоду большего числа спрайтов..

Уровни и спрайты
65591
Загрузчик
65593

Загрузчик помещается после REM, запускается, копирует себя в другое место и принимает управление.

Epsilon
24.06.2018, 00:36
Пара замеченных косячков

1. Пол орла https://e-wm.org/i/E20180624-022652.png

2. После гибели гг осталась мигающая половинка (см справа на льду) https://e-wm.org/i/E20180624-023005.png

3. Был замечен косяк в спрайте тяжёлого танка, когда он едет вверх - при этом его задник мигает каким-то шумом. Сфоткать не успел.

4. После таблицы очков ничего не работает - игра виснет.

Dwa83
24.06.2018, 01:44
1. Пол орла https://e-wm.org/i/E20180624-022652.png
Увы я не сделал взрывы и остановку после подбития штаба. Потому так, а через пару секунд - гейм овер(если получится выудить лишней памяти, попробую что-то придумать)

2. После гибели гг осталась мигающая половинка
Есть косяк, но не так часто проявляется(с патронами тоже иногда), если будет время попытаюсь устранить

3. Был замечен косяк в спрайте тяжёлого танка, когда он едет вверх - при этом его задник мигает каким-то шумом
Тоже косяк, так же редко проявляется, причины понять не могу, как будто память под рабочие спрайты чем то иногда портится, решил оставить

4. После таблицы очков ничего не работает - игра виснет.
Мне кажется проблема в том, что игра ждет нажатия именно клавиши, а не джойстика, я об этом не подумал( Ты на джойстике играешь?

Epsilon
24.06.2018, 02:00
Мне кажется проблема в том, что игра ждет нажатия именно клавиши, а не джойстика, я об этом не подумал( Ты на джойстике играешь?

В этот раз играл на кнопках QAOPM.

Dwa83
24.06.2018, 02:55
В этот раз играл на кнопках QAOPM.
и всёже виснет или после нажатия кнопки продолжается?

Epsilon
24.06.2018, 03:11
и всёже виснет или после нажатия кнопки продолжается?

Пробовал жать абсолютно все кнопки - ничего не происходит. Просто показывает очки и всё.

Dwa83
24.06.2018, 04:27
Подскажи, на чём запускаешь? Попробую на этом же. Странно, что у меня проблем таких не было на двух эмулях

abelenki
24.06.2018, 04:36
сегодня попробовал запустить версию 1.03 на ZXMAK2 (https://github.com/atsidaev/ZXMAK2) в режиме Pentagon 128. игра загружается и намертво зависает на меню.

в режиме ZX Spectrum 128 загружается и работает без проблем.

Epsilon
24.06.2018, 05:31
Подскажи, на чём запускаешь? Попробую на этом же. Странно, что у меня проблем таких не было на двух эмулях

Играл на Viva Games. Сейчас попробовал ещё раз в режиме Scorpion 256, чтобы в дебаггере посмотреть где висит, но.. теперь оно не висит.

Зато я поймал баг с задником у танка
https://e-wm.org/i/E20180624-073000.png

https://e-wm.org/i/E20180624-073146.png

По графике можно определить откуда проблема.

Reobne
24.06.2018, 21:19
Есть предположение, что процедура FLIP_V использует стек при включённых прерываниях.

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

После загрузки,пропатчил в EmuZwin


org 9efah
FLIP_V
LD (SAVE_SP),SP

PUSH HL
LD DE,94
ADD HL,DE
POP DE
di
LD SP,HL


LD B,16
FL_V LD (CPY_AD+1),DE
CPY_AD LD HL,(00)
PUSH HL
INC DE
INC DE
DJNZ FL_V
LD SP,0
SAVE_SP equ $-2
ei
RET
Вроде ничего не портится.

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

Тупо добавил EI и DI. Два байта выиграл за счёт непосредственной загрузки SAVE_SP.

abelenki
25.06.2018, 00:11
HACK PACK - TANK 1990 v1.03:

https://www.worldofspectrum.org/forums/discussion/56279/hack-pack-tank-1990-v1-03

37786,0 - INFINITE LIVES
47709,X X=LIVES

Dwa83
25.06.2018, 02:24
Есть предположение, что процедура FLIP_V использует стек при включённых прерываниях.
Да, прерывания не были отключены.. Видимый результат говорит о том же, только я понять не мог. Во время копирования спрайта происходило прерывание, и всякую бяку мне в спрайт как в стек напихивало.

Сделал новую версию. Почищу шапку от старых.
Исправлен баг с несканчаемыми уровнями(ага, после последнего левела начинались ПЗУ-уровни))
Исправлен баг, когда даже при взорваной базе уровень мог закончиться победой, если все враги убиты.
Добавлена прочность кирпичных стенок. Теперь по дефолту не сразу ломается.
Добавлена "красивость" с базой(теперь не будет по полбазы пропадать).
Вышеописаный фикс.
И по мелочи.

Блин, если опять баги повыгазят, я застрелюсь)))

Epsilon
25.06.2018, 02:40
Блин, если опять баги повыгазят, я застрелюсь)))

Почитай про закон Парето.
https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BA%D0%BE%D0%BD_%D0%9F%D0%B0%D1%80% D0%B5%D1%82%D0%BE

Из него следует, что 20% твоих усилий уходит на написание игры, а 80% усилий всегда будет уходить на доведение игры "до ума". И это проверено много раз лично мной и ещё кучей народа. Так что всё норм. :D

abelenki
25.06.2018, 02:47
версия 1.04 стала нормально запускаться в режиме Pentagon 128.

Epsilon
25.06.2018, 03:03
версия 1.04 стала нормально запускаться в режиме Pentagon 128.

Ещё бы дисковую версию... долго TZX грузится.

Dwa83
25.06.2018, 03:53
версия 1.04 стала нормально запускаться в режиме Pentagon 128.
Отлично)Кстати, я 1.04 выложил, потом увидел неприятный недочёт при выводе очков после уровня, и минут через 5 перезалил. А ты до этого успел ссылку на аттач ухватить))

Ещё бы дисковую версию... долго TZX грузится.
Я не знаком с тр-дос и работой с дисками, так как на спеке только майфун был. Если не лень, сделай на диске)). Можно даже с TZX выдернуть. Первый блок грузится с #8000, второй - с #C000. Без всяких наворотов)

Epsilon
25.06.2018, 04:07
Я не знаком с тр-дос и работой с дисками, так как на спеке только майфун был. Если не лень, сделай на диске)). Можно даже с TZX выдернуть. Первый блок грузится с #8000, второй - с #C000. Без всяких наворотов)

О, у нас тут есть мастера дискофикации :) Просто нужно немного подождать! :v2_dizzy_step:

abelenki
25.06.2018, 06:23
Отлично)Кстати, я 1.04 выложил, потом увидел неприятный недочёт при выводе очков после уровня, и минут через 5 перезалил. А ты до этого успел ссылку на аттач ухватить))
ага, даже запостить (https://www.worldofspectrum.org/forums/discussion/comment/942686/#Comment_942686) его на WoS успел. :D

спасибо, заново скачал.

Dwa83
25.06.2018, 06:37
его на WoS
кстати, ссылки на старые версии теперь биться будут, я немного разобрался с вложениями и старые версии убрал

abelenki
25.06.2018, 06:44
кстати, ссылки на старые версии теперь биться будут, я немного разобрался с вложениями и старые версии убрал
это понятно, разумеется. по-этому я там в последнем сообщении выкладываю актуальную ссылку.

creator
25.06.2018, 07:19
SCL :v2_dizzy_biggrin2:

abelenki
25.06.2018, 08:55
Dwa83, добавь плиз TR-DOS-версию creator'а в первое сообщение.

ZX_NOVOSIB
25.06.2018, 10:45
abelenki, не стоит. Версия не рабочая. Видимо где-то в процессе взлома/отээрдошивания произошёл сбой.

creator
25.06.2018, 10:54
ZX_NOVOSIB, кстати да, я опечатался в адресе загрузки второго блока, 49192 влепил. Исправил, перезалил.