Teraz jest Cz 28 mar, 2024 22:46


Ciąg misji

Dział poświęcony edytorowi ArmA II i Operation Arrowhead, czyli tworzeniu misji.
  • Autor
  • Wiadomość
Offline

totalport

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): N 27 maja, 2012 13:32

Ciąg misji

PostN 27 maja, 2012 13:37

Witam próbuje stworzyć własną misje wiec
mam 2 zadania lecz gdy zrobie pierwsze to drugie w ogóle mi sie nie wyswietla. Jak zrobic by drugie zadanie mi się wyswietło??

oto briefing.sqf


player createDiaryRecord ["Diary", ["Odprawa", "ble ble ble"]];

tskobj_1 = player createSimpleTask["Zabij Zwiadowce"];
tskobj_1 setSimpleDescription ["Zabij Zwiadowce żeby zakończyć zadanie."];
tskobj_1 settaskstate "Created";

player createDiaryRecord ["Diary1212", ["Odprawa121", "ble ble ble"]];
tskobj_2 = player createSimpleTask["Wyeliminuj Straznikow"];
tskobj_2 setSimpleDescription ["Zabij dwoch straznikow by zakonczyc zadanie."];
tskobj_2 settaskstate "Created";

description.ext

// Mission Header
class Header
{
gameType = Coop;
};
onLoadMission = "EAGLE EYE";
OnLoadMissionTime = FALSE;

init.sqf

//begin init.sqf

//Add briefing
execVM "briefing.sqf";

if(true) exitWitch[];

a to wyciągi z gry

po zabiciu pierwszego straznika komunikat:
http://zapodaj.net/8e0db11ceefda.png.html


komunikat o wykonaniu misji "zadanie wykonane"i powinno zacząc sie drugie zadanie ale ... lipa
http://zapodaj.net/ce923f2d3fbd9.png.html

to juz druga misja
http://zapodaj.net/1de62a8b285e6.png.html
co ciekawe nie pokazuje jej ale jak sie zabije tego kolesia to zadanie wykonane

i zakoncznie

http://zapodaj.net/3cf6330b9eb77.png.html

Proszę o pomoc
Offline
Avatar użytkownika

Mustang185

Pułkownik

Pułkownik

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

PostN 27 maja, 2012 14:06

Zmień wpis w briefingu. Notatki diary powinno się dodawać dopiero po dodaniu zadań - może to przez to nie widzisz objectivu.
Offline
Avatar użytkownika

WinteR5

Moderator

Moderator

  • Posty: 451
  • Dołączył(a): Śr 19 maja, 2010 21:52
  • Lokalizacja: Toruń

PostN 27 maja, 2012 15:13

Zrobiłem dla Ciebie misję testową, taki template-schemat. U mnie działa, u Ciebie też powinno.

http://www.sendspace.com/file/vgu8oz
Obrazek
Offline

totalport

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): N 27 maja, 2012 13:32

PostN 27 maja, 2012 16:19

Nadal nie działa :( po twoijej misji testowej mam crasha :D a i jeszcze jak ustawiam misje w briefingu
3
2
1
to zaczyna od 3 :( zamiast od 1 no kurde
Offline
Avatar użytkownika

Blackburn

Pułkownik

Pułkownik

  • Posty: 1437
  • Dołączył(a): Cz 15 lip, 2010 11:36
  • Lokalizacja: Raz tu, raz tam...

PostN 27 maja, 2012 17:35

Skoro robisz misje coop to polecam przygotować briefing wg schematu taskmastera jak w TYM temacie.

Tak btw, czy zamiast LIMIT CZASU nie powinienes ustawić w wyzwalaczu ODLICZANIE?
Offline
Avatar użytkownika

Jon

Generał

Generał

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

PostN 27 maja, 2012 19:14

"Limit Czasu" z tego co kojarzę jest ustawieniem standardowym?
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

totalport

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): N 27 maja, 2012 13:32

PostN 27 maja, 2012 21:34

hmm to może jakby ktoś był miły to pokazał mi przykład ze pierwsza misja zabic kogos zrobi sie to pojawia sie nowa misja znów kogos zabic i po tym zakonczenie misji ?? jak ktoś może to prosiłbym a i nie odczuwam różnicy po zmienieniu na odliczanie
Offline
Avatar użytkownika

Blackburn

Pułkownik

Pułkownik

  • Posty: 1437
  • Dołączył(a): Cz 15 lip, 2010 11:36
  • Lokalizacja: Raz tu, raz tam...

PostN 27 maja, 2012 22:24

Jon napisał(a):"Limit Czasu" z tego co kojarzę jest ustawieniem standardowym?


Tak, ale wartość standardowa to 0 (zero).

totalport napisał(a):hmm to może jakby ktoś był miły to pokazał mi przykład ze pierwsza misja zabic kogos zrobi sie to pojawia sie nowa misja znów kogos zabic i po tym zakonczenie misji jak ktoś


W taskmasterze robisz w ten sposób, że w briefingu jest jeden cel, a kolejne są ukryte (w skryptach) i odpalane po wykonaniu poprzedniego zadania.

W skrypcie dajesz coś takiego:
nul = [banany,"cel2",["blablabla","blabla","bla"],"cel2"] call TASKMASTER_add;
Offline

totalport

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): N 27 maja, 2012 13:32

PostN 27 maja, 2012 23:02

blackburn wim o co ci chodzi lecz kurde nie wiem gdzie umiescic pierwsze zadanie w taskmasterze oraz jak to opisac :(
Offline

tom3kb

Major

Major

  • Posty: 523
  • Dołączył(a): Pt 04 mar, 2011 07:35

PostPn 28 maja, 2012 00:09

Ja to zawsze robiłem tak jak Blackburn napisał tylko nie używałem taskmastera, w briefingu mam jedno zadanie, np coś takiego:
briefing.sqf

waitUntil {!(isNull player)};
waitUntil {player==player};
switch (side player) do
{
case east:
{

player createDiaryRecord ["Diary",["Sytuacja","Bla bla bla."]];

player createDiaryRecord ["Diary",["Misja",Bla bla bla."]];

player createDiaryRecord ["Diary",["Wsparcie","Bla bla bla."]];

player createDiaryRecord ["Diary",["nieprzyjaciel","Bla bla bla."]];

player createDiaryRecord ["Diary",["Oddzialy sojusznicze","Bla bla bla."]];

tskObj1=player createSimpleTask ["1. Zlikwiduj oficera."];
tskObj1 setSimpleTaskDescription ["Zlikwiduj oficera w tym <marker name='c1'>mieście</marker>.","1. Zlikwiduj oficera.",""];
tskObj1 setSimpleTaskDestination (getMarkerPos "c1");


}};

Potem wstawiam wyzwalacz a w nim piszę:
w warunek:
not (alive oficer1)
w przy aktywacji np: coś w tym stylu:
[] exec "trup.sqs"; hint "Zadanie 1 wykonane"; tskobj1 setTaskState "SUCCEEDED"


W pliku trup.sqs np:
dowodca sidechat "Bla bla bla, masz nowe zadanie."
~6
hint "Sprawdz mape, masz nowe zadanie."

tskObj2=player createSimpleTask ["2.Zlikwiduj drugiego oficera."];
tskObj2 setSimpleTaskDescription ["Zlikwiduj drugiego oficera w tym <marker name='c2'>mieście</marker>.","2. Zlikwiduj drugiego oficera.",""];
tskObj2 setSimpleTaskDestination (getMarkerPos "c2");


oficer1, oficer2, dowodca to nazwy jednostek na mapie, oficerowie to wroga frakcja, dowodca to jakiś żołnierz z twojej frakcji.

W drugim wyzwalaczu:
warunek:
not (alive oficer2)
przy aktywacji:
tskobj2 setTaskState "SUCCEEDED"

No i 3 wyzwalacz kończący misję:
warunek:
not (alive oficer1) and not (alive oficer2)
w przy aktywacji albo w efektach wyzwalacza tekst "Misja wykonana" i to koniec. :)
Ostatnio edytowano Pn 28 maja, 2012 00:33 przez tom3kb, łącznie edytowano 4 razy
Offline
Avatar użytkownika

Blackburn

Pułkownik

Pułkownik

  • Posty: 1437
  • Dołączył(a): Cz 15 lip, 2010 11:36
  • Lokalizacja: Raz tu, raz tam...

PostPn 28 maja, 2012 00:15

Taskmaster składa się z 3ch (czy 4?) plików, a Ciebie interesuje tylko init.sqf.
W linku odemnie masz opisane co i gdzie wpisujesz, dodatkowo ściągasz z naszego forum taskmastera z przykładowym briefingiem, więc wystarczy tylko zmienić treść.

Tak wygląda briefing (MP), którego tekst jest w pliku init.sqf.
Polecam ten rodzaj briefingu, bo jest sprawdzony i działa.
[[
["true","cel1",["t e k s t"]]
],[
["true",["Sytuacja","t e k s t"]],
["true",["Odprawa","t e k s t"]]
]]
execvm "briefing.sqf";
Offline

totalport

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): N 27 maja, 2012 13:32

PostPn 28 maja, 2012 10:27

a co znaczy to ?? domyślam sie ale no wole znac wypowiedz ekspertów :D
waitUntil {!(isNull player)};
waitUntil {player==player};
switch (side player) do
{
case east:
{ Bluckburn skoro ten briefing jest lepszy to jak mozesz to pokaz mi przykład tak jak to zrobił kolega wyżej :)
Offline

tom3kb

Major

Major

  • Posty: 523
  • Dołączył(a): Pt 04 mar, 2011 07:35

PostPn 28 maja, 2012 10:40

Z bi wiki
http://community.bistudio.com/wiki/player

a case east to, że briefing jest dla jednostek wschodu (gracz jest z którejś frakcji np: Rosja, chdkz, takistan), może być jeszcze west i resistance, jeśli grasz zachodem lub partyzantami.

O ile się nie mylę to dzięki temu np do multi możesz zrobić 3 briefingi w jednym dla każdej frakcji, a każda strona widzi tylko swoją część.

Ps: Najlepiej rozpakuj jakąś działającą misję, skopiuj z niej briefing i przerób do swoich potrzeb. Będziesz miał już schemat "na lata".
Ostatnio edytowano Pn 28 maja, 2012 10:47 przez tom3kb, łącznie edytowano 1 raz
Offline

totalport

Szeregowy

Szeregowy

  • Posty: 13
  • Dołączył(a): N 27 maja, 2012 13:32

PostPn 28 maja, 2012 10:47

tom3kb twój spobób rzeczywiście działa :D a teraz zeby 3 i 4 itd zadania dodac to trzeba nowe pliki tworzyc?? w stylu trups.sqs??
Offline

tom3kb

Major

Major

  • Posty: 523
  • Dołączył(a): Pt 04 mar, 2011 07:35

PostPn 28 maja, 2012 10:51

Możesz je dodać w tym jednym skrypcie ale wtedy 2,3,4 zadanie wyskoczy ci od razu jak wykonasz 1. możesz w wyzwalaczu nr2:

w warunek:
not (alive oficer2)
w przy aktywacji np: coś w tym stylu:
[] exec "trup1.sqs"; hint "Zadanie 2 wykonane"; tskobj2 setTaskState "SUCCEEDED"

W pliku trup1.sqs np:
dowodca sidechat "Bla bla bla, masz nowe zadanie."
~6
hint "Sprawdz mape, masz nowe zadanie."

tskObj3=player createSimpleTask ["3.Zlikwiduj trzeciego oficera."];
tskObj4 setSimpleTaskDescription ["Zlikwiduj trzeciego oficera w tym <marker name='c2'>mieście</marker>.","3. Zlikwiduj trzeciego oficera.",""];
tskObj4 setSimpleTaskDestination (getMarkerPos "c3");

exit;

Możesz tak robić w kółko. Dodawać w każdym wyzwalaczu np po jednym zadaniu albo kilka naraz. Zależy to już tylko od ciebie. :)
Następna strona

Powrót do [ArmA II] Edytor

Kto przegląda forum

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