Teraz jest So 18 kwi, 2026 09:18


Zły kierunek :/

Archiwum działów sekcji Operation Flashpoint
  • Autor
  • Wiadomość
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 01 maja, 2007 20:32

a czy ten element logiczny nazwałeś "element" chociaż ?
Obrazek
Offline

PoP

Chorąży

Chorąży

  • Posty: 238
  • Dołączył(a): Pt 14 sty, 2005 17:11

PostWt 01 maja, 2007 20:38

A może zajmiesz się czymś na miarę swoich możliwości? Np. projektuj mapy do szachów, w paintcie to fajnie wychodzi - możesz tam zmieniać kolor, powierzchnie itd...
Offline

Wings303

Szeregowy

Szeregowy

  • Posty: 18
  • Dołączył(a): N 11 mar, 2007 17:51

PostŚr 02 maja, 2007 10:01

:neutral: No domyslam się że to tewoje życiowe hobby skoro mnie do tego namawiasz...
___________________
Dzieki jerry juz działa :d
Offline
Avatar użytkownika

Sejtan

Major

Major

  • Posty: 676
  • Dołączył(a): Pn 19 lip, 2004 21:26
  • Lokalizacja: Starogard Gdański

PostŚr 02 maja, 2007 10:53

@PoP dobrze, ze Ty byłeś mistrzem w edytorze na początku zabawy z OFP :/

@Wings spróbuj zrobić tak:

Wstawiasz wyzwalacz (wymiary 0x0, żeby bałaganu nie było) w miejsce gdzie ma dojść grupa wojaków i nazywasz go p1. żołnierzom, którzy są w grupie wpisujesz w iniciacji this doMove position p1. W efekcie, każdy wojak, który ma wpisaną tą komende będzie szedł do wyzwalacza "p1" możliwie najkrótszą drogą. Dobrze jest też wpisać group this allowFleeing 0 dowódcy grupy (tak jak mówił Maćko). Wtedy grupa będzie nieustraszona :D i nie będzie się wycofywać. Można jeszcze dodać group this setSpeedMode "LIMITED" albo "NORMAL" albo "FULL". Ta komenda określa prędkość (kolejno: ograniczona, normalna, pełna) z jaką będzie się poruszała grupa. Mam nadzieje, że nie namąciłem zabardzo ;P
Offline

Wings303

Szeregowy

Szeregowy

  • Posty: 18
  • Dołączył(a): N 11 mar, 2007 17:51

PostŚr 02 maja, 2007 11:04

Nie wręcz przeciwnie... ale jak napisze w inicjacji this doMove position p1
to pisze nieznany operator :?
Offline
Avatar użytkownika

Maćko

Generał

Generał

  • Posty: 3140
  • Dołączył(a): Pt 29 gru, 2006 23:33
  • Lokalizacja: Radom

PostŚr 02 maja, 2007 12:24

Niemożliwe, przed chwilą sprawdzałem i to działa, więc wytłumaczę jeszcze raz:
1.Wojakowi wpisz w inicjacji: this doMove position p1 .
2.Element logiczny nazywasz p1.

To nie może nie działać bo przed chwilą sprawdzałem i działało, jeśli teraz nie zadziała to ty robisz coś źle. :/
Obrazek
Obrazek
-------------
MOBO: MSI H110M PRO-D | CPU: Core i3 6100@3.7GHz | RAM: 8GB DDR4 2400@2133 MHz CL12 Goodram Play |
GPU: Asus GTX 760 DirectCU II 2GB GDDR5 | SSD: Samsung 850 EVO 250GB | HDD: Samsung HD502HJ 500GB |
PSU: Corsair VS450 | Case: SilentiumPC Brutus S20 | FAN: SilentiumPC Mistral 120 mm
Offline
Avatar użytkownika

Matte

Chorąży

Chorąży

  • Posty: 246
  • Dołączył(a): Pn 28 lis, 2005 19:09

PostŚr 02 maja, 2007 16:23

this doMove (getPos p1) Nie ma prawa nie zadziałać
Obrazek
Offline
Avatar użytkownika

Mittchels

Szeregowy

Szeregowy

  • Posty: 31
  • Dołączył(a): Cz 14 cze, 2007 20:54

PostWt 26 cze, 2007 23:12

Sorry że naruszam tak stary temat ale jak zrobić aby ten skrypt zadziałał

Kod: Zaznacz cały
#petla
u1 domove (getpos element);
~1 "
goto "petla"


Bo u mnie nie działa
Offline
Avatar użytkownika

Kadryl

Major

Major

  • Posty: 883
  • Dołączył(a): Cz 14 wrz, 2006 14:04
  • Lokalizacja: Wa-wa

PostŚr 27 cze, 2007 08:04

Nazwij element logiczny np.: cel
Wpisz w wyzwalaczu dla żołnierza u1 w aktywacji:
[] exec "idz.sqs"
Ustaw wyzwalacz na wielokrotną aktywację

Stwórz plik idz.sqs

W pliku napisz następujący kod:
Kod: Zaznacz cały
#petla
u1 domove (getpos cel)
~20
goto "petla"
exit

"~20" - jak dasz 1 sekundę interwału między poleceniami to AI może zgłupieć i kręcić się w miejscu.

i korzystaj z życia
Offline
Avatar użytkownika

Mittchels

Szeregowy

Szeregowy

  • Posty: 31
  • Dołączył(a): Cz 14 cze, 2007 20:54

PostCz 28 cze, 2007 09:15

Wielkie dzięki wszystkodziała :grin: Mam jeszcze jedno pytanie... Jak spowodować aby po dojściu gracza 1 do waypointa to element logiczny (cel) zmieni lokacje np... w miejsce markera o nazwie d1??
Offline
Avatar użytkownika

Kadryl

Major

Major

  • Posty: 883
  • Dołączył(a): Cz 14 wrz, 2006 14:04
  • Lokalizacja: Wa-wa

PostCz 28 cze, 2007 09:47

Można tak:
Kod: Zaznacz cały
#petla
u1 domove (getpos cel)
~20
? (unitReady u1): goto "dalej"
goto "petla"
#dalej
u1 domove (getpos d1)
exit


Albo tak jeżeli w każdym punkcie masz problem z AI:
Kod: Zaznacz cały
pkt = [cel, d1, d2, d3]
;gdzie: cel, d1 , d2 , d3 to nazwy kolejnych obiektów logicznych - można do woli dodawać kolejne punkty trasy
_i = 0
#petla
u1 domove (getpos (pkt select _i))
~20
? (unitReady u1): goto "dalej"
goto "petla"
#dalej
? (_i > 3): goto "koniec"
; (_i > 3) - dla 4 obiektów logicznych (pierwszy ma wartość zero)
_i = _i+1
goto "petla"
#koniec
exit
Offline
Avatar użytkownika

Mittchels

Szeregowy

Szeregowy

  • Posty: 31
  • Dołączył(a): Cz 14 cze, 2007 20:54

PostCz 28 cze, 2007 10:01

A nie da się tego zrobić w podobny sposób jak z markerami??
Dochodze do wp i tam wcześniej wpisałem "MarkerOne" setMarkerPos getMarkerPos "MarkerTwo"
CO spowoduje że marker1 będzie na miejscu marker2 i np.
ja bym chciał żeby było coś takiego że jak dojde do tego wp to element logiczny wskakuje na miejsce markera...

Lub jesli to możliwe aby u1 szedł do markera o nazwie d1
ja wpisuje w inilacji u1 domove (getmarkerpos d1) i nic :cry:
Teoretycznie zachud ma wp a wschód ma element log z
Kod: Zaznacz cały
domove (getpos d1)


I chce aby po dojściu zachodu do tego wp ten element zmienił lokacje żeby wschud szedł w innym kierunku
Offline
Avatar użytkownika

Kadryl

Major

Major

  • Posty: 883
  • Dołączył(a): Cz 14 wrz, 2006 14:04
  • Lokalizacja: Wa-wa

PostCz 28 cze, 2007 10:50

O kurde, ale zakręcony tekst :]

Jeżeli problem polega na aktywowaniu punktów trasy to wszystko można zrobić tylko na Waypointach tzn. dla wschodu zrób pierwszy punkt trasy np. "a" gdzie wpiszesz następujący warunek: ruch == 1 (dwa znaki równości !)
dodaj następnie punkt trasy np. "z" tam gdzie chcesz aby wschód doszedł docelowo.
Dla zachodu w punkcie trasy "wp" w aktywacji wpisz: ruch = 1
Taki ustawienie spowoduje że: Wschód dojdzie do punktu "a" czekając, aż Zachód dojdzie do punktu "wp". Gdy to się stanie Wschód ruszy do punktu "z"

Jeżeli chodzi o markery i obiekty logiczne to lepiej ich nie mieszać chyba, że chcesz wprowadzić do gry losowość położenia jednostek lub wywoływać je ze skryptów (pliki sqs).
Dla obiektów i elemtów logicznych używa się zapisu: setpos getpos
natomiast dla markerów: setmarkerpos getmarkerpos
czyli ustawienie elementu logicznego cel na markerze "d1" to: cel setpos getmarkerpos "d1" - zwróć uwagę na to że nazwa markera musi być cudzysłowiu

A tak ogólnie polecam kupić kilka dobrych piw oraz wydrukować i przeczytać poradnik Spika: http://www.ofp.bmj.pl/ (dział Edytor) :piwo:
Offline
Avatar użytkownika

Mittchels

Szeregowy

Szeregowy

  • Posty: 31
  • Dołączył(a): Cz 14 cze, 2007 20:54

PostCz 28 cze, 2007 16:41

Wilekie dzieki !! Wszysko działa!! :spoko: :spoko: :spoko: :spoko:
Poprzednia strona

Powrót do Operation Flashpoint

Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 12 gości