Czy wiesz, że... rejestracja trwa tylko 20 sekund?
Strona główna forum Szukaj Rejestracja
Witaj, nieznajomy!
Postów: 878 Dołączył: 2009-01-20
#
W programie Sanny Builder (zakładam, że z niego korzystasz) masz takie narzędzie jak "Menedżer Koordynatów". Znajduje się w menu:

Kod:
Narzędzia/Narzędzia IDE/Menedżer Koordynatów


Oczywiście gra musi być uruchomiona, aby z tego skorzystać.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Witaj.

Kod:
05D3: AS_actor $PLAYER_ACTOR goto_point 681.8004 -474.1063 15.5363 mode 4 3000 ms

Powyższa funkcja powoduje pójście aktora we wskazane miejsce:

$PLAYER_ACTOR - Nazwa zmiennej aktora
681.8004 -474.1063 15.5363 - Współrzędne, do których ma pójść aktor
mode 4 - Szybkość, z jaką ma poruszać się aktor (4-chód;6-bieg)
3000 ms - Tu określasz ile czasu aktor ma na przejście do danego punktu. Po upłynięciu tego czasu, aktor po prostu zostanie przeniesiony do punktu przeznaczenia. Ustaw -1, jeśli chcesz ustawić nieograniczony czas.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Też niestety nie znalazłem, mimo szukania po numerze ID obiektu graffiti.
Może zobacz jeszcze, czy w Map Editor wyświetla się graffiti w otoczeniu. Zrób po prostu render dowolnej sceny, gdzie jest jakiś tag, np. "LAe2" - tam jest m.in. dzielnica Ganton.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
http://www.sendspace.com/file/3jabb1
Tutaj masz oryginalny plik main.scm. Musisz z niego wyciągnąć External Script odpowiadający za te tagi. Deklaracje skryptów masz na początku pliku, po deklaracji misji.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
A skrypt stworzyłeś w CLEO, czy na czystym "MAIN"? Jeśli wybrałeś tą drugą opcję, to nic dziwnego, gdyż w oryginalnym main.scm jest między innymi skrypt na zamalowywanie tagów.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Chyba nie chodziło o animacje aktora, tylko o dodanie jego głosu (dźwięku).

Wydaje mi się, że to będzie tak:

Kod:
03CF: load_wav 43205 as 1

Ładujesz plik dźwiękowy o podanym ID (nie wiem na jakiej zasadzie są przydzielane) i oznaczasz go jako numer "1".

Kod:
0949: link_wav 1 to_actor $PLAYER_ACTOR

Przypisujesz ten dźwięk aktorowi.

Kod:
03D1: play_wav 1

I odtwarzasz ten dźwięk (ID 1).

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Nie zrozumiałem do końca problemu na początku, tak to od razu bym to napisał ;). Może dam jutro to na stronę tylko w bogatszej wersji.
A temat zamykam, bo problem rozwiązany, ewentualnie napisz PW, jeśli chcesz coś jeszcze dodać.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
http://www.sendspace.com/file/0pn5l9 - Tutaj zrobiłem zamiast graffiti "Aztecas".

Generalnie to robi się tak:

1. Robisz dwie grafiki: wygląd (kształt) graffiti i jego kolor.
2. Uruchamiasz plik .txd zawierającego pliki graficzne graffiti, które chcesz podmienić.
3. W zakładce "Image" importujesz obrazek zawierający kolor Twojego graffiti.
4. W zakładce "Alpha/mask" importujesz obrazek zawierający kształt Twojego graffiti.
5. Sprawdzasz w zakładce "Mixed view" sprawdzasz, czy wszystko wygląda tak jak powinno.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Kiedyś robiłem nowe tagi, ale to wszystko było w jednym pliku TXD. Tutaj masz przykład, zobacz jak jest tam i zrób tak samo:

http://www.sendspace.com/file/22jnm1

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Kiedyś zrobiłem mały program do generowania najczęściej używanych opcodów. Zdecydowanie przyspieszało to pisanie skryptów. Dziś go wrzuciłem do download, może komuś się przyda.

Cytat:
Ten mały program umożliwia generowanie najczęściej używanych opcodów w Sanny Builder, między innymi tworzenie aktorów, samochodów, broni, a także animowanie postaci.

Użytkowanie programu sprowadza się do uzupełnienia kilku pól (np. nazwa zmiennej aktora, jego współrzędne itd.) i naciśnięcia przycisku "OK". Po tym wygenerowany kod automatycznie jest przenoszony do schowka i wystarczy go wkleić w dowolnym miejscu.

Program można bezproblemowo uruchomić w systemie Linux za pomocą Wine.


Ściągnij Code Generator

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Możliwe, że źle ustawiłeś przezroczystość. W TXD Workshop jest zakładka "Alpha". Upewnij się, że wygląda to tak jak powinno. Jeśli nie, to musisz zmienić.
Aby tekstura była przezroczysta, musi ona być na czarnym tle, a następnie trzeba zaimportować ją mając zaznaczoną zakładkę "Alpha" w TXD Workshop.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Najlepiej to zrobić jako External Script (tutorial).

Jeśli robisz kilka misji, to najlepiej po poprawnym ukończeniu każdej twórz odpowiednią zmienną. Przykładowo, jeśli gracz ukończył pierwszą misję, to tam gdzie wyświetlasz "Mission Passed" dajesz jeszcze:
Kod:
$MISSION1_STATUS = 1


W swoim "External Script" musisz po prostu sprawdzić stan zmiennych i na ich podstawie utworzyć odpowiednie sfery:

Kod:
:SPHERES
thread 'SPHERES'

:IS_MISSION
if
 0038:   $ONMISSION == 0
jf @END

:MISSION1
if
 0038:   $MISSION1 == 1
jf @MISSION2

03BC: $SFERA1 = create_sphere_at 2596.589 2758.158 22.862 radius 1.0 

:MISSION2
if
 0038:   $MISSION2 == 1
jf @CHECK

03BC: $SFERA2 = create_sphere_at 2596.589 2758.158 22.862 radius 1.0

:CHECK
:CHECK1
wait 10
if
 00ED:   actor $PLAYER_ACTOR 0 near_point 2043.68 -1635.73 radius 4.0 4.0 on_foot
jf @CHECK2

start_mission 1

:CHECK2
wait 10
if
 00ED:   actor $PLAYER_ACTOR 0 near_point 2043.68 -1635.73 radius 4.0 4.0 on_foot
jf @CHECK1

start_mission 2
jump @CHECK1

:END
end_thread


Myślę, że kod jest zrozumiały. Powiem tylko, że na początku sprawdzamy, czy gracz aktualnie wykonuje jakąś misję (na podstawie zmiennej $ONMISSION, która jest odpowiednio ustawiana podczas misji, więcej o tym w tutorialu "SaveGame"). Współrzędne są przypadkowe, musisz zmienić na swoje.

Jeszcze na końcu każdej misji uruchom ponownie ten External Script, żeby zaktualizowało pozycje sfer.

Kod:
0913: run_external_script 66 (CARMOD1)


Nazwę i ID musisz oczywiście zmienić na swoje.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
W tej części, w której chcesz, aby zmienił się model gracza. Jeśli chcesz to mieć tylko w jednej misji, to umieść ten kod na początku kodu misji po załadowaniu modeli.
Jeśli chcesz mieć ten skin cały czas to:

a) dajesz to w sekcji "MAIN".
b) robisz to jako External Script. Tutaj jest tutorial.

Podałem dwa warianty, bo nie jestem pewien, czy w MAIN można ładować modele. Musisz spróbować.

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Co do pierwszego problemu, to musisz zaczekać na Olo_PL, bo pamiętam, że on kiedyś coś takiego zrobił.

Jeśli chodzi o obrócenie kamery:
Kod:
015F: set_camera_position 664.9277 -479.6112 16.1668 rotation 1.0 2.0 3.0

To jest opcode na ustawienie kamery w danych współrzędnych o podanej rotacji.
1.0 - rotacja X
2.0 - rotacja Y
3.0 - rotacja Z

Nie będę tłumaczył czym różnią się poszczególne rotację, bo to bezcelowe. Najlepiej będzie, jak zobaczysz to w Map Editor na przykładzie jakiegoś obiektu.
Jeśli chcesz obrócić kamerę o 90 stopni to po prostu ustaw odpowiednią wartość rotacji X. Pamiętaj, że ustawienie tej wartości nie zwiększa/zmniejsza obrotu, tylko ustawia na podany stopień. Czyli jak wcześniej miałeś rotację ustawioną na 10.0 to teraz musisz zmienić na 100.0.

3. Lista wszystkich opcodów jest w pliku opcodes.txt. Domyślna ścieżka:
Kod:
C:Program FilesSanny Builderdatasaopcodes.txt

Ale najlepiej skorzystać z wyszukiwarki opcodów, która jest dostępna w programie Sanny Builder.
Menu: Tools/IDE Tools/Opcode Search
Menu PL: Narzędzia/Narzędzia IDE/Szukaj opcodów

___________________
Administrator
Postów: 878 Dołączył: 2009-01-20
#
Tworzenie ubrań jest dosyć proste, jedyną trudnością będzie obsługa programu graficznego ;). Programy, których będziesz potrzebował:

IMG Tool - za pomocą tego narzędzia wyciągniesz potrzebny plik *.txd, który zawiera teksturę danego ubrania.

TXD Workshop - za pomocą tego programu będziesz mógł wyciągnąć z pliku *.txd teksturę konkretnego ubrania. Po wyeksportowaniu pliku graficznego możesz go zmodyfikować, a następnie zaimportować zmienioną teksturę.

Jak już będziesz miał gotowy plik .txd to wystarczy, że wrzucisz go z powrotem do pliku .img. Dokładny opis powyższych czynności znajdziesz na stronie:

Obsługa IMG Tool'a
Podmiana tekstur (tutorial jest do VC, ale w SA wygląda to tak samo)

P.S. Plik .txd znajdziesz w archiwum gta3.img. Domyślna ścieżka do tego pliku:
Kod:
C:Program FilesRockstar GamesGTA San Andreasmodelsgta3.img

___________________
Administrator
Created & Powered by MakG