211service.com
'Tas ir vienkārši neiespējami': Izstrādātāji skaidro, kāpēc lielas tiešsaistes spēles vienmēr sabojājas, uzsākot darbu
Starp sadrumstaloto palaišanu Himna , Apex Legends negaidītā izlaišana un gaidāmā versija 2. nodaļa , 2019. gada sākumā ir daudz lielu tiešsaistes spēļu. Kā liecina BioWare jaunākās un neskaitāmās spēles pirms tam, šāda mēroga vairāku spēlētāju spēles reti tiek palaistas izcilā stāvoklī. Šķiet, ka katrai tiešsaistes spēlei ir daži tehniskas problēmas palaišanas laikā, neatkarīgi no tā, vai tās ir nelielas, piemēram, pirmās nedēļas kļūdas programmā Apex Legends, vai spēļu pārtraukumi, piemēram, savienojuma problēmas, kas sākotnēji traucēja Velns 3 .
Tik ilgi, kamēr mums bija tiešsaistes spēles, mums ir bijušas problēmas ar palaišanu, taču šķiet, ka saruna par palaišanas problēmām nekur nav pagājusi. Mēs katru reizi redzam vienus un tos pašus jautājumus. Kāpēc tas notika? Kāpēc izstrādātāji to neparedzēja? Kāpēc labošana prasīja tik ilgu laiku? Tā kā tik daudz lielu tiešsaistes spēļu tika izlaistas tik cieši kopā, līdz ar Games as a Service uzplaukumu šajā nozarē, tagad šķita piemērots brīdis, lai dažus no šiem jautājumiem uzdotu izstrādātājiem, cerot novērst šausmīgo palaišanas dienas dīkstāvi. Kāpēc mēs nepārtraukti redzam tās pašas problēmas, kad spēles tiek palaistas, un kā izstrādātāji tās risina?
“Kapacitāte ļoti reti ir problēma”

Ikreiz, kad spēles pazūd vai tiek lēni izveidots savienojums, daudzi uzskata, ka tas ir tāpēc, ka tajās ir beigusies vieta serverī. Ka izstrādātāji nenovērtēja, cik daudz spēlētāju pieteiksies, un rezultātā viņu serveri sasprāga zem slodzes. Tādā gadījumā viss, kas viņiem jādara, ir jāmaksā par vairāk serveru, vai ne? Nu, nē, ne obligāti; kā tas bieži notiek, veidojot spēles, tas nav tik vienkārši.
'Viens no domāšanas veidiem, ko jūs bieži redzat tiešsaistē, ir: 'Kāpēc uzņēmumam A nav vairāk serveru?' Alekss Manns, attīstības vadītājs un bijušais EA kvalitātes nodrošināšanas analītiķis, stāsta mums. Izlaižot šīs spēles, jūs redzat vislielāko trafiku. Visi ir sajūsmā, mārketinga komanda ir labi paveikusi savu darbu, visi ir patiesi satraukti par piekļuvi internetam, un brīdī, kad tiek parādīta spēle, visi noklikšķina uz “Aiziet”. Bet jūs pamanīsit, ka lielākajā daļā spēļu dzīves ciklā jums ir šis masveida pārrāvums, un tad tas izzūd. Ja katrs spēļu uzņēmums pirktu aparatūru, lai segtu visu, kas viņiem bija nepieciešams sākotnējā uzliesmojuma laikā, pēc divām nedēļām 50% aparatūras būtu nekad neizmantotas.
'Tas nav par 'izmetīsim daudz naudas un padarīsim to lielāku.'
Alekss Manns
Tas apgrūtina izstrādātāju sagatavošanos palaišanai bez pārtērēšanas un pirkšanas par daudz serveriem. Par laimi, izstrādātājiem tagad ir piekļuve virtuālajiem serveriem, izmantojot tādus uzņēmumus kā Amazon Web Services, un tos var aktivizēt vai deaktivizēt pēc vajadzības. Arī šāda veida serveri kļuva nepieciešami, jo spēles tika novirzītas no vienādranga savienojumiem — tāda veida, kas 2004. gadā atbalstīja tādas spēles kā Halo 2 — uz specializētiem serveriem, kas atbalsta lielas, pastāvīgas spēles, piemēram, Liktenis 2 un Himna. Tomēr virtuālie serveri nav brīnumlīdzeklis, un tiem ir savas problēmas.

'Kapacitāte ne vienmēr ir atkarīga no serveru skaita,' saka Manns. 'Pat ja mēs sagaidām miljoniem spēlētāju un mums ir serveri, mēs negaidām, ka viņi visi vienlaikus nonāks šajā pieteikšanās portālā. Runa ir par to, lai uz šosejas būtu pietiekami daudz joslu, lai cilvēki varētu izbraukt cauri. Divas valstis ir savienotas, izmantojot tiltu, un abās valstīs ir daudz vietas, taču, lai pārietu no klienta valsts uz servera valsti, cik lielu tiltu izveidojat? Runa nav par 'izmetīsim daudz naudas un padarīsim to lielāku'. Galu galā tas bieži vien ir sastrēgums, kura pamatā ir jūsu izmantotā tehnoloģija un dzinējs.
Izplatīti maldīgi priekšstati 
Viens nepareizs priekšstats, ko Manns bieži redz, ir saistīts ar to, kā darbojas izstrādes komandas, proti, ideja, ka ikviens var kaut ko labot.
'Kad jums ir darīšana ar sarežģītām kodu bāzēm, kas aptver vairākus failus, ko izveidojuši 200 cilvēki, ja es paskatos uz saviem kodētājiem un viņi ir izveidojuši šo, kodētājs A nezina visu šo projektu,' viņš skaidro. 'Ir tāds jēdziens, ka visi zina visu par spēles kodu, tāpēc līmeņa māksliniekam vajadzētu palīdzēt līmeņa arhitektūras labošanā. Jūs zināt, kopienas pārvaldnieki neizlabo kļūdas.
Es dzirdēju to pašu no Fredrika Brēnjemarka, Massive Entertainment, studijas, kas atrodas aiz The Division, tiešraides direktora. 'Lielas tiešsaistes spēles ir ārkārtīgi sarežģītas programmatūras daļas, kuru atbalstam ir nepieciešama milzīga tiešsaistes servera infrastruktūra,' skaidro Brēnjemarks. Papildus tam jums ir arī papildu pirmās puses pakalpojumu slānis, tāpēc ir daudz dažādu veidu, kā lietas var noiet greizi! Mums, The Division, galvenie incidentu veidi, kas varēja izraisīt dīkstāves vai savienojamības problēmas, bija nestabilitāte spēļu programmatūrā, kas darbojas serveros, vai mitināšanas pakalpojumu sniedzēja problēmas. Ļoti reti problēma ir servera jaudas beigšanās. 2. divīzijā mūsu serveri automātiski mērogojas atkarībā no spēlētāju skaita, kas vēlas spēlēt spēli.
Izlaišanas dienā var noiet greizi daudzas lietas, un biežāk nekā nē, spēlētāju skaits skatīšanās sarakstā ir salīdzinoši zems. Var būt atmiņas noplūde, viena, bet katastrofāla nepareiza koda rinda vai aizkavēšanās vieta, kas ir aprakta kaut kur milzīgajā servera cauruļvadā. Spēlei var būt problēmas ar noteiktu interneta pakalpojumu sniedzēju, vai, kā minēja Brönjemark, pirmās puses pakalpojumi, uz kuriem spēle balstās, var tikt pārtraukti. Problēma var būt jebkur, bet neatkarīgi no tā, kur tā atrodas, tā ir katra problēma. Tiešsaistes spēļu jomā neviens nav sala, un tas var padarīt atbildi uz problēmām neticami sarežģītu un laikietilpīgu.
'Katra palaišana ir atšķirīga'

Visi izstrādātāji, ar kuriem es runāju, aprakstīja līdzīgu šķirošanas procesu problēmu novēršanai. Manns piedāvāja pārskatu par to, kā varētu izskatīties labojums no sākuma līdz beigām. Pirmkārt, izstrādātājam ir jāizsijā problēmas simptomi, lai noteiktu patieso cēloni. Pēc tam viņi piesaista cilvēkus, kas ir atbildīgi par šo spēles jomu, lai izstrādātu risinājumu. Vai viņi to var atjaunināt savā pusē, vai arī viņiem ir jāizdod ielāps? Kad viņi atradīs risinājumu, viņiem tas būs jāpārbauda, lai pārliecinātos, ka tas nesabojā neko citu, it īpaši, ja tas ir ielāps.
'Pirms kaut kas tiek publicēts tiešsaistē, ir jāveic pārbaude,' saka Manns. 'Ar platformu turētājiem [piemēram, Sony un Microsoft] ir daudz iespēju strādāt un atpakaļ, lai pārliecinātos, ka mēs kopā strādājam, lai gūtu panākumus; mums ir jāveic kvalitātes nodrošināšanas darbības. Un, kamēr mēs ejam cauri šim ielāpam, ja mēs reaģēsim uz ceļiem un labosim to tagad, bet pēc pusstundas mums tajā pašā dienā būs jāuztaisa otrs ielāps, tas būs haoss. Tāpēc mums ir jāsaka: 'Mēs veicam šo ielāpu; Kādas citas kritiskas problēmas mēs varam novērst šīs darbības ietvaros? Kas vēl nav kārtībā? Jūs nevarat vienkārši uztaisīt plāksteri pusstundas laikā. Jums ir jāpārliecinās, ka esat gudrs ar šī satura ielāpojumu.
Kad tas viss ir izdarīts, ja Visums to atļauj, izstrādātāji var izspiest ielāpu un sākt to uzraudzīt un paziņot par tā ietekmi, izmantojot savus sociālos kanālus. Bet 'nav pusstundas pagrieziena,' saka Manns, piebilstot, 'varbūt simtiem cilvēku pieskaras tam, pirms tas nodzisīs.'

Frenks Sančess, bijušais BioWare un Gazillion Entertainment kopienas pārstāvis ar inženierzinātņu pieredzi, labi pārzina šo paradigmu. Kā cilvēks, kurš ir pavadījis daudz laika, apkopojot atbildes un izstrādājot ielāpu piezīmes, viņš ir redzējis abas atjaunināšanas procesa puses, sākot ar spēlētāju atsauksmēm un beidzot ar ielāpu iesniegšanu. Viņš arī labāk nekā lielākā daļa zina, cik sarežģīti var kļūt labojumi un cik nomāktas palaišanas problēmas var būt gan spēlētājiem, gan izstrādātājiem.
'Mēs esam pēdējie cilvēki, kas vēlas redzēt, ka serveris paceļas un pēc tam divas stundas vēlāk kavējas tik ļoti, ka cilvēki nevar pieteikties,' skaidro Sančess. 'Es jums garantēju, ja [izstrādātāji] piedāvā serveri beta versijai un tas nedarbojas pareizi, iespējams, ka tas ir aiz muguras kādam, kurš veltīja laiku, kas pārsniedz to, ko viņi jau bija meklējuši, lai to panāktu varētu palaist. Tātad, ja kāds tiešsaistē saka 'Nu, viņi ir vienkārši slinki', tas ir pilnīgi un klaji nepatiesi. Darbs ir ieguldīts, izaicinājums ir, kā reaģēt uz problēmām un sazināties ar spēlētājiem, kad tās notiek. Tā ir nepilnīga zinātne… katra palaišana ir atšķirīga. Pat ja divas spēles tiek izstrādātas uz Unity vai cita, pat ja žanrs ir vienāds, process ir atšķirīgs. Jūs nevarat teikt: 'Šī spēle bija laba, kāda ir šīs spēles problēma', jo katrai spēlei ir daudz unikalitātes.
Jūs nevarat teikt: 'Šī spēle bija laba, kāda ir šīs spēles problēma', jo katrai spēlei ir daudz unikalitātes.
Frenks Sančess
Sančesa komentāri skar vēl vienu izplatītu jautājumu, kas rodas aptuveni palaišanas laikā: kāpēc jūs to neparedzējāt? Varbūt spēlē X pirms dažiem mēnešiem radās problēmas. Protams, spēles Y izstrādātāji to varēja redzēt un veikt pasākumus, lai izvairītos no tām pašām problēmām, vai ne?
Ja neskaita atšķirības atsevišķās spēlēs, visi, ar kuriem runāju, teica, ka dažas problēmas nevar paredzēt. Iekšējā testēšana var paveikt tikai tik daudz, un to nekad nevar īsti salīdzināt ar reālu spēles palaišanu.
'Tiešraidei nav simulācijas'

'Jūs nevarat plānot tiešraidi [vienlaikus spēlētājiem],' turpina Sančess. 'Tas vienkārši nav iespējams. Nav aizstājēja. Esmu redzējis visas metodes, kā kaut ko iekšēji pārbaudīt no stresa, pirms to ievietojat, un tiešraidē vienkārši nav simulācijas.
Šeit tiek izmantoti pirms palaišanas stresa testi un beta periodi. Tie nav ideāli, taču tie ir labākais veids, kā novērtēt, kā izskatīsies spēles palaišana un kas ir jālabo pirms galvenā laika. 'Beta versijas ir ļoti noderīgas,' saka Manns. 'Jūs nevarat iegūt tādu izmēru un mērogu, kādu veicat ar beta testēšanu iekšēji. Jūs vienkārši nevarat nolīgt tik daudz cilvēku, lai sasniegtu jūsu serverus. Labākais veids, kā pārbaudīt tiešraidi, ir būt tiešraidē. Ja paskatās uz daudzām alfa un beta versijām, ir tāds jēdziens, ka nav pietiekami daudz serveru, ka ir kļūdas un citas problēmas, taču nedēļas laikā tās ir pārbaudītas, un jaunākajā vai galīgajā laidienā šādu problēmu nav. . Tas ir tikai tāpēc, ka tas ir pieredzēts [tiešraidē] un izmeklēts šo beta versiju laikā.
'Nesen kāda studija palaida spēles beta versiju, un daudzi mani draugi sajūsmināti sāka spēlēt, un viņi atklāja kļūdu, kas ir iestrēgusi apmācībā, jo serverī nav parādījies galvenais vienums,' stāsta Manns. es, atzīmējot, cik sarežģīti var būt paredzēt nepilnības tiešsaistes spēles palaišanā. 'Es garantēju, ka visās šīs spēles kvalitātes nodrošināšanas testos šis vienums vienmēr bija tur. Vienīgais veids, kā jūs to atradīsit, ir plašā mērogā pārbaudīt šo plūsmu. Man ir aizdomas, ka šie puiši tagad ir labi informēti par to un visu šo problēmu, lai tas tiktu labots palaišanai, jo tas viss ir saistīts ar beta darbu.
Visu nevar izlabot

Ja beta versijas ir tik lieliskas, kāpēc izstrādātājiem to nav vairāk, un kāpēc gan tos neuzturēt mēnešus pirms palaišanas? Kā tas bieži notiek spēlēs, tehnoloģija un laiks ne vienmēr ļauj izstrādātājiem darīt tieši to, ko viņi vēlas darīt. Tā kā lielākā daļa spēļu tiek veidotas, tās apvienojas tikai pašās beigās, tāpēc parasti beta versijas šķiet tik tuvu palaišanai. Un neatkarīgi no tā, ko izstrādātāji mācās no beta versijas, neatkarīgi no tā, kādas problēmas tā var atklāt, viņi nevar reāli aizkavēt savu spēli, reaģējot uz tām. Tīmekļa pakalpojumu sniedzējs nevēlas, lai komanda nokavētu servera sākuma datumu vairāk nekā izdevējs, lai palaistu garām savu palaišanas datumu. Tāpēc, tāpat kā dažas problēmas nevar paredzēt, dažas kļūdas vienkārši nevar novērst laicīgi pirms palaišanas.
2. nodaļas beta versijas 
The 2. nodaļas beta grafiks bija diezgan visaptverošs ar privātām un atvērtām beta versijām, kā arī mērķtiecīgāku stresa testu. Ne visas spēles var to mainīt, bet tās, kuras patiešām gūst milzīgu labumu no tā, ko Brēnjemarks sauc par 'pēdējo mēģinājumu'. Tās pirmā atvērtā beta versija ir plānota no 1. līdz 4. martam, divas nedēļas pēc palaišanas.
'Es labprāt nosūtītu bez kļūdām,' uzskata Sančess, komentāru, ko dzirdēsit no jebkura izstrādātāja, kurš ir izgājis cauri ellei un atpakaļ, lai faktiski nosūtītu produktu. 'Bet jebkura komanda jums pateiks, ka to ir ļoti grūti izdarīt. Tāda ir tikai realitāte. Labojamo lietu saraksts pastāvīgi mainās. Jums ir jāsaprot, ka, runājot par kļūdām, ir kļūdas, kas potenciāli tiek nosūtītas, un ir kļūdas, kas tiek atklātas pēc palaišanas. Viss, kam ir jāsaņem prioritāte un jāplāno, un par to ir jārunā. Tā ir šķirošana. Visveiksmīgākās palaišanas ir tās, kurās ir kļūdas, bet nav kropļojošu kļūdu.
Turklāt beta versijas izveide var būt ilgstošs un darbietilpīgs uzdevums. Izstrādātāji nevar vienkārši uzlauzt daļu savas spēles un augšupielādēt to Xbox Live vai PlayStation tīklā. Beta versijas bieži tiek izstrādātas atsevišķi no spēles (bet kopā ar), kas prasa vairāk laika un naudas. Tāpēc problēmas, kas jau sen ir novērstas spēles galvenajā versijā, joprojām var būt tās beta versijā. Mēs to redzējām, piemēram, Anthem demonstrācijās un jaunākajā The Division 2 beta versijā.

'Diezgan bieži dzirdu cilvēkus sakām, ka viņi domā, ka beta testi ir tikai mārketinga kampaņas, un izstrādātāji tik un tā nevar no tiem neko mācīties, jo spēle tajā brīdī jau ir pabeigta,' man stāsta Brēnjemarks. 'Es vēlētos kliedēt šo mītu. Pat tad, ja spēle jau ir izdrukāta diskā un pirmās dienas ielāps jau ir izdarīts, joprojām ir ārkārtīgi daudz lietu, kuras mēs varam risināt servera pusē gan tehnoloģiju, gan arī spēles un līdzsvarošanas ziņā. .'
No otras puses, Sančess saka: “publicēšanas grafiki un spēļu izstrādes laika grafiki ir ļoti agresīvi, dažreiz pārāk agresīvi. Kad kaut kas tiek nosūtīts, cik daudz finansējuma jums ir palicis, cik ilgi esat bijis izstrādes procesā. Dažreiz palaišanas panākumi patiešām ir atkarīgi no tā, cik reižu jums ir nācies atlikt savus atskaites punktus, cik reižu palaišanu aizkavējāt, jo jums bija ko pieslīpēt. Dažas spēles var piegādāt tikai ar noteiktu pulēšanas daudzumu. Jūs nevarat teikt, ka tas ir pilnīgi un pilnīgi labi, kad tas kļūst par zeltu. Ir gadījumi, kad spēle tiks piegādāta tādā stāvoklī, kas ir gatava palaišanai, taču var būt nepieciešams nedaudz pieslīpēt.
Palaišana ir vairāk nekā pirmā diena

Gan izstrādātāji, gan spēlētāji vēlas, lai viņu spēles darbotos nevainojami, kad tās pirmo reizi iedarbina, taču spēļu izstrādes realitāte ir tāda, ka ir tik daudz kustīgu daļu un tik daudz nekustīgu ierobežojumu, ka dažas problēmas var izslīdēt cauri plaisām. izredzes uz to tikai palielinās, jo spēles kļūst arvien lielākas. Sančess uzskata, ka tieši tāpēc mums ir jāaplūko šādi palaišanas gadījumi holistiski. Spēles veiktspēja palaišanas dienā ir svarīga, taču tas vēl nav viss.
'Tās nav problēmas, tās vienmēr notiks,' saka Sančess. 'Tā jūs risinat šīs problēmas. Ja esat lēns vai neuzrunājat tos pareizi, vai ja esat naidīgs pret saviem spēlētājiem, tas viņiem paliks. Ja ir viena lieta, ko es vēlos, lai spēlētāji saprastu, tas ir, ka problēmas notiek neatkarīgi no tā, cik labi jūs tās plānojat. Jums vajadzētu prasīt izstrādātājiem atbildību par to, kā viņi uz viņiem reaģē. Ja jums ir problēmas pēc nedēļas pirms palaišanas, pielieciet kājas pie uguns un sakiet: 'Ei, man nav laba pieredze, tāpēc es uztraucos, ka šīs problēmas nav novērstas.' Tās ir lietas, par kurām mēs vēlamies dzirdēt.
Problēmas rodas neatkarīgi no tā, cik labi tās plānojat.
Frenks Sančess
Neviena spēle netiek palaista perfekti. Tā vienkārši nenotiek. Kā saka Sančess, 'viss, ko jūs uzskatītu par vienmērīgu palaišanu, ir tikai kaut kas tāds, kas nekad nav sasniedzis līmeni, kurā spēlētājs uzskatīja, ka kaut kas nav kārtībā.' Aizkulisēs vienmēr notiek grautiņi. Manns to raksturoja kā izstrādātāju baru, kas saspiedušies kopā “kara telpā”, kas vēro monitoru sienu, lai meklētu atsauksmes un iespējamās problēmas. Dažreiz viņi šīs problēmas uztver agri, dažreiz tās neparādās dažas stundas, un dažreiz tās nevar novērst vēl dažas stundas vai pat dažas dienas.
Lieta ir tāda, ka masveida tiešsaistes spēļu palaišanas laikā vienmēr būs dažas tehniskas problēmas. Visām mūsdienu spēlēm palaišanas laikā ir dažas problēmas. Tāda ir mūsdienu tehnoloģiju un mūsdienu industrijas būtība. Tas nenozīmē, ka spēlētājiem ir akli jādod piespēle spēlēm, kuras ir izstumtas ar katastrofālu dizainu vai citām problēmām, taču tas nozīmē vidējo palaišanu perspektīvā. Spēlei var būt nelielas problēmas, kuras mēs pat nepamanām, vai arī tajā var būt acīmredzami spēles pārtraukumi. Jebkurā gadījumā viss, ko ikviens var darīt, ir cerēt uz labāko, sagatavoties sliktākajam un izsaukt problēmas, kad tās neizbēgami parādās.