您現在的位置是:首頁 > 網路遊戲首頁網路遊戲
來啊,來魔改啊,人生重開模擬器一鍵託管上線
- 2023-01-19
人生模擬器怎麼加顏值
人生無法重來,遊戲可以重開!
人生重開模擬器莫名其妙就火了,這是款純文字MUD遊戲。玩家開局可以從10個各具特色的天賦裡選中3個,併為自己的4項屬性(顏值、智力、體質、家境)分配點值就能夠重開你的人生。你完全無法預料自己會有怎麼樣的經歷,比如2歲吃不飽飯死了、政府要求5點放學、家庭困難、吃不飽飯、進入監獄、一會有女朋友、一會交一個男朋友等等,這款遊戲還有很多非常厲害的隱藏結局!
這個遊戲的全貌就是全程點點點,如播放 PPT 一般從誕生到死亡,沒有美術、沒有音效、甚至沒有廣告。但它魔性的隨機文字詞條混搭著平平淡淡的日常,偶爾還會存在奇奇怪怪的展開,讓我一心想探索一下人生的邊界,反覆重開,反覆篩選天賦、配置屬性,總想體驗不一樣的人生,一不小心就輪迴了幾百次。一玩就上癮,重開了快 300 次人生,也逃不過終究平凡的命運,還是沒有體驗到開掛的人生。那來啊,來魔改啊,長生不老版、昇仙版、音效版,你都可以擁有。
雲開發平臺將原專案fork到了雲開發的倉庫了,使用者只需要直接fork到自己的倉庫以後就可以在雲開發平臺上進行快速魔改和一鍵部署,繫結自己的域名就能夠讓小夥伴們一起來感受你的魔改創意哦。
人生重開模擬器的實現邏輯分析
這個遊戲的repo裡一共就不超過10個js檔案,沒有使用任何複雜的庫,只是用jQuery和css簡單的拼了一個前端而已,唯一複雜一點的地方是遊戲邏輯處理。
首先,遊戲資料,如天賦和事件等,是存放在data目錄下:裡面有遊戲資料相關的xlsx與json檔案,如每個年齡可能發生的事件、各個事件發生的條件、天賦等等。作者還寫了一個指令碼檔案utils/xlsxTransform。js用於將xlsx檔案轉化為json,方便讀取。
研究一下這個表格,我們可以發現,人物的
基礎屬性
有這麼幾種:
CHR(Charm): 顏值
INT(Intelligence): 智力
STR(Strong): 體質
MNY(Money): 家境
SPR(Spirit): 快樂
LIF(Life): 生命
事件的發生可能會帶來顏值、智力、體質、家境的變化。
生命的變化只有“-1”
。包括“你死了”和“飛昇天界”兩種情況。所以修仙成功的朋友們不要太得意。你以為的位列仙班,沒準就是被天道採摘成熟果實呢?
“
有某事件時才能被隨機到
”和“
有某事件時一定隨機不到
”造就了命運迥異的農村線、城市線、美籍華人線。天賦(TLT, talent)對於事件的發生也有影響,如城間高樓必定出生在城市。
發生事件後,可能會根據前置事件和人物屬性走向不同的分支。例如“你遭到了一位老師的猥褻”事件在人物 INT>7 時會走向“你報了警,老師被刑拘”反之則是“你逐漸消沉,但不敢和其他人說。”
其次遊戲的主要程式碼都是在src目錄下:
你可以先從 src/index。js 開始理解,這個檔案就幹了兩件事:
讀取剛才提到的 data 下的 json 遊戲資料,繫結為全域性變數;繫結一個全域性的 banner handler。
初始化 app。
import App from ‘。。/src/app。js’;window。json = async fileName => await (await fetch(`。。/data/${fileName}。json`))。json();// Pssst, I‘ve created a github package - https://github。com/brookesb91/dismissiblewindow。hideBanners = (e) => { document 。querySelectorAll(“。banner。visible”) 。forEach((b) => b。classList。remove(“visible”));};const app = new App();app。initial();
然後你可以順著去讀 src/app。js 的程式碼,裡面就是主要的前端 jQuery 部分,負責生成檢視並繫結函式,基本上大部分前端的邏輯都在這裡。舉個例子,下面這段程式碼:
const indexPage = $(`
這段程式碼就是首先手寫一個 html 元件 indexPage,然後找到一個 id 為 restart 的按鈕,為其繫結一個函式 ()=>this。switch(’talent‘)。this。switch 應該用於切換不同 screen 的。這裡的邏輯就是“點選重開按鈕後,切換到天賦選擇頁面” 。
然後src剩下的三個檔案就是遊戲邏輯相關:
event。js負責隨機事件相關邏輯,
property。js負責角色屬性相關邏輯,
talent。js負責天賦相關邏輯,
life。js就是人生推進的邏輯。
src/function底下是一些 helper function,包括對於事件condition的parsing,人生總結等。
魔改版人生重開模擬器一鍵託管
1. 環境準備
登陸雲開發平臺。開啟網址https://workbench。aliyun。com/,使用阿里雲賬號登入,
按照提示建立團隊
,
點選同意協議
。沒有阿里雲賬號的使用者,在登入頁面註冊後進行登入即可。為了保證最好的使用體驗,請使用Chrome瀏覽器。
建立專案所需程式碼倉庫。訪問https://github。com/AliyunWorkbench/lifeRestart。點選fork後使用github賬號登入,將本專案程式碼倉庫直接fork到自己的GitHub賬號下。本倉庫內程式碼與hexo init生成的預設模版內容一致。
2. 建立人生模擬器應用
建立前端應用。開啟快速開始 https://workbench。aliyun。com/page/quickstart,點選建立「前端應用」按鈕。
雲資源訪問授權。如果您之前沒有使用過雲開發平臺,會出現雲資源授權管理的選項,往下拉出現直至同意授權的字樣,點選「同意授權」後出現授權成功,點選進入「下一步」。
繫結Github賬號。授權完成後選擇來源倉庫為Github,按照提示點選去繫結,繫結GitHub帳號,登入後並點選Authorize Aliyunworkben允許雲開發平臺構建、釋出你的GitHub程式碼為可訪問的網站。
選擇fork好的程式碼倉庫。選擇第一步中的
程式碼倉庫
、
主幹分支
,並點選下一步。主幹分支一般指的是程式碼的master或main等分支。
填寫基本資訊,完成建立。填寫基本資訊並點選「完成」。成功後進入到應用詳情和部署介面。
3. 配置和在日常環境上線應用
獲取阿里雲賬戶的AK/SK。點選 https://ram。console。aliyun。com/manage/ak ,建立Accesskey,成功後會生成AccesskeyID(AK)和 AccessKey Secret (SK)
部署配置。應用建立完成後會跳轉到應用詳情頁面,點選日常環境那一行的部署配置,然後在彈出視窗有配置的說明,頁面滾動下拉可以看到去配置的按鈕。
配置Github。點選上方的「去配置」按鈕前往Github,點選new reposority secret,分別以AK和SK為Name名稱建立兩個secret,具體的Value使用上方獲取到的AccessKey ID和AccessKey Secret的值,建立完成後可以看到有AK和SK兩個secret。
一鍵部署。配置完成點選日常環境的「部署」按鈕進行一鍵部署
4. 部署成功後訪問
部署成功後,再次點選「
部署配置
」,並點選彈出視窗上的「
測試域名
」,即可訪問您的應用。臨時域名30分鐘有效,請注意測試域名的過期時間,過期後重新整理可以繼續使用,連結支援分享給朋友們訪問。如果魔改已經修改好,並且想要長期上線,供大家玩耍,可以按照下面的步驟繫結到自己的個人域名上。
繫結個人域名。新增自己的自定義域名, 在線上環境的
「部署配置」「自定義域名」
中,新增您自己名下的域名,重新點選部署。再按照提示,將您名下的域名CNAME到指定的OSS域名下,即可使用自己的域名,持續訪問該應用。
使用CDN加速域名訪問,節約流量費用 (可選)。當網站流量巨大時,可點選「部署配置」中的「如何配置CDN加速」,將自己的域名與CDN加速繫結,從而加速網站訪問,節約流量費用。
訪問線上部署的網站。CNAME 生效之後,我們就可以在瀏覽器中輸入剛剛繫結的域名訪問部署到線上環境的應用了。至此,如何部署一個應用到線上環境,如何繫結自己的域名來訪問一個線上的應用就完成了,趕緊部署自己的應用到線上環境,用自己的域名玩起來吧 ;)
遊戲人生,活在當下
線上地址:http://demo-liferestart。workbenchapi。com/
如果你把它看成是遊戲,不停重開就是想盡可能打出更多分支結局;
如果你把它當成是人生,不停重開就是想盡可能體驗不一樣的人生;
近期上映的《失控玩家》,看完之後突然覺得:
那個在遊戲裡一次次重複迴圈人生的 NPC,不也是厭倦了千篇一律的無聊人生,渴望想體驗不一樣的人生嗎?
可轉念一想,其實我們每個人,又何嘗不是別人世界裡的 NPC 呢?
所以,不必糾結,活好當下,活好自己,這就夠了。
當然在閒暇之餘也可以重開一下人生模擬器,感受開掛的人生和遊戲的腦洞!
原文連結:http://click.aliyun.com/m/1000294879/
本文為阿里雲原創內容,未經允許不得轉載。