Teraz jest Cz 28 mar, 2024 22:45


[Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

Dział poświęcony edytorowi misji w ArmA III.
  • Autor
  • Wiadomość
Offline

Leopard74

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): Śr 19 sie, 2015 19:59

[Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostSo 03 wrz, 2016 16:52

Witam!
Staram się zrobić bardziej rozbudowaną misję i warunkiem jednego z zadań ma być znalezienie 3 przedmiotów (aktywowanie 3 wyzwalaczy) i po odszukaniu wszystkich 3 ma aktywować się plik z rozmową w sqf i pokazać ma się informacja "zadanie wykonane" i nowe zadanie "wróć do bazy".
Teraz bardziej technicznie:

Wyzwalacz_1 + Wyzwalacz_2 + Wyzwalacz_3 = Wyzwalacz_4

Czyli aktywuję wyzwalacz_1 następnie aktywuję wyzwalacz_2 następnie wyzwalacz_3 a ponieważ aktywowałem wszystkie 3 to gra aktywuje wyzwalacz_4 kolejność ma być obojętna. :)

Proszę powiedzcie mi jak to zrobić.

Pozdrawiam
Offline
Avatar użytkownika

Maćko

Generał

Generał

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

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostSo 03 wrz, 2016 17:54

Do każdego z wyzwalaczy w aktywacji po jednej zmiennej:
Kod: Zaznacz cały
obj1=true
obj2=true
obj3=true


A w warunku odpalenia "ostatecznego" wyzwalacza:
Kod: Zaznacz cały
obj1 and obj2 and obj3


PS. To są podstawy edytora :]
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

Leopard74

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): Śr 19 sie, 2015 19:59

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostN 04 wrz, 2016 14:07

Działa! Dzięki :) Widzisz, podstawy ale jak człowiek nie siedzi przy grze prawie rok to nawet podstawy uciekają. :)
Offline
Avatar użytkownika

Jon

Generał

Generał

  • Posty: 10721
  • Dołączył(a): Wt 20 lip, 2004 00:43
  • Lokalizacja: Kraków

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostN 04 wrz, 2016 16:08

http://www.pajacyk.pl

“Politics is supposed to be the second oldest profession. I have come to realize that it bears a very close resemblance to the first.”
~ Ronald Reagan
Offline

Leopard74

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): Śr 19 sie, 2015 19:59

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostWt 06 wrz, 2016 13:37

To jeszcze jedno pytanie, może odpowiedź jest równie banalna, jak zrobić aby jednostki które ustawiłem pojawiły się dopiero gdy aktywowany zostanie wyzwalacz?
Offline
Avatar użytkownika

Jon

Generał

Generał

  • Posty: 10721
  • Dołączył(a): Wt 20 lip, 2004 00:43
  • Lokalizacja: Kraków

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostWt 06 wrz, 2016 18:05

Komenda hideObject lub hideObjectGlobal
http://www.pajacyk.pl

“Politics is supposed to be the second oldest profession. I have come to realize that it bears a very close resemblance to the first.”
~ Ronald Reagan
Offline

Leopard74

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): Śr 19 sie, 2015 19:59

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostWt 06 wrz, 2016 18:55

Problem w tym że przy this hideObjectGlobal true; AI widzi wroga a wróg atakuje AI.

Czy jedyny sposób to wklepać formułkę w każdej jednostce:
this hideObjectGlobal true;
This SetCaptive true;
This DisableAI "MOVE";
This DisableAI "TARGET";
This DisableAI "AUTOTARGET";
This DisableAI "ANIM";
I jeszcze coś bo z tą formułką też się drą :/
Offline
Avatar użytkownika

Maćko

Generał

Generał

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

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostWt 06 wrz, 2016 20:20

To już jest trochę bardziej skomplikowane. Można to zrobić na dwa sposoby:

1. Teleportacja jednostek w trakcie misji (stawiasz drużynę gdzieś na mapie daleko od właściwej akcji, a w momencie aktywacji wyzwalacza przenosisz jednostki w odpowiednie miejsca) - wariant noob
2. Spawn w locie - tworzenie nowych jednostek skryptowo w trakcie trwania misji i spawnowanie ich w odpowiednich miejscach - wariant pro aka trust me i'm an engineer :D

Druga opcja jest dużo lepsza pod względem optymalizacji - mniej żywych obiektów w tym samym czasie na mapie (AI) = większy FPS

Jeśli chcesz po Jonowemu to spróbuj dodać jeszcze enableSimulation - https://community.bistudio.com/wiki/enableSimulation
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

Leopard74

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): Śr 19 sie, 2015 19:59

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostWt 06 wrz, 2016 20:26

Nie ukrywam że opcja druga jest lepsza ponieważ na mapie jest delikatnie mówiąc dużo jednostek a ma być jeszcze więcej (misja trwa 12 godzin i większość jednostek to postacie w tle). Jak się za taki skrypt zabrać?
Offline
Avatar użytkownika

Mustang185

Pułkownik

Pułkownik

  • Posty: 1032
  • Dołączył(a): N 04 kwi, 2010 00:30
  • Lokalizacja: Jasło

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostŚr 07 wrz, 2016 07:07

W wyzwalaczu w polu onAct dajesz
Kod: Zaznacz cały
null = [position Obiekt] execVM "spawn.sqf"


A w pliku spawn.sqf, umieszczonym w katalogu twojej misji
Kod: Zaznacz cały
if (!isServer) exitWith {};

_spawnPos = _this select 0;

_group1 = createGroup EAST;
_unit1 = _group1 createUnit ["O_Soldier_F", [_spawnPos select 0,_spawnPos select 1,1], [], 1, "NONE"]; sleep 0.2;
_unit2 = _group1 createUnit ["O_medic_F", [_spawnPos select 0,_spawnPos select 1,1], [], 1, "NONE"]; sleep 0.2;
_unit3 = _group1 createUnit ["O_Soldier_GL_F", [_spawnPos select 0,_spawnPos select 1,1], [], 1, "NONE"]; sleep 0.2;
_unit4 = _group1 createUnit ["O_Soldier_LAT_F", [_spawnPos select 0,_spawnPos select 1,1], [], 1, "NONE"]; sleep 0.2;



Do tego potrzebujesz na mapie jakiegoś obiektu nazwanego Obiekt. Będzie on punktem spawnu,
Offline

Leopard74

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): Śr 19 sie, 2015 19:59

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostŚr 07 wrz, 2016 14:24

Dobrze, teraz jeszcze pytanka.
Co zrobić aby po "zesłaniu" ich na świat gry, mieli oni takie atrybuty jak "This SetUnitPos "UP""?
Czy da się dzięki tej opcji zesłać na świat gry czołg z załogą?
Jak ustawić wyszkolenie zesłanych na świat jednostek?
I jak dodać zesłanym na świat jednostką cel do którego mają iść :)?

Pozdrawiam :)
Offline
Avatar użytkownika

Maćko

Generał

Generał

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

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostŚr 07 wrz, 2016 16:51

Wszystko się da :P

https://community.bistudio.com/wiki/Cat ... nds_Arma_3 - jeśli nie znasz to dodaj sobie koniecznie do zakładek ;)

_unit1 = _group1 createUnit ["O_Soldier_F", [_spawnPos select 0,_spawnPos select 1,1], [], 1, "NONE"]; sleep 0.2;

O_Soldier_F - klasa jednostki - możesz zmienić na co chcesz, nazwy klas wyświetlają się w edytorze w oknie tworzenia jednostki jeśli dobrze pamiętam

Stosując nazwę jednostki możesz nadać jej jakie tam chcesz parametry w praktycznie dowolnym czasie.

Kod: Zaznacz cały
_unit1 = _group1 createUnit ["O_Soldier_F", [_spawnPos select 0,_spawnPos select 1,1], [], 1, "NONE"]; _unit1 setUnitPos "UP"; sleep 0.2;
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

Leopard74

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): Śr 19 sie, 2015 19:59

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostŚr 07 wrz, 2016 18:39

Dobrze, Angielskiego nie znam ale od czego jest tłumacz może sobie jakoś poradzę.

Ale jeszcze jedno pytanko, czy da się zrobić wyzwalacz którego warunkiem będzie godzina w grze?

Kilku strażników ma iść do koszar zawsze o godzinie 22:00 a o 6:00 ma koszary opuścić.
O 12:00 ma być puszczany dźwięk.
Offline
Avatar użytkownika

Maćko

Generał

Generał

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

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostŚr 07 wrz, 2016 19:31

Wszystko jest w linku który Ci podałem wyżej :P

https://community.bistudio.com/wiki/time
https://community.bistudio.com/wiki/date
https://community.bistudio.com/wiki/daytime

Da się to zrobić każdą z tych komend, można też po murzyńsku - w wyzwalaczu o jakiejkolwiek aktywacji (np. true) masz wydzieloną część odnośnie czasu aktywacji (min, max, średnia) wyrażaną w sekundach, prosta matematyka - czas startu misji + x sekund = aktywacja o pożądanym czasie.
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

Leopard74

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): Śr 19 sie, 2015 19:59

Re: [Pytanie] 3 aktywne wyzwalacze = aktywacja kolejnego

PostŚr 07 wrz, 2016 20:05

Czytam, czytam i dalej mi nie wychodzi :/
chcę zrobić coś takiego:
Jeśli godzina między 22:00 a 6:00 to aktywuj wyzwalacz.
Jeśli godzina między 6:00 a 22:00 to dezaktywuj wyzwalacz.

Nie idzie mi :/

Kolejne pytanie natomiast się zrodziło, jak zrobić wyzwalacz który przeniesie mnie w czasie do konkretnej godziny?
Następna strona

Powrót do [ArmA III] Edytor

Kto przegląda forum

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