dungeon-generator.html 50 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020
  1. <!doctype html>
  2. <html lang="en" class="no-js">
  3. <head>
  4. <meta charset="utf-8">
  5. <meta name="viewport" content="width=device-width,initial-scale=1">
  6. <link rel="prev" href="flow-editor.html">
  7. <link rel="next" href="../advanced-features/index.html">
  8. <link rel="icon" href="../assets/images/favicon.ico">
  9. <meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.11">
  10. <title>Dungeon Generator - DunGen</title>
  11. <link rel="stylesheet" href="../assets/stylesheets/main.4af4bdda.min.css">
  12. <link rel="stylesheet" href="../assets/stylesheets/palette.06af60db.min.css">
  13. <script src="https://unpkg.com/iframe-worker/shim"></script>
  14. <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
  15. <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback">
  16. <style>:root{--md-text-font:"Roboto";--md-code-font:"Roboto Mono"}</style>
  17. <link rel="stylesheet" href="../stylesheets/extra.css">
  18. <script>__md_scope=new URL("..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
  19. </head>
  20. <body dir="ltr" data-md-color-scheme="slate" data-md-color-primary="black" data-md-color-accent="cyan">
  21. <input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
  22. <input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
  23. <label class="md-overlay" for="__drawer"></label>
  24. <div data-md-component="skip">
  25. <a href="#core-concepts-dungeon-generator" class="md-skip">
  26. Skip to content
  27. </a>
  28. </div>
  29. <div data-md-component="announce">
  30. </div>
  31. <header class="md-header md-header--shadow" data-md-component="header">
  32. <nav class="md-header__inner md-grid" aria-label="Header">
  33. <a href="../index.html" title="DunGen" class="md-header__button md-logo" aria-label="DunGen" data-md-component="logo">
  34. <svg width="100%" height="100%" viewBox="0 0 258 272" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
  35. <path d="M79,20.998C103.163,20.998 126.827,20.993 150.49,21.002C156.512,21.004 156.994,21.502 157,27.603C157.008,36.435 157.275,45.279 156.89,54.094C156.689,58.68 158.685,61.484 161.849,64.242C170.723,71.978 179.515,79.812 188.188,87.772C190.849,90.214 193.071,93.217 195.28,95.995C199.425,101.209 199.993,100.532 203.73,100.441C209.056,100.311 214.403,100.217 219.713,100.549C222.988,100.754 224.083,99.873 224.059,96.517C223.93,78.354 223.952,60.189 224.044,42.025C224.059,38.949 223.341,37.434 219.868,37.603C214.383,37.872 208.877,37.791 203.381,37.715C199.579,37.663 197.517,38.715 197.907,43.168C198.327,47.964 197.807,52.836 198.065,57.655C198.263,61.366 196.432,62.919 193.348,61.885C188.656,60.311 184.193,58.029 179.724,55.858C179.188,55.598 179.033,54.157 179.028,53.262C178.979,44.43 179.007,35.598 178.995,26.766C178.99,22.857 180.241,20.823 184.822,20.897C200.816,21.158 216.816,20.988 232.814,21.004C239.132,21.01 240.996,22.894 240.998,29.241C241.006,56.07 241.005,82.9 240.998,109.729C240.997,114.795 238.959,117.469 233.922,117.935C228.649,118.423 223.32,118.407 218.015,118.42C208.355,118.444 198.68,117.994 189.04,118.408C184.225,118.615 181.96,116.755 180.231,112.653C175.241,100.811 167.104,91.401 156.54,84.26C153.778,82.394 150.001,81.189 146.67,81.142C126.51,80.86 106.344,81.107 86.182,80.92C81.723,80.878 80.502,82.453 80.517,86.753C80.64,122.394 80.606,158.037 80.499,193.679C80.487,197.764 81.821,199.148 86.047,199.093C103.375,198.866 120.707,198.998 138.038,198.998C159.059,198.998 178.198,184.319 182.849,163.942C184.15,158.243 183.93,152.135 183.91,146.215C183.896,141.846 185.254,139.882 189.885,139.936C204.381,140.105 218.88,139.974 233.378,140.01C238.862,140.024 240.989,142.215 240.993,147.822C241.011,180.317 241.012,212.813 240.992,245.308C240.988,250.939 238.967,252.977 233.218,252.985C205.722,253.022 178.226,253.017 150.73,252.989C145.524,252.983 144.074,251.47 144.001,246.325C143.982,244.992 144.14,243.641 143.973,242.329C143.34,237.341 146.132,235.979 150.411,235.99C160.395,236.016 171.06,236.112 181.183,236.112C181.349,229.59 181.592,223.106 181.957,216.723C182.112,214.015 183.166,213.054 185.926,212.937C199.005,212.385 199.002,212.308 199.002,225.465C199.002,236.846 199.003,236.883 210.211,236.618C214.669,236.512 219.122,236.203 223.998,235.966L223.998,215.809C223.998,197.812 223.911,179.813 224.071,161.817C224.103,158.195 223.211,156.729 219.348,156.922C213.399,157.218 207.424,157 201.518,157C200.995,162.216 201.49,167.296 200.093,171.982C197.761,179.807 196.375,184.335 192.2,189.003C186.463,195.42 180.539,202.401 173.212,206.467C165.218,210.904 155.809,213.982 146.533,214.772C140.003,215.328 133.915,215.112 127.586,214.988C124.239,214.923 122.845,216.06 122.934,219.622C123.145,228.116 123.005,236.618 123.001,245.117C122.998,251.059 121.128,252.977 115.061,252.989C97.897,253.025 80.733,253.002 63.568,253.002C51.404,253.002 39.239,253.028 27.074,252.99C21.11,252.972 19.972,251.911 19.969,246.171C19.952,212.512 20.027,178.852 19.931,145.193C19.92,141.244 21.512,139.936 25.206,139.967C36.037,140.056 46.872,139.868 57.7,140.066C61.659,140.139 62.704,138.654 62.9,134.816C63.079,131.328 63.031,127.859 62.985,124.329C62.92,119.388 61.017,118.259 56.858,118.302C47.864,118.397 38.869,118.381 29.875,118.42C29.044,118.424 28.21,118.569 27.382,118.535C20.483,118.255 19.854,117.626 19.858,110.743C19.874,83.582 19.901,56.422 19.946,29.261C19.957,22.709 21.747,21.005 28.509,21.001C45.173,20.992 61.836,20.998 79,20.998M40.806,37.592C39.579,39.018 37.305,40.427 37.283,41.871C37.009,60.012 37.047,78.158 37.045,96.302C37.045,98.812 38.187,100.243 40.973,100.24C46.626,100.235 52.281,100.327 57.93,100.537C61.815,100.681 63.165,99.043 63.06,95.156C62.832,86.672 62.99,78.177 63.001,69.687C63.01,63.101 65.168,60.989 71.882,60.989C92.36,60.99 112.837,60.999 133.315,60.997C139.718,60.996 139.987,60.711 139.998,54.125C140.004,50.629 139.757,47.111 140.059,43.642C140.457,39.073 138.568,37.373 134.101,37.395C103.319,37.551 72.535,37.595 40.806,37.592M62.997,200.455C62.997,187.472 63.078,174.487 62.886,161.507C62.863,159.996 61.38,157.25 60.476,157.208C52.923,156.859 45.347,157.01 37.87,157.01C37.87,182.364 37.917,206.983 37.817,231.602C37.803,235.205 39.289,236.074 42.623,236.055C62.599,235.939 82.576,236.005 102.552,235.977C103.642,235.975 104.732,235.678 105.997,235.493C105.997,229.703 105.875,224.216 106.048,218.738C106.137,215.898 105.136,214.958 102.315,214.998C93.661,215.12 85.004,215.009 76.348,215.006C62.998,215 62.998,215.006 62.997,200.455Z" style="fill:currentColor;fill-rule:nonzero;"/>
  36. <g transform="matrix(1,0,0,1,91.4761,179.778)">
  37. <text x="0px" y="0px" style="font-family:'Arial-BoldMT', 'Arial', sans-serif;font-weight:700;font-size:110px;fill:currentColor;">D</text>
  38. </g>
  39. </svg>
  40. </a>
  41. <label class="md-header__button md-icon" for="__drawer">
  42. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
  43. </label>
  44. <div class="md-header__title" data-md-component="header-title">
  45. <div class="md-header__ellipsis">
  46. <div class="md-header__topic">
  47. <span class="md-ellipsis">
  48. DunGen
  49. </span>
  50. </div>
  51. <div class="md-header__topic" data-md-component="header-topic">
  52. <span class="md-ellipsis">
  53. Dungeon Generator
  54. </span>
  55. </div>
  56. </div>
  57. </div>
  58. </nav>
  59. </header>
  60. <div class="md-container" data-md-component="container">
  61. <main class="md-main" data-md-component="main">
  62. <div class="md-main__inner md-grid">
  63. <div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
  64. <div class="md-sidebar__scrollwrap">
  65. <div class="md-sidebar__inner">
  66. <nav class="md-nav md-nav--primary" aria-label="Navigation" data-md-level="0">
  67. <label class="md-nav__title" for="__drawer">
  68. <a href="../index.html" title="DunGen" class="md-nav__button md-logo" aria-label="DunGen" data-md-component="logo">
  69. <svg width="100%" height="100%" viewBox="0 0 258 272" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
  70. <path d="M79,20.998C103.163,20.998 126.827,20.993 150.49,21.002C156.512,21.004 156.994,21.502 157,27.603C157.008,36.435 157.275,45.279 156.89,54.094C156.689,58.68 158.685,61.484 161.849,64.242C170.723,71.978 179.515,79.812 188.188,87.772C190.849,90.214 193.071,93.217 195.28,95.995C199.425,101.209 199.993,100.532 203.73,100.441C209.056,100.311 214.403,100.217 219.713,100.549C222.988,100.754 224.083,99.873 224.059,96.517C223.93,78.354 223.952,60.189 224.044,42.025C224.059,38.949 223.341,37.434 219.868,37.603C214.383,37.872 208.877,37.791 203.381,37.715C199.579,37.663 197.517,38.715 197.907,43.168C198.327,47.964 197.807,52.836 198.065,57.655C198.263,61.366 196.432,62.919 193.348,61.885C188.656,60.311 184.193,58.029 179.724,55.858C179.188,55.598 179.033,54.157 179.028,53.262C178.979,44.43 179.007,35.598 178.995,26.766C178.99,22.857 180.241,20.823 184.822,20.897C200.816,21.158 216.816,20.988 232.814,21.004C239.132,21.01 240.996,22.894 240.998,29.241C241.006,56.07 241.005,82.9 240.998,109.729C240.997,114.795 238.959,117.469 233.922,117.935C228.649,118.423 223.32,118.407 218.015,118.42C208.355,118.444 198.68,117.994 189.04,118.408C184.225,118.615 181.96,116.755 180.231,112.653C175.241,100.811 167.104,91.401 156.54,84.26C153.778,82.394 150.001,81.189 146.67,81.142C126.51,80.86 106.344,81.107 86.182,80.92C81.723,80.878 80.502,82.453 80.517,86.753C80.64,122.394 80.606,158.037 80.499,193.679C80.487,197.764 81.821,199.148 86.047,199.093C103.375,198.866 120.707,198.998 138.038,198.998C159.059,198.998 178.198,184.319 182.849,163.942C184.15,158.243 183.93,152.135 183.91,146.215C183.896,141.846 185.254,139.882 189.885,139.936C204.381,140.105 218.88,139.974 233.378,140.01C238.862,140.024 240.989,142.215 240.993,147.822C241.011,180.317 241.012,212.813 240.992,245.308C240.988,250.939 238.967,252.977 233.218,252.985C205.722,253.022 178.226,253.017 150.73,252.989C145.524,252.983 144.074,251.47 144.001,246.325C143.982,244.992 144.14,243.641 143.973,242.329C143.34,237.341 146.132,235.979 150.411,235.99C160.395,236.016 171.06,236.112 181.183,236.112C181.349,229.59 181.592,223.106 181.957,216.723C182.112,214.015 183.166,213.054 185.926,212.937C199.005,212.385 199.002,212.308 199.002,225.465C199.002,236.846 199.003,236.883 210.211,236.618C214.669,236.512 219.122,236.203 223.998,235.966L223.998,215.809C223.998,197.812 223.911,179.813 224.071,161.817C224.103,158.195 223.211,156.729 219.348,156.922C213.399,157.218 207.424,157 201.518,157C200.995,162.216 201.49,167.296 200.093,171.982C197.761,179.807 196.375,184.335 192.2,189.003C186.463,195.42 180.539,202.401 173.212,206.467C165.218,210.904 155.809,213.982 146.533,214.772C140.003,215.328 133.915,215.112 127.586,214.988C124.239,214.923 122.845,216.06 122.934,219.622C123.145,228.116 123.005,236.618 123.001,245.117C122.998,251.059 121.128,252.977 115.061,252.989C97.897,253.025 80.733,253.002 63.568,253.002C51.404,253.002 39.239,253.028 27.074,252.99C21.11,252.972 19.972,251.911 19.969,246.171C19.952,212.512 20.027,178.852 19.931,145.193C19.92,141.244 21.512,139.936 25.206,139.967C36.037,140.056 46.872,139.868 57.7,140.066C61.659,140.139 62.704,138.654 62.9,134.816C63.079,131.328 63.031,127.859 62.985,124.329C62.92,119.388 61.017,118.259 56.858,118.302C47.864,118.397 38.869,118.381 29.875,118.42C29.044,118.424 28.21,118.569 27.382,118.535C20.483,118.255 19.854,117.626 19.858,110.743C19.874,83.582 19.901,56.422 19.946,29.261C19.957,22.709 21.747,21.005 28.509,21.001C45.173,20.992 61.836,20.998 79,20.998M40.806,37.592C39.579,39.018 37.305,40.427 37.283,41.871C37.009,60.012 37.047,78.158 37.045,96.302C37.045,98.812 38.187,100.243 40.973,100.24C46.626,100.235 52.281,100.327 57.93,100.537C61.815,100.681 63.165,99.043 63.06,95.156C62.832,86.672 62.99,78.177 63.001,69.687C63.01,63.101 65.168,60.989 71.882,60.989C92.36,60.99 112.837,60.999 133.315,60.997C139.718,60.996 139.987,60.711 139.998,54.125C140.004,50.629 139.757,47.111 140.059,43.642C140.457,39.073 138.568,37.373 134.101,37.395C103.319,37.551 72.535,37.595 40.806,37.592M62.997,200.455C62.997,187.472 63.078,174.487 62.886,161.507C62.863,159.996 61.38,157.25 60.476,157.208C52.923,156.859 45.347,157.01 37.87,157.01C37.87,182.364 37.917,206.983 37.817,231.602C37.803,235.205 39.289,236.074 42.623,236.055C62.599,235.939 82.576,236.005 102.552,235.977C103.642,235.975 104.732,235.678 105.997,235.493C105.997,229.703 105.875,224.216 106.048,218.738C106.137,215.898 105.136,214.958 102.315,214.998C93.661,215.12 85.004,215.009 76.348,215.006C62.998,215 62.998,215.006 62.997,200.455Z" style="fill:currentColor;fill-rule:nonzero;"/>
  71. <g transform="matrix(1,0,0,1,91.4761,179.778)">
  72. <text x="0px" y="0px" style="font-family:'Arial-BoldMT', 'Arial', sans-serif;font-weight:700;font-size:110px;fill:currentColor;">D</text>
  73. </g>
  74. </svg>
  75. </a>
  76. DunGen
  77. </label>
  78. <ul class="md-nav__list" data-md-scrollfix>
  79. <li class="md-nav__item">
  80. <a href="../index.html" class="md-nav__link">
  81. <span class="md-ellipsis">
  82. Introduction
  83. </span>
  84. </a>
  85. </li>
  86. <li class="md-nav__item">
  87. <a href="../changelog.html" class="md-nav__link">
  88. <span class="md-ellipsis">
  89. Changelog
  90. </span>
  91. </a>
  92. </li>
  93. <li class="md-nav__item md-nav__item--nested">
  94. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" >
  95. <div class="md-nav__link md-nav__container">
  96. <a href="../getting-started/index.html" class="md-nav__link ">
  97. <span class="md-ellipsis">
  98. Getting Started
  99. </span>
  100. </a>
  101. <label class="md-nav__link " for="__nav_3" id="__nav_3_label" tabindex="0">
  102. <span class="md-nav__icon md-icon"></span>
  103. </label>
  104. </div>
  105. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
  106. <label class="md-nav__title" for="__nav_3">
  107. <span class="md-nav__icon md-icon"></span>
  108. Getting Started
  109. </label>
  110. <ul class="md-nav__list" data-md-scrollfix>
  111. <li class="md-nav__item">
  112. <a href="../getting-started/1-creating-tiles.html" class="md-nav__link">
  113. <span class="md-ellipsis">
  114. 1. Creating Tiles
  115. </span>
  116. </a>
  117. </li>
  118. <li class="md-nav__item">
  119. <a href="../getting-started/2-doorways.html" class="md-nav__link">
  120. <span class="md-ellipsis">
  121. 2. Doorways
  122. </span>
  123. </a>
  124. </li>
  125. <li class="md-nav__item">
  126. <a href="../getting-started/3-dungeon-flow.html" class="md-nav__link">
  127. <span class="md-ellipsis">
  128. 3. Dungeon Flow Basics
  129. </span>
  130. </a>
  131. </li>
  132. <li class="md-nav__item">
  133. <a href="../getting-started/4-scene-setup.html" class="md-nav__link">
  134. <span class="md-ellipsis">
  135. 4. Scene Setup & First Generation
  136. </span>
  137. </a>
  138. </li>
  139. </ul>
  140. </nav>
  141. </li>
  142. <li class="md-nav__item md-nav__item--active md-nav__item--nested">
  143. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" checked>
  144. <div class="md-nav__link md-nav__container">
  145. <a href="index.html" class="md-nav__link ">
  146. <span class="md-ellipsis">
  147. Core Concepts
  148. </span>
  149. </a>
  150. <label class="md-nav__link " for="__nav_4" id="__nav_4_label" tabindex="0">
  151. <span class="md-nav__icon md-icon"></span>
  152. </label>
  153. </div>
  154. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="true">
  155. <label class="md-nav__title" for="__nav_4">
  156. <span class="md-nav__icon md-icon"></span>
  157. Core Concepts
  158. </label>
  159. <ul class="md-nav__list" data-md-scrollfix>
  160. <li class="md-nav__item">
  161. <a href="tiles.html" class="md-nav__link">
  162. <span class="md-ellipsis">
  163. Tiles & Tile Component
  164. </span>
  165. </a>
  166. </li>
  167. <li class="md-nav__item">
  168. <a href="weighting.html" class="md-nav__link">
  169. <span class="md-ellipsis">
  170. Weighting
  171. </span>
  172. </a>
  173. </li>
  174. <li class="md-nav__item">
  175. <a href="tile-sets.html" class="md-nav__link">
  176. <span class="md-ellipsis">
  177. Tile Sets
  178. </span>
  179. </a>
  180. </li>
  181. <li class="md-nav__item">
  182. <a href="archetypes.html" class="md-nav__link">
  183. <span class="md-ellipsis">
  184. Archetypes
  185. </span>
  186. </a>
  187. </li>
  188. <li class="md-nav__item">
  189. <a href="doorways.html" class="md-nav__link">
  190. <span class="md-ellipsis">
  191. Doorways
  192. </span>
  193. </a>
  194. </li>
  195. <li class="md-nav__item">
  196. <a href="dungeon-flow.html" class="md-nav__link">
  197. <span class="md-ellipsis">
  198. Dungeon Flow Asset
  199. </span>
  200. </a>
  201. </li>
  202. <li class="md-nav__item">
  203. <a href="flow-editor.html" class="md-nav__link">
  204. <span class="md-ellipsis">
  205. Flow Editor
  206. </span>
  207. </a>
  208. </li>
  209. <li class="md-nav__item md-nav__item--active">
  210. <input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
  211. <label class="md-nav__link md-nav__link--active" for="__toc">
  212. <span class="md-ellipsis">
  213. Dungeon Generator
  214. </span>
  215. <span class="md-nav__icon md-icon"></span>
  216. </label>
  217. <a href="dungeon-generator.html" class="md-nav__link md-nav__link--active">
  218. <span class="md-ellipsis">
  219. Dungeon Generator
  220. </span>
  221. </a>
  222. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  223. <label class="md-nav__title" for="__toc">
  224. <span class="md-nav__icon md-icon"></span>
  225. Table of contents
  226. </label>
  227. <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
  228. <li class="md-nav__item">
  229. <a href="#overview" class="md-nav__link">
  230. <span class="md-ellipsis">
  231. Overview
  232. </span>
  233. </a>
  234. </li>
  235. <li class="md-nav__item">
  236. <a href="#runtime-dungeon-component-settings" class="md-nav__link">
  237. <span class="md-ellipsis">
  238. Runtime Dungeon Component Settings
  239. </span>
  240. </a>
  241. <nav class="md-nav" aria-label="Runtime Dungeon Component Settings">
  242. <ul class="md-nav__list">
  243. <li class="md-nav__item">
  244. <a href="#asynchronous-generation" class="md-nav__link">
  245. <span class="md-ellipsis">
  246. Asynchronous Generation
  247. </span>
  248. </a>
  249. </li>
  250. <li class="md-nav__item">
  251. <a href="#collision" class="md-nav__link">
  252. <span class="md-ellipsis">
  253. Collision
  254. </span>
  255. </a>
  256. </li>
  257. <li class="md-nav__item">
  258. <a href="#constraints" class="md-nav__link">
  259. <span class="md-ellipsis">
  260. Constraints
  261. </span>
  262. </a>
  263. </li>
  264. <li class="md-nav__item">
  265. <a href="#global-overrides" class="md-nav__link">
  266. <span class="md-ellipsis">
  267. Global Overrides
  268. </span>
  269. </a>
  270. </li>
  271. </ul>
  272. </nav>
  273. </li>
  274. </ul>
  275. </nav>
  276. </li>
  277. </ul>
  278. </nav>
  279. </li>
  280. <li class="md-nav__item md-nav__item--nested">
  281. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
  282. <div class="md-nav__link md-nav__container">
  283. <a href="../advanced-features/index.html" class="md-nav__link ">
  284. <span class="md-ellipsis">
  285. Advanced Features
  286. </span>
  287. </a>
  288. <label class="md-nav__link " for="__nav_5" id="__nav_5_label" tabindex="0">
  289. <span class="md-nav__icon md-icon"></span>
  290. </label>
  291. </div>
  292. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
  293. <label class="md-nav__title" for="__nav_5">
  294. <span class="md-nav__icon md-icon"></span>
  295. Advanced Features
  296. </label>
  297. <ul class="md-nav__list" data-md-scrollfix>
  298. <li class="md-nav__item">
  299. <a href="../advanced-features/props-variety.html" class="md-nav__link">
  300. <span class="md-ellipsis">
  301. Props for Variety
  302. </span>
  303. </a>
  304. </li>
  305. <li class="md-nav__item">
  306. <a href="../advanced-features/doors.html" class="md-nav__link">
  307. <span class="md-ellipsis">
  308. Doors
  309. </span>
  310. </a>
  311. </li>
  312. <li class="md-nav__item">
  313. <a href="../advanced-features/multiple-floors.html" class="md-nav__link">
  314. <span class="md-ellipsis">
  315. Multiple Floors
  316. </span>
  317. </a>
  318. </li>
  319. <li class="md-nav__item">
  320. <a href="../advanced-features/lock-key-system.html" class="md-nav__link">
  321. <span class="md-ellipsis">
  322. Lock & Key System
  323. </span>
  324. </a>
  325. </li>
  326. <li class="md-nav__item">
  327. <a href="../advanced-features/injecting-tiles.html" class="md-nav__link">
  328. <span class="md-ellipsis">
  329. Injecting Special Tiles
  330. </span>
  331. </a>
  332. </li>
  333. <li class="md-nav__item">
  334. <a href="../advanced-features/connection-rules.html" class="md-nav__link">
  335. <span class="md-ellipsis">
  336. Tile Connection Rules
  337. </span>
  338. </a>
  339. </li>
  340. <li class="md-nav__item">
  341. <a href="../advanced-features/attached-dungeons.html" class="md-nav__link">
  342. <span class="md-ellipsis">
  343. Generating Attached Dungeons
  344. </span>
  345. </a>
  346. </li>
  347. <li class="md-nav__item">
  348. <a href="../advanced-features/additional-collisions.html" class="md-nav__link">
  349. <span class="md-ellipsis">
  350. Avoid Collisions With the Scene
  351. </span>
  352. </a>
  353. </li>
  354. <li class="md-nav__item">
  355. <a href="../advanced-features/runtime-events.html" class="md-nav__link">
  356. <span class="md-ellipsis">
  357. Runtime Events & Code Execution
  358. </span>
  359. </a>
  360. </li>
  361. <li class="md-nav__item">
  362. <a href="../advanced-features/post-processing.html" class="md-nav__link">
  363. <span class="md-ellipsis">
  364. Custom Post-Processing
  365. </span>
  366. </a>
  367. </li>
  368. <li class="md-nav__item">
  369. <a href="../advanced-features/character-component.html" class="md-nav__link">
  370. <span class="md-ellipsis">
  371. DunGen Character Component
  372. </span>
  373. </a>
  374. </li>
  375. </ul>
  376. </nav>
  377. </li>
  378. <li class="md-nav__item md-nav__item--nested">
  379. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
  380. <div class="md-nav__link md-nav__container">
  381. <a href="../optimization/index.html" class="md-nav__link ">
  382. <span class="md-ellipsis">
  383. Optimization
  384. </span>
  385. </a>
  386. <label class="md-nav__link " for="__nav_6" id="__nav_6_label" tabindex="0">
  387. <span class="md-nav__icon md-icon"></span>
  388. </label>
  389. </div>
  390. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
  391. <label class="md-nav__title" for="__nav_6">
  392. <span class="md-nav__icon md-icon"></span>
  393. Optimization
  394. </label>
  395. <ul class="md-nav__list" data-md-scrollfix>
  396. <li class="md-nav__item">
  397. <a href="../optimization/culling.html" class="md-nav__link">
  398. <span class="md-ellipsis">
  399. Built-in Culling
  400. </span>
  401. </a>
  402. </li>
  403. <li class="md-nav__item">
  404. <a href="../optimization/tile-pooling.html" class="md-nav__link">
  405. <span class="md-ellipsis">
  406. Tile Pooling
  407. </span>
  408. </a>
  409. </li>
  410. </ul>
  411. </nav>
  412. </li>
  413. <li class="md-nav__item md-nav__item--nested">
  414. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
  415. <div class="md-nav__link md-nav__container">
  416. <a href="../pathfinding/index.html" class="md-nav__link ">
  417. <span class="md-ellipsis">
  418. Pathfinding
  419. </span>
  420. </a>
  421. <label class="md-nav__link " for="__nav_7" id="__nav_7_label" tabindex="0">
  422. <span class="md-nav__icon md-icon"></span>
  423. </label>
  424. </div>
  425. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
  426. <label class="md-nav__title" for="__nav_7">
  427. <span class="md-nav__icon md-icon"></span>
  428. Pathfinding
  429. </label>
  430. <ul class="md-nav__list" data-md-scrollfix>
  431. <li class="md-nav__item">
  432. <a href="../pathfinding/unity-navmesh.html" class="md-nav__link">
  433. <span class="md-ellipsis">
  434. Unity NavMesh Components
  435. </span>
  436. </a>
  437. </li>
  438. <li class="md-nav__item">
  439. <a href="../pathfinding/astar-pathfinding.html" class="md-nav__link">
  440. <span class="md-ellipsis">
  441. A* Pathfinding Project Pro
  442. </span>
  443. </a>
  444. </li>
  445. <li class="md-nav__item">
  446. <a href="../pathfinding/custom-adapters.html" class="md-nav__link">
  447. <span class="md-ellipsis">
  448. Custom Adapters
  449. </span>
  450. </a>
  451. </li>
  452. </ul>
  453. </nav>
  454. </li>
  455. <li class="md-nav__item md-nav__item--nested">
  456. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
  457. <div class="md-nav__link md-nav__container">
  458. <a href="../integrations/index.html" class="md-nav__link ">
  459. <span class="md-ellipsis">
  460. Integrations
  461. </span>
  462. </a>
  463. <label class="md-nav__link " for="__nav_8" id="__nav_8_label" tabindex="0">
  464. <span class="md-nav__icon md-icon"></span>
  465. </label>
  466. </div>
  467. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
  468. <label class="md-nav__title" for="__nav_8">
  469. <span class="md-nav__icon md-icon"></span>
  470. Integrations
  471. </label>
  472. <ul class="md-nav__list" data-md-scrollfix>
  473. <li class="md-nav__item">
  474. <a href="../integrations/sectr.html" class="md-nav__link">
  475. <span class="md-ellipsis">
  476. SECTR Portal Culling
  477. </span>
  478. </a>
  479. </li>
  480. <li class="md-nav__item">
  481. <a href="../integrations/playmaker.html" class="md-nav__link">
  482. <span class="md-ellipsis">
  483. PlayMaker Actions
  484. </span>
  485. </a>
  486. </li>
  487. </ul>
  488. </nav>
  489. </li>
  490. <li class="md-nav__item md-nav__item--nested">
  491. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_9" >
  492. <div class="md-nav__link md-nav__container">
  493. <a href="../troubleshooting/index.html" class="md-nav__link ">
  494. <span class="md-ellipsis">
  495. Troubleshooting
  496. </span>
  497. </a>
  498. <label class="md-nav__link " for="__nav_9" id="__nav_9_label" tabindex="0">
  499. <span class="md-nav__icon md-icon"></span>
  500. </label>
  501. </div>
  502. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_9_label" aria-expanded="false">
  503. <label class="md-nav__title" for="__nav_9">
  504. <span class="md-nav__icon md-icon"></span>
  505. Troubleshooting
  506. </label>
  507. <ul class="md-nav__list" data-md-scrollfix>
  508. <li class="md-nav__item">
  509. <a href="../troubleshooting/limitations.html" class="md-nav__link">
  510. <span class="md-ellipsis">
  511. Limitations & Considerations
  512. </span>
  513. </a>
  514. </li>
  515. <li class="md-nav__item">
  516. <a href="../troubleshooting/analysis.html" class="md-nav__link">
  517. <span class="md-ellipsis">
  518. Analysis
  519. </span>
  520. </a>
  521. </li>
  522. </ul>
  523. </nav>
  524. </li>
  525. <li class="md-nav__item md-nav__item--nested">
  526. <input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_10" >
  527. <label class="md-nav__link" for="__nav_10" id="__nav_10_label" tabindex="0">
  528. <span class="md-ellipsis">
  529. Reference
  530. </span>
  531. <span class="md-nav__icon md-icon"></span>
  532. </label>
  533. <nav class="md-nav" data-md-level="1" aria-labelledby="__nav_10_label" aria-expanded="false">
  534. <label class="md-nav__title" for="__nav_10">
  535. <span class="md-nav__icon md-icon"></span>
  536. Reference
  537. </label>
  538. <ul class="md-nav__list" data-md-scrollfix>
  539. <li class="md-nav__item">
  540. <a href="../reference/faq.html" class="md-nav__link">
  541. <span class="md-ellipsis">
  542. FAQ
  543. </span>
  544. </a>
  545. </li>
  546. <li class="md-nav__item">
  547. <a href="../reference/cookbook.html" class="md-nav__link">
  548. <span class="md-ellipsis">
  549. Cookbook
  550. </span>
  551. </a>
  552. </li>
  553. </ul>
  554. </nav>
  555. </li>
  556. </ul>
  557. </nav>
  558. </div>
  559. </div>
  560. </div>
  561. <div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
  562. <div class="md-sidebar__scrollwrap">
  563. <div class="md-sidebar__inner">
  564. <nav class="md-nav md-nav--secondary" aria-label="Table of contents">
  565. <label class="md-nav__title" for="__toc">
  566. <span class="md-nav__icon md-icon"></span>
  567. Table of contents
  568. </label>
  569. <ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
  570. <li class="md-nav__item">
  571. <a href="#overview" class="md-nav__link">
  572. <span class="md-ellipsis">
  573. Overview
  574. </span>
  575. </a>
  576. </li>
  577. <li class="md-nav__item">
  578. <a href="#runtime-dungeon-component-settings" class="md-nav__link">
  579. <span class="md-ellipsis">
  580. Runtime Dungeon Component Settings
  581. </span>
  582. </a>
  583. <nav class="md-nav" aria-label="Runtime Dungeon Component Settings">
  584. <ul class="md-nav__list">
  585. <li class="md-nav__item">
  586. <a href="#asynchronous-generation" class="md-nav__link">
  587. <span class="md-ellipsis">
  588. Asynchronous Generation
  589. </span>
  590. </a>
  591. </li>
  592. <li class="md-nav__item">
  593. <a href="#collision" class="md-nav__link">
  594. <span class="md-ellipsis">
  595. Collision
  596. </span>
  597. </a>
  598. </li>
  599. <li class="md-nav__item">
  600. <a href="#constraints" class="md-nav__link">
  601. <span class="md-ellipsis">
  602. Constraints
  603. </span>
  604. </a>
  605. </li>
  606. <li class="md-nav__item">
  607. <a href="#global-overrides" class="md-nav__link">
  608. <span class="md-ellipsis">
  609. Global Overrides
  610. </span>
  611. </a>
  612. </li>
  613. </ul>
  614. </nav>
  615. </li>
  616. </ul>
  617. </nav>
  618. </div>
  619. </div>
  620. </div>
  621. <div class="md-content" data-md-component="content">
  622. <article class="md-content__inner md-typeset">
  623. <h1 id="core-concepts-dungeon-generator">Core Concepts: Dungeon Generator</h1>
  624. <h2 id="overview">Overview</h2>
  625. <p>The <strong>Dungeon Generator</strong> is the engine responsible for taking all your configuration (from the <a href="dungeon-flow.html">Dungeon Flow</a>, <a href="archetypes.html">Archetypes</a>, <a href="tile-sets.html">Tile Sets</a>, etc.) and actually building the dungeon layout in your scene.</p>
  626. <p>While you can trigger generation manually through code or via an editor window (<code>Window &gt; DunGen &gt; Generate Dungeon</code>), the most common way to handle generation at runtime is by using the <strong>Runtime Dungeon</strong> component.</p>
  627. <p>You add this component to a GameObject in your scene (<code>Add Component &gt; DunGen &gt; Runtime Dungeon</code>). This GameObject then becomes the central point for controlling and triggering the dungeon generation process for that specific dungeon instance.</p>
  628. <hr />
  629. <h2 id="runtime-dungeon-component-settings">Runtime Dungeon Component Settings</h2>
  630. <p>Here are the settings available in the <code>Runtime Dungeon</code> component's Inspector:</p>
  631. <ul>
  632. <li>
  633. <p><strong>Generate on Start:</strong></p>
  634. <ul>
  635. <li>If checked, the dungeon generation process will automatically begin as soon as the scene starts (in the <code>Start()</code> method). If unchecked, you'll need to trigger generation manually via code or another system (like PlayMaker).</li>
  636. </ul>
  637. </li>
  638. <li>
  639. <p><strong>Root:</strong></p>
  640. <ul>
  641. <li>An optional GameObject reference. If assigned, the generated dungeon's root GameObject (containing all the placed Tiles) will be parented under this object in the scene hierarchy. If left as <code>None</code>, DunGen will create a new root GameObject named "Dungeon".</li>
  642. </ul>
  643. </li>
  644. <li>
  645. <p><strong>Dungeon Flow:</strong></p>
  646. <ul>
  647. <li><strong>Required.</strong> Assign the <a href="dungeon-flow.html">Dungeon Flow</a> asset that defines the structure and rules for the dungeon you want to generate. This is the master blueprint the generator follows.</li>
  648. </ul>
  649. </li>
  650. <li>
  651. <p><strong>Max Failed Attempts:</strong></p>
  652. <ul>
  653. <li>Specifies the maximum number of times DunGen is allowed to completely fail and restart the generation process <em>in the editor</em> before giving up. This prevents infinite loops during design if constraints are too strict.</li>
  654. </ul>
  655. </li>
  656. </ul>
  657. <div class="admonition note">
  658. <p class="admonition-title">Runtime Behaviour</p>
  659. <p>In a standalone build (not the Unity Editor), DunGen will keep retrying indefinitely until it succeeds, ignoring this setting to ensure a dungeon is always generated eventually.</p>
  660. </div>
  661. <ul>
  662. <li>
  663. <p><strong>Length Multiplier:</strong></p>
  664. <ul>
  665. <li>A multiplier applied to the <code>Length</code> range defined in the assigned <code>Dungeon Flow</code> asset.</li>
  666. <li><code>1</code> = Use the length as defined in the Dungeon Flow.</li>
  667. <li><code>2</code> = Double the target length range.</li>
  668. <li><code>0.5</code> = Halves the target length range.</li>
  669. <li>This allows you to easily scale the dungeon size without modifying the Dungeon Flow asset itself.</li>
  670. </ul>
  671. </li>
  672. <li>
  673. <p><strong>Up Direction:</strong></p>
  674. <ul>
  675. <li>Defines the primary "up" axis for the dungeon layout (usually <code>+Y</code> for 3D, and <code>-Z</code> for top-down 2D). This primarily affects the placement logic for vertically oriented doorways, ensuring they connect correctly relative to the dungeon's intended orientation. It does <em>not</em> rotate the entire generated dungeon.</li>
  676. </ul>
  677. </li>
  678. <li>
  679. <p><strong>Debug Render:</strong></p>
  680. <ul>
  681. <li>If checked, coloured bounding boxes will be rendered around each Tile in the Scene view <em>after</em> generation is complete.<ul>
  682. <li><strong>Main Path:</strong> Tiles are coloured from <strong>Red</strong> (near Start) to <strong>Green</strong> (near Goal).</li>
  683. <li><strong>Branch Paths:</strong> Tiles are coloured from <strong>Blue</strong> (near branch start) to <strong>Purple</strong> (near branch end).</li>
  684. </ul>
  685. </li>
  686. <li>Useful for visualizing the generated layout structure and debugging path generation.</li>
  687. </ul>
  688. </li>
  689. </ul>
  690. <hr />
  691. <h3 id="asynchronous-generation">Asynchronous Generation</h3>
  692. <p>Settings related to generating the dungeon over multiple frames to avoid freezing the game.</p>
  693. <ul>
  694. <li><strong>Generate Asynchronously:</strong><ul>
  695. <li>If checked, the dungeon generation process will be spread across multiple frames instead of happening all at once. This prevents the game from hanging during potentially long generation times, allowing loading screens or animations to continue playing.</li>
  696. </ul>
  697. </li>
  698. </ul>
  699. <div class="admonition note">
  700. <p class="admonition-title">Note</p>
  701. <p>Asynchronous generation might take slightly longer overall compared to synchronous generation.</p>
  702. </div>
  703. <ul>
  704. <li>
  705. <p><strong>Max Frame Time:</strong></p>
  706. <ul>
  707. <li>(Only used if <code>Generate Asynchronously</code> is checked). The maximum time (in milliseconds) that DunGen is allowed to spend on generation tasks within a single frame. Lower values lead to better game responsiveness during generation but increase the total generation time. Higher values shorten total generation time but might cause noticeable frame stutters.</li>
  708. </ul>
  709. </li>
  710. <li>
  711. <p><strong>Pause Between Rooms:</strong></p>
  712. <ul>
  713. <li>(Only used if <code>Generate Asynchronously</code> is checked). An optional delay (in seconds) to pause <em>after</em> placing each room. Primarily useful for visualizing the step-by-step generation process for debugging purposes. Set to <code>0</code> for normal asynchronous generation. This is automatically disabled in standalone builds.</li>
  714. </ul>
  715. </li>
  716. </ul>
  717. <hr />
  718. <h3 id="collision">Collision</h3>
  719. <p>Settings controlling how tiles interact spatially.</p>
  720. <ul>
  721. <li>
  722. <p><strong>Trigger Placement:</strong></p>
  723. <ul>
  724. <li>If enabled, DunGen will automatically add a <code>BoxCollider</code> (or <code>BoxCollider2D</code>) component as a trigger to the root of each placed Tile prefab. These triggers encompass the bounds of the tile. This should be set to match the type of dungeon you're making (2D or 3D).</li>
  725. <li>Can be used in conjunction with the <a href="../advanced-features/character-component.html">DunGen Character Component</a> or your own scripts to detect when an object enters/exits a specific tile area.</li>
  726. </ul>
  727. </li>
  728. <li>
  729. <p><strong>Trigger Layer:</strong></p>
  730. <ul>
  731. <li>Specifies the physics layer on which the auto-generated <code>Tile Triggers</code> (if enabled above) should be placed.</li>
  732. </ul>
  733. </li>
  734. <li>
  735. <p><strong>Overlap Threshold:</strong></p>
  736. <ul>
  737. <li>A small value determining how much two <em>connected</em> tiles are allowed to overlap spatially. Usually doesn't need changing.</li>
  738. </ul>
  739. </li>
  740. <li>
  741. <p><strong>Collide All Dungeons:</strong></p>
  742. <ul>
  743. <li>If checked, DunGen will check for collisions against tiles from <em>all</em> previously generated dungeons in the scene, not just the tiles within the dungeon currently being generated. Useful if you have multiple independent DunGen instances active.</li>
  744. </ul>
  745. </li>
  746. <li>
  747. <p><strong>Disallow Overhangs?:</strong></p>
  748. <ul>
  749. <li>If checked, tiles are prevented from being placed vertically above or below other tiles if their X/Z bounds overlap.</li>
  750. </ul>
  751. </li>
  752. <li>
  753. <p><strong>Padding:</strong></p>
  754. <ul>
  755. <li>The minimum amount of empty space that must exist between the bounding boxes of any two <em>unconnected</em> tiles. Helps prevent unwanted visual overlap and clutter.</li>
  756. </ul>
  757. </li>
  758. </ul>
  759. <hr />
  760. <h3 id="constraints">Constraints</h3>
  761. <p>Settings for restricting where tiles can be placed.</p>
  762. <ul>
  763. <li>
  764. <p><strong>Restrict to Bounds?:</strong></p>
  765. <ul>
  766. <li>If checked, DunGen will only place tiles <em>within</em> the volume defined by the <code>Placement Bounds</code> below.</li>
  767. </ul>
  768. </li>
  769. <li>
  770. <p><strong>Placement Bounds:</strong></p>
  771. <ul>
  772. <li>(Only used if <code>Restrict to Bounds?</code> is checked). Defines a world-space bounding box (Center and Extents) outside of which no tiles can be generated.</li>
  773. </ul>
  774. </li>
  775. </ul>
  776. <div class="admonition warning">
  777. <p class="admonition-title">Warning</p>
  778. <p>Using bounds restrictions can significantly increase the chance of generation failure if the bounds are too small for the requested dungeon length and complexity. It may also increase generation time.</p>
  779. </div>
  780. <hr />
  781. <h3 id="global-overrides">Global Overrides</h3>
  782. <p>These settings allow you to optionally override specific behaviours for <em>all</em> tiles generated by this component, regardless of their individual <a href="tiles.html">Tile Component</a> settings. If an override is not enabled, the behaviour is determined <em>per-tile</em>.</p>
  783. <p><img align="left" alt="Active Override" src="../assets/images/core-concepts/override-active.png" /></p>
  784. <p>The checkbox to the left of the setting determines whether the override is active or not.</p>
  785. <div style="clear: both;"></div>
  786. <ul>
  787. <li>
  788. <p><strong>Repeat Mode:</strong></p>
  789. <ul>
  790. <li>Forces all tiles to adhere to a specific repeat mode (<code>Allow</code>, <code>Disallow Immediate</code>, <code>Disallow</code>), overriding any <code>Repeat Mode</code> set on individual Tile components. Defaults to <code>Allow</code>. See <a href="tiles.html#repeat-mode">Repeat Mode</a> on the Tiles page for details.</li>
  791. </ul>
  792. </li>
  793. <li>
  794. <p><strong>Allow Tile Rotation:</strong></p>
  795. <ul>
  796. <li>Forces all tiles to either allow rotation or disallow rotation, overriding any <code>Allow Rotation</code> setting on individual Tile components.</li>
  797. </ul>
  798. </li>
  799. </ul>
  800. <hr />
  801. <p>The <code>Runtime Dungeon</code> component is the primary interface for launching and controlling the DunGen process within your game scene.</p>
  802. </article>
  803. </div>
  804. <script>var tabs=__md_get("__tabs");if(Array.isArray(tabs))e:for(var set of document.querySelectorAll(".tabbed-set")){var labels=set.querySelector(".tabbed-labels");for(var tab of tabs)for(var label of labels.getElementsByTagName("label"))if(label.innerText.trim()===tab){var input=document.getElementById(label.htmlFor);input.checked=!0;continue e}}</script>
  805. <script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
  806. </div>
  807. <button type="button" class="md-top md-icon" data-md-component="top" hidden>
  808. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg>
  809. Back to top
  810. </button>
  811. </main>
  812. <footer class="md-footer">
  813. <nav class="md-footer__inner md-grid" aria-label="Footer" >
  814. <a href="flow-editor.html" class="md-footer__link md-footer__link--prev" aria-label="Previous: Flow Editor">
  815. <div class="md-footer__button md-icon">
  816. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
  817. </div>
  818. <div class="md-footer__title">
  819. <span class="md-footer__direction">
  820. Previous
  821. </span>
  822. <div class="md-ellipsis">
  823. Flow Editor
  824. </div>
  825. </div>
  826. </a>
  827. <a href="../advanced-features/index.html" class="md-footer__link md-footer__link--next" aria-label="Next: Overview">
  828. <div class="md-footer__title">
  829. <span class="md-footer__direction">
  830. Next
  831. </span>
  832. <div class="md-ellipsis">
  833. Overview
  834. </div>
  835. </div>
  836. <div class="md-footer__button md-icon">
  837. <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11z"/></svg>
  838. </div>
  839. </a>
  840. </nav>
  841. <div class="md-footer-meta md-typeset">
  842. <div class="md-footer-meta__inner md-grid">
  843. <div class="md-copyright">
  844. <div class="md-copyright__highlight">
  845. Copyright &copy; Aegon Games Ltd.
  846. </div>
  847. Made with
  848. <a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
  849. Material for MkDocs
  850. </a>
  851. </div>
  852. </div>
  853. </div>
  854. </footer>
  855. </div>
  856. <div class="md-dialog" data-md-component="dialog">
  857. <div class="md-dialog__inner md-typeset"></div>
  858. </div>
  859. <script id="__config" type="application/json">{"base": "..", "features": ["content.code.annotate", "content.code.copy", "content.tabs.link", "announce.dismiss", "header.autohide", "navigation.footer", "navigation.indexes", "navigation.top", "navigation.tracking"], "search": "../assets/javascripts/workers/search.f8cc74c7.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script>
  860. <script src="../assets/javascripts/bundle.c8b220af.min.js"></script>
  861. </body>
  862. </html>