Trucizna i efekt zamrożenia 6477 25

O temacie

Autor JanKielbasa123

Zaczęty 24.02.2013 roku

Wyświetleń 6477

Odpowiedzi 25

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
Witam. Ostatnio kminiłem jak zrobić by ktoś nas uderzył a my byśmy się zamrozili lub inaczej... zatruli.

Oto pytania:
1. Jak zrobić by ktoś mnie uderzył a ja bym wtedy się np.zamroził?
2. Jak zrobić efekt trucizny, mianowicie: Tracenie życia w danych odstępach czasu + zmienienie paska życia na zielony? Czyżby Ikarus + LeGo?
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

Jurigag

Jurigag

Użytkownicy
posty869
Propsy285
ProfesjaSkrypter
  • Użytkownicy
1.Były już podobne tematy na forum równie dobrze możesz obczaić skrypty MT i był tam miecz czo zamraża.
2.Tutaj chyba jedynie może być problem ze zmianą paska życia na zielony i może być własnie potrzebne ikarus lub lego.
 
Skrypter/Tester - Szukasz testera/skryptera - Pisz !

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
1. PERC_ASSESSDAMAGE - poszukaj jaka funkcja jest wywoływana przez niego w przypadku bohatera, dodaj w niej odpowiedni warunek i wywołania.
2. Samo zabieranie życia w odstępach czasu jest do zrealizowania za pomocą triggerów onFireTick (uruchamiających daną funkcję w równych odstępach czasu), jednak zmiana koloru paska życia to już dość złożony problem i z pewnością wymagałby użycia Ikarusa. Nie wiem czy znajdziesz gotowca.

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
1. Nie rozumiem, w czym mam to sprawdzić? O ile widzę w folderach to pliku PERC_ASSESSDAMAGE nie ma...
2. Mniejsza z kolorem, ważne by zatruwało... Więc jak to zrobić? Może ktoś mi podać jak to uczynić?
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
To nie jest plik, ale nazwa zmiennej w której jest przechowywany indeks "zmysłu" npc'a. Użyj wyszukiwania tekstowego, albo jeśli masz blade pojęcie o skryptach, znajdź tutorial o mieczach z efektem przy trafieniu.

Jurigag

Jurigag

Użytkownicy
posty869
Propsy285
ProfesjaSkrypter
  • Użytkownicy
Ogółem jest taka opcja jak szukaj na forum i te dwa tematy tak jak zatruwanie i jakieś magicznie miecze było już często tutaj poruszane.
 
Skrypter/Tester - Szukasz testera/skryptera - Pisz !

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
To nie jest plik, ale nazwa zmiennej w której jest przechowywany indeks "zmysłu" npc#msg1072724a. Użyj wyszukiwania tekstowego, albo jeśli masz blade pojęcie o skryptach, znajdź tutorial o mieczach z efektem przy trafieniu.

Przepraszam, ale czy PERC_ASSESSDAMAGE odnosi się także do potwora? oO  
Gdy patrzę w skrypcie jakiegoś stworka to nie ma czegoś takiego jak PERC_ASSESSDAMAGE tylko to:
PERC_ASSESSPLAYER. W takim przypadku co trzeba uczynić?

PS. Te tutki o mieczach ogarniam, ale TYLKO na mieczach opierają się te tutki. Nic wykminić o potworze nie mogę.
W skryptach grzebie jakieś dwa lata (zwykli npc, bronie, artefakty dodające bonusy, misje i dialogi dla zaawansowanych, atrybuty wg rozdziału (B_SetAttributesToChapter), nowe potwory, nowe zbroje z nowymi teksturami - czy to wystarczy żeby cię przekonać o tym że mam jakieś pojęcie o skryptach? :ayfkm:  )

Poda mi ktoś link do POMOCNYCH tematów o zatruwaniu? oO
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

Jurigag

Jurigag

Użytkownicy
posty869
Propsy285
ProfesjaSkrypter
  • Użytkownicy
 
Skrypter/Tester - Szukasz testera/skryptera - Pisz !

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
Te zamrażanie niewiele mi mówi. Potrafię stworzyć miecz co zamraża, podpala, wali w niego błyskawica, zabija go "krzykiem umarłych". Ale nie potrafię wykminić gdzie i jak zrobić aby to DEMON wykonywał tę czynność, nie przedmiot tylko npc, dokładnie monster. Wątpie aby  dało się zmienić instance i tyle więc... PROSZĘ O ODPOWIEDŹ.

Jaki ja marudny  :lol:  

Z tym zatruwaniem też niezbyt wychodzi. Help me!
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Trucizna i efekt zamrożenia
#9 2013-02-28, 18:32(Ostatnia zmiana: 2013-02-28, 18:34)
Zmieniasz warunek w funkcji odpalanej przez perc_assessdamage, żeby zamiast broni atakującego, sprawdzal jego gildię. Napisałem ci żebyś użył wyszukiwania tekstowego po perc_assessdamage. Zamiast tego pytasz co robić kiedy nie ma tego w skrypcie potworka. Do tego piszesz że masz dwa lata praktyki w skryptowaniu (lol więcej ode mnie). Skoro po dwóch latach nadal ŁAGODNIE mówiąc nie ogarniasz, nie pozostaje mi nic innego jak tylko uznać że tobie już nawet specjalista nie pomoże.

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
//***************************** ICE *****************************
func void B_ICE (var C_NPC oth, var C_NPC slf)
{

if (Hlp_GetInstanceID(oth) == Hlp_GetInstanceID(hero))
{
var C_ITEM ready;
var int randomdmg;
var int procent_trafienia;
var int obrazenia;

ready = Npc_GetReadiedWeapon(hero);
randomdmg = Hlp_Random (1);
procent_trafienia = 100;
obrazenia = 0;

if (Npc_HasItems(hero, InstanceBroni) == TRUE && Hlp_IsItem(ready, InstanceBroni) == TRUE)
&& (randomdmg <= procent_trafienia)
{
if (slf.flags != NPC_FLAG_IMMORTAL)
{
Wld_PlayEffect("spellFX_IceCube", slf, slf, 1, 1, 1, FALSE );
Wld_PlayEffect("spellFX_Icebolt", slf, slf, 1, 1, 1, FALSE );
AI_StartState (self, ZS_MagicFreeze, 0, "");
B_MagicHurtNpc (slf, slf, obrazenia);
};

};

if (Npc_HasItems(hero, InstanceBroni) == TRUE && Hlp_IsItem(ready, InstanceBroni) == TRUE)
&& (randomdmg <= procent_trafienia)

{
Wld_PlayEffect("spellFX_Pyrokinesis_BRIDGE", hero, hero, 1, 1, 1, FALSE );
};

};
};

Przykładowy skrypt, tylko jest właśnie problem, że tu NIE MA ŻADNEGO PERC_ASSESSDAMAGE, i wszędzi jest opisane, że jest to dla broni, a nie dla postaci - "Item" to raczej NPC nie jest... :ayfkm:  

Chyba, że zamiast Npc_HasItems Muszę wpisać self.guild == GIL_DEMON, tak?
A potem zamiastHlp_IsItem (ready, InstanceBroni) == TRUE)wpisać Hlp_IsNpc (ready, Demon) == TRUE)??
Czy może po prostu wstawić FALSE w tym drugim? oO  

Avallach, ja moduje dialogi, itemki, npciki, texturki z gomana itp od wakacji 2010 roku. Nie wiem, ale to chyba jednak ja moduje dłużej w takim razie. Ale ty i tak masz większe doświadczenie ode mnie  :D  
Odpisz ktoś czy dobrze myśle, bo nie daje mi spokoju to że tak długo w tym siedze a gówno potrafię zrobić  :hitler:
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Przykładowy skrypt, tylko jest właśnie problem, że tu NIE MA ŻADNEGO PERC_ASSESSDAMAGE
Nigdzie nie pisałem że będzie w "przykładowym skrypcie". Pisałem żebyś użył wyszukiwania tekstowego we wszystkich skryptach żeby dowiedzieć się na jakie funkcje jest przekierowywane w części gry którą modyfikujesz :facepalm:

i wszędzi jest opisane, że jest to dla broni, a nie dla postaci - "Item" to raczej NPC nie jest... :ayfkm:  
Bo to to kurwa miało być dla broni. Bierzesz skrypt efektu dla broni i dziwisz się że jest dla broni?

Chyba, że zamiast Npc_HasItems Muszę wpisać self.guild == GIL_DEMON, tak?
Prawie dobrze, widzę że te dwa lata skryptowania całkiem się nie zmarnowały. Nie self (atakowany), tylko other (atakujący).

A potem zamiastHlp_IsItem (ready, InstanceBroni) == TRUE)wpisać Hlp_IsNpc (ready, Demon) == TRUE)??

Czy może po prostu wstawić FALSE w tym drugim? oO  
Cofam to, zmarnowałeś dwa lata. Twoim przeznaczeniem najwyraźniej było co najwyżej granie w mody.

Avallach, ja moduje dialogi, itemki, npciki, texturki z gomana itp od wakacji 2010 roku. Nie wiem, ale to chyba jednak ja moduje dłużej w takim razie. Ale ty i tak masz większe doświadczenie ode mnie  :D  
Napisałeś że zajmowałeś się samymi skryptami dwa lata. Ja po mniej więcej takim czasie dałem sobie z tym spokój bo upadł team tworzący modyfikację której poświęciłem najwięcej sił. Odtąd już zajmowałem się tylko drobnymi rzeczami.
Wychodzi na to że po prostu cholernie ciężko przychodzi ci nauka. Przecież te skrypty można ogarnąć w kilka dni jeśli jest się hardcorem, lub w kilka miesięcy jeśli robi się to bardzo nieregularnie i nigdy wcześniej się nie programowało.

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
Modowałem z wielkimi przerwami bo mi sie po prostu nie chciało.
Czyli te Hlp_ już całkiem usunąć?  Chyba dało by sie z tego skryptu całego przerobić na skrypt dla npcta, ale jak dokładnie? Mam wiele pomysłów ale nie wiem czy są dobre szczerze mówiąc. Wezme jeszcze troszkę pokminie może coś wydumam.
Nie mam już sił na skryptowanie jak dawniej, bo szkoła i wgl. Zaganiają mnie do nauki nie mam co czasami dojść do kompa bo "Ucz się!". Zakrzątam sobie głowę tymi wszystkimi ocenami do poprawienia...
Jeśli mówisz że zamrnowałem dwa lata to weź mi wytłumacz co dalej po zmienieniu warunku w if'ie, bo ja byłem samouczek dlatego więcej kumam co sobie sam cudem wytłumaczę, ale z tych prostrzych rzeczy...
Avallach mógłbym cię prosić o pomoc właśnie przy tym pieprzonym skrypcie? oO  
PLIS... :lol:  :lol2:
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Trucizna i efekt zamrożenia
#13 2013-02-28, 19:54(Ostatnia zmiana: 2013-02-28, 19:57)
Napisałem ci już co miałeś zrobić, a właściwie poprawiłem jedyną poprawną bliską poprawności z twoich teorii. Przeanalizuj linijka po linijce co ten skrypt robi to sam dojdziesz do wniosku co nie jest potrzebne :|

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
Tak się spytam: Co robi w skrypcieHlp_IsItemna przykład? oO  

No dobra usunąć wg mnie trzeba toif (Npc_HasItems(hero, InstanceBroni) == TRUE && Hlp_IsItem(ready, InstanceBroni) == TRUE)
&& (randomdmg <= procent_trafienia)

{
Wld_PlayEffect("spellFX_Pyrokinesis_BRIDGE", hero, hero, 1, 1, 1, FALSE );
};

};
};

i to bo to mi NIE potrzebne

Wld_PlayEffect("spellFX_Icebolt", slf, slf, 1, 1, 1, FALSE );

 a poza tym, to:


skrypt taki będzie prawidłowy czy trzeba jeszcze coś zmienić?

//***************************** .... *****************************
func void C_ICE (var C_NPC oth, var C_NPC slf)
{

if (Hlp_GetInstanceID(oth) == Hlp_GetInstanceID(hero))
{
var int randomdmg;
var int procent_trafienia;
var int obrazenia;

ready = Npc_GetReadiedWeapon(hero);
randomdmg = Hlp_Random (1);
procent_trafienia = 100;
obrazenia = 0;

if (Npc_HasItems(hero, InstanceBroni) == TRUE && Hlp_IsItem(ready, InstanceBroni) == TRUE)
&& (randomdmg <= procent_trafienia)
{
if (slf.flags != NPC_FLAG_IMMORTAL)
{
Wld_PlayEffect("spellFX_IceCube", slf, slf, 1, 1, 1, FALSE );
AI_StartState (self, ZS_MagicFreeze, 0, "");
B_MagicHurtNpc (slf, slf, obrazenia);
};

};
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Trucizna i efekt zamrożenia
#15 2013-02-28, 20:27(Ostatnia zmiana: 2013-02-28, 20:30)
Ten skrypt nie ma żadnego związku z tym co chcesz osiągnąć oprócz linijki
AI_StartState (self, ZS_MagicFreeze, 0, "");Moja rada: napisz go samemu. Próbujesz przerabiać jedną rzecz w drugą podczas gdy tak naprawdę jedyne co mają wspólnego to to że unieruchamiają i że są uruchamiane przy zranieniu (akurat to jest zaprogramowane gdzie indziej).

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
zamiastself wpierdole other i będzie git. Pousuwam wszystko związane z itemami i zmienie to na npcta. Mam nadzieje że dobrze myślę.

Sorry za double posta


czy ten skrypt będzie działał? Nie jestem pewien bo pierwszy raz robie coś w tym stylu.
//***************************** Lodowy Demon *****************************
func void C_ICEDEMON (var C_NPC oth, var C_NPC slf)
{

if (Hlp_GetInstanceID(oth) == Hlp_GetInstanceID(hero))
{
var int randomdmg;
var int procent_trafienia;
var int obrazenia;

randomdmg = Hlp_Random (1);
procent_trafienia = 100;
obrazenia = 20;
{
if (other.guild == GIL_DEMON)
&& (randomdmg <= procent_trafienia)
{
Wld_PlayEffect("spellFX_IceCube", slf, slf, 1, 1, 1, FALSE );
AI_StartState (self, ZS_MagicFreeze, 0, "");
B_MagicHurtNpc (slf, slf, obrazenia);
};

};

Powiedzcie mi co jest źle i co mam poprawić
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator

inż. Avallach
Administrator

Trucizna i efekt zamrożenia
#17 2013-03-01, 15:13(Ostatnia zmiana: 2013-03-01, 15:14)
Pisałem ci żebyś przeanalizował linijka po linijce. Zacznijmy od pierwszej.
func void C_ICEDEMON (var C_NPC oth, var C_NPC slf)To nagłówek funkcji. Zastanów się, jak zostanie ona wywołana, a w związku z tym czy ma odpowiednią nazwę i argumenty.

Kiedy dojdziesz do odpowiedzi, rozważymy kolejną linijkę, i tak aż do końca kiedy wyjdzie poprawny skrypt. Podpowiem ci że złe są wszystkie linijki oprócz jednej, o której napisałem w poprzednim poście.

PS. Po dwóch latach powinieneś umieć sprawdzić poprawność skryptu samodzielnie, zwłaszcza że jak widzisz jest to bardzo proste.

JanKielbasa123

JanKielbasa123

Użytkownicy
posty199
Propsy7
  • Użytkownicy
Argumenty rozumiem to co w nawiasie? Nazwa nie jestem pewien ale chyba zamiast C_ trzeba dać B_.
Hmm... Zastanawiam się jak ona zostanie wywołana i dupa. No nie mam pojęcia jak do cholery jasnej.
W B_AssessDamage pod B_Beliar coś tam, trzeba wkleić B_ICEDEMON i tak samo w B_MM_AssessDamage.

Czemu jak ktoś mi coś tłumaczy to gówno rozumiem?...
 
Szmato! Czochraj bobra, bo bez walki się nie oddam!



Czeladnik

inż. Avallach

inż. Avallach

Administrator
posty7661
Propsy5239
NagrodyV
ProfesjaProgramista
  • Administrator
Bo po dwóch latach skryptowania nie masz zielonego pojęcia o skryptach. Nawet nie wiesz co to są argumenty ani że nazwa nowej funkcji jest bez znaczenia :facepalm:
Ale twoim problemem nie jest brak wiedzy, tylko brak umiejętności do nauki. Pisałem ci już wiele razy żebyś wyszukał tekstowo w skryptach wszystkie wystąpienia PERC_ASSESSDAMAGE. Wtedy dowiedziałbyś się jak twoją funkcję wywołać. Ale nie, ty wolisz spamić na forum. Przy okazji, następnym razem kiedy odświeżysz temat przed upływem doby, zostanie to uznane za spam i dostaniesz warna.


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