{"id":1822,"date":"2023-02-06T15:28:12","date_gmt":"2023-02-06T05:58:12","guid":{"rendered":"https:\/\/cosmicheroes.space\/blog\/?p=1822"},"modified":"2023-02-06T15:28:12","modified_gmt":"2023-02-06T05:58:12","slug":"map-generation-cities-and-towns","status":"publish","type":"post","link":"https:\/\/cosmicheroes.space\/blog\/index.php\/2023\/02\/06\/map-generation-cities-and-towns\/","title":{"rendered":"Map Generation &#8211; Cities and Towns"},"content":{"rendered":"\n<p><a href=\"https:\/\/github.com\/LAVS-TM\/Map-Generation\">https:\/\/github.com\/LAVS-TM\/Map-Generation<\/a><\/p>\n\n\n\n<p>A program that can generate cities and towns, medieval Voronoi style.  Along with a viewer that can produce graphcis the base output is json, which gives you vector data to use with other things.  Very nice!<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" src=\"https:\/\/i0.wp.com\/github.com\/LAVS-TM\/Map-Generation\/raw\/main\/doc\/CityExample.png?w=525&#038;ssl=1\" alt=\"\" data-recalc-dims=\"1\"\/><figcaption class=\"wp-element-caption\">Sample city<\/figcaption><\/figure>\n\n\n\n<p>Here is an example of a possible&nbsp;<strong>configuration<\/strong>&nbsp;for the city to be generated:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">city = City(10000, 10000, has_walls=True, has_castle=True)\ntools.json(city, '\/generated_city\/city.json')<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>https:\/\/github.com\/LAVS-TM\/Map-Generation A program that can generate cities and towns, medieval Voronoi style. Along with a viewer that can produce graphcis the base output is json, which gives you vector data to use with other things. Very nice! Here is an example of a possible&nbsp;configuration&nbsp;for the city to be generated: city = City(10000, 10000, has_walls=True, has_castle=True) &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/cosmicheroes.space\/blog\/index.php\/2023\/02\/06\/map-generation-cities-and-towns\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Map Generation &#8211; Cities and Towns&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","jetpack_publicize_message":"","jetpack_is_tweetstorm":false,"jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","enabled":false}}},"categories":[217],"tags":[525,100,524,325,527,526],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/paET2V-to","jetpack-related-posts":[{"id":1842,"url":"https:\/\/cosmicheroes.space\/blog\/index.php\/2023\/02\/07\/map-generation-part-2\/","url_meta":{"origin":1822,"position":0},"title":"Map-Generation part 2","author":"richard","date":"February 7, 2023","format":false,"excerpt":"I have started looking at adapting this for HexDescribe type reasons. For example: - https:\/\/github.com\/bluetyson\/Map-Generation\/blob\/main\/src\/map.py https:\/\/chgowiz-games.blogspot.com\/ is working on a epic random generator for a campaign you can read about at his blog - using HexDescribe https:\/\/campaignwiki.org\/hex-describe You can see some examples here https:\/\/docs.google.com\/spreadsheets\/d\/1G8AZf2tBOtGYr5AEKis7_AZYpJ1_T18LFYp_mi_rikY\/edit#gid=1019219400 and https:\/\/pastebin.com\/raw\/W9zgH3pN Borrowing his business classifications\u2026","rel":"","context":"In &quot;Data Science&quot;","block_context":{"text":"Data Science","link":"https:\/\/cosmicheroes.space\/blog\/index.php\/category\/data-science\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/cosmicheroes.space\/blog\/wp-content\/uploads\/2023\/02\/image-5.png?resize=350%2C200&ssl=1","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/cosmicheroes.space\/blog\/wp-content\/uploads\/2023\/02\/image-5.png?resize=350%2C200&ssl=1 1x, https:\/\/i0.wp.com\/cosmicheroes.space\/blog\/wp-content\/uploads\/2023\/02\/image-5.png?resize=525%2C300&ssl=1 1.5x, https:\/\/i0.wp.com\/cosmicheroes.space\/blog\/wp-content\/uploads\/2023\/02\/image-5.png?resize=700%2C400&ssl=1 2x"},"classes":[]},{"id":1806,"url":"https:\/\/cosmicheroes.space\/blog\/index.php\/2023\/02\/06\/mokuy-australia-hex-mapping-hex-describe-and-hex-mapper\/","url_meta":{"origin":1822,"position":1},"title":"Mokuy &#8211; Australia hex mapping, Hex Describe and Hex Mapper","author":"richard","date":"February 6, 2023","format":false,"excerpt":"Alex Schroeder has an 'Alpine' hex map generation option in https:\/\/campaignwiki.org\/hex-describe\/ . This allows you to tweak heights for maps. Also in TextMapper similarly. However, his native Switzerland and Australia are somewhat different in size and smoothness. These are great and the code is also here:- https:\/\/github.com\/kensanata?tab=repositories Australia DTM Histogram\u2026","rel":"","context":"In &quot;Data Science&quot;","block_context":{"text":"Data Science","link":"https:\/\/cosmicheroes.space\/blog\/index.php\/category\/data-science\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1591,"url":"https:\/\/cosmicheroes.space\/blog\/index.php\/2023\/01\/05\/alex-schroeders-gridmapper\/","url_meta":{"origin":1822,"position":2},"title":"Alex Schroeder&#8217;s gridmapper","author":"richard","date":"January 5, 2023","format":false,"excerpt":"https:\/\/alexschroeder.ch\/wiki\/Gridmapper This is excellent - so you can create a map by typing, or by code, or via the interface - and save and download in multiple formats. Thanks very much Alex!","rel":"","context":"In &quot;Data Science&quot;","block_context":{"text":"Data Science","link":"https:\/\/cosmicheroes.space\/blog\/index.php\/category\/data-science\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1809,"url":"https:\/\/cosmicheroes.space\/blog\/index.php\/2023\/02\/06\/welsh-piper-hex-map-algorithm-python\/","url_meta":{"origin":1822,"position":3},"title":"Welsh Piper hex map algorithm &#8211; Python","author":"richard","date":"February 6, 2023","format":false,"excerpt":"In relation to HexDescribe and TextMapper - the random or Smale algorithm is the Welsh Piper's. https:\/\/welshpiper.com\/hex-based-campaign-design-part-1\/ There's a follow on part linked for stocking hexes. I translated this to python - partly as a ChatGPT exercise. https:\/\/github.com\/bluetyson\/Dungeon23-Mokuy\/blob\/main\/smale.py Where I did a few tweaks of the Primary and Secondary maps\u2026","rel":"","context":"In &quot;Data Science&quot;","block_context":{"text":"Data Science","link":"https:\/\/cosmicheroes.space\/blog\/index.php\/category\/data-science\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1417,"url":"https:\/\/cosmicheroes.space\/blog\/index.php\/2022\/01\/07\/faserip-slugfest-hawkeye-vs-boomerang\/","url_meta":{"origin":1822,"position":4},"title":"FASERIP-Slugfest: Hawkeye vs Boomerang","author":"richard","date":"January 7, 2022","format":false,"excerpt":"Hawkeye Two missile weapon specialists. Their FASE stats are identical. They are both Weapon Specialists in their chosen projectiles. Both with Remarkable Agility, giving them Amazing checks for extra attacks. If you assign the damage for a boomerang and an arrow to be the same, not counting the greater array\u2026","rel":"","context":"In &quot;Data Science&quot;","block_context":{"text":"Data Science","link":"https:\/\/cosmicheroes.space\/blog\/index.php\/category\/data-science\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1425,"url":"https:\/\/cosmicheroes.space\/blog\/index.php\/2022\/01\/15\/faserip-slugfest-the-longshot-comes-in\/","url_meta":{"origin":1822,"position":5},"title":"FASERIP-Slugfest: The Longshot comes in","author":"richard","date":"January 15, 2022","format":false,"excerpt":"Longshot https:\/\/commons.wikimedia.org\/wiki\/File:SDCC13_-Longshot_and_Dazzler(9345244747).jpg Taking the same Danger Room approach as with Domino, Longshot vs a robot double of himself. Battles: 10000; Sum of rounds: 30313; Longshot: 0.78 \u00b1 0.0; Longshot No Luck: 0.22 \u00b1 0.0; Team Longshot = winning battles: 7753; perfect battles: 0; close-call battles: 0;Team Longshot No Luck =\u2026","rel":"","context":"In &quot;Data Science&quot;","block_context":{"text":"Data Science","link":"https:\/\/cosmicheroes.space\/blog\/index.php\/category\/data-science\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1822"}],"collection":[{"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/comments?post=1822"}],"version-history":[{"count":1,"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1822\/revisions"}],"predecessor-version":[{"id":1823,"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/posts\/1822\/revisions\/1823"}],"wp:attachment":[{"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/media?parent=1822"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/categories?post=1822"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cosmicheroes.space\/blog\/index.php\/wp-json\/wp\/v2\/tags?post=1822"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}