FC遊戲中國象棋中,老頭難度是真的在計算棋譜嗎?

是在計算棋譜要處理很長時間,還是單純的故意拖延時間?由於本人不懂象棋,那三個難度的難度差別在哪?


這個問題真的是勾起了我的無限回憶,一定要沒有幫助地回答一下!

滿滿的回憶有木有!

先上一個視頻:FC遊戲中國象棋 視頻。

我猜玩過的童鞋一看就會拍大腿:就是這個!

一聽到那個背景音樂我就彷彿回到了小學初中那個躲著大人玩遊戲的年代。無限的回憶一下子湧上來,突然覺得很溫暖。

下面說說這個問題。

這個遊戲呢,有三個級別的困難度。我玩了這麼久的分析結論是:

三個級別的棋力明顯是不同的。老頭的戰鬥力最強,這是真的。

想當年我那水平實在不怎麼地,玩了很多盤,基本上效果是這樣的:

  1. 欺負一下小孩子沒問題,基本上只要不走錯,穩贏。

  2. 跟那個中年漢子戰鬥力不相上下,不過這也是往自己臉上貼金,跟他下我是輸得多贏得少。

  3. 老頭子的棋力在那時候的我看來簡直強大,強大得我毫無勝算,毫無辦法。

大家看,下棋的時候,左側黑方(老頭子那邊)下面會有一個數字,不斷地變,這應該就是黑方的思考過程吧。那個數字是不斷變大的。並且,根據場上局勢的變化,數字的增幅也不一樣。

因此,應該說老頭子是在思考的。

——————————————————————————————————————————

有趣的地方在於,老頭子的思考時間我個人感覺也因人而異。

對付像我這樣的菜鳥,老頭子思考的時間並不算很長,而且要不了多久我就會被老頭子絕殺,欲哭無淚。貌似老頭子下棋還不允許悔棋的?印象最深刻的一次是老頭子單馬破我的士象全然後馬後炮一舉將死,佩服得五體投地……

我那時興趣濃厚,又拿老頭子沒辦法,於是拉了我一個親戚來對付他。我還信誓旦旦地對我那個下棋挺厲害的親戚說這老頭很厲害的云云,他就來試了一下。結果根本沒下完,我親戚走了幾步之後就受不了老頭子要思考那麼久了,等不耐煩直接走了……

不幸的是,我發現,老頭子這回思考慢了很多……這是真的,因為跟我下的話都快下完了的時間,跟我那個親戚才走了幾步,老頭子明顯思考時間變長了。

看來我果然水平太次……

PS:

莫名戳中笑點

———————————————————————————————————————————

看這個50手絕殺老頭。其實將軍的方法很傳統,車帥配合中炮將死,說明老頭說到底也是一段程序代碼而已,終究棋力有限。

但是!不覺得這個老頭長得挺萌的嗎?哈哈

圖片來自:《FC小狼解說》中國象棋超強悍50手絕殺變態老頭


那時候CPU很弱,所以複雜戰術耗時間是可能的。

雖然你可能覺得棋力沒有太大差別,但是程序員已經儘力了。

像MD上的大戰略2(CPU是68k),敵方一回合思考耗去1個小時是非常正常的,再長也不奇怪,下完指令去上學,回來之後剛好輪到我方行動。正常遊戲的話一關要打一整天。到蘇德戰場,一場戰鬥100小時都不是事兒,等去吧。

心理壓力是完全無法解釋這種情況的。


是在計算,6502 速度那麼慢所以肯定會卡

另外這個遊戲是台灣「小天才」山寨機的那群人寫的,其實國內很多的 FC 遊戲都是台灣那邊製作的,有好幾個現在恐怕已經失傳。


看過源代碼,計算的層數與花費時間是指數增長的。

老頭級別算的層數深一些,花的時間長一些。


這些一本正經說「思考的」,強答什麼啊,認真玩過嗎?

那遊戲走棋是完全固定的好么。只是存了大量的定式罷了。

我背一段棋譜,你們可以開模擬器驗證下,每次走都是一模一樣的。

選小孩難度,玩家紅,電腦黑。

紅,當頭炮

黑,當頭炮

紅,當頭炮翻過去吃中卒將軍

黑,上士

紅,上另一個當頭炮

黑,跳馬叫吃紅炮

紅,前炮拉回中卒前

黑,……記不清了,好像該出車(ju)了。

每次走都是一樣的,死套路,不是即時算的。

不同的難度存儲的套路不一樣,如果選中等難度,玩家當頭炮起手,電腦必會跳馬。


有區別。

我小時候玩那個跟小孩下八成可以贏,中年人大概55開,老頭就很難贏了。

看開局就能看出來老頭那個是真的在算的。


有差別,以前小時候無聊,研究過針對小孩級別的十步左右必殺,引以為傲一段時間。

而老頭級別,都不會中招。


開局第一步拱邊卒第二步上將,老頭兒讓你明白,怎麼做一個穩重耐心的人…


沒玩過這個,沒看過源碼,我傾向於在計算,從自己所學的東西,用通俗的語言解釋一下為啥難度不同計算時間差異很大

不過象棋AI主要的策略就是搜索策略,AI中的盲目搜索主要就是優化過的廣度優先搜索,也可廣搜深搜一起來。象棋很難給出一個啟發式的函數來是搜索變得有目的性,而棋類AI最常採用的就是隨機演算法來優化,其中就有大名鼎鼎的蒙特卡羅演算法。

加上這個FC時代的古老遊戲,演算法的設計很有可能在區分難度時僅僅是增加了搜索的深度。而象棋你簡單的估算一下按照:車19 * 2,馬8 * 2, 兵3 * 5,炮19 * 2,相3 * 2, 士2 * 2, 帥3 * 2(簡單估算使一次決策的方案儘可能得多),就有近180種行動,若完全不優化的進行1層搜索,寬度就是180,2層搜索就是180*180(是搜索1層的180倍)。加上FC時代的CPU運算能力限制,所以若是想提高難度(增加深度),沒有一個實際的優化策略,時間都是指數級增長的。從對陣玩家的勝率來看,三個難度也是真真確確依次提高了。

所以綜上,長的時間應該是在計算沒錯了。


看了這個問題,我特意下載這個遊戲試了試。

回答:老頭是在算棋,但難度差別很小。

老頭,中年人,小孩,很恰當的對應了民間愛好者的高中生,初中生,小學生平均水平。

老頭是被我36個回合將死的,水平中規中矩,算高中生里的中上檔。

兵七進一 炮8平5 馬二進三 馬8進7

車一平二 車9平8 馬八進七 馬2進3

兵三進一 卒5進1 炮二進四 卒5進1

仕六進五 卒7進1 兵三進一 車1進1

兵五進一 馬7進5 兵三平四 炮5進3

相七進五 車1平7 炮二平七 車8進9

馬三退二 車7進8 炮八進二 象3進5

炮八平五 車7平8 車九平八 車8退4

炮五退一 炮2退2 兵四進一 炮2平1

兵四平五 馬3進5 車八進九 炮1進2

炮七進三 士4進5 炮七平四 士5退4

炮四平六 將5進1 車八退三 炮1平3

馬七進八 車8平4 車八平五 炮3退2

馬八進七 車4進1 車五進一 將5平6

馬七退五 車4平5 馬五進三 將6退1

車五退四 炮3進2 相五退七 炮3平8

馬三進二 將6進1 仕五退六 炮8平5

車五進四 卒1進1 車五進一

殺中年人用了26個回合,其實本可以更快,但這個頭像實在太丑了,影響我發揮,且不想再與他對弈。漏手不少,就是普通初中生水平。

炮二平五 馬2進3 馬二進三 炮8平5

車一平二 馬8進7 馬八進七 車1進1

兵七進一 車9進1 馬七進六 車1平4

馬六進四 車9平7 兵七進一 卒3進1

炮八平七 車4進1 車九平八 炮2平1

車二進六 卒3進1 相七進九 卒3進1

炮七退二 士4進5 仕六進五 卒3進1

車二平三 卒3進1 炮七進七 炮5平3

炮五進四 將5平4 車八進九 將4進1

炮五平六 車4平6 炮六退四 車6退1

車三平六 士5進4 車六平八 士4退5

馬四進六 士5進4 後車進二 炮3退1

後車平七 將4退1 車八平七

說這個小孩是小學生水平實在太委婉,正常小學生只要學會象棋規則就該比這強,

準確的說這應該是弱智小學生水平。(這個頭像也夠丑的)

16個回合輕輕鬆鬆虐殺。

炮二平五 炮2平5 馬二進三 馬2進3

車一平二 車1平2 車二進七 車2進7

車二進一 車2進1 炮五退一 車2退2

馬八進七 車2平3 車九進二 車3平4

馬七進八 車4平3 馬八進六 車3進3

馬六進八 士4進5 車九平六 炮5平4

炮五平六 車9進2 馬八進七 炮4退1

車六進六 車3退2 車六退一

總結:這個遊戲並不令人驚喜,但受限於1991年的硬體配置和象棋軟體領域的空白,做到這個程度還是中規中矩的。


小時候被這老頭折磨得很慘,總想贏他,但既沒有足夠的棋力,更沒有走一步等3分鐘的耐心。後來不知道從哪裡學到了一招天外飛仙,此招一出,老頭必敗:

1、車一進二,炮8進7;

2、車九進二,炮2進7;

3、將五進一,炮2平4;

4、炮二平五,炮4退2;

5、炮五進四,炮4平1 。。。

以下重炮,十步之內,老頭脆敗!


我才不告訴你們,一邊開著FC模擬器+變速齒輪,一邊開著聯眾象棋qq象棋基本就可以稱霸遊戲大廳了。


這讓我想起我老爸和我一起玩遊戲的時光啊,當年他超愛這款遊戲。他玩了好長的時間,到最後他每次都可以贏老頭,因為老頭的棋路是非常有規律的,一旦某些步子玩家故意走出非主流的棋路,AI也會出昏招。然後他就很少玩了。

由此我認為這款遊戲中AI只是針對不同難度調用不同檔次的棋譜,而不是真正的全靠計算。

我覺得難度肯定不同,但是時間不是在用來計算吧。只是給玩家一點思考時間,並且老頭也用超長的思考時間暗示玩家:小心哦,爺爺可是很厲害的。


卡帶不同。

我小時候幾百合一裡面有象棋,那個老頭就要等時間。那時候我就學了下規則。由於象棋時間會長一點,有些阿姨長輩不會玩象棋,所以就沒有多少人和我下象棋,於是我就主玩五子棋。五子棋稱霸小區但是沒把象棋玩下去,也沒打贏那個老頭。

初中的時候老是不允許我們中午玩掌機,所以我就帶了象棋去學校和朋友玩。那時候有DVD帶遊戲功能,有個幾百合一裡面有象棋,那個老頭就不等時間。在學校和朋友玩了幾天之後就開始著手打那個老頭,沒多久就贏了那個老頭。後來和同學一起研究兩個人分別戰勝了同學他爹。牛逼哄哄覺得在象棋之路上已經無敵,遂棄。

說這麼多只是為了表明。。。我記得很清楚。。。


結論:是。

而且特定局面的計算結果是固定的。

PS:那些說自己可以吊打老頭的,請你們一路打到3-8試試。

玩家執黑,並只有5秒鐘的時間移動棋子。

電腦沒有時間限制,玩家需要在這段時間思考棋局並把游標移動到想要移動的棋子上。

祝你們好運!


想起以前小時候用小霸王玩這個象棋的 那時候不會下棋 然後找了一個會下棋的大人來幫我 眼看老頭就要不行了 已經被殺得招架不住 屏幕居然花了 我嚴重懷疑是他下不過自行毀棋 →_→


菜雞路過

我可以下過簡單卻很難贏中等

所以我認為簡單和中等是有明確的實力差距的→_→

只知道這麼多Orz


不是。老衲就是做遊戲的,棋牌博弈類遊戲的人工智慧是非常複雜的。中國象棋由於存在炮打隔一位,撇馬腳,過河卒橫行,將帥不見面等特殊規則,運算量比國際象棋更大,在使用傳統的擇優狀態機逐步推演演算法的前提下比國際象棋更加耗時間。對於當時小霸王和紅白機上486的處理器而言,1秒跟15秒的時間擇算出來的最優解沒有多大差別。這更多的應該是通過延長時間造成玩家心理上的壓力吧。


想起小時候,每張卡上都要帶這個遊戲我才買。然後聽到父親來了,馬上換到這個遊戲.電視和遊戲機都不用關就逃過一劫...

恩,緬懷完回答題主問題...

初級實力大概算得上一個知道規則,並且常年看棋,但不怎麼下棋的人的水平。說白了就是只要是經常下棋的人都能贏他

中級實力要高出很多,至少需要一個經常下棋的人才能頂的住..如果要穩贏(即隨便擺個雙方都不吃虧的開局都可以贏)的話,至少這個下棋者需要有一定的大局觀(對棋有更深層次的了解,簡單的會下是很難贏他的)

老頭的話,下的比較少..確實和中級有一些差距,但差距不像初級到中級那麼明顯,這個紅白機不論是哪個都有一些很嚴重的缺陷。1:開局庫太少,機器的開局特別差,不刻意讓著他開局就能基本下到他翻不了身.2:殘局能力差(這個即使現在的電腦也就那樣)3:都貪吃,這個現在的電腦基本不會這樣了,但當時紅白機最大的印象就是貪吃,棄子搶勢它是吃的毫不猶豫....

一般我無聊的時候基本都是讓中級一馬並且隨便走個開局和它練中局纏鬥..突然想到自己都好久沒下棋了,收工,下班


至少從實質結果來看,兩者的能力是有差別的,我雖然是個臭棋簍子但是據俺那能下贏老頭的爹說,老頭的棋力比小孩強很多,而且老頭會下閑棋。

所以我更傾向於老頭是真的在計算。


推薦閱讀:

中國象棋和國際象棋的規則,是否能反映中西方的用人體制?
做个职业棋手(围棋、国际象棋等等)是怎么样的感觉?从小到大一直做这一件事情,他们如何坚持下去不放弃?
如何成為一個象棋高手?

TAG:人工智慧 | 遊戲設計 | 中國象棋 | 紅白機FamilyComputer,FC | 懷舊經典遊戲 |