-
當(dāng)前位置:首頁(yè) > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
lua端游腳本(lua端游腳本開發(fā))
大家好!今天讓創(chuàng)意嶺的小編來(lái)大家介紹下關(guān)于lua端游腳本的問(wèn)題,以下是小編對(duì)此問(wèn)題的歸納整理,讓我們一起來(lái)看看吧。
開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等
只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,有小程序、在線網(wǎng)頁(yè)版、PC客戶端和批量生成器
官網(wǎng):https://ai.de1919.com。
本文目錄:
為什么將lua作為游戲腳本
就我個(gè)人的理解來(lái)看,使用LUA作為腳本語(yǔ)言有三個(gè)好處:1、輕量級(jí)
LUA只包括一個(gè)精簡(jiǎn)的核心和最基本的庫(kù)。這使得LUA體積小、啟動(dòng)速度快,從而適合嵌入在別的程序里。
2、可配置性、可擴(kuò)展性
LUA并不象其它許多"大而全"的語(yǔ)言那樣,包括很多功能,比如網(wǎng)絡(luò)通訊、圖形界面等。但是LUA可以很容易地被擴(kuò)展:由宿主語(yǔ)言(通常是C或C++)提供這些功能,LUA可以使用它們,就像是本來(lái)就內(nèi)置的功能一樣。
3、兼容性
LUA由標(biāo)準(zhǔn)C編寫而成,幾乎在所有操作系統(tǒng)和平臺(tái)上都可以編譯,運(yùn)行。
這些都是LUA本身所具備的一些特質(zhì)。而這些特質(zhì)正好就決定了LUA的廣泛使用:
1、輕量級(jí)
沒人希望自己的應(yīng)用程序需要附加幾十M甚至幾百M(fèi)的庫(kù)類文件才能運(yùn)行。如果一個(gè)應(yīng)用程序這么做了,那么它很難做到Run Anywhere。當(dāng)然,這個(gè)Run Anywhere只是這么一說(shuō)。
2、可配置性、可擴(kuò)展性
在游戲研發(fā)的過(guò)程中,修改是必不可少的過(guò)程。如果每次修改都需要從底層做起,那必定是一個(gè)非常繁瑣的過(guò)程。而LUA的可配置、擴(kuò)展正好可以解決這一問(wèn)題。
3、兼容性
游戲只是游戲,不能決定玩家的機(jī)器配置,更不能決定玩家的操作系統(tǒng)。如果因?yàn)橛螒蚺c用戶的操作系統(tǒng)不兼容導(dǎo)致游戲銷量下降,我想,這肯定是不被允許的。
所以,具備了以上三個(gè)特點(diǎn)的LUA,沒有不作為游戲腳本使用的理由。
游戲開發(fā)中常用哪種腳本語(yǔ)言?
隨著《魔獸世界》(以下簡(jiǎn)稱wow)在世界范圍內(nèi)流行,腳本漸漸被人們所熟知。由于wow強(qiáng)大的自定義界面系統(tǒng),Lua這一腳本語(yǔ)言一舉成名。其實(shí)早在Lua腳本語(yǔ)言被大眾所熟知以前,游戲業(yè)內(nèi)人士就已經(jīng)開始使用腳本來(lái)開發(fā)游戲了。我們熟悉的很多國(guó)內(nèi)的網(wǎng)絡(luò)游戲大都運(yùn)用了腳本開發(fā),比如網(wǎng)游的長(zhǎng)青樹“夢(mèng)幻西游和《大話西游2就大量應(yīng)用了腳本技術(shù)。特別是《大話西游2》,其實(shí)現(xiàn)基于Lua腳本游戲開發(fā)的時(shí)間要遠(yuǎn)早于《魔獸世界》。在腳本技術(shù)上,國(guó)內(nèi)與國(guó)外其實(shí)是站在同一起跑線上的,并不存在什么差距,這也為國(guó)內(nèi)游戲產(chǎn)業(yè)趕超國(guó)外游戲產(chǎn)業(yè)提供了強(qiáng)有力的技術(shù)保證。
在單機(jī)游戲時(shí)代,腳本這個(gè)詞幾乎很少出現(xiàn),那么,為什么在網(wǎng)絡(luò)游戲時(shí)代它卻成了業(yè)界的寵兒呢?原因是多方面的。
單機(jī)游戲時(shí)代,無(wú)論游戲主機(jī)還是PC機(jī),它們的性能都非常低下,從而需要具有較高執(zhí)行效率的編譯型語(yǔ)言對(duì)機(jī)器的性能進(jìn)行“壓榨”。隨著科技發(fā)展和硬件性能的不斷提升,腳本逐漸被開發(fā)者所接受并利用,但這并不是腳本流行起來(lái)的決定性因素,真正的原因還在于游戲市場(chǎng)有這方面的需求。
網(wǎng)絡(luò)游戲時(shí)代的市場(chǎng)競(jìng)爭(zhēng)激烈、變化莫測(cè),如果延用單機(jī)時(shí)代一年半載才出一個(gè)新版本的開發(fā)方式,必然會(huì)被游戲行業(yè)激烈的市場(chǎng)競(jìng)爭(zhēng)所淘汰。正是這種游戲市場(chǎng)需求旺盛和開發(fā)工具效率底下之間的矛盾,促使腳本語(yǔ)言迅速地發(fā)展起來(lái)。腳本的興起使得傳統(tǒng)編譯型語(yǔ)言(asngC/C )的性能優(yōu)勢(shì)在硬件功效大幅攀升的今天已經(jīng)不復(fù)存在。
除了市場(chǎng)和硬件這兩個(gè)因素之外,還有一點(diǎn)我們不能忽略。那就是用C/C 進(jìn)行游戲開發(fā)的高成本和高項(xiàng)目風(fēng)險(xiǎn)。隨著java/.net逐漸流行,學(xué)習(xí)C/C 編程語(yǔ)言的人越來(lái)越少,而網(wǎng)絡(luò)游戲市場(chǎng)的需求卻越來(lái)越龐大,在程序人才大量匱乏的情況下,造成了c,C 人才的高成本。即便是有能力雇傭大量C/C 程序員的公司,在開發(fā)游戲的過(guò)程中,也不能無(wú)視C/C 的高級(jí)特性和高度靈活性帶來(lái)的高項(xiàng)目風(fēng)險(xiǎn)。C/C 是易學(xué)難精的編程語(yǔ)言,在開發(fā)大型項(xiàng)目的時(shí)候由于程序員的水平參差不齊,所以極易造成溝通不暢。不僅如此,c,C 濫用的高級(jí)特性也容易引入大量bug。正是由于這些原因,游戲公司開始在游戲中使用腳本,希望通過(guò)腳本來(lái)解決這些高成本、高風(fēng)險(xiǎn)的問(wèn)題。
二.腳本的現(xiàn)狀
腳本不僅解決了c/C 無(wú)法解決的開發(fā)效率難題,還降低了開發(fā)的成本和風(fēng)險(xiǎn)。因此腳本技術(shù)在游戲業(yè)內(nèi)蓬勃發(fā)展起來(lái),并且已經(jīng)成為游戲業(yè)中不可或缺的一環(huán)。縱觀當(dāng)前腳本技術(shù)現(xiàn)狀,形勢(shì)一片大好,不僅語(yǔ)言百家爭(zhēng)鳴,而且書籍種類也越來(lái)越多;不僅在游戲業(yè)界開花結(jié)果,在web等其它應(yīng)用領(lǐng)域也大放異彩。
首先,我們來(lái)看看目前比較流行的腳本:Python、Lua、ruby和Erlang。Python和Lua是網(wǎng)絡(luò)游戲開發(fā)的中堅(jiān)力量;ruby憑借 rubyonrails的web開發(fā)框架的強(qiáng)勁力量,其在游戲業(yè)的發(fā)展前途亦不可小視;Erlang在高并發(fā)性上的原生優(yōu)勢(shì)吸引了無(wú)數(shù)追求高性能網(wǎng)游服務(wù)器的開發(fā)人員的目光。
其次,我們來(lái)看看書籍方面。大家都知道,文字對(duì)語(yǔ)言的普及起到了催化劑的作用,甚至可以看作是語(yǔ)言的有機(jī)組成部分。Python經(jīng)過(guò)基金會(huì)的多年經(jīng)營(yíng)而得到NASA、Google重用的原因,就是由于其相關(guān)書籍種類比較豐富;Ruby隨著RoR的流行,這兩年行情看好,書籍也出版得越來(lái)越多了;Erlang是典型的少眾語(yǔ)言,但隨著多核時(shí)代的來(lái)臨和高并發(fā)網(wǎng)絡(luò)應(yīng)用的需求,Erlang有著光明的發(fā)展前景,現(xiàn)在<<ProgrammingErlang>>等書也已經(jīng)在策劃出版了;反觀Lua,雖然目前越來(lái)越流行,但由于它晦澀的接口設(shè)計(jì)和缺乏大型應(yīng)用的支持,使得相關(guān)書籍寥寥無(wú)幾。
最后,我們把焦點(diǎn)重新聚集到游戲開發(fā)行業(yè)中,其實(shí)不難發(fā)現(xiàn),除了前文提到的《魔獸世界》和網(wǎng)易經(jīng)典“西游系列”使用了腳本外,現(xiàn)在大多數(shù)比較流行的程序也都使用了腳本,如騰訊的QQgame))和搜狐的《天龍八部》等。不僅如此,現(xiàn)今的游戲引擎也都提供了腳本接口,無(wú)論是商業(yè)的unreal引擎還是開源的 OGRE,無(wú)一例外。
三.腳本的優(yōu)勢(shì)
腳本之所以能夠在游戲業(yè)中找到自己的一席之地,是因?yàn)榫W(wǎng)絡(luò)游戲市場(chǎng)需要一個(gè)快速開發(fā)方案來(lái)避免C/C 開發(fā)帶來(lái)的項(xiàng)目高成本和高風(fēng)險(xiǎn)。那么,腳本相對(duì)于C/C 這類編譯型語(yǔ)言到底有什么優(yōu)勢(shì)呢?
I易于學(xué)習(xí),代碼可維護(hù)性強(qiáng)
腳本的語(yǔ)法通常都非常簡(jiǎn)單,也沒有太多高階的特性,學(xué)習(xí)的門檻較C/C 低得多,比如Python可能只需要花一個(gè)下午即可學(xué)會(huì)。這使得游戲開發(fā)公司可以招聘完全沒有腳本、編程經(jīng)驗(yàn)的新手,通過(guò)低成本的培訓(xùn),他們便能迅速地走上工作崗位。除易于學(xué)習(xí)外,腳本代碼也有較強(qiáng)的可維護(hù)陛(盡管寫出沒有人看得懂的Lua代碼也非難事)。因?yàn)槟_本沒有很多高階特性(如c 里的模板元編程就是高階特性),所以腳本程序員就有更多的精力去架構(gòu)、模式、重用和測(cè)試等工作,從而提高了代碼的可維護(hù)性。相應(yīng)地,正因?yàn)闆]有那么多讓人困惑的高階特性,也使得腳本代碼“簡(jiǎn)潔”不少。
2.降低開發(fā)成本
如上所言,由于腳本易于學(xué)習(xí),游戲開發(fā)公司可以大量起用新手,這正是降低成本的有效手段。那么如何來(lái)確保新手所寫代碼的質(zhì)量呢?眾所周知,新手無(wú)論用什么語(yǔ)言寫程序肯定會(huì)出現(xiàn)bug,但用C/C 和Python做比較,可以看出,一個(gè)新手用C/c 編寫出的程序所出現(xiàn)的bug肯定會(huì)比用Python編寫出現(xiàn)的bug要多。由于c程序需要編譯,而腳本程序(大部分)都可以直接解釋執(zhí)行,所以在排除 bug方面腳本也占有一定的優(yōu)勢(shì),這也使腳本在降低成本的同時(shí)能夠更好地保證代碼質(zhì)量。
3.形成人才壁壘
軟件開發(fā)行業(yè)是一個(gè)頗為動(dòng)蕩的行業(yè),無(wú)數(shù)的程序員都在跳槽和謀劃跳槽的狀態(tài)中生活,使用腳本開發(fā)形成人才壁壘是游戲業(yè)減少人才流動(dòng)的有效手段。因?yàn)楝F(xiàn)在腳本除了在游戲業(yè)中非常流行外,并沒有在其它行業(yè)形成廣泛應(yīng)用(雖然在web開發(fā)方面也有燎原之勢(shì),但終究不如在游戲業(yè)中的地位高)。這就使得游戲程序員很少會(huì)考慮非游戲行業(yè)的職位,但其它行業(yè)的程序員卻可能會(huì)因?yàn)槟_本的易學(xué)習(xí)性而轉(zhuǎn)投游戲業(yè)。腳本除了能有效形成行業(yè)間的人才壁壘外,也能有效地形成企業(yè)間的人才壁壘。由于現(xiàn)有的腳本種類繁多,不同公司往往有不同的選擇,甚至有些公司使用自己開發(fā)的腳本語(yǔ)言,所以程序員從公司A跳槽到公司B可能要學(xué)習(xí)使用另一種腳本,這就提高了跳槽的成本,從而減少了人才的流動(dòng)。
四.腳本的發(fā)展趨勢(shì)
依照目前趨勢(shì)來(lái)看,腳本語(yǔ)言一定會(huì)更加的普及,而且會(huì)逐漸滲透到其它行業(yè)中。隨著網(wǎng)絡(luò)游戲從業(yè)人員數(shù)量的增長(zhǎng),腳本程序員也一直增加,而且Web2、0熱潮引起的網(wǎng)絡(luò)需求,也促成了一批批新腳本程序員的誕生。網(wǎng)絡(luò)游戲市場(chǎng)就像一個(gè)正在滾動(dòng)的雪球,推動(dòng)著腳本的普及。
隨著腳本在游戲業(yè)中越來(lái)越流行,市場(chǎng)對(duì)生產(chǎn)效率的需要也會(huì)相應(yīng)提高。腳本雖然在一定程度上緩解了生產(chǎn)效率與生產(chǎn)工具之間的矛盾,但仍然不夠完善。由于市場(chǎng)競(jìng)爭(zhēng)日趨激烈,而網(wǎng)絡(luò)游戲在很多功能上的實(shí)現(xiàn)又都相差無(wú)幾,如網(wǎng)絡(luò)、數(shù)據(jù)庫(kù)、圖形甚至部分邏輯,這必然會(huì)引起網(wǎng)絡(luò)游戲生產(chǎn)的組裝化一一大量中間件相互組合形成新的網(wǎng)絡(luò)游戲。從目前來(lái)看,Bigwofld、PhysX和Unreal等都是比較流行的網(wǎng)絡(luò)游戲中間件。腳本語(yǔ)言則是粘合各個(gè)中間件的良好膠水語(yǔ)言,所以隨著網(wǎng)絡(luò)游戲的生產(chǎn)組裝化,腳本將有更大的發(fā)展空間。
那么,當(dāng)腳本發(fā)展到如日中天的時(shí)候,可能取代C/C 這些編譯型語(yǔ)言嗎?筆者認(rèn)為不會(huì)。腳本語(yǔ)言和編譯型語(yǔ)言在生產(chǎn)效率和執(zhí)行效率上各擅勝場(chǎng),網(wǎng)絡(luò)游戲既需要能快速應(yīng)變的腳本,也需要能快速執(zhí)行以提供更絢麗游戲效果的編譯型語(yǔ)言。未來(lái),它們之間一定會(huì)保持長(zhǎng)久的和諧互補(bǔ)關(guān)系,相輔相成。
五.結(jié)語(yǔ)
綜上所述,網(wǎng)絡(luò)游戲時(shí)代是上帝賜予腳本語(yǔ)言發(fā)展的絕好時(shí)機(jī),腳本語(yǔ)言很快將迎來(lái)光芒四射的時(shí)代。腳本語(yǔ)言擁有編譯型語(yǔ)言無(wú)可比擬的生產(chǎn)效率優(yōu)勢(shì),所以它們將互補(bǔ)互助并肩奮戰(zhàn)在游戲的最前線。
gta午夜lua腳本怎么用
1、啟動(dòng)午夜lua腳本。2、打開gta游戲。
3、在游戲的主界面按下“HOME”鍵即可呼出功能菜單。
4、進(jìn)入到游戲中,勾選功能菜單中的選項(xiàng),即可使用各種功能。
LUA腳本語(yǔ)言在網(wǎng)絡(luò)游戲編寫中主要是干什么用的?
主要用途是:(1)描述界面:WOW和劍網(wǎng)三的界面都是用LUA寫的;
(2)溝通引擎:游戲圖形引擎提供了一些接口庫(kù),可以在LUA中調(diào)用;
(3)服務(wù)器端:有些游戲,例如劍網(wǎng)三,在服務(wù)器端也會(huì)大量使用LUA。
以上就是關(guān)于lua端游腳本相關(guān)問(wèn)題的回答。希望能幫到你,如有更多相關(guān)問(wèn)題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。
推薦閱讀:
手機(jī)上的lua編輯器(手機(jī)上的lua編輯器大全)
蘋果7plus后攝像頭拍照在顫抖(蘋果7plus后攝像頭拍照在顫抖怎么回事)
網(wǎng)絡(luò)推廣屬于什么費(fèi)用(網(wǎng)絡(luò)推廣屬于什么費(fèi)用類別)
電商倉(cāng)庫(kù)揀貨員辛苦嗎(電商倉(cāng)庫(kù)揀貨員辛苦嗎工資高嗎)