當前位置: 華文問答 > 遊戲

把程式語言娘化,做成氪金手遊,可以怎麽做?

2017-03-05遊戲

現在的遊戲策劃已經要把魔爪伸向碼農了嗎?其實啊,娘化出氪金手遊你只要請一堆 artist 畫一堆妹子然後說她們是 PL 就可以了,相當於構造一個函子,保持「特性」之間的對映關系就可以。

PL 有個最根本的尺度,代表其是 偏向數學 還是 偏向硬體芯片 ,map 到妹子上面的話就是法系到物理系?這麽考慮的話,物理一頭的 asm 就是沒護甲的純近戰英雄,另一頭的 Coq 是純法……整條尺子大概會是:

Coq - Idris - Haskell - OCaml - Lisp - Ruby/Python - JS - C# - Java - Rust - C - ASM

純法師 - 戰鬥的法師 - 軟科幻裝備 - 一般科幻裝備 - 近未來系(?)- 近戰 - 純近戰刺客類

可以有一個相當復雜的技能系統,比如 haskell 有技能「延遲求值」,可以只在需要的時候才發動攻擊,諸如此類。

設計個簡單的人設表吧:

  • asm :使用冷兵器(當然,要二次化),因為不穿護甲(各種安全性)裝備很輕所以行動速度最快,x86 的武器要比 arm 的稍復雜些,而且她是雙胞胎(Intel 與 AT&T 的梗)。
  • C :使用類似步槍的器械(當然,要繼續二次化),因為同樣沒護甲所以行動也很快,不過鞋子上可以做些花樣(編譯器最佳化)。
  • C++ :護甲有了一點但是仍然很少,開始有了類似艦娘那樣固著在身上的裝備(代表 OOP,做成炮的樣子?),當然手上依然拿著槍械,而且和身上的裝備連線。身上的機械裝備可以變形以適應多種場合(樣版)。改一(C++11)的話就是加上幽能的發光部份(有了函式式特性)。
  • Java :指揮大量機器人組成的軍團,但是看上去很單調(暗示庫多以及語言特性少,寫法單調)。有比較完整的護甲(當然了請突出妹子的曲線謝謝)。
  • C# :大小姐的外形,和 Java 很相似,不過多樣性要好些,也有一定的變形能力(泛型)。因為很早就有函式式特性所以有「幽能」的藍紫色發光。
  • JavaScript :裝備看似是 Java 的輕裝版但是有大量的幽能光束(函式式特性),有大量漂浮的元件(暗示原型 OOP 不如類式「穩固」)最新的一改那些浮遊部份終於能裝身上了……
  • Python :裝備做成蛇的樣子,同樣飄在外面(動態語言)。身上也有一些元件用於操作那條蛇(類式 OOP)。幽能不多(函式式特性有但是不太方便)。
  • Ruby :色調紅色,和 Python 相似,不過體外的浮遊炮是多面體形,鑲嵌有大量寶石(或者直接是紅寶石上加上裝備。ps. 紅寶石是六方晶系所以別畫成八面體。)
  • Lisp 諸方言 :拿著法杖(staff)樣的東西作戰。Common Lisp 的「法杖」比 Scheme 的更復雜,也有更多的「機械」樣。因為是魔法單位所以身上沒有甲。有化身變形的能力(宏系統)。
  • Haskell :法系,不持/裝武器,排斥「金屬做的玩意兒」(暗示 purity),技能只在「必要的時候」才生效(Laziness)。
  • PHP :考慮到 PHP 是為網頁而生的,可能會有網或者蜘蛛的元素在,因為動態型別同樣各種零件滿天飛。非常高傲的樣子。
  • Objective-C :類似於 C++,不過動態性的部份更多,元件有飄在空中的。因為是神教所以是白色塗裝。
  • Swift :相似於 C# 的外形但是更輕(編譯到 native 而非 VM),以及神教的白色塗裝。
  • Lua :體型非常小,常和 C/C++ 一起行動,裝備外形和 JS 相似但是更緊湊些。有月牙形的元素。
  • Coq :純法,出現在戰場後排,以精確著稱。口癖是「You are unsound!」
  • Go :和 C 很相似,不過槍械是多管的(並行性)?
  • Rust :類似 C++ 但是防護更好?