Invasion 44 C47A problem
Moderatorzy: kondor, Inkwizytor
- seba200
- Posty: 133
- Rejestracja: 02 października 2007, 16:59
- ID Steam:
- ID gracza: 0
- Lokalizacja: Wawa/Otwock
Invasion 44 C47A problem
Witam wszystkich:) Gram w Invasion 44.Chcę zrobić start samolotu z lotniska,stawiam obok dwóch pilotów którzy mają wejść do niego (a jest to C47A ),gdy do niego wchodzą od razu odpalają silniki i chcą wystartować mimo że dałem w punkcie nawigacji czekać,stać np.60sek.Zawsze startują nawet gdy stawiam w edytorze ten lub inny samolot nawet jeśli każe mu nic nie robić! Jest chyba jakaś komenda na wyłączenie silników gdy wchodzą do pojazdów,samolotów... "engine on/off" ale coś źle wpisuję tą komendę i mi nie działa:(. Może drugim rozwiązaniem byłoby wymuszenie czekania pilota na lotnisku gdy wsiądzie do samolotu i poczekania aż wszyscy wsiądą do ładowni tzn. drugi oddział który wchodzi do cargo z tyłu, bo tak piloci startują a oddział nie wchodzi do samolotu bo nie zdążył:( Wiem że piloci mogą być połączeni z grupą i problem rozwiązany bo poczekają na resztę ale nie o to mi chodzi, chcę żeby piloci nie byli połączeni z oddziałem który wchodzi do ładowni bo w późniejszym czasie ten oddział będzie zrzucony na spadochronach a piloci muszą wrócić do bazy.Proszę o pomoc, męczę się z tym już bardzo długo i nic,stoję w miejscu dlatego zdecydowałem się że napiszę na forum.

Re: Invasion 44 C47A problem
W punkcie nawigacji pilotów wsiadaj, wpisz
Spowoduje to, że zatrzyma tych pilotów, następnie w punkcie nawigacyjnym spadochroniarzy, tu pn. nawig. typu wsiadaj, w urucham. Wpisz
To spowoduje odblokowanie pilotów i wtedy powinni startować samolotem.
EDIT:
Można prościej. Dajesz pilotom nawigacje wsiadać centralnie na samolot, następnie dajesz nawigację załaduj i potem ruszaj do.
Spadochroniarzom dajesz nawigacje wsiadaj, blisko samolotu i synchronizujesz ten punkt z punktem pilotów typu załaduj.
Piloci nie wystartują dopuki spadochroniarze wszyscy nie wsiądą. Sprawdzałem na czystej Arma 2 i działa
Kod: Zaznacz cały
{_x DisableAI"MOVE"} foreach units group nazwa_lidera_grupy_pilotów
Kod: Zaznacz cały
{_x EnableAI"MOVE"} foreach units group nazwa_lidera_grupy_pilotów
EDIT:
Można prościej. Dajesz pilotom nawigacje wsiadać centralnie na samolot, następnie dajesz nawigację załaduj i potem ruszaj do.
Spadochroniarzom dajesz nawigacje wsiadaj, blisko samolotu i synchronizujesz ten punkt z punktem pilotów typu załaduj.
Piloci nie wystartują dopuki spadochroniarze wszyscy nie wsiądą. Sprawdzałem na czystej Arma 2 i działa
- seba200
- Posty: 133
- Rejestracja: 02 października 2007, 16:59
- ID Steam:
- ID gracza: 0
- Lokalizacja: Wawa/Otwock
Re: Invasion 44 C47A problem
Artek wielkie dzięki:) pierwsza metoda nie działa niestety bo piloci i tak startują mimo że mają zablokowany ruch lecz druga metoda działa:)...Mam jeszcze dwa pytanka do Ciebie,krótko opiszę swoja misję. Są dwa lotniska, aliantów i niemieckie...Amerykanie startują z lotniska a ich zadaniem jest zniszczyć i zająć lotnisko niemieckie które jest silnie strzeżone artylerią przeciw lotniczą, są samoloty junkers87 które startują gdy alianci zostaną wykryci przez Niemców oraz dużo piechoty.Najpierw z lotniska aliantów staruje 10 samolotów szturmowych typu splitfire, mustang, hurricane...mają około 10-15min niszczyć co się rusza i wracać do bazy bo szybko kończy się im amunicja.Wszystko super tylko jak upłynie czas 10-15min. to są spłukani z amunicji i mimo że mają wracać do bazy latają bezsensownie nad lotniskiem Niemieckim.W punktach nawigacyjnych mam ustawione ( Nigdy nie strzelać,zwarta kolumna,pełna,beztrosko)...tak się dzieje zwykle gdy nie mają amunicji.Niższy czas nie wchodzi w grę to jest totalne minimum atakowania lotniska! Możesz mi podać lub ktoś inny komendę która wymusi na flocie powrót do bazy?? Wiem raczej że w punktach nawigacyjnych w opcji uruchamianie można dodatkowo wpisać zachowanie,szyk,prędkość danej grupy.Czy da się zrobić np. żeby poszczególny samolot wracał do bazy po skończeniu amunicji lub tęż ją oszczędzał?? Później po flocie szturmowej lecą trzy samoloty typu C47A i następuje zrzut żołnierzy Airborn ale to już mam problem rozwiązany z tą kwestią:)) Proszę o pomoc i pozdrawiam wszystkich Armowiczów:)))

Re: Invasion 44 C47A problem
Z tym może być problem, dlatego że w Arma 2 AI ma swoją inteligencję i czasami ignoruje rozkazy, oraz wytyczne i wykonuje je dopiero wtedy, kiedy uzna sobie za stosowne.
Oczywiście można popróbować to ominąć.
Daj samolotom ostatni punkt nawigacyjny typu ruszaj do, a w uruchamianiu punktu, komendę do uruchamiania skryptu np.
A w skrypcie sqf o nazwie samoloty umieść
Objaśnienie:
Grupa staje się neutralna dla wroga- nie jest ostrzeliwana.
grupa dostaje zachowanie na beztrosko
grupa ucieka jak tylko nawiąże kontakt z wrogiem
Grupa najkrótszą drogą udaje się do obiektu o nazwie (nazwa_obiektu)
Nie wiem czy zadziała, bo AI pomimo wszystko może się zbuntować
Oczywiście można popróbować to ominąć.
Daj samolotom ostatni punkt nawigacyjny typu ruszaj do, a w uruchamianiu punktu, komendę do uruchamiania skryptu np.
Kod: Zaznacz cały
Null=[]execVM"samoloty.sqf";
Kod: Zaznacz cały
Sleep 600; // lub 900
{_x SetCaptive true; _x setBehaviour " CARELESS"; _x AllowFleeing 1 } foreach units group nazwa_lidera_grupy_samolotów;
Sleep 5;
{_x DoMove GetPos nazwa_obiektu.} foreach units group nazwa_lidera_grupy_samolotów;
Kod: Zaznacz cały
_x SetCaptive true;
Kod: Zaznacz cały
_x setBehaviour " CARELESS";
Kod: Zaznacz cały
_x AllowFleeing 1
Kod: Zaznacz cały
_x DoMove GetPos nazwa_obiektu
Nie wiem czy zadziała, bo AI pomimo wszystko może się zbuntować
- seba200
- Posty: 133
- Rejestracja: 02 października 2007, 16:59
- ID Steam:
- ID gracza: 0
- Lokalizacja: Wawa/Otwock
Re: Invasion 44 C47A problem
w punkcie nawigacyjnym samolotów wpisując te cztery komendy które podałeś jest już o niebo lepiej:) Chociaż jakieś 80% wraca a ze dwa samoloty krążą bezsensu nad lotniskiem wroga,wypada różnie...myślę ze zależy to od tego którą nogą pilot wstanie rano i od jego nastroju he,he:) Dzięki za pomoc Artek!! Pozdrawiam:)

-
- Posty: 85
- Rejestracja: 01 maja 2008, 21:42
- ID Steam:
- Numer GG: 12755589
- ID gracza: 0
Re: Invasion 44 C47A problem
Witam,
Stwierdziłem że nie będę otwierał nowego wątku bo tematyka jest podobna więc się podczepię. Ja również gram w i44 i mam pytanie odnośnie desantu żołnierzy z c-47 tylko w moim przypadku sprawa jest taka że chciałbym aby wszystkie czynnośći wykonało AI. czyli: Lecą samoloty około 10 c-47 w każdym z nich jest jedna drużyna airborn i chciałbym aby w wyznaczonym miejscu oni wyskoczyli z samolotu. Szukałem po forach komend i znalazłem aby taką "banan1 action ["eject", helikopter_bananów6]" przy czym wiadomo że "banany" to nazwa jednostek ;d. Zastanawiałem się jak to zrobić ale jakoś nie doszedłem do niczego sensownego. Pytanie jest takie czy istnieje jedna komenda która rozkazuje całej grupie wyskok z samolotu i nie wiem czy będzie to wyglądało tak że żołnierze będą wyskakiwać jeden po drugim a nie cała drużyna na raz, zadowolę się jeżeli i wszyscy na raz wyskoczą ale wiadomo że chciałbym aby to wyglądało bardziej realnie
Dziękuje !
Stwierdziłem że nie będę otwierał nowego wątku bo tematyka jest podobna więc się podczepię. Ja również gram w i44 i mam pytanie odnośnie desantu żołnierzy z c-47 tylko w moim przypadku sprawa jest taka że chciałbym aby wszystkie czynnośći wykonało AI. czyli: Lecą samoloty około 10 c-47 w każdym z nich jest jedna drużyna airborn i chciałbym aby w wyznaczonym miejscu oni wyskoczyli z samolotu. Szukałem po forach komend i znalazłem aby taką "banan1 action ["eject", helikopter_bananów6]" przy czym wiadomo że "banany" to nazwa jednostek ;d. Zastanawiałem się jak to zrobić ale jakoś nie doszedłem do niczego sensownego. Pytanie jest takie czy istnieje jedna komenda która rozkazuje całej grupie wyskok z samolotu i nie wiem czy będzie to wyglądało tak że żołnierze będą wyskakiwać jeden po drugim a nie cała drużyna na raz, zadowolę się jeżeli i wszyscy na raz wyskoczą ale wiadomo że chciałbym aby to wyglądało bardziej realnie

To ja postawię pierwszy moją stopę na polu walki i ja ostatni z niej zejdę
-
- Posty: 511
- Rejestracja: 04 marca 2011, 06:30
- ID Steam:
- ID gracza: 209283
- Lokalizacja: Sieradz
Re: Invasion 44 C47A problem
Ja robię np w misji plik
init.sqs a w nim:
s0 assignascargo heli1
s1 assignascargo heli1
s2 assignascargo heli1
s3 assignascargo heli1
s4 assignascargo heli1
s0 moveincargo heli1
s1 moveincargo heli1
s2 moveincargo heli1
s3 moveincargo heli1
s4 moveincargo heli1
heli1 FlyInHeight 150
exit
gdzie s0-s4 to nazwy żołnierzy z danej grupy postawionej na mapie, która ma być przewożona samolotem, np grupy mogą mieć waypointy typu ruszaj do miejsca do którego chcesz ,żeby pobiegli itp. heli1 to nazwa samolotu czy helikoptera flyinhight 150 to na jakiej wysokości na początku ma lecieć samolot.
Potem robie drugi plik:
zrzut.sqs a wnim:
unassignVehicle s0; s0 action ["eject", heli1]
~0.7
unassignVehicle s1; s1 action ["eject", heli1]
~0.7
unassignVehicle s2; s2 action ["eject", heli1]
~0.7
unassignVehicle s3; s3 action ["eject", heli1]
~0.7
unassignVehicle s4; s4 action ["eject", heli1]
~0.7
exit
Na mapie np wstaw jakiś obiekt np: niewidzialne lotnisko, wrak czegoś i nazwij np: desant. Potem wstaw wyzwalacz i w oknie warunek wpisz np
heli1 distance desant <500
a w oknie przy aktywacji wpisz
gracz1 exec "zrzut.sqs"
gdzie gracz1 to np jednostka-żołnierz co nią ty kierujesz. Samolot musi mieć trasę tak ustawioną żeby przelatywał gdzieś w odległości 500 m od punktu desant. Gdy ten warunek zostanie spełniony wszyscy żołnierze s0-s4 po kolei wyskoczą z samolotu.
Metoda jest trochę pracochłonna jeśli chciałbyś mieć dużo samolotów i spadochroniarzy bo trzeba by dużo jednostek nazwać. ale jak robisz jakiś niewielki desant z20-40 żołnierzy to idzie szybko powpisywać zawsze można uzyć ctrl-ci ctrl-v, żeby było szybciej.
Ps: Da się to pewnie zrobić dla całych grup bez nazywania każdej jednostki ale nie pamiętam jak.
init.sqs a w nim:
s0 assignascargo heli1
s1 assignascargo heli1
s2 assignascargo heli1
s3 assignascargo heli1
s4 assignascargo heli1
s0 moveincargo heli1
s1 moveincargo heli1
s2 moveincargo heli1
s3 moveincargo heli1
s4 moveincargo heli1
heli1 FlyInHeight 150
exit
gdzie s0-s4 to nazwy żołnierzy z danej grupy postawionej na mapie, która ma być przewożona samolotem, np grupy mogą mieć waypointy typu ruszaj do miejsca do którego chcesz ,żeby pobiegli itp. heli1 to nazwa samolotu czy helikoptera flyinhight 150 to na jakiej wysokości na początku ma lecieć samolot.
Potem robie drugi plik:
zrzut.sqs a wnim:
unassignVehicle s0; s0 action ["eject", heli1]
~0.7
unassignVehicle s1; s1 action ["eject", heli1]
~0.7
unassignVehicle s2; s2 action ["eject", heli1]
~0.7
unassignVehicle s3; s3 action ["eject", heli1]
~0.7
unassignVehicle s4; s4 action ["eject", heli1]
~0.7
exit
Na mapie np wstaw jakiś obiekt np: niewidzialne lotnisko, wrak czegoś i nazwij np: desant. Potem wstaw wyzwalacz i w oknie warunek wpisz np
heli1 distance desant <500
a w oknie przy aktywacji wpisz
gracz1 exec "zrzut.sqs"
gdzie gracz1 to np jednostka-żołnierz co nią ty kierujesz. Samolot musi mieć trasę tak ustawioną żeby przelatywał gdzieś w odległości 500 m od punktu desant. Gdy ten warunek zostanie spełniony wszyscy żołnierze s0-s4 po kolei wyskoczą z samolotu.
Metoda jest trochę pracochłonna jeśli chciałbyś mieć dużo samolotów i spadochroniarzy bo trzeba by dużo jednostek nazwać. ale jak robisz jakiś niewielki desant z20-40 żołnierzy to idzie szybko powpisywać zawsze można uzyć ctrl-ci ctrl-v, żeby było szybciej.
Ps: Da się to pewnie zrobić dla całych grup bez nazywania każdej jednostki ale nie pamiętam jak.
-
- Posty: 85
- Rejestracja: 01 maja 2008, 21:42
- ID Steam:
- Numer GG: 12755589
- ID gracza: 0
Re: Invasion 44 C47A problem
Dzięki wielkie. Jak będę miał dłuższy czas to sprawdzę czy się z tym uporam i napiszę jak mi poszło
a co do tego że cała grupa to jest taka komenda i nazywa się ona : "
{_x moveincargo banan;} forEach units group this " jest to komenda która powoduje że grupa żołnierzy znajduje się już w danym pojezdzie a samą komendę wpisuje się tylko w dowódcę, może jakieś części tego można by było użyć. Nie wiem ma ktoś jakiś pomysł ?

{_x moveincargo banan;} forEach units group this " jest to komenda która powoduje że grupa żołnierzy znajduje się już w danym pojezdzie a samą komendę wpisuje się tylko w dowódcę, może jakieś części tego można by było użyć. Nie wiem ma ktoś jakiś pomysł ?
To ja postawię pierwszy moją stopę na polu walki i ja ostatni z niej zejdę
-
- Posty: 511
- Rejestracja: 04 marca 2011, 06:30
- ID Steam:
- ID gracza: 209283
- Lokalizacja: Sieradz
Re: Invasion 44 C47A problem
Tylko ja widzę jeden możliwy problem jeśli odnosimy się do całej grupy. Mamy kilka grup to każdemu dowódcy grupy dajemy jakąś nazwę jeśli dobrze kojarzę np: dow1,dow2 itd, żeby było odniesienie do grup. (chyba, że grupy nie muzą mieć nazw to wtedy nie powinno być problemu). Reszta jednostek w grupach nie ma swoich nazw. A co się stanie jeśli samolot zostanie ostrzelany przed miejscem zrzutu i przypadkiem zginie dowódca grupy ten z nazwą, skrypt chyba nie zadziała (bo odnosi się do grupy dow1, a dowódca grupy dow1 nie żyje) i nikt nie wyskoczy i polecą sobie dalej samolotem. Wiadomo, że dowództwo przejmie kolejny w grupie ale on jest bez nazwy, czy mimo to "gra" będzie nadal wiedziała, że ta komenda odnosiła się do tej grupy?
W mojej metodzie z każdą jednostką nazwaną skrypt zadziała, bo na pewno wyrzuci całą grupę z nazwami, a kolejny dowodzący poprowadzi drużynę po kolejnych waypointach.
Możliwe, że się mylę z tymi moimi przemyśleniami
i wszystko będzie jednak ok. Nie wiem nigdy nie stosowałem komend z tym "for each unit" odnoszącym się do całej grupy.
W mojej metodzie z każdą jednostką nazwaną skrypt zadziała, bo na pewno wyrzuci całą grupę z nazwami, a kolejny dowodzący poprowadzi drużynę po kolejnych waypointach.
Możliwe, że się mylę z tymi moimi przemyśleniami

Re: Invasion 44 C47A problem
(group dw1) czyli cała grupa nazywa się dw1, nie ważne czy dowódca ma tylko tą nazwę, ta nazwa odnosi się do całej grupy, nawet gdy zostanie jeden członek z najniższą rangą w grupie, to komenda dalej działa. _x odnosi się do całej grupy dowódcy o nazwie dw1. 
