tag:blogger.com,1999:blog-40136604991156239042024-02-20T11:53:38.973+08:00星之一角<p>What have you found for these years?</p>Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.comBlogger2308125tag:blogger.com,1999:blog-4013660499115623904.post-61958057144046996032020-11-07T16:52:00.006+08:002020-11-07T17:34:50.284+08:00卡朵打完了卡朵。是可愛的故事與謎題,美術極好,無可挑剔。不過呢,對我來說有點過於單調平淡,而且有些謎題過於瑣碎無聊,常常需要兩相比較,對於記憶不好的我來說,加上操作按鍵的不順,感覺是拖了點不必要的時間。雖然乍看之下是冒險故事,但沒有冒險的期待與刺激,對我來說有點走馬看花打過去的感覺。
<br><br>
如果要說怎麼改進的話,謎題可以更精練一點,故事可以更驚奇一點,操作可以更流暢一點(例如任何時候按 tab 都能進入地圖模式,而非一定要先取消其他畫面上的東西,或是用 esc 當固定的取消按鍵,這樣玩家不用思考現在在什麼模式下,再選擇相對應的按鍵)
<br><br>
想想我覺得我是有點失望的。這個失望其實有點無形,因為就像剛才說的,其實沒什麼可挑剔的。問題是整個過程中其實也沒什麼期待,尤其到後面,因為我已經可以預期,踏上這塊大陸,就是下一個走馬看花,任何東西都是點到為止,馬上換題材,馬上換角色,Sorry, but the princess is in another castle.
<br><br>
謎題的部分,簡單不是問題,但後面很多大抵上大同小異,如果兩秒就解了,可能也不是問題,問題在重複而感到瑣碎,很有噢又一個例行謎題的感覺。加上操作往往要不斷在模式間切換,流暢感不佳。好的地方是,至少沒有整人謎題。有些遊戲會用整人謎題拖時間。有一次我在森林卡好久才看到原來有張地圖沒看到Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com1tag:blogger.com,1999:blog-4013660499115623904.post-8852185520984225372018-10-16T02:08:00.002+08:002018-10-16T02:25:13.658+08:00白無垢のミタマ Mitama the Oracle 白無垢御靈前一陣子朋友抽到了白無垢,是貓咪大戰爭裡面最破格的角色,比小地藏還離譜。<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqKEmJ_tcMDUlvC3SqovLkBwfoRLE5I0_XRG7w4_auB7QY6S9OA91W3YTcaY1v94bkChm8lX3Qji_4VkuvF54NP_rlQUPIPy75w7v0zuaLjT1Y9wRmClOgqsTbWnq1mp1n87-6yheTTqE/s1600/d6ff02f1-6bf2-438e-a764-0f01f4be0350.png" imageanchor="1" ><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiqKEmJ_tcMDUlvC3SqovLkBwfoRLE5I0_XRG7w4_auB7QY6S9OA91W3YTcaY1v94bkChm8lX3Qji_4VkuvF54NP_rlQUPIPy75w7v0zuaLjT1Y9wRmClOgqsTbWnq1mp1n87-6yheTTqE/s640/d6ff02f1-6bf2-438e-a764-0f01f4be0350.png" width="640" height="480" data-original-width="1600" data-original-height="1200" /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-bQ7N48gkv8IFlPp3vXNf9hjAGI-4cPQ4sTR1IJ7oieOkXDA3wv2cprZZjwMMVe_DOWHuMvwI2C7qq_sDv4xmYVqDDMMG1yT-4ll9RZYEc6xFHObV_xCkiBXge_jX5B4_haem5UGxNwE/s1600/Screenshot_20170408-114827.png" imageanchor="1" ><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj-bQ7N48gkv8IFlPp3vXNf9hjAGI-4cPQ4sTR1IJ7oieOkXDA3wv2cprZZjwMMVe_DOWHuMvwI2C7qq_sDv4xmYVqDDMMG1yT-4ll9RZYEc6xFHObV_xCkiBXge_jX5B4_haem5UGxNwE/s640/Screenshot_20170408-114827.png" width="640" height="360" data-original-width="1600" data-original-height="900" /></a><br />
<br />
第二張是我正好抽到第二隻,所以上面沒有寫 NEW!<br />
抽到第一隻還不會抓 screenshot, 所以就沒抓到紀錄。<br />
<br />
我還記得當初抽到時的情境。抽到前兩三週前,不知道為什麼,總之我打定主意一定<br />
要抽到 Baby Gao (幼獸加歐(幼獣ガオ)),因為我已經玩好久了,事實上也花了<br />
不少錢了,而從剛開始玩時,我就一直想要。除了他很強以外,也很可愛呀:<br />
<br />
<a href="http://battle-cats.wikia.com/wiki/Baby_Gao_(Uber_Rare_Cat)"><img src="https://vignette.wikia.nocookie.net/battle-cats/images/3/33/Baby_Gao.png/revision/latest"></a><br />
<br />
攻擊動畫是底下的小貓進行咬人的動作,然後頭上的加歐就被甩下來,前滾翻出去,<br />
再漂回小貓頭上。攻防都對全屬性加成,小時候可以量產,長大射程長,抗波動,<br />
還有 5% critical chance, 是完全的全方位角色,沒有弱點可言。<br />
<br />
那時候只有 Uberfest(超激祭), 也只有這隻 exclusive 的超級角色。<br />
抽了好多年都抽不到...<br />
<br />
等到下一次 Uberfest 的前兩三週,就一直很亢奮期待這次能抽到。總算在<br />
event data 中看到排程,也隨著時間愈來愈近,愈來愈亢奮。都幾歲的人了,<br />
這也是滿莫名其妙的...。<br />
<br />
如果我沒記錯的話,排程正好碰上我要去忘記是台中還是台南講 GitLab on GKE.<br />
這樣看來,大約是一年半前吧。照理說要睡足的,卻因為過度亢奮很難睡,早上<br />
也特別早醒來,也沒辦法再睡著了。所以就乾脆帶著睡意爬起來,打開 app,<br />
果然 Uberfest 來啦!<br />
<br />
我記得我大概準備了 4500 貓食左右吧,這樣可以三次 11 連抽。現在想想,<br />
這行為其實真的滿智障的,畢竟這遊戲用貓食抽 Uberfest 跟浪費錢沒啥兩樣...。<br />
一般策略是這樣的(那時其實還沒意會到),Uberfest 用 rare tickets 去抽,<br />
因為 9% 的 uber rate 是比平常的 5% 高不少。但是由於偶爾會有的保證抽,<br />
只要丟 1500 貓食下去,一定至少最後一抽會是 uber. 以機率來說,其實這樣<br />
有效多了。畢竟 9% 就算 11 連抽下去,至少一隻 uber 的機率也才<br />
1 - 0.91**11 => 65% 而已。而有保證抽的情況下,是 100% 而且是至少一隻。<br />
<br />
嘛,不過反正那時我整個亢奮,都期待和盤算這麼久了,哪管得了這些 XD<br />
雖然很不理智,但轉蛋遊戲常常就是拚這股氣...。<br />
<br />
抽著抽著,結果白無垢就這樣跳出來了。<br />
<br />
那時候白無垢才剛出沒多久,也沒多少人討論,我完全不知道強不強。當下當然還是<br />
很高興,畢竟這也是兩隻 exclusive 的其中一隻。雖然我最期待的 Baby Gao 還是沒抽到,<br />
不過也是不錯啦。<br />
<br />
抽完之後,準備了一下東西就去搭高鐵了。<br />
<br />
後來實際用了幾次,才意識到白無垢其實比 Gao 要來得強多了。小隻的 Miko Mitama,<br />
巫女姬御靈,還滿沒有用的,我用了幾次就收起來了。這讓我很惋惜,因為一般而言<br />
我比較喜歡用可以量產的,而且 Miko 好可愛喔。<br />
<blockquote class="twitter-tweet" data-lang="en"><p lang="und" dir="ltr"><a href="https://t.co/nGMRl9twBD">https://t.co/nGMRl9twBD</a> <a href="https://t.co/cRpFl43daK">pic.twitter.com/cRpFl43daK</a></p>— 猫氏の日常 (@nyansi_nitijo) <a href="https://twitter.com/nyansi_nitijo/status/1040805746407956480?ref_src=twsrc%5Etfw">September 15, 2018</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script><br />
<br />
但白無垢真的太離譜了,有太多困難的關卡,要用特殊打法才打得過的,帶上白無垢就<br />
直接輾過去就好了。一開始完全沒意識到這件事,是因為光看數值,其實白無垢並不是<br />
看起來很厲害的。Gao 看起來是攻擊型,而白無垢正好有耐打的特性,感覺上白無垢<br />
應該會是坦的,而且攻擊力確實不高。但實際上白無垢血也不多,就算有耐打的特性,<br />
也撐不了幾下攻擊。加上射程又只有 350, 在 uber 裡面,算是超級短手的,帳面上<br />
看起來就很弱。<br />
<br />
不過實際使用的話,就會注意到那些數字其實不是重點。加上白無垢被擊退次數很多,<br />
要說不耐打,也不盡然。是不能承受幾下攻擊,射程又短,但被打的頻率卻沒有很高,<br />
實際存活率其實比大多數的 uber 都要來得好。畢竟被打幾下就會自動後退,攻擊型態<br />
又是所謂的 backswing, 就是 after cast 的時間很長,就是攻擊之後會停下來,不會前進。<br />
這是很重要的存活條件。像是 Valkyrie Cat 就是完全相反的狀況,after cast 的時間<br />
幾乎是零,會不斷往前衝,很容易就進入敵人的射程範圍。如果攻擊之後會停下來一段時間,<br />
這樣就不太會進入敵人射程範圍,而是等敵人進入自己的射程範圍。<br />
<br />
同時,白無垢的 cast time 也非常的短,意思就是也不太會打空。然後最重要的是,<br />
100% 緩慢敵人,加上緩慢的時間又非常的長。打個比方就是,如果場上有兩隻白無垢,<br />
而且他們剛好交互攻擊的話,敵人應該是會完全無法前進的。<br />
<br />
真正破格的地方就在這裡。白無垢不是坦,但存活率還是很高,而且有無敵的控場能力。<br />
白無垢不是無敵的,不是所有關卡都有用,但如果講哪隻貓毀了最多關卡,那絕對是白無垢。<br />
<br />
*<br />
<br />
後來我又抽到一隻,所以現在白無垢是 +1... 自從我知道怎麼預測轉蛋後,回頭想想,<br />
這算哪門子的無敵運氣啊。再之後,則是用 platinum ticket 抽到 Baby Gao!!!<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_0OKFGuYlDQhI4CB7MQnrvwKjiJk2HiB5YNj5NtIrVQKDETJ9toAwVhkS_MYyZpWEecaaAzZYXYov6jDvpsEkFuTy0EWucWhn0ucs5pjBHPYzwge1uPKFLay69gjmcB9pw_fd4qNyCMo/s1600/Screenshot_20170917-134533.png" imageanchor="1" ><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_0OKFGuYlDQhI4CB7MQnrvwKjiJk2HiB5YNj5NtIrVQKDETJ9toAwVhkS_MYyZpWEecaaAzZYXYov6jDvpsEkFuTy0EWucWhn0ucs5pjBHPYzwge1uPKFLay69gjmcB9pw_fd4qNyCMo/s640/Screenshot_20170917-134533.png" width="640" height="360" data-original-width="1600" data-original-height="900" /></a><br />
<br />
這完全是個意外。之前的 platinum ticket 都給我垃圾,害我好幾次都不想買了。<br />
但不知道什麼超絕運氣,居然終於總算抽到這夢寐以求的貓咪啊 XD<br />
這應該是 1/64 的機率之類的...。<br />
<br />
可是事實是,我很少用他,幾乎是不知道還要挑什麼貓咪時,才會挑他上場。雖然<br />
很多論壇仍然把他放到制高點,但對於擁有絕大部分的貓咪的我而言,他其實是標準的<br />
Jack of all trades... 通常很難打的關卡,都要挑特定的貓來用,像他這樣樣樣通,<br />
但沒有一樣真正精通的貓,幾乎沒有場合是比較好用的。尤其在貓咪種類愈來愈多,<br />
各種 niche 場合的貓愈來愈多,他就愈來愈沒有上場的空間,除非正好有一關是<br />
什麼鬼都有,我隊伍沒辦法所有貓都帶的情況下,他這種全才才比較有發揮的空間。<br />
<br />
嘛,不過這也是怨念就是了。不能沒有擁有 XD<br />
<br />
然後有一天一張 rare ticket 一抽入魂 @@ 只是抽好玩的,完全沒這個計畫。<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMXqxI4bgDEQUgrfuk0Q6sKtfiCLw_6YtDxoMVdyYZl9BI3VMDRQdT-bgvkjvwefHwuF1Y4t_mMk2BNuyZuaFRNw6w1l8W3m4fcKALGrH_7J6ZFUbWnomfTknq_b-EOGxn-Q-naf3Yi0s/s1600/Screenshot_20180505-193330.png" imageanchor="1" ><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMXqxI4bgDEQUgrfuk0Q6sKtfiCLw_6YtDxoMVdyYZl9BI3VMDRQdT-bgvkjvwefHwuF1Y4t_mMk2BNuyZuaFRNw6w1l8W3m4fcKALGrH_7J6ZFUbWnomfTknq_b-EOGxn-Q-naf3Yi0s/s640/Screenshot_20180505-193330.png" width="640" height="360" data-original-width="1600" data-original-height="900" /></a><br />
<br />
這也是在他剛出沒多久後的事。看數字也是不太強,至少沒有 Gao 強,實際上<br />
因為很容易死,用處也是比較有限。不過跟 Gao 比,我還是比較常帶他上場。<br />
畢竟小隻的疊起來,DPS 其實非常高,算是很不錯的攻擊輔助手。不能當主力,<br />
因為通常會死太快。<br />
<br />
回想起來,雖然是真的花了不少錢,但再看看預測轉蛋的結果,這根本是神運啊。<br />
靠預測和 platinum ticket, 我也才終於抽到這第二夢寐以求的貓:<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimoRNVQpjyiBrGG4voCHoe3W4uc0vZBgaaCm59pk2RnDsClF1dPiZRCuTyByJ0PrANgXtaSjiqEqgJqDy2LJRmyegVGYROAPbHWwvGHKMKItj8dJMjTLX2P5TlUTQxLwTghYukXWiYyJg/s1600/Screenshot_20180925-144156.png" imageanchor="1" ><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEimoRNVQpjyiBrGG4voCHoe3W4uc0vZBgaaCm59pk2RnDsClF1dPiZRCuTyByJ0PrANgXtaSjiqEqgJqDy2LJRmyegVGYROAPbHWwvGHKMKItj8dJMjTLX2P5TlUTQxLwTghYukXWiYyJg/s640/Screenshot_20180925-144156.png" width="640" height="360" data-original-width="1600" data-original-height="900" /></a><br />
<br />
抽到時都要哭了(假的),畢竟這真的是狂抽好多年一直抽不到的...。好多年是有點誇飾啦,<br />
算算應該頂多一年多。有他打 Heavenly Tower 風雲塔就輕鬆多了。不然每過一段時間就要<br />
痛苦打一次 40 層是真的有點痛苦...。雖然我也漸漸熟練了,失敗率愈來愈低。但能躺著過<br />
還是想躺著過 XD<br />
<br />
*<br />
<br />
還差 D'arktanyan(影傑漆黑達太貓)和 Dark Mitama(黑無垢御靈) @@<br />
就算能預測也是抽不到啊。而且顯然不預測抽到比較多啊(笑)(4 vs 1)Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com1tag:blogger.com,1999:blog-4013660499115623904.post-55862540442377329652018-10-11T18:46:00.001+08:002018-10-11T18:46:36.971+08:00Multiple inboxes in GMailNow I am trying very hard to fight with my exploded inbox,<br />
and I found that multiple inboxes from the advanced features<br />
in GMail somehow works. The UX is not smooth enough, because<br />
it's not refreshing the unread status fast enough, but at least<br />
this is something.<br />
<br />
Enable multiple inboxes:<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5WR4jCKTxBBm-DtoI348ET-WYNhzWu3wyY1FDKbj7vrg9BNjm4iG-5Hlw6zOXFqoasxfAMhvz7iKpS60nAuUqywPNfT_EaagSIXr1xt7fIpw97_WS8g2CeSqKAn8RXqwHatLjzHcxx6g/s1600/Screen+Shot+2018-10-11+at+18.38.53.png" imageanchor="1"><img border="0" data-original-height="264" data-original-width="1498" height="112" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5WR4jCKTxBBm-DtoI348ET-WYNhzWu3wyY1FDKbj7vrg9BNjm4iG-5Hlw6zOXFqoasxfAMhvz7iKpS60nAuUqywPNfT_EaagSIXr1xt7fIpw97_WS8g2CeSqKAn8RXqwHatLjzHcxx6g/s640/Screen+Shot+2018-10-11+at+18.38.53.png" width="640" /></a><br />
<br />
And here's my setup:<br />
<br />
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxdgUJJ_97k_x4XZv2BVGA2zIWK96i3NKNANZ_JN9bxH4BAuJxF0S-ye1GkxQ7rXZudd5awinfohYE2L01gf8hbQvL28wKSFmmATDj5PkSSOtyQvcF6dsC66ucCxBxWhWcOAv0TKPxZvg/s1600/Screen+Shot+2018-10-11+at+18.35.04.png" imageanchor="1"><img border="0" data-original-height="472" data-original-width="969" height="312" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjxdgUJJ_97k_x4XZv2BVGA2zIWK96i3NKNANZ_JN9bxH4BAuJxF0S-ye1GkxQ7rXZudd5awinfohYE2L01gf8hbQvL28wKSFmmATDj5PkSSOtyQvcF6dsC66ucCxBxWhWcOAv0TKPxZvg/s640/Screen+Shot+2018-10-11+at+18.35.04.png" width="640" /></a><br />
<br />
Basically:<br />
<br />
0. Important unread emails<br />
1. Regular unread non-GitLab emails<br />
2. Unread GitLab emails beside the GitLab Bot<br />
3. Unread GitLab emails from the GitLab Bot<br />
<br />
I am still flooded with responses from the threads the Bot had added comments,<br />
but I'll see how this will work out in tomorrow's batch.Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-62622806174829337912018-09-09T14:42:00.001+08:002018-09-09T14:42:17.169+08:00重啟咲良田以下應該是沒有捏到,不過多少可以猜測劇情走向,請自行斟酌。<br />
<br />
<br />
<br />
昨天看完<a href="https://ani.gamer.com.tw/animeVideo.php?sn=7590">重啟咲良田</a>,覺得情緒有點受牽動,有些憂鬱,躺在床上滾了很久睡不著。<br />
後來強迫自己思考貓咪大戰爭的通用隊伍編輯,才慢慢覺得自己意識變淡而後睡著。<br />
在那之前,則是在思考為什麼會有這樣的情況。<br />
<br />
或許一個可能的原因是,我覺得編劇對相麻實在太過殘酷了。如果是我,我會想<br />
給他一個比較好的結局。接著忽然意識到,其實我還滿喜歡這個角色的。<br />
<br />
另一方面,我理所當然沒有淺井的能力,個性也截然不同,但在想法與心願上,<br />
倒是頗有感受與認同的。同時我們也很清楚地看到,擁有不同的能力,會對性格與<br />
行動抉擇造成絕大的影響。這也滿理所當然的,試想一個全知全能的人,怎麼可能<br />
會沒有自信或畏縮呢?一個自覺什麼事情也做不好的人,又怎麼可能有自信或是有<br />
行動力呢?當然這不是充要條件(反之不亦然),只是性格因此而受影響,而且<br />
難以改變,也是滿理所當然的吧...<br />
<br />
本作因為牽涉過多時間悖論與假設,不宜針對細節過度推敲。不過細細所思角色的<br />
各種言行舉止,我是覺得還滿有魅力的。Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-29394125103739773952018-07-06T18:34:00.000+08:002018-09-25T16:09:20.164+08:00Let's Encrypt for *.godfat.orgThis is a note to myself so that if my server breaks I could easier recover it.<br />
<br />
* Use <a href="https://github.com/lukas2511/dehydrated">dehydrated</a> (renamed from letsencrypt.sh)<br />
* Use <a href="https://github.com/jbjonesjr/letsencrypt-manual-hook">letsencrypt-manual-hook</a><br />
* Set <code>domains.txt</code> as <code>godfat.org *.godfat.org > godfat.org</code><br />
* Run: <code>./dehydrated --cron --challenge dns-01 --hook 'hooks/manual/manual_hook.rb'</code><br />
* Go to my DNS provider and setup TXT records manually. <del>Twice</del> Two TXT records in the same time.<br />
* <code>sudo cp certs/godfat.org/fullchain.pem /etc/nginx/ssl.crt</code><br />
* <code>sudo cp certs/godfat.org/privkey.pem /etc/nginx/ssl.key</code><br />
* <code>sudo systemctl restart nginx</code>Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-3748186406114045032018-07-05T16:58:00.001+08:002018-07-05T16:58:34.402+08:00Miko Mitama, The Grateful Crane, and Urashima Taro<a href="https://old.reddit.com/r/battlecats/comments/8w5bwt/discussion_the_mighty_lord_gao_in_first_form_is/e1tmn2e/">Miko Mitama, The Grateful Crane, and Urashima Taro</a><br />
<br />
Miko Mitama's production speed is way too low, not tanky enough to be a tank, range is too short to survive long enough, and the damage is not high enough. The only niche she has is probably resistant to shockwave, but now we got Li'l Lion Cat I don't see how Miko Mitama would have any use, not to mention that she has to be competing with the best cat in the game -- Mitama the Oracle. It's doomed.<br />
<br />
The Grateful Crane has very high DPS, but it really moves too slowly and the range is too short, and it's not tanky enough to even attack once before it dies. I don't see The Grateful Crane could have any use against beside extremely short range enemies like cyclones.<br />
<br />
There are a few similar rare cats like Elemental Duelist Cat, which has very limited range, not tanky enough, however getting higher level like 40+30, Elemental Duelist Cat has 37,000 health which could probably take a few hits. This changes things a lot. As long as it could start hitting the enemies, they could stack up and deal massive damage provided that they could land a hit or two.<br />
<br />
Unfortunately, The Grateful Crane, even at whooping 50+70, only has 23,310 health, maybe that could take one or two hits... but with a more reasonable level like 50+5, only has 16,372 health, and with much slower movement speed, I don't see this could be useful...<br />
<br />
Urashima Taro on the other hand, I really like him. It's certainly the best spammable black tank. He's certainly not as destructive as Kasa Jizo, but still spammable and much tankier than Kasa Jizo. I don't remember which stage, probably a 3-star stage. I didn't win with just Kasa Jizo because I can't stand with the black attackers. King Gamereon is certainly much more tankier than Urashima Taro, but he's not spammable. In this particular stage, King Gamereon died before I could summon him again, while just spamming Urashima Taro along with Kasa Jizo won the stage for me.<br />
<br />
Using Urashima Taro as a generalist is also fine in my opinion. Of course, don't compare him with Kasa Jizo. I was using Urashima Taro as my main attacker before I got Kasa Jizo.<br />
<br />
Edited: Oh, maybe it's not because I couldn't summon King Gamereon again. It might because that stage was short of money and I couldn't afford summoning King Gamereon.Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-14621386211900503822018-03-16T01:10:00.000+08:002018-03-16T01:10:18.630+08:00Backup Google Authenticator secretsSo I finally <a href="http://blogger.godfat.org/2018/03/rooting-pixel-2-wit-macbook.html">rooted my new Pixel 2</a>, transferring over my data,<br />
game saves, and setting up everything including Google Authenticator.<br />
Now the most important step! The very reason why I want to root<br />
my Android, to backup Google Authenticator secrets...<br />
<br />
What an awful idea to make it only able to backup with a rooted device.<br />
<br />
Here are the steps:<br />
<br />
<pre><code class="bash"># Enable Developer options on the phone
# Enable USB debugging
# Connect the phone with the computer
$ /usr/local/share/android-sdk/platform-tools/adb shell
walleye:/ $ su
# Grant superuser privilege from the phone screen
# If it's not popping up, and it shows permission denied,
# then go to Magisk app which we used to root, and find
# the option to grant superuser privilege to Shell manually
walleye:/ # cp /data/data/com.google.android.apps.authenticator2/databases/databases /sdcard/Download
# Ctrl-D to leave phone console
$ /usr/local/share/android-sdk/platform-tools/adb pull /sdcard/Download/databases .
$ sqlite3 databases
sqlite> select * from accounts;
# You should see all your secrets!</code></pre><br />
Of course, remove /sdcard/Download/databases on the phone afterward.<br />
Keep that sqlite3 database in a safe place. (or just copy the secrets and remove it)<br />
<br />
References:<br />
<br />
* <a href="https://www.protectimus.com/blog/google-authenticator-backup/">Manually Extract Your Credentials [Root Only]</a>Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-86119091491848026992018-03-15T21:33:00.000+08:002018-03-15T21:34:36.603+08:00Rooting Pixel 2 with MacBook<pre><code class="shell"># Install tools on the computer
$ brew cask install android-sdk
# Install platform-tools in order to have adb
$ sdkmanager platform-tools
# Download official Android image:
# https://developers.google.com/android/images
# Extract everything and find "boot.img"
# Download Magisk (the only 3rd party stuff)
# https://www.apkmirror.com/apk/topjohnwu/magisk-manager/
# Enable Developer options on the phone
# Enable OEM unlocking
# Enable USB debugging
# Connect the phone with the computer
# Check if connected
$ /usr/local/share/android-sdk/platform-tools/adb devices
# Boot to bootloader
$ /usr/local/share/android-sdk/platform-tools/adb reboot bootloader
# Check if fastboot is available
$ /usr/local/share/android-sdk/platform-tools/fastboot devices
# Unlock the bootloader (NOTE: This would WIPE all the data)
# Run it only after backing up
$ /usr/local/share/android-sdk/platform-tools/fastboot flashing unlock
# UNLOCK THE BOOTLOADER
# Reboot the phone
$ /usr/local/share/android-sdk/platform-tools/fastboot reboot
# Setup the phone again
# Enable Developer options on the phone again
# Upload Magisk and "boot.img" to the phone
$ /usr/local/share/android-sdk/platform-tools/adb push 'magisk_5.6.2.apk' /sdcard/Download
$ /usr/local/share/android-sdk/platform-tools/adb push 'boot.img' /sdcard/Download
# Install Magisk from Downloads
# Click "Install", "Patch Boot Image File" and pick "boot.img" from Downloads
# Download the patched_boot.img from the phone to the computer
$ /usr/local/share/android-sdk/platform-tools/adb pull /sdcard/MagiskManager/patched_boot.img
# Reboot to bootloader again
$ /usr/local/share/android-sdk/platform-tools/adb reboot bootloader
# Flash the patched image
$ /usr/local/share/android-sdk/platform-tools/fastboot flash boot patched_boot.img
# Reboot
$ /usr/local/share/android-sdk/platform-tools/fastboot reboot
# All done!</code></pre><br />
References:<br />
<br />
* <a href="https://www.androidcentral.com/how-root-google-pixel-2">How to root the Google Pixel 2</a><br />
* <a href="https://forum.xda-developers.com/pixel-2/how-to/guide-unlock-flash-root-pixel-2-walleye-t3702417">[GUIDE] Unlock/Flash/Root for the Pixel 2 (walleye)</a>Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-31706860974791232352018-01-18T21:43:00.000+08:002018-01-18T21:43:13.695+08:00How to X with/in programming [languages]這系列真的都很好笑,而且都很酸 XD 不過很多都要有點經驗才看得懂。<br />
<br />
<a href="https://toggl.com/programming-princess">How to Save the Princess in 8 Programming Languages</a><br />
Lisp 和 PHP 讓我笑最多。<br />
<br />
<a href="https://blog.toggl.com/kill-dragon-comic/">How to Kill the Dragon with 9 Programming Languages</a><br />
Haskell 超好笑 XD Swift 也不錯。<br />
<br />
<a href="https://blog.toggl.com/build-horse-programming/">How To Build A Horse With Programming</a><br />
還是 PHP 讓我噴笑 XDD<br />
<br />
<a href="https://blog.toggl.com/world-created-programmer/">If The World Was Created By A Programmer</a><br />
酸斃了 XD neck.js!Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-33718389497940220142018-01-07T21:21:00.000+08:002018-01-07T21:21:15.685+08:00Seventh coat(セブンスコート)劇情還算是滿有趣的。<br />
<a href="http://novect.net/april.html">Seventh coat(セブンスコート)</a>,有<a href="http://novect.net/april_tw.html">台灣中文版</a>。<br />
閱讀長度約 2 至 3 小時。<br />
<br />
以下基本上沒有捏他,不過難保不會影響對於情節的推測,請斟酌閱讀。<br />
<br />
開頭實在給我有點 meta 的感覺,有種好像我本人也跑到遊戲裡面的異樣感,<br />
這點還滿有趣的。另外則是誠如<a href="https://forum.gamer.com.tw/C.php?bsn=6629&snA=4282">譯者的推薦</a>:<br />
<blockquote>「<br />
雖然我只有翻譯,不過因為這款提到太多製作者的心聲<br />
所以推薦給所有想走創作者這條路的人<br />
」</blockquote><br />
閱讀的過程確實讓我想起不少當年想做遊戲和寫腳本的各種心情,<br />
還有回想起我過去許多經常交流的網友們。翻翻<a href="http://novect.net/tw/royaume.htm">仿劇情內容的網站</a>,<br />
真的很有那時代的感覺,雖然 2009 好像也太新了,我的時代或許<br />
是在 1999 到 2005 前後吧 XD 不知不覺早已是年老的年輕人了。<br />
<br />
覺得比較可惜的是,最後收尾算是很正面地平鋪直敘收掉了。當然,<br />
這樣其實也沒什麼不好,在這個時代或許我們是需要多一點正面的東西 XD<br />
只是我覺得這樣略嫌淺了一點。我相信大部分的人,就算不是所有的人,<br />
你多問幾次,用各種不同的方式,在各種不同的情境,得到的答案恐怕<br />
都會有所不同。如果還可以像這樣把人丟到一個完全不同的環境,讓他<br />
重新體會一次人生,誰又會放棄呢?然現實卻很難發生這種事,或是說,<br />
正是因為我們沒辦法換到一個完全不一樣的環境,重新來過一次啊。<br />
<br />
不過也罷,換個說法,我其實也一直覺得透過閱讀這些,讓我們盡量<br />
體會一些不同的世界,體會不同的角色,以此來想像自己也可以換到<br />
一個完全不一樣的環境,來藉此得到某種救贖吧。是的,我也體驗過了,<br />
我在這裡體驗過了。大概是這種感覺吧。<br />
<br />
另外則是你不要騙我了,他們哪是歐洲人,根本就是一群日本人吧!<br />
這些角色性格,明明就是很標準的各種日本遊戲的角色群 XD<br />
說是歐洲人實在太有違和感了,害我有時候很出戲 XD<br />
<br />
我之前有不少荒廢的劇本(現在還是覺得夕陽前夕沒做完有點可惜),<br />
完成度大都很低。不過寫完什麼,仍然是一個覺得沒辦法完成但還是想做的<br />
目標之一。前一陣子有把一些想法寫在 <a href="https://github.com/godfat/spellbook/blob/481723232166650836107e0aa295c3f96fa6b9e2/note/story.md">spellbook/note/story.md</a>Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-89983240213060576692017-12-11T20:51:00.001+08:002017-12-11T20:51:39.409+08:00遊戲經濟 (0)# 遊戲經濟<br />
<br />
這裡遊戲經濟指的是遊戲內的經濟,討論背景以 Guild Wars 2 為藍本,<br />
但不限於 Guild Wars 2(後稱 GW2)。討論前提為遊戲內有提供匿名交易的系統,<br />
在 GW2 內稱為 Trading Post(後稱 TP)。在這系統內,買賣雙方都自由匿名出價,<br />
惟買價不可高於最低賣價、賣價也不可低於最高買價。這個限制確保了每一筆<br />
交易都一定是最高買價(直接售出),或是最低賣價(直接購入),沒有取巧空間。<br />
<br />
換句話說,每個物品都會有兩個價格清單(listing),<br />
買方出價由高至低為 B0, B1, B2, ...<br />
賣方出價由低至高為 S0, S1, S2, ...<br />
每一筆最新的成交必然是 B0(最高買價,直接售出)或 S0(最低賣價,直接購買)<br />
<br />
在 GW2 內賣方上架還有 5% listing fee, 然後成交還有 10% transaction fee,<br />
不過這個我們後面再討論。另外需要記得的四個要素,分別是需求(demand)、<br />
供給(supply)、物品(items)、和流通貨幣(liquid gold)。<br />
<br />
需求跟供給應該很好理解,這裡不多解釋。物品是指實際上遊戲中可以拿來使用的東西,<br />
這包含武器、防具、skin, 鍛造素材(crafting materials)等等,可以在 TP<br />
上交易的東西。有些物品是 soul bound 或 account bound, 意思是不能在 TP<br />
上交易。這些物品雖然不能進入市場,因此不直接影響市場,但會因此影響需求,<br />
進而間接影響市場,因此仍然有討論的必要,但僅以個案或舉例說明。流通貨幣則是<br />
遊戲內的交易貨幣,liquid 表示其流通性,gold 則是遊戲貨幣單位。<br />
<br />
寫到這裡,忽然想到我之前好像也寫過一篇相關的心得,不過現在卻找不到,<br />
該不會我只在內心寫完了吧?雖然覺得有點可惜,不過重新說明一次也沒什麼不好...。<br />
<br />
# 要素說明<br />
<br />
接下來我們說明各要素之間的關係。需求與供給最基本的關係,自然就是需求愈多,<br />
價格就會上升;反之供給愈多,價格就會下降。很簡單的例子就是很多人覺得很需要,<br />
就直接購買了目前市場上的物品,交易金額就會是 S0, 然後 S1 成為新的最低價,<br />
S2 成為原本的 S1, 持續操作幾次後,整個賣價就會不斷攀升。<br />
<br />
當然如果大家都這樣購買商品,那就不影響 B0, B1, B2, ... 但實際上這種事當然<br />
不會發生。像我貪小便宜,除非急需,或是真的覺得差異不大,不然我都是出最高買價,<br />
即 B0' 要比原本的 B0 再多貴一塊錢。我不能立即拿到我要的物品,但如果有人願意<br />
直接販售給目前最高價,那就是我,我就可以買到。反過來說,如果很多人選擇直接售出,<br />
則 B0, B1, ... 會不斷下降。再不然也是 S0, S1, ... 會不斷下降,只是暫時還沒成交。<br />
<br />
這件事其實已經透露出了一些訊息:<br />
<br />
0. 交易金額的改變,主要由直接購入或是直接售出的交易決定<br />
1. B0 跟 S0 的價格差異,有著很重要的意義在<br />
2. B0, B1, ... 的數量,與 S0, S1, ... 的數量會影響交易決策<br />
2. 如果不是直接購入,我的資金會卡在 TP 上無法使用<br />
3. 如果不是直接售出,我的物品會卡在 TP 上無法使用<br />
<br />
我們後面再討論價格差異、數量與買賣雙方的交易決策。<br />
<br />
物品應該也很好理解,例如我在地圖上砍樹挖礦割草,我會得到木材礦料蔬菜,但我<br />
個人不見得需要這些木材礦料蔬菜,可是我可能需要其他東西。那我就可以販賣這些,<br />
以便換取流通貨幣,並購買其他我想要的東西。這其實就是交易與經濟的最原點了。<br />
當然以物易物或許可以說是更原點,但缺少流通貨幣的話無法系統性地分析,也就很難<br />
調節經濟了。要談經濟終究需要流通貨幣。<br />
<br />
流通貨幣在 GW2 是個比較難以取得的東西。路上是不會撿到錢的。只有很偶然,打死<br />
某些怪物,偶爾會拿到一點錢。有很少數的某些事件也可以拿到錢,但大抵上相較一般<br />
物品是非常少的。其他的來源包括有些物品雖然不能在 TP 上交易,但卻可以賣給<br />
NPC。這種遊戲內稱為 vendor price, 大部分的物品都有 vendor price, 這確保了<br />
這個物品的最低價值。假設某個事件會瘋狂掉某個物品,導致供給多到任何人都不需要了,<br />
讓需求降為零,這樣至少 vendor price 可以保證這垃圾還是可以消耗掉,有點價值。<br />
另外 TP 上最低買價和最低賣價都不能低於 vendor price, 這也保證不會在 TP 上被騙。<br />
<br />
有小部分的物品,遊戲內稱為 junk items, 他的價值就只有 vendor price. 這也是<br />
很重要的一個流通貨幣來源。遊戲比較後期,daily achievement reward 也包含<br />
2G (2 gold), 即 2,00,00 coins。這應該也算是不小的貨幣來源,甚至可能是主要來源。<br />
<br />
另一個重點,NPC 不會跟玩家競爭交易。重要的東西如果要用買的,都是在 TP 上與其他<br />
玩家交易。這是活絡市場很重要的一個要素,也表示了流通貨幣其實沒有一定的價值,<br />
是個不能夠保值的東西。遊戲初期的流通貨幣,跟現在的流通貨幣的價值,是完全不一樣的。<br />
可以說是現在通貨非常膨脹,所有的東西可能都是當時的一百倍貴了...。但只要這個過程<br />
是緩慢的,這對遊戲經濟並不是一件壞事。我甚至覺得所有健康的經濟,恐怕都是緩慢地膨脹,<br />
畢竟健康的經濟是靠蓬勃的交易建立的,流通貨幣的緩慢跌價,鼓勵大家囤貨不囤錢,有助於<br />
鼓勵交易。<br />
<br />
這邊可能少講一個重要的概念,就是物品的真正價值,跟實際交易價值當然是幾乎無關的。<br />
例如我們需要吃東西才能存活,食物有極高的生存價值,但因為供給也非常多,我們通常<br />
會有足夠的食物可以生存,超過生存以上的食物則對我們來說意義不大,等等其他種種因素,<br />
食物交易價格不會太高。但由於這種真正的價值相對性太高,我們就只看一些個案或特例。<br />
<br />
# 交易決策<br />
<br />
終於來到主題了...。我們先來看前面提到的:<br />
<br />
> 1. B0 跟 S0 的價格差異,有著很重要的意義在<br />
<br />
我們先看比較簡單的例子。以秘銀礦 <a href="https://wiki.guildwars2.com/wiki/Mithril_Ore">Mithril Ore</a> 為例,這是一個需求量雖然不小,<br />
但供給量卻大到太離譜的物品。畢竟滿等 80 等的地圖上,到處都可以挖,而且所有金屬製品,<br />
只要是高等角色打到的,拆掉幾乎都是給 Mithril Ore. 我不知道當初這樣設計的理由是什麼,<br />
因為很顯然是完全失衡。當然,最早其實也沒什麼鍛造需求,因此多數材料都非常便宜。但後來<br />
大概是希望讓各種材料都有意義,或是說讓低等或中等玩家可以藉由賣材料賺錢,後來每個等級的<br />
材料全部都是需要的。需求改變了,但供給卻沒變,導致這些高等材料都超級賤價,然後中等材料<br />
最貴,因為中等玩家最少...。這邊也可以看到,整個需求與供給是牽一髮動全身的,穩定的狀況下,<br />
隨便改變一個重要的環節,整個經濟是有可能崩潰的。這大概也是為什麼這邊的供給沒有改變的原因吧。<br />
<br />
總而言之,Mithril Ore 的供給太多,所以就像垃圾一樣。但價錢雖然低,也沒低到 vendor price,<br />
因為實際上後來被改到需求也是很多的,只是遠遠沒多過供給。再一方面,誰知道遊戲商不會忽然<br />
推出什麼東西,忽然又要大量的 Mithril Ore 呢?類似的案例已經出現無數次了。因此也是有人會賭,<br />
在價格夠低的時候,就大量收購 Mithril Ore, 因此造成 Mithril Ore 是個價錢非常穩定下跌的物品。<br />
<br />
由於量非常大,價錢又只是穩定下跌,這可以看出來 Mithril Ore 是個交易量異常龐大的物品。<br />
對於一個交易量極大,價錢又極穩的物品而言,B0 與 S0 之間的差異是極小的。印象中通常只有幾塊錢的<br />
差異,是個就算直接購入,我也不會覺得怎麼樣的差異。但由於交易量極大,就算我下單比較低的金額,<br />
其實通常也不用等多久就會買到了。雖然說是穩定下跌,但如果只看單日局部交易的話,可以看到價錢波動<br />
其實也不會很小,原因其實就是很多人可能急用,現在忽然要一千個,又不在乎價錢,就直接購入了;<br />
或是反過來,急需用錢,就直接售出了。<br />
<br />
但為什麼這樣價錢還會穩定呢?其實就是因為大家都看習慣這個價錢了,心裡其實都有認定一個<br />
Mithril Ore 的價錢。如果超過太多,大家會覺得價錢不合理,就會打算等一下再買或是賣,<br />
最後價錢就會回到那個跟平時差不多的價錢。<br />
<br />
這其實完全是靠非常大量的交易才達成的。要有非常大量的交易,還要有非常大量的供給,和非常大量的需求。<br />
這邊 Mithril Ore 大量的需求,有一部份也是靠某些人想要囤貨造成的,不是實際上真正需要。這些人需要<br />
大量的倉儲空間才能玩這個,因為這物品單價實在太低了。<br />
<br />
簡單地說,當 B0 與 S0 之間的價差很小時,通常表示交易量極大,供給和需求都極大。這種東西的<br />
價錢會相對穩定,多穩定則取決於這東西是有怎麼樣的需求。愈是接近日用品,則會愈穩定,操作空間愈小,<br />
除非有人的錢多到可以壟斷整個市場。供給夠少的東西是絕對可以壟斷的!<br />
<br />
* * *<br />
<br />
另一個交易量極小,價格差異極大的極端是 <a href="https://wiki.guildwars2.com/wiki/Preserved_Queen_Bee">Preserved Queen Bee</a>。這東西有著很特別的特效,<br />
裝在身上會有蜜蜂在周圍飛舞,移動還可以拉出搖曳的光軌...。奢侈手工名牌的這種感覺吧。<br />
<br />
這東西的產出極小,小到可能像是中樂透才會打到吧。我也不知道整個遊戲裡面有幾個。看了一下,<br />
現在市場上有賣九個,分別是:<br />
<br />
(4750 gold) * 3, (5500 gold), (5900 gold) * 2, (9k gold) * 2, (10k gold)<br />
<br />
這樣看起來還滿多的,因為曾經有一段時間是一個都沒有,或是只有一兩個而已。之所以市場上<br />
現在有這麼多,可能是因為這東西可以以不折損其價值的方式,賣二手的吧。大部分的奢侈品,<br />
基本上都是用了就不能賣二手的了,這是少數可以賣二手的,因此長時間產量應該會上升。<br />
<br />
最高買價目前則是 2820 gold(B2 是 700 gold), 跟最低賣價差了幾乎有兩千金。這裡可以<br />
看出交易量應該極小,願意直接賣出的人應該不多,畢竟這樣就差了兩千金耶。為什麼我要賣 2820?<br />
我不能賣 4000 嗎?這樣還是比最低賣價便宜 750 金呀。但其實也很可能另一個人忽然跳出來,<br />
賣 3000 金。這樣我 4000 金的要賣掉的機率就很低了,畢竟別人可又便宜了我 1000 金。<br />
我如果是買家,看到 2820 跟 3000 金,也已經接近了,我可能也就直接 3000 金買回去,<br />
省得再那邊 2821, 2822, 2823, 這樣慢慢競標只是消耗大家的精神和力氣而已...<br />
<br />
在這裡,listing fee 就有影響力了。在 GW2 的 TP 裡,要上架物品,會收售價的 5%,意思是<br />
我說我要賣 3000 金,上架的同時,遊戲就會先跟我收 3000 * 5% => 150 gold。這可不是<br />
小數字,而且不能退款。(Asura: No refunds)如果賣不掉,我就是平白損失這 150 金。那我<br />
可能就不想承擔這個風險,就決定直接賣 2820 了。<br />
<br />
反過來,買方不用負擔任何費用,如果我下單 2821 金,然後又有人下單 2822 金,我大可取消,<br />
然後再下一個 2823 金的訂單,然後再取消,也不用負擔任何費用,可以全額取回。我到今天還不是<br />
很確定這樣做的用意是什麼。我猜可能是因為成交價可以低,而不是高吧。畢竟已經有抽 15% 的稅了,<br />
就 gold sink 而言或許已經足夠了。(5% listing fee + 10% transaction fee, 都賣方支付)<br />
<br />
gold sink 的理由則很簡單,避免通貨膨脹太嚴重。愈多交易等於經濟愈好,那抽愈多稅也比較沒關係。<br />
這也是一個很聰明的 gold sink。通貨膨脹一定會發生的原因也很簡單,玩遊戲就是要賺遊戲裡面的東西,<br />
玩家得到的東西自然是愈來愈多,資源還不會耗竭,這完全不是一個零和系統,比現實的經濟要來得簡單。<br />
<br />
除了 gold sink 還要 item sink, 透過消耗材料和消耗物品來減少物品的供給。任何可以增加的東西,<br />
都需要可以被減少,不然任何東西的價值都會被稀釋。假設新玩家是有限,或是增加得不夠快的時候。是的,<br />
玩家也是個非常重要的經濟資源考量。<br />
<br />
> 2. B0, B1, ... 的數量,與 S0, S1, ... 的數量會影響交易決策<br />
<br />
這一點可以看出來有多少潛在的需求或供給。假設現在雖然 B0 跟 S0 之間存在很大的差距,但 S0 的<br />
數量卻異常大,那可以假設有人,或很多人想要大量變賣這個物品。這可以預期短時間內,S0 很可能會<br />
下降,因為另一個想要賣的人,如果也是以 S0 賣出,那他很可能會排不到。因此如果他想要快一點賣出,<br />
他應該以略低於 S0 的價格上架。只要多一點人這樣做,S0 就會一直下降;也是反過來說,如果有人<br />
超大量下單 B0, 想要早一點買到的人,就會想要下比 B0 更高的價格,不然很可能會買不到。這樣 B0<br />
也就會一路漲上去了。<br />
<br />
這是比較短期的趨勢,長期來說的話這樣就不準了,因為不管是哪方都可以取消交易。例如我剛剛如果大量<br />
變賣的價格已經變成 S50 了,我可以想像很可能要放到明年才賣得掉,我就直接取消了。雖然得損失 5%,<br />
但我重新以更低的價格上架,我才有機會賣掉這些物品,以取得流動資金。<br />
<br />
從另一個角度來看,這就跟心理有點關係了。如果慢慢一點一點買或是賣的話,其他人就不容易看出我的意圖,<br />
價格也就比較不容易改變。如果我有耐心一個個買,或是一個個賣,這樣長遠看來我則能穩定取得利益。<br />
當然這是相較我一口氣下單一堆或是上架一堆的情況下。操作也是有成本的,大概就在這邊。如果可以寫個程式<br />
固定一個個賣,或是固定一個個買,應該會很有利可圖。但我想這應該違反 ToS。<br />
<br />
# 投資標的<br />
<br />
如上面所提到的,流通貨幣是不能保值的,因此長遠看來囤跌價可能性低,或是漲價可能性高的物品,<br />
會是比較容易保持財富的方式,就是投資了。那麼什麼樣的物品值得投資呢?一般而言,應該是產量<br />
很少的東西,或是需求量極大的東西。Mithril Ore 是產量極大,需求不少,長期會跌,因此不是好的<br />
投資標的。Preserved Queen Bee 產量很少,但太貴也太不穩定了。要把這當投資,要有大量的錢,<br />
而且要有很大顆的心臟,也要有心理準備可能得囤非常久,畢竟已經太貴了,大家需求也不高。<br />
<br />
好笑的是,這遊戲的黃金,<a href="https://wiki.guildwars2.com/wiki/Gold_Ore">Gold Ore</a> 也是超級賤價,跟現實世界完全不同。(我說,那貨幣不是 gold<br />
嗎?Gold Ore 不值錢實在不合理)黃金的產量其實也是非常少的,但需求卻差不多是零吧。鍛造<br />
ascended equipment 需要大量的各種材料,惟獨不用黃金也不用白銀。因此這兩者都是超級賤價,<br />
完全沒有需求可言。他們之所以還沒有跌到 vendor price, 應該是因為大家期待哪一天這些東西會<br />
忽然變得很有用,做什麼東西要把他們當材料,價格就會飛天了,因為他們的產量原本就都很少!<br />
我自己也買了一些囤起來,因為以取得難度而言,現在真的太便宜了。只是囤了幾年還真的到現在<br />
也是一點屁用都沒有,純粹佔倉儲空間而已...。我當然也不可能有那個財力能壟斷這些材料。<br />
<br />
很幸運的是我曾經在 <a href="https://wiki.guildwars2.com/wiki/Hardened_Leather_Section">Hardened Leather Section</a> 上賺到這一大票。那時候超便宜的,我買了約<br />
一千個吧,後來漲到幾百倍。可惜的是需求上升太多,連我自己都不夠用,後來還是得買一些回來。<br />
那時候比較窮,現在真的要認真囤的話,至少要囤個三四千個才對。<br />
<br />
不過賭漲價的可能性,畢竟是像賭博一樣。比較理想的還是市場比較穩定的物品,例如其中一個是<br />
做傳奇武器的 precursor,之前有人形容這就像房地產一樣,主要是因為他產量非常有限,但也<br />
同時非常穩定。有些物品產量很不穩定,端看有多少人去玩那個內容。precursors 由於沒有綁<br />
特定的內容,任何內容都有可能掉落,因此相對穩定,不會受到玩家間的活動影響。再加上,畢竟<br />
每個人多多少少都會想要傳奇武器,但又不是每個人都有辦法負擔製作傳奇武器的成本。就這點而言,<br />
需求也會相對穩定。<br />
<br />
可惜的是,後來遊戲商推出許多其他的傳奇武器,這樣就稀釋了這些 precursors 的價值,畢竟,<br />
其他的傳奇武器是會跟這些傳奇武器相競爭,導致需求下降,這幾年來價格也在穩定掉落。不過這<br />
也不是必然的,像是之前出了資料片,Thief 新的 elite specialization 是 Deadeye,<br />
使用 rifle, 然後 Legendary rifle <a href="https://wiki.guildwars2.com/wiki/The_Predator">The Predator</a>, 的 precursor <a href="https://wiki.guildwars2.com/wiki/The_Hunter">The Hunter</a>, 就瘋狂漲價。<br />
畢竟大家覺得很帥,想做吧 XD<br />
<br />
另一種好的投資標的,就是產量相對穩定,同時需求又非常大的民生用品 <a href="https://wiki.guildwars2.com/wiki/Glob_of_Ectoplasm">Glob of Ectoplasm</a>。<br />
雖然是完全不同的東西,但這東西在一代就已經被玩家當成貨幣在使用,在二代裡有些時候也會。<br />
主要的原因在於,大部分鍛造的東西,都會需要這個材料。很多合成的配方,也是需要這個材料。<br />
每個玩家多多少少也都會有囤貨的需求,很自然而然這種產量穩定需求又大的東西,就會被選中。<br />
被許多人選中後,價格也同時會變得更穩定,因為交易量本身就是穩定物價的最佳手段。同時這個<br />
物品本身並不貴,也不便宜,完全適中。遊戲商應該是知道這件事,才故意設計這種材料。加上<br />
後來拆掉這個物品,還可以拆出另一個也是很常會用到的材料,使得這個物品變得更有用,也讓<br />
拆出來的這個物品的價格變得更穩定。<br />
<br />
看了這麼多年,這物品可能是價格最穩定的物品。剛開遊戲大約是 33 silver ~ 35 silver 之間,(有點貴)<br />
後來則大概落在 22 silver ~ 25 silver 之間(便宜),畢竟後來產量變多滿多的,價格自然下跌。<br />
這一陣子是掉到 19 silver ~ 20 silver 之間(破盤價),我身上有足夠錢的話想多買一點,因為<br />
我看不太出來是為什麼會跌成這樣,感覺應該過一陣子會回升回去才對。<br />
<br />
另一個有趣的點是,他的產量跟需求的平衡抓得滿好的。我自己打是足夠我自己花的,但真的就剛好足夠,<br />
我也沒辦法有多餘的拿去賣,除非我發現價格不錯。因此趁便宜也應該買一些來囤,甚至是自己用就好。<br />
<br />
最後一個投資標的的例子,就是產量超級穩定,需求不穩定的 <a href="https://wiki.guildwars2.com/wiki/Mystic_Coin">Mystic Coin</a>。產量超級穩定的原因是,<br />
基本上這是一個 time gated 的物品,每天登入一定次數後,可以拿到一些。產量要增加的方式只有<br />
增加更多的遊戲帳號,以一個五歲的遊戲而言,這不太容易發生。產量應該會緩緩下降才對。當然遊戲商<br />
可能會在這時候增加更多的取得管道,避免市場崩潰。<br />
<br />
需求不穩定的原因是,原本其實用途很少,大家都囤了非常多 Mystic Coin,但後來遊戲商推出了一些<br />
需要大量 Mystic Coin 的東西,一口氣提高太多需求,價錢瘋狂漲,漲到幾乎是天價了。後來又慢慢<br />
跌回去,不過基本上現在也是呈現非常穩定下降的趨勢,畢竟這不是常態性需要消耗的物品。從需求來看,<br />
這東西其實不適合囤積,但由於產量太過於穩定,如果把時間拉夠長的話,再怎麼樣應該都不至於賠太多。<br />
就是總有一天可以漲回去的,雖然不知道會是什麼時候。<br />
<br />
# 影響物價的各種原因<br />
<br />
待續 XDLin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-83511526231122109602017-08-04T16:29:00.002+08:002017-08-04T16:30:52.065+08:00Battle Cats feedback<a href="https://questant.jp/q/BattleCats30Mil">https://questant.jp/q/BattleCats30Mil</a><br />
<br />
There's a lot you should do. First of all, any games need new players. You should someway find a way to allow newer players to catch up with old players. You should re-evaluate the idea of cat energy. I know it would be tough to change this without breaking current balance, but removing energy would allow newer players to catch up much faster, and allow the old players to play some stages just for fun! You could make it that if we don't use energy to play a stage, no reward would be given. This could limit the reward for like Facing Danger, yet still allow players to play No Plan A for fun or simply retrying other strategies. Consider that a lot of players are already cheating to replay or gain energy... this would also make the game more fair to those who never cheat like me.<br />
<br />
Also, the way Normal cats work, isn't friendly to a new player too. How could they get the Normal cats to +70 at all? Yet a lot of stages in the legend require high level Normal cats. Or they need to have a lot of ubers. That's not nice to them.<br />
<br />
Secondly, it would be nice to tweak the stats a bit for cats balance. I know that you're somehow using True form to raise under powered cats, and sometimes you would also tweak the stats a bit for individual cats. However some cats even in True form are under powered due to power creep. I've heard that there might have Ultimate form... but please don't do that, just balance the stats would be nice. We'd enough power creep, and power creep would destroy your older levels. That's killing replayability.<br />
<br />
Thirdly, it would be nice to have some QoL changes. For example, it would be nice to have a way to enable auto-production for each individual cats. For example, in some stages I might want endless meat shields. Yes Cat CPU would do this for me, but that's one for all, and I might just want endless meat shields. This could be an improvement to the Cat CPU, or a base functionality, whichever is fine.<br />
<br />
Summary:<br />
<br />
* Re-evaluate cat energy for new players<br />
* Find a way to allow new players to raise the level of Normal cat without cat tickets (or just give more cat tickets, but remove the fact that we could exchange for rare tickets to balance it out. Find a new way to reward rare tickets)<br />
* Balancing cat stats<br />
* Having a way to auto-produce individual cats<br />
<br />
Cheers,Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-2950134688572274742017-04-04T00:42:00.000+08:002017-04-04T00:47:46.983+08:00The Battle Cats 貓咪大戰爭最近打最多的應該是這個遊戲 XD 不過是接上我之前的進度,不是最近才開始玩,<br />
也不是從很早以前就一直打到現在。<br />
<br />
最早知道這個遊戲是看到 ayaya 在玩的。那時候應該只有日版而已。看他在刷寶物。<br />
因為覺得很有趣,後來我也去找來玩。由於看到了英文版,想說英文才看得懂,所以就<br />
玩起了英文版。<br />
<br />
那時我大抵上就把共三章的 Empire of Cats 打完,就此收手沒打了。原因很簡單,<br />
遊戲剛開始我覺得還滿有趣的,但中間似乎有一個很大的空窗期?Stories of Legend<br />
裡面的事件關卡,我完全只有被秒殺的份,而且要的 energy (統帥力) 又太多了,<br />
一下不知道怎麼繼續玩,就沒打了。我想那時候我不知道其實打黃色的關卡就不會這麼難...<br />
<br />
後來是因為什麼原因又拿起來繼續玩不記得了。應該也沒什麼特殊原因。中間是不是<br />
斷了兩次其實我也不記得了。台版是後來才出的。我是也有弄個帳號,不過就偶爾<br />
登入看看而已。曾經有想過要把帳號轉到台版,因為中文版的翻譯比較接近日版,<br />
而且有些地方好好笑,英版的就相對普通不有趣... 但客服說只能把日版轉成台版,<br />
我就算了。反正英版可以大量看廣告賺貓食也不錯 ._.<br />
<br />
總而言之,現在回頭看看的話,我不會推薦這個遊戲,原因跟上面斷掉的原因差不多,<br />
我覺得初期很有趣,但中期會有很長一段不怎麼有趣的過程,到很後面才會又開始<br />
好玩起來。到我現在這個階段,我是認真覺得很好玩。不過要打到這個階段,真的不是<br />
三兩下可以到的。如果不花錢的話,我想至少要一兩年才有可能能打到這裡。更有甚者,<br />
其實花錢也不一定可以。<br />
<br />
這其實是我覺得這遊戲最特別的地方。去查有些手機的遊戲攻略,可以看到所謂無課金<br />
攻略,意思就是沒花錢的打法。在貓咪大戰裡面,也有類似的說法,但其實有點微妙 XD<br />
在英文裡通常會說 no gacha, 意思就是不用轉蛋貓的意思。但取而代之的是,通常<br />
需要等級超級高的一般貓,或是等級很高的狂亂貓,或是一些打贏事件關卡才可以取得的<br />
一些貓。這個意思其實是門檻超級高啊!不打個一年以上,根本不可能有這種等級或<br />
那些貓。這不是花錢就可以達成的,因為很多東西就是要等時間到了事件才會開。甚至<br />
有些事件根本是不定時開放。<br />
<br />
像是我這樣半路才回頭來打,等級就差上許多,很多關鍵我都沒有,用那些 no gacha 的<br />
打法我反而完全沒辦法。而事實上,這遊戲送的罐頭也不算少了,要是真的已經打上了<br />
一兩年那麼久了,其實也應該把稀有和超稀有的貓湊得差不多了。意思是,用了轉蛋貓<br />
實際上門檻反而會比較低呀!(當然如果用上了超激稀有貓(uber)就不一樣了)<br />
<br />
所以真要說門檻最低的攻略,反而是要多利用那些大家都應該抽得到的轉蛋貓。因為這<br />
遊戲的稀有貓種類也沒幾個,多抽幾次很快就能湊全了,再加上這些稀有貓很多都是很有<br />
針對性的,例如打漂浮的短程敵人,帶上死靈法師貓或是醫生(魚夫)貓都會很有利。<br />
<br />
其實 no gacha 的真正精髓在於挑戰,而不是低門檻。就是因為那些稀有貓往往都有<br />
針對性,用對了就會簡單很多,只用普通貓或事件貓則需要許多技巧去彌補那些差異。<br />
另一方面,其實普通貓升到高等級(目前最高 +70),根本就比超稀有的貓都要來得強<br />
很多呀 XD 單論 DPS 或 HP 的話,很多甚至會比超激稀有貓都要來得高。同樣,<br />
超激稀有貓很多都是因為有很強的針對性,在特定關卡才會特別好用。普通貓則是<br />
不具針對性,全部加起來足以應付所有的場合了。<br />
<br />
我農到現在最高的也只有 Eraser Cat 到 +51, 最低的則是 Jamiera Cat +35...<br />
還滿不幸的,很多關卡其實需要 Jamiera +50 以上。偏偏運氣不好就抽不到囉 :o<br />
<br />
列幾個例子。<br />
<br />
Elichi 的 <a href="https://www.youtube.com/watch?v=3585bt2gEi8">The Battle Cats- The Infected King</a><br />
<br />
描述中可以看到他有 hypermaxed cats, 狂亂都 40 等,普通貓都 +60(當時最高)<br />
這樣的配備不打個兩三年應該打不到。很多人一下就打到這邊基本上都靠作弊。這遊戲<br />
好像有滿多地方可以作弊的... 不過我是沒研究。<br />
<br />
影片中的大蠑螈會無限鑽地,攻擊力超級高可以一擊打爆主堡,還會復活一次。我還差<br />
一關才打到這。描述中可以看到他是把傷害算好好,讓女僕貓(Waitress Cat)打最後<br />
一擊,直接消滅他避免他重生。(zombie killer 的能力)這需要多精準的計算啊...<br />
女僕貓攻擊發動可是要等五秒左右。<br />
<br />
另一個例子是 Nurse Wuffa 的 <a href="https://www.youtube.com/watch?v=GhI98-HJk6o">The Battle Cats - Parade of the Dead (Deadly)</a><br />
<br />
我個人是最常看他的影片當攻略,因為他有刻意壓等級,盡量用最弱最容易取得的貓<br />
去打,因此他的影片通常就是門檻最低的打法。當然很多如果我有正好針對到的超激稀有,<br />
就不用像他打得那麼辛苦。雖然很多關卡感覺就是設計給普通貓打的。例如這關也是,<br />
基本上主力應該就是雙巨人(Manic Jamiera + Jamiera),在這關比超激稀有還好用!<br />
主要原因是他們夠坦,輸出也高,敵人攻擊速度也偏慢。我自己由於 Jamiera 等級太低<br />
不能用,所以只用了 Manic Jamiera, 我可以想像我如果沒有這隻應該也打不過。<br />
<br />
Jamiera 等級不夠真的很討厭啊!他的全屬性敵人擊退也是無可替代的。我昨天才<br />
好不容易打過 <a href="http://battle-cats.wikia.com/wiki/Learned_to_Love">Learned to Love</a> 的二星 ><<br />
這關在巴哈等級不能再更高的情況下,我還真不知道三星要怎麼打。就算一樣的戰術<br />
打得過,時機應該也要完美吧。獅子貓的等級應該也要夠高才能補到位。<br />
<br />
另一個公認超難打的是 <a href="https://www.youtube.com/watch?v=HU4kh2dqKMk">The Battle Cats - No Plan A (Deadly)</a><br />
這個我當時打的時候 crazed cats 只能升到 20, 很多影片中的打法我打不出來。<br />
現在等級比當時高多了,就等他事件再開試試看囉。已經等好幾個月還沒開了...<br />
另外或是我如果可以抽到宙斯的話,那應該直接用宙斯加龍宮獸可以硬打,不用技巧。<br />
對了,這關中文版叫貓咪補完計畫,就是仿 Eva 的 XD<br />
<br />
* * * * *<br />
<br />
總而言之,打到後面貓咪種類多了,普通貓和狂亂貓等級高了後,會有滿多變化可以打的。<br />
同樣的關卡去搜尋影片,可以發現打法百百種。根據手上有不同的貓,稍微調整戰術,<br />
都會產生不一樣的打法。以下稍微介紹幾種標準打法:<br />
<br />
0. 最常見的其實就是肉盾貓加上中長距離的輸出貓。以打完 Empire of Cats 為例的話,<br />
大抵上就是小貓(Cat)加上坦克貓(Tank Cat)一直出,他們通常會被敵人的王一擊或兩擊<br />
打死,但沒關係,就一直生,因為他們的目的只是保護在後排輸出的貓,通常是射程在 450<br />
上下,標準例子就是巴哈姆特(Bahamut Cat)。可能搭配噁心貓(Gross Cat),射程 350<br />
和蜥蜴貓(Lizard Cat),射程 400.<br />
<br />
想我當年剛拿到巴哈姆特,想說這好爛啊,攻擊速度這麼慢,根本打不到人啊。不然就是站在<br />
敵人面前發呆,兩三下就被打死了 XD 覺得女武神(Valkyrie Cat)好用多了,至少他跟得<br />
上戰場 XD<br />
<br />
但事實上女武神很少場合用得到,要也是到 True Form 的 Holy Valkyrie 時,因為可以<br />
暫停敵人,在某些場合下很有幫助。女武神主要的問題是射程太短了(350),太容易死了。<br />
<br />
通常只能用巴哈姆特當後排輸出的原因是有不少敵人射程在 400 到 450 之間。大部分的<br />
關卡都可以靠生產無限肉盾擋住敵人,然後讓巴哈姆特慢慢磨死對手。<br />
<br />
當然啦,如果有抽到什麼超激稀有射程在這個範圍的,也是可以取代巴哈姆特。但便宜肉盾<br />
還是只能挑最便宜的小貓跟坦克貓喲,不然錢會不夠燒。<br />
<br />
<br />
1. 另一個常見的打法就是直接用很坦的貓和敵人換血。這種打法通常是靠島貓(Island Cat)<br />
或巨人貓(Jamiera Cat)。這種戰術會用在例如 <a href="http://battle-cats.wikia.com/wiki/Kory">Kory</a> 或 <a href="http://battle-cats.wikia.com/wiki/Berserkory_(Red)">Berserkory</a>, 因為他們的衝擊波<br />
(Shockwave)射程太長了,巴哈姆特可能只能打個一發甚至不到就被打死了。但高等級的島貓<br />
或巨人貓是可以站在他們面前一拳一拳換血... 肉盾就不用叫了,因為會完全沒辦法近身就死了。<br />
<br />
這種打法要有效,一定要夠坦足以撐好幾下不會死,打人也要痛才行。<br />
<br />
<br />
2. 打 Kory 或 Berserkory 還有另一個戰術,其實也是比較常用的,至少在等級比較低時<br />
可能會比較好用,因為等級不夠高的話貓會不夠坦。就是用肌肉腿(Macho Leg)、<br />
龍王貓(King Dragon Cat)、和巴黎貓(Paris Cat, 中文好像叫美模貓),這些射程比較長的<br />
貓。所有射程超過 350 的都可以拿來用,但低於 350 的都不要叫上場。打起來的狀況就是<br />
Kory 在靠近我方貓咪前,就先因為受到太多傷害而被擊退。然後重覆這樣的狀況,把對方打到死。<br />
只要對方不成功擊出任何一擊就先被擊退,這戰術就成功了。千萬不要把射程比較短的貓叫上來,<br />
因為這樣反而會給無尾熊攻擊的機會,而一旦無尾熊發動了攻擊,衝擊波就會打出來,那射程應該有<br />
500 以上,加上他攻擊力高,我方會死成一片。<br />
<br />
<br />
3. 再另一個打 Kory 或 Berserkory 的戰術。這個戰術在打狂亂魚貓的時候可以用。重點在<br />
如果 Kory 或 Berserkory 旁邊有其他攻擊力很強的敵人的時候,我方反而可以出肉盾。<br />
從上面的例子可以看到,肉盾原本會造成讓 Kory 有機會發動攻擊,進而打出衝擊波,讓我方後排<br />
死光。可是如果 Kory 旁邊還有攻擊力很強的敵人,我方肉盾很可能被那個敵人打死,而 Kory<br />
正巧跟那個敵人一起打同一個敵人,但我方肉盾先死掉了,這樣 Kory 就會攻擊落空。落空的<br />
攻擊是不會打出衝擊波的。因此在這個情況下,出肉盾有可能是有好處的。其實不出肉盾也不行啦,<br />
因為不然另一個敵人很可能會擋不住。但重點是,如果 Kory 會落空,那衝擊波就不常發生,<br />
對我方是有利的。在這種情況下,要盡量減少肉盾的血,因為這樣可以增加 Kory 落空的機會!<br />
<br />
<br />
4. 還有一個打 Kory 的戰術,跟用遠程打 Kory 擊退的方式類似,就是靠覺醒巴哈姆特<br />
(Awakened Bahamut)覺醒巴哈姆特到目前為止還是少數沒有超激稀有貓替代品的貓。要把<br />
Into the Future 三章打完才能拿到。簡單地說就是自殺炸彈。覺醒巴哈姆特有超快的<br />
移動力,超級嚇死人的傷害,和打得非常快的特性。但射程從 450 降低至 200, 因此基本上<br />
就是貼著敵人打,兩三下就會被打死。不過就算如此,也已經對敵人造成極大的傷害!<br />
<br />
所以這戰術其實就是讓巴哈姆特飛過去打 Kory, 因為傷害極高,可能一擊 Kory 就被擊退,<br />
然後接下來就是一樣的狀況,無限擊退直到 Kory 死掉為止。<br />
<br />
我原本還不覺得覺醒巴哈姆特有多強,但很多關沒有他我可以保證應該是打不過... 例如<br />
我之前卡很久的 Learned to Love, 完全就是靠巴哈姆特可以打退那些鬣狗。並沒有<br />
輸出比覺醒巴哈姆特更高的貓了(<a href="http://battle-cats.wikia.com/wiki/Lesser_Demon_Cat_(Uber_Rare_Cat)">獄炎鬼</a>是單體的啊),到底要怎麼能打更快啊 :x<br />
當然我一直在想或許新出的<a href="http://battlecats-db.com/unit/334.html">黑獸</a>有機會比畫比畫...<br />
<br />
* * * * *<br />
<br />
還有很多種戰術,這邊就不一一列出了。總而言之,如果是新手的話,大抵上就是先把<br />
Empire of Cats 打完,所有寶物打到 100%, 然後看看有什麼事件打得過就去打,<br />
例如 Cat Ticket Chance 和 Siege of Hippoe, Facing Danger 這些可以<br />
打貓票的在初期一定要一直刷。另外一邊打 Into the Future, 也同樣要把所有寶物<br />
打到 100%. 同時 Stories of Legend 可以打打看,打到打不過就不用勉強了,<br />
因為很多真的是等級不夠不可能打得過。尤其到中後期很多東西全滿都是基本條件。<br />
有看到殭屍來襲的話可以打打看,對於打寶和增加統帥力上限有幫助。<br />
<br />
貓罐頭能不用就不用,除非要花錢買。存到 1500+ 有保證抽的時候再去抽。一開始<br />
推薦抽<a href="http://battle-cats.wikia.com/wiki/Ancient_Heroes_Ultra_Souls_(Gacha_Event)">超古代勇者</a>,保證是最值得抽的。要抽到<a href="http://battle-cats.wikia.com/wiki/Kasa_Jizo_(Uber_Rare_Cat)">地藏王</a>為止,沒抽到不要停 XD<br />
<br />
地藏王 Kaza Jizo 肯定是最有價值的超激稀有,我幾乎打每一場都會帶他,暱稱<br />
小地藏,因為只用他原本的形態,不用移動城堡。原因很簡單,就是他射程不短(320),<br />
生產不貴(750),生產速度頗快、攻擊力頗高、也頗耐打、移動速度也快。基本上是全方位。<br />
加上他對上黑色和天使敵人是超大傷害,打黑色敵人幾乎是無敵可言啊。打週末的經驗關卡<br />
甚至可以一直出小地藏就能贏了,連肉盾都不用叫。這遊戲初期會非常缺經驗值,因為有<br />
太多貓咪需要升級,而經驗關全部都是黑色的敵人。至少一定要練到能刷經驗關才行。<br />
<br />
另一方面超古代勇者也不只是地藏王強而已。<a href="http://battle-cats.wikia.com/wiki/The_Grateful_Crane_(Uber_Rare_Cat)">小宇宙</a> Super Galaxy Cosmo 在很多<br />
關卡也非常好用,也應該是目前射程最長的輸出貓。當然因為他的射擊速度非常慢,因此<br />
DPS 非常低。但不少關卡在貓咪等級不足時,慢慢磨是最簡單的。例如你可以出四盾或<br />
甚至到五盾,然後搭配小宇宙慢慢磨死對手...。不只磨死對手,還可以偷對手的塔,直接獲勝。<br />
<br />
<a href="http://battle-cats.wikia.com/wiki/Momotaro_(Uber_Rare_Cat)">桃太郎</a> Momotaro 則是可以無限停止紅色的敵人,從此不怕紅敵。雖然也能停止天使,<br />
但天使射程通常比較長,要無限停止比較困難。<a href="http://battle-cats.wikia.com/wiki/Urashima_Taro_(Uber_Rare_Cat)">龍宮獸</a> Guardian Gamereon 也是很<br />
好用的大坦,可以擋住黑色和天使敵人非常非常久。<br />
<br />
這系列主要就是每一隻貓都有兩種型態,加上對付兩種敵人(天使和另一種),每一隻<br />
都還算滿好用的。竹取可能是最沒特色的,不過也不算很差,抽到也不能說很倒楣,<br />
只是能取代他的貓太多了。<br />
<br />
第二個系列我推薦<a href="http://battle-cats.wikia.com/wiki/The_Almighties_The_Majestic_Zeus_(Gacha_Event)">天神系列</a>。一樣是只抽有保證抽的時候喔。我太晚才意識到天神系列<br />
還滿強的,所以沒抽到幾隻...。目前也是在等保證抽 XD 暫時就不一一介紹了。<br />
大概只有抽到阿努比斯可以說有點倒楣,因為其他的各有各有用之處。海神是後來<br />
加的,比較是針對殭屍,一開始可能也不是那麼有用。其他的就真的都在很多地方<br />
都用得上了。<br />
<br />
接下來其他系列也不是不能抽,只是好用的相對少,要在貓咪比較充足時才比較有<br />
倒楣的本錢。另外是金票最好全部留下來等著抽超激季和極激季。原因是這兩個<br />
不會有保證抽,但有最泛用的限定貓!目前共三隻限定貓。超級難抽的原因是這兩<br />
個系列其實就是所有的超激都加進來,稀釋了抽到想要的貓的可能...<br />
<br />
我運氣不錯有抽到<a href="http://battle-cats.wikia.com/wiki/Miko_Mitama_(Uber_Rare_Cat)">白無垢</a> :o 雖然他的第一型態超可愛但很難用,第二型態則是<br />
最強的干擾貓,不少貓會被他緩慢到死無法前進。有不少關卡我過得很心虛,就是<br />
靠他硬打過去的,但我打法超爛 XD<br />
<br />
Mitama 唯一缺點只有射程太短(350),而且血不多,所以在某些場合很容易死。<br />
但只要敵人射程不長,或小怪夠多,幾乎就可以把敵人緩慢到死,而且他的輸出<br />
也不差,不單純只是干擾而已。<br />
<br />
最新的<a href="http://battlecats-db.com/unit/334.html">黑獸</a>也是有點破壞平衡的存在,其實我不太懂為什麼要出這樣的貓...。<br />
這樣原本很多不好打的關卡,根本只要硬打就打得過了啊 XD<br />
說是這樣說,我也想要抽到 XD 最難打的鴕鳥就靠他搞定了啊 XD<br />
<br />
* * * * *<br />
<br />
最後列幾個連結。<br />
<br />
* <a href="http://battle-cats.wikia.com/wiki/Main_Page">The Battle Cats Wiki</a><br />
* <a href="http://battlecats-db.com/">超絕資料庫</a><br />
* <a href="https://www.reddit.com/r/battlecats/">The Battle Cats Reddit</a><br />
* <a href="https://forum.gamer.com.tw/B.php?bsn=23772&subbsn=0">巴哈姆特貓咪大戰爭哈啦板</a>Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-23849696641886011632017-03-26T21:04:00.001+08:002017-03-26T21:04:16.549+08:00Faeria 可能就玩到這用列舉的方式簡單寫一下心得。<br />
<br />
* 遊戲本身做得非常精緻,流暢度很好。缺點大概是螢幕晃動是沒辦法關閉的,<br />
跟 Hearthstone 一樣,好巧呢。我對於畫面的晃動跟閃爍的接受度是很低的,<br />
不能關掉是會嚴重影響我的遊戲情緒。Guild Wars 2 從一開始就是可以關閉<br />
畫面晃動的。<br />
<br />
* 要說這遊戲沒有學 Hearthstone 是不可能的,別說影子了,整個身形都<br />
非常清楚。不管是 UI 設計、美術設計、遊戲模式、連遊戲進行都很像。甚至連<br />
不少卡牌我都覺得有點像。當然因為遊戲本身是有棋盤的,整個遊戲機制跟<br />
Hearthstone 是完全不一樣的,因此很難談得上抄襲。但要說沒有模仿或<br />
參考的話那是絕對在說謊。<br />
<br />
* 我其實很喜歡它的遊戲機制。在棋盤上建板塊,叫單位,移動,挖礦,這跟我<br />
當初想做 Spellbook 有類似之處。尤其是建板塊的部分,不同的板塊是不同的<br />
卡片的召喚條件實在很有趣。這也多少解決了例如在 VM Japan 會有的地圖<br />
太大節奏太慢的問題。我認為這是一個很好的遊戲機制,只是...<br />
<br />
* 主要的問題我覺得在卡片的設計和平衡的設計。它跟 Hearthstone 這點<br />
也很像,對我來說就是把缺點也學了過來,我覺得很可惜。幾個問題是:<br />
<br />
- 打起來幾乎一定是以生物為主,加上生物的特性和卡片的機制並不多,<br />
感覺組牌的變化性很低。我打起來非常有每一張牌都是各自獨立的感覺。<br />
明明是在組 deck, 但卻像在玩 draft. 說到 draft... 那個 Pandora<br />
也跟 Hearthstone 一模一樣,幾張牌中挑一張,然後挑下一張牌。我就<br />
很討厭這種模式,沒想到這遊戲居然還在推這種模式... 主要是選牌本身<br />
就很瑣碎,要選 30 張真的很多。由於牌是亂七八糟的,打起來節奏也一定<br />
會相對比較慢。他們大概也想到這點,因此在這模式中加入了 treasure 和<br />
其他雜七雜八的東西增加遊戲節奏,但這也等於是加近了超多不確定與運氣成分<br />
在內,而且那些東西的效果都強得太離譜了,打起來讓我覺得很無聊。<br />
<br />
- 說到強得太離譜,legendary 的牌也真的是強得太離譜,跟 Hearthstone<br />
一樣。這個問題就會導致抽牌的運氣變得異常重要,不只打的時候的運氣重要,<br />
我抽牌包的時候也是。你看 Magic 有這種離譜的牌嗎?雖然 Mystic Rare<br />
加進來後讓我也有點不愉快,不過基本上也不至於如此離譜。稀有牌應該要是<br />
效果比較特殊,成為 combo 中的關鍵,而非愈稀有就是愈強勢。我實在沒想到<br />
Hearthstone 這個嚴重缺點居然在這邊也看得到。這也同時會讓新手完全趕<br />
不上老手的進度。新手應該要是牌組選擇性低,而非牌組比較弱。<br />
<br />
我前一陣子有玩到的其他卡牌遊戲分別是 War of Omens 和 Infinite Wars,<br />
我覺得它們都沒有這個問題。前者甚至除了 epic coin 外,其他稀有牌都可以<br />
很快取得,而老手的優勢則是價錢少一,當然這是很強的優勢,但也不是完全不可消弭的,<br />
更別說要取得價錢少一要有超級多重複的才有辦法(4 張 -1, 然後 20 張再 -1)。<br />
Infinite Wars 我有點不記得了,但稀有牌的強度真的沒那麼高,主要就是可以打<br />
一些很怪的 combo 而已。新手牌打起來不會比較弱,只是會比較無聊,因為變化會<br />
很少,主要只有靠蠻力跟一些基本效果而已。<br />
<br />
- 另一方面,遊戲的節奏我覺得也有點問題。打到目前我覺得快攻幾乎是一定比較<br />
有效的,因為防禦相關的牌很少,不容易抵擋快攻。以 Magic 為例的話,阻擋快攻<br />
大抵上會靠各種直接取消傷害、直接燒牌、直接殺牌、超大量補血等等。但 Faeria<br />
這方面的手段非常匱乏。還有兩點我認為也是有害的設計,一個就是血的上限只有<br />
20, 不能超過。這導致無法在初期靠著補大量的血來阻擋快攻。Magic 跟 War of Omens<br />
都沒有生命的上限。兩者都可以靠某些牌讓生命衝到高達 99, 但這只能抵擋初期,<br />
因為後期其實可以很輕易就一口氣全部打掉,因此不會造成遊戲節奏的問題。<br />
<br />
當然 War of Omens 的 Enchanted Treaty 我是真的覺得做壞了,<br />
用了這張牌真的會讓遊戲節奏拖得很長很長,會打到有點煩。<br />
<br />
另一個是手牌上限的問題。首先是我看不出來上限到底是幾張,遊戲沒提示也沒說明。<br />
略估可能是九張。超過的話,接下來抽到的牌會直接捨棄,而不是讓我選我要丟哪張!<br />
這問題在於對於大量抽牌會是個很嚴重的懲罰。在 Magic 中我為了增加穩定性,<br />
我可能會放很多大量抽牌的牌,反正超過上限我就丟掉我不要的就好了。但在 Faeria<br />
中直接被捨棄表示很可能會讓我要的牌直接被捨棄。這個代價絕對承擔不起。加上牌只有<br />
三十張(Magic 是六十張),抽太快的話還滿容易抽完的。<br />
<br />
這兩點造成我覺得快攻幾乎一定是比較有利。快攻失敗再轉打其他打法,可能是最好的<br />
策略。我不知道為什麼要弄成以生物為主,或許因為覺得有棋盤在那邊,要好好利用吧?<br />
只是我覺得這對於卡片遊戲是滿嚴重的侷限。<br />
<br />
* 簡單地說,我覺得是個很有潛力的遊戲,我也覺得滿好玩的。只是如果他卡牌還是這樣<br />
設計,一堆過分強的牌和效果,各種不穩定要素,加上 Hearthstone 的遊戲模式的話,<br />
我就不是很想長時間玩下去了。Infinite Wars 我也算打滿久的了,不過後來不跟玩家<br />
打顯得有點沒變化,簡單地說就是單人內容太少了。War of Omens 則是... 沒在繼續<br />
開發了,所以也不會有新內容了 :( 不然這幾個裡面,我對 War of Omens 的評價還是<br />
最高的。Infinite Wars 則看哪一天我會想回頭再打吧。<br />
<br />
不過老實講,Faeria 我會只打到這裡,主要可能是因為單人打到被 AI 過分強的 treasure<br />
打到覺得很不愉快... 連兩次都打到贏定了,然後那啥鬼把一堆生物轉成 6/6 就打不贏了。<br />
如果不花錢抽牌的話,大概也只能拚拚開局手氣。但每一場其實都要打滿久的,我實在不喜歡<br />
在這種雙方條件差距很大的情況下玩。要靠每日抽牌的話,那應該也是很漫長的路,我應該沒<br />
時間這樣慢慢打。<br />
<br />
可以理解為什麼他們會想很多增加遊戲節奏的方式,但說真的不要用 Hearthstone 那招啊。<br />
<br />
下次再來講 The Battle Cats (貓咪大戰爭),最近是這個手機遊戲打比較多 XDLin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com4tag:blogger.com,1999:blog-4013660499115623904.post-54450609069074630432016-11-29T15:13:00.000+08:002016-11-29T22:25:20.347+08:00Things I cannot fix for my new macbook proEdited:<br />
Another issue which I cannot fix right now, if i leave the computer for awhile, and then come back, it would disconnect itself, causing disconnection.<br />
<br />
Edited:<br />
Yes! Finally it didn't disconnect now. Just check all of them:<br />
- Prevent computer from sleeping automatically when the display is off<br />
- Put hard disks to sleep when possible<br />
- Wake for network access<br />
- Enable Power Nap while plugged into a power adapter<br />
<br />
<br />
* System fonts or font rendering is very bad at my external Dell monitor. (it's excellent in built-in screen though, but I am not using it daily) It's extremely small and too thin, sometimes even blurred, barely readable. Not sure if TinkerTool does help here, but I did try to make the font larger.<br />
<br />
* Mouse wheel scrolling is quite broken. The idea of acceleration might not be too bad, but it seriously needs to be tweaked a bit. I need to scroll heavily to make it move. It's killing my finger. USB Overdrive could fix this issue somehow, but introduce another issue that I would lose selected text while scrolling, and click randomly, making it completely unusable. So I uninstalled USB Overdrive and decided to kill my finger.<br />
<br />
* Input method McBopomofo would cause the text area shake while typing due to the height changes each time I entered Bopomofo. This happens in GMail and Facebook, but it's fine on other websites. See, smart text areas are often broken. I really hope people could make more plain old text areas which just work.<br />
<br />
There are a few other things which are not ideal but acceptable. For example, I want to disable transparency for menus, but then dock would also lose transparency which looks quite ugly. But well, look and feel is less important for me anyway.Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-65023362001468576212016-09-08T15:43:00.001+08:002016-09-08T19:40:07.900+08:00Finally fixed my iTerm2Updated: I just realized that the offending config is exactly<br />
setting the tab theme to <code>Light (High Contrast)</code>.<br />
Apparently this is broken for a very, very long time...<br />
So I have no other choice but just set it to <code>Dark (High Contrast)</code>.<br />
I do not like dark tab theme but without "High Contrast" the gradient<br />
colors are driving me crazy because it's just unreadable.<br />
<br />
<br />
<br />
This seriously drove me crazy, and it's been for so long.<br />
Probably a few months ago, every time after I upgraded iTerm2,<br />
it would be broken. It would just keep opening blank unusable<br />
windows. I doubted that has something to do with session<br />
restoration, because it worked a few times if I just download<br />
a fresh new version.<br />
<br />
But not this time... and seriously I don't want to reconfigure<br />
it at all, because I have a ton of customization which I don't<br />
quite remember and I don't want to go over with it again!<br />
<br />
So I tried to load my backup settings for iTerm2, but it turned<br />
out that if I just restored it, the problem would persist. However,<br />
of course not all the settings were the offenders! If I tried to<br />
restore settings piece by piece, it would actually work.<br />
<br />
Finally I found the offenders were below. Just remove them and<br />
iTerm2 could work properly. I think it's probably some settings<br />
which in a newer version they're removed, but it's not handled<br />
properly therefore would cause issues.<br />
<br />
Anyway, I am so glad this is fixable.<br />
<pre><code><key>TabStyle</key>
<integer>2</integer>
<key>TabViewType</key>
<integer>0</integer></code></pre><br />
Also note that the config was located at:<br />
<code>~/Library/Preferences/com.googlecode.iterm2.plist</code><br />
Apparently I still lose some settings, e.g. tab title is barely<br />
readable, and I am not sure if that could be fixed. But at least<br />
it's working now.Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-69284508920105629152016-09-03T21:50:00.002+08:002016-09-03T22:00:21.820+08:00北投女巫<a href="http://www.comico.com.tw/detail.nhn?titleNo=637&articleNo=2">《北投女巫》第一話</a><br />
<br />
剛看完因為覺得非常厲害,想要推薦一下。很難想像這是一個新人的作品,<br />
我覺得除了圖畫並不完美,有些地方覺得有小瑕疵外,其他地方都覺得相當<br />
成熟,而且非常精彩。唯一我不滿意的地方是,用電腦閱讀上我必須不斷捲動,<br />
用滾輪捲太慢了,會捲到手痠。用鍵盤上下的話又太慢了,節奏感不佳。用<br />
page up/down 的話又常常跳太多或是跳太少,必須再用滾輪或上下微調,<br />
整個體驗非常糟糕.... 把畫面縮小許多之後(現在一堆為手機設計的網頁,<br />
在電腦上閱讀都太大壓迫感十足,這漫畫也是),才稍微覺得舒緩一些。或許<br />
用平板電腦閱讀會是最好的。這用電腦閱讀只能說感受非常糟糕。<br />
<br />
不過這可以說是媒體的問題,不是漫畫本身的問題。以下稍微講一下感想,<br />
不會講到劇情內容。<br />
<br />
分鏡與構圖上,十分生動,色彩豐富。演出上的流暢度也非常好。雖然讓我<br />
滾到手痠,還是很想繼續把他看完。劇情從一開始的懸疑,帶出許多疑問,<br />
再慢慢解答。跟著劇情前進,也慢慢帶出背後豐富的設定與角色動機。最後<br />
結束的時候,也沒有留下沒解卻該解的疑問。收得非常漂亮,也留下許多<br />
設定可以為第二部鋪路。<br />
<br />
角色上,主要角色都非常鮮明且細膩。只是有幾個女巫的戲份太少,導致<br />
感受不大。但女巫那麼多,短短的篇幅當然也不可能全部都描寫到。裡面<br />
好幾個角色間也有不少糾葛,可以看到他們在幾個想法間的掙扎。正方與<br />
反方到後面其實也沒有那麼明確的界線了。短短的篇幅內也有許多隱喻與<br />
讓人玩味之處。<br />
<br />
我看到有人說他八天看了六次。沒看之前覺得也太誇張了。現在我要吃飯,<br />
正想看第二次 :P 有些疑問後來知道後,回頭去看應該會有另外的趣味在。<br />
<br />
--<br />
這篇是用微軟新注音寫的,十個字裡面大概有五個字是選錯的。我沒辦法<br />
想像會有更笨的注音輸入法...。<br />
Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-68774151242584153012016-04-07T07:22:00.000+08:002016-04-07T08:09:31.040+08:00GW2 WvW Zerg Bursting ChronomancerPost on official forum: <a href="https://forum-en.guildwars2.com/forum/professions/mesmer/Help-with-a-WvW-Chrono-Build-for-group-play/first#post6084543">Re: Help with a WvW Chrono Build for group play</a><br />
<br />
So since I've been playing in group with a bursting mesmer for a while<br />
now, I would like to put my two cents here. In short, I am running this<br />
build: <a href="http://gw2skills.net/editor/?vhAQNAR8ensnBNqhlpBufCEgiFljCtyusMruRj0K9MAWgID-TlCEABGcBASZ/htUCmo6PPpsCgjAQCPAAmUqAxBBoNdDvDOA2ar0qWBnd2Znd2ZNgWbt1WbFA-w">WvW Zerg Bursting Chronomancer</a><br />
<br />
I mainly play with a group of 20~50 against another group of 20~50,<br />
acting as a bomb and taking enemies down with low health or glassy ones.<br />
<br />
This is basically a power build because condition damage doesn't work<br />
too well in this context and shatters could hardly hit with condition<br />
weapons. Greatsword is somehow the only viable weapon for AoE damage.<br />
<br />
I need at least two stun breaks to survive due to lack of stability,<br />
and Decoy and Blink are the best ones especially for Blink, it's<br />
truly a life saver because this build is quite glassy. Only 3 pieces<br />
of trinkets are Captain and the rest are all Berserker. I should heal<br />
or blink even if I only took one shot in general.<br />
<br />
Mirror was taken due to fast recharge so it works well with<br />
Mender's Purity. Cleansing two conditions is not a lot, but with<br />
15 seconds cooldown it's acceptable. Also given this pirate ship meta,<br />
reflection could come in handy when I'm aimed by a Ranger, too.<br />
<br />
Restorative Illusions is not always necessary. I only take it when<br />
we're out of number and having only around 20 people. If cleansing<br />
is not an issue, I'll take Protected Phantasms instead. Fighting<br />
against 20+ people, illusions basically die immediately so this would<br />
be necessary to land Phantasmal Berserker, and it still dies immediately<br />
after distortion ran out so I would shatter it immediately, too.<br />
<br />
So here's how a fight goes:<br />
<br />
Basically just stay a bit behind our train. Whenever I see a good chance<br />
or whenever the commander calls, drop Gravity Well and Continuum Split.<br />
Drop Well of Calamity accordingly if it's not a good enough chance,<br />
or when Gravity Well is on cooldown. Use Blink as a gap closer accordingly.<br />
Sometimes Decoy would work, too.<br />
<br />
Shatter fast and don't try to save illusions. Shatter works very well<br />
when I'm around the enemies with Illusionary Reversion and Chronophantasma.<br />
Just smash the buttons when enemies are around. This would be a very<br />
strong burst with Greatsword. Use Blink and Decoy to escape accordingly.<br />
(or even Decoy to shatter for the extra illusion)<br />
<br />
Take Veil or Portal Entre accordingly, of curse.<br />
Swap a Berserker ring with a Solider ring if we're so out of number.<br />
<br />
*<br />
<br />
On the other hand, I really admire how ND (Never Die) plays. I don't know<br />
how they run Chronomancer in detail, but this would be the build from my<br />
observation: <a href="http://gw2skills.net/editor/?vhAQRAsd8OHFohVpBGrBEgildjgUgacSJA-w">WvW Zerg Support Chronomancer</a><br />
Eat this food: <a href="https://wiki.guildwars2.com/wiki/Plate_of_Mussels_Gnashblade">Plate of Mussels Gnashblade</a><br />
<br />
A lot of slots are empty because I have no idea. Try your own creativity.<br />
This build is very, very cooperative though. Heralds are much needed as well.<br />
<br />
Basically it's a boon sharing build, stacking 25 stacks of stability and<br />
maintain permanent resistance. The use of Temporal Curtain was very impressive<br />
as well. They could kill 5+ people standing on the wall in a burst.<br />
<br />
I don't see pirate ship meta on them and they could take down double or<br />
even triple enemies (e.g. 15 vs 30). Both tanky and destructive.<br />
In the end often enemies just ran away seeing them.<br />
<br />
This definitely doesn't work without a voice chat.Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-73429875581153934472016-02-25T23:51:00.000+08:002016-02-25T23:57:34.028+08:00Finally got letsencrypt doneFinally got <a href="https://letsencrypt.org/">letsencrypt</a> done.<br />
<br />
I don't quite understand why the official scripts were so complicated,<br />
but finally I got it done with <a href="https://github.com/lukas2511/letsencrypt.sh">letsencrypt.sh</a> (Thanks <a href="https://twitter.com/hSATAC">Ash</a> for<br />
recommending it) along with some scripts from <a href="https://github.com/diafygi/letsencrypt-nosudo">letsencrypt-nosudo</a>.<br />
<br />
This is a note for what I've done in case I need to do this again.<br />
First let's clone it first:<br />
<pre><code class="bash">git clone git@github.com:lukas2511/letsencrypt.sh.git
cd letsencrypt.sh</code></pre><br />
Then let's generate a private key and a signing request:<br />
(This was from letsencrypt-nosudo)<br />
<pre><code class="bash">openssl genrsa 4096 > domain.key
openssl req -new -sha256 -key domain.key -subj "/" -reqexts SAN -config <(cat /etc/ssl/openssl.cnf <(printf "[SAN]\nsubjectAltName=DNS:example.com,DNS:www.example.com")) > domain.csr</code></pre>Note that the second command cannot run under <a href="http://fishshell.com/">Fish</a>,<br />
and I would like to know if there's any way to create a wildcard certificate?<br />
I tried to use *.godfat.org however it seems letencrypt doesn't allow it.<br />
<br />
Let's setup the other configs:<br />
<pre><code class="bash">echo example.com www.example.com > domains.txt
mkdir .acme-challenges</code></pre><br />
Finally setup Nginx for acme-challenge:<br />
(Note that letsencrypt.sh would write files into it and clear it after done)<br />
<pre><code># /etc/nginx/nginx.conf
location /.well-known/acme-challenge {
alias /home/example/letsencrypt.sh/.acme-challenges;
}</code></pre><br />
Begin hitting letencrypt:<br />
<pre><code class="bash">./letsencrypt.sh --signcsr domain.csr</code></pre><br />
You'll get the certificate printed on stdout. Not sure if there's a way to<br />
output it to a file, but anyway you could just copy it and put it in a file.<br />
I'll assume you put it in <code>domain.crt</code> and we could continue<br />
setting up Nginx:<br />
<pre><code class="bash">mkdir dist
# Download the other certificate from letsencrypt (<a href="https://letsencrypt.org/certificates/">source</a>)
wget https://letsencrypt.org/certs/lets-encrypt-x1-cross-signed.pem
# Bundle it for the final certificate:
cat domain.crt lets-encrypt-x1-cross-signed.pem > dist/ssl.crt
# Setting up the final files
cp domain.key dist/ssl.key
chmod 600 dist/ssl.key
chmod 644 dist/ssl.crt
sudo chown root:root dist/ssl.*
sudo cp dist/ssl.* /etc/nginx/</code></pre><br />
And here's the relevant Nginx config:<br />
<pre><code># /etc/nginx/nginx.conf
server {
listen 80;
listen 443 ssl http2;
ssl_certificate ssl.crt;
ssl_certificate_key ssl.key;
ssl_session_timeout 5m;
ssl_prefer_server_ciphers on;
ssl_protocols TLSv1.2;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDHE-ECDSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
}</code></pre><br />
After restarting Nginx, you could verify it with <a href="https://www.ssllabs.com/ssltest/">ssltest</a>.<br />
<br />
P.S. Thanks to StartSSL started involving something with China<br />
pushing me forward this. I was so lazy figuring out how it works<br />
before. The world deserves free/cheap secure connections for<br />
independent developers/organizations.Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-65788445608742241462016-02-16T16:59:00.001+08:002016-08-31T18:24:11.861+08:00Whenever Sublime Text updates...I'll need to do:<br />
<br />
<pre><code class="bash">cd '/Applications/Sublime Text 3.app/Contents/MacOS/Packages'
ln -s Ruby.sublime-package Ruby.sublime-package.zip
# Find:
# Snippets/require-..-(req).sublime-snippet
# Change " to '
# Find:
# Ruby.sublime-syntax
# Search:
# require
# Remove `push:` clause
ln -s 'Color Scheme - Default.sublime-package' 'Color Scheme - Default.sublime-package.zip'
# Find:
# Twilight.tmTheme
# Add color scheme for <a href="https://github.com/jisaacks/GitGutter">GitGutter</a>
# Add just before <plist><dict></array>
# Change color:
# deleted -> #FF0000
# inserted -> #00FF00
# changed -> #FFFF00
ln -s 'Default.sublime-package' 'Default.sublime-package.zip'
# Find:
# block.py
# Find:
# def indented_block(view, r):
# Insert:
# return False
# To avoid inserting } in the wrong block
</code></pre>Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-58227443774702326772016-01-23T17:00:00.000+08:002016-01-23T17:01:21.490+08:00第三小鎮 Design Town (Flip City)<a href="https://boardgamegeek.com/boardgame/168679/flip-city">第三小鎮 Design Town (Flip City)</a><br />
基本上就是 Dominion-like 的遊戲 XD<br />
<br />
我其實並不喜歡 Dominion, 不過倒是還算頗喜歡 deck-building.<br />
目前我給的分數是 8/10, 比 Dominion 高一分,跟 San Juan (聖胡安)<br />
同分,比 Race for the Galaxy 少一分。清單在這:<br />
<a href="https://boardgamegeek.com/collection/user/godfat?rated=1&subtype=boardgame&ff=1">User: godfat: Board Game Collection</a><br />
<br />
當然這不是嚴謹的評分,只是我個人玩過的 boardgame 記錄而已,<br />
也理所當然反映了我個人的偏好,沒有特殊意義。(也可能有我漏沒記錄到的,<br />
能提醒我一下會很感謝 XD)<br />
<br />
說到 deck-building, 強力推薦 <a href="http://www.kongregate.com/games/FifthColumnGames/war-of-omens">War of Omens</a>, 雖然不是 boardgame,<br />
也不全然是 deck-building, 他是必須先組自己的銀行,然後再在遊戲中<br />
deck-building. 遊戲規則也不適合做成 boardgame, 計算太過瑣碎。<br />
雖然暫時停止開發了,但整個機制非常有趣,也有很多發展空間。真的很可惜...<br />
<br />
<br />
<br />
回主題,我覺得第三小鎮設計得相當不錯,原則上我覺得沒有太多改善的空間。<br />
硬是想了想,我覺得由於遊戲後期的變化性不夠大,或是說計算變得瑣碎,<br />
玩起來比較沒有快感,反而會覺得有點煩悶,想趕快結束並進行下一場。<br />
<br />
針對這點,我想有兩種改善的方式。一個是縮短遊戲時間或是增加遊戲節奏,<br />
另一個則是讓遊戲本身有更多的變化。<br />
<br />
縮短遊戲時間:<br />
<br />
一個最簡單的方式就是把獲勝分數從八分改到六分,並把便利商店的出牌獲勝<br />
條件依比例降至十三張獲勝。我目前還沒實際嘗試過大量使用購物中心,不過<br />
獲勝分數降至六分的話,應該比較容易藉由「賭一把」使得購物中心的那一分有<br />
更大的影響力。<br />
<br />
當然,這樣或許降低了技術成分,增加了運氣成分,一般我是不樂見這種狀況。<br />
不過我覺得要不要賭一把確實也是這個遊戲中非常有趣的一部分。賭不賭隨人!<br />
大概是這種感覺。<br />
<br />
另一個縮短遊戲時間的方向是在建設時期可以同時購買和升級。我不確定這樣<br />
其他牌是否會需要調整,不過這樣應該可以讓遊戲節奏加速非常多,畢竟可以<br />
同時購買便利商店又升級住宅,或許標準打法就會變成這樣吧。但如果出現<br />
標準打法,也等於是遊戲變化下降了。<br />
<br />
增加遊戲變化:<br />
<br />
我目前想到有兩種可能,一個是每回合都可以選擇「留下」一個建築在場上。<br />
下一回合時,依照留下來的順序依序執行,執行完畢才開始出牌階段。或許也可以<br />
在建設階段增加拆除建設的選項。<br />
<br />
當然,這樣意味著遊戲節奏會變快很多,因此獲勝條件必須相對提高,可能要改成<br />
兩倍以上,變成要十六分獲勝或是三十張牌在場上之類的。<br />
<br />
這樣的好處我想有兩個,一個是主題上也比較有建設的感覺在,不然每次都清空<br />
說實在我覺得也頗怪的。當然我不是個很在意主題的人,這對我來說比較可有可無。<br />
另一個則是增加一些策略性的成分。牌可能也要因此調整就是了,畢竟這改變很大。<br />
<br />
另一個是可以「強制購買」別人棄牌堆的牌。這樣一個很重要的好處我想是增加了<br />
玩家跟玩家間的互動性。不然以目前的規則中,玩家順序甚至沒什麼差別...。<br />
通常沒什麼互動的遊戲,最少最少玩家順序也是有不少影響力的。<br />
<br />
大概是這樣。<br />
<br />
我想買擴充!!<br />
<br />
不過對於這個<a href="https://www.facebook.com/H.sapiensLab/photos/a.258485724259016.52938.256340867806835/869980553109527/">露營區</a>有點意見。我不是很喜歡這種增加記憶負擔的卡片 :(<br />
然後我還滿喜歡<a href="https://www.facebook.com/H.sapiensLab/photos/a.258485724259016.52938.256340867806835/870898873017695/">交流道</a>的設計。多多利用棄牌推我覺得挺好的。反過來說,<br />
其實棄牌堆才是真正的手牌 :P<br />
<br />
<br />
附註一提,原先我有些擔憂的兩面設計,不小心看到我覺得不成問題,基本上<br />
不太會不小心看到。比較麻煩的是有時候洗牌或是拿牌在手上甩(等待其他玩家)<br />
會不小心把其中幾張牌翻了過來,然後忘記原本到底是哪一面。不過這可能<br />
只是習慣問題,以後可能就不會不小心了。目前我覺得兩面的設計還是好處多於<br />
壞處。不過當然,如果有什麼機制可以解決「不確定這張卡現在應該是哪一面」<br />
會更好。<br />
<br />
另一個是原本覺得哭臉跟醫院的計算很麻煩。不過現在習慣了後又覺得不難算了。Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-71632320539304595332016-01-19T03:35:00.000+08:002016-01-19T03:35:31.358+08:00A few thoughts on "nil Is Not NULL, and Other Tales"A few thoughts on: <a href="http://rubinius.com/2016/01/11/nil-is-not-null-and-other-tales/">nil Is Not NULL, and Other Tales</a>.<br />
<br />
<blockquote>nil is an Object, NULL is a memory pointer<br />
[...]<br />
To be absolutely clear, a segmentation fault and a runtime exception are radically different things. But the consequence, your program aborts, makes them seem quite similar.</blockquote>Yes, I agree. However:<br />
<blockquote>and if its "nil" doesn't support that, something must be done. This characteristic of a statically-typed language makes nil seem dangerous.</blockquote>No, it's not. It's called NullPointerException in Java, it's still just an exception. This is not the characteristic of a statically-typed language. They could be the same in both statically/dynamically typed language. My point is that nils are not superior in a dynamically typed language.<br />
<br />
<blockquote>nil is mathematically realistic<br />
[...]<br />
A value like nil signals that "no mapping is available for that input". It's a very useful concept.</blockquote>The concept is useful but are we talking about the concept or nil in Ruby in particular? You're talking about null set here but it's not the nil in Ruby. The nil in Ruby represents "nothing" not "null set".<br />
<br />
<blockquote>nil is mistreated in Ruby<br />
[...]<br />
In the first case, developers tend to see nil as an error, and hence, it is quite unwelcomed. "Oh look, that method returned a nil, something must be wrong!"<br />
<br />
No, not at all! Nothing need be wrong. The method returned a nil to say, "no value here!"</blockquote>This really depends on the API. If an API claimed that it should never return nil, then it should never return nil and if nil was returned, surely something must be wrong! On the other hand, of course we could design an API which could potentially return nil. In Haskell, this would be called Maybe. A value of Maybe would either be Nothing (nil in Ruby) or Just something else. In this case, indeed nothing need to be wrong. It's all depending on the specification. The question is, could the specification really enforce the requirements/constraints?<br />
<blockquote>In Rubinius, this is such a problem that we had to introduce a special value we called "undefined" to be able to implement the Ruby core library in Ruby. The problem is that some methods take nil as a value, but also have a default value. So, we were unable to distinguish between some_method() and some_method(nil).</blockquote>Indeed this is really annoying. The concept of undefined was there but Ruby doesn't have a value for it. I often wrote <code>Undefined = Object.new</code> for default arguments. I hate that JavaScript has null and undefined, but seriously sometimes we do want "undefined" in Ruby. Hash is another example which has this difference.<br />
<pre><code>h = {}
h[0] = nil
h[0] # => nil
h[1] # => nil
h.has_key?(0) # => true
h.has_key?(1) # => false
h.keys # => [0]
h.values # => [nil]</code></pre><br />
<blockquote>The "lonely operator" is an unnecessary mistake<br />
The "lonely operator" supposedly solves the problem of calling a method on nil that then raises a runtime exception causing the program to abort.<br />
<br />
Unfortunately, it only partially solves this problem</blockquote>I totally agree that this is a mistake and it does not partially solve the problem, because it does not solve the problem at all. It's merely making it easier for us to write sloppy codes which could hinder real bugs, encouraging the use of unstructured data (i.e. hash tables) over the places, spreading nils around the world.<br />
<br />
It's somehow a curse, from the `try` method from Rails, from people abusing JSON and hash tables, using them like JavaScript objects without classes.<br />
<br />
It's backward.<br />
<br />
Not to mention a special syntax for it. Ruby's syntax is already horribly complex.<br />
<br />
<blockquote>nil is A Good Thing™</blockquote>Well, I can't say it's a good thing or bad thing. We need the concept, but not necessarily the current nil. The problem is that, there's no way to enforce an API that would never return nil. Granted, actually this is the same issue lacking static types. It's just that nil is the most possible value which could sneak in because THERE ARE SO MANY METHODS could return nil. If we made that most of the API, the objects and methods from standard library would seldom return nil, then we are probably saved.<br />
<br />
For example, <code>h[0]</code> could give me <code>HashMissingValue</code> instead of <code>nil</code>, and other methods could return other similar values, and the point is, they should be distinguishable.<br />
<br />
Yes, and that's actually very similar to that <strong>Traceable nils in Rubinius</strong> which mentioned in the bottom of the post. That, yes, could probably solve the issue.<br />
<br />
<blockquote>The simple alternative to the "lonely operator"</blockquote>Defining method_missing on nil can't be the alternative to that lonely operator, unless we're using "refinements" to localize the changes. I am not saying refinements are good, but I think we all agreed that global behaviour modification is 99% bad, unless we're talking about a small script.<br />
<br />
<blockquote>Ruby developers need to see where nil is<br />
[...]<br />
This problem of knowing where a value comes from is much bigger than nil. It is a result of the fundamental tradeoff that a late-bound language (usually called a dynamically-typed language) makes relative to an eagerly-bound language (usually called a statically-typed language).</blockquote>Yes, exactly, though even a statically typed language could still be plagued by nil. See NullPointerException again. Some talked about Option type (again, Maybe in Haskell) could be the answer, for example Scala does return this for some of the methods. However, I don't feel this solve all the problems because there are still nulls somewhere else. Guess what, Option value could also be null. So actually there are 3 possible values: Some something, None, and our beloved null.<br />
<br />
Well.<br />
<blockquote>Late binding provides a malleable system that easily manages the complexity of high-uncertainty contexts. Objects can interact with other objects that provide certain behaviors. They do not have to be specific kinds of objects. The lessening of the constraints that the developer's assumptions impose on the system can increase the utility and resilience of the system.</blockquote>This is certainly true though. While now I strongly believe in static typing much more, this is the reason why I still cannot give up Ruby and still prefer Ruby in some cases. Playing around it, interact with it. That's sometimes much more pleasant, until, I need to scale the complexity...<br />
<br />
<blockquote>Traceable nils in Rubinius<br />
[...]<br />
In the past, we have only ever used that precise value. In other words, all the other bits are zero. But nothing requires this, and those other bits don't need to be wasted. On 64bit architectures, this gives Rubinius approximately 2<sup>59</sup> values of "nil". That's more than enough for a typical Rails app, I'm sure.</blockquote>I was like, what the hell was this? when I read this paragraph. But to think about it, indeed we could use this trick to provide insights about where the nil was generated from. I highly hope this would work well and debugging nils could be much easier, and then, perhaps we could really afford returning nil everywhere. I don't know, but maybe.<br />
<br />
Cheers,Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-81805333449661989352015-07-28T11:43:00.000+08:002015-12-25T18:20:14.401+08:00Using PostgreSQL JSONB with Rails 4.1So we just upgraded PostgreSQL to 9.4 and I was so excited to migrate to<br />
JSONB in order to use various querying functions which don't have<br />
equivalents for JSON.<br />
<br />
After migration was written, all API tests were passed, then I realized<br />
that this won't work for Rails 4.1 because it didn't recognize JSONB.<br />
(We run API tests first, then Rails tests)<br />
<br />
Doh. We can't upgrade Rails because we're locked at an older version of<br />
devise (3.0.4 to be specific), which won't work with Rails 4.2.<br />
<br />
Then I finally made my mind to remove devise, rewrite everything, and<br />
upgrade Rails. This was a very hard decision because then I need to figure<br />
out the black magic inside devise, which would be a very painful process.<br />
<br />
Fortunately, <a href="https://twitter.com/wildjcrt">@wildjcrt</a> sent me a <a href="https://disqus.com/home/discussion/nandovieira/using_postgresql_and_jsonb_with_ruby_on_rails/#comment-1884120060">quote from @boriscy</a>:<br />
<blockquote>One note, Rails 4.1 supports json but not jsonb, you need to add<br />
<br />
<blockquote>serialize :col, JSON</blockquote><br />
to make work jsonb in rails 4.1</blockquote>p.s. I was too lazy to search around because I am so tired of fixing black magic<br />
and I just want to rewrite everything to make things under control.<br />
<br />
That's not a full solution but an hint that it's not that broken,<br />
and it could probably be easily patched to work. After some time<br />
playing around, I was able to make JSONB work for Rails 4.1 without<br />
touching all the models we have. Because it would also be painful to<br />
edit all the models using JSONB.<br />
<br />
<a href="https://gist.github.com/godfat/dbcdbe0ad5d79dbf1761">This is the patch to make JSONB work with Rails 4.1.</a><br />
<br />
Basically, register the OID for jsonb and after all the models were<br />
loaded, walk through all the columns which data type is jsonb and<br />
default to <code>'{}::jsonb'</code> (because we only use it this way and the others<br />
could come from <a href="https://github.com/chanks/que">que</a> which I shouldn't be patching with)<br />
<br />
<a href="http://sequel.jeremyevans.net/">Sequel</a> was used here because we have it and it works great. If you<br />
want to work with ActiveRecord to fight with this, go ahead, I think<br />
it should also work.<br />
<br />
After this patch was applied, all tests passed.<br />
<br />
Here's the <a href="https://twitter.com/godfat/status/625858833441619968">other thread</a> on twitter.Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-70522331137746012942015-06-29T21:56:00.003+08:002015-12-25T18:20:55.496+08:00Guild Wars 2 中 Mesmer WvW zerg build從 <a href="https://www.facebook.com/groups/561419360565301/permalink/989107864463113/">Facebook group</a> 中複製過來的。<br />
<br />
June 26 at 4:36am<br />
<br />
個人不喜 roaming, 所以主要都是跟 zerg. 目前是打算這樣玩<br />
<a href="http://intothemists.com/calc/?build=-R%3B4k2Wz027RVV71%3B9%3B4SWV%3B0146137257%3B4LBW06%3B1vhrTvhrTn-FQ3-sDr2%3B1nbE6obF6pbG62o-G-2i%3B5F2CwF2Cw%3B9%3B9%3B9%3B9%3B7VR-6X">http://intothemists.com/calc/...</a><br />
<br />
以前都是以 phantasm 為主,現在也不例外。不過這次 specialization 的<br />
改版把 shatter 弄到好強,所以依然點了一些。不愛 shatter 的主因是在<br />
zerg 中 illusion 都死很快,幾乎一上場就被秒殺了,沒啥機會可以 shatter.<br />
<br />
主要打法大概就是遠遠打和放輔助技能,應該沒什麼特別的。有幾項我還不太確定就是了:<br />
<br />
* 原本我都有點 focus CDR 和 reflect, 不過這次為了要 Protected Phantasm 的<br />
distortion 就沒點了(根據經驗,沒這個 phantasm 一出來就死,打不到人)。既然 focus<br />
都不能 reflect 了,好像也可以考慮換 off hand, 但不確定要換什麼好<br />
<br />
* Confounding Suggestions (Domination I) 說不定是個不錯的選擇,因為<br />
Master of Fragmentation (Illusions VIII) 會讓 Diversion (F3) 可以一次<br />
daze 五個敵人,如果能一次 stun 五個人還滿誘人的...<br />
<br />
* Temporal Enchanter (Inspiration IX) 用了三個 Glamour, 會想用也是自然吧。<br />
可是很難放棄 Illusionary Inspiration (Inspiration VIII) XD 畢竟每次放<br />
phantasm 時都會得到 distortion + reflection (from Master of Fragmentation)<br />
+ 給五名隊友 (Inspiring Distortion) + 移除一個 condition<br />
(Blurred Inscription (Domination V)) + 把 boon 都給五名隊友<br />
(Signet of Inspiration),這實在是讓人感覺良好呀 XD<br />
<br />
* * *<br />
<br />
以下今天寫的 (2015-06-29)<br />
<br />
我的考量重點是由於在 zerg 戰中瞬息萬變,再加上 illusions 應該都活不過兩秒鐘,<br />
基本上是沒辦法放什麼連續技,出任何招都要考慮下一秒會因為種種因素而中斷。與其<br />
考慮 burst damage 不如考慮 DPS, 因此 cooldown reduction 比 shattering<br />
要來得重要多了。<br />
<br />
這兩天的心得目前是,決定把 Null Field 換成 Blink, 因為 Mender's Purity 和<br />
Blurred Inscription 使得解狀態的需求下降(放一次 Signet of the Ether 可以<br />
解三個耶),所以就嘗試看看 Blink, 然後發現用 Blink 使得生存率大幅上升,比<br />
Decoy 還好用 XD<br />
<br />
原因是我主要都是死於紅圈,重點其實不是 cloak/stealth 而是 break stun, 用<br />
Decoy 比較容易死是因為 break stun 後還是在紅圈中,有時候會隱身時就倒地...<br />
但用 Blink 就能有效閃出紅圈外,基本上 Blink 出去除非閃錯邊不然是不會死的 XD<br />
<br />
另一個則是考慮把 Time Warp 換成 Signet of Humanity, 因為感覺平原戰時<br />
Time Warp 效果不是很好,畢竟平原戰時都是不斷移動不可能停下來的(除非僵持中),<br />
那 quickness/slow 的效果就不顯著。當然攻城或是隘口之類的是另一回事就是了。<br />
我一直覺得 Mesmer 的 elite skill 都很雞肋,寧可換成 utility, 這樣還能用<br />
Null Field 或 Feedback 應該都還比較好用。<br />
<br />
想換成 Signet of Humanity 的原因是這樣多一個解狀態和 distortion 的機會。<br />
變鳥雖然也沒什麼用,不過在移動的路上遭遇 roamer 時會有點用,加上扣著不發<br />
也有減少 cc 的時間也是不錯,畢竟 cc 才是真正的殺招 ><<br />
<br />
至於 offhand 到底該用什麼武器,我現在還沒什麼好想法。focus 有點 reflect 的話,<br />
非常好用,因為 Temporal Curtain (focus 4) 並不真的是可以取代的。swiftness<br />
是真的沒差,除非是死了要跑回去。但 reflect 的話,cooldown 比<br />
Wall of Reflection 要來得短很多,雖然在 specialization 之後 ground target<br />
的優勢沒有了(現在 Consecration 內建 ground target 了...),但跨越的敵人有<br />
cripple, 快結束時還能 pull 一下,再加上這個 pull 可是唯一一個可以把敵人從<br />
城牆上拉下來的技能!多人連續拉的話,還可以把敵人從 Arrow Cart 上直接拉下城牆,<br />
應該是最強的 cc 技之一吧...<br />
<br />
至於 Phantasmal Warden (focus 5), 對倒地的敵人放是不錯啦,不過我覺得還好。<br />
這招在 zerg 戰中確實不是很有用,我用來主要還是為了 reflect 或是 bleed<br />
(以前有點 fury 和 critical 時 bleed, Dueling 那排) 和 retaliation 和<br />
shatter 用。<br />
<br />
有誰的技能可以取代的話我覺得也不是很重要的考量,畢竟技能也不是重複的。除了<br />
Symbol of Swiftness 確實取代掉了所有 swiftness 的考量外... 還有<br />
Stand Your Ground 確實也使絕大部分的 stability 相形失色...。<br />
<br />
我目前是考慮 Sword 或 Pistol, 不考慮 Torch. 原因是我覺得在 zerg 戰中,<br />
clock 其實對生存影響不大。我曾經被 Ranger 偷打過,這種時候會有點危險,<br />
但現在有一堆 distortion 的技能和 Blink 已經足夠躲過了,不需要再多一個隱形。<br />
當然,如果要玩 portal bomb, 那 Torch 自然一定要帶!這種時候愈多隱形愈好 XD<br />
<br />
Phantasmal Mage (torch 5) 我覺得還滿沒用的。ㄟ等等等,這招改了喔? @_@<br />
居然從 confusion 改成 burning 了 @@ 時間還 6 秒喔?超級長。看來這招<br />
要重新評估了。多個 fury 雖然只有 3 秒,不過不無小補。<br />
<br />
Sword 的好處是多一個 block 也多一個 illusion 機會,或是 daze.<br />
phantasm 攻擊力很高,不過要靠近才能打人,zerg 中大概沒機會打到...。<br />
<br />
Pistol 的好處則是最強的單體 stun 和 phantasm 是遠程的,這樣有機會打到人。<br />
之前我是用 Sword, 現在換 Pistol 試試。Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com0tag:blogger.com,1999:blog-4013660499115623904.post-85996737056669400482015-06-16T02:08:00.002+08:002015-12-25T18:21:21.323+08:00地城戰棋<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggCrLoZ0gr0PAYIEDb3sLa7vU2kNbp9rMKxX1EtIcXZSg2mjl28P7s2ubMiuKetdwnwT3yxLHUX3To9Pet4KJZSkl0Yi5UYMLT4fQi-nJ2TgvxUoSaG7ah1qVqLbCdoli78BWeanvSIwE/s1600/IMG_0255%25282%2529.PNG" imageanchor="1" ><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEggCrLoZ0gr0PAYIEDb3sLa7vU2kNbp9rMKxX1EtIcXZSg2mjl28P7s2ubMiuKetdwnwT3yxLHUX3To9Pet4KJZSkl0Yi5UYMLT4fQi-nJ2TgvxUoSaG7ah1qVqLbCdoli78BWeanvSIwE/s320/IMG_0255%25282%2529.PNG" /></a><br />
<br />
遊戲系統滿有趣的,別於一般卡牌遊戲,是有小棋盤的;<br />
別於一般戰棋遊戲,棋子是不能移動的。雖然覺得運氣成分<br />
仍然略重了一點,例如攻擊目標是隨機的,因此關鍵時刻會有<br />
像是打 A 就贏了,打 B 就輸了這種狀況出現,我不是很喜歡。<br />
還有戰鬥中出現寶箱,害我必須權衡是否能不顧盤面,對於<br />
戰鬥節奏是個嚴重干擾。行動點數亦然。不過可以組牌加上<br />
異能(這是 Magic 術語?),還是滿投我所好的。<br />
<br />
略過 UI 的部份不提,目前覺得有三點是可以改善的部份。<br />
<br />
<br />
一個是盤面佔盡優勢後,難以逆轉。一般卡牌遊戲解決這個<br />
問題的方法就是清場牌,以 Magic 為例的話就是 Wrath of God,<br />
Damnation, Day of Judgment, 等等等,或是打全場的牌更是<br />
所在多有。這些就是避免累積過多牌在場上所造成的無敵優勢,<br />
使另一方失去逆轉的機會,乾脆選擇直接放棄。另一個層面則是<br />
提供更多的戰術選擇,例如清場只清特定條件下的牌,而非真正<br />
全部清除。例如在 Magic 中清場也只是 destroy all creatures.<br />
<br />
在地城戰棋(後簡稱本作)中,大概就是提供另一種棋,例如<br />
障礙物(不少關中已有 0/99),要用另一種方式清除,這樣<br />
就不致於使得清場這件事變成貨真價實的回歸原點。或者也可以<br />
用異能來達成,例如無法被指定的相反,即無法被用非指定的方式<br />
傷害。<br />
<br />
目前本作中,審判官和閃電女神的清場效果算是比較有效的(我還<br />
沒拿到的牌就不知道了),火法師全場打 1~2 點不夠可靠。幻術師<br />
在大家排排站時效果很不錯,但鬆散或是非十字排列時只變兩隻<br />
水母的效果不夠顯著。不過本作中除了沒有另一種不會被清場的牌外,<br />
一回合只能放一張,也沒辦法一次拉很多張上場,導致清場的效果會<br />
變得太強,這樣大家就拚清場就好了,也不是好事。所以在提供較多<br />
清場牌之前,可能要先提供一些能大量拉牌上場的效果,或是上述避免<br />
被清場的異能,以反制過強的清場效果。<br />
<br />
<br />
第二點是這遊戲顯然是可以對戰的,不過英雄的行動不確定要怎麼做。<br />
對戰遊戲通常兩種作法,一個是輪流動,另一個是同時動但輪流決議。<br />
(也可以同時決議,不過在本作中都採輪流決議,忽然改同時會很怪)<br />
以電腦遊戲而言,輪流動通常不是好的作法,因為節奏會很糟糕。<br />
也許 War of Omens 是個例外吧,雖然是輪流,但也許需要想的並不多,<br />
仍然可以很快決定。同時行動的話問題就在於目前英雄的行動是在出牌<br />
前就先決議,這樣會有誰要先動英雄的問題。要做成輪流的話,可是<br />
出牌又是同時決議...。屆時要對戰的話,這部份規則應該會需要調整。<br />
直接捨棄英雄好像也不對,已經有不少魔法武器的異能了。犧牲也是<br />
另一個要做對戰時要處理的問題。<br />
<br />
<br />
第三點是關卡設計與 AI 的部份。有不少關卡都是敵人有非常強的開場<br />
優勢,搭配愚蠢的 AI, 讓玩家逐漸逆轉,最後取得決定性的優勢。當然,<br />
也是有可能最後還沒完全取得優勢即勝利,不過這可能是沒打好。<br />
也不是說不能有這樣的設計,只是總是如此的話打起來有點無聊。畢竟<br />
劣勢下的打法,與均勢下和優勢下的打法都不同。理想上應該是因為<br />
運氣或判斷導致情勢轉換,而情勢轉換後則需要用不同的戰術。現在<br />
這樣大抵上變成努力扭轉劣勢就對了,變化不多。<br />
<br />
同時又由於敵人出場太過有利,使得 AI 不能太強。我看不太出來敵人<br />
AI 是怎麼設計的,有時候像是隨機的,不過還是有某種 pattern 在。<br />
有時候看到敵人做蠢事,實在會有種勝之不武的感覺呀 XD 同時也變相<br />
鼓勵玩家「賭」AI 不會下對棋,減少運用戰術的樂趣。<br />
<br />
AI 每回合以不犧牲的方式出一張要犧牲的牌也是。有這種模式也沒什麼<br />
不好,只是我覺得讓 AI 有腦袋一點,玩起來還是會比較有趣,讓運氣<br />
成分降低一些。<br />
<br />
最後推薦 Falcom 的 Vantage Master (Japan), 這是貨真價實沒有任何<br />
運氣成分的戰棋 :) AI 並不強,但也不是庸手,殺殺時間的程度是夠的。<br />
<br />
地城戰棋:<br />
https://itunes.apple.com/tw/app/id982827073?mt=8<br />
<br />
期待 Android 版,這樣我才能在手機上玩。<br />
<br />
<br />
附圖是我目前的牌組。我偏好燒殺清場的效果,因此只放遠攻或是能<br />
有效打掉對方牌的牌。因為花了點錢,也抽到不少五星。噢,追加一個<br />
覺得可以改善的點。同樣要犧牲,五星實在比四星好用太多了,而也<br />
不可能放太多需要犧牲的牌,導致所有要犧牲的四星我都不想放。三星<br />
甚至二星反而比較有用。平衡度應該還有不少調整的空間。<br />
<br />
風元素想放更多,只是目前只合到一隻。拿二星以下的方法,好像只有<br />
打前面的關卡,然後拿去合成?這點或許也是可以調整一下。目前牌組的<br />
困擾是不知道怎麼面對會潛行的敵人。可能會被替換掉的是火元素、<br />
化學家。很滿意馭雷者和遊騎兵(游騎兵是中國的詞吧?),應該不會<br />
換掉。五星的則是太強了,當然都要帶上..。Lin Jen-Shin (godfat)http://www.blogger.com/profile/04471393622959484230noreply@blogger.com4