SimonHome
logo

這是一個挖坑給人跳,再踩著別人的頭發財的遊戲,上班族不可不玩。(參1)

緣起

       Lode Runner (超級運動員)(參2) 算得上是超級骨灰級的動作益智遊戲,APPLE-II 的經典大作。記憶中雖然玩過不少遊戲,但很少全部玩完的,而 Lode Runner 第一代(有150關)(參3),可說是少數全破的遊戲,也是印象中唯一一款家中4兄妹一起合作過關的遊戲。以前的遊戲通常無法保存遊戲狀態,必需一氣呵成,所以只 好大家一起接力玩,但關數實在太多,最後是大哥在程式中加入了跳關的 HOT-KEY,才不需要每次都要從第一關玩起!另外 Lode Runner 內含有一遊戲編輯器,可供玩家自行製作關卡,可算是提供自製遊戲關卡的始祖。

      至於 Lode Runner 第二代(有50關)(參3) - Championship Lode Runner,聽說是作者收集各地玩家自製關卡的作品,當時只有小玩兩下而已,每關都不容易過關,在 YouTube 上有人放上任天堂紅白機版的過關方式可供參考(參4)。

       Lode Runner 剛開始是由 Brøderbund 這家公司所發行,作者則是由一位當時還是大學生的 Douglas E. Smith 所開發 (參5) 。 由於 Lode Runner 非常受歡迎 ,從 1983 年到現在這30多年間,陸續有發行商移植到不同的遊戲平台(參6),其中 Lode Runner X 及 Lode Runner Classic 均為手機版本 。

Lode Runner 1983
Championship Lode Runner
Classic Lode Runner
Championship Lode Runner


       記得當年玩 APPLE-II 時就很想動手寫遊戲,也曾經用 MBASIC 寫過用文字圖形完成的小遊戲,但若想以繪圖方式完成流暢的遊戲就非用組合語言不可,但用組語寫遊戲不是一件容易的事;曾經跟大哥開玩笑說,如果電腦的速度快一百倍就可以用 BASIC 寫了;曾幾何時比起當年早已不止快上百倍了(參7),現在都有人用 JavaScript 來完成 APPLE-II 的模擬器了(參8)。

       在 1989 年時,有一次逛書局,無意間看到一本書:"玩 Lode Runner 學 C 語言" (參9), 一時好奇就將它買下,買完後就束之高閣,直到 2013 年底才又找出來,原來這是一本翻譯的書,原作者是位日本人,內容是關於移植 Lode Runner 到 NEC PC-9801所需的知識及刊載這個遊戲的主要原始程式碼和流程圖,並附上作者與原遊戲作者 Doug Smith 的訪談對話錄。(參10)

       有了上述的書籍資料,於是就試著用高階的 HTML5 來重新改寫。

LR_Language_C_front
book
Lode Runner で学ぶ実践C言語 (日文原版) 玩 Lode Runner 學 C 語言 (中文翻譯版)
遊戲與程式

       程式是以 JavaScript 加上 CREATEJS (A suite of Javascript libraries) 寫成的,主要參考書中侍衛(Guard) 的 AI 演算法,但正如書中作者所說,刊載的程式碼是早期的版本,所以有很多動作與 APPLE-II 的版本不同,且還有一些 BUG,經過一段時間的修改及測試才比較接近原始動作,但並非完全一致,且速度也不盡相同。

      以前的遊戲設計,多在單工(single-tasking)環境下開發,要考 慮到分時 (Time sharing);讓不同的人物看起來是一起動的,主程式中有一 Time Ticker 來處理,每次進入此程序就將遊戲主角,依行進方向固定增/減一個值(± xMove , ± yMove) ,而侍衛則依以下方式處理:

  var movePolicy = [   [0, 0, 0],  //0 個侍衛處理方式
          [0, 1, 1],  //1 個侍衛處理方式 
          [1, 1, 1],
          [1, 2, 1],  //3 個侍衛處理方式
          [1, 2, 2],
          [2, 2, 2],
          .......
         ];
  以1個侍衛為例:在主角移動3次時侍衛依次移動0,1,1人,3次移動2人,每個侍衛平均移動 2/1 次
  以2個侍衛為例:在主角移動3次時侍衛依次移動1,1,1人,3次移動3人,每個侍衛平均移動 3/2 次
  以3個侍衛為例:在主角移動3次時侍衛依次移動1,2,1人,3次移動4人,每個侍衛平均移動 4/3 次
  以4個侍衛為例:在主角移動3次時侍衛依次移動1,2,2人,3次移動5人,每個侍衛平均移動 5/4 次

  這種設計方式是在單工的情況下達到分時的方式,當遊戲者每次在同一時間下達相同指令就會得到相同的結果,不過也有個好處,程式中的展示關卡,就是記錄 遊戲者下達的指令,再把它依序播出就可產生出展示效果。現在的設計方式則可利用多工(multi-tasking)來達到不同物件同時運動的效果。

  遊戲中侍衛(Guard)尋找遊戲主角的方法並非找最短距離,而是用一些規則找出作者認為的最佳方向,也因為如此,遊戲才顯得有趣,並常常需要利用有時覺得 "笨笨" 的侍衛來過關!

遊戲玩法

       遊戲中通常會有多名侍衛(Guard)用來保護寶物(Treasure)不被遊戲主角取走,主角可以挖洞來陷害侍衛,並想辦法取得所有寶物,當取完所有寶物後,通常會出現逃離此關的樓梯,並跑到最上層,才算完成此關遊戲。

       以前的遊戲常常需要訓練手指的靈活度,才比較容易過關,這遊戲的速度應該比原 APPLE-II 版要快一些,初玩者可以試著降速至 SLOW 可能比較接近原速度。

遊戲特色
  • 3個遊戲模式及1個示範模式:
   (1) Challenge Mode
(挑戰模式): 與全世界玩家比過關成績。

(2) Training Mode
(學習模式): 玩家可自行選關。

(3) Edit Mode
(編輯模式): 玩家可自創關卡。

(4) Demo Mode
(示範模式): 示範玩家過關動作。
  • 5個遊戲版本:
   (1) Classic Lode Runner (150關
難度: 3)

(2)
Professional Lode Runner
(150關 難度: 4)

(3)
Revenge of Lode Runner
(17關
難度: 4)

(4)
Lode Runner Fan Book
(66關 難度: 5) (參11)

(5)
Championship Lode Runner (51關 難度: 5)
  •  兩種主題畫面:
    (1)
apple 2
APPLE-II


(2)
commodore64
Commodore 64


  •  兩種鍵盤操作模式:
   
(1)
repeat on
Repeat Actions On (重複鍵盤動作) :
APPLE-II 版 Lode Runner 動作相同。

(2)
repeat off
Repeat Actions Off (不重複鍵盤動作) :
NES 版 Lode Runner 動作相同。


 此遊戲只適合在 PC 瀏覽器中執行,Chrome 應該是最佳選擇。





遊戲技巧
 
 如何於行進間停止移動 (APPLE-II 版 repeat on):

  原 APPLE-II 版的控制方式為只需要按下方向鍵,就會自動記住,並一直執行此一動作,直到按下其他鍵或無法執行為止。
  所以初玩者最常遇到的就是不知道如何將遊戲主角停下來,其實只要按下無法執行動作的任何按鍵即可。

  以例子說明:

  (1) 停止左右移動:
        最常見就是不知如何停止左右移動,常會重覆按左右鍵來減少位移,其實可以按 上鍵下鍵 即可停止,除非是遇到梯子。

left-right
上鍵 下鍵 來停止左右移動

  (2) 停止上下移動:
       即在樓梯行進間停止移動,可以按 左挖 右挖 鍵即可;尤其是停在樓梯的一半,會這一招功力倍增。

up-down
左挖右挖 來停止上下移動

  

Q:為何停止左右是按上或下鍵,可按其他鍵來停止移動嗎?

A:如同上面提到,只要按下無法執行的按鍵即會停止移動,通常在左右移動時是無法上下,
     所以按 上鍵 或 下鍵 會導致無法執行而停止動作。

     當然可以按其他鍵;只是通常玩此遊戲時,手指是放在 上、下、左、右 及 左挖、右挖 鍵上,
     此時按 上鍵 或 下鍵 最快 (左挖 或 右挖 不行,會挖洞),當然也可以按其他鍵如:空白鍵。


 如何於層層磚塊中取得寶物:

  此遊戲好玩之處就在於常要思考如何取得寶物;最基本的就是寶物的上方有幾層磚塊就至少要在第一層挖幾個洞,
  寶物上方有3層磚塊時,第1層至少要挖3個連續的洞(圖一) ,其他如需要利用時間差的方式取寶(圖二);
  及利用樓梯完成挖洞取寶(圖三) 等;還有很多不同形態的取寶方式等著你來挑戰喔!

digBlock
digTime
digLadder
(圖一)至少連續挖3個洞
(圖二)利用時間差取寶
(圖三)利用梯子取寶




http://LodeRunnerWebGame.com/game/



程式原始碼

      GitHub: https://github.com/SimonHung/LodeRunner_TotalRecall
      舊版: https://github.com/SimonHung/LodeRunner

      Simon's GitHub Projects: https://simonhung.github.io

參考資料

       (01) 網路上看到,用來形容這個遊戲的句子,說得蠻貼切的!原出處不詳,取自:facebook
       (02) Lode Runner 依英文直譯有人稱之"淘金者",但我比較喜歡當時翻成的 "超級運動員"。
       (03) Lode Runner Walkthrough
       (04) NES Championship Lode Runner Stage 1-50 攻略
       (05) Lode Runner 原作者 Douglas E. Smith 已去世 (1960 – September 2014)。
       (06) Lode Runner’s history (TOZAI) & Lode Runner's Histoire & Let's Compare ( Lode Runner )
       (07) APPLE-II 的 CPU 是 8 位元的 6502 其速度約只有 1 MHz :  http://en.wikipedia.org/wiki/Apple_IIe
       (08) APPLE-II Emulator in JavaScript: APPLE-][ JS
       (09) 書本的封底內頁記載著購買日期為:78年8月。
       (10) 與 Lode Runner 作者的對話錄 PDF 檔。
       (11) "Lode Runner Fan Book" 是取自 Apple Lode Runner - The Remake 1.0h 內的一個版本 (感謝原作者提供此軟體);
              原版本共有 84關,只保留63關,加上最後 64~66關,取自 Lode Runner Online (日本 Lode Runner 達人) 共 66 關。
       (12) Explode Runner (日文網頁) : Lode Runner 重製品,包含 Windows 版本,  JavaScript 版本 & Champ Lode Runner 攻略
       (13) Lode Runner Online: The Mad Monks' Revenge 的重製版: Mad Monks' Revenge: Definitive Edition
       (14) 一個詳細介紹 Lode Runner 如何誕生的網頁 "游戏瑰宝 #2:Lode Runner" (簡中)。
       (15) Lode Runner 1 是 2017年 Nexon 發行的手機版本遊戲。

09/30/2014 ~ 06/29/2017
如有版權問題,請告知。