Overview
Comment: | 0.0.638 |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA3-256: |
9148d06d49ad610ba20a026457b1067f |
User & Date: | 顽雨沉风 on 2023-07-05 06:44:19 |
Other Links: | manifest | tags |
Context
2023-07-05
| ||
06:45 | 0.0.639 check-in: 272c2ebae9 user: 顽雨沉风 tags: trunk | |
06:44 | 0.0.638 check-in: 9148d06d49 user: 顽雨沉风 tags: trunk | |
06:43 | 0.0.637 check-in: 47ade914ee user: 顽雨沉风 tags: trunk | |
Changes
Added single_doc/37.Eternal Evolution.html version [7fa174dde7].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" lang xml:lang> <head> <meta charset="utf-8" /> <meta name="generator" content="pandoc" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> <title>37.Eternal Evolution</title> <style> code{white-space: pre-wrap;} span.smallcaps{font-variant: small-caps;} div.columns{display: flex; gap: min(4vw, 1.5em);} div.column{flex: auto; overflow-x: auto;} div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;} ul.task-list[class]{list-style: none;} ul.task-list li input[type="checkbox"] { font-size: inherit; width: 0.8em; margin: 0 0.8em 0.2em -1.6em; vertical-align: middle; } .display.math{display: block; text-align: center; margin: 0.5rem auto;} </style> <style type="text/css"> @media screen and (min-aspect-ratio:1/1) { html { background-color: f8f8f8; background-image: linear-gradient( 45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%), linear-gradient( 45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%); background-size: 8px 8px; background-position: 0 0, 16px 8px; } body { border: solid #a0a0a0 1px ; border-radius: 20px ; padding: 26px ; margin: 16px ; color: #101010 ; background-color: #efefef; padding: 2em 18%; } } h1,h2,h3,h4,h5,h6 { font-size: 1.5em; color: #3F5770; border-bottom: 0.1em solid #666666; margin: 1.2em 0em; } a { background-color: white; text-decoration-color: blue; } a:visited { color: blue; text-decoration-color: white; } nav ul li { margin: 1.2em 0em; } p::before { content: " "; } p { margin: 1.2em 0; } .title { background-color: white; font-size: 2em; text-align: center; } b { background-color: white; } a { target: _blank; } </style> <!--[if lt IE 9]> <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script> <![endif]--> </head> <body> <div class="title"> 37.Eternal Evolution </div> <p>这个残局具有开创性意义。</p> <p>它率先引入了在残局一开始由玩家从卡组中选卡加入手卡的玩法。</p> <script> document.onmouseup = function(event) { var 元素 = event.target if (元素.tagName == "PRE" || 元素.tagName == "CODE") { var 文本 = 元素.textContent navigator.clipboard.writeText(文本) } } document.addEventListener('touchend', function(event) { var target = event.target; if (target.tagName == "PRE" || target.tagName == "CODE") { var range = document.createRange(); range.selectNodeContents(target); window.getSelection().removeAllRanges(); window.getSelection().addRange(range); var successful = document.execCommand('copy'); target.removeAttribute('contenteditable'); window.getSelection().removeAllRanges(); } }); </script> </body> </html> |
Added single_doc/二解.md version [02e175a044].
> > > > > > > > | 1 2 3 4 5 6 7 8 | <div class="title">二解</div> 「二解」指超越了原残局作者设定血量的解局方法。 一般情况下,残局设定血量就是目前最优解的解局血量。 如果出现了二解,就表明残局设定血量需要更改了。 |
Added single_doc/关于二解.html version [62b36dc6fa].
> > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 | <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml" lang xml:lang> <head> <meta charset="utf-8" /> <meta name="generator" content="pandoc" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" /> <title>关于二解</title> <style> code{white-space: pre-wrap;} span.smallcaps{font-variant: small-caps;} div.columns{display: flex; gap: min(4vw, 1.5em);} div.column{flex: auto; overflow-x: auto;} div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;} ul.task-list[class]{list-style: none;} ul.task-list li input[type="checkbox"] { font-size: inherit; width: 0.8em; margin: 0 0.8em 0.2em -1.6em; vertical-align: middle; } .display.math{display: block; text-align: center; margin: 0.5rem auto;} </style> <style type="text/css"> @media screen and (min-aspect-ratio:1/1) { html { background-color: f8f8f8; background-image: linear-gradient( 45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%), linear-gradient( 45deg, #eee 25%, transparent 25%, transparent 75%, #eee 75%); background-size: 8px 8px; background-position: 0 0, 16px 8px; } body { border: solid #a0a0a0 1px ; border-radius: 20px ; padding: 26px ; margin: 16px ; color: #101010 ; background-color: #efefef; padding: 2em 18%; } } h1,h2,h3,h4,h5,h6 { font-size: 1.5em; color: #3F5770; border-bottom: 0.1em solid #666666; margin: 1.2em 0em; } a { background-color: white; text-decoration-color: blue; } a:visited { color: blue; text-decoration-color: white; } nav ul li { margin: 1.2em 0em; } p::before { content: " "; } p { margin: 1.2em 0; } .title { background-color: white; font-size: 2em; text-align: center; } b { background-color: white; } a { target: _blank; } </style> <!--[if lt IE 9]> <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script> <![endif]--> </head> <body> <div class="title"> 关于二解 </div> <p>「二解」指超越了原残局作者设定血量的解局方法。</p> <hr /> <p>有些残局作者(如 QB)会故意降低残局的解局血量,以求血量好看或减少对玩家的压迫感或诱惑玩家解局。他们甚至可能会在残局里添加只用于减少伤害的减伤卡(如《伤害瘦身》)。在这些残局作者的设计下,残局会自然而然的拥有大量二解。</p> <hr /> <p>实战与残局的逻辑其实是不一样的。实战的信息不是完全公开的,而残局的信息是完全公开的。因此,实战其实是求不完全信息博奕下的最优解,而残局则是求完全信息博奕下的最优解。残局作者主动将最优解的血量换成次优解甚至更次解,是残局作者的自由,并且也与实战更为相似,即实战中的玩家尚未求得不完全信息博奕下的最优解,决斗便已结束了。</p> <hr /> <p>实战难以多次重复,而残局可以多次重复,因此在残局中求得最优解是可以做到的。而若残局作者把血定低了,则解法会容忍少许的渣操。考虑到高超的操作所带来的乐趣会边际效应递减,则提高解法的容错率将是一种思路。</p> <hr /> <p>其实,残局作者把解局血量定低的最大危害是:残局难以进步了。由于能力、精力、时间等各种因素的制约,残局作者所知道的最优解未必是该残局真正的最优解,在这一前提下把残局解局血量定低了,则真正的最优解将很难出现。</p> <hr /> <p>实战与残局还有一点不同:实战总有些局面会让玩家十死无生,而残局即使再难,它也是有解的,会给玩家留下九死一生的希望。抱持着希望的残局玩家,将在残局中做到淋漓尽致的反击。此即「长风破浪会有时,直挂云帆济沧海」 。在这一过程中,将有诸多古怪思路涌现,很有可能会出现二解。</p> <hr /> <p>有一种残局制作方法是将一大堆的相关卡片迅速摆好局面,然后通过残局作者的测试来获取解局血量,典型的代表者如无名、幽厉。据无名所说,有了残局编辑器后,局面很快就能摆好,但测试却需要花费远比摆残局更多的时间。这一方法,其实指明了残局的重点应该是测试,更进一步地说,应该是二解,再本质一点说,是残局解法认知的进步。「文章本天成,妙手偶得之」 ,残局作者把血定高,才能倒逼玩家操作高超。</p> <hr /> <p>残局作者只知道他目前所知的最优解,但可以肯定有人是打不到这个解的,那么残局作者该去迁就他们吗?迁就到什么水平的玩家才合适呢?(可以靠发布多版本残局来解决这一层次矛盾)</p> <hr /> <p>残局作者并不需要尽善尽美,只需做到有解即可。残局作者是残局的第一个玩家,他可能玩的并不好,但会成为后来者的一个参照。</p> <script> document.onmouseup = function(event) { var 元素 = event.target if (元素.tagName == "PRE" || 元素.tagName == "CODE") { var 文本 = 元素.textContent navigator.clipboard.writeText(文本) } } document.addEventListener('touchend', function(event) { var target = event.target; if (target.tagName == "PRE" || target.tagName == "CODE") { var range = document.createRange(); range.selectNodeContents(target); window.getSelection().removeAllRanges(); window.getSelection().addRange(range); var successful = document.execCommand('copy'); target.removeAttribute('contenteditable'); window.getSelection().removeAllRanges(); } }); </script> </body> </html> |