JAMGame by Marco's Retrobits
JAMGame – еще одна игра на развитие памяти
Видеоигра BASIC 10-Liner для Sinclair ZX81
Марко Варезио (Marco's Retrobits)https://retrobits.itch.io
Блог на английском языке: https://retrobits.altervista.org
Блог на итальянском языке: https://somebitsofme.altervista.org
Канал YouTube: https://www.youtube.com/channel/UCWTxG8paNsOUEU5mPcNklXA
Скачать/играть онлайн: https://retrobits.itch.io/jamgame
Видео игрового процесса:
JAMGame – это еще одна видеоигра на развитие памяти, созданная по мотивам известной электронной игры Simon для домашнего компьютера Sinclair ZX81.
JAMGame – это моя третья запись в 11 выпуске (2022 г.) конкурса BASIC 10 Liner Contest: https://basic10liner.com).
Несмотря на то, что некоторые игры на запоминание уже были отправлены на прошлые выпуски конкурса, я не знаю версии из 10 утверждений, поэтому я закодировал ее ;-)
Описание игры
JAMGame — это игра на развитие памяти для одного игрока.
Раунд в игре состоит из того, что компьютер показывает последовательность псевдослучайных чисел в диапазоне от 1 до 4, после чего игрок должен воспроизвести этот порядок, нажав соответствующие клавиши, а затем Enter.
По ходу игры количество нажимаемых кнопок увеличивается. Начальная длина последовательности равна 3.
Если игрок вводит неправильную последовательность, игра окончена, и программу необходимо снова запустить для следующего воспроизведения.
Два чередующихся графических символа помогают различать отдельные цифрыначать размножаться.
Когда последовательность, представленная компьютером, заканчивается, рядом с последней цифрой отображается символ ░.
Описание программы
Переменные
`L`: длина воспроизводимой последовательности
`A$`: строка, содержащая воспроизводимую последовательность
`B$`: ввод игрока; должна соответствовать строке `A$`
`I`: Итератор цикла
Список программ
Программа состоит из 10 строк, каждая из которых короче 80 символов.
Самый сложный аспект программирования ZX81 BASIC заключается в том, что интерпретатор допускает только один оператор в строке.
```
1 ПУСТЬ L=3 2 ПОЗВОЛЬТЕ $="" 3 ДЛЯ I=1 К L 4 ПУСТЬ A$=A$+STR$(1+INT(RND*4)) 5 НАПЕЧАТАТЬ НА 0,0;"УРОВЕНЬ:";L-2,,A$(I);" ";CHR$(9+(I/2=INT(I/2))*(I```
Следующий листинг можно использовать с инструментом ZXText2P (http://freestuff.grok.co.uk/zxtext2p/index.html), чтобы сделать файл ".P" пригодным для загрузки в эмуляторы X81.
Объяснение исходного кода
Инициализации:
Строка 1 устанавливает начальную длину последовательности `L` равной 3.
Подсказка: здесь вы можете изменить начальную длину `L` последовательности.
Если вы это сделаете, вы также должны изменить в строке 5 значение, вычитаемое из `L`, которое определяет номер текущего уровня, на начальное значение `L` - 1.
Игровой цикл:
Строка 2 сбрасывает строку, содержащую последовательностьчтобы воспроизвести `A$` в пустую строку.
Строки с 3 по 6 содержат цикл, который выполняется `L` раз.
В строке 4 случайным образом выбирается цифра от 1 до 4, которая добавляется к последовательности `A$`.
Подсказка**: вы можете уменьшить или расширить диапазон цифр в последовательности, изменив последнее значение (4) в строке 4.
Строка 5 печатает случайно выбранную цифру.
Рядом с цифрой поочередно отображаются 2 графических символа (заштрихованные прямоугольники половинной высоты с кодами 9 и 10), чтобы помочь определить, когда печатается новая цифра. Когда напечатана последняя цифра, т. е. когда итератор `I` равен `L`, отображается символ заштрихованного прямоугольника полной высоты (код: 8).
Текущий уровень также печатается.
Строка 7 предлагает игроку ввести `B$`.
Строка 8 сравнивает ввод игрока `B$` со строкой, чтобы воспроизвести `A$`. Если они отличаются, игра окончена и программа останавливается (на экране отображается сообщение `9/8`). В противном случае проигрыватель успешно воспроизвел последовательность, и выполнение программы продолжается до строки 9.
Строка 9 увеличивает длину `L` последовательности для следующего раунда.
Строка 10 возвращает к началу игрового цикла со строки 2.
Инструкции по загрузке
Для JAMGame требуется настоящий или эмулированный ZX81 с пакетом оперативной памяти не менее 4 КБ.
Эмулятор EightyOne
Следующие инструкции относятся к эмулятору EightyOne (https://sourceforge.net/projects/eightyone-sinclair-emulator/).
Перейти к"Параметры" -> "Оборудование..." и убедитесь, что выбран ZX81 с пакетом оперативной памяти не менее 4 КБ.
Откройте "Инструменты" -> "Диспетчер лент..." и убедитесь, что выбраны параметры автоматической загрузки.
Выберите «Открыть ленту…» в меню «Файл», чтобы найти и загрузить файл **jamgame.p**.
В следующие секунды, если эмулятор настроен на автоматическую загрузку изображений ленты, вы должны увидеть что-то происходящее на экране и, наконец, белый экран с сообщением «0/0» внизу.
Если ничего не происходит, вы должны вручную запустить загрузку образа ленты, нажав клавишу J, а затем дважды нажав SHIFT + P. Вы должны увидеть сообщение `LOAD ""`, за которым следует черный курсор.
Нажмите ENTER, чтобы начать загрузку.
Чтобы запустить программу, нажмите клавишу R. Вы должны увидеть «RUN», за которым следует черный курсор в нижней части экрана. Наконец, нажмите ENTER.
Совет по взлому: вы можете изменить псевдослучайную последовательность, введя команду `RAND` (клавиша T и Enter перед запуском игры).
Чтобы просмотреть программу, нажмите клавишу K. Вы должны увидеть «СПИСОК», за которым следует черный курсор в нижней части экрана. Наконец, нажмите ENTER.
Онлайн-эмулятор JtyOne ZX81
В качестве альтернативы, если ваш веб-браузер поддерживает Javascript, вы можете играть прямо в своем браузере (на основе онлайн-эмулятора ZX81 JtyOne (http://www.zx81stuff.org.uk/zx81/jtyone.html)).
Просто перейдите по этой ссылке: https://retrobits.itch.io/jamgame, чтобы перейти на страницу JAMGame на itch.io, где размещена играмодуль и загрузки.
Как скачать JAMGame by Marco's Retrobits через торрент
Всего несколько простых шагов:
- Устанавливаем программу μTorrent, через которую мы будем скачивать торренты
- Выбираем и скачиваем подходящий торрент-файл репака JAMGame by Marco's Retrobits
- Двойным кликом открываем скаченный файл, программа μTorrent запустится автоматически и предложит выбрать место для сохранения дистрибутива.
- После того как репак скачается, запускайте его. Начнется установка и... это все, приятной игры!