Kuunda na kusanidi seva ya Minecraft

Kuunda na kusanidi seva ya Minecraft

Minecraft ni moja ya michezo maarufu mtandaoni leo. Katika chini ya miaka mitatu (toleo rasmi la kwanza lilifanyika mwishoni mwa 2011), alipata mamilioni ya mashabiki kote ulimwenguni.

Waendelezaji wa mchezo huzingatia kwa makusudi mifano bora ya miaka ishirini iliyopita, wakati michezo mingi ilikuwa, kwa viwango vya leo, ya zamani katika suala la graphics na isiyo kamili katika suala la utumiaji, lakini wakati huo huo ilikuwa ya kusisimua kweli.

Kama michezo yote ya sandbox, Minecraft humpa mtumiaji fursa kubwa za ubunifu - hii, kwa kweli, ndiyo siri kuu ya umaarufu wake.

Seva za michezo ya wachezaji wengi hupangwa na wachezaji wenyewe na jumuiya zao. Leo kuna makumi ya maelfu ya seva za mchezo zinazofanya kazi kwenye mtandao (tazama, kwa mfano, orodha hapa).

Kuna mashabiki wengi wa mchezo huu miongoni mwa wateja wetu, na hukodisha vifaa kutoka kwa vituo vyetu vya data kwa ajili ya miradi ya michezo ya kubahatisha. Katika makala hii tutazungumzia kuhusu pointi gani za kiufundi unahitaji kulipa kipaumbele wakati wa kuchagua seva
Minecraft

Kuchagua jukwaa

Minecraft inajumuisha vipengele vifuatavyo vya usanifu:

  1. seva - programu ambayo wachezaji huingiliana kwenye mtandao;
  2. mteja - programu ya kuunganisha kwenye seva, iliyowekwa kwenye kompyuta ya mchezaji;
  3. programu-jalizi - nyongeza kwa seva inayoongeza kazi mpya au kupanua zile za zamani;
  4. mods ni nyongeza kwa ulimwengu wa mchezo (vitalu vipya, vitu, vipengele).

Kuna majukwaa mengi ya seva ya Minecraft. Ya kawaida na maarufu ni Vanilla na Bukkit.

Vanilla Hili ni jukwaa rasmi kutoka kwa watengenezaji wa mchezo. Inasambazwa katika matoleo ya graphical na console. Toleo jipya la Vanilla daima hutoka kwa wakati mmoja kama toleo jipya la Minecraft.

Upande wa chini wa Vanilla ni matumizi yake ya kumbukumbu kupita kiasi (takriban 50 MB kwa kila mchezaji). Drawback nyingine muhimu ni ukosefu wa programu-jalizi.

Bukit iliundwa na kikundi cha washiriki ambao walijaribu kuboresha seva rasmi ya Minecraft. Jaribio liligeuka kuwa na mafanikio kabisa: Bukkit ni pana zaidi katika utendaji kuliko Vanilla, hasa kutokana na msaada wa mods mbalimbali na programu-jalizi. Wakati huo huo, hutumia kumbukumbu ndogo kwa kila mchezaji - takriban 5-10 MB.

Ubaya wa Bukkit ni kwamba inachukua RAM nyingi wakati wa kukimbia. Kwa kuongeza, kwa muda mrefu seva inaendesha, kumbukumbu zaidi inahitaji (hata ikiwa kuna wachezaji wachache). Wakati wa kuchagua Bukkit kama seva, unapaswa kukumbuka kuwa matoleo yake mapya, kama sheria, yana makosa; Toleo thabiti kawaida huonekana takriban wiki 2-3 baada ya toleo rasmi la Minecraft kutolewa.

Kwa kuongezea, majukwaa mengine hivi karibuni yamepata umaarufu (kwa mfano, Spout, MCPC na MCPC+), lakini yana utangamano mdogo na Vanilla na Bukkit na usaidizi mdogo sana wa mods (kwa mfano, kwa Spout unaweza kuandika mods kutoka mwanzo). Ikiwa hutumiwa, basi tu kwa majaribio.

Ili kupanga seva ya mchezo, tunapendekeza kutumia jukwaa la Bukkit, kwani ndilo linalonyumbulika zaidi; Kwa kuongeza, kuna mods nyingi tofauti na programu-jalizi zake. Uendeshaji thabiti wa seva ya Minecraft kwa kiasi kikubwa inategemea chaguo sahihi la jukwaa la vifaa. Hebu fikiria suala hili kwa undani zaidi.

Mahitaji ya vifaa

Seva ya Minecraft na mteja wote wanadai sana kwenye rasilimali za mfumo.
Wakati wa kuchagua jukwaa la vifaa, unapaswa kukumbuka kuwa processor ya msingi nyingi haitatoa faida kubwa: msingi wa seva ya Minecraft unaweza kutumia thread moja tu ya hesabu. Msingi wa pili, hata hivyo, unaweza kuwa muhimu: programu-jalizi zingine hutekelezwa kwa nyuzi tofauti, na Java pia hutumia rasilimali nyingi ...

Kwa hivyo, kwa seva ya Minecraft, ni bora kuchagua processor ambayo ina utendaji wa juu wa msingi mmoja. Kichakataji chenye nguvu mbili-msingi kitafaa zaidi kuliko kichakataji chenye msingi nyingi ambacho hakina nguvu kidogo. Katika vikao maalum, inashauriwa kutumia wasindikaji na mzunguko wa saa wa angalau 3 GHz.

Kwa utendaji wa kawaida wa seva ya Minecraft, kiasi kikubwa cha RAM kinahitajika. Bukkit inachukua takriban 1GB ya RAM; kwa kuongeza, kwa kila mchezaji, kama ilivyoelezwa hapo juu, kutoka 5 hadi 10 MB zimetengwa. Plugins na mods pia hutumia kumbukumbu nyingi. Kwa seva iliyo na wachezaji 30 - 50, kwa hivyo, utahitaji angalau 4 GB ya RAM.

Katika Minecraft, mengi (kwa mfano, kupakia programu-jalizi sawa) inategemea kasi ya mfumo wa faili. Kwa hivyo, ni vyema kuchagua seva na diski ya SSD. Diski za spindle haziwezekani kufaa kwa sababu ya kasi ya chini ya kusoma bila mpangilio.

Kasi ya muunganisho wako wa Mtandao pia ni muhimu sana. Kwa mchezo wa watu 40-50, kituo cha 10 Mb / s kinatosha. Hata hivyo, kwa wale wanaopanga mradi mkubwa wa minecraft, ikiwa ni pamoja na tovuti, jukwaa na ramani inayobadilika, inashauriwa sana kuwa na chaneli iliyo na kipimo data zaidi.

Ni usanidi gani maalum ambao ni bora kuchagua? Kutoka mipangilio tunayotoa Tunapendekeza uzingatie mambo yafuatayo:

  • Intel Core 2 Duo E8400 3GHz, 6GB RAM, 2x500GB SATA, 3000 RUR/mwezi;
  • Intel Core 2 Quad Q8300 2.5GHz, 6GB RAM, 2x500GB SATA, 3500 rub/mwezi. - tunatumia usanidi huu kwa seva yetu ya majaribio ya MineCraft, ambayo unaweza kucheza hivi sasa (jinsi ya kufanya hivyo imeandikwa hapa chini);
  • Intel Core i3-2120 3.3GHz, 8GB RAM, 2x500GB SATA, 3500 RUR/mwezi.

Usanidi huu unafaa kabisa kwa kuunda seva ya Minecraft kwa wachezaji 30-40. Baadhi ya hasara ni ukosefu wa anatoa SSD, lakini tunatoa faida nyingine muhimu: kituo cha uhakika cha 100 Mb / s bila vikwazo au uwiano. Wakati wa kuagiza usanidi wote ulioorodheshwa hapo juu, hakuna ada ya kusanidi.

Pia tunayo tija zaidi, lakini wakati huo huo, kwa kawaida, seva za gharama kubwa zaidi (wakati wa kuagiza usanidi huu, ada ya usakinishaji pia haitozwi):

  • 2x Intel Xeon 5130, 2GHz, 8GB RAM, 4x160GB SATA, 5000 rub/mwezi;
  • 2x IntelXeon 5504, 2GHz, 12GB RAM, 3x1TB SATA, 9000 rub/mwezi.

Tunapendekeza pia kulipa kipaumbele kwa mtindo mpya wa bajeti na gari la SSD kulingana na processor ya Intel Atom C2758: Intel Atom C2758 2.4 GHz, 16 GB RAM, 2x240 GB SSD, 4000 rubles / mwezi, malipo ya ufungaji - 3000 rubles.

Kufunga na kuendesha seva ya Bukkit kwenye OC Ubuntu

Kabla ya kusakinisha seva, wacha tuunde mtumiaji mpya na tuiongeze kwenye kikundi cha sudo:

$ sudo useradd -m -s /bin/bash <username> $ sudo adduser <username> sudo

Ifuatayo, tutaweka nenosiri ambalo mtumiaji aliyeundwa ataunganishwa na seva:

$ sudo passwd <username>

Hebu tuunganishe tena kwa seva chini ya akaunti mpya na tuanze usakinishaji.
Minecraft imeandikwa katika Java, kwa hivyo Mazingira ya Runtime ya Java lazima yasakinishwe kwenye seva.

Wacha tusasishe orodha ya vifurushi vinavyopatikana:

$ sudo apt-kupata sasisho

Kisha endesha amri ifuatayo:

$ sudo apt-get install default-jdk

Ili kusakinisha na kuendesha Bukkit, inashauriwa pia kusakinisha kiongezeo cha terminal - kwa mfano, skrini (unaweza pia kutumia viambajengo vingine vya wastaafu - tazama yetu. hakiki):

$ sudo apt-get install skrini

Skrini itahitajika ikiwa tutaunganisha kwenye seva ya mchezo kupitia ssh. Kwa msaada wake, unaweza kuendesha seva ya Minecraft kwenye dirisha tofauti la terminal, na hata baada ya kufunga mteja wa ssh, seva itafanya kazi.

Wacha tuunda saraka ambayo faili za seva zitahifadhiwa:

$ mkdir bukkit $ cd bukkit

Baada ya hapo twende Ukurasa rasmi wa upakuaji wa tovuti ya Bukkit. Katika sehemu ya juu ya kulia ya ukurasa unaweza kuona kiunga cha muundo wa hivi karibuni uliopendekezwa wa seva. Tunapendekeza kuipakua:

$ wget <kiungo cha toleo lililopendekezwa>

Sasa hebu tuendeshe skrini:

skrini ya $sudo

na endesha amri ifuatayo:

$ java -Xmx1024M -jar craftbukkit.jar -o uongo

Wacha tueleze maana ya vigezo vilivyotumika:

  • Xmx1024M - kiwango cha juu cha RAM kwa seva;
  • jar craftbukkit.jar - ufunguo wa seva;
  • o si kweli - huruhusu ufikiaji wa seva kutoka kwa wateja walioibiwa.

Seva itaanzishwa.
Unaweza kusimamisha seva kwa kuandika amri ya kuacha kwenye console.

Kuweka na kusanidi seva

Mipangilio ya seva imehifadhiwa katika faili ya usanidi ya seva. Inayo vigezo vifuatavyo:

  • mipangilio ya jenereta - huweka kiolezo cha kutengeneza ulimwengu wa hali ya juu;
  • kuruhusu-nether - huamua uwezekano wa kuhamia Ulimwengu wa Chini. Kwa chaguomsingi, mpangilio huu umewekwa kuwa kweli. Ikiwekwa kuwa sivyo, basi wachezaji wote kutoka Nether watahamishwa hadi kwa wale wa kawaida;
  • level-name - jina la folda iliyo na faili za ramani ambazo zitatumika wakati wa mchezo. Folda iko kwenye saraka sawa ambapo faili za seva ziko. Ikiwa hakuna saraka kama hiyo, seva inaunda ulimwengu mpya kiatomati na kuiweka kwenye saraka yenye jina moja;
  • wezesha swali - inapowekwa kuwa kweli, inawasha itifaki ya GameSpy4 ili kusikiliza seva;
  • kuruhusu-ndege - inaruhusu ndege kuzunguka ulimwengu wa Minecraft. Thamani chaguo-msingi ni uongo (safari za ndege haziruhusiwi);
  • seva-bandari - inaonyesha bandari ambayo itatumiwa na seva ya mchezo. Bandari ya kawaida ya Minecraft ni 25565. Haipendekezi kubadilisha thamani ya parameter hii;
  • aina ya kiwango - huamua aina ya ulimwengu (DEFAUT / FLAT / LARGEBIOMES);
  • wezesha-rcon - inaruhusu ufikiaji wa mbali kwa koni ya seva. Kwa chaguo-msingi ni walemavu (uongo);
  • kiwango cha mbegu - data ya pembejeo kwa jenereta ya kiwango. Ili kuweza kuunda ulimwengu nasibu, uga huu lazima uachwe tupu;
  • kulazimisha mchezo - huweka hali ya kawaida ya mchezo kwa wachezaji wanaounganisha kwenye seva;
  • server-ip - inaonyesha anwani ya IP ambayo itatumiwa na wachezaji kuunganisha kwenye seva;
  • max-build-urefu - inaonyesha urefu wa juu wa jengo kwenye seva. Thamani yake lazima iwe nyingi ya 16 (64, 96, 256, nk.);
  • spawn-npcs - inaruhusu (ikiwa imewekwa kwa kweli) au inakataza (ikiwa imewekwa kwa uongo) kuonekana kwa NPC katika vijiji;
  • white-list - huwezesha au kulemaza matumizi ya orodha nyeupe ya wachezaji kwenye seva. Ikiwekwa kuwa ndivyo, msimamizi ataweza kuunda orodha nyeupe kwa kuongeza mwenyewe majina ya utani ya kichezaji kwake. Ikiwa thamani ni ya uongo, basi mtumiaji yeyote anayejua anwani yake ya IP na bandari anaweza kufikia seva;
  • spawn-wanyama - inaruhusu kuzaliana kiotomatiki kwa makundi ya kirafiki ikiwa imewekwa kuwa kweli);
  • snooper-enabled - inaruhusu seva kutuma takwimu na data kwa watengenezaji;
  • hardcore - inawezesha hali ya Hardcore kwenye seva;
  • texture-pac - faili ya maandishi ambayo itatumika wakati mchezaji anaunganisha kwenye seva. Thamani ya parameta hii ni jina la kumbukumbu ya zip iliyo na maandishi, ambayo huhifadhiwa kwenye saraka sawa na seva;
  • online-mode - huwezesha kuangalia kwa akaunti za malipo ya watumiaji wanaounganisha kwenye seva. Ikiwa kigezo hiki kitawekwa kuwa ndivyo, ni wamiliki wa akaunti zinazolipiwa pekee wataweza kufikia seva. Ikiwa uthibitishaji wa akaunti umezimwa (umewekwa kuwa uongo), basi watumiaji wowote wanaweza kufikia seva (ikiwa ni pamoja na, kwa mfano, wachezaji ambao wameghushi jina lao la utani), ambayo husababisha hatari zaidi za usalama. Wakati ukaguzi umezimwa, unaweza kucheza Minecraft kwenye mtandao wa ndani, bila ufikiaji wa Mtandao;
  • pvp - inaruhusu au inakataza wachezaji kupigana. Ikiwa kigezo hiki ni kweli, basi wachezaji wanaweza kuharibu kila mmoja. Ikiwekwa kuwa sivyo, wachezaji hawawezi kushughulikia uharibifu wa moja kwa moja;
  • ugumu - huweka kiwango cha ugumu wa mchezo. Inaweza kuchukua maadili kutoka 0 (rahisi) hadi 3 (ngumu zaidi);
  • gamemode - inaonyesha ni hali gani ya mchezo itawekwa kwa wachezaji wanaoingia kwenye seva. Inaweza kuchukua maadili yafuatayo: 0 - Survival, 1-Creative, 2-Adventure;
  • kuisha kwa mchezaji - wakati wa kutofanya kazi (kwa dakika), baada ya hapo wachezaji hukatwa kiotomatiki kutoka kwa seva;
  • wachezaji max - idadi ya juu inayoruhusiwa ya wachezaji kwenye seva (kutoka 0 hadi 999);
  • spawn-monsters - inaruhusu (ikiwa imewekwa kuwa kweli) kuzaliana kwa umati wenye uadui;
  • kuzalisha-miundo - huwezesha (kweli) / kulemaza (uongo) kizazi cha miundo (hazina, ngome, vijiji);
  • mtazamo-umbali - hurekebisha radius ya chunks iliyosasishwa ili kutumwa kwa mchezaji; inaweza kuchukua maadili kutoka 3 hadi 15.

Kumbukumbu za seva za Minecraft zimeandikwa kwa faili ya server.log. Imehifadhiwa kwenye folda sawa na faili za seva. Logi inakua mara kwa mara kwa ukubwa, ikichukua nafasi zaidi na zaidi ya diski. Unaweza kurahisisha kazi ya utaratibu wa ukataji miti kwa kutumia kinachojulikana kama mzunguko wa logi. Kwa mzunguko, matumizi maalum hutumiwa - logrotate. Inapunguza idadi ya maingizo kwenye logi hadi kikomo fulani.

Unaweza kusanidi mzunguko wa logi ili maingizo yote yafutwe mara tu faili ya kumbukumbu inapofikia ukubwa fulani. Unaweza pia kuweka kipindi ambacho maingizo yote ya zamani yatachukuliwa kuwa hayana umuhimu na kufutwa.

Mipangilio ya msingi ya mzunguko iko kwenye faili /etc/logrotate.conf; Kwa kuongeza, unaweza kuunda mipangilio ya kibinafsi kwa kila programu. Faili zilizo na mipangilio ya kibinafsi zimehifadhiwa kwenye saraka /etc/logrotate.d.

Wacha tuunde faili ya maandishi /etc/logrotate.d/craftbukkit na tuingize vigezo vifuatavyo ndani yake:

/home/craftbukkit/server.log {zungusha shinikiza 2 kila wiki missok notisifempty }

Wacha tuangalie maana zao kwa undani zaidi:

  • parameter ya mzunguko inataja idadi ya mzunguko kabla ya kufuta faili;
  • kila wiki inaonyesha kuwa mzunguko utafanyika kila wiki (unaweza pia kuweka vigezo vingine: kila mwezi - kila mwezi na kila siku - kila siku);
  • compress inabainisha kuwa kumbukumbu za kumbukumbu zinapaswa kushinikizwa (chaguo la nyuma ni nocompress);
  • missok inaonyesha kwamba ikiwa hakuna faili ya logi, unapaswa kuendelea kufanya kazi na usionyeshe ujumbe wa makosa;
  • notifempty inabainisha kutosogeza faili ya kumbukumbu ikiwa ni tupu.

Unaweza kusoma zaidi kuhusu mipangilio ya mzunguko wa logi hapa.

Vidokezo vya Uboreshaji

Wacha tuweke uhifadhi mara moja kwamba sehemu hii itatoa vidokezo vinavyohusiana tu na uboreshaji wa seva ya mchezo. Masuala ya kurekebisha na kuboresha seva ambayo Minecraft imewekwa ni mada tofauti ambayo ni zaidi ya upeo wa makala hii; wasomaji wanaopendezwa wanaweza kupata taarifa wanazohitaji kwa urahisi kwenye mtandao.

Shida moja ya kawaida ambayo hutokea wakati wa kucheza Minecraft ni kinachojulikana kama lags - hali wakati programu haijibu kwa pembejeo ya mtumiaji kwa wakati unaofaa. Wanaweza kusababishwa na matatizo kwa upande wa mteja na upande wa seva. Hapo chini tutatoa mapendekezo ambayo yatasaidia kupunguza uwezekano wa matatizo yanayotokea kwenye upande wa seva.

Fuatilia mara kwa mara matumizi ya kumbukumbu ya seva na programu-jalizi

Matumizi ya kumbukumbu yanaweza kufuatiliwa kwa kutumia programu-jalizi maalum za kiutawala - kwa mfano, LagMeter.

Endelea kufuatilia masasisho ya programu-jalizi

Kama sheria, watengenezaji wa programu-jalizi mpya hujitahidi kupunguza mzigo kwa kila toleo jipya.

Jaribu kutotumia programu-jalizi nyingi zilizo na utendakazi sawa

Programu-jalizi kubwa (km Essentials, AdminCMD, CommandBook) mara nyingi hujumuisha utendakazi wa programu-jalizi nyingi ndogo. Kwa mfano, Essential sawa ina utendakazi wa iConomy, uHome, OpenInv, VanishNoPacket, programu jalizi za Kit. Plugins ndogo, utendaji ambao umefunikwa kabisa na utendaji wa moja kubwa, katika hali nyingi inaweza kuondolewa ili usizidishe seva.

Zuia ramani na uipakie mwenyewe

Ikiwa hutapunguza ramani, mzigo kwenye seva utaongezeka kwa kiasi kikubwa. Unaweza kuweka kikomo kwenye ramani kwa kutumia programu-jalizi WorldBorder. Ili kufanya hivyo, unahitaji kuendesha programu-jalizi hii na kukimbia amri /wb 200, na kisha kuchora ramani kwa kutumia amri ya kujaza /wb.

Kuchora, bila shaka, itachukua muda mwingi, lakini ni bora kufanya hivyo mara moja, kufunga seva kwa kazi ya kiufundi. Ikiwa kila mchezaji atachora ramani, seva itafanya kazi polepole.

Badilisha programu jalizi za kazi nzito na zenye kasi zaidi na zisizotumia rasilimali nyingi

Sio programu-jalizi zote za Minecraft zinaweza kuitwa kuwa zimefanikiwa: mara nyingi huwa na kazi nyingi zisizo za lazima na zisizo za lazima, na wakati mwingine pia hutumia kumbukumbu nyingi. Ni bora kuchukua nafasi ya programu-jalizi ambazo hazijafanikiwa na zile mbadala (kuna nyingi sana). Kwa mfano, programu-jalizi ya LWC inaweza kubadilishwa na Wgfix+MachineGuard, na programu-jalizi ya DynMap na Minecraft Overviewer.

Futa kushuka kila wakati au usakinishe programu-jalizi ili kuondoa kiotomatiki

Kushuka kwa michezo ni vitu ambavyo huanguka wakati kundi la watu linapokufa au baadhi ya vitalu vinaharibiwa. Kuhifadhi na usindikaji matone huchukua rasilimali nyingi za mfumo.

Ili kufanya seva ifanye kazi kwa kasi, ni vyema kufuta tone. Hii ni bora kufanywa kwa kutumia programu-jalizi maalum - kwa mfano, NoLagg au McClean.

Usitumie anti-cheats

Kinachojulikana kama anti-cheats mara nyingi huwekwa kwenye seva za mchezo - programu zinazozuia majaribio ya kushawishi mchezo kwa njia zisizo za uaminifu.

Kuna anti-cheats kwa Minecraft pia. Kupambana na kudanganya kila wakati ni mzigo wa ziada kwenye seva. Ni vyema kusakinisha ulinzi kwa kizindua (ambacho, hata hivyo, haitoi hakikisho kamili la usalama na huvunjika kwa urahisi - lakini hii ni mada ya majadiliano tofauti) na kwa mteja.

Badala ya hitimisho

Maagizo na mapendekezo yoyote yanageuka kuwa ya ufanisi zaidi ikiwa yanaungwa mkono na mifano maalum. Kulingana na maagizo ya usakinishaji hapo juu, tumeunda seva yetu ya Minecraft na kuweka vitu vya kupendeza kwenye ramani.

Hivi ndivyo tulivyopata:

  • Seva ya Bukkit - toleo lililopendekezwa la 1.6.4;
  • Programu-jalizi ya takwimu - kukusanya takwimu kuhusu wachezaji;
  • Programu-jalizi ya WorldBorder - kuteka na kupunguza ramani;
  • Programu-jalizi ya WorldGuard (+WorldEdit kama tegemezi) - kulinda baadhi ya maeneo.

Tunakaribisha kila mtu kucheza juu yake: kuunganisha, kuongeza seva mpya na kuingia anwani mncrft.slc.tl.

Tutafurahi ikiwa utashiriki uzoefu wako mwenyewe wa kusakinisha, kusanidi na kuboresha seva za MineCraft kwenye maoni na utuambie ni mods na programu-jalizi gani unavutiwa nazo na kwa nini.

Habari njema: Kuanzia Agosti 1, ada ya usakinishaji kwa seva maalum za usanidi imepunguzwa kwa 50%. Sasa malipo ya kuanzisha wakati mmoja ni rubles 3000 tu.

Wasomaji ambao hawawezi kuacha maoni hapa wanaalikwa kututembelea blog.

Chanzo: mapenzi.com

Kuongeza maoni