Problemy z wstawianiem pierwszych NPC 57053 276

O temacie

Autor Buła

Zaczęty 24.10.2008 roku

Wyświetleń 57053

Odpowiedzi 276

Militiant

Militiant

Użytkownicy
posty33
Profesjabrak
  • Użytkownicy
W Gothic.src mam STORY\NPC\*.d
Co mam tam wpisać?
 

Fabio

Fabio

White&Red
Arcymistrz feedbacku
posty3007
Propsy1751
ProfesjaScenarzysta
  • White&Red
  • online
  • Arcymistrz feedbacku
Nic, bo jest git.

Militiant

Militiant

Użytkownicy
posty33
Profesjabrak
  • Użytkownicy
No to co mam więc zrobić żeby NPCe się pojawiali
 

bogu9821

bogu9821

Użytkownicy
posty135
Propsy38
ProfesjaSkrypter
  • Użytkownicy
  • online
 
while(false) do();

Militiant

Militiant

Użytkownicy
posty33
Profesjabrak
  • Użytkownicy
Rutyna Hamlara
Cytuj
FUNC VOID Rtn_Start_2001 ()
{
TA_Position (00,00,22,00,"WP_HAMLARHOME");
TA_Position (22,00,00,00,"WP_HAMLARHOME");
};
Hamlar w pliku startup.d
Cytuj
Wld_InsertNpc            ( SFB_2001_Hamlar, "HAMLARHOME" );//StandAround
A w grze nie mam co pokazać, po prostu ich nie ma.
 

bogu9821

bogu9821

Użytkownicy
posty135
Propsy38
ProfesjaSkrypter
  • Użytkownicy
  • online
Rutyna Hamlara
Cytuj
FUNC VOID Rtn_Start_2001 ()
{
TA_Position (00,00,22,00,"WP_HAMLARHOME");
TA_Position (22,00,00,00,"WP_HAMLARHOME");
};
Hamlar w pliku startup.d
Cytuj
Wld_InsertNpc            ( SFB_2001_Hamlar, "HAMLARHOME" );//StandAround
A w grze nie mam co pokazać, po prostu ich nie ma.

Zauważ, że w rutynie masz "WP_HAMLARHOME" a w startupie "HAMLARHOME" ;)
 
while(false) do();

Militiant

Militiant

Użytkownicy
posty33
Profesjabrak
  • Użytkownicy
Okej działa, dzięki wielkie!
 

R4zor

R4zor

Użytkownicy
posty414
Propsy117
ProfesjaGracz
  • Użytkownicy
Chciałbym się dowiedzieć jak dodać nowy rodzaj ciała i twarzy (chodzi o tekstury). Wcześniej próbowałem samemu sobie jakoś poradzić:
1. Dodałem tekstury w formacie .tga do odpowiednich folderów
Hum_Body_Naked_V15_C0 (Textures/NPCs/Body) i Hum_Head_V170_C0 (Textures/NPCs/Head)
2. Następnie dopisałem w AI_Constants.d -> const int Body_Tex_D = 15; (dla ciała) Face_N_Tester = 170; (dla twarzy)
3. Zmieniłem w "visuals" w skrypciem mojej postaci:
Mdl_SetVisual      (self,"HUMANS.MDS");
Mdl_SetVisualBody (self,   "hum_body_Naked0", Body_Tex_D, 0,   "Hum_Head_Bald", Face_N_Tester, 0, ITAR_MayaZombie_Addon);

Mimo powyższych zmian/poprawek postać po przywołaniu jej w grze ma inny wygląd (przedostatni rodzaj tekstury twarzy i ciała z AI_Constants.d
tzn. Face_N_ZombieMud = 162 oraz BodyTexBabe_S = 12)

Dziękuję z góry za wszelkie podpowiedzi i pomoc.

Fabio

Fabio

White&Red
Arcymistrz feedbacku
posty3007
Propsy1751
ProfesjaScenarzysta
  • White&Red
  • online
  • Arcymistrz feedbacku
Pokaż kod.

Cruc

Cruc

Użytkownicy
posty572
Propsy189
Profesjabrak
  • Użytkownicy
A skompilowało w ogóle Twoje tekstury?
 
while (!success) try{...}

R4zor

R4zor

Użytkownicy
posty414
Propsy117
ProfesjaGracz
  • Użytkownicy

Postać robiłem wzorując się na kodzie PC_ItemFeller.d
kod postaci
INSTANCE mr_Tester(NPC_DEFAULT)
// PlayerInstanz
{
   //-------- primary data --------
   name          = "Tester";
   Npctype         = NPCTYPE_MAIN;
   guild         = GIL_NONE;
   level         = 30;
   voice         = 15;
   id            = 2002;
   
   //--------- abilities --------
   attribute[ATR_STRENGTH] =      100;
   attribute[ATR_DEXTERITY] =      100;
   attribute[ATR_MANA_MAX] =      400;
   attribute[ATR_MANA] =         400;
   attribute[ATR_HITPOINTS_MAX] =   400;
   attribute[ATR_HITPOINTS] =      400;
   
   exp            = (500*((level+1)/2)*(level+1));
   exp_next      = (500*((level+2)/2)*(level+1));

//-------- visuals --------
   //                   animations
   Mdl_SetVisual      (self,"HUMANS.MDS");
   //                     Body-Mesh         Body-Tex      Skin-Color   Head-MMS          Head-Tex      Teeth-Tex    Armor-Tex
   Mdl_SetVisualBody (self,   "hum_body_Naked0",    BodyTex_D,      0,         "Hum_Head_Pony",    Face_N_Tester,   0,          ITAR_MayaZombie_Addon);
   //oryginalnie: Mdl_SetVisualBody (self,   "hum_body_Naked0",    BodyTex_Player,   0,         "Hum_Head_Bald",    FACE_N_Player,   0,          ITAR_PAL_H);
Reszta kodu jest identyczna jak u Itemfellera (tzn. ekwipunek, zdolności itd. nie ruszałem tego).
A tutaj fragment jak to wygląda w AI_Constants:
// *****************************
// Konstanten für B_SetNpcVisual
// *****************************

// ------ Nacktmesh-Texturen für Männer und Frauen (je 4) ------
//---------ADD ON----------------------
const int BodyTex_T = 10; //tätowierte psionikerhaut
const int BodyTexBabe_F = 11; //Fellkragen Babe
const int BodyTexBabe_S = 12;//das kleine Schwarze

//nowe
const int BodyTex_D = 15;

// ------- Gesichter für Männer ------
/-----------------ADD ON---------------------------------
const int Face_N_Fortuno = 159;

//Piraten
const int Face_P_Greg = 160;
const int Face_N_Pirat01 = 161;
const int Face_N_ZombieMud = 162;

//nowe
const int Face_N_Tester = 170;

@Cruc no właśnie nie, musiałem ręcznie je skompilować do formatu .TEX ( Hum_Body_Naked_V15_C0-C.TEX i Hum_Head_V170_C0-C.TEX)

Fabio

Fabio

White&Red
Arcymistrz feedbacku
posty3007
Propsy1751
ProfesjaScenarzysta
  • White&Red
  • online
  • Arcymistrz feedbacku
Raczej to ma nic do rzeczy, ale ostatnie to 162, a ty od razu 170 wrzuciłeś. Weź może ustaw o numer jeden większy i sprawdź różnice. Czyli ustaw Face_N_Tester = 163;

R4zor

R4zor

Użytkownicy
posty414
Propsy117
ProfesjaGracz
  • Użytkownicy
Spróbowałem wprowadzając tą małą zmianę, niestety nadal nie działa.
Ponownie wrzuciłem też odpowiednie tekstury do folderu (oczywiście usuwając stare _compiled) i zauważyłem, że nowe tekstury ciała jak i twarzy nie chcą się automatycznie skompilować tj. poprzednim razem, muszę robić to ręcznie.

Fabio

Fabio

White&Red
Arcymistrz feedbacku
posty3007
Propsy1751
ProfesjaScenarzysta
  • White&Red
  • online
  • Arcymistrz feedbacku
Jeśli nie chcą się kompilować, to jest to jakiś znak, że jest coś z nimi nie tak. Co to za tekstury? Własne czy z neta? Ręcznie konwertując do .tex używasz gomana?

R4zor

R4zor

Użytkownicy
posty414
Propsy117
ProfesjaGracz
  • Użytkownicy
Tekstury są z neta; gdy je konwertuje do .tex gomanem plik ma mniejszą objętość (oryginalne mają po 171 KB, a dodane przeze mnie tylko 129). Spróbuję użyć innej tekstury i dam znać czy będzie poprawnie działać.

Edit: Nadal występuje ten sam problem, ale myślę że pewnie jest tj. wyżej napisane - wina tekstur. Prawdopodobnie po reinstalacji gothica i narzędzi do niego wszystko będzie działać. Dzięki za pomoc.

R4zor

R4zor

Użytkownicy
posty414
Propsy117
ProfesjaGracz
  • Użytkownicy
Po ponownej instalacji gothica wszystko działa poprawnie - dodałem nowe tekstury twarzy i ciała. Pojawił się jednak pewien mały defekt graficzny:
screen
Ta ziarnistość/migotanie tekstur nie jest jakimś palącym problemem, aczkolwiek gryzie się z pozostałymi, oryginalnymi teksturami. Jak ktoś zna rozwiązanie tego problemu, niech da znać.
Dziękuję wszystkim za pomoc.

Fabio

Fabio

White&Red
Arcymistrz feedbacku
posty3007
Propsy1751
ProfesjaScenarzysta
  • White&Red
  • online
  • Arcymistrz feedbacku
Jak konwertujesz gomanem to przy mipmap musi być większa wartość.


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry