Ukulungiswa kweseva ye-Minecraft

Ukulungiswa kweseva ye-Minecraft
Engosini yethu sesinayo kakade utshele, ungakha kanjani iseva yakho ye-Minecraft, kodwa sekudlule iminyaka engu-5 kusukela ngaleso sikhathi futhi kuningi okushintshile. Sabelana nawe ngezindlela zamanje zokudala nokuthuthukisa ingxenye yeseva yomdlalo odume kangaka.

Ngaphezulu komlando wayo weminyaka engu-9 (kubalwa kusukela ngosuku lokukhishwa), iMinecraft izuze inani elimangalisayo labalandeli nabazondayo phakathi kokubili abadlali abavamile nezingwazi. Umqondo olula womhlaba owenziwe ngamabhulokhi ushintshile usuka ohlotsheni olulula lokuzijabulisa uye endaweni yonke yokuxhumana nokudala izinto ezahlukahlukene ezivela emhlabeni wangempela.

Ngaphezu kokwakhiwa, umdlalo unamandla okudala logic, okukuvumela ukuthi usebenzise ama-algorithms agcwele ngaphakathi kweMinecraft. I-YouTube igcwele amavidiyo ahlaba umxhwele lapho abantu, ebenze umzamo omkhulu futhi bachitha isikhathi esiningi, benze ikhophi yalokhu noma leyo divayisi kagesi noma bakhe ikhophi enemininingwane. ekhona и inganekwane izakhiwo zezakhiwo. Yonke into inqunyelwe kuphela umcabango womdlali kanye namathuba omhlaba wokudlala.


Kodwa ake singakhulumi ngokuqhubekayo ngalokho abadlali abakwenzayo ngempela, kodwa ake sibheke ingxenye yeseva yohlelo lokusebenza futhi sigqamise izinkinga (ngezinye izikhathi eziyinkimbinkimbi kakhulu) ezingase zivele ngesikhathi sokusebenza ngaphansi komthwalo. Masenze ukubhuka ngokushesha ukuthi sizokhuluma kuphela nge-Java Edition.

Izinhlobo zamaseva

Inketho elula iseva eyakhelwe kuklayenti lomdlalo. Sakha umhlaba, sacindezela inkinobho eyodwa, futhi iseva ifinyeleleke ngenethiwekhi yendawo. Lolu khetho alukwazi ukumelana nanoma yimuphi umthwalo onzima, ngakho-ke ngeke size sikucabange.

Vanilla

I-Mojang Studios isabalalisa ingxenye yeseva yomdlalo njengohlelo lokusebenza lwe-Java mahhala kuwebhusayithi esemthethweni. Lokhu kukuvumela ukuthi udale eyakho iseva ezinikezele kanye nomhlaba womuntu siqu, okwenza kufinyeleleke ekuxhumekeni kusuka noma yikuphi emhlabeni. Kulabo abenza lokhu okokuqala, kukhona okukhulu okokufundisa, etholakala ku-Wiki yokudlala ehambisanayo.

Le ndlela ine-drawback eyodwa engathi sína, okungukuthi ukuntuleka kwamakhono angaphandle kwebhokisi okuxhuma ama-plugin anweba ukusebenza kweseva futhi angavumeli nje ukwenza izinqubo eziningi ngokuzenzakalelayo, kodwa futhi nokwandisa ukusebenza kahle. Ngaphezu kwalokho, iseva esemthethweni inokusetshenziswa okukhulu kwe-RAM kumdlali ngamunye oxhunyiwe.

Bhukit

Uhlelo lokusebenza lweseva oludalwe abathanda ngokususelwa kunguqulo ye-Vanilla Bhukit ikhulise kakhulu amandla egeyimu ngokusekela ama-plugin nama-mod (ukulungiswa). Ayivumelanga kuphela ukwengeza amabhlogo amasha kumdlalo wegeyimu, kodwa futhi nokwenza ukukhohlisa okuhlukahlukene obekungafinyeleleki kusoftware ye-vanilla. Kuyathakazelisa ukuthi lolu hlelo lokusebenza ludinga inkumbulo encane kakhulu.

Ukufaka i-Bukkit akunzima; imiyalelo ehambisanayo ikusisetshenziswa I-GamePedia. Kodwa lokhu akunangqondo, kusukela ngo-2014 ithimba le-Bukkit lihlakazekile, abathuthukisi bephrojekthi baye baba ngabasebenzi beMojang Studios, futhi. inqolobane ilahliwe. Ngakho-ke, uBukkit ufile ngokuphumelelayo, futhi kunengqondo ukunaka amaphrojekthi amabili alandelayo.

I-SpigotMC

Ukwenza impilo ibe lula kubathuthukisi be-plugin, bekunesidingo se-API ukuze ihlanganyele nomhlaba wegeyimu. Lena yiyo kanye inkinga abadali abayixazulule. I-Spigot, ukuthatha umgogodla we-Bukkit futhi uwulungise kabusha ukuze uzuze ukwethembeka nokusebenza okungcono. Noma kunjalo, Inqolobane ye-Git iphrojekthi ivinjiwe ngenxa ye-Digital Millennium Copyright Act (DMCA), futhi akunakwenzeka ukulanda ikhodi yomthombo kusuka lapho.

Njengamanje, i-SpigotMC ithuthukiswe futhi isetshenziswa. Isekela wonke ama-plugin adalelwe i-Bukkit, kodwa ayihambisani nayo emuva. Ukuze uzungeze i-DMCA Takedown, indlela enhle ebizwa ngokuthi i-BuildTools yasungulwa. Leli thuluzi liqeda isidingo sokusabalalisa uhlelo lokusebenza oluhlanganisiwe futhi livumela abasebenzisi ukuthi bahlanganise i-Spigot, i-CraftBukkit ne-Bukkit kusuka kukhodi yomthombo. Konke lokhu kwenza ukuvinjelwa kwe-DMCA kungabi namsebenzi.

IphephaMC

Konke kwakubonakala kupholile, futhi uSpigot waba inketho enhle. Kodwa lokhu kwakunganele kwabanye abathanda, futhi bazenzela eyabo imfoloko ye-Spigot “kuma-steroids.” Vuliwe ikhasi lephrojekthi inzuzo eyinhloko ukuthi “Kuyashesha ubuwula”. Kuthuthukisiwe umphakathi ikuvumela ukuthi uxazulule ngokushesha izinkinga ezivelayo, futhi i-API enwetshiwe ikuvumela ukuthi udale ama-plugin athakazelisayo. Ungakwazi ukwethula i-PaperMC ngomyalo owodwa olula, onikezwe kuwo imibhalo.

I-PaperMC inokuhambisana okuhle kakhulu, ngakho-ke ama-plugin abhalelwe i-SpigotMC angasebenza kalula ku-PaperMC, kodwa ngaphandle kokusekelwa okusemthethweni. Ukuhambisana emuva ne-SpigotMC kukhona futhi. Manje njengoba sesibhale izinketho ezihlukene zokudala iseva, ake sidlulele ezinkingeni zokusebenza ezingase ziphakame.

Izinkinga Nezixazululo

Into esemqoka okudingeka uyiqonde ukuthi yonke into ehlobene nokucubungula umhlaba wegeyimu izocutshungulwa kuphela kumongo owodwa wekhompyutha weseva ebonakalayo. Ngakho-ke uma kungazelelwe uneseva enhle kakhulu enamakhompiyutha ayishumi nambili, kuzolayishwa eyodwa kuphela. Bonke abanye bazobe bengenzi lutho. Lesi yisakhiwo sohlelo lokusebenza, futhi akukho ongakwenza ngakho. Ngakho-ke lapho ukhetha iseva, akufanele unake inani lama-cores, kodwa imvamisa yewashi. Uma iphezulu, ukusebenza kuzoba ngcono.

Mayelana nodaba lomthamo we-RAM, kufanele siqhubekele kulezi zinkomba ezilandelayo:

  • inombolo ehleliwe yabadlali;
  • inombolo ehleliwe yomhlaba kuseva;
  • ubukhulu bomhlaba ngamunye.

Kufanele kukhunjulwe ukuthi uhlelo lokusebenza lwe-Java luhlala ludinga ukugcinwa kwe-RAM. Uma ulindele ukusetshenziswa kwememori kwamagigabhayithi angu-8, khona-ke empeleni udinga ukuba ne-12. Izinombolo zihlobene, kodwa ingqikithi ayishintshi.

Ukuze uqale ingxenye yeseva, sincoma ukusebenzisa amafulegi ashiwo esihlokweni Ukushuna amafulege we-JVM – G1GC Wokuqoqwa kukadoti weMinecraft. Lo "mlingo omnyama" uvumela iseva ukuthi ilungiselele kahle "umqoqi wezibi" futhi ithuthukise ukusetshenziswa kwe-RAM. Akufanele unikeze inkumbulo eningi kunaleyo esetshenziswa iseva ngesikhathi sokutheleka okuphezulu kwabadlali.

Ikhiqiza imephu yebhulokhi

"Ingabe ngempela ucabanga ukuthi inyanga ikhona kuphela uma uyibuka?" (Albert Einstein)

Iseva entsha ngokuphelele. Ngokushesha nje lapho umdlali exhuma ngempumelelo okokuqala ngqa, umlingisi womdlalo uvela endaweni yokuhlangana evamile (i-spawn). Lena ukuphela kwendawo lapho umhlaba wegeyimu ukhiqizwa khona ngaphambili yiseva. Ngesikhathi esifanayo, ingxenye yeklayenti ibheka izilungiselelo, futhi ipharamitha eyinhloko ibanga lokudweba. Ikalwa ngezingcezu (indawo yemephu ingu-16×16 kanye namabhulokhi angu-256 ukuphakama). Mangaki ama-chunks abonisiwe ukuthi mangaki azocelwa kuseva.

Iseva igcina imephu yomhlaba wonke, futhi uma engekho amabhulokhi akhiqiziwe kuyo okwamanje endaweni yokuvela komlingiswa wegeyimu, iseva iwakhiqiza futhi iwagcine. Lokhu akudingi nje izinsiza ezinkulu zekhompiyutha, kodwa futhi kwandisa njalo usayizi wemephu yomhlaba. Kwenye yeziphakeli ezindala kakhulu ze-anarchist 2b2t (2builders2tools) Usayizi wemephu usuvele udlule u-8 Tb, futhi umngcele womhlaba ucishe ube ngamabhulokhi ayizigidi ezingama-30. Kunezinkulungwane zezindaba ezihlotshaniswa nale seva futhi ifanele i-athikili yayo ochungechungeni.

Ukukhiqiza umhlaba uzungeze umdlali oyedwa akuyona inkinga. Ukukhiqiza umhlaba ozungeze amakhulukhulu abadlali kuzobangela ukwehla okuncane kweseva isikhashana, ngemuva kwalokho umthwalo uzokwehla. Ukukhiqiza umhlaba ebangeni elinikezwa yikhasimende elizungeze inkulungwane yabadlali sekuvele kukwazi "ukuwisa" iseva nokukhipha wonke amakhasimende kuyo ngenxa yokuvala isikhathi.

Kusofthiwe yeseva kukhona inani elifana ne I-TPS (Omaka kuseva ngayinye - omaka ngomzuzwana). Imvamisa, umjikelezo wewashi ongu-1 ulingana no-50 ms. (isekhondi elingu-1 lomhlaba wangempela lilingana nemikhaza engama-20 yomhlaba wegeyimu). Uma ukucutshungulwa kophawu olulodwa kukhuphuka kuye kumasekhondi angu-60, uhlelo lokusebenza lweseva luzovalwa, kukhiphe bonke abadlali.

Isixazululo ukukhawulela umhlaba kuzixhumanisi ezithile futhi wenze ukukhiqizwa kwe-block yokuqala. Ngakho, sisusa isidingo sokukhiqiza ashukumisayo phakathi negeyimu, futhi iseva izodinga kuphela ukufunda imephu ekhona. Zombili izinkinga zingaxazululwa nge-plugin eyodwa I-WorldBorder.

Indlela elula iwukusetha umngcele womhlaba ngendlela yendilinga ehlobene nendawo yokuzalela (yize ungenza noma yimuphi umumo) ngomyalo owodwa:

/wb set <радиус в блоках> spawn

Uma umlingisi womdlali ezama ukweqa umngcele, uzophindiselwa emuva amabhulokhi ambalwa. Uma lokhu kwenziwa izikhathi ezimbalwa phakathi nesikhathi esilinganiselwe, umenzi wobubi uzothunyelwa ngendluzula endaweni yokuzala. Isizukulwane sangaphambili somhlaba senziwe kalula, ngomyalo:

/wb fill

Njengoba lesi senzo singase sithinte abadlali kuseva, qiniseka ukuthi uyaqinisekisa:

/wb confirm

Sekukonke, kuthathe cishe amahora ama-5000 ukwenza umhlaba onendawo engamabhulokhi angu-40 (~2 billion blocks) kuphrosesa ye-Intel® Xeon® Gold 6240. Ngakho-ke, uma ufuna ukukhiqiza kusengaphambili imephu enkulu, qaphela ukuthi le nqubo izothatha isikhathi esifanele , futhi iseva ye-TPS izoncishiswa kakhulu. Futhi, khumbula ukuthi ngisho nerediyasi yamabhulokhi angu-5000 izodinga cishe u-2 GB wesikhala sediski.

Naphezu kweqiniso lokuthi inguqulo yakamuva ye-plugin yakhelwe inguqulo ye-Minecraft 1.14, kutholakale ukuhlolwa ukuthi isebenza kahle ezinguqulweni ezilandelayo. Uhlu oluphelele lwemiyalo enezincazelo luyatholakala kuforamu ye-plugin.

Inkinga iyavimba

Kunezinhlobonhlobo ezinhle zamabhulokhi ku-Minecraft. Kodwa-ke, sithanda ukudonsa ukunaka kwabafundi ebhulokhini elinjenge TNT. Njengoba igama liphakamisa, leli bhulokhi liyiziqhumane (inothi lomhleli - lena into yomdlalo wezwe elibonakalayo futhi le nto ayinalutho ngeziqhumane zangempela). Okungavamile kwayo ukuthi ngesikhathi sokusebenza amandla adonsela phansi aqala ukusebenza kuwo. Lokhu kuphoqa iseva ukuthi ibale zonke izixhumanisi uma ngalesi sikhathi ibhulokhi iqala ukuwa.

Uma kunamabhulokhi we-TNT amaningana, khona-ke ukuqhunyiswa kwebhulokhi eyodwa kubangela ukuqhunyiswa kanye nokusebenza kwamandla adonsela phansi kumabhulokhi angomakhelwane, ukuwasakaza kuzo zonke izinhlangothi. Yonke le mishini enhle ngasohlangothini lweseva ibukeka njengemisebenzi eminingi yokubala umkhondo webhulokhi ngayinye, kanye nokusebenzisana namabhulokhi angomakhelwane. Lo msebenzi unzima kakhulu, wonke umuntu angawuhlola kalula. Khiqiza futhi uqhumise i-cube kusuka kumabhulokhi e-TNT okungenani anosayizi ongu-30x30x30. Futhi uma ubucabanga ukuthi unekhompyutha yokudlala enhle, enamandla, wenze iphutha elikhulu 😉

/fill ~ ~ ~ ~30 ~30 ~30 minecraft:tnt

Ukulungiswa kweseva ye-Minecraft
"Ukuhlola" okufanayo kuseva ene-Intel® Xeon® Gold 6240 kuholele ekwehleni okukhulu kwe-TPS kanye nomthwalo we-CPU ongu-80% phakathi naso sonke isikhathi sokuqhunyiswa kwebhulokhi. Ngakho-ke, uma noma yimuphi umdlali ekwazi ukwenza lokhu, khona-ke inkinga yokusebenza izothinta bonke abadlali kuseva.

Inketho enzima nakakhulu - Amakristalu e-Edge. Uma i-TNT nokho iqhuma ngokulandelana, khona-ke ama-Edge Crystals aqhumisa wonke ngesikhathi esifanayo, lokho ngombono ongamisa ngokuphelele ukusebenza kwesicelo seseva.

Lesi simo singagwenywa kuphela ngokuvimbela ngokuphelele ukusetshenziswa kwalawa mabhulokhi emhlabeni wegeyimu. Isibonelo, usebenzisa i-plugin I-WorldGuard. Sicela uqaphele ukuthi le plugin ngokwayo ayisebenzi ngaphandle kwenye i-plugin I-WorldEdit. Ngakho faka i-WorldEdit kuqala, bese kuba yi-WorldGuard.

isiphetho

Ukuphatha kahle iseva yomdlalo akuwona umsebenzi olula. Ubunzima nokusebenza okunciphile kuzokulinda ngaso sonke isikhathi, ikakhulukazi uma unganaki oomakhenikha begeyimu ngokwabo. Akunakwenzeka ukubona yonke into kusengaphambili, ngoba abadlali kwesinye isikhathi bangaba nobuhlakani obukhulu ekuzameni ukuphoqa iseva ukuthi yenze okuthile ebingahloselwe yona. Ibhalansi enengqondo kuphela phakathi kwezingozi nemikhawulo emisiwe ezovumela iseva ukuthi isebenze ngokuqhubekayo futhi inganciphisi ukusebenza kwayo kube amanani abalulekile.

Ngesikhathi sokuvalelwa, abanye babasebenzi bethu baphuthelwe amahhovisi abawathandayo futhi banquma ukuwadala kabusha ngaphakathi kweMinecraft. Uphinde ube nethuba lokuza ukusivakashela ngaphandle kokufaka impilo yakho engcupheni noma ukuchitha isikhathi emgwaqeni.

Ukwenza lokhu, simema wonke umuntu kuseva yethu minecraft.selectel.ru (inguqulo yeklayenti 1.15.2), lapho izikhungo zedatha i-Tsvetochnaya-1 ne-Tsvetochnaya-2 zakhiwe kabusha. Ungakhohlwa ukuvuma ukulanda izinsiza ezengeziwe, ziyadingeka ukuze kuboniswe kahle kwezinye izindawo.

Izimfuno, amakhodi okukhangisa, amaqanda e-Easter nokuxhumana okujabulisayo kukulindile.

Source: www.habr.com

Engeza amazwana