From 6341e9170434cfaecd97f95745ff8472f7b546e7 Mon Sep 17 00:00:00 2001 From: ELginas Date: Sun, 16 Jan 2022 14:01:26 +0200 Subject: [PATCH] Fixed config seed --- feather/server/src/main.rs | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/feather/server/src/main.rs b/feather/server/src/main.rs index 615857028..63f5d0908 100644 --- a/feather/server/src/main.rs +++ b/feather/server/src/main.rs @@ -1,4 +1,10 @@ -use std::{cell::RefCell, rc::Rc, sync::Arc}; +use std::{ + cell::RefCell, + collections::hash_map::DefaultHasher, + hash::{Hash, Hasher}, + rc::Rc, + sync::Arc, +}; use anyhow::Context; use base::anvil::level::SuperflatGeneratorOptions; @@ -64,7 +70,11 @@ fn init_world_source(game: &mut Game, config: &Config) { // world otherwise. This is a placeholder: // we don't have proper world generation yet. - let seed = 42; // FIXME: load from the level file + let seed = config.world.seed.parse().unwrap_or_else(|_| { + let mut hasher = DefaultHasher::new(); + config.world.seed.hash(&mut hasher); + hasher.finish() + }); let generator: Arc = match &config.world.generator[..] { "flat" => Arc::new(SuperflatWorldGenerator::new(