跳至主要内容

PICO-8

· 閱讀時間約 5 分鐘

昨天的貼文中,我隨口地提到了「PICO-8」這個東西,所以讓我來補一篇文介紹它一下好了。

什麼是 PICO-8?

2014 年推出的 PICO-8 是一個「幻想遊戲機」。它不是真的遊戲機硬體,而是一個「假裝自己是一台 1980 年代遊戲機」的軟體。

在 PICO-8 的環境裡,你可以寫程式(用簡單易學的 Lua 語言)、畫像素圖、做 8-bit 音樂,當然也可以玩遊戲。它就像是把 1980 年代的整個遊戲開發體驗,濃縮成一個 13 MB 不到的軟體包,比你手機裡隨便一個 App 都還要小。

不會寫程式也能玩

就算自己不會寫程式也沒有關係。PICO-8 的社群非常活躍,網路上已經有上千個別人寫好的遊戲,可以直接從 PICO-8 環境中下載來玩。

而且因為 PICO-8 的設計理念,所有遊戲都是以原始程式碼形式發布的;這表示你不只可以玩遊戲,還可以完全看到每一個遊戲是怎麼運作的,甚至可以修改別人遊戲裡的程式碼、美術、關卡、音樂、音效。

更酷的是,因為 PICO-8 設計上刻意的限制(128 x 128 畫素的螢幕、16 色色盤、4 軌音樂加音效、32 KB 的程式碼限制),導致它的硬體需求非常低。就算是超級老的筆電、低耗電的 Raspberry Pi,甚至是 Linux 掌上遊戲機,都可以流暢執行 PICO-8。

我之前在師大附中教音樂科技課的時候,也用 PICO-8 教學生寫簡單的小程式和做 8-bit 音樂。

必玩遊戲推薦

所以 PICO-8 上到底有什麼好玩的遊戲?讓我推薦幾個。

首先是昨天的貼文中提到的 Tera: Mind Over Matter,這是一個超級完整、玩起來不輸商業大作的俄羅斯方塊遊戲。

然後是 Celeste,沒錯,就是那個大受好評、獲得 2018 年遊戲大獎最佳獨立遊戲的 Celeste。它的原型就是在 PICO-8 上面誕生的(據說只用了四天就開發完成)。

還有 Breakout Hero,精緻好玩的打磚塊遊戲!

以上三個很完整的遊戲,檔案大小都在 80 KB 以下,加起來比你手機拍的一張照片還要小!

很自由的非自由軟體

Pico-8 的售價是 15 美金,我覺得超級物超所值。雖然在授權上並不是自由軟體,但它的整個生態系還算是滿自由的。

它的主程式沒有惱人的 DRM 保護,可以離線備份和執行,所有遊戲都是開放原始碼,軟體本身的運作機制也相對透明,也有非常詳盡的文件。跨平台支援(Linux/macOS/Windows)當然也沒問題,另外也有完全免費的教育版可以在瀏覽器中直接執行。

如果你一定要用自由軟體,其實還有另外一個跟 PICO-8 很像的專案叫做 TIC-80。TIC-80 是在 PICO-8 推出的三年後(2017)才問世,功能比 PICO-8 更強,但正是因為功能太強了,所以我反而沒有那麼喜歡用,網路上的討論好像也比 PICO-8 少一些。

軟體的時光膠囊

我覺得像 PICO-8 這樣的「幻想遊戲機」是一個保存軟體的超好方法。

你看現在的手機 App,只要作業系統一更新,舊版本可能就沒辦法用了,壽命超短,頂多就幾年而已。但反觀 40 年前出品的任天堂紅白機遊戲,到現在卻都可以完美地在各種裝置上執行。為什麼會這樣呢?

關鍵在於「規格的穩定性」。實體遊戲機的硬體規格是固定的,不會變動,所以為它開發的軟體可以永遠在上面運行(當然,前提是你不要用 DRM 破壞它的話)。PICO-8 就是把這樣的觀念搬到了軟體上,它定義了一個永不改變的虛擬硬體規格,這樣一來,只要未來的裝置能夠執行 PICO-8(或它的模擬器),所有的 PICO-8 遊戲就可以活下去。

當我們的後代在 2125 年從廢墟中挖出一百年前的硬碟時,他們絕對無法執行 Steam 上的 3A 大作(因為都被 DRM 鎖住了),但一定能打開這些檔案大小不到 80 KB 的 PICO-8 小遊戲。

未來的遊戲史學家可能就會寫:「21 世紀初期,人類發明了一種叫做 DRM 的東西,專門用來確保自己的作品無法被後代看到。到底為什麼會有這種自我毀滅的舉動,目前還是一大謎題……」

Apotris

· 閱讀時間約 3 分鐘

在高中畢業後的那個暑假,當同學們忙著為大學生涯做準備時,我則是在家苦練俄羅斯方塊。不是手機上那種隨便玩玩的版本喔,而是 Arika 出品的神作──Tetris: The Grand Master 系列。

我覺得 Tetris: The Grand Master 系列是當時(2003、2004 左右)最好玩的俄羅斯方塊遊戲,沒有之一。它除了有很棒的音樂和畫面之外,最厲害的就是開創性的「20G Mode」。

「20G Mode」(20 倍重力模式)就是指方塊落下的速度超快,在一格畫面之中就會落下 20 個方塊的高度,也就是一出現就直接掉到地上的意思啦。但因為從方塊著地到真正鎖定之前,還有短暫的時間可以移動,所以你可以用各種技巧讓方塊在地上「爬行」,來放到想要的位置,非常好玩!

(15 年前錄的影片,這是 Tetris: The Grand Master 2)

不過以上不是重點,寫這篇是想要推薦我最近發現的俄羅斯方塊遊戲 Apotris,真不敢相信品質這麼好的遊戲居然是完全免費、完全自由、開放原始碼的軟體!

Apotris 程式跑得很順、畫面漂亮、音樂也不錯;有多種遊戲模式可以玩,可以自定背景顏色、背景效果、方塊外觀,還可以切換多種旋轉模式,例如 SRS 和 ARS 等等1,來模擬各種其他版本俄羅斯方塊的手感。

(Apotris 的 Linux 版畫面)

最重要的是,它有超級多平台的版本:

  • Linux / macOS / Windows 當然是基本款(下載頁面
  • 也有網頁版可以在瀏覽器裡直接玩
  • 連任天堂 Switch、3DS 和 Gameboy Advance 版本都有!這表示你可以在任何有 GBA 模擬器的裝置上玩:手機、平板、各種掌上型遊戲機,甚至是智慧冰箱都有可能!

除了 Apotris 外,再一個額外的推薦:在 PICO-8(那是什麼?)平台上的 Tera: Mind Over Matter 也是一個免費又超棒的俄羅斯方塊遊戲!

非常抱歉,這篇貼文很可能會讓你浪費數百小時在堆方塊上面,誰叫你沒事要看我的 blog 呢?

Footnotes

  1. SRS = Super Rotation System, ARS = Arika Rotation System. 指方塊如何出現、怎麼旋轉、怎麼「蹬牆、蹬地」等等的設定,每個俄羅斯方塊遊戲都會有一點點差異,對於高速玩家來說,可以細微調整這些設定很重要。像是我以前玩的 Tetris: The Grand Master 就是採用 ARS 系統。

賭徒破產理論

· 閱讀時間約 2 分鐘

聽過「賭徒破產理論(Gambler's Ruin)」嗎?這個的核心概念是:就算遊戲本身是完全公平的,只要一直玩下去,賭本大的人永遠會贏。資本的差距本身就是最大的不公平。

例如,我跟你玩一個猜銅板正反面的遊戲;你猜對了就贏 1 塊錢,猜錯了就輸 1 塊錢。聽起來很公平吧,每一次的勝率都是 50%:

  • 如果我們兩個人一開始都只有 1 塊錢,那麼兩人的勝率(贏走對方所有金錢的機率)的確就都是 50%。
  • 但如果我有 2 塊,你只有 1 塊呢?我的勝率就提高到了 66%。
  • 如果我有 10 塊,而你只有 1 塊?我的勝率就飆升到了 91%。
  • 想想看,如果你跟賭場(資本基本上是無限)不斷地玩這個遊戲,最終破產的機率有多少?當然是 100%。

就更別說遊戲本身就不公平的情況了。我用電腦了模擬一個「只有一點點不公平」的情況:你的勝率是 49%,賭場的勝率是 51%。假設你有 10 塊錢,賭場有 1000 塊錢。

結果模擬了 10,000 場之後,賭場全勝。一次都沒有例外。

這個故事告訴我們什麼?大概有以下幾個:

  • 賭博時要學會停下來:在遊戲差不多公平時,你絕對有可能因為運氣好在一開始取得領先。但如果不停下來的話,最後賭本大的人還是會贏走全部。
  • 玩「你真的有優勢」的非運氣遊戲:在賭場裡,大概只有撲克(Poker)是這樣的遊戲。因為在撲克桌上,你的對手不是賭場,而是其他玩家;如果技術高超的話,是可以取得能夠贏錢的優勢的。
  • 一直玩,不破產,就會贏:在日常生活也是這樣,人生也是一大堆遊戲的集合,只要你能夠累積各種「賭本」(金錢、健康、信用、人脈、作品集……),一直不斷重複參與遊戲,並且小心在失敗時不要「破產」的話,最後的贏家就會是你!

愛到卡慘死

· 閱讀時間約 2 分鐘

前幾天跟朋友聊天時,檸檬卷不知道為什麼提到一個電影叫《愛到卡慘死》(Price of Love)。

那個電影在幹嘛不是重點,重點是這個台灣亂翻的片名明顯是台語,可是我們台語程度都很爛,這到底要怎麼唸呢?

搜尋了一下,才發現我們教育部有這個《臺灣台語常用詞辭典》,許多詞條都附有例句,而且例句也有整句發音,很不錯耶!如果偶爾想學一句台語的話可以用。

我又在網路上逛了一下,發現教育部還有出一套免費的台語教材《咱來學臺灣台語》,一共有七冊,PDF 檔都可以免費下載!書的製作都還不錯,收錄了數百個生活常用單詞和例句,全部都有發音音檔。(下載網址

(書中其中一頁的樣子)

但美中不足的是,PDF 書裡面的 MP3 音檔全都是網路連結。顯然教育部的工程師們認為,讓台語學習者每聽一個詞就得重開瀏覽器分頁是個超棒的主意。畢竟,連點開區區幾百個連結的耐心都沒有,是要怎麼學好台語呢?

所以我決定用終端機拯救自己。先利用 PyMuPDF 把所有 PDF 裡面的連結網址抓出來,然後再用 wget 一次下載,這樣就可以把所有音檔收集到自己電腦上離線使用,不怕網路「卡慘死」囉!

(把所有 MP3 檔都抓下來)

至於詳細的技術步驟我就不在這裡寫了,想試試看的人就直接問大型語言模型吧!

Sprezzatura

· 閱讀時間約 3 分鐘

Sprezzatura」是一個源自義大利文藝復興時期的詞彙,指的是讓困難的事物看起來輕鬆自然的藝術,或在執行複雜任務時保持一種不經意的態度。

記得小時候那個班上功課最好的學霸嗎?她在段考前總會說:「怎麼辦?我都沒唸!」然後全部都考滿分。她搞不好其實每天都熬夜苦讀,但刻意隱藏背後的努力,讓一切看起來超級不經意,輕而易舉。這就是 Sprezzatura。

在市區騎機車,其實很少會加速到超過 50-60 km/h;就算是騎 50 cc 的機車,油門催到底也可以達到這個速度,但引擎的聲音會像是在慘叫,一點都不輕鬆。但如果是換成 125 或 150 cc 的機車,輕輕鬆鬆就可以達到這個速度了,而且覺得還很有餘裕。這就是 Sprezzatura。

身為鋼琴老師,我發現許多鋼琴學生的彈奏常常都缺了 Sprezzatura。事實上,他們反而會做相反的事:明明彈得很不錯,但彈給觀眾(也就是我)聽的時候,卻會刻意表現得很努力的樣子,例如過於快速地移動肢體,或是把臉湊近樂譜,彷彿在宣告「看我多麼認真啊」,這樣反而減低了表演的說服力和輕鬆感。

想想看,我們看各種作品時,是不是也喜歡享受 Sprezzatura?

NBA 場上有許多人能準確地投進三分球,但沒人能像 Stephen Curry 一樣「不費吹灰之力」地投進三分球。在 TNT 的轉播上,當 Curry 進球時,主持人們1常常都說他「makes it look stephortless2

我第一次看到 Persona 5 遊戲的使用者介面時,也被它的 Sprezzatura 驚豔到。可以把這麼複雜的轉場動畫「毫不費力地」放進選單中,順暢自然到好像這根本沒什麼一樣。傳達出一種「只是選單而已就可以這麼華麗,表示開發人員的功力很有餘裕」的感覺。

好的作品讓人看到你的努力;偉大的作品讓人誤以為你根本不需要努力。

想知道我是怎麼寫出這篇文章的嗎?我只是起床打開電腦,在鍵盤前啪啦啪啦兩下就打出來了!超簡單的!Sprezzatura!

(順便業配一下,如果想要彈鋼琴時更有 Sprezzatura,我的課程《鋼琴技巧急診室》會教你不費吹灰之力地應付各種音型的技巧,讓你的琴聲從 50 cc 升級到重機等級!)

Footnotes

  1. Ernie Johnson、Shaquille O'Neal、Kenny Smith 和 Charles Barkley。

  2. Stephortless = Stephen + Effortless.

最近喜歡的飲料

· 閱讀時間約 3 分鐘

紅牛無糖版

就是淺藍色罐子的那一種。個人認為無糖版比標準版好喝太多,喝完不會有澀澀黏黏的殘留感,而且無熱量!

我通常都會用氣泡水(參考以下)稀釋來喝,比例大概是 1:1;這樣不但更清爽解渴,而且可以享受更久!記得要加冰塊!

多喝水 Stay Cool 氣泡水

不常喝氣泡水的人,可能會覺得氣泡水不就都一樣嗎?

不!超級不一樣!不只氣泡有分強弱(或者你要形容成顆粒粗細也可以),而且即使都是無調味的水,每個牌子的味道也有一點點差別。

Stay Cool 這款是我最近很愛的,它有加一點點的鹽,所以有很些微的鹹味;氣泡算是中等偏強,不管是單喝還是搭上紅牛喝都很好喝,記得一定要加冰塊!

義美仙草甘茶,無糖版

我家附近就有一家義美的專賣店,它每次進貨我都會去把它掃光,買到店員都會背我手機號碼了。檸檬卷也很愛喝這個!

它也有有糖版,但我覺得比較澀、不好喝。無糖版的比較喝得到仙草原味,而且幾乎無熱量。

喝法是加冰塊,如果心情好的話加一點點鮮奶調味,很快就可以喝掉兩大瓶!

海尼根無酒精啤酒

我在去年(2024)戒酒之前是超愛喝啤酒的。不過其實我喝酒並不是因為想要買醉,而是真心覺得啤酒很香很好喝。

要是能有喝起來像就像啤酒,但完全零酒精的飲料該有多好?那就是海尼根無酒精啤酒啦,滿足啤酒癮的完美飲料!

它其實比真的海尼根啤酒更好喝(不過當然無法跟精釀啤酒相比),而且熱量更低,每 100 ml 只有 21 大卡!不會喝醉的感覺太好了!雖然不是真的啤酒,但還是不能加冰塊

Nescafé Gold Blend 咖啡粉

不要因為它是即溶咖啡粉又超級便宜就瞧不起它,個人覺得比 7-11 的美式咖啡好喝非常多!

泡的時候加入剛好能覆蓋杯底的量就好,加熱水和一點點牛奶,就是完美的早餐飲料了。它還有紅色瓶蓋的去咖啡因(Decaf)版本,所以下午或晚上也能喝,不怕因為咖啡因失眠

(你的最愛飲料是什麼?歡迎寫信到 b@wiwikuan.com 推薦給我!)

如果技術差一點

· 閱讀時間約 2 分鐘

鋼琴時,看到一段音樂,要怎麼知道詮釋的重點在哪裡?我以前的鋼琴教授魏樂富老師,曾經教我一個很簡單但很有用的方法:

「想想看,這裡如果是技術╱品味差一點的人會怎麼寫?」

當你看到蕭邦作品中的一個片段時,先問自己:「如果是個一般的網友,他會怎麼寫這小節?」然後再看看蕭邦實際上寫了什麼。兩者之間的差異,就是演奏時應該要強調的地方。

厲害的作曲家常常會在關鍵處做出普通作曲家不會想到的選擇──可能是意想不到的旋律走向、突如其來的轉調,或是比預期早了一小節結束的段落。我們身為演奏者的任務,就是讓聽眾 get 到這些巧思,體驗到「哇靠這寫得太厲害了吧」的爽感!

這個想法也可以讓你更好地欣賞其他形式的作品。原本只是一眼掠過的細節,一旦開始問「如果是技術╱品味差一點的人會怎麼設計?」就可以看到許多原本不會注意到的事情:

  • 看電影時:為什麼角色講話時,鏡頭在拍桌上的水杯?如果是技術╱品味差一點的導演會怎麼做?
  • 玩遊戲時:為什麼選單文字選了這個字體和顏色?如果是技術╱品味差一點的設計師會怎麼做?

自己創作時,可以問反向的問題:「這看起來像是路人做的嗎?如果是技術╱品味比我更好的人會怎麼做?」這樣也許能發現更多可能性……或者發現自己真的就是個路人。

不健康餘命

· 閱讀時間約 3 分鐘

最近看到衛福部的數據1,指出了台灣人平均的「不健康餘命」長達 7.4 年!

所謂的「不健康餘命」,簡單來說就是指身體不健康,需要依賴他人照顧的期間。根據 2022 年的資料,台灣人的平均餘命是 79.8 歲,但健康平均餘命只有 72.4 歲。這表示,我們平均有 7.4 年是屬於失能、臥床或被慢性病纏身的狀態。

7.4 年很久耶!比你從大一唸到碩士畢業還要久,比我第一段婚姻還久(事實上,是超過兩倍的長度),甚至比蘋果從推出一台新筆電到停止軟體支援的時間還要久!

而在這不健康的 7.4 年中:

  • 連自己正常走路、吃飯都是一種奢侈
  • 想出門旅行?別鬧了,連上廁所都要人扶
  • 想研究新事物?大腦早就不聽使喚
  • 每天的日常就是一直跑醫院、領藥、吃藥
  • 親友只覺得你是個負擔,看到你就覺得心累

我之前其實不會想這種事情的,但隨著年紀增長(今年底就要滿 40 了),就開始會有這種危機意識。尤其是當我觀察身邊的長輩們,那些有在運動的、注重健康的人,和那些每天耍廢的,身體狀況真的差非常多。

我現在也比較能懂 Ivan Illich 為什麼批評現代醫療系統會讓人「喪失照顧自己的能力」。尤其是在台灣這個健保如此便宜的國家,健保卡就好像魔法卡片一樣,彷彿只要刷一下就可以神奇地刪除健康問題。大家真的會漸漸忘記,身體是要自己去照顧的。

我以前就是一直這樣殘害自己,例如:

  • 一直吃超加工食品(反正營養不足再吃保健品就好)
  • 一直熬夜(反正睡不著時吃安眠藥就好)
  • 過量喝酒(反正宿醉的話喝解酒酵素、止痛藥就好)
  • 一直不運動(反正體重失控時再緊急節食就好)

不想以後度過所有人都覺得你是累贅的 7.4 年,真的不能再做以上這些事了。

所以,當你下次有「工作很忙、沒時間運動」的想法時,要記得不運動其實並沒有省下時間,反而會讓我們在人生後段躺在床上更久、浪費更多時間。現在欠的健康債以後是要連本帶利償還的啊!

Footnotes

  1. https://dep.mohw.gov.tw/DOS/cp-5083-55378-113.html

卡位

· 閱讀時間約 1 分鐘

在飛機上玩 iPad 時,記得把它抓緊一點。

根據 SimpleFlying.com 的報導,一架載了四百多人的、漢莎航空(Lufthansa)從洛杉磯飛往慕尼黑的 A380 客機,因為一位商務艙乘客的 iPad 卡進了座椅結構中,不得不轉向波士頓緊急降落。技術人員在波士頓取出已變形的 iPad 後,航班最終比原定時間晚了三小時抵達慕尼黑。

那位 iPad 的主人,當下承受著四百多位乘客的怨念眼光,應該壓力很大吧?「這是機長廣播,各位乘客請注意,我們必須在波士頓緊急降落,原因是 32C 座位的乘客把 iPad 卡進座位裡了!」

這就是科技的進步啊!以前只有恐怖份子才能改變飛機航道,現在你只需要一台 iPad 就能做到。「對不起,我的 iPad 掉進去了,我們非得在俄羅斯降落不可!」──根本就是史上最低成本、最不費力又合法的劫機方式!

二手資訊

· 閱讀時間約 3 分鐘

最近 Morgan Housel 在他的一篇 Blog 貼文上列出了一些值得思考的問題清單,裡面有許多都滿有趣的,都很值得寫篇文章來聊聊,今天來看其中一個問題:

Which of my strongest beliefs are formed on second-hand information vs. first-hand experience?

(那些我堅信不移的事情,有多少是建立在二手資訊上,有多少是來自親身經歷?)

據說,我聽說,他們都說這是真的

我想他主要想要表達的,是我們太容易只因為「聽說」和「據說」,就對某件事深信不疑:

  • 媽媽說玩股票的人跟賭博沒兩樣(但她買樂透就不是賭博)
  • 老師說你要考上好大學,人生才會順遂(雖然創校以來,學校從未調查過校友的人生是否順遂)
  • 阿姨說淋到雨會禿頭(但雨水噴到腿上的話,腿毛不會掉)
  • 朋友說要有車才容易追到女生(他開著 BMW,目前單身)
  • 同學說你應該關心那個韓國偶像團體,不然就落伍了(然後他自己也記不住成員的名字)
  • YouTuber 說睡覺貼足底貼真的有效(而且觀看次數越高就越有效)
  • LINE 群組有人說吃芒果配啤酒會中毒(但芒果口味的啤酒就不會)

這些從各種管道灌輸給我們的觀念,有多少是我們自己驗證過的呢?可能不太多。但我們目前的世界觀,應該有不小的一部分是「聽說」和「據說」來的。(據說是這樣啦)

追根究柢

當然,我是覺得要每一件事都有「first-hand experience」是滿困難的。比方說,我相信去某些國家旅遊是有一定的安全風險的,但我本人並沒有在國外被拘留的經驗;如果我得先有「第一手經驗」才能形成這個信念,那可能就太遲了。

但至少我們可以做到:當聽到別人說一件事情的時候,不要直接當作它是真的。可以多追問一下資訊是從哪裡來的,然後親自去讀那個來源資訊;如果該資訊又引用了別的來源,那麼就再往上追朔更源頭的資訊,並且利用多個管道檢查該資訊的可信度。

社會壓力

有時候,我們接受二手資訊並不是因為懶得查證,而是因為社會壓力。

前幾天我跟髮型設計師聊天,她說她如果買了冰的飲料,都會在外面偷偷喝完,因為拿回家的話,家人看到了會唸「女生喝冰的不好」。

可是等一下,喝冰的飲料到底哪裡不好?是如何不好?男人喝就不會不好嗎?運作機轉是什麼?有研究論文可以證明嗎?但是要反駁太麻煩了,與其去跟傳統觀念爭論,不如就(至少假裝)接受對方想要強加在我們身上的觀念吧。

值得一提的是,你現在正在閱讀的想法也算是一種二手資訊,請謹慎保持懷疑。至於前面說的足底貼,我倒是真的有第一手經驗:除了起床後要踮腳走到浴室把腳底的黑色不明黏液洗掉外,唯一排出的「毒素」大概只有錢包裡的鈔票吧。