溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

kbengine怎么配置mysql

發(fā)布時(shí)間:2021-12-04 11:51:43 來源:億速云 閱讀:248 作者:iii 欄目:云計(jì)算

這篇文章主要介紹“kbengine怎么配置mysql”,在日常操作中,相信很多人在kbengine怎么配置mysql問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”kbengine怎么配置mysql”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

kbengine的引擎意義

kbengine是一個(gè)優(yōu)秀的游戲服務(wù)端邏輯引擎 大于 其作為游戲服務(wù)器引擎存在的意義(假設(shè)游戲應(yīng)用域架構(gòu)首先按CS這個(gè)粒度來分脫離不了服務(wù)端客戶端之分的話 — 當(dāng)然并不排除更廣泛的游戲方案域抽象將CS視為低級(jí)抽象),它為游戲APP定義了一個(gè)appstack。就像GAME界的WEBAPP一樣,開發(fā)游戲就是開發(fā)一些gameapp(人類總是要研究終極之道),你也可以叫它WEBGAME engine.

然而此WEBGAME指的并不是客戶端富網(wǎng)頁技術(shù)和微端發(fā)布那些,而側(cè)重指的是其使用了WEB的開發(fā)發(fā)布模式,是GAME界的“WEBGAME引擎”(對GAME這個(gè)東西方案域和程序域開發(fā)發(fā)布通觀的總抽象),首先要說的是它運(yùn)用了廣為流行的CS和BS架構(gòu),

1,它分開了游戲C端和S端,使得不同終端平臺(tái)上的C端可以共享一個(gè)服務(wù)器,而服務(wù)器上,可以同時(shí)共存很多游戲。你可以叫他們assert,mod或其它什么東西,呆會(huì)詳解

2,其次,它隱藏了開發(fā)者需要從0開始面對的所有東西,它封裝了協(xié)議,甚至最終的游戲邏輯定義,它并不提倡直接對引擎開發(fā),開發(fā)者僅需要定義游戲領(lǐng)域邏輯。它透露給開發(fā)者立馬可工作產(chǎn)生一個(gè)游戲的那些方面(服務(wù)端的游戲編輯器,當(dāng)然帶點(diǎn)開發(fā))

3,重點(diǎn)在這里——它封裝的程度是使用戶(包括非專業(yè)的)只需要作換裝和UGC就可以開發(fā)出一個(gè)游戲的功能,就像客戶端的gamestudio一樣,而且kbe是游戲容器。它像WAMP架構(gòu)一樣,負(fù)責(zé)運(yùn)行,整個(gè)開發(fā)發(fā)布就像WEB界成熟的那些框架和應(yīng)用服務(wù)器一樣。當(dāng)然還有開發(fā)范式。

談到UGC,這其實(shí)也是WEB應(yīng)用的方式。WEB是開發(fā)更是應(yīng)用,它使用戶直接參與程序(內(nèi)容)建設(shè)。

總之,mod+ugc,這一切,使游戲編程有了終極游戲編程的味道。這也是當(dāng)今所有領(lǐng)域編程最終要達(dá)到和到達(dá)的境界。

什么是終極編程,編程的最高境界是什么

終極編程真的存在,然而并不需要是類似編程葵花寶典之類的東西,我們可以理解讓編程體現(xiàn)為適可而止,有止境的境界,在工程上(編程上讓事情變得越來越容易最后不需投入或極少投入再學(xué)習(xí)成本),通往其的方法可以有很多種,但一種無疑是那種直到腳本和可視編輯器的封裝。就像WEB前端,以及上面的GAME MOD開發(fā)一樣。 如果編程方法可以歸結(jié)為一門最終的哲學(xué),學(xué)者可以利用它舉一反三,完成自舉學(xué)習(xí),那么這種元性質(zhì)的哲學(xué),就是終極。 圖形界面的出現(xiàn)和DLL API機(jī)制,VB可視化,在這個(gè)意義上都是偉大的鋪墊作品,面向?qū)ο笠彩且环N終極編程,它在語言內(nèi)在抽象接近平民,各種OO范式,PME,再后來,框架容器,都是使編程變得終極的方法和基礎(chǔ)工作。 kbengine只是運(yùn)用了所有這些(當(dāng)然還有更多,比如接下提到的持久機(jī)制)。 kbengine的程序技術(shù)

在程序技術(shù)上,KBE使用到了分布式架構(gòu)和傳統(tǒng)服務(wù)器多載的方式,它的各個(gè)部件可以分布式存在不同物理機(jī)甚至進(jìn)程中,擴(kuò)展負(fù)載,本身作為分布式云存在。

然而,以上所有這些,都不是重點(diǎn),KBE對“服務(wù)端游戲邏輯”的應(yīng)用抽象,才是它的根本。它將一切抽象為實(shí)體,空間,等等,它首次提出了對游戲邏輯->世界的抽象,這種方式下,它完全可以視RPG/RTS為同一個(gè)游戲(準(zhǔn)備地說是游戲虛擬世界)。因?yàn)榭梢怨蚕硪粋€(gè)服務(wù)端的世界。產(chǎn)生區(qū)別的僅是客戶端??梢援a(chǎn)生混合的游戲世界。

其次,它對于協(xié)議處理,數(shù)據(jù)定義,這些方面也有自己的創(chuàng)新。特別是它對組件和XML持久數(shù)據(jù)的應(yīng)用。這些都是讓游戲編程變得終極的方法(硬要給點(diǎn)提示的話:持久化和XML語義化=使數(shù)據(jù)與邏輯對接,讓數(shù)據(jù)化代碼轉(zhuǎn)領(lǐng)域邏輯的終極手段,將不可見的黑箱邏輯變得可編輯hook到用戶可視化操作,跟腳本變量,數(shù)據(jù)庫,ORM等,都有異曲同工之妙)

未來會(huì)專門詳細(xì)一篇文章分析其架構(gòu)。

修改kbengine使得mysql和客戶端可外置外部托管

原KBE引擎python,js,cpp都是大小寫敏感的,作為混合編制的程序體系,一個(gè)kbe demo要處理這些,kbengine官方的方法是強(qiáng)制驗(yàn)證大小寫。規(guī)定mysql.ini大小寫。這使得對mysql環(huán)境有限制,這里談的即是讓kbengine換外部數(shù)據(jù)源和外部客戶端媒體文件托管地址的方法。

這里所用到的是0.9.4的kbegine src和js demo.

1,首先cpp src端要處理一下,在src\lib\db_interface\db_interface.cpp中將如下三行注釋:

//if(ret)
// {
// ret = pdbi->checkEnvironment();
// }

2,在kbegine asserts設(shè)置文件中,server.xml中,強(qiáng)制外網(wǎng)IP為某個(gè)IP:

<externalAddress> 115.28.103.100 </externalAddress>

3,改動(dòng)最大的地方,.py中有大量大小寫要改。media js中要改。

首先,Main.js,IP換成外網(wǎng)地址,然后將client media放到外部托管環(huán)境中發(fā)現(xiàn)大部分加載黑屏是因?yàn)镴S大小寫敏感獲取不到正確的類名:

方法:在chrome F12下,不斷測試,找出monster.js,npc.js,avatar.js,gate.js,account.js中的KBEngine.xxx中的xxx要改成小寫,注意文件名中的大小寫不用處理

到此,關(guān)于“kbengine怎么配置mysql”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI