最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

在iOS上部署web服務,用瀏覽器運行krkr游戲

2023-09-13 23:27 作者:chuweifensi  | 我要投稿

這樣就可以很方便地制作跨平臺的小游戲了,在iOS、安卓、Windows等系統(tǒng)上都可以運行。 其實在iOS上運行krkr游戲的正確做法是購買xp3player。這里介紹的方法不能直接運行網(wǎng)上下載的krkr版游戲,需要自己打包才行,還有各種兼容性的問題。 先講如何打包data.xp3,再講如何部署web服務,最后講整件事的背景。

一、如何打包data.xp3

接下來的說法可能會有錯誤,主要是我其實也沒有深入研究過吉里吉里2,對軟件漢化、高壓版制作、tjs編程等等也沒有了解,也沒用過NVL Maker和TyranoScript,也不想過多接觸這個圈子。這里只講一些大概的情況和做法。打包過程是在windows平臺上完成的。 1、關(guān)于CDDP KAGeXpress 3.0 beta2中文版

一般用來制作游戲的應該是CDDP KAGeXpress 3.0 beta2,這是一個漢化的版本,下載下來是一個壓縮包。 在軟件根目錄的Template文件夾內(nèi)是一個模板,里面有一些dll文件、startup.tjs、config.tjs和一些文件夾,其中scenario文件夾內(nèi)有一個first.ks,system文件夾內(nèi)有一堆tjs之類的文件。 其中,tjs和ks文件都是ANSI或UTF-16 LE編碼。 一般就是從first.ks開始編寫代碼,可以對config.tjs修改設置,在各文件夾內(nèi)放入圖像、音頻等文件。 回到軟件根目錄,krkr.eXe可以自動讀取data.xp3或data目錄下未封包的文件。所以,只要把Template改名為data,然后雙擊krkr.exe就能運行了。 如果要把data文件夾打包成data.xp3,就需要用到tools目錄下的krkrrel。這個krkrrel和外面的krkr.eXe都是漢化版的。日文版的krkrrel在tools-org目錄下。 打包后,data目錄下會多出一個default.rpf。如果在增加或刪除文件后重新打包,就需要先刪除這個default.rpf。 根目錄下還有一個Wizard可以方便地生成一個初始的data文件夾。 2、關(guān)于krkrsdl2

用來部署web服務的是另一個版本,叫做krkrsdl2,主頁鏈接如下: https://krkrsdl2.github.io/krkrsdl2/ 這個版本除了web版還有其他的。現(xiàn)在只看web版,有個“Webポート”可以點擊下載。 下載到的壓縮包內(nèi)有3個文件:index.html, krkrsdl2.js, krkrsdl2.wasm。只要把data.xp3放在同一目錄下,然后用瀏覽器訪問index.html,就可以運行游戲了。 但這個data.xp3是有要求的,而且要先部署web服務才能用瀏覽器訪問,不能直接雙擊index.html。 3、關(guān)于data.xp3

在krkrsdl2的主頁開頭附近,有一個kag3-krkrsdl2的鏈接: https://github.com/krkrsdl2/kag3 里面有一個data文件夾和readme.md 如果要用web部署,那么data.xp3就要用這個data文件夾作為模板,而不是漢化版的那個Template。 在data文件夾內(nèi),并沒有那一堆dll,startup.tjs還在,config.tjs被移到了system文件夾內(nèi),first.ks還是在scenario文件夾。 所有tjs和ks文件都是UTF-8編碼,而不是ANSI或UTF-16 LE。因此,無論是漢化版還是原版的krkr.exe,都無法運行這個模板下的游戲??梢圆渴饂eb服務來做測試,但必須先打包成data.xp3。 打包可以使用漢化版krkrrel。如果用日文版,有些文件名的中文字可能會導致無法打包。 4、如何更換到新模板

先把原模板上自己加的文件復制過來。 config.tjs在system目錄下,進行對應的修改。 用記事本的“另存為”將tjs和ks文件轉(zhuǎn)為UTF-8編碼。 有些中文字無法顯示,是字體的問題,可以更改system_polyfill文件夾內(nèi)的font.ttf。 有一些命令是漢化版支持、但krkrsdl2不支持的,比如button,可以用link或click代替。還有menul、bg等命令也不支持。 MP3和OGG格式的音頻無法播放。WAV有的可以播放,也有的會卡住,可能和文件大小有關(guān)。 可以看出,從網(wǎng)上下載到的krkr版游戲,應該是不能直接運行的,并且可能面臨各種兼容性問題。 5、關(guān)于存檔

存檔位置是System.dataPath(見system/MainWindow中的saveDataLocation),我不知道具體位置。清除cookie會刪除存檔。如果有多個游戲要存檔,應該要修改saveDataLocation為System.dataPath+"游戲名"(帶英文雙引號),這樣游戲之間就不會發(fā)生沖突。 對于sf.xxx這樣要保存在全局存檔的變量,在關(guān)閉瀏覽器的時候并不會被保存,只能在點擊關(guān)閉按鈕(執(zhí)行close命令)或者其他可能的情況下才會被保存。 6、測試

用nginx部署web服務,在電腦上進行測試。只要把krkrsdl2的3個文件和data.xp3放在同一個文件夾內(nèi),配置nginx.conf里面的root設成這個文件夾就行,可以用autoindex。盡量避免在電腦和手機之間反復傳輸。

二、如何部署web服務

所謂啟動web服務,大概就是啟動某個程序,讓它一直在運行,一直監(jiān)聽著某個端口。瀏覽器訪問網(wǎng)頁的時候,會向這個端口發(fā)送請求。這時,那個一直在運行的程序就會收到請求,然后可以執(zhí)行一些操作。 在windows系統(tǒng)上,可以用nginx啟動web服務,也可以用其他軟件,非常方便。 安卓系統(tǒng)可以用termux運行l(wèi)inux命令行,可以在里面安裝nginx。 實際上,漢化版封包的data.xp3可以直接用krkr.exe或吉里吉里2模擬器來運行,不需要搞這么復雜。 而在iOS系統(tǒng)上,似乎只有收費的xp3player可以運行data.xp3,如果是想拿自己寫的游戲去傳教,就會出問題。因此,考慮部署web服務。 1、

從應用商店下載iSH。這個軟件可以模擬linux系統(tǒng),運行一些簡單的程序。 不幸的是,nginx在iSH上有問題,無法打開網(wǎng)頁。因此,改用一句python命令。 2、

進入iSH,輸入“apk add python3”安裝python3 關(guān)于網(wǎng)絡服務,先暫時允許訪問數(shù)據(jù)流量和wifi。 3、

這時,雖然可以直接輸一句命令啟動web服務,但會有一些問題,而且不夠優(yōu)雅。所以,在電腦上準備這樣一個腳本xxx.sh: cat /dev/location > /dev/null & while true; do python3 -m http.server 2222 > /dev/null 2> /dev/null; done 在電腦上保存為文本文件,稍后再傳到手機里。 稍微解釋一下,第1句是請求位置信息,這樣可以保證即使iSH被切換到后臺,也不會退出。如果沒有這一句,那么網(wǎng)頁加載速度會很慢,而且很容易斷連。 第2句是循環(huán)執(zhí)行“python3 -m http.server 2222”,用python3啟動web服務,當服務異常退出時,立即重新啟動。 其中,2222是端口號,可以改成別的。 4、

將xxx.sh、data.xp3和krkrsdl2的文件從電腦傳到手機。 可以搞點花樣,在電腦上用nginx的autoindex模塊,使得局域網(wǎng)內(nèi)的設備能夠訪問電腦上的指定文件夾。然后在手機上,進入iSH,用wget命令把電腦上的文件下載進來。 5、

以上操作都是在/root目錄下完成的,所有文件都在/root目錄下(包括krkrsdl2內(nèi)的3個文件)。執(zhí)行命令: sh xxx.sh & 即可啟動web服務。 提示請求位置信息,選始終允許。剛才說了這是為了讓iSH在后臺持續(xù)運行。 6、

進入瀏覽器,輸入: 127.0.0.1:2222 就可以運行data.xp3了。 7、

退出游戲時,如果在瀏覽器內(nèi)點擊“退出”之類的按鈕,那么畫面會停住不動,此時關(guān)閉瀏覽器頁面即可。直接關(guān)掉頁面也可以,但有可能影響全局存檔(比如記錄是否已通關(guān)之類的)。 退出iSH,即可停止web服務,同時也會停止獲取定位。手寫kill也可以。 8、

上述做法有一個問題,就是局域網(wǎng)內(nèi)任何設備都能通過手機IP:2222進行訪問。 試想一下,在校園網(wǎng)環(huán)境,計算中心的老師突然掃描端口…… 所以,要在“設置”里面,禁止iSH使用數(shù)據(jù)流量和wifi。這樣就只有本機可以訪問了。 如果想把web服務提供給別人,就換其他操作系統(tǒng),用nginx來部署web服務,用htpasswd(windows系統(tǒng)在apache httpd里面有)來配置用戶名密碼。

三、背景

1、

最近突然想到,能不能自己寫一個圖形界面的小游戲,在蘋果手機上運行。 直觀的方法是做一個APP然后安裝。問題是蘋果手機的APP一般只能從應用商店下載。如果是自己的APP安裝包,要么做一個7天有效的簽名,要么就是越獄。 如果要把這個小游戲分享給別人(傳教),那么就需要對方執(zhí)行這一系列操作,肯定是不合適的。 因此,只能借助已有的APP,運行自己寫的程序。 2、

正好,我稍微接觸過一點點關(guān)于吉里吉里2游戲的做法。所以,一個方案就是用吉里吉里2去制作游戲,然后用iOS的xp3player來運行。 同理,也可以用ons或者renpy。 然而,不同于安卓的免費發(fā)布,iOS的xp3player、onsplayer、renpyviewer都是要收費的。這樣就有一個問題:被分享游戲的人要花錢才能玩,對傳教很不利。 微信或者其他APP的小程序也是一種選擇。但如果只想自己玩、單機離線玩,就不合適了。 目前在蘋果的應用商店里沒有安卓模擬器。 用iSH可以在iOS上運行Linux,但是沒有圖形界面。 想了半天,最后我找到了一個方案:用web服務器+瀏覽器。先在iSH的Linux上啟動web服務,再用瀏覽器訪問。 這樣,只要寫一個網(wǎng)頁小游戲就行了。 3、

然后我就想有沒有辦法在網(wǎng)頁上玩xp3格式的游戲,沒想到還真有辦法,那就是krkrsdl2。于是一通操作猛如虎,總算能跑通一點簡單的東西了。 不過,我并沒有深入研究過吉里吉里2,對軟件漢化、高壓版制作、tjs編程等等都沒有了解,而且對游戲設計也基本上是一竅不通,所以只能在這里提供一個基本的思路。如果有愿意用這種方式做開發(fā)的朋友,那應該會非常有趣吧。 另外,其實RPG Maker MV制作的游戲也可以用瀏覽器運行。Unity相關(guān)的WebGL也是一種更合理的選擇。關(guān)于NVL Maker、TyranoScript等等,我也沒用過,看freem上面有些在線游戲就是用的TyranoScript,應該也是一個很方便的方案。雀魂不就是全平臺的瀏覽器都能玩嘛。總之,更合理的思路還有很多。

在iOS上部署web服務,用瀏覽器運行krkr游戲的評論 (共 條)

分享到微博請遵守國家法律
盐池县| 彩票| 新泰市| 阿勒泰市| 灌南县| 丰顺县| 化德县| 大庆市| 博兴县| 罗江县| 垦利县| 新闻| 平阴县| 天全县| 额济纳旗| 青冈县| 昂仁县| 阿克苏市| 夏邑县| 绥宁县| 锦屏县| 新兴县| 富阳市| 开阳县| 巢湖市| 教育| 玛多县| 伊宁市| 普兰店市| 揭阳市| 平安县| 永和县| 保靖县| 大邑县| 堆龙德庆县| 正蓝旗| 同江市| 万州区| 北安市| 淮滨县| 绍兴县|