adding world generation support code