Teraz jest So 21 cze, 2025 14:22


Skrypt formacji ...

Archiwum działów sekcji Operation Flashpoint
  • Autor
  • Wiadomość
Offline
Avatar użytkownika

Marcin_BM

Porucznik

Porucznik

  • Posty: 330
  • Dołączył(a): N 25 lip, 2004 20:49

Skrypt formacji ...

PostCz 19 sie, 2004 20:33

Chciałbym się dowiedzieć czy da się napisać skrypt ustalający formacje np taką w której wojacy poruszali by się bliżej siebie gdyż jak zrobię misje w miescie to 4 osobowy squad mi sie rozlazi po calym terenie zamiast isc wąską kolumną za prowadzącym :(
Offline
Avatar użytkownika

Marcin_BM

Porucznik

Porucznik

  • Posty: 330
  • Dołączył(a): N 25 lip, 2004 20:49

PostPt 20 sie, 2004 12:38

Niby to ma jakoś pomóc ale skrypt tyczy się nurków z CoC i to w zanurzeniu i niewiem jak to przerobic na piechote i czy wojaki niebędą się pojawiać w odpowiedniej pozycji a nie trzymać zwięzłą formację ...

; AI helper
; As AI can't handle swimming, this script will help them out a bit.

#START
;set variables
LAR7speed=12

ENDHELPER=FALSE
_Group = _this
_listunits = units _Group
_A = 0
_B = count _listunits
_counter=1

#UNITCYCLE
~0.1
_ActUnit = vehicle (_listunits select _A)
? ((_ActUnit == vehicle Player) || ((_ActUnit distance (vehicle Player)) < (1+_A*3)) || (getpos _ActUnit select 2 > -1)): goto "SKIP"

_vectorX = (getpos (vehicle player) select 0)-(getpos _ActUnit select 0)
_vectorY = (getpos (vehicle player) select 1)-(getpos _ActUnit select 1)

(_listunits select _A) dowatch (getpos player)
? ((_ActUnit distance (vehicle Player)) > (1+_A*3)) : _ActUnit setvelocity [_vectorX/(1+_A*3), _vectorY/(1+_A*3), velocity _ActUnit select 2]
;? ((_ActUnit distance (vehicle Player)) < (1+_A*3)) : _ActUnit setvelocity [0,0,0]
goto "SKIP"

#SKIP
;hint format ["SKIPPED %1",_A]
_A=_A+1
?_B >_A:goto "UNITCYCLE"

? !ENDHELPER :goto "START"
#END
Ten który rzucił na mnie się niewiele szczęścia miał,Bo wypadł prosto mi na kły i krew trysnęła z rany
Offline
Avatar użytkownika

Mekto

Chorąży

Chorąży

  • Posty: 113
  • Dołączył(a): Wt 20 lip, 2004 11:09
  • Lokalizacja: Zamość

PostSo 21 sie, 2004 23:18

Moze daj im w waypoincie w polu szyk czy formacja kolumna....?
Offline
Avatar użytkownika

Panda

Chorąży

Chorąży

  • Posty: 179
  • Dołączył(a): N 09 sty, 2005 18:33
  • Lokalizacja: Warszawa

PostWt 15 lut, 2005 23:31

Przepraszam za długi post, ale staram się pisać wyczerpująco.
:arrow: "Setvelocity" na lądzie nie wróży dobrze... Nie sądzę, żeby to o to chodziło.
Cytowany skrypt nie powoduje porusznia się(chodzenia) jednostek - on NIMI porusza (przypuszczam, że na lądzie ludzie chodziliby nie poruszając nogami, a nie o to idzie).
Moze daj im w waypoincie w polu szyk czy formacja kolumna....?

:arrow: Nie, bo jeśli poruszasz się kolumną pod ścianą budynku, po czym odwrócisz się do niej plecami i przejdziesz krok do przodu, to twoi ludzie pobiegną wokół budynku i staną z drógiej jego strony.
:arrow: Teraz coś od siebie dam:
Skrypt w 100% sprawdzony. Sam pisałem właśnie z myślą o miastach i sam go używam i wygląda naturalnie (a te debile wreszcie nie biegają wokół budynków ze złej strony...).
W razie problemów/sugestii mogę poprawić.
_s1=_this select 0
_s2=_this select 1
_s3=_this select 2
_s4=_this select 3
_groupspacing=_this select 4
_t=_this select 5

_p1 = "logic" camcreate getpos _s1
_p2 = "logic" camcreate getpos _s2
_p3 = "logic" camcreate getpos _s3
_p4 = "logic" camcreate getpos _s4
_p5 = "logic" camcreate getpos _s4
_p6 = "logic" camcreate getpos _s4
_p7 = "logic" camcreate getpos _s4
_p8 = "logic" camcreate getpos _s4

#loop
@(((_p1 distance _s1)>_groupspacing/2)&&(not DontfollowMe))

_p8 setpos getpos _p7
_p7 setpos getpos _p6
_p6 setpos getpos _p5
_p5 setpos getpos _p4
_p4 setpos getpos _p3
_p3 setpos getpos _p2
_p2 setpos getpos _p1
_p1 setpos getpos _s1

_s2 move getpos _p2
~_t
_s3 move getpos _p5
~_t
_s4 move getpos _p8
goto "loop"

Powyższy skrypt używałem w gęstej dżungli i w miastach na wyspie Gaia(rozległe są...). Najlepiej wygląda, gdy żołnierze stoją.
:arrow: Skrypt powoduje, że trzech żołnierzy podąża DOKłADNIE tą samą trasą co gracz.
:arrow: żeby działał żołnierze muszą być każdy w oddzielnej grupie:
[sol2]join grpNull;[sol3]join grpNull;[sol4]join grpNull;[ap,sol2,sol3,sol4,2,1]exec "skrypt.sqs"
gdzie: 2-odstęp między wojakami; 1-czas, który czekają w każdym punkcie.
:arrow: Jeżeli chcesz aby byli z tobą w jednej grupie, to zamień "move" na "domove", ale wtedy musisz i tak wyłączyć radio, żeby nie słyszeć co chwila "unit ready";
:arrow: Zmienna (globalna) dontfollowme pozwala wyłączyć skrypt na chwilę np. po to, żeby wojacy wsiedli do pojazdu, albo na życzenie gracza dołączyli do jego grupy (poprzez triggery).
:!: Nie wolno odłączać ludzi od gracza pisząc np. [s1,s2,s3]join grpnull - trzeba pisać polecenie dla każdego oddzielnie, bo jeśli napiszemy tak, to połączą sią oni w trzyosobową grupę.
:arrow: Można dać
@(((_pos distance _s1)>_groupspacing)&&(not DontfollowMe))&&(speed _s1==0)
- wtedy żołnierze dodatkowo zatrzymują się TYLKO tam, gdzie ty stawałeś pokonując tę samą trasę (w efekcie osłaniają cię w mieście z pozycji, które ty uznałeś wcześniej za dobre - nie stają np. na środku drogi - a to wygląda, jakby myśleli :idea: ).
Dziękuję tym, któży dotrwali aż dotąd :spoko: .

Dodano: Ops! dopiero teraz spojrzałem na daty - temat już nieaktualny...
Ostatnio edytowano Pn 05 wrz, 2005 16:56 przez Panda, łącznie edytowano 2 razy
Offline
Avatar użytkownika

kaczucha

Chorąży

Chorąży

  • Posty: 154
  • Dołączył(a): Wt 15 lip, 2008 18:22

PostWt 29 lip, 2008 17:35

sorry że odświeżam ale nie mam zbyt dużego doświadczenia z plikami .sqs, mógłby mi to ktoś bardziej łopatologicznie i z chłopskim dialektem wytłumaczyć?

dzięki :cisza:
Nachwyt szeroko i jesteś mistrzem.

;p
Offline
Avatar użytkownika

Jerry

Pułkownik

Pułkownik

  • Posty: 2598
  • Dołączył(a): Pn 19 lip, 2004 21:28
  • Lokalizacja: 52° 14'N, 20° 56'E

PostWt 29 lip, 2008 17:46

To da się bardziej?
Obrazek
Offline
Avatar użytkownika

Klimueres

Porucznik

Porucznik

  • Posty: 298
  • Dołączył(a): Śr 06 lut, 2008 12:18
  • Lokalizacja: Kraków

PostŚr 30 lip, 2008 00:05

kaczucha napisał(a):sorry że odświeżam ale nie mam zbyt dużego doświadczenia z plikami .sqs, mógłby mi to ktoś bardziej łopatologicznie i z chłopskim dialektem wytłumaczyć?

dzięki :cisza:


kaczucha w 2 tematach jest to samo, w tych samych dwóch tematach ty się pytasz o to samo to ocb ?? Tamten ci zablokowali to piszesz tutaj, przecież w tamtym temacie miałeś już odpowiedź ...Zamknięty temat

Niektórych trudno zrozumieć ...
"Najszybszym sposobem na zakończenie wojny jest jej przegranie."
George Orwell - Eric Arthur Blair 25 czerwca 1903 - 21 stycznia 1950
Offline
Avatar użytkownika

kaczucha

Chorąży

Chorąży

  • Posty: 154
  • Dołączył(a): Wt 15 lip, 2008 18:22

PostŚr 30 lip, 2008 01:00

ciebie też mi ciężko zrozumieć :neutral:

nie mam zbyt dużego doświadczenia z plikami .sqs


a poza tym prosze o pomoc bo itak nie rozumiem co tu jest napisane, robie tak:
ten długi cytat co napisał Panda wklejam do notatnika i zapisuje jako .sqs. Plik ten wklejam do folderu z zapisaną misją, a w edytorze wstawiam jednostki nazywając je kolejno s1, s2, s3, s4, a siebie ap. Każda z jednostek należy do oddzielnej grupy. Wstawiam wyzwalacz, a w nim:

Kod: Zaznacz cały
[s2]join grpNull; [s3]join grpNull; [s4]join grpNull; [ap,s2,s3,s4,2,1]exec "skrypt.sqs"


mimo to wszyscy stoją w miejscu :co:
Nachwyt szeroko i jesteś mistrzem.

;p
Offline
Avatar użytkownika

Jerry

Pułkownik

Pułkownik

  • Posty: 2598
  • Dołączył(a): Pn 19 lip, 2004 21:28
  • Lokalizacja: 52° 14'N, 20° 56'E

PostŚr 30 lip, 2008 01:52

Jak tak robisz, to powodzenia...
Obrazek
Offline
Avatar użytkownika

Klimueres

Porucznik

Porucznik

  • Posty: 298
  • Dołączył(a): Śr 06 lut, 2008 12:18
  • Lokalizacja: Kraków

PostŚr 30 lip, 2008 07:15

Ja też w tym dobry nie jestem ale nie lepiej by było wpisać po prostu aP exec "skrypt.sqs", w wyzwalaczu aktywowanym przez zachód(jak gracz to zachód) i dać go na graczu
"Najszybszym sposobem na zakończenie wojny jest jej przegranie."
George Orwell - Eric Arthur Blair 25 czerwca 1903 - 21 stycznia 1950
Offline
Avatar użytkownika

reyhard

Pułkownik

Pułkownik

  • Posty: 1455
  • Dołączył(a): So 12 mar, 2005 09:56
  • Lokalizacja: wielkiego brata

PostŚr 30 lip, 2008 07:57

nie, nie lepiej, parametry po coś są. Sprawdź może, czy nie zrobiłeś gdzieś literówki przy nazywaniu skryptu lub czy na pewno jest to plik .sqs (w ekslporerze -> Narzędzia -> Opcje Folderów -> Widok -> odznacz Ukryj rozszerzenia znanych typów)
Po prostu przyjmij do wiadomości, że nadciąga rewolucja proletariacka, lada dzień Chavez z Castro i Bin Ladenem nadjadą na białym traktorze i uwolnią ciemiężony lud polski spod władzy międzynarodowego kapitału.
Offline
Avatar użytkownika

kaczucha

Chorąży

Chorąży

  • Posty: 154
  • Dołączył(a): Wt 15 lip, 2008 18:22

PostŚr 30 lip, 2008 16:55

dobra działa już pisząc

Kod: Zaznacz cały
ap exec "skrypt.sqs"
Nachwyt szeroko i jesteś mistrzem.

;p
Online

xersius

Pułkownik

Pułkownik

  • Posty: 99987
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: Skrypt formacji ...

PostPt 13 gru, 2024 11:07

инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинйоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфо
инфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоинфоtuchkasинфоинфо
Online

xersius

Pułkownik

Pułkownik

  • Posty: 99987
  • Dołączył(a): Pn 29 lip, 2024 15:01

Re: Skrypt formacji ...


Powrót do Operation Flashpoint

Kto przegląda forum

Użytkownicy przeglądający ten dział: xersius i 10 gości

cron