Я не вижу ответа на этот вопрос здесь, на SO, который заставляет меня бояться, что это невероятно просто, и я просто что-то пропустил, но здесь идет.
Фон, не стесняйтесь пропустить: мне нужен один курс для моей степени бакалавра, который я пропустил много лет назад. Теоретически это компьютерная графика, но с тех пор, как я ее покинул, стало больше Game Development. И это здорово, потому что для меня это более интересно, чем алгоритмы заполнения и переводы, и то, что было раньше. Это 4-й курс, который предлагается только раз в год, но мне удалось поговорить с отделом, чтобы позволить мне пройти 4-летнее независимое исследование по той же теме и назвать это достаточно хорошим.
Профессор "работает" с независимым исследованием не учит реальному курсу компьютерной графики, поэтому, когда он умный парень, это не его поле. Поэтому большинство моих вопросов оставляют мне, учебник и интернет. Вы знаете... как независимое исследование должно быть.:)
/фон
У меня есть приятель, которому нравится разрабатывать игровые системы для удовольствия. Я планирую взять одну из своих настольных игр и превратить ее в компьютерную игру, используя XNA.
Я не предвижу никаких непреодолимых проблем с игровой механикой, но мне интересно, как большинство игр сохраняют свой контент? Я имею в виду это несколькими путями и, надеюсь, я могу выразить их ясно.
Возьмите случай любой RPG, которую вы когда-либо играли. Вы можете нажать кнопку "Сохранить" и сохранить мир, информацию о вашем персонаже и любую другую информацию. Затем позже вы можете нажать кнопку "Загрузить" и вернуть его.
Или случай диалога NPC. Когда я натыкаюсь на Merchant # 853, он случайно выплевывает один из трех разных приветствий.
Есть и другие, о которых я могу думать, но они действительно являются вариациями одной и той же темы. Даже с этими двумя примерами мне кажется, что тот же самый механик может быть использован, но что это за механик?
Я занимаюсь веб-разработкой в течение многих лет, поэтому мой ум автоматически перескакивает на "базы данных!". База данных - это решение любой проблемы. И я вижу, как он может работать здесь, но накладные расходы кажутся довольно крутыми. "Здесь моя компиляция с 6mb... oh и установка MySQL на 68mb". Или даже хуже, поскольку я использую XNA, может быть, мне нужно найти способ связывания SQL Server.:)
Я думал, может быть, XML, но мне это тоже не нравится. Как это будет работать, если я захочу запустить XBox? Или Зуне? (Это не обязательно для того, что я делаю, но там должно быть решение, которое учитывает их.)
Кто-нибудь знает секрет? Или все-таки есть идеи?
Спасибо Джефф