Страницы

Поиск по вопросам

среда, 29 января 2020 г.

Как сохранить прогресс в консольной игре на Java?

#java


Все знают, что при изучении программирования нужно, что-то писать. Писать калькуляторы
и банкоматы надоело :)
Хочу в рамках обучения Java, написать и по мере изучения дописывать консольную игру,
но если ее сделать не коротенькую, хотелось бы иметь возможность как и в любой игре
сохранится и когда-то продолжить играть. 
Подскажите как это сделать или хотя бы куда смотреть ?
    


Ответы

Ответ 1



Каким образом хранить прогресс игры? Если тебе нужно сохранять процесс - то это безусловно запись и чтение из файла. В Джаве это довольно просто, поэтому с освоением проблем не будет. Также ты можешь сериализировать объект, то есть записать сущность объектов. Крутая штука, но новичку не стоит заморачиваться. Ну а вообще, для более простого извлечения данных можно связать игру с БД или в хранить данные в xml-файле. Это очень элегантные способы извлечения и записи данных, но опять же для новичков сложновато. Что именно хранить? Ты можешь сохранять значения полей (к примеру, координаты расположения игрока, уровень, на котором остановился игрок, место сохранения и т.д) Ну, и от себя добавлю, что не стоит тратить время на масштабные консольные игры или приложения. Да, масштаб - это хорошая практика, но зачем топтаться на одном месте, если есть в языке более крутые и менее примитивные вещи, которые сделают твой код более изящным, а тебя более привлекательным на рынке труда. Да, с примитивом интересно писать что-то необычное, особенно когда ты новичок, но когда твое детище примет дорогой стоящий вид - это совсем другое чувство.

Ответ 2



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

Ответ 3



Полагаю, что в вашем случае "консольной игры" можно использовать обычный текстовый файл. Куда при "сохранении" можно закидывать данные и при "загрузке" вынимать.

Комментариев нет:

Отправить комментарий