Page 1 of 1
EDYTOR - Kopiowanie jednostek
Posted: Mon Jun 03, 2013 11:45 pm
by Vykromod
Witam. Mam pytanie. Czy istnieje jakiś sposób na kopiowanie jednostek z jednej mapy na drugą? Nie pytajcie do czego mi to potrzebne

Jedyne co mi przychodzi do głowy, to tworzenie jednostek za pomocą skryptu SAIL i kopiuj-wklejanie tegoż skryptu do innej mapy, ale nie uśmiecha mi się rezygnować z wygodnej możliwości tworzenia jednostek bezpośrednio w edytorze map tylko po to by móc je później skopiować.
Re: EDYTOR - Kopiowanie jednostek
Posted: Tue Jun 04, 2013 9:22 am
by Serpent
Nawalanie ręczne - bo tak to nazywam to frajerstwo i nie wygoda. W sailu postacie robi się o wiele szybciej no i można nimi lepiej manipulować ;p Unikasz wtedy też efektu "bliźniaka" czyli takich samych twarzy postaci.
Do kopiuj/wklej służy kod SAIL:
http://forum.original-war.net/viewtopic ... aci#p30278
http://forum.original-war.net/viewtopic.php?f=18&t=545
Re: EDYTOR - Kopiowanie jednostek
Posted: Tue Jun 04, 2013 11:16 pm
by Vykromod
No nie wiem. Jakoś ciężko mi wyobrazić sobie w jaki sposób mozolne wpisywanie kilku linijek kodu w SAILu do każdej jednostki ma być szybsze/wygodniejsze niż ustawienie w kilka sekund wszystkich potrzebnych statystyk i jedno kliknięcie na mapie. Chyba że chodzi Ci o to, żeby raz pomęczyć się z opisywaniem postaci SAILem i zapisać ją za pomocą tej komendy, żeby później móc wywoływać ją za pomocą CreateCharacter.
Anyways, to załatwia sprawę. Dzięki.
EDIT:
Tak z ciekawości, czy plik wyjściowy, do którego ta funkcja zapisuje postacie powinno się jakoś przygotować lub wyznaczyć? Po eksperymentach z tą funkcją nie widzę żadnych zmian w pliku "output.txt" w folderze z misją. W ogóle ciężko znaleźć w internecie jakiekolwiek informacje na ten temat.
Re: EDYTOR - Kopiowanie jednostek
Posted: Wed Jun 05, 2013 8:57 am
by Serpent
output.txt było wykorzystywane przez twórców gry. Nie zauważyłem aby ktokolwiek kto robił kiedykolwiek jakikolwiek mod korzystał z tego pliku.
Zazwyczaj usuwa się właśnie output i input.txt z folderu mapy aby nie zaśmiecały nam moda, pliki te można też wyłączyć w map preferences.
Re: EDYTOR - Kopiowanie jednostek
Posted: Wed Jun 05, 2013 10:48 am
by Vykromod
To w takim razie gdzie ta komenda zapisuje jednostki? Do save'a?
Re: EDYTOR - Kopiowanie jednostek
Posted: Wed Jun 05, 2013 10:57 am
by Serpent
Vykromod wrote:To w takim razie gdzie ta komenda zapisuje jednostki? Do save'a?
Ta.
SaveCharacters(Janek,
'JanekSave'); // zapisuje postać z mapy o idencie
Janek pod nowym identem
JanekSave (choć równie dobrze JanekSave można zastąpić samym Janek).
Potem w następnej misji:
Janek = CreateCharacter(
'JanekSave'); // wczytuje JanekSave i daje mu ident Janek.
Działa to mniej więcej tak, dlatego misje kolejne w których wczytujesz postacie trzeba testować w grze bo w edytorze ich nie wczytasz.
PS:
Vykromod wrote:No nie wiem. Jakoś ciężko mi wyobrazić sobie w jaki sposób mozolne wpisywanie kilku linijek kodu w SAILu do każdej jednostki ma być szybsze/wygodniejsze niż ustawienie w kilka sekund wszystkich potrzebnych statystyk i jedno kliknięcie na mapie. Chyba że chodzi Ci o to, żeby raz pomęczyć się z opisywaniem postaci SAILem i zapisać ją za pomocą tej komendy, żeby później móc wywoływać ją za pomocą CreateCharacter.
No to patrz
Code: Select all
Export function CreateArmy(liczba);
var un, x;
begin
uc_side = 1;
uc_nation = 1;
x = 0;
repeat
begin
hc_class = 1;
hc_sex = Rand(sex_male, sex_female);
hc_attr = [Rand(9,11), Rand(10,11)];
hc_gallery = '';
hc_skills = [Rand(0,10), 0,0,0];
un = CreateHuman;
PlaceUnitAnywhere(un, false);
x = x + 1;
end until x = liczba;
end;
// i teraz gdzieś dajesz sobie w kodzie
CreateArmy(100);
// i masz 100 żołnierzy i to na pewno szybciej niż sto razy klikać i ustawiać ich na mapie :D
Re: EDYTOR - Kopiowanie jednostek
Posted: Wed Jun 05, 2013 10:41 pm
by Vykromod
Serpent wrote:Działa to mniej więcej tak, dlatego misje kolejne w których wczytujesz postacie trzeba testować w grze bo w edytorze ich nie wczytasz.
No to niestety odpada. Nie przyda mi się do tego, do czego mi to potrzebne. Nie istnieje inna metoda? Taka, która działałaby w edytorze?
Serpent wrote:// i teraz gdzieś dajesz sobie w kodzie
CreateArmy(100);
// i masz 100 żołnierzy i to na pewno szybciej niż sto razy klikać i ustawiać ich na mapie

[/code]
Niezbyt rzetelny przykład. Twój kod pod względem wygody wygrywa z "nawalaniem ręcznym" tylko z takiego powodu, że tworzysz gigantyczną armię 100 żołnierzy. Pytanie, po kiego wała mam tworzyć taką hordę? Mówmy o bardziej realnych sytuacjach. Wybacz, ale jeżeli mam na przykład na szybko stworzyć 10-15 osobowy zespół, to wygodniej mi jest go wyklikać, niż pisać prawie 20 linijek kodu.
Oczywiście, domyślam się, że do większości sytuacji metoda ręczna po prostu się nie nadaje z przyczyn technicznych, ale ciężko zaprzeczyć, że w wielu prostych sytuacjach jest po prostu wygodna.
Re: EDYTOR - Kopiowanie jednostek
Posted: Thu Jun 06, 2013 8:39 am
by Serpent
Vykromod wrote:Serpent wrote:Działa to mniej więcej tak, dlatego misje kolejne w których wczytujesz postacie trzeba testować w grze bo w edytorze ich nie wczytasz.
No to niestety odpada. Nie przyda mi się do tego, do czego mi to potrzebne. Nie istnieje inna metoda? Taka, która działałaby w edytorze?
Istnieje, w każdej misji tworzyć za pomocą kilków na mapie te same postacie w każdej misji ale nie wiem jak ma wyglądać mod bez kodu saila, to coś nowego
Co do mojego kodu to przykład, szablon który można w dowolny sposób wykorzystać.