dcsobral Posted May 2, 2022 Share Posted May 2, 2022 (edited) This is a set of tools made to run on WSL on Windows. There's a list of requirements on the README, as well as the description of most tools and how I usually use them, but I'll cover the basics here. Seed Generator This will start 7 Days to Die, generate a random seed with whatever settings you like, generate a map preview for that seed, save a zip file with that preview and other information, and then repeat. The seeds are generated in a temporary folder and deleted afterwards, so it won't fill your hd with trash. For example, if I want to generate 50 seeds of size 8192 with towns set to many I'd run this: genWorlds.sh --towns=Many 50 8192 It also includes a "best base location score" feature that can be used to skip crappy seeds. It's a formula based on what can be found within 1km of the base location and somewhat configurable. It can be downloaded from here: https://github.com/dcsobral/seedGen Seed Analysis So you generated hundreds of seeds, but how do you find a good seed to play on? This is the original motivation for these tools, and it is something that is still evolving. Here are some ideas: How many prefabs does a seed have? How many unique prefabs does a seed have? How many skyscrapers? How many tier 5 prefabs? Or the other tiers, for that matter. How many traders? Here's a list of my top 15 prefabs, how many of them does the seed have? There are tools to display lists of all generated seeds, sorted by any one of these criteria and with the number. For example, this displays three columns with the seeds sorted by number of tier 3, tier 4 and tier 5 prefabs in each: allTiers.sh There are two problems with the criteria above. First, they are about the whole map but I don't like travelling far from my base. Second, how do you balance these numbers? What if the seed with most unique prefabs (that is, the least boring seed) doesn't have any tier 5 buildings? So I developed a criteria I call "best base location score". It is a number made of the following things: How many traders with 1km? How many unique tier 3 prefabs within 1km? How many unique tier 4 prefabs within 1km? How many unique tier 5 prefabs within 1km? How many unique stores within 1km? How many unique industrial prefabs within 1km? How many downtown prefabs within 1km? How many of my top 15 prefabs with 1km? I find the location with the best score on each seed, then I mark the location on the map preview, and I can list the seeds sorted by that score. I can also skip seeds with a low score during generation, to save time discard seeds I'm never going to use anyway. But there's only so much number can tell. One cannot make a decision without looking at the map preview, but I don't want to keep juggling images on my desktop either. So there's also a tool that will generate images with multiple seed preview thumbnails side by side, so I can easily compare multiple seeds at the same time. Seed Previewer Though this is usually done by the seed generator automatically, it does deserve separate comment. The seed previewer is actually made of multiple steps. The first tool creates an image based on biomes, elevation, water, radiation and roads. This is relatively fast because it is just composing images created during seed generation. The second tool adds all prefabs to the image. It uses the prefab preview images that come with 7 Days to Die so you can identify the prefabs on the map. It also adds color-coded borders to each prefab to make it easy to identify the zoning of each city on the map without having to zoom in on each one. The third tool overlays a circle representing the best base location of that seed and covering all the prefabs that are within 1km of that location. How do I use it? Here's more or less what I do every time I want to find new seeds (like when a new alpha comes out): cd $F7D2 # Go to the game folder RATING_THRESHOLD=10000 # Discard crappy seeds -- I usually fine tune this number genWorlds.sh 100 8192 # Leave it running through the night cd previews # All zip files are kept here prefabs.sh # Extract all prefabs.xml files for analysis previews.sh # Extract all previews makeMontage.sh # Creates thumbnail montage images, up to 20 seeds each # Open the montage images -- 8192*.png cd 8192 # This is where those prefabs.xml are extracted to greatest.sh allSorts.sh # Sort seeds by number of prefabs, number of unique prefabs and base rating, highlighting the top ones greatest.sh allTiers.sh # Sort seeds by number of unique tier 3, 4 and 5 prefabs greatest.sh allSpecials.sh # Sort by numberof unique downtown, industrial, stores, top 7 and top 15 prefabs # Look up the best seeds on the montages showSeed.sh seed-size # Opens the seed preview rate.py seed-size # Shows which prefabs are within the best base location range, and the exact coordinates Edited May 3, 2022 by dcsobral remove examples to place it with follow up post (see edit history) 2 Link to comment Share on other sites More sharing options...
dcsobral Posted May 3, 2022 Author Share Posted May 3, 2022 "greatest.sh allSorts.sh" example: "greatest.sh allTiers.sh" example: "greatest.sh allSpecials.sh" example: "rate.py InexpugnablePlutarch-8192.xml" example: 1 Link to comment Share on other sites More sharing options...
dcsobral Posted May 3, 2022 Author Share Posted May 3, 2022 Seed montage examples: Seed preview example (InexpugnablePlutarch-8192): 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now