Stationeers-ის გამოყოფილი სერვერი უფასო ჩამოსატვირთია (Steam app 600760, ანონიმური შესვლა), რომელიც მუშაობს როგორც Linux-ზე (rocketstation_DedicatedServer.x86_64), ისე Windows-ზე (rocketstation_DedicatedServer.exe). მიმდინარე ვერსიებში ის თითქმის მთლიანად ბრძანების ხაზით კონფიგურირდება: -file start <name> <world> სადგურს ტვირთავს ან ქმნის, ხოლო -settings, რომელსაც გასაღები-მნიშვნელობის წყვილები მოსდევს, აყენებს სახელს, პაროლს, პორტებსა და შენახვის ინტერვალს. ის იყენებს UDP 27016-ს თამაშისთვის და UDP 27015-ს Steam-ისთვის, ინახავს შესრულებადი ფაილის გვერდით მდებარე saves საქაღალდეში და თავის CPU-ს ატმოსფეროსა და მილების სიმულაციაზე ხარჯავს და არა მოთამაშეებზე. გაშვების სინტაქსი სერვერის გადაკეთებისას შეიცვალა, ასე რომ, თუ გზამკვლევი გირჩევს -load-ის გამოყენებას flag-ების გრძელი სიით, ის მიმდინარე სერვერზე ძველია.
როგორ მუშაობს Stationeers-ის მრავალმოთამაშიანი რეჟიმი#
Stationeers უპირველეს ყოვლისა სიმულაციური თამაშია: ყოველ ოთახს აქვს ატმოსფერო წნევით, ტემპერატურითა და აირების ნარევით, ყოველ მილების ქსელს - იგივე, ხოლო ენერგია, ლოგიკის ჩიპები და მოწყობილობები სერვერზე tick-ობს. მრავალმოთამაშიან რეჟიმში ამ სიმულაციას სერვერი ფლობს, კლიენტები კი შედეგებს ხედავენ. სამი შედეგი:
- სერვერის CPU წყვეტს, რამდენად დიდი შეიძლება გახდეს ბაზა, სანამ სიმულაცია შენელდება. მოთამაშეების რაოდენობას გაცილებით ნაკლები მნიშვნელობა აქვს, ვიდრე ატმოსფეროების, მილების ქსელებისა და მოწყობილობების რაოდენობას.
- სამყარო მუშაობას აგრძელებს, როცა არავინაა, თუ პაუზის ბრძანებას არ მისცემ. მცენარეები იზრდება, ბატარეები იცლება, გაჟონვიანი მილი ჟონვას აგრძელებს.
AutoPauseServerსწორედ ამიტომ არსებობს. - ყველამ ერთი და იგივე ვერსია უნდა გაუშვას. Stationeers ხშირად ახლდება, და უფრო ახალ build-ზე მყოფი კლიენტები ძველ სერვერთან ვერ შეერთდებიან.
მთავარი მენიუდან hosted თამაში სწრაფი სესიისთვის მუშაობს, მაგრამ სადგური მხოლოდ მაშინ არსებობს, როცა ჰოსტი თამაშობს. გამოყოფილი სერვერი სწორი ხელსაწყოა ჯგუფისთვის, რომელიც სხვადასხვა დროს თამაშობს ან ხანგრძლივ პროექტებს ატარებს. რა არის გამოყოფილი სათამაშო სერვერი ამ განსხვავებას ზოგადად განიხილავს.
სადგურის დაგეგმვა, რომელსაც სერვერი გასწევს
რადგან ხარჯი სიმულაციაა, ის, თუ როგორ აშენებს ჯგუფი, წყვეტს, რამდენ ხანს დარჩება სერვერი გლუვი. რამდენიმე ჩვევა დიდ განსხვავებას ქმნის, და მათზე შეთანხმება უფრო ადვილია პირველი კედლის აშენებამდე, ვიდრე მას შემდეგ, რაც ბაზა გაიშლება.
აშენე კომპაქტურად. ყოველი ჰერმეტული ოთახი ატმოსფეროა, რომელიც სერვერმა უნდა გამოთვალოს, და ყოველი ღია ზედაპირი გარემოსთან სითბოს ცვლის. მჭიდრო ბაზა რამდენიმე დიდი ოთახით უფრო იაფია, ვიდრე airlock-ებით დაკავშირებული პატარა ქოხების სოფელი, და ისედაც უფრო ადვილია მისი წნევის ქვეშ შენარჩუნება.
მილების ქსელები ცალ-ცალკე შეინარჩუნე. გრძელი ქსელის valve-ებით, regulator-ებით ან ტუმბოებით დაყოფა ერთ დიდ გამოთვლას რამდენიმე პატარად აქცევს და გაჟონვების პოვნას აადვილებს. ის ასევე უშლის ხელს, რომ ერთმა შეცდომამ - გასკდომილმა მილმა სათბურში - მთელი ბაზა დააცარიელოს.
ადამიანებს როლები მიეცი. მრავალმოთამაშიანი Stationeers საუკეთესოდ მუშაობს, როცა ერთი ადამიანი ატმოსფეროს ფლობს, ერთი ენერგიას, ერთი კი საკვებს ან მოპოვებას. ორი ადამიანი, რომელიც ერთსა და იმავე აირის ქსელს ერთდროულად აშენებს თავიდან, ზუსტად ის არის, როგორ იცლება ბაზები, და ამის გაუქმება რთულია, როგორც კი სერვერი შეინახავს.
დაალაგე თან და თან. მადნის გროვები, დახარჯული ბალონები და მიტოვებული kit-ები ობიექტებია, რომლებსაც სერვერი ადევნებს თვალს. ჩადე ისინი საცავში ან გადაამუშავე. მოწესრიგებული ბაზა უფრო სწრაფი ბაზაა.
ლოგიკა ზომიერად დაწერე. IC ჩიპები თამაშის ერთ-ერთი საუკეთესო ნაწილია, მაგრამ ჩიპი, რომელიც ყოველ tick-ზე ათეულობით მოწყობილობას გადაწერს, CPU-ს ხარჯავს. სკრიპტები, რომლებიც მხოლოდ რამის შეცვლისას მოქმედებს, უფრო იაფია.
ამათგან არაფერს აკონტროლებს პარამეტრები. ეს სხვა თამაშებში მშენებლობის წესების ექვივალენტია, და საერთო სერვერზე სწორედ ეს წყვეტს, იმუშავებს თუ არა სადგური სრული სიჩქარით თამაშის ერთი თვის შემდეგაც.
მოთხოვნები და რესურსების მოხმარება#
Stationeers-ის სერვერი მსუბუქი არ არის და სადგურის ზრდასთან ერთად მძიმდება. ქვემოთ მოცემული რიცხვები სერვერის პროცესის ტიპური საწყისი წერტილებია; მკაცრ სამყაროზე დიდ, გვიანი ეტაპის ბაზას შეიძლება მეტი დასჭირდეს.
| სადგური | RAM | CPU | შენიშვნები |
|---|---|---|---|
| ახალი სადგური, 1-4 მოთამაშე | 4 GB | 2 სწრაფი ბირთვი | ადრეული ეტაპი იაფია |
| ჩამოყალიბებული ბაზა, 4-8 მოთამაშე | 6-8 GB | 2-3 სწრაფი ბირთვი | ბევრი ოთახი, მილების ქსელები, ლოგიკა |
| დიდი ბაზა, მძიმე ავტომატიზაცია | 8-12 GB | 3-4 სწრაფი ბირთვი | ღუმელები, დიდი აირის ქსელები, ბევრი IC |
- CPU ნამდვილი შემზღუდველია. ატმოსფეროს სიმულაცია მძიმეა და მისი ნაწილები ერთ ნაკადზეა მიბმული, ამიტომ სიხშირეს მნიშვნელობა აქვს. CPU თუ RAM სათამაშო სერვერებისთვის ხსნის, რატომ არ უშველის მეხსიერების დამატება სიმულაციით შეზღუდულ სერვერს.
- მეხსიერება იზრდება გამოკვლეული და აშენებული ფართობის ზომასთან და სამყაროში არსებული ნივთების რაოდენობასთან ერთად - ყოველი დაგდებული მადანი და ყოველი დადგმული მოწყობილობა ობიექტია.
- დისკი: სერვერი რამდენიმე გიგაბაიტს იკავებს. save-ები რამდენიმე მეგაბაიტიდან დიდი ბაზისთვის ათეულობით ან ასობით მეგაბაიტამდე იზრდება; რამდენიმესთვის ადგილი დატოვე.
ოფიციალური wiki-ს რეკომენდაციები სერვერის გამშვები მანქანისთვის გულუხვია, და მართლებიც არიან: Stationeers-ის სერვერი, რომელსაც CPU ეწურება, ავარიას არ განიცდის, ის უბრალოდ სიმულაციას რეალურ დროზე ნელა უშვებს, რაც ყველას lag-ად ეჩვენება.
ინსტალაცია და პირველი გაშვება#
Linux-ზე:
$ steamcmd +force_install_dir /home/stationeers/server +login anonymous +app_update 600760 validate +quit$ cd /home/stationeers/server$ ./rocketstation_DedicatedServer.x86_64 -file start MyStation Lunar \ -logFile ./server.log \ -settings StartLocalHost true ServerVisible true GamePort 27016 UpdatePort 27015 \ ServerName "Outpost Kepler" ServerPassword "long-join-password" ServerMaxPlayers 6 \ LocalIpAddress 0.0.0.0 AutoSave true SaveInterval 300Windows-ზე შესრულებადი ფაილია rocketstation_DedicatedServer.exe იმავე არგუმენტებით. SteamCMD-ის ახსნა განიხილავს ინსტალაციის განახლებულად შენარჩუნებას.
-file start სინტაქსი
-file start დასახელებული სადგურის უახლეს save-ს ტვირთავს. თუ ის არ არსებობს, მოცემული პარამეტრებით ახალ სამყაროს ქმნის და ინახავს:
-file start <stationname> [worldid] [difficulty] [startcondition] [startlocation]| პარამეტრი | სავალდებულო | შენიშვნები |
|---|---|---|
stationname | დიახ | save-ის სახელი; ყოველ გაშვებაზე გამოიყენება |
worldid | ახალი სამყაროსთვის | Lunar, Mars2, Europa3, MimasHerschel, Vulcan2, Venus |
difficulty | არა | Creative, Easy, Normal (ნაგულისხმევი), Stationeer |
startcondition | არა | ნაგულისხმევად სამყაროს სტანდარტული დასაწყისი; ვარიანტები სამყაროს მიხედვით განსხვავდება |
startlocation | არა | ნაგულისხმევად სტანდარტული დაშვების ადგილი |
სამყაროების ID-ები ვერსიის ნომრებს შეიცავს, რადგან სამყაროები დროთა განმავლობაში თავიდან აიგო. ზემოთ მოცემული სია დაწერის მომენტისთვის აქტუალურია; ახალი ან გადარქმეული სამყაროები განახლებებთან ერთად ჩნდება, ხოლო შესამოწმებელი ადგილი Stationeers-ის ოფიციალურ wiki-ზე გამოყოფილი სერვერის გზამკვლევია.
როგორც კი სადგური არსებობს, იგივე ბრძანების ხაზი მის ჩატვირთვას აგრძელებს. სამყარო და სირთულე მხოლოდ პირველად გჭირდება, მაგრამ მათი დატოვება უვნებელია.
პირველი გაშვების საკონტროლო სია
- დაიწყე
-file start-ით და ახალი სადგურის სახელით. - ლოგს თვალი ადევნე, სანამ სამყარო დაგენერირდება და სერვერი იტყობინება, რომ უსმენს.
- შედი თამაშიდან და შეამოწმე, რომ იქ ეშვები, სადაც ელოდები.
- სუფთად გააჩერე სერვერი, რომ პირველი save ჩაიწეროს.
პარამეტრები: -settings flag და setting.xml#
ყველაფერი -settings-ის შემდეგ გასაღები-მნიშვნელობის წყვილების სერიაა. ისინი, რომლებსაც მნიშვნელობა აქვს:
| პარამეტრი | ნაგულისხმევი | რას აკეთებს |
|---|---|---|
ServerName | ზოგადი | სახელი სერვერების სიაში |
ServerPassword | არ არის | მიერთების პაროლი |
ServerMaxPlayers | მცირე | სლოტები, თამაშის მხარდაჭერილ დიაპაზონში |
GamePort | 27016 | სათამაშო ტრაფიკი, UDP |
UpdatePort | 27015 | Steam-ის ტრაფიკი, UDP |
ServerVisible | - | სერვერის საჯარო სიაში ჩვენება |
StartLocalHost | - | ჰოსტინგის დაწყება გაშვებისას; დააყენე true |
LocalIpAddress | - | 0.0.0.0 Linux-ზე ყველა ინტერფეისს უკავშირდება |
AutoSave | - | პერიოდული შენახვა ჩართული ან გამორთული |
SaveInterval | 300 | წამები ავტომატურ შენახვებს შორის |
AutoPauseServer | - | სიმულაციის პაუზა, როცა ონლაინ არავინაა |
UPNPEnabled | - | როუტერის პორტების მიბმა; ჰოსტინგზე გამორთული |
ServerAuthSecret | არ არის | საერთო საიდუმლო დისტანციური ადმინის ბრძანებებისთვის |
სერვერი პირველი გაშვების შემდეგ setting.xml-საც წერს. მისი რედაქტირება შეგიძლია, მაგრამ ოფიციალური გზამკვლევი აფრთხილებს, რომ ეს არასანდო იყო - მნიშვნელობები იგნორირდებოდა ან თავზე გადაიწერებოდა - და გირჩევს ყველაფერი -settings ხაზზე ჩასვა. პანელზე ეს გაშვების ბრძანებას ან გაშვების ცვლადებს ნიშნავს, სადაც მნიშვნელობებს ისედაც ადგილი აქვს.
პორტები და მიერთება#
| პორტი | პროტოკოლი | დანიშნულება |
|---|---|---|
27016 | UDP | სათამაშო ტრაფიკი (GamePort) |
27015 | UDP | Steam-ის ტრაფიკი (UpdatePort) |
ორივე უნდა იყოს ღია და ორივე UDP-ია. თუ შენი ჰოსტი სხვა ნომრებს გაძლევს, დააყენე GamePort და UpdatePort შესაბამისად. Linux-ზე LocalIpAddress 0.0.0.0-ს მნიშვნელობა აქვს: მის გარეშე სერვერი შეიძლება არასწორ ინტერფეისს მიებას და გარედან მიუწვდომელი იყოს, ღია პორტების მიუხედავადაც. სათამაშო სერვერის პორტების ახსნა განიხილავს, რატომ ყოფენ თამაშები ტრაფიკს ორ პორტზე.
მოთამაშეები თამაშის სერვერების სიიდან უერთდებიან (ServerVisible true-ით) ან მისამართისა და სათამაშო პორტის პირდაპირ შეყვანით. პირდაპირი მიერთება უფრო საიმედოა, სანამ ახალი სერვერი ჯერ კიდევ ვრცელდება სიაში.
ადმინის წვდომა და კონსოლის ბრძანებები#
სერვერის კონსოლი ბრძანებებს იღებს. help მათ არგუმენტებთან ერთად ჩამოთვლის; ყველაზე ხშირად გამოიყენებ save-ს (იძულებითი შენახვა), quit-ს (შენახვა და სუფთა გაჩერება) და ban-ს. ზუსტი ნაკრები სერვერის გადაწერებთან ერთად იცვლებოდა, ამიტომ შენს ვერსიაზე help მიიჩნიე ცნობარად და არა რომელიმე ძველი სია.
ადმინებს ასევე შეუძლიათ სერვერის ბრძანებების გაშვება თამაშის შიგნიდან. ერთი და იგივე ServerAuthSecret მნიშვნელობა უნდა იყოს დაყენებული სერვერის -settings ხაზზეც და ადმინის საკუთარი კლიენტის setting.xml-შიც. ამის შემდეგ ადმინი ხსნის თამაშის კონსოლს (F3) და სერვერის ბრძანებებს serverrun-ს უწერს წინ, მაგალითად serverrun save. ყველას, ვისაც საიდუმლო აქვს, შეუძლია ყველაფერი, რაც კონსოლს, ამიტომ მოეპყარი მას როგორც პაროლს და შეცვალე, როცა ადმინი წავა.
vanilla Stationeers-ს უფლებების დეტალური სისტემა არ აქვს. კერძო ჯგუფისთვის მთავარი კონტროლი პაროლია; საჯარო სერვერზე ბანებსა და წერილობით წესებზე მოგიწევს დაყრდნობა - სერვერის წესები, მოდერაცია და პერსონალი საფუძვლებს განიხილავს.
მოდები#
Stationeers-ის მოდები ორ სახეობად მოდის:
- კონტენტის მოდები Steam Workshop-იდან - ახალი ნივთები, რეცეპტები, მონაცემთა ფაილების ცვლილებები.
- კოდის მოდები, რომლებიც თამაშის ლოგიკას ცვლის. ისინი ჩვეულებრივ საზოგადოების mod loader-ს ეყრდნობა სერვერზეც და კლიენტებზეც.
წესები, რომლებიც ნებისმიერ მოდიფიცირებულ მრავალმოთამაშიან თამაშს ეხება, აქ დამატებითი სიმკაცრით მოქმედებს, რადგან Stationeers ხშირად ახლდება და განახლებებს შორის შიდა სტრუქტურას ცვლის:
- ყველა მოთამაშეს ერთი და იგივე მოდები იმავე ვერსიით სჭირდება.
- თამაშის განახლებამ შეიძლება კოდის მოდები გატეხოს, სანამ მათი ავტორები არ დაეწევიან. მოდიფიცირებული სერვერი patch-ის გამოსვლის დღეს ნუ განაახლებ.
- მოდის დამატებამდე ან წაშლამდე save-ის backup გააკეთე. მოდის წაშლამ, რომელმაც ნივთები ან ნაგებობები დაამატა, შეიძლება save ჩატვირთვისთვის უვარგისი დატოვოს.
როგორ იტვირთება მოდები გამოყოფილ სერვერზე, გაშვების სინტაქსთან ერთად შეიცვალა, ამიტომ მიჰყევი იმ mod loader-ისა და ვერსიის ინსტრუქციებს, რომელსაც იყენებ, და არა ზოგად რეცეპტს. რა ქნა, როცა მოდის განახლება რამეს ტეხავს აღდგენის ზოგად რუტინას აღწერს.
save-ები, backup-ები და წარმადობა#
save-ები შესრულებადი ფაილის გვერდით მდებარე saves საქაღალდეში ცხოვრობს, თითო სადგურის სახელზე, და სერვერი ბოლო ავტომატურ შენახვებს ინახავს. სუფთა quit ჯერ ინახავს; მოკლული პროცესი ბოლო ავტომატური შენახვის შემდეგ ყველაფერს კარგავს. SaveInterval 300-ით ეს მაქსიმუმ ხუთი წუთია - დატვირთულ სადგურზე ასე ან უფრო დაბლა შეინარჩუნე.
გააკეთე saves საქაღალდის backup მანქანის გარეთ განრიგით, ყოველ განახლებამდე და ყოველი მოდის ცვლილებამდე. Stationeers-მა დიდ განახლებებში save-ის ფორმატი შეცვალა; განახლებამდე აღებული backup შენი უკან დასაბრუნებელი გზაა, თუ ახალი ვერსია შენს სადგურს ვერ ჩატვირთავს. backup-ები, რომლებიც მართლა აღდგება აღდგენის შემოწმების ჩვევას განიხილავს.
ლოკალური თამაშის სერვერზე გადასატანად დააკოპირე სადგურის save შენი თამაშის save-ების საქაღალდიდან სერვერის saves საქაღალდეში, როცა სერვერი გაჩერებულია, შემდეგ კი გაუშვი -file start-ით და ამ სადგურის სახელით. ლოგში დარწმუნდი, რომ ის ჩაიტვირთა და არა იმავე სახელით ახალი სამყარო დაგენერირდა.
როცა სიმულაცია ნელდება, ჩვეულებრივი მიზეზებია:
- უზარმაზარი მილების ქსელები. ერთი ქსელი, რომელიც მთელ ბაზას მოიცავს, ერთ დიდ ატმოსფეროდ სიმულირდება. ქსელების valve-ებითა და regulator-ებით დაყოფა ეხმარება.
- ბევრი პატარა ჰერმეტული ოთახი, რომელთაგან თითოეულს საკუთარი ატმოსფეროს გამოთვლა სჭირდება.
- ლოგიკის ჩიპები, რომლებიც მძიმე სკრიპტებს ყოველ tick-ზე უშვებს.
- ათასობით მიმოფანტული ნივთი - მადნის გროვები, დაგდებული ყინული, მიტოვებული kit-ები. დაალაგე ისინი საცავში.
დღეში ერთხელ დაგეგმილი გადატვირთვა, გაფრთხილებით, ასევე ეხმარება ხანგრძლივად მომუშავე სერვერს - ნახე გადატვირთვის განრიგები, რომლებიც მართლა გეხმარება.
RE:NODE-ზე Startup ჩანართი ის ადგილია, სადაც სერვერის გაშვების ცვლადები ცხოვრობს, Schedules ჩანართს შეუძლია backup-ისა და გადატვირთვის ჯაჭვად შეკვრა, ხოლო backup-ის სლოტები ყოველ გეგმაზე მანქანის გარეთ ინახება და ღილაკით აღდგება. Stationeers კატალოგში არ არის, ამიტომ ეს პანელის აღწერაა და არა Stationeers-ის გეგმის.
პრობლემების მოგვარება#
სერვერი ეშვება, მაგრამ ვერავინ უერთდება. ჯერ პორტები, მერე მიბმა. შეამოწმე, რომ ორივე UDP პორტი ღიაა, და Linux-ზე დააყენე LocalIpAddress 0.0.0.0.
setting.xml-ში მითითებული პარამეტრები იგნორირდება. ცნობილი ქცევაა. ჩასვი ისინი -settings ხაზზე.
ჩემი სადგურის ნაცვლად ახალი სამყარო გაჩნდა. -file start-ზე სადგურის სახელი save-ის სახელს ზუსტად არ ემთხვევა.
მოთამაშეები ვერსიის შეუსაბამობას იღებენ. თამაში განახლდა. განაახლე სერვერი SteamCMD-ით და გადატვირთე.
ყველაფერი ნელია, მაგრამ CPU 100%-ზე არ არის. შეამოწმე, ერთი ბირთვი ხომ არ არის ზღვარზე; სიმულაცია მასზეა მიბმული. ნახე რატომ გადაიტვირთება შენი სათამაშო სერვერი სულ, თუ სინელე ავარიებით მთავრდება.
FAQ#
უფასოა Stationeers-ის გამოყოფილი სერვერი?
დიახ. ის SteamCMD-ით ანონიმურად ჩამოიტვირთება. თამაში მოთამაშეებს სჭირდებათ; სერვერს - არა.
რომელ სამყაროზე უნდა დაიწყოს ჯგუფმა?
მთვარე (Lunar) ჩვეულებრივი პირველი სამყაროა: გადარჩენადი, მარტივი ატმოსფეროს პრობლემით. Mars და Europa უფრო რთულ გამოწვევებს ამატებს; Vulcan და Venus იმ ჯგუფებისთვისაა, რომლებიც თამაშს კარგად იცნობენ.
რატომ იყენებს ძველი გზამკვლევები -load-ს და ბევრ flag-ს?
იმიტომ, რომ გაშვების სინტაქსი გამოყოფილი სერვერის გადაკეთებისას შეიცვალა. მიმდინარე build-ები -file start-სა და -settings-ს იყენებს; ძველი ბრძანებები შეიძლება ჩავარდეს ან სხვაგვარად მოიქცეს.
უნდა იყოს AutoPauseServer ჩართული?
ჯგუფების უმეტესობისთვის - დიახ. ის აჩერებს სადგურის დეგრადაციას, სანამ ვერავინ რეაგირებს. გამორთე მხოლოდ მაშინ, თუ გინდა, რომ გრძელი წარმოების ჯაჭვები ღამით მუშაობდეს და ენდობი, რომ შენი ბაზა უყურადღებოდ გადარჩება.
რამდენად ხშირად უნდა ინახავდეს სერვერი?
ყოველ ხუთ წუთში კარგი ნაგულისხმევია. შენახვა პატარა სადგურებზე სწრაფია, ხოლო რთული მშენებლობის ხუთ წუთზე მეტის ავარიისგან დაკარგვა მტკივნეულია.




კომენტარები
სრულიად ანონიმურად: ანგარიშის, ელფოსტის და cookie-ის გარეშე. ინახება მხოლოდ სახელი, ტექსტი და დრო - სხვა არაფერი. ბმულების რაოდენობა ლიმიტირებულია.