Thursday, 29 July 2021

奧運/麥兜/臘鴨

年少,練了六套腳法 可惜我依然未覺夠用。
年晚,又培育了珊珊!可惜我依然未覺......但我依然未覺......

尋晚,食了六個餐包 可惜我依然覺得仍未十分飽。
尋晚,夢見下塌包山!可嘆是我只含住個包,無--力--挽--。

--麥兜故事《黎根之歌》




1996年亞特蘭大奧運,風后李麗珊在滑浪風帆項目奪得金牌。你還記得嗎?

很抱歉,那時候的我還小,對奧運這種世界大事仍然一無所知。

我關注奧運最多的應該是2004雅典奧運,到了2008我已經沒在看電視了;2012我的印象僅停留在那流傳千古的開幕式(還有牛下女車神),2016那屆不值一提。

然後是2020東京奧運。我的主要感想是:你他媽別擋著我們辦同人展,而且一擋還擋了快兩年。我知道這不完全是日本的責任,但從結果來看的確就是這樣。當然如果要說甚麼奧運的政治經濟效應,甚麼東升西降、甚麼建蚊子館或者社區活化都是我感興趣的內容,只是這些跟我本人關係不大,這些最終都只會化為知識而不是回憶。

我對珊珊奪金的印象只有一個,就是那句「香港運動員不是垃圾」,連同臘鴨一起封印在麥兜故事這部可以完美代表那個特殊時空下本土文化的神作裡面。誰又會想到這個沒法保證精英運動員生計的文化砂漠可以養出奧運金牌得主呢?

這面金牌引出了各方勢力前來沾光,但感觸最深的肯定還是香港人。正如馬勒當拿率阿根廷在兵敗福克蘭後踩著死敵捧走世界盃,又或者1966年大英帝國瀕臨瓦解之時奪得世界盃(2021其實也差不多,可惜被一頓謎之操作搞沒了)一樣,體育往往可以成為國民最好的慰藉。香港兩次奪金對應「回歸」與「二次回歸」兩個風雨飄搖之際可能只是巧合,卻讓奪金這事更別具意義。

感謝張家朗和一眾其他參加東奧的香港運動員。希望大家要堅持,不要放棄。

2021.7.29


Sunday, 25 July 2021

Thoughts on IMO2021 Q2

IMO 2021 is finally over. As usual I skimmed through the question and focus on the inequality problem where I usually perform the best. It was Q2 this year, but it is not an average Q2.

It turned out to be as hard as Q3 (mean score 0.375 against Q3's 0.372, but Q2 gives out more partial scores and more zeros), both harder than this year's Q6 (mean 0.481). Possibly one of the most controversial Q2 in IMO history. What makes it so interesting? Here are my thoughts.

First let us look at the question.

Problem (IMO2021 Q2). Show that 
$\sum _{i,j} \sqrt{|x_i-x_j|} \leq \sum _{i,j} \sqrt{|x_i+x_j|}$
for all real numbers $x_1,...,x_n$.

If you have already spent time onto this problem, here is the solution. This is similar to the solution mentioned by TheUltimate123 in the AoPS thread.

Claim 1. The case $n = 0,1$ is trivial.

Claim 2. LHS is invariant upon shifting all $x_i$ by a constant (let us simply call that "shifting" for the rest of the solution)

Claim 3. If $x_k = 0$ for some $k$ then the $x_i$-related terms on both sides are the same which is
$2\sum _{i\neq k} \sqrt{|x_i|}$. Therefore we now WLOG assume that all terms are non-zero.

Claim 4. If $x_k+x_l=0$ for some $k\neq l$ then the $x_k$ or $x_l$-related terms on both sides are also the same, which is $2\sqrt{2|x_k|} + \sum _{i\neq k,l}(\sqrt{|x_i-x_k|}+\sqrt{|x_i+x_k|})$.  

Claim 5. RHS is not minimal upon shifting unless $x_k+x_l=0$ for some $k,l$.

Proof: Jensen gives that 
$\sqrt{|x+y+\varepsilon|} + \sqrt{|x+y-\varepsilon|} \leq 2\sqrt{|x+y|}$
for $x+y\neq 0$ and $\varepsilon \leq |x+y|$. 
Summing over all $x_i$ gives
$\sum _{i,j} (\sqrt{|x_i+x_j+\varepsilon|} + \sqrt{|x_i+x_j-\varepsilon|}) \leq 2\sqrt{|x_i+x_j|}$.
for sufficiently small $\varepsilon$. Therefore a shift of either $\varepsilon /2$ or $-\varepsilon /2$ would give a smaller RHS while having LHS fixed.

Note that $x_k+x_l\neq 0$ is required to maintain convexity of $\sqrt{|x+y|}$.

Therefore the induction is completed. If $x_k=0$ for some $k$ then we reduce to the $n-1$ case by claim 3. Otherwise shift until $x_k+x_l=0$ for some $k,l$, then reduce to the $n-2$ case by claim 4.

The above also gives the equality case in full. Firstly adding arbitrarily many zero terms does not affect the sum. If we assume non-zero terms then the only instance where RHS decreases is by shifting, so in order to obtain equality the terms must be canceled pair by pair without the need of shifting. We therefore conclude that equality holds if and only if the terms are symmetric along zero.

*

There are alternative solutions using completely different approaches like the use of integral to prove the more generalized case $E|X+Y|^{1/2} \geq E|X-Y|^{1/2}$ for random variables $X,Y$. Even more fascinating, one used the integral
$\sqrt{|a+b|}-\sqrt{|a-b|} = \frac{1}{\sqrt{2\pi}}\int ^{\infty}_0 x^{-3/2}(\cos (a-b)x-\cos (a+b)x)dx$
$= \frac{1}{\sqrt{2\pi}}\int ^{\infty}_0 2 x^{-3/2} \sin ax \sin bx dx$. 

It is also note worthy that the original problem uses the exponential $\alpha = 1/2$. The statement holds for all $\alpha \in (0,2]$. Convexity works all the way up to $\alpha = 1$ but college techniques is absolutely necessary for higher $\alpha$. One approach is to use linear algebra and binomial theorem for non-integer exponents(notice that when $\alpha = 2$ it simply reduces to prove that $4\sum x_i x_j \geq 0$ which is obvious. But then for $\alpha \in (1,2)$ you can also write $|x_i-x_j|^{\alpha} = (x_i^2+x_j^2-2x_ix_j)^{\alpha /2}$, then you may expand and compare both sides using positive-definiteness), and the other is a generalization of that integral identity (with the help of gamma function).

You might have noticed something here already: the abundance of calculus solutions, the clear generalization to something famous and common in undergraduate maths, and the flexibility in exponential (cf. most $a,b,c$ type inequalities that you saw in 2000s-2010s IMOs), all suggests that this is a very good question for undergraduate contests.

However if we consider IMO to be the pool of the most talented math students in the world (even better than those participating undergraduate contests on average), why is this a hard problem to them? And why did they perform poorly at the end?

I figured out the solution almost immediately, like within 15 minutes, and the flow of thoughts is as follows: the shift is clear immediately. Then I tried to solve the case $n=2$, which is not easy already. By using the parametrization $x_2 = rx_1$, it is found that the equality is tight if $r=-1$. Putting back to the inequality with $x_1$ and $x_2$, it can be found that when $x_1=-x_2$ the terms on both sides are equal. The cancellation trick is soon found to be working with larger $n$. We now know that induction may work as long as we can reduce to these cases. (I missed the case $x_k=0$ when I first solved the question, so I didn't get a 7 in that sense...)

By reducing to these case, we must show that shifting to these case gives a smaller RHS, and this is what we need to prove. We applied Jensen and showed that we can always get smaller as long as $x_k+x_l \neq 0$ so we are done.

...or not?

You might have spotted the problem already. The hard bit of the question is the indirect relation between the fact that you can shift to reduce RHS and the goal that you can shift to a smaller RHS that $x_k+x_l=0$.

It goes through only if you have a calculus sense, or else it could trap you forever.

For starter let us consider to shift by the maximum possible distance $\pm\min |x_i+x_j|/2 = \pm t$ so that we reached a singular point (where $x_k+x_l=0$...). The problem is: we only know that a either a shift of $+t$ or $-t$ gives a smaller RHS but not necessarily both. If you shift to the point where $x_k+x_l=0$ you are not guaranteed a smaller RHS.

Or, if you shift little by little to reduce RHS, can you guarantee that you end up with a singular point?

These are never a problem if you know calculus argument, and they can only be understood via calculus argument.

From a global point of view, the sum is definitely increasing with large enough shifts. Since the sum is also bounded below and is continuous, there must be a global minimum. Since the minimum does not occur at the smooth part it must be at one of the singular point. We can shift directly to that point to complete the induction.

To shift gradually you may argue that the derivative between two singular points do not change signs so one of the two neighboring singular point must be a local minimum [or even weaker, a local minimum with respect to the closed interval bounded by the two singular points]. Alternatively, since we know that $(\sqrt{x})' = 1/(2\sqrt{x})$ which rockets as $x\to 0$, we argue that the derivative of $\sqrt{|x_k+x_l|}$ overwhelms all other terms as we shift $x_k+x_l\to 0$, so that must incur a minimum [hence even singular point is a local minimum]. 

And how can you argue that by "elementary means"? Probably not, unless the official solution suggests something spectacular.

If you check everything else in the solution they are pretty standard. induction of course, simple special case ($x_k=0$) and a more complicated special case ($x_k+x_l=0$), substitution [in fact, instead of a shift, we may apply the substitution $x_i = y_i+t$ to achieve the same] to hold one side invariant, Jensen on convex functions --- these are all standard tricks in IMO. It is the final link that completes the solution, is hard to realize and that link is, regrettably unavoidable.

It is a beautiful and insightful inequality. Again quoting someone in the thread -- the beauty of this problem is that $n=2$ provides everything you need: minimal condition and the shifting. (Although to be fair, $n=2$ hides the technical problem as described above, and you will only meet that at $n\geq 3$.) It simply requires Jensen (or even just elementary comparison because it is just square root) in a two line calculation. We do not need 30 lines of machinery like other IMO inequalities did.

We can continue the list and praise the problem in many more different ways. The only criticism is that the problem unfortunately does not belong to IMO.

*

I last wrote about IMO problems in 2006, before this blog opened. I wrote that in my previous blog, a site that is long abolished (at least I do not have to worry about Blogger closing soon...yet).

I was of course, too immature to understand what happened -- I copied someone else's solution and put it on my blog. For whatever reason that post received tons of comments out of nowhere: recalling that discussion now I believe that those people are truly qualified to do these IMO problems. It is still a mystery up to now how did they found my post (out of a blog that never talked about advanced mathematics otherwise) and open a contextful discussion there, but this is the beauty of Internet in the 2000s.

Without running into a nostalgic loop, let me finish with that particular IMO problem that I discussed back in 2006. That problem was 2001 Q2 -- another Q2, another inequality, and another problem that allows elegant solution using Jensen's inequality. 

Problem (IMO2001 Q2). Prove that for all positive real $a,b,c$ the inequality $\sum _{cyc} \frac{a}{\sqrt{a^2+8bc}} \geq 1$ holds.

Friday, 23 July 2021

被青梅竹馬抓來(略) (2):別人十年磨一劍,你一年磨一劍已經非常快了

"優雅な午後"
Character design: @kuonyuu, Illust: @茶桜みゅ commissioned by forretrio. Pixiv
Editing and re-posting are prohibited // 無断転載、無断使用禁止です



帝都的上層社會由一張張緊密的關係網組成。從冒險者協會到銀行工會到各種商會,帝都充斥著交流情報的地方。只要你在那個圈子裡,今天誰跟誰約會,或者昨天誰跟誰吃飯其實都不難打聽到。

最近在校園出盡風頭的白髮青年無疑是大家最近感興趣的對象。雖然他登場的時候沒多少人認得出他來,但只要在場有一個人認識他,那在賽後想調查他一點都不困難。身為以前的學生,完全沒人能把他認出來才奇怪。

從比試到正式上課隔了數天的時間,足以讓他的背景在學生之間廣為流傳。

庫里斯,二十三歲,出身自某小城市的男爵家。以平民的身份入學並且成功進入魔法科。實戰非常優異,在冒險相關的課題上經常展現極強的個人戰力。

在入學大半年後因為與高階貴族衝突並對其集團發起挑戰,並以一人之力將對方全數碾壓,第二天隨即退學在帝都中消失。這些年一直在外面作為冒險者活躍著,以接受委託的形式在不同隊伍中遊走,不知為何沒有加入任何隊伍的打算。

主力當然是風屬性,但其他屬性也有一定適性且戰鬥風格多變,可以勝任隊伍中不同角色。委託中較少發揮其多面手的能力,有隊伍曾形容將某位置空出來讓他頂上的話很容易對其產生依賴。

最近不知道為何推掉所有委託孤身一人回到帝都,並回到校園成為教師。在帝都在冒險者體系以外人脈不多。唯一比較相熟的是當年的同班同學,目前擔任宰相副手一職的伯爵之女。

這些經歷不禁讓一些人覺得這傢伙該不會是討厭貴族的人,畢竟這個班上超過一半跟當年被教訓的學生一樣都是貴族。不過有認真跟他交手的學生多半還是對他抱有期待,因為那天的比試實在太震撼了。

至少伊雅娜是這樣想的。

慘敗給她將來老師的一幕深深地烙在她的腦海中。她一直在想怎樣打才可以對他構成威脅,但她在腦裡每模擬一次戰鬥,得出的結果就使她更絕望。她的結論是,她要快上整整一倍才能突破他的防御,這對她來說實在不太可能。

至於他最後的提點,她把這句話原封不動地丟給了她的父親。父親的回應是,是對也是錯。對的是,全力催出來的電光劍在面對很強的對手時,蓄力的空窗期的確會對她不利;錯的是她的劍足以擊破大部分對手,把電光劍的威力催出來就能發揮最大優勢。

這個很強的對手到底是多強?她這樣問道。她父親想了想後表示:帝都就算算上冒險者,能兼具魔法戰力的劍士不到十位。

她沒有告訴父親的是,這人似乎不是會魔法的劍士,而是會揮劍的法師。

父親還說,他有興趣見一下這位年輕人。

她父親是誰?一代劍術宗師,每年無數人拜其門而不得入,而今天父親居然開口說想見他?

想到自己接下來會接受這種人指導,她對之後的課就更期待了……

*

今天是上課的第一天。

魔法科以外的新生雖然都想跟新老師見上一面,不過所有新生都要到所屬教室報到,要見面只能等下課以後了。

庫里斯已經跟其他教師寒喧過了。一些老牌的教師雖然沒有教過魔法科的學生,跟他們相處的經驗卻也不少。在他們看來,庫里斯再強也只是一介武夫,就算在實戰上可以讓小姐少爺們服氣,日常相處也還是一大問題。他自己可不這樣想,有最強腹黑軍師指點的他才不會搞砸呢。

「大家早安~歡迎來到國立魔法學園,也歡迎大家成為魔法科的一分子。再次自我介紹一次,我是庫里斯,將會擔任魔法科的導師一職。特長是風魔法--嗯,相信在座各位已經充分理解這一點了吧?」台下立刻傳來殺人般的目光。

教室門口突然傳來「咚」的一聲,一個水桶從天而降。奇怪的是沒有半點水飛濺出來,但那沉重的聲響怎樣也不像空水桶。在教室後排的幾位男學生目睹這一幕,同時發出了小小的歡呼聲和嘆氣聲。

「哎呀,真是危險~」庫里斯從講台上跳下來,水桶在他的操控下飛到他的面前:「我看看……裡面裝的居然是冰?這樣砸到頭肯定要進醫院呢。老師我可以接受水桶,但是冰桶有點過份了喔,克萊伊同學。」他特地把水桶裡面展示給同學看,只見裡面的水已經結成一整塊冰。

被點名的克萊伊滿臉通紅,在同學熱切的眼光中站了起來:「老……老師怎能憑空污人清白呢,我怎樣看都不像會這樣陷害老師啊。」

「嘛,老師的確不知道誰把水桶放上去,不過我看到你嘗試用魔法把水桶推下來呢。這樣遠距離操作其實很顯眼,我建議你下次準備好觸發性的魔法陣喔。」

只見庫里斯在水桶底部抹了一把,然後讓水桶浮在高處:「這樣--」

他伸出手臂掃過水桶下方時冰桶一百八十度翻轉,一桶水立刻傾瀉而下:「想要查出是誰搞的鬼就比較困難了哦。」

把水無聲無息的變成冰再變回去當然是他的小把戲。學生們滿是疑惑的眼神讓他非常滿意:「今天是你們第一天上課也是我第一天教書,我就先說說我的教學方針好了。」

「在此之前,我希望你們想一下--你們來到這裡,是希望得到甚麼呢?既然你們進入了魔法科,那就代表你們的能力已經遠超常人,甚至已經可以成為即戰力了。這樣的話為甚麼要浪費三年在這裡再聽一次你們以前很可能已經聽過的知識呢?」

「如果你們是貴族的話,在這裡就讀就只是一個過程而已。身為貴族擁有一定的魔法能力就足夠了,過份強大只會讓人懼怕。你們大部分人畢業都會接過家業,在帝都舒適地生活著,這樣魔法再好又有甚麼用呢?」

「對於平民入學的你們,我要恭喜你們:進入魔法科代表通往帝都頂層的大門已經為你們躺開,你們是受益最大的一群。不過你們也可以想一下,進了這裡就一定要從事魔法相關的職業嗎?很多人都覺得身為魔法師可以當冒險者發大財,可是你們知道正是因為魔法師的折損率是冒險者之間最高的一群所以才這麼值錢的嗎?」

「我沒有要勸大家別當冒險者的意思,相反我很樂意以過來人的身份幫助你們。不過我想你們既然有能力進入這個班級,自然也有餘裕考慮標準課程以外的興趣--你們應該不會只對冒險有興趣吧?」

「我的想法是讓你們花時間找出你們希望學習的東西,然後由我或者其他人來指導。我會花三分一的時間講解標準課程內容裡面比較有用的東西,剩下的就作為課題交給你們了。」

「至於另外三分二的時間就是個別指導的時間了。唔--具體時間要怎樣分配主要還是看你們的興趣在哪個方面。對魔法或者戰鬥有興趣的話可以一起去地下城冒險;就算是鍊金術或者商業這些東西我也可以找我朋友幫忙。當然你們想要找我過招的話只要別偷襲,我隨時都歡迎哦。畢竟--」

「為師我,不討厭打架呢。」

*

第一天的課就這樣結束了。

雖然有不少人留了下來想要發問,但他們看到公主殿下與她的侍衛也留了下來以後便識趣把機會讓出來。

「庫里斯老師你好。」公主殿下首先打了個招呼她的名字是菲莉,是帝國正室的次公主。本人是頭腦派,體質一般所以成為了唯一一個沒有參加跟老師對戰的魔法科學生。不過她也繼承了優秀的血統,可以使出強力的水跟光魔法。

「菲莉公主您好,」他稍鞠一躬:「雖然公主您沒有參與比試,不過我早就聽說過您是一位優秀的光魔法師。有機會讓我指導您是我的榮幸才對。」

「老師過獎了。聽說老師作為冒險者十分活躍,這些實戰經驗對我們學生來說是非常寶貴的呢。不過--」她稍微頓了一下:「我只是有一丁點擔心,那件事會影響老師你與貴族的關係嗎?」

他對公主殿下知曉自己的過去並不感意外:「算是年少輕狂吧……不過都是過去的事了呢。如果公主殿下再打聽一下的話應該就知道有人擔保我不會再胡亂出手我才得以回來喔。我可以保證在這個班級每一個都是我的學生,絕對不會因為他們的背景而有所偏袒。如果這方面我有甚麼不足的話就有勞公主殿下指點了--這樣可以嗎?」

「嗯。」她不置可否地點了下頭然後呼喚伊雅娜道:「其實今天想找老師你的是她才對。伊雅娜~你有東西想問吧?」

伊雅娜走上前問道:「老師你好,我想問一下關於那天你對電光劍的評價。」

「嗯?」

「我問過父親,他也認同你的看法。不過他也說了只有對上很強的對手時才有犧牲威力而加強隱蔽性和速度的價值。即便是這樣,老師也會建議我這樣朝這個方向鍛練嗎?」

「非常好的問題呢。這樣說好了,對你來說電光劍到底是常規招式,還是保命的底牌呢?」

「嗯……算是底牌?我的魔力本來就沒法一直在劍上附魔,上次我也是最後才把這招掏出來。」

「作為底牌的招式沒有一擊必殺的能力就沒有意義了。在高階的戰鬥中,所有常規套路都是為了那一兩招殺著而準備的。你想一想,作為殺著到底是可能打不到高階對手的超強力攻擊,還是稍弱一點但是很穩的攻擊更好呢?」

「老師的意思是,對上一般的對手不用全力的電光劍也能贏,所以練習加速版電光劍應付高手更好嗎?」

「這個思考方向沒錯,不過讓我來選的話我覺得兩招同樣重要。全力的電光劍並不是一無用處--跟不上那速度但擁有優秀防御能力的人和魔物多的是,那招作為破防非常實用。反正底牌又沒人規定只能有一張,都一起練就好了嘛。」

「……」伊雅娜同學有點無言。他是把底牌招式當成甚麼了,以為這是回家練一個星期就能熟練地使出來的招式嗎?為了讓魔法效力與她往前突刺的動作同步,她花了半年多的時間才算小成,期間魔力失控電到自己等意外更是不計其數。

「要我說的話,你甚至可以考慮再加練一招--將輸出的魔力壓制到可以在格劍時隨時使出來的程度。我保證這招由主修物理劍術的妳使出來的話絕對能嚇到對手的。」

「老師……你是不是忘記了一件事……」

「嗯?怎樣了?」庫里斯擺出燦爛的笑容。

她努力地解釋著自己練不來的原因:「輸送的魔力不同的話,電光在劍上面爆發所需要的時間也會不同。我是通過大量練習才讓身體記住這個時間差的,實在沒辦法隨意改變輸入的魔力。」

庫里斯眼睛一亮:「你這不就把問題給自己找出來了嘛!還記得我上課時說過甚麼嗎?

我不喜歡指定你們要學習的課題,因為你們既然能進到這裡來,課本上的知識肯定不會是問題,那些你們回家自己看就可以了。我來這裡是希望幫你們找到自己所需要的東西,對吧?

現在你所以欠缺的第一件東西已經找到了,那就是跟低輸出兼容的電光劍使用方法。下一步就是找出解決的方法吧?」

「咳唔,所以你這個學期的第一個課題已經決定好了--」他清了一下喉嚨道:「我希望你花點時間研究一下在劍上附魔的不同方法。在你對兵器附魔有一定了解以後我們再來討論吧。

不用想太多,我沒說你要收集其他流派秘傳招式的原理。仔細想想看,日常生活中在物體上施加魔法不是很常見的一件事嗎?你把魔力灌在水壼中使水煮沸,跟把魔力灌在劍上使其帶電而且變輕的分別在哪裡呢?你往這個方向想就好了。」

「好……好吧。」伊雅娜並不相信老師真的可以幫她練出電光劍的變種,但是作為學習的課題的話還是可以接受。圖書館應該有相關的書籍吧?

……才怪。

老師對她提出了各種奇怪的問題,比如電流是從劍的中央發出來還是只留在表面啦,還者用不同材質的劍有沒有分別之類的。她沒料到每次當她以為自己完成了這個課題以老師總能拋出更多的問題難倒她。她更沒料到的是,這些問題併到一起居然把電光劍的時間差問題解決了--不過這已經是她入學一年後快一年的事了。

「別人十年磨一劍,你一年磨一劍已經非常快了呢!」老師帶著一貫的笑容這樣應道。當下她真的想一拳灌在老師的帥臉上,不過她覺得這一拳打在風盾上使她骨折的機會更大,所以她才忍住沒有出手。

這不過是,魔法科的同學們對他們鬼畜老師的認識的開始而已。

=============

有聽過科科班嗎?就是那個意思啦。

魔劍士或者更一般的魔武雙修在這個世界觀下絕無僅有,原因有二:擁有魔法師資質的人在社會中本來就是鳳毛麟角的存在,有能力魔武雙修的人大概跟有能力練棒球二刀流的人一樣多。另一個原因就是物理上的限制:要使出魔法配合物理武器的攻勢其實十分困難,在大部分時間還不如專注於物理和魔法攻擊其中之一。

比如火焰劍。在劍與劍的碰撞中火焰劍並沒有甚麼優勢,就算成功砍到對方這一瞬間的高溫也不一定帶來決定性的傷害。火焰劍對劍本身的負擔也很大,數十秒的高溫足以使劍的結構永久受損。

比較合理的做法是使用物理武器同時分別使出魔法,而非把魔法附到物理攻擊之上。庫里斯就是這方面的專家。

Sunday, 4 July 2021

04/07/2021: Game optimization patterns

Two notable events in the world of competitive gaming.

Rolling has been a viable style in classic Tetris and we found Cheez breezing through loads of world records. The way he broke the 100 line speedrun so casually when the previously newly set record was made upon multiple extreme optimization is simply spectacular. Rolling allows one to input above 20Hz edging close to the hardware limit (30Hz for the on-off cycle). The problem now is about consistency and flexibility, and we will know more in upcoming CTM and of course CTWC.

The SMB1 Any% record has been broken once again, this time entering the last possible second at 4:54. The human sum of best is merely a few frames slower than TAS. This is probably the closest against TAS in gaming history after dragster. 

They represent the frontline of game optimization: it reaches the realm where inputs are almost impossible to humans, which is a mechanical problem rather than a software problem. This matches the spiral theory where software and mechanical optimizations take the role in turns. 

Fortunately we also developed more tools during the years using science. Taking SMB1 as an example, in early days people experimented different tricks and do whatever is the fastest. We knew that there are shortcuts (e.g. 4-2 clips) but we didn't know how that worked but to take that as pure luck. As time passed, we started to use TAS first to get a route that works. We then refine that to "humanly possible" tricks -- after that it's speedrunners' job to execute those "humanly possible" tricks. And how refining works? Well the science of NES games and SMB1 itself is very well established, so people can calculate all the subpixels bit by bit for the possible route. If we take subpixels as a chaotic parameter as affected by the dynamics of the character, we may perform exhaustive searches around the possible routes until we found one that works for players. 

Since I mentioned the science behind speedrunning, I should mention the Youtuber that does a great job on the matter. In fact, everything I wrote above is just a set up for one of my favourite comment that mentions 4 great youtubers, three of which make videos that I would watch at highest priority. Here is the comment from this video...

Remember people:
* Summoning Salt for History
* Bismuth for Science
* FlibidyDibidy for Technology
* Karl Jobst for Social Sciences

Friday, 2 July 2021

TWEWY the Animation: Beat week and general thoughts

Joshua the smol character in TWEWY.


I expected Beat's week to last 4 episodes where the last episode can be spared for something else. It turns out that they spent 4.5 episodes on the week. This is not a bad choice as spending a complete episode decoding (unless Vivy ep.12.5 just trying to reiterate from another POV) will surely scare the pure anime audiences away. 

At the same time, problem arises: there is not enough time to decode everything that is necessary to give a full story. Well that even happened in the original game: the secret reports contained a vast amount of information yet they are not enough to tell the full story that an average player/reader could understand. What they did in the anime is actually a wise move -- instead of covering everything essential, they highlighted the difference between OG and the anime which is considered the "true storyline" that leads to neo. There are already too many unanswered questions throughout the episodes and it is a waste of effort to answer them all in 12 minutes -- just leave them to neo instead.

I think I have criticized enough about the choice of pins (and their effect) and monsters so I do not plan to do that in detail again here. That is again disappointing in ep.8-12 as we observe loads of week 1 monsters and more boring (and wrong) presentation of pin psychs. So instead I would highlight the differences between OG and the anime here. Some of them are quite influential and some are not (and probably also true in OG just not explicitly shown), but most of them are worth mentioning.

Episode 8:
- Reapers had their eyes hidden in OG, but as shown in the anime although they still their consciousness (for now), they are probably under partial control of the pin already.
- I said that I don't want to criticize the choice of pins anymore but here's something that I actually appreciate. They used a few Pegaso pins in the late episodes but I couldn't recognize them easily. The only thing that I noticed is the Pegaso icon on the pin -- but then when I stared at the pin list, every Pegaso pin has the same logo on it! This is a funny little observation from me.
- We can see Kitaniji's hand timer in the anime which the time running out -- this is not explicitly shown in OG although he said something like that.

Episode 9:
- Makoto finally appeared! Well there is none other than him who can do a better job to distribute the red skull badges.

Episode 10: 
- Eiji's truck appeared in the anime, but it is clear that the Shibuya sheeps didn't care anymore. They were already under unification of consciousness.
- Starting from the last episode it feels like the battle lags quite a lot which is surely disappointing.
- But Sho's teleportation is so cool! I wish that is shown in the week 2 final fight because every OG player would agree how painful it was to hit him in that fight...

Episode 11: 
- Konishi has the potential to do ASMR on YouTube.
- Kind of interesting to see that Shibuya river is not linear -- where do the other branches lead to?
- The battle is horribly simplified and even more it's not happening in the Dead God's pad. If you do not plan to show the fight there, why putting that in previous cutscenes and also in OP?
- In OG the formation of the special space created in the Konishi fight was explained and that the pact were explicitly sent back to ambient space before the fight concludes. Instead in the anime the space simply crumbled without further explanation. The same problem happened in the Sho fight already.
- Shiki reappeared but Joshua didn't as in OG. This is actually making sense because it is said that their return was due to the return of the entry fee. Shiki's part of the entry fee, but Joshua isn't. It is possible that he just showed up randomly after playing enough Tin Pins (see secret reports week 3) and try to get into the team. 
- Sho was not found dead under garbage heap. Instead he was able to talk to Neku in the anime. In fact if you think really carefully almost all characters were erased at the spot after being found severely injured, and Sho was the only exception. That could be a hint that he's not dead even in OG.
- They combined the two fights (Kitaniji phase 1 and berserk Shiki) into one. Other than my complain that it didn't happen in the pad, it's sad that the badge cutting scene was not replicated in the anime.
- Golden chain psych...that is not in the game, and no pins were specified there. The Mr.Mew ball is utterly nonsense but still made me smiled right there.
- It's still a mystery what happened when Kitaniji trapped Shiki, Beat and Joshua and try to drain energy from them. Nice to see that to be removed in the anime.

Episode 12:
- First of all, there was no indication that day 6 was gone. Were they still in day 6 or in day 7? If it's day 7 it would be cool to see the "LAST DAY" as shown in OG title.
- In OG the ultimate fusion pin just somehow appeared for you to finish the boss. In the anime this is due to the combination of power also from Shiki and Beat. But the representation is quite similar: the quintuple laser beams with a big cross.
- A door appeared when after the final fight -- the same door when Kitaniji was defeated in the pad in OG. Behind the door is a graffiti room that we have never seen before.
- Josh should have banged right after Neku's final words, just as in OG...
- Tin pin bro (and Makoto) appeared as cameo. Naomi's team as well as the 777 band are also revived.
- Half the face of RG Shiki, will she appear in neo?
- Mr.H tried to take an extra sip from the canned coffee after flipping it to confirm nothing's left
- Beat raised the question "why are they able to use such psych" and Neku guessed it's Mr.H's support. In some sense this is correct because that's in fact upon "imagination" according to OG secret report.
- Josh revealed that the player pin given to Neku is special and not the ordinary one. That explained why Kitaniji couldn't destroy that particular pin and shout "so that's why...!". He thought he couldn't gain control over Neku because Neku got an extra player pin, but it's in fact a special player pin that cannot be destroyed by him.
- It's a shame that the anime did not end with the OG ending song "A Lullaby for You"...it's such a fantastic song. I know something's wrong with the artist but still it's worthy to be put here.

As you can see most reactions came from the last 2 episode as the 2 episodes contain the core information of the story. Regarding the conversation at the end there are a few things that are worth mentioning:
- The golden key pin was an actual master key pin in OG (also in secret report), but here it become the pin that allowed them to do the final attack. We know that the harmonizer pin/fusion pin setting was abolished in the anime where the pact just use the fusion attack somehow, but are there any further implication about that?
- Mr. H explained about his graffiti. This may not be obvious but the exact same's in secret report 12.
- Joshua said that composers cannot be defeated by reapers even in RG. According to secret reports this is because the frequency of the repeaers are also lowered in RG that composer being vulnerable to reapers is invalid. However Mr. H somehow thought that Sho can do that with with the help of Taboo sigil?

The largest difference between the anime and the OG is perhaps the treatment on Rhyme. As much as the treatment being a lot less cruel it also leaves loads of extra question or even potential conflicts with the OG setting.
- In what form does Rhyme exist in UG in week 3? As some sort of energy (or soul -- see explanation from secret reports), something summoned upon psychs/pins (as in OG), noise a creature form? 
- Human beings if not repeats are not supposed to be in UG during the game. In what way Rhyme was allowed to stay with the team without any problems?
- Rhyme probably did not turn into pin in the anime, but if we do not know the nature of existence of Rhyme, how do we now the nature of reincarnation that "composers can do"? Of course what Beat refereed to is to revive Rhyme as a human, but this is not necessarily what others meant.
- The most interesting thing about Rhyme is how she managed to damage Konishi. As mush as that being a reasonable answer, it is also extraordinarily funny.

*

It is not hard to find games that has a similar setup/plot as TWEWY: teen based; "game" or more generally being tagged into unexpected events; confined in a specialized area in Tokyo; the growth of character along the story: Shin Megami Tensei (SMT), Persona or even Trip in Akiba. 

Comparing with these games, the story in TWEWY looks incredibly shallow. This is kind of an inherited problem due to the nature of the 7 days game where everything has to be done quick. The story maker had taken that into consideration and made reasonable stories for the three weeks. Shiki week is kind of relaxing so they can spare the time to reveal the background of Shiki and allowing more interactions. Joshua from Neku's point of view is a complete enigma and hence doesn't need much story. Beat's week is more of a decode and the big story unfolding, so the attention is shifted to the overworld as well as Rhyme. That part of the story is shallow but fitted into the game properly. 

What I wanted to know more is the big story behind. It's ok for me not to dig into the discussion of angels, vibes or anything that is of "higher existence", but what happened around UG and RG should be explained clearly at the end.

For example, it was said that Neku changed (in a desirable way) so that Shibuya is saved, but how? One may argue that Neku's personality changed positively given the social norm, but these are never objective. Why was Shibuya considered boring that needs to be destroyed? Such judgement could not be made just by looking at Neku or people around him -- unless this is commonly observed in Shibuya. There are many dreading regions in a city around the world, so why Shibuya? Is it about the imagination (which, was never properly defined other than its literal meaning) declining in Shibuya? That is never addressed in the story unfortunately. In the worst case scenario everything was set up just because Joshua wanted to without any reason, then the whole thing is no more than a child's play...

At the end of the day, TWEWY is still my favourite game by a long shot. The anime may not be the best reiteration of the game, but it is good to have that as a refresher or teaser before we meet NEO. I have already order the game and is ready to stream my gameplay (for the first time). Hopefully I will see you there in 25 days :)

Saturday, 19 June 2021

FEH VG predictor continued: wave pattern and early estimation

Building a model for VG is something that I wanted to do for a long time. In the previous article I wrote about the basics of a VG model and the article concluded with the chart below:


The perfect wave in the first 12 hours caught my eyes -- is that a coincidence or is that a general phenomenon? The aim of this article is to look into further patterns that help us to build the model. Before we start recall the terms that I used in the previous article -- please refer to the previous article for further details.

- Three examples all extracted from VG June 2021. Please refer to the previous article for further details. You can extract the raw data from the Japanese predictor made by @rammtiger_n. 

Example 1: Final (Popularity ratio >4)
Example 2: Quarterfinal 4 (Popularity ratio 1~2)
Example 3: Semifinal 2 (Popularity ratio close to 1)

- Parameter $k$: the parameter so that the accumulated score is of order $O(t^{2+k})$, or that the team's activity is of order $O(t^{1+k})$. To be more precise, for team i (i = 1,2) define $c_i(t)$ to be the constant factor which scales upon team size, and switch between three values according to the state of the hour, and $f_i(t)$ is the corresponding hour multiplier (which can either be $1.05+0.05t$ or $3.2+0.2t$). Ignoring intraday variation we assume that the team activity $A_i(t)$ is approximated by $c_i(t) f_i(t)^{1+k}$.

One should note that this parameter for the two teams are not necessarily the same, but they are close enough for most of the time. Let us assume that parameter $k$ is uniform across the two teams first.

*

The chart showed at the beginning is what happened in example 3. The curves are easily spotted because it is a perfect ping-pong where activity of the two teams are almost equal. At the same time when a team is in the excited state the other must be in the post-excitement state as it is exhausted due to bonus multiplier at the previous hour. As a result we find two perfect curves with alternating dots, one for the activity at excited state, another one for the activity at post-excitement state.

We do not have a perfect ping-pong most of the time, so are there any ways to extract such trend if it exists? One approach is to assign a factor to the three states: we may assume that the normalized activity in the excited state is 10 times the normal activity and 100 times of the post-excitement activity. Although we can explain this by the fact that flags comes in a multiplier of 100, such ratio is still affected by the parameter $k$, which we do not want to fix. 

There is a smarter way to get around this: observe that the state of the two teams are almost always excited + post-excitement or normal + normal. On rare occasions it could be normal + excited or normal + post-excitement but they always cancel out. Therefore we can simply take the (geometric) average of the (normalized) activity to retrieve the trend!

Mathematically, we first guessed that the parameter to be $k_0$. We then normalize the activity by considering $A_i(t)/(f_i(t))^{1+k_0}$. By taking the geometric mean we have that
$GM = (c_1(t)c_2(t))^{1/2}(f_1(t)f_2(t))^{(k-k_0)/2}$.
If we are either in the excited + post-excitement or normal + normal states, then $\sqrt{c_1(t)c_2(t)} = c_S$ is a constant. Since $f_1(t)f_2(t)$ is always $\Theta (t^2)$, we know that the geometric mean is constant (or regressed to be constant) if and only if $k=k_0$, i.e., if the estimated parameter $k_0$ meets the true parameter. We take log GM instead of GM to even out the impact of normal + excited states against normal + post-excitement states.

As a demonstration we calculate the log-geometric mean team activity for example 1 we get the following chart (with the guess of $k=1$):


We can see a downward trend starting from hour number 8, indicating that $k=1$ is an overestimate here. 

Again we retrieved the same early wavy pattern as in the first chart. It has a simple explanation: in FEH there are quests to clear. You need to clear these simple quests to get the (maximum number of) flags. The quests are mostly "clear VG with red/blue/green/colorless unit", but they require you to enter VG actually. On the other hand, you start the event with zero vote so you cannot do these quests right away. Most people do these quests with votes almost fully restored, which is exactly 4-8 hours into the event. 

Now we can estimate $k$ by removing the first 4 hours as outliers and search for $k_0$ such that the linear regression returns a zero slope. Since the regressed slope is strictly decreasing with $k_0$ we can always find such $k_0$.

If we apply that on example 1 we estimate $k$ to be 0.85: 


And if we apply that on example 2 we estimate $k$ to be 1.17:


The wavy pattern seems to be very consistent among all situations: we always observe two peaks, one at hour number 4 (which corresponds to 8 hours into the event since we removed the first four) and another one at hour number 12 (16 hours into the game). We may interpret these as the activity peak from players in different part of the world. Computationally the peak and troughs helps us greatly in the sense that we can do the same linear regression using the first two peaks and troughs, i.e., the data of the first 20 hours, and the result is highly correlated to the estimate using all 44 hours of data.


Example 1: $k$ estimated to be 0.8 with the data of hour number 5~20 vs 0.8 on global data


Example 2: $k$ estimated to be 0.92 with the data of hour number 5~20 vs 0.92 on global data

It seems that such estimation is always an underestimate due to (out-of-correlation) increased activity at the far end, but we can always add a little bit to our estimate. 

*

So, what can we do with the predictor now? This is a purposed way of creating a prediction:

- Use the early data to estimate the constant factor for teams' activity with $k_0=1$
- Predict by combining team activity and states guessing
- Analyze team composition by wave decomposition at hour number 20 and modify $c_i(t)$ accordingly
- Update $k_0$ by linear regression every time before iterating through the prediction after hour number 12 or 20
- ???
- Feathers!

As much as the above being a big and serious discussion, I still prefer participating the event in a simple way by guessing frequency of the bonus hours linearly. A 99% accurate predictor? Sure but no thanks if I am the one to write the codes. Not to mention that it is actually quite hard to measure the error in a dynamic system and we just can't tell in a mathematically rigorously way that how accurate our predictor could be...


The charts were not properly imported onto google drive, but you can plot them easily. Column L-N are time-normalized difference and bonus boundaries with $k=1$. Column T is the log-geometric mean of team activities. You can change $k$ as you like at W4 and W5, but the $k$ for the two teams are by default equal. The three labels are SF2, F and QF4 which correspond to examples 3, 1 and 2 respectively.

Friday, 11 June 2021

Some optimization on the FEH VG predictors

Voting Gauntlets in FEH is always controversial in many ways. In terms of outcome some hates to see popular characters always triumph over ordinary characters while the rest complains how the result is unpredictable and favors the chasing side by so much. In terms of reward some players are unhappy about the lack of rewards -- well actually 12 orbs is a lot, but the feathers are also very friendly to new players (and even me back in the days). In terms of difficulty, some found that playing with 3 random characters is quite fun, but some say they have terrible luck and facing 3 fallen Edgelord is bullshit.

But today I want to talk about mathematics and not the game mode itself. How can we predict the outcome given the first few/12/24 hours of data? Certainly there are a few attempts already: on Reddit there are a few predictors on the West and also one from Japan. I found that the interface of the Japan predictor is pretty nice, despite that the prediction is sometimes off. 

In the past I have talked about VG in the sense of a multiplayer game -- in the game theory sense, but this article is doing the complete opposite. We assume that the reaction is fixed under some unknown parameters, and the goal is to build a model out of that.

I do not plan to build a predictor by myself. It takes lots of time and does not benefit one so much ingame: in terms of ranks it makes no difference if the bonus hour shifts as everyone has the same bonus time. You can almost always get the highest reward by not missing the bonus hours in the last 20-24 hours, which can be done using VG bots. The prediction for the last few games where final result matters, can be predicted fairly accurately by most models anyway. 

The reason I wanted to write this is because there are a few things that I spotted that are relevant but they were not accounted in existing models, so it serves more as an investigation.

For starters, these are what you need to know: (FEH and negligible details are cropped, just to give a sufficient model here)
- Two teams undergo a head-to-head battle over 44 hours.
- Every player has a voting gauge which recovers by 1 vote per hour and is capped by 8. 
- Every player has 2000 flags which they can spend over the battles. One may spend a maximum of 100 flags per vote that they applied. With N flags applied the score is multiplied by N. For example if one spends 8 votes with 800 flags then the score is multiplied by 800. If no flags were spent the multiplier is 1 per vote.
- There are two multipliers: the normal multiplier starts from 1.1x and increase by 0.05x per hour. The bonus multiplier starts from 3.4x and increase by 0.2x per hour.
- The score is updated every hour. If a team is 1% more than the other, bonus multiplier will be triggered for the weaker team during the hour. 
- The team with higher score at the end wins.

Score normalization

First of all, we know that the score is not growing linearly and we need a way to normalize them for a time-invariant comparison. A clear choice would be the direct score ratio between the two teams. This is a very intuitive choice which also hooks with the bonus trigger, but the accumulated score certainly affects the velocity of this indicator over time.

Another choice is to divide the score by the multiplier, whether it's the ordinary or bonus multiplier does not matter too much because that is just a constant scaling (almost). The problem is that player's VG activity isn't constant either: higher multipliers are expected at the end so they prefer to spend flags towards the end. With flags around the score obtained by not spending flag is basically negligible. We need to capture when people spend flags.

With everything being non-linear it is so hard to decide the right exponent, so I decided to look at the accumulated score instead. It is natural to assume that players' activity is non-decreasing in general, then their points gained per hour, after enlarged by the linearly growing multiplier, is at least linear. As a result, the accumulated points are at least quadratic, i.e., $\Omega (t^2)$. 

Assume that the players' activity -- or the teams' activity as a whole, is of order $O(t^{1+k})$ then the accumulated score will be of order $O(t^{2+k})$. It is not hard to find that the accumulated score is indeed at the order $O(t^{2+k})$ for some small $k$ -- so let us just divide everything by $t^2$ before we look into the parameter $k$. 

Here are the two typical examples taken from VG 2021 June.

Example 1: VG final (F!Corrin vs Klein)


Example 2: VG quarterfinal 4



These are two typical matches in VG: example 1 is when the popularity of one clearly overwhelms the other, while example 2 happens when a team is of significantly higher popularly but not as extreme as example 1.

All the charts are time-normalized by $t^2$ where $t$ is the average of the two multipliers.

In the first chart, the orange and yellow line indicates the time-normalized boundary for bonus multipliers, while the blue line shows the normalized score difference. The second chart indicates the normalized score activity of the first team (a positive score difference means that the first team is leading). 

We expect the normalized player activity should be of order $O(t^{k-1})$, and from here we can estimate $k$. The spikes are when bonus multiplier happens.

We can see that the parameter $k$ clearly varies in different situation. We can assume that $k$ is close to 1 in example 1 while $k$ is clearly much smaller than 1 in example 2. In fact, $k=0.2$ is a pretty good estimate. The $k$ value can also be verified by checking the growth rate of the bonus boundary curve.

We can explain the correlation by how player anticipate the battle towards the end instead of casually spending their flags in the middle. Very interestingly the parameter $k$ seems to be independent of the ratio of player base size: the dominant a team is, the more bonus hours the opposite team will get. So in theory if the parameter is decided by the frequency of bonus hours, then the parameter for the two teams should be different, but that is not the case here. If we plot the activity of both teams on the same chart for example 1, we can see that the parameter for the two teams are more or less equal.



Calculating the parameter $k$ would be extremely helpful because we can then get a normalized data. (And we will cover that in the sequel of this article!)

The three states of players

With the above graph we see that the activity of the players divide into three categories, or three states that we call.

A team is in an excited state if it receives a long-waited bonus hour, or a bonus hours that shoots them to the leading position. The activity clearly spikes for this hour.

A team is in a post-excitement state if the bonus hour in excited state shoots them into leading position with bonus triggered on the opponent then the team enters the post-excitement state where activity is abnormally low because they run out of votes and flags.

A team is in a normal state otherwise. There are more fluctuation within this state depending on the score situation. 

We can plot the same for example 2 which is a lot more chaotic, but the activity is still clearly divided into the three states as described.


The pattern shows that most players aren't playing to optimize the chance to win as a team. Rushing to overtake the opponent early has little to no effect on the final result but looks good in a team sport, while the increased activity when a team enters bonus multiplier is natural as it maximizes score gain (for those who urgently need to spend flags).

I am actually quite surprised that this was not taken into account by most predictors, as it plays an important role at the end where people react to the hourly updated results vigorously. For example the JP predictor predicted a constant downward ping-pong at the end for example 1 (i.e., bonus for second team for 1 hour + no bonus for both teams for 1 hour alternately and these two together results in favor of the second team), but the reaction from the second team at hour 42 should be much more violent as it sends the team into leading position -- and of course the first team hit them back with 10x the power. This is the nature of VG predictor: players react to score but not team result.

Daily variation on player activity

Clearly players do not stay awake 24/7 for these shitty reward (well even if orbs are worth its monetary cost that is merely a burger meal, so it's not worth the time to stay awake overnight), so they stop playing when they are asleep. But people over the world situates in different time zone and they sleep over different time. More importantly, the taste from different part of the world seems to be different. As a result, we may observe higher activity from one team during daytime then higher activity from the other team during nighttime (which could then be daytime for that part of the world).

Assuming that the main division would be Japanese (or Asian) players vs the West, we can divide the players into 3 groups: time-invariant players, Asian players and Western players. We estimate the portion of the three and how supportive they are to each team. This is taken as a scaling factor when we predict the future outcomes. 

And how do we do that? Well this is simple linear algebra -- these three groups of players can be modelled into 3 kinds of waves: constant, sine and cosine waves, orthogonal to each other. We can then apply orthogonal projection to estimate the portion from each of the three. 

*

I really believe that the three factors together with what we already have around, builds a very accurate VG predictor, but surely no one would waste the time doing that.

To conclude this article let me show the graph plotted for the same VG but semifinal 2, which is ping-pong all the way. I stacked (apology for the poor stacking) the two graphs together so that you can observe the interaction more clearly. Since it's a perfect ping-pong first the first 20 hours or so, you can see that the activities alternates from excited and post-excitement states but not the normal state. Although the waving pattern in the first 20 hours which in fact, also occurred in the first two examples, seems to raise more questions from here...


(To be continued)

Acknowledgements: raw data extracted from the Japanese predictor by @rammtiger_n

Wednesday, 2 June 2021

夢醒

The pride of London. Captured from ChelseaTV.


九年前,一個偏僻的小鎮上。

那裡的網絡居然還是ADSL而且每個月只有20GB限制。早就把流量吃光的我只好去客廳把星期天早上的電視機霸佔起來。

我跪在電視前,距離之近甚至可以感受到屏幕的靜電。

從加時賽開始就跪在那,大腦在拜仁獲得十二碼時早已當機了吧,回過神來兩隊已經打完一百二十分鐘要互射十二碼決勝負了。

不知為何,就算馬達射失第一個十二碼我也沒有那種會像莫斯科雨夜那樣飲恨的感覺。隨後大衛雷斯的爆射右上角、林伯特特地改掉習慣正上方射進、艾殊利高爾右中貼網側射進也印證了這一點。

杜奧巴不負眾望打進致勝十二碼的一刻,他第一時間找到施治相擁而哭,筋疲力盡的車路士球員紛紛跪地流淚。然後同一時間我竟然也哭了,趴倒在電視機前放聲哭泣--在此之前我似乎從而因為體育而流淚。零八零九那兩場看完臉一黑就回去睡了,啊頂多就以後把那裁判拿出來鞭,當時在那邊哭又有甚麼用呢?

房子的主人的小孩問道:為甚麼要哭呢?你所愛的球隊不是贏了嗎?我仍然在那邊流淚沒法回答。小孩看看我又看看其他大人,一臉不解地跑開了,真是奇怪的少年。

對啊,為甚麼呢?

如果要我回答的話,流淚是屬於勝利者的專利。很多人未必會認同這一看法,但我相信至少對車路士這種性格的球隊來說沒錯。球賽可以輸,學費也可以交,唯獨魂不可以丟。只有在勝利那一刻你的努力付出才化為事實,那時候你想怎樣都可以,包括流下喜悅的淚水。

所以九年後的歐冠決賽,我又哭了。

車路士在九年前那個歐冠之後開始迷失,連兩年對上大巴黎先勝後敗後完是在歐冠賽場上失魂落魄;去年球隊更是吃到轉會禁令,在無人可買的情況下保四岌岌可危。但這時候林伯特,那個九年前對巴塞次回合在上半場結束前搶斷美斯然後向拉米雷斯長傳助攻的林伯特--站了出來,以教練的身份帶領一幫青年軍保住了第四。在疫情肆虐下轉會禁令忽然使車路士成為受益的一方,最終由杜曹接手將這幫青年軍帶向歐洲之巔。

當年的淚水反映的是十六強開始的各種打不死,外加零八零九兩場飲恨的結果;這次流的淚更多是這些年來的低迷而忽然在短時間的連續巧合下奪下冠軍的落差。兩者雖然性質不同,曲折程度其實難分高下。

與上次奪冠異曲同工的還有球隊立足於歐冠的防守。比起上次的力挽狂瀾這次更多是波瀾不驚:淘汰賽七場只失兩球,一球是次回合領先兩球第九十四分鐘失的倒鉤世界波,另一球則是領先被追平的不落地側身窩利。兩球都是靠個人能力與運氣射進的高難度入球(也入選本季歐冠最佳進球),而且對局面幾乎無實質性損傷。整個賽事僅失四球為史上最少,單是這項數據就能讓我這種防守控十分滿足。

要數兩次奪冠相近之處根本數不完。比如兩隊都充滿了剛進隊不久,沒大賽經驗也沒被寄予厚望的新兵;又或者兩次都是剋死西班牙球隊上位(上次小組賽最後一輪生死戰三比零斬落黃色潛艇)等等……但不變的是,車路士還是那支堅忍的鐵血球隊。只要這點不變,我就會繼續支持下去。

喔不過雖然球隊我十分支持,但是Nike的球衣很醜,我支持不下去。如果要我選一個球員印在背面的話……我應該會選11號吧?他值得如同我們對托利斯一樣的喜愛。

Thursday, 27 May 2021

27/5/2021: Thoughts on nos techniques

My second S on real lv.3. Stamina maps are my favourite.


Today I realized that my e-amusement album on facebook was gone. I knew that the e-amusement app removed its linkage with facebook but the album should still be there, but that isn't the case anymore. It took me sometime to retrieve all my DDR/beatsream captures, but they are worth the time. I guess it's also a good time to take record of my MUG progress.

Since the lockdown I have been playing ring fit or doing exercises at home a lot more, so I simply play DDR less and less frequent. Playing 18 is no longer a regular thing to me again, although Konami didn't produce enough sensible 18s in the past year...び is pure shit in my view.

So I basically play Nos all the time, and the progress is clear. By the end of Op.2 my recital grade was 5300, it was then 5500 by the end of 2019, and now my grade is 5760. In other words, I can obtain S rank consistently across level 11 by the end of 2019, but I can S consistently across level 12.5 and a few 13.0 right now.

What's hard to me right now are basically nonsense streams (like True Blue) or hardcore trills (like Appassionata 3rd movement, Etude Op. 25-11 "Winter Wind" or the Ballade No.1 in G minor). It takes time for me to recall my piano muscle memory...but what's interesting to me is how me or other nos player play maps at 12.5-13.0, start to differ from other MUGs. We need to deal with streams that are practically impossible to hit in a discrete way, so we need some other approaches, and the choice would be to sweep or to play like a pianist?

There are other MUGs in the arcade where you can sweep the keys instead of hitting independent to be count as a hit. Chunithm is the prime example but people also do that sometimes in jubeat, but the technique is widely adopted in Chunithm while restricted to a small group of players for jubeat. Why?

Chunithm encourages sweeping in nature: a flat input device and sliding notes exist for sweeping already, so sweeping ordinary notes is just something natural to them. The notes are usually 4 keys wide and the timing is loose -- that makes sweeping much easier. 

On the other hand, jubeat consists of a 4x4 pad, so sweeping for longer streams implies a change in direction during the sweep, and to keep a consistent pace during the sweep is definitely hard. The streams are not for sweeping most of the time where notes appear alternately on the left and right half: sweeping anything more broken than 2-7-10-15 would be extremely hard. At top level (the only instance where sweeping could be relevant) people always go for the hard mode, so positioning plus timing would be too demanding for this technique.

Nos interestingly situates between the two. Its panel is linear (although not flat) and sweeping is easy. There are also maps where sweeping is clearly desired (e.g. 
ピアノ体操第一). The timing is not as loose as Chunithm but a lot easier than jubeat on hard mode. On the other hand, sweeping is quite hard when the notes are not spaced apart enough (like Etude 10-4), and bad sweeping causes a bunch of good or misses. As a result, both sweeping or piano style are equally popular among high end players. We can even see both styles at KAC final level. 


I have been on piano style since the beginning, but sweeping really helps me to master many level 12.5 maps especially on the left hand. Typical examples include 蒼氷のフラグメント and Moonstone. For バルベリア・タンゴ I have been trying to trill in the pianistic way but it's simply too hard on the left hand. I gave up and swept with one finger instead...and that's an instant S. I felt like I have fallen somehow...

I still think for more complicated streams the pianistic style would trump against sweeping, but to do that smoothly would require much more practice to me or anyone else. Maybe if I play like now (every Thursday for the new songs basically) for another year I will be able to S half of the real level 3...?

Sunday, 23 May 2021

TWEWY the Animation: Joshua week impression

Among all of Josh's smol faces, his T-pose still impresses me the most.


Week 2 occupied 4 episodes instead of 3 or even 3.5 episodes. This is making sense because we see the most developments and basically all characters in the week. Considering the nature of week 3 which is more like a team solo that part it should be easily covered in 3 episodes (with one episode solely for the final fights), unless they want to introduce more NEO hypes (which they did also this week).

Again I will focus on the difference between OG (the original DS game) and the anime. It is apparent at this point that covering the story with like, half the detail is already impossible (when you also want to display the fights). One particular example this week is that Sho's math meme is really weird in contrast to what we saw in the OG dialogues because it's simply coming out of nowhere. The story focused on interactions among people and their feelings which is so delicate that most dialogues are relevant to the main plot. As such the producer have already done a satisfactory job to cover what should have been covered. My critics are again mainly on how the anime could have been closer to OG in terms of game mechanics.

Let's start again with pins and monsters.

On Ep.4, they finally got the monsters right: Carcinofolk appears on W2D1. Neku used Burning Melon here which is effective against crabs, but not much use against the rhinos. Instead of a fire sphere bouncing on the screen it was shown as ordinary fireballs only. He also used Pop Pendulum against kangaroos, which of course failed because this pin is too damn slow to hit them. I always preferred JoM slashing attacks as it stuns the enemy, and I have no idea why they never used those pins.

Nothing too much about Ep.5, but they have once used the ordinary Pyrokinesis pin again. Starter pin should not be used at this stage anymore! And since your Burning Melon was shown as fireball last episode, the Pyrokinesis pin can easily be replaced by some other random fire pin anyhow. Oh and taboo noises firing cannons...

On Ep.6 the game started with Garage Wolf and Doom Metal Drake...the former only appears on week 1 and the latter only on W3D7. This is just inappropriate. They finally used Frozen Cool instead of the Ice- pins, but this is the unevolved pin (cf. Blizzard Cool) so we should see one icicle instead of three. Swift Storm, Swift End is another new pin introduced and it seems like they really like Dragon Coulture. The other new pin introduced was Crackle Pop Barrier, which was shown as a weak barrier instead of time-limited invincibility. Joshua also exhibits his levitation + angel beam ability on day 6 (instead of day 5 in OG) this episode...his attack is always my favourite.

Ep.7 started with the scramble crossing mini-boss fight. In the anime Neku faced Jungle Boomer and Grindcore Minks, but there were two red minks instead of the red-gold duo! There were Mosh Grizzly around which is also untrue to OG as it should have been Wall of Grizzly (black wolf) instead. In the boss fight Neku also (explicitly) used the starter pin Thunderbolt pin for the first time...again why? Storm Warning and the Spider series are similar but much better. Thunderbolt-type attacks are effective against Sho since he evade attacks so swiftly though.

*Edit: it seems like Superfine beam were used in Ep.7 but I couldn't recall any attach like that...anyway.

Other OG related

Sho's missions started with [Game I(/II/III)] which is the same as OG. I now realized it looks like [Maths I/II/III] for Japanese's high school maths curriculum, but I am not sure if there are any relation between the two. The stupid 30+74 was also modified into sqrt(10816). 

Even before the anime we already know that many regions are renamed into their reality name as SE got the consent from the property owners. We saw the Tsutaya O-East last time, and this time it's Shibu Q-front (instead of Q-head). Then later in Ep.7 Pork City was renamed to Mark City. Back in 2008 I have not visited Shibuya so I wouldn't have react to Mark City even if that was the name in OG, but since now I have been there many time and also that the Mark City was shown explicitly (Pork City was never shown in OG -- you just enter a mall from Dogenzaka) I immediately understand the way the game describe Pork/Mark City as "where emotion gathers" -- for those who don't know, Mark City is a large complex above the Tokyu-Tokyo Metro Shibuya station...and one of the shopping malls loaded with top restaurants in Shibuya.

At a point Mr.H helped Joshua and Neku by adding new functions to their phones. This is making less sense on smartphones as they have a much more compact designs comparing to phones in the 00's. That reminds me of the time when there were shops specializing in amending the hardware of phones and GBAs adding weird functions on it.

In OG we never saw the movement of characters other than the protagonist team. Apparently the reapers can fly. Another difference in Ep.6 is that Joshua explicitly mentioning the isolated UG area, in particular the existence of Shinjuku UG.

A map was shown when Joshua talked about route 5 and that is the exact same map in OG and I loved that. 

The mission on day 7 was not issued by Sho but by the conductor himself. In OG this is reckoned by the way the mission was written. The mission started with "Game 7" instead of "Game IV/VII", but this was not delivered in the anime which is slightly disappointing. 

The representation as in Ep.7 clearly deviates from OG more than the previous episodes. Firstly we have spider noises that never appeared in OG, then we have imaginary space appearing much earlier than Sho's fight (and visually it is so different -- I wonder now how Konishi's fight would be). The fight is a bit weird though, Joshua and Neku never managed to hit Sho effectively at least on screen but the fusion attack somehow did the job...

Impressions

- Shiki's emotion was close to the OG emotions most of the time, but Joshua's smug-ness is much clearer in the anime than in OG. He simply has so many different smol faces in the four episodes.
- Tin Pin's gone. Natural choice but I hope it will at least be in NEO.
- Mr. H calling Neku correctly in anime.
- Joshua talking about they need to attack the taboo noises to deal effective damage: a possible reference to puck relay.
- The N---d Prey shown on Ep.6 after Neku's flashback

*

I can hardly say the anime met my full satisfaction so far, but I will rate it a 9/10 regardless. Let's see what would happen on the Beat week!

Friday, 14 May 2021

After Dark 4.0 in Win 10: screensaver being reset to "None"

Installing After Dark 4.0 in Win 7/10

On my new computer (win 10 of course) I frequently encounter the following problem: the screensaver, after a while, resets to "None" (no screensaver) in the screensaver setting. You can explicitly go to the setting and set the AD screensaver again, but that is a waste of time. 

After some investigating I found that this is again something that is lost in compatibility mode.

If you go to HKEY_CURRENT_USER/Control Panel/Desktop, you will see the default path for the current screensaver. If your screensaver was reset to "None", then the path is likely

C:\WINDOWS\system32\AFTERD~1.SCR

but it turns out that the screensaver was installed in SysWOW64!

The simplest solution is then to copy the .scr file also into system32, and that worked immediately for me without further efforts required.

Edit (16/7/2021): I found that leaving the screensaver in SysWOW64 causes all sorts of weird stuffs: the screensaver automatically triggers when you move the mouse to the right-top corner (while Windows does not have hot corners by default), and the screensaver triggers somehow when you are typing password in the lock screen blocking you from logging on. Just make sure the screensaver only stays in System32 and everything will be fine.

Friday, 7 May 2021

07/05/2021: Chelsea's road to Istanbul

There are quite some aftermaths since ESL collapsed: protests at Old Trafford, and Chelsea allowing fans representatives to join some board meetings. But none of them matches Chelsea's competitive achievement just a few hours ago.

That is, a magnificent performance outclassing Real Madrid over two legs which wins them a ticket to the Champions League final in Istanbul -- somewhere we could have been to 16 years ago if not the phantom goal from Liverpool.

I couldn't help but to shed tears with semifinal scenes flashing through my head...

In 2008 Ivanovic scored two headers out of nowhere marking the beginning of his era in Chelsea; and of course the 4-4 is one of the most entertaining match ever.

In 2009 that was the night of fucking disgrace which I don't want to talk about that ever again. But the 1-1 game is absolutely filled with quality: Essien scored a stunner and so did Iniesta. The Barca team went on and become one of the strongest team in history (despite multiple controversies).

And 2012? I can still recite every single quote and every goalgasm from Neville for the two miraculous goals.

The semifinals are never boring, and so was today's game. Real Madrid's midfield were so exhausted and they simply failed to pressurize Jorginho -- who always play like a master whenever unmarked. 

Kante was of course the star above all, he was too good on both ends of the field. It was his change in tempo that created the first goal. His contribution to the second goal is even more direct: a clear interception before sending to Pulisic who fed Mount. He is almost flawless in the tie. He even won all aerial challenges which is amazing considering he is just 5'7!

The other players should receive their deserved praise too. Mendy's two crucial saves saved Chelsea in the first half; AZP playing the best he possibly can with his declining physicality; Rudiger who is solid as rock...it is truly a team effort. 

I don't blame Hazard for being sloppy in the game. He did he part, just that he simply lost his bursting power he had back in the days. He was thoroughly neutralized under the effort of Christensen and AZP, and the rest of Real's midfield were even less creative. Tuchel once again showed his tactical geniusness, and Zidine meanwhile, showed that his team is so awful under 3-back against top teams.

Back in the days I fell into love with Chelsea because of Mourinho and his 1-0ism. I thoroughly believe in 1-0ism works in sports in particular football (I like 1-0ism in baseball too, though I have to admit it may not be the best way there). Being good defensively however sometimes implies the lack of sparks on the other end and the lack of consistency to win against lower teams. We have seen enough of that from Chelsea during these years.

Some like Abramovich of course prefer the complete opposite: he wanted beautiful football. He bought many good attackers but most of them didn't perform as expected. On the other hand, coaches/managers that played attacking football -- like Ancelotti's team with 103 seasonal goals in 2009-10, AVB's high pressing team in 2011-12 and Sarri's Sarriball in 2018-19 -- never reached the same level of success in terms of European performance.

At a point we thought that it is impossible to play beautiful and solid football at the same time. But now with Chelsea and City's performance this year we see a glimpse of hope that this is actually possible. The key of playing solid and beautiful football simultaneously is not all about stacking world class players (like PSG). It's being able to run, to play physically, and to execute tactics thoroughly. This is the common feature we observed in both the City vs PSG and Chelsea vs Real Madrid ties. These are the two teams that overwhelmed their opponents in all aspects, and they deserve the spots in Istanbul.

To be honest I expect a dull display in the final because the two teams will probably play very conservatively, but that does not mean it is dull tactically, it is the right tactics adopted by both teams that prevent the talents from making comfortable decisions. This may not be a match that is enjoyed the most by general public, but I certainly have very high expectation on it.

Most of Chelsea's players actually never played in the Champions League semifinal let alone final, but that's not something we should worry. There were numerous players in the 2012 Chelsea team who just joined. Cahill even just joined the club during the winter transfer window! The newcomers in 2021  -- Werner, Havertz, Chilwell and Silva -- have shown their quality and we should be faithful that they can do it again on May 29.

Friday, 30 April 2021

被青梅竹馬抓來當教魔法的我想要教出最強學生(仮)(1):感覺進了火坑但擅長的不是水屬性可以怎辦

"Wizard in the magic sunset" 
Character design: @kuonyuu, Illust: @mihayuuno commissioned by forretrio. Pixiv
Editing and re-posting are prohibited // 無断転載・自作発言禁止


帝都,國立魔法學園。

這裡是國家直屬培養人材的地方,進來就讀的不是貴族就是經過嚴格挑選的有能者。雖然傳授的內容以魔法為主,但也有培養冒險者、士官或者商人的課程。對於貴族來說,魔法是權力階級的一部分,因此學習魔法是必要的;這個學園聚集了同齡層中最頂尖的人物,因此也是絕佳的社交舞台。

學生進入學園以後會被分配到不同的班級,每個班級都各自有特化的教學內容。當中最特別的是魔法科:擅長魔法的人多出身於貴族世家,因此大家都搶著希望進入這個班級,慢慢地魔法科成了每一屆最強學生聚集的地方。

與學生的來源正好相反,這邊的教師幾乎都憑自己的實力取得教席。他們有成名已久的學者、也有離開前線的冒險者;就算偶有一兩個貴族成為教師,他們多半也是名聲在外,只因各種原因不得已回到王都而選擇在此工作。

這個差異造就了一個有趣的傳統:新來的教師必須與他所執教的第一個班級進行對戰。班級可以派出一位領袖應戰,亦可以派出數人甚至整班一起上也是允許的。按常理說教師們要擊敗學生們應該不會太難,但單純打贏是不夠的,只有展示自己的看家本領才會讓學生們心服口服。沒法降服學生們的新人教師雖然不至於被立刻辭退,但教師學生的上下關係逆轉以後想好好教書根本是不可能的事,這些教師多半不到一兩年就會主動離去。

教師所面對的班級也是有講究的。新人教師剛進來教的大多都是低年級的班級,與學生對戰也相對較易。有些倒楣鬼一進來就要面對高年級的學生,他們被刁難的機會就大得多了。在此之上要挑戰魔法科的難度就更大了。那些學生當中不少已有相當的實戰經驗,一起上的話即使是教師也不太好對付。當然執教魔法科可以近水樓台更方便接觸到未來的大人物,這個肥差幾乎肯定輪不到新人教師的。上一次出現新人教師執教魔法科已是快十五年前的事,而那位老師只待了兩個月便連夜逃了出去,連私人物品都沒有帶走。

過去幾年,這個職位都由某位前宮庭首席魔法師擔任。也只有他可以壓得住那些擁有極強魔力的貴族學生。沒想到今年這位魔法師身體不適教下去了,校方只好找一個替代人選。但是指定一位新人教師來教這個決定,讓大部分人吃了一驚,也有人暗中開賭盤來賭這位可憐蟲到底可以撐多久。

*

此時此刻,這位新人教師正在競技場裡履行學園的傳統。作為多年來第一個挑戰魔法科的新人,前來觀戰的人填滿了大半個看台。

預期中的刀光劍影或者火球亂飛並沒有出現。只見一個巨型的龍捲風將整個賽場覆蓋起來,甚至連觀眾席上都能感受到強風。龍捲風將場上的塵土都捲起來,所以大家除了一兩道閃光以外甚麼也沒看到。

過了好一會暴風終於散去,大家看到的只有倒滿一地的學生們。仍然站立在場上的只有一男一女。少女是跟隨公主入學的貼身侍衛,她本人也是劍術大家的名門之後。只見她身上的校服被強風割出了一堆口子,雖然看起來並沒有受到甚麼傷害,實際上她光是站著就用盡全力了。

在她不遠處的是一位白髮青年,正一臉輕鬆地看著她。青年穿的不是校服而是整齊的襯衫外加一件長披風,身上半個傷口也沒有,顯然他就是這次新來的教師。不過他看起來也只比學生們年長個六七歲,光是以這個年紀進入學園成為教師已經是不得了的成就。更讓人驚嘆的是他看起來要創下成功挑戰魔法科的紀錄了。

場邊的學生都沒看過他,畢竟他已經消失在王都好一段時間了。只有在這所學園裡混了好一段時間的教師才記得,眼前青年的戰鬥風格與多年前一位同樣是白髮的學生非常相似。那時他在同一地方同樣以壓倒性的風魔法將一整個貴族集團吹飛,那一役使他得到了「青色惡魔」的外號。其實說青色不太準確,青年所使的風魔法特別之處正是不帶任何顏色,就這麼隱藏在空氣之中隨時發動致命一擊。不過在那場戰鬥以後第二天他就從學園裡消失了,多年來再沒有在王都出現過。

「為甚麼要把我留在場上?」少女擺出生氣的樣子問道。一方面她在風暴裡目睹了青年出手的瞬間,她很清楚如果青年在那個時候朝她攻擊的話她是肯定會像其他同學們那樣倒下的。另一方面,她雙腿似乎還不怎樣聽使喚,拖一下時間她才有反攻的希望。

青年完全沒有要攻上來的意思,他悠悠說道:「唔……雖然是來教魔法的但是我比較喜歡近戰呢。雖然有點抱歉但是我沒信心單靠近戰打你們全班,所以我只好先解決一部分學生囉。」

這算是甚麼借口啊!還說一部分,明明都只剩我一個了!少女揉了一下自的大腿,麻痺的感覺正在消退:「那為甚麼是我留下來?」

「因為你劍術很強吧?沒記住學生們的資料可是教師失格的呢。家中劍術流派第四代傳人、十三歲時隨行魔物討伐隊擔任前衛、一年前成為公主殿下的貼身侍衛。我沒說錯吧?伊.雅.娜.同.學?」青年一字一字將少女的名字唸出來,似乎從少女閃過驚訝的眼神中獲得了一絲愉悅。

「……」少女也沒有回應他。既然自己被盯上了肯定要跟他打一場,那還是等自己多恢復一點比較好。

先前倒下的學生一些已經爬了起來,他們剛才只是在地上動彈不得而已。看到少女與青年一對一的架勢也不好參與其中,他們彼此攙扶著退到場邊。不論是場上的其他同學還是場外的觀眾都屏息靜待二人的對決。

少女感覺自己的腿恢復得差不多了,便深呼吸了一下道:「這樣的話我要上了--」說罷便衝了上去,連影子都看不到便在青年面前揮出一劍。她家的流派強調唯快不破,不論是對上人還是魔物也可以將趁對手不備而攻其弱點。

青年身上沒有帶武器,只見他輕輕往旁邊閃便躲過了第一劍。他踏著輕逸的步伐一直閃躲著,少女的攻擊不是落空了就是落在最後一刻出現的魔力盾上。「唔。每一擊都簡潔有力也瞄準了要害,這樣可以在討伐隊當隨行也不奇怪呢。這樣下去在十年內就會成為家主了吧,到時你還會一直待在公主殿下身邊嗎?」

少女的心情有點複雜。他給予自己的評價十分高,但自己的攻擊完全沒有命中對方。觀眾們或許看不出來,但少女很清楚眼前的青年並不是單靠速度閃過她的劍。她感覺到自己身邊的空氣並沒有依遁正常的空氣力學而流動,也不是單純變得黏滯,而是在關鍵的地方妨礙著她施力。手臂每一次揮動都會出現一點點的偏差,對追求精度的她來說是個大麻煩。她知道自己這樣下去早晚會力盡而敗,不如現在賭一把。空氣流動被干擾了嗎?只要減少旋轉而沿著肢體的軸向攻擊就好。

「吃我這招!--」少女改揮為刺,手臂直直地向前刺去。之前一直沒用魔法的她此刻將雷電魔法附在劍上,雷電到最後一刻都可以改變攻擊的目標,如果說她有辦法對青年造成傷害的話應該就是這招了吧。附魔的一劍比之前的攻勢都更快更狠。

青年露出讚賞的眼神:「這劍不錯,可惜還是差了一點--」

沒人看得清發生了甚麼事。

少女雷霆萬鈞的一劍落在了青年的右側。就像格檔了她那一劍一樣,青年的戴著手套的右手貼著少女持劍的右手指著她的咽喉。在外人看來青年的劍指直取少女要害是不失武德而勝,但實際上少女感到自己脖子正被甚麼鋒利的東西抵著,要讓她血濺當場只在青年的一念之間。

她苦笑了一下,隨即丟下佩劍高舉雙手投降:「我輸了……」

青年把右手收回來道:「這一剌的氣勢是很不錯,但是蓄魔力的動作有點太顯眼了。減少魔力輸出取個平衡會比較好喔。」

他環視一周後放大聲音向全場喊話,平靜而不容反駁:「這裡應該很多人都不認識我,所以請容我再次自我介紹一次。我的名字是庫里斯,算是你們的學長,直到上星期都在外面當冒險者。

我將會擔任魔法科的導師一職。只要你們想學的話不論是格鬥、魔法還是冒險技巧也好,我身上所有的都可以傳授你們。

前提是--你們跟得上的話。」

學生們此時隱約有一種預感,眼前這位老師比以前他們所遇過的都要鬼畜。

*

學園教師宿舍。

為了安置來自來自五湖四海的教師們,學園設置了教師專用的宿舍。教師宿舍位置甚至比學生宿舍更接近校園,設計上更豪華也配置了學生宿舍沒有的管家與女僕,這些一切都是為了讓教師們更方便在校園裡做事。

庫里斯在競技場大展拳腳後便回到了宿舍,在路上不論是學生還是其他人都對他投以奇異的目光。他雖然感覺到了但也沒有想太多,與自己相關的流言在開學以後就會消停了吧,他這樣想著。

他在自己房間前正想開門,卻感覺到有人已經在裡面了。這個時間不可能是來清潔的女僕,那就只能是她了吧?

輕輕地推門進去,只見一名女性坐在落地窗邊正在品著茶。夕陽打在她的金色長髮上更顯出她高貴的氣場。

「我說啊……大小姐你不要擅自闖進來喝我的茶好嗎?這些茶都是我找遍全國收回來的珍品,有錢都買不到耶。」

金髮女性也沒有轉過來望他,只是輕啜了一口茶道:「……這個品牌的茶以香氣見長,不過只要存放超過九個月就會變得與一般紅茶無異。我看現在你這罐已經放半年了吧?」

庫里斯看了一眼桌面上的茶罐,的確是他半年前順手買下的。那是經煙熏的鳥龍茶,喝下去會有像花香般的回甘。他感嘆了一下,自己算是十分好茶,但是眼光還是遠不如眼前這位受過嚴格貴族教育的大小姐毒辣。女性彷彿知道他心中所想,輕輕說道:「沒甚麼大不了的,這個品牌雖然不在王都,但王都一直都有商人在進貨。以我所知有賣這個品牌的茶的店舖就有三家,我家裡也進了一些。」

他把椅子搬到女性所坐沙發的對面道:「嗯……所以呢?你過來就只是為了消耗我所剩無幾的茶葉嗎?」

「我只是來看一下你有沒有辦法搞定那幫學生而已,看過試煉之後我就安心了。」

「難道你覺得我打不過他們嗎?還在讀書時我就能單挑一整班了,現在要贏根本毫無難度吧。」

「立場不同,要採取的打法也不同。你這次做得很好,在他們心中留下了強大的形象又不至於讓他們害怕或厭惡你。要是你下狠手打傷他們的話麻煩才大呢。」

「雖然我是冒險者,但出手輕重我還是懂的。我過來是真的希望可以好好教書,不但因為是妳讓我過來,也是為了給別人還一個人情。」

「你的意思是說,我的邀請份量不夠嗎?」女性把茶杯放下,俏冷的臉龐露出了戲虐的笑容。

他連忙擺手否認:「不敢不敢……您一句話我就得人頭落地了吧。大小姐您還有別的事儘管吩附,我押上我冒險者的名聲也必定為你赴湯蹈火的。」

「呵呵,你這幾年也混得不錯嘛。幾個在邊疆活躍的大公會都搶著指名要你,不知道如果我把你的使用權賣給他們的話可以值多少錢呢。」

「……還請您高抬貴手,我一定會安份地在這裡教書的。」

「嗯,你明白就好。雖然你有點鬼畜,但我相信你不會隨便坑學生的。我只是來提醒你一下,這一屆學生的實力和身份非比尋常,除了我以外還有很多人在背後關注你。萬一出了甚麼事的話,我可沒有百分百的信心可以把你保住。」

「那我現在辭職還來得及嗎?」原來是屎缺啊。

「你可以像以前的教師那樣落跑啊,不過我保証以後不會有半個公會雇用你而已,最差的狀況是冒險者的身份被註銷吧?」她平淡地描述著可怕的後果。當初把庫里斯弄出王都當冒險者的人是她,他毫不懷疑只要她一聲令下,自己所累積的一切瞬間就會灰飛煙滅。

「呃……」

「不想死的話,我建議你盡快跟學生們混熟。這樣你才有辦法駕馭那堆小怪物。」

「謝謝你的好意,我會用自己的辦法把跟他們打好關係的。先從公主殿下的侍衛入手也是我事先計劃好的。」

「好吧,你加油。那麼我也差不多該回去了,晚上我還要回去宰相府接見其他客人。」

「啊……」似乎自己與她的距離變得更遙遠了:「現在做到甚麼位置了?」

「算是副手吧。每天都從早忙到晚,至少當冒險者可以給自己放假呢。」

「我們的進行任務的時候的生活也不是大小姐能忍受的,算是彼此彼此吧。」

金髮女性沒有把話題接下去,而是站起來告別:「順帶一提,這裡不少茶都放好一段時間了,我建議你盡快把庫存清掉。實在喝不完的話可以邀請同學過來進行茶會,你的品味要得到他們的認可不是太大的問題。大部分你的收藏我認識的商會都有,你有需要的話寫信過來我可以幫你訂購。不過事先聲明,透過我買茶是沒有折扣的。」

「嗯,我到時會聯絡你的。還有--」他頓了一下問道:「改天我可以約你出來吃頓飯嗎?」

她報以淡淡的微笑:「可以。不過先等你安頓下來,把學生們搞定再說吧。另外你最好先複習一下王都有甚麼好吃的,畢竟你已經好久沒在王都尋找美食了呢。」說罷她便轉身離去,在外面已經等候多時的傭人適時為她打開了門。

啊……奇怪?庫里斯明明記得自己回宿舍的時候沒看到有人守在外面的。

「嘛,算了」他伸了個懶腰,心念一轉一股風便把門關上。與她的重逢來得比自己預料中來得早,不過至少她接受了自己的邀請,那麼以後再相處的時間肯定不會少吧。把目光投向辦公桌上那疊厚厚的資料,他自言自語說道:「現在該想想怎樣料理我可愛的學生們了--」

=============

諸君,我熱愛教學。

我喜歡讓別人感受到解題的樂趣,我喜歡看著自己的學生在考試取得好成績並走出自己的道路。

那感覺就像……勇者育成一樣。

只是這世界上不只有勇者,也有那些萬年F級天天泡在酒館裡做一天混三天的冒險者。教學也是一樣,世界上有會自動讀書的勤奮學生,天天上課混日子的不良學生也不是沒有。

所謂不良學生不一定代表他們學習能能力不好。他們有些只是沒找到適合他們的學習方法,有些是成長環境問題,有些則是沒有得到合適的資源。以這類背景為題材的作品其實不少,比如暗殺教室、高分少女DASH和一年A班的怪物都在此列。

當中暗殺教室對我的影響很深,先不說這部作品劇情完整、音樂好聽、人際互動豐滿之類的好處,殺老師應該是作為老師的完美模範了吧?我對那種聖母裝到底的老師並沒有太大興趣,與其要用裝的不如將自己真實的一面融入到教學中。當然現實要在實體學校這樣做畢竟會有社會壓力,這點從補習名師的風格中就能看出來。

所以老師一定要「拯救」學生才能成就有趣的作品嗎?那也未必。只要合適的老師遇上合適的學生就能擦出火花:像東大特訓班那幾個學生就遠不能稱得上笨,帶他們考進東大同樣是一段勵志的故事(至於後來我也把學生送進了東大又是另一段故事了)。

至於我呢?要感受到解題的樂趣並不限於甚麼高深題目,就算是讓小孩發現可以從1+1=2變成10+10=20也是十分有趣的事情。不過我也喜歡用更高角度去理解整個理論的脈絡。這個方法在大學比較常用,中學的話對學生的要求難免會比較高。

我經常掛在嘴邊的一句:中學程度的考試,你只要把30年試卷做好做透要拿A根本不是難事(除了某幾個特別難的考試,比如香港高考……)。但是對於讀書能力出色的學生,真的會甘於背課本和背試題嗎?其實別的學生可以找不到讀書方法和找不到良師,難道好學生就不會發生這個問題嗎?如果給他們配上好的導師加上任性的資源不就能帶他們一起飛了嗎?

--以上,就是我想寫的故事。

當初這是我一時興起做人設時產生的角色,上面也沒打算續寫下去,怎料開了個頭就停不下來了。我對魔幻世界的想象有一大部分源自於科學角度的理解,簡單說就是熱力學定律消失不見,但牛頓不會從棺材裡爬出來的世界。在這種前提下社會會怎樣發展,又或者冷兵器和魔法之間又會怎樣取捨之類的問題,我說不定能在寫作中找到答案。

這部真的不保証會填坑就是,沒填就當是短篇。

喔對了,最後我還是要安利一下我的茶。文中提到的茶是Mariage Freres的Roi Soleil--實際上不是鳥龍而是中國茶種,但那種香氣與中式濃茶的回甘有相輔相成的效果,絕對值得一試。不過話說回來,如果異世界沒中國,那我要怎樣形容中國茶呢?異世界也沒大吉嶺,那大吉嶺茶也不能叫了吧?我又不想一直捏造地名,總不能叫C國茶或者甚麼比比魯茶吧?