Я создаю игру, которая использует процедурно сгенерированные уровни, и когда я тестирую, я часто хочу воспроизвести уровень. Прямо сейчас я не нашел способа сохранить уровни, но я подумал, что более простым решением было бы просто повторно использовать начальное число, используемое случайным модулем Python. Однако я попытался использовать и random.seed()
, и random.setstate()
, и ни один из них, похоже, не дает достоверных результатов. Как ни странно, иногда я получаю один и тот же уровень несколько раз подряд, если повторно использую семя, но оно никогда не будет на 100% надежным. Должен ли я просто сохранить уровень (как файл, содержащий его информацию)?
Edit:
Спасибо за помощь всем. Оказывается, моя проблема возникла из-за того, что я случайно выбирал спрайты из групп в Pygame, которые извлекаются в неупорядоченных словарных представлениях. Я изменил свой код, чтобы не использовать группы спрайтов Pygame для этой части, и теперь он отлично работает.