[S.T.A.L.K.E.R: The Faction War]

Regulamin forum
Dział "Modyfikacje Gotowe" służy do dyskusji o modyfikacjach, które już są stworzone lub do zadawania pytań na ich temat. Znajdziemy tutaj również linki do ściągnięcia modyfikacji (które powinny, a raczej muszą być w pierwszym poście tematu danej modyfikacji).

Przy zadawaniu pytania związanego z problemem dotyczącym modyfikacji, prosimy o podawanie treści całego loga błędu - koniecznie w tagu [CODE].

Przy cytowaniu plików *.LTX stosować tag [SYNTAX="ini"], przy cytowaniu plików *.script [SYNTAX="lua"] a przy cytowaniu plików *.xml - [SYNTAX="xml"].

Lokalizacja logów:
Windows XP - C:\Documents and Settings\All Users\Moje dokumenty\STALKER-STCS\logs\xray_nazwaużytkownika.log
Windows Vista/7 - C:\Users\Public\Documents\STALKER-STCS\logs\xray_nazwaużytkownika.log
Steam - X:\Program Files (x86)\Steam\SteamApps\common\Stalker Clear Sky\_appdata_\logs

Pytania na temat modyfikacji zadajemy w wątku dla niej stworzonym lub tworzymy nowy, jeśli takowego nie ma.

Gdy chcemy założyć nowy wątek, obowiązkowe jest przeczytanie tego tematu.

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez Matt141 w 11 Lut 2013, 19:31

Skoro posiadamy:
prędkość (D-C)/(B-A),
czas (B-A)
drogę (D-C)
Jak duże mogą być różnice w czasie cyklu? Gdyby dało się zarejestrować odpowiednią liczbę czasu cyklów 'ręcznie', właśnie z powyższych wzorów otrzymalibyśmy statystyczne średnie opóźnienie. I na postawie takiego średniego opóźnienia można obliczyć jak duże wyprzedzenie należy wziąć korzystając ze wzoru na drogę. Na pewno błędy będą się zdarzać, ale tak właśnie działa wprawny strzelec. Wylicza średnią poprawkę na ruch celu. Czy celowanie można poprawić zmieniając prędkość celowania? Jeżeli tak, to optymalizacja może pójść dwojako: Możemy zwiększyć prędkość celowania wykorzystując opóźnienie(O): v=(D-C)/(B-A)-O lub dodając do drogi wartość wyliczoną na podstawie opóźnienia: s=(D-C)+poprawka, gdzie poprawka= O(D-C)/(B-A). Nie wiem czy dobrze myślę, ani czy to wydatnie poprawi działanie stalkerów, ale może zadziała?

Nie wiem, czy te dywagacje pomogą Ci w jakikolwiek sposób. Sam widzę jeden zasadniczy mankament, ale nie wiem, czy mam rację i czy da się go wyminąć: To opóźnienie byłoby charakterystyczne dla każdego komputera, yup? Musiałby więc istnieć skrypt ustalający takie dane, jakiś symulator odpalany na początku gry obciążający odpowiednio procesor?
Awatar użytkownika
Matt141
Stalker

Posty: 53
Dołączenie: 30 Paź 2011, 14:42
Ostatnio był: 07 Lut 2016, 20:02
Frakcja: Wojskowi Stalkerzy
Ulubiona broń: Sniper Rifle SVDm2
Kozaki: 7

Reklamy Google

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez foltrest w 11 Lut 2013, 20:35

Pomysły dobre, ale obciążanie procka nie jest najlepszym pomysłem. Już i tak TFW potrafi przycinać w miejscach z większym natężeniem stalkerów. Więc przyspieszanie cyklu chyba odpada. Opóźnienie chyba zwiększa się, im większa odległość od celu. Więc przyjmując stałą wartość opóźnienia, na większych odległościach mogą być znaczne rozbieżności.
Więc przy braku prędkości kuli można zrobić tak:

-poprawkę nanosić tylko przy bliskim przeciwniku
-wartość poprawki wynosiłaby wtedy, jak powiedział Matt141, s=(D-C)+O(D-C)/(B-A), a opóźnienie mogłoby wtedy być równe czasowi frekwencji wystrzału. Przy bliskiej odległości raczej czas lotu kuli nie zmieni wiele.
Awatar użytkownika
foltrest
Kot

Posty: 20
Dołączenie: 14 Sie 2012, 17:23
Ostatnio był: 15 Sty 2024, 01:28
Frakcja: Najemnicy
Ulubiona broń: SGI 5k
Kozaki: 7

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez kamiloxed w 12 Lut 2013, 12:06

Co do procesorów to jest też trochę racji (tak mi się zdaje).
Procesor ma czas wykonywania 1 obliczenia w czasie 1/(Ghz procesora) a jeśli aplikacja obsługuje więcej rdzeni to może to wykonać szybciej (jeśli procesor jet kilku rdzeniowy ).
Bo teoretycznie nie ma czasu wykonywania obliczenia bo jest natychmiastowy tak ja ktoś pisał wcześniej, ale procesor 1Hz wykona 1 operację na 1 sekundę a 1GHz = 1000000000/1 (chyba xd) więc wykonanie na tym pierwszym 1 operacji zajmie 1/1 a w tym 1GHz 1/1000000000 sekundy .
Dodając do tego jeszcze inne rdzenie (nie wiem na ilu stalker działa)
wychodzi że na każdym kompie może być inny czas opóźnienia i jak ty ustawiłbyś stałą która tobie zapewnia poprawną grę innym ta stałą mogła by ją pogorszyć.

Więc ten "lag" podczas strzelania może być spowodowany zbyt słabym procesorem który opóźnia wykonywanie skryptu, pozostając lekko w tyle za grafiką która na bieżąco wszystko wyświetla.

Na innym kompie z lepszym CPU sprawdź czy tak samo to wygląda.

:

ps
Mówicie że TFW mocno obciąża proocka ?
Mi na W7 pokazuje max 30-55% obciążenia przy max detalach
Dla porównania beta Crysis 3 od 85-95% (na wysokich z włączonym FXAA).
kamiloxed
Kot

Posty: 40
Dołączenie: 30 Gru 2012, 01:10
Ostatnio był: 11 Mar 2013, 18:11
Frakcja: Powinność
Ulubiona broń: Akm 74/2
Kozaki: 0

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez shoter w 12 Lut 2013, 13:21

kamiloxed napisał(a):
:

ps
Mówicie że TFW mocno obciąża proocka ?
Mi na W7 pokazuje max 30-55% obciążenia przy max detalach
Dla porównania beta Crysis 3 od 85-95% (na wysokich z włączonym FXAA).


Stalker prawdopodbnie nie wspiera procesorów wielordzeniowych. Dlatego raczej nie wybije ci się poza magiczne 50-55%.
shoter
Kot

Posty: 30
Dołączenie: 24 Kwi 2011, 20:42
Ostatnio był: 10 Kwi 2014, 16:39
Kozaki: 2

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez kamiloxed w 12 Lut 2013, 14:15

Nie mam jak sprawdzić ile wspiera ale chyba na pewno 2+ bo jak by tylko 1 rdzeń wspierał (nawet przy 100%) to ogólnie mi by pokazało max 15-20% (ok 10/15% stalket i 5% system)

Mam
FX-8120 8 x 3,1GHz

Ale tak czy inaczej wypadało by sprawdzić jak działało by to co pisali wcześniej, na słabszym i lepszym CPU, bo jak będzie różnica to wprowadzenie stałej nic nie pomoże, a tylko zmienna pod CPU co będzie trudne jeśli możliwe.
A jeśli moc CPU nie ma znaczenia to pozostaje tylko wprowadzenie zmian do skryptu :D
kamiloxed
Kot

Posty: 40
Dołączenie: 30 Gru 2012, 01:10
Ostatnio był: 11 Mar 2013, 18:11
Frakcja: Powinność
Ulubiona broń: Akm 74/2
Kozaki: 0

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez smoq2 w 12 Lut 2013, 16:52

Ehh, siła procka nie ma tu nic do rzeczy, bo "odświeżanie" (czyli cykl) skryptów nie jest równy cyklowi procesora. Jak już pisałem wcześniej, skrypty odświeżają się co 0.02-0.1 sekundy. Jest to raczej znacznie rzadziej niż 1GHz ;).

Jakby miały się odświeżać z każdym cyklem procka... Ło Matko Polko!!

Ale wracając do tematu... W poprzedniej wiadomości napisałem skąd opóźnienie, więc nie wiem czemu wciągnęliście w to procesor. Jak pisałem, winni to:

- Rzadkie odświeżanie skryptów (proszę nie wciągnąć w to ponownie procka)
- RPM, czyli szybkostrzelność broni (kula nie zawsze wylatuje z lufy w momencie odświeżenia, co dodaje kolejny ułamek sekundy)
- Czas dotarcia kuli do celu

To teraz tak...

Częstotliwości odświeżania skryptów nie zmienimy, więc tu nie da się nic zrobić.

Na RPM też nic raczej pomóc nie możemy...

Ale na czas dotarcia kuli do celu już możemy. Mamy przecież prędkość początkową wystrzału, a że w grze powietrza nie ma, to jedynie trzeba uwzględnić grawitację (a może nawet tego nie trzeba, bo w TFW zwiększyliśmy prędkości początkowe do rzeczywistych wartości, i opadu kuli w zasadzie nie widać na tych odległościach).
Mamy też prędkość poruszania się celu, i kierunek poruszania się celu.

Można by zrobić to tak, aby stalker, mówiąc wprost, brał poprawkę tylko na dolot kuli, i kierunek poruszania się celu. To powinno wystarczyć. Tylko teraz jaki na to wzór jest? :E

[EDIT]

Wszystko opisałem na obrazku:

Image

Do "danych" można dorzucić jeszcze prędkość kuli z zielonego tekstu.
ImageImage
Awatar użytkownika
smoq2
Legenda

Posty: 1502
Dołączenie: 27 Cze 2010, 02:05
Ostatnio był: 09 Paź 2019, 06:35
Miejscowość: Wrocław/Zielona Góra
Frakcja: Czyste Niebo
Ulubiona broń: Chaser 13
Kozaki: 497

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez Matt141 w 12 Lut 2013, 17:50

Masz rację, nie pomyślałem. Sam się na początku pytałem, czy procek ma na to wpływ :)

Skoro prędkości wylotowe są tak wielkie, to czy musimy zawsze uwzględniać i to opóźnienie? Na kilku metrach ta kula prawie się teleportuje. Jednak jeżeli pojedynki ogniowe będą już na dystansie kilkudziesięciu metrów to faktycznie trzeba wziąć pod uwagę i ten parametr. Przy braku oporu powietrza i przy pomijalnym działaniu grawitacji kula leci ze stałą prędkością, określoną dla konkretnej broni.

Patrzę na to co rozrysowałeś w edicie, wyobrażałem to sobie identycznie. Dopóki stalker nie zacznie wywijać jakichś wygibasów to i ta prędkość powinna być w miarę stała. Pisząc kierunek, masz na myśli zmianę jego położenia po czasie dolotu kuli? Skoro pomijamy to nieszczęsne odświeżanie skryptów to sprawa wygląda chyba prościej, jedyny czas to t=dystans/prędkość kuli. V kuli mamy dane, ale problemem jest v stalkera. Jeżeli można założyć, że jest takie jak wcześniej ustaliliśmy v=(D-C)/(B-A), wtedy ostateczny wzór na poprawkę to: s= (D-C)/(B-A)* (dystans/prędkość kuli), czyli kinematyczne s=v*t. Gdybyśmy ujęli grawitację to wzory sporo by się nam utrudniły, a efekt byłby znikomy. Odległości w stalkerze są zbyt małe na takie poprawki, zmiana drogi i czasu lotu kuli są minimalne również w realu.

Tak na maginesie: a co, jeżeli stalker idzie po skosie? Prędkość nadal będzie stała, ale czy rzutujemy jego położenie na jakąś płaszczyznę?
Awatar użytkownika
Matt141
Stalker

Posty: 53
Dołączenie: 30 Paź 2011, 14:42
Ostatnio był: 07 Lut 2016, 20:02
Frakcja: Wojskowi Stalkerzy
Ulubiona broń: Sniper Rifle SVDm2
Kozaki: 7

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez kamiloxed w 12 Lut 2013, 18:46

A co do procka to faktycznie masz racje bo z tym czasem to musiałem nie zauważyć bo tak powierzchownie przeczytałem :D ale sprawdzić można bo to masz nie 1 skrypt w grze i nie każdy jest prosty a większość pewnie jest złożonych (czy jak one tam mogą być bo tego jeszcze nie miałem na lekcjach xd)
A jeśli chcesz zmienić wzór napisz mi na pw jak jest, a jak ma być, bo znam dobrego fizyka :D
To mu pokaże ten rysunek i coś wymyśli :D
Jak on tego nie zrobi to zapomnij xd
jak coś to jutro ok 13-14 powinienem coś mieć :D
kamiloxed
Kot

Posty: 40
Dołączenie: 30 Gru 2012, 01:10
Ostatnio był: 11 Mar 2013, 18:11
Frakcja: Powinność
Ulubiona broń: Akm 74/2
Kozaki: 0

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez Juraszka w 13 Lut 2013, 00:10

Próbowałem coś wymyślić ale niestety matematyka i fizyka u mnie leżą... ale Smoq'u chciałbym tylko przypomnieć, że stalkerzy przeciwko którym walczymy (dalej nazywani botami), to "twory" komputerowe opierające się na matematyce - dlatego jak już znajdzie się rozwiązanie kwestii strzelania do poruszającego się celu, musi być przyjmowany jakiś zakres, bo jeżeli taki bot dokona w tym ułamku sekundy skomplikowane działanie, podświadomie znając dokładne położenie wroga, prędkość z jaką się porusza, prędkość pocisku - to najzwyczajniej będzie bezbłędnie trafiać w poruszający się cel.

O ile znajomość parametrów broni (prędkości pocisku) może być bez zakresu - zakładamy, że strzelec zna swoją broń - odległość od celu powinna być przyjmowana z marginesem +/- 5% (więcej, nie może być, bo skończyłoby się to takim cyrkiem, że botek nie trafiłby innego botka z odległości 10m, bo strzelający pomyślałby, że tamten jest 11m od niego i idzie znacznie szybciej niż na prawdę i strzeliłby 1-2m przed celem.


W skrócie:
- Jestem noga z przedmiotów ścisłych - powyższy post nie zawiera rozwiązania obecnie omawianego problemu,
- Wskazuję, o konieczności użycia zakresu, aby nie mieć sytuacji gdzie każdy pocisk trafia idealnie w punkt,
- podaje przykład takiej sytuacji.



Smoq'u pamiętasz pewnie wielką dyskusję na temat celności stalkerów (okolice 100-200 strony), gdzie nawet sam Ci podałem gotowe wpisy do m_stalker (czy jakoś tak) regulujące częstotliwość strzałów zależnie od odległości - Ci "starsi" użytkownicy pewnie pamiętają, jak upier**papier byli ludzie z AK - bo, jak sam Smoq mówił, ktoś w GSC wpadł na pomysł aby niecelność była określoną STAŁĄ wartością odchylenia od celu, co w wyniku dawało, że stalker mógł spudłować o 3m koło nas z odległości 5m (super zez) oraz z odległości 100m (niewiarygodna celność) - czyli celność "rosła" wraz z odległością. Nikt nie chce powrotu tamtych czasów :P
Związki na odległość to ch*j, a czołgi same się nie zatankują, pamiętaj.
Wave

Zostawiasz wóz na parkingu pod Tesco i jedziesz do sąsiedniego miasta to ch*j wie co się z nim może stać.
Wave
Awatar użytkownika
Juraszka
Łowca

Posty: 492
Dołączenie: 21 Cze 2010, 11:08
Ostatnio był: 21 Lut 2020, 16:06
Miejscowość: Gniezno
Frakcja: Samotnicy
Kozaki: 70

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez smoq2 w 13 Lut 2013, 12:24

@ Matt141 - Mówimy o przestrzeni 3d, czyli wszystkie pozycje mają 3 współrzędne (x,y,z). Obrazek jest rzutem z góry, ale to nie oznacza, że trzeciej współrzędnej nie ma.

@ kamiloxed - Jasne, świetnie by było gdyby napisał ten wzór fizyk. :) Chyba lepszej opcji nie ma. Pamiętej tylko aby podkreślić, że:

- w "danych" jest jeszcze prędkość kuli (zapomniałem tam tego dopisać)
- nie bierzemy pod uwagę opadu ani tarcia powietrza
- nie jest mi potrzebny żaden kąt, tylko same współrzędne punktu w który stalker ma celować aby trafić cel.

@ Juraszka - Nic się nie martw o extra celowanie. Finalny efekt ma wyglądać tak:

wycelowanie w cel -> nałożenie korekty na czas dolotu kuli -> nałożenie losowego odchylenia na skorygowaną pozycję w każdej z 3 płaszczyzn (x,y,z) aby imitować ludzką "niecelność"

Chodzi tylko o to, że bez tej korekty, stalker ma bardzo małe prawdopodobieństwo aby trafić w cel. Stąd tyle ludzi narzekało, że kompani nie mogą w nic trafić.
ImageImage
Awatar użytkownika
smoq2
Legenda

Posty: 1502
Dołączenie: 27 Cze 2010, 02:05
Ostatnio był: 09 Paź 2019, 06:35
Miejscowość: Wrocław/Zielona Góra
Frakcja: Czyste Niebo
Ulubiona broń: Chaser 13
Kozaki: 497

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez OmegaPL w 13 Lut 2013, 12:37

dałoby tu zastosować funkcje trygonometryczne ? mam rozumieć że chodzi ci smoq o to by obliczyć długość
cel---->pozycja po korekcie (stosując się do twojego obrazku)
z tego co pamiętam z tych funkcji to chyba musisz mieć co najmniej 2 dane spośród tych :
długość jednego z boku tego trójkąta
długość drugiego z boku tego trójkąta
kąt ostry między bokami (nawet nie próbujcie wsadzić tu kont prosty z tego trójkąta :P )
wtedy to już powinno np tak wyglądać :

tanges z kąta (cel---stalker---pozkorekcyjna ) = długość(cel---pozkorekcyjna) / długość(cel---stalker)
po przekształceniu :
długość(cel---pozkorekcyjna) = tanges z kąta (cel---stalker---pozkorekcyjna ) * długość(cel---stalker)

mam nadzieje że w stalkerze jest coś takiego jak kąt i ctg sin tg itp itd bo inaczej to trzeba szukać innego rozwiązania :P

wysłałeś wiadomość kiedy ja pisałem i widzę że kąty nie wchodzą w rachubę więc czekamy na inne rozwiązanie :)
Ostatnio edytowany przez OmegaPL, 13 Lut 2013, 12:42, edytowano w sumie 1 raz
OmegaPL
Kot

Posty: 38
Dołączenie: 30 Gru 2010, 00:04
Ostatnio był: 03 Lut 2015, 02:09
Frakcja: Wojsko
Ulubiona broń: TRs 301
Kozaki: 3

Re: [S.T.A.L.K.E.R: The Faction War]

Postprzez smoq2 w 13 Lut 2013, 12:40

@ OmegaPL - Potrzebne mi:

smoq2 napisał(a):(...) tylko same współrzędne punktu w który stalker ma celować aby trafić cel.


Nie jest mi potrzebna żadna długość. :)

Ehhh, większość podaje mi wskazówki jak to obliczyć, a ja potrzebuje wzór - gotowy produkt, bo wskazówek nic nie złoże.

Tak, mamy funkcje trygonometryczne, które można zastosować w kodzie:

math.sin(kąt)
math.cos(kąt)
math.tan(kąt)

[EDIT]

Kąty wchodzą w grę, pod warunkiem, że są tylko środkiem do celu, czyli uzyskania tych współrzędnych.

Tylko proszę, nie pisz mi jak dojść do rozwiązania, a sam wzór.

Można pomyśleć, że jestem leniwy, ale ten wzór to będzie tylko kropla w morzu kodu. Uważam, że jedną krople może wlać do garnka ktoś inny.
ImageImage
Awatar użytkownika
smoq2
Legenda

Posty: 1502
Dołączenie: 27 Cze 2010, 02:05
Ostatnio był: 09 Paź 2019, 06:35
Miejscowość: Wrocław/Zielona Góra
Frakcja: Czyste Niebo
Ulubiona broń: Chaser 13
Kozaki: 497

PoprzedniaNastępna

Powróć do Czyste Niebo

Kto jest na forum

Użytkownicy przeglądający to forum: Brak zarejestrowanych użytkowników oraz 1 gość