Noob robi moda :)

Tematy zbędne, ale zbyt dobre by je usunąć znajdują się tutaj.
Аватара пользователя
Odyseusz
Community Veteran
Community Veteran
Posty: 180
Rejestracja: Ср янв 24, 2007 12:37 pm
Откуда: Wygwizdowo Dolne

Noob robi moda :)

Сообщение autor: Odyseusz »

Po pierwsze witam wszystkich userów forum jako nowy :P
Po drugie: temat ten założyłem jako pomoc dla mnie od zaawansowanych modderów (takich jak np: Radzio, NNplay i inni). Otóż zacząłem się bawić edytorem OW, chciałem zrobić mały mod dodający narazie chociaż banalna pierwszą misję. Chodziło o cos podobnego do pierwszej misji USA, tylko wejście do EONa a potem dalsza część mapy z przejściem do jakiegoś obszaru :wink: Czytałem w jednym z tematów opis zrobienia takiej misji, niestety wzorując się na nim nic mi nie wyszło :( Przy odpalaniu misji, zawsze na końcu wyskakiwał error dotyczący fragmenu skryptu w Seilu, kiedy porpawiłem go lub dany fragmeny usunąłem to pojawiał się następny i tak ciągle. W końcu wywaliłem cał skrpyt a i tak był error :P Próbowałem z modu NNplaya wziąść mapkę z EONem ale coś chyba nie wyszło więc przestałem się nią bawić i zrobiłem prostą mapkę z EONem, kilkoma gostkami których identyfikatory dopisałem do Texts/CharName.wri no i jest jeszcze tam mój nowy bohater 'Kowalski' :)
A więc tak w Sielu zrobiłem coś takiego:

starting
every 0$1 trigger IsInArea(Kowalski,start) do
Begin
CenterNowOnUnits(Kowalski)
Say(Tysoe,'k0');
Say(Kowalski,'k1');
ChangeMissionObjectives('C1');
end;

very 0$1 trigger IsInArea(Kowalski,wejscie) do
Begin
Case Query("Zapytanie1") of
1 : begin
Say(Kowalski,'k2');
ComEnterUnit(Bobby,eon);
Wait(0$3);
ComEnterUnit(Campbell,eon);
Wait(0$3);
ComEnterUnit(Jablonski,eon);
Wait(0$3);
ComEnterUnit(Brown,eon);
Wait(0$3);
ComEnterUnit(Kowalski,eon);
AddMedal('med1',1);
AddMedal('med2',1);
AddMedal('med3,-1);
GiveMedals('Main');
RewardPeople(Kowalski);
SaveCharacters(Kowalski,'Kowalski');
YouWin;
end;
2: begin
YouLost('tchorz');
end;
end;
end;

Chodziło oto żeby na starcie Tysoe mówił jedną kwestię zapisaną w katalogu z misją w texts.txt po nim mówił Kowalski, warunkiem do tego miało być znajdowanie się Kowalskiego w arenie na której stoi na starcie.
Potem pokazuje się cel główny - przejść do EONa, no i gdy do niego podchodzimy (obok EONa była druga arena - wejscie) miało być pytanie czy wejść do EONa (tak lub nie). A jak już się weszło pokazywały się medale 8) Oto wygląd pliku texts.txt:


# C1
Add Main cel1
- Przejdź do EONa.
#


$ k0
- Grupa 6 przygotować się! Brandon, Brown, Jabłoński, Kowalski, Campbell przejść do EONa!

$ k1
- Już czas.

$ k2
- Niech Bóg ma mnie w swojej opiece.

? Zapytanie1
Czy chcesz wejść do EONa?
- Tak
- Nie
?

| tchorz
Stchórzyłeś!

^ MAIN
Target achieved

* med1
+ Nie stchórzyłeś.
*

* med2
+ Nie zapomniałeś karabinu.
*

* med2a
- Zapomniałeś kaszanki.
*

W pliku Campains/AM/mission.dat według tutorialu ustawiłem co trzeba:

CAMPAIGN "American campaign"
MISSION 0
NAME "New Campaign"
NEXT 1
MISSION 1
MAP Am01
NAME "Przybycie"
SUBCAMP 1
PREV 0
FINISH
END_OF_CAMPAIGN

A tu jest jeszcze CharName.wri z dopisanym identyfiaktorami (napisze tylko dopisanych przeze mnie nowych bo ten plik jest baardzo długi, podobnie jak mój post :P ):

Yashin
Marszałek N. M. Jaszin

Kowalski
Dawid Kowalski

Jablonski
Kpr. Robert Jabłoński

Campbell
Roger Campbell

Tysoe
Kpt. Gilbert Tysoe

Brown i Bobby byli na początku tego pliczku więc ich na nowo nie musiałem tu na dole pisać :wink:

Przy wczytywaniu mapy wszystko było dobrze, była nawet pokazana pozycja, nazwa mapy i opis, ale był ten nieszczęsny error na końcu :(

Pomoże ktoś?
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение autor: Radzio »

wprowadz taki kod:

Код: Выделить всё

starting
begin
CenterNowOnUnits(Kowalski);
Say(Tysoe,'k0');
Say(Kowalski,'k1');
ChangeMissionObjectives('C1');
end;

every 0$1 trigger IsInArea(Kowalski,wejscie) do
begin
Case Query('Zapytanie1') of
1: begin
InGameOn;
Say(Kowalski,'k2');
ComEnterUnit(Bobby,eon);
Wait(0$3);
ComEnterUnit(Campbell,eon);
Wait(0$3);
ComEnterUnit(Jablonski,eon);
Wait(0$3);
ComEnterUnit(Brown,eon);
Wait(0$3);
ComEnterUnit(Kowalski,eon);
wait(0$5);
InGameOff;
AddMedal('med1',1);
AddMedal('med2',1);
AddMedal('med3,-1);
GiveMedals('Main');
RewardPeople(Kowalski);
SaveCharacters(Kowalski,'Kowalski');
YouWin;
end;
2: begin
YouLost('tchorz');
end;
end;
end;
i to przekompiluj (commands--> compile; commands-->run)
w texts.txt wszystko wygląda w porządku
Аватара пользователя
Odyseusz
Community Veteran
Community Veteran
Posty: 180
Rejestracja: Ср янв 24, 2007 12:37 pm
Откуда: Wygwizdowo Dolne

Сообщение autor: Odyseusz »

Kiedy biorę Compile znajduje błąd w kodzie:

Compiling error at New1 line 29: ')'or','expected but 'Main' found!

O co w tym chodzi :?:

I jeszcze jedno: przy moich poprzednich próbach uruchomienia mapki w modzie i po errorze nie mogłem juz ich modyfikować edytorem. Dlaczego?
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение autor: Radzio »

jeden pojedynczy cudzyslow zgubiony... sniff.. musze sie zrelaksowac (gleboki oddech)
oto poprawny kod:

Код: Выделить всё

starting
begin
CenterNowOnUnits(Kowalski);
Say(Tysoe,'k0');
Say(Kowalski,'k1');
ChangeMissionObjectives('C1');
end;

every 0$1 trigger IsInArea(Kowalski,wejscie) do
begin
Case Query('Zapytanie1') of
1: begin
InGameOn;
Say(Kowalski,'k2');
ComEnterUnit(Bobby,eon);
Wait(0$3);
ComEnterUnit(Campbell,eon);
Wait(0$3);
ComEnterUnit(Jablonski,eon);
Wait(0$3);
ComEnterUnit(Brown,eon);
Wait(0$3);
ComEnterUnit(Kowalski,eon);
wait(0$5);
InGameOff;
AddMedal('med1',1);
AddMedal('med2',1);
AddMedal('med3',-1);
GiveMedals('Main');
RewardPeople(Kowalski);
SaveCharacters(Kowalski,'Kowalski');
YouWin;
end;
2: begin
YouLost('tchorz');
end;
end;
end;
przekompiluj tak jak ci pokazalem i sprobuj jeszcze raz,
to normalne ze nie mogles edytowac, tak juz jest zaprogramowany (edytor) ze zatrzymuje sie po tzw. powaznym bledzie czy czyms w tym stylu...
Аватара пользователя
Odyseusz
Community Veteran
Community Veteran
Posty: 180
Rejestracja: Ср янв 24, 2007 12:37 pm
Откуда: Wygwizdowo Dolne

Сообщение autor: Odyseusz »

Znowu czegos sie czepia :P Tym razem chodzi o idnetyfikator Kowalskiego chyba:

Linking error at New1 line 3: undefined idnetifiter 'Kowalski'!

W CharName jest wszystko chyba dobrze, nie wiem tylko czy gdzieś jeszcze identyfikatora nowych postaci wpisywać nie trzeba.
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение autor: Radzio »

ta postac na mapie musi miec taki identyfikator! kazda postac na mapie ktora uzyles w sailu musi miec ustawiony swoj odpowiedni identyfikator, jak to zrobisz to zapisz mape i znowu przekompiluj
Аватара пользователя
Odyseusz
Community Veteran
Community Veteran
Posty: 180
Rejestracja: Ср янв 24, 2007 12:37 pm
Откуда: Wygwizdowo Dolne

Сообщение autor: Odyseusz »

Nadal to samo... :x
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение autor: Radzio »

wyslij mi tego moda mailem to zobacze ocb
Аватара пользователя
NaDoL
Community Veteran
Community Veteran
Posty: 379
Rejestracja: Ср апр 12, 2006 7:43 pm
Откуда: Poland
Kontakt:

temat

Сообщение autor: NaDoL »

Bo masz pewnie wstawiony ID tylko w jednym oknie w tym co ma wyswietlac w grze, a musi być tam obok (po lewej) jest jeszcze jedno okno gdzie nalezy wpisac ID, jest na tym forum tyle tematów gdzie to wszystko pisze...
Изображение
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение autor: Radzio »

ale pewnie opcja "Szukaj" jest niewidoczna dla pewnych userow
Аватара пользователя
Odyseusz
Community Veteran
Community Veteran
Posty: 180
Rejestracja: Ср янв 24, 2007 12:37 pm
Откуда: Wygwizdowo Dolne

Сообщение autor: Odyseusz »

Dla mnie opcja 'szukaj' nie jest nowością, ale skąd miałem wiedzieć o tym ID, mody dopiero się uczę robić od 2 dni :?

----------
Radzio --> wysłałem.

----------
PS. Wpisałem w tym polu identyfikator, uruchomiły się dialogi :P Tylko w trakcie testu przez edytor nie uruchamiało sie zapytanie. Zaraz sprawdzę czy jest ok wszystko w grze :wink:

A jednak, w grze nie uruchamiają się ani dialogi, ani zadanie, ani zapytanie... :?
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение autor: Radzio »

wyslalem ci wszystko jak nalezy dziala (tez poprawilem bo nie wstawiles identyfikatorow) oprocz tego pozbylem sie texts.txt a jego zawartosc dalem do Campaigns\Am\01.wri i jego polskiej wersji w #POL, poprawilem troche dzialanie twojego kodu w SAILu, popatrz go sobie teraz
Аватара пользователя
Odyseusz
Community Veteran
Community Veteran
Posty: 180
Rejestracja: Ср янв 24, 2007 12:37 pm
Откуда: Wygwizdowo Dolne

Сообщение autor: Odyseusz »

Zaraz sprawdzę twoją poprawioną wersję, przed chwilą troche poszperałem w plikach moda i działało. W czasie gry uruchamiały się dialogi (dodałem efekt filmu), pojawia się cel misji, ale nie było zapytania :? Może w twojej wersji będzie ok wszystko :wink:
Radzio
Site Administrator
Site Administrator
Poland
Posty: 2898
Rejestracja: Пт июл 28, 2006 10:58 am
Откуда: Bialystok, Poland

Сообщение autor: Radzio »

zapewniam cie, ze tak bedzie :wink:
Аватара пользователя
Odyseusz
Community Veteran
Community Veteran
Posty: 180
Rejestracja: Ср янв 24, 2007 12:37 pm
Откуда: Wygwizdowo Dolne

Сообщение autor: Odyseusz »

Super! Wszystko działa! Piekne dzięki Radzio :wink: Teraz będę zaczynał próbować robić dalszy ciąg misji, jeśli będę miał z czyms problem będę tu pisał :)
A jak właściwie udało ci się dać zapytanie? Dzięki dodaniu sekwencji filmowej :?:
Zablokowany