Niedoskonała mechanika VCR a NAP

czyli

Jak doprowadzić do złamania NAPu przez przeciwnika

 

     Gra z ludźmi, w przeciwieństwie do gry solo przeciwko AI, nie sprowadza się do traktowania wszystkich innych ras jako wrogich. Niestety nie ma ścisłego podziału na dobry/zły (friend/enemy), co jest być może zaletą a być może wadą. W grach z udziałem żywych przeciwników standardowo ustala się tzw. NAP-y (Non-Agression-Pact) [patrz: dyplomacja], które teoretycznie mają za zadanie za pomocą dodatkowych opcji precyzyjnie określić statut innego gracza.

Często też wybuchają liczne kłótnie między graczami na temat złamania tegoż NAPu między nimi. Przyczyny mogą być różne:

 

świadome złamania NAPu – rzecz rzadko spotykana, gdyż istnieje możliwość takiego samego odwetu.

przypadek – zwykle dotyczy małych przypadkowych jednostek, błędnych ustawień itp.

wynikłe z mechaniki gry – co jest celem tego artykułu.

 

W grze typu Multiplayer istnieją trzy możliwości ustawienia stosunków z innymi graczami:

 

Friend (oznaczany kolorem żółtym) – to rasy sojusznicze, które mogą swobodnie korzystać z naszych bram do gejtowania, tankować paliwo w bazach wyposażonych w dok, oraz poruszać się z dowolną prędkością przez nasze pola minowe.

 

Neutral (oznaczane kolorem ciemnoczerwonym) – rasy neutrealne, obojętne. Przy spotkaniu takich flot nie dochodzi do wzajemnego ataku.

 

Eremy (oznaczana kolorem jasnoczerwonym) – rasy rzecz jasna wrogie. Pojawienie się w tym samym miejscu floty naszej i wrogiej, z których chociaż jedna dysponuje dowolną bronią spowoduje wzajemny atak i bitwę.

 

 

    Istotną cechą gry w trybie multiplayer jest możliwość precyzyjnego określenia, który z graczy ma być atakowany – do tego służy zakładka „battle plans” – oznaczenie „enemy” lub „enemy & neutrals” wskazuje kto z graczy nie będących sojusznikami/przyjaciółmi ma iść na odstrzał.

    Wielu graczy korzysta właśnie z tego modelu ustawień, rozróżniając rasy sojusznicze, obojętne, jak i wrogie, które jako jedyne mają być atakowane – aby np. odróżnić rasy z którymi został zawarty NAP od ras, z którymi nie zostały nawiązane żadne stosunki dyplomatyczne.

 

 

    Problem zaczyna się wtedy, gdy w bitwie uczestniczy kilku graczy, związanych ze sobą różnymi układami. Algorytm bitwy sprawdza wzajemne układy między wszystkimi graczami biorącymi (lub mogącymi brać) w niej udział. Jeżeli dodatkowa rasa posiada status F w stosunku do jednej z uczestniczących lub E w stosunku do obu ras walczących, zostanie ona nijako automatycznie włączona do bitwy.

    Problem ustawienia „Friend” powoduje, iż rasa jest automatycznie uznawana jako wroga w myśl zasady „przyjaciel mojego wroga jest moim wrogiem” mimo, iż była ona pierwotnie ustawiona jako Neutral, a zakładka „battle plans” przewidywała atak wyłącznie na wrogów.

Przykład:

 

 

    Mimo iż wszystkie 3 rasy posiadają ustawienia między sobą takie jak opisane na rysunku, i dodatkowo mają ustawione parametry „attack: enemies” jednostka neutralne będą się ostrzeliwać.

Jeżeli rasy te miały zawarty między sobą NAP, to pytanie brzmi: kto go złamał?

    Wpływ wzajemnych oddziaływań jest natychmiastowy. W momencie zniszczenia floty, która powoduje zafałszowanie działania floty neutralnej, wzajemne stosunki graczy powracają natychmiastowo do pierwotnych ustawień:

 

 

    Flota zbiornikowców C jest atakowana przez wrogiego nubiana A. Neutralny do niego inny nubian B (który ma ustawienia sojusznicze – „friend” z rasą dowodzącą zbiornikowcem) włącza się do walki przeciwko atakującemu nubianowi A. W momencie zniszczenia zbiornikowca C, bitwa natychmiast się kończy, gdyż wygasają wzajemne „zobowiązania sojusznicze”. Oba nubiany A i B powracają natychmiastowo do pierwotnych ustawień „neutral”, przy których bitwa się nie toczy (oczywiście obie jednostki mają ustawienia „attack enemy”).

 

 

    Mechanizm ten należy traktować bezwzględnie jako bug gry, jednak niestety nie ma możliwości kontroli czy dana sytuacja została wymuszona rozmyślnie czy też przypadkowo. Należy jednak pamiętać o możliwości takiej sytuacji, szczególnie jeżeli w bitwie bierze udział kilka ras.

    Problematyczna sytuacja przejawia się tym, iż bug ten działa „jednostronnie” tj. wyłącznie jako sytuacja „wróg mojego przyjaciela jest moim wrogiem”, natomiast sytuacja odwrotna – „przyjaciel mojego wroga jest moim wrogiem” już nie. Dlatego też, floty połączone sojuszem będą mogły „zaatakować” inną rasę, z których tylko jedna będzie celem ataku samotnego przeciwnika…

    Możliwość jednokierunkowego ataku floty, która sama nie jest odwetowo atakowana, jest wręcz wymarzona dla każdego gracza. Jednak czasowość działania tego bugu (do zniszczenia którejś z flot sobie wrogich) przekreśla jego militarne zastosowania.

 

 

Andrev

30.11.2004

upgrade

02.01.2005