Запазване на текстова приключенска игра

Търся ефективен начин да запазя моята игра, кодирана на python. Разгледах pickle, но не съм сигурен, че ще отговаря на нуждите ми, тъй като има много информация, която трябва да бъде запазена.

Начинът, по който разбирам pickle, е, че ще вземе каквото и да му дам и ще го изхвърли във файл, което звучи страхотно. Но не само имам героя на играча, който трябва да спася, има и стаите, в които героят вече е бил, състоянието на стаите, дали потребителят е отворил сандъци със съкровища и т.н. И ако разбирам правилно pickle, ще трябва да въведа всяка стая ръчно, за да работи.

Има ли по-добър начин да направите това? Би ли било по-добре да създам някаква база данни? Или просто не използвам туршия правилно?


person Macimoar    schedule 17.02.2018    source източник
comment
Моля, покажете някакъв код, където се опитвате да турширате. Като цяло pickle е страхотен за запазване на обекти, така че защо не създадете клас играч и (класна стая може би...) добавите постиженията като атрибути и мариновате обекта?   -  person NewNewton    schedule 17.02.2018


Отговори (1)


Може би пропускам нещо, но защо не поставите всички данни, които споменавате, в речник. Може дори да е многостепенен речник. Нещо като:

{
"player_info":{"name":"Bart", ..}, 
"current_state_of_game":{"cur_location":"library", "prior_room":"kitchen", ..}
}

Тогава туршия?

person kdragger    schedule 17.02.2018