Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Pisanie / Poprawa Questów !


PoczatKujacy

Rekomendowane odpowiedzi

Opublikowano

A napisze mi ktoś questa np.

że ze 119 lvl awansujesz na 120 i jest napisane

xxx osiągną 120 poziom bo jak ja pisałem to albo działało 1 albo 2 pod jakim względem np jak wpisywałem

/level 115 to było napisane xxx awan... z poz... 114 na 115

a jak wpisywałem 120 to nic nie było napisane

jak zmieniłem ze

when levelup with pc.get_level() >= 75 and pc.get_level() <= 119 begin

i zobiłem plik inny

i było tak

when levelup with pc.get_level() >= 120 and pc.get_level() <= 120 begin

To było napisane że osiągnołem 120

a jak wpisywałem

/level 115 to nic nie było napisane ;/

  • Odpowiedzi 8,7 tys.
  • Dodano
  • Ostatniej odpowiedzi
Opublikowano

DevilxMetin

 

quest notice_level begin
state start begin
 when login or levelup with pc.get_level() >= 75 begin
  if pc.get_level() == 120 then
notice_all(pc.get_name().." osiągnął maksymalny poziom. Gratulujemy!")
return
  end
  notice_all(pc.get_name().." awansował z poziomu "..pc.get_level()-1.." na poziom "..pc.get_level()..". Gratulujemy!")
 end
end
end

 

 

Pan RiV, sprawdź czy to działa:

 

quest staruszka begin
state start begin
 when 9006.chat."Chciałbym otrzymać umiejętność!" begin
  say_title("Staruszka:")
  say("Witaj!")
  say("Posiadam tajemniczą moc dawania umiejętności.")
  say("Mogę ci dać wszystkie umiejętności na poziom G, wystarczy że mi zapłacisz.")
  say_reward("Kosz wszystkich umiejętności: 25.000.000 Yang.")
  say_title("Czy chcesz tego ?")
  local s = select("Tak!", "Pffe, czarodziejka za pięć zeta.")
  if s == 1 then
for i = 1, 111 do
 pc.set_skill_level(i, 39)
end
pc.change_money(-25000000)
  else
say_title("Staruszka")
say("Ja ci dam staruszkę!")
say("Darmozjadzie ty!")
  end
 end
end
end

 

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Quest przechodzi normalnie przez qc? Robisz /reload q w grze? Zmień id osoby u której jest ten quest, może tam załapie.

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Sunushi mam nadzieję że się nudzisz xDD

Naprawisz mi questa? xD

 

quest make_herb_lv36  begin
   state start begin
    when login or levelup with pc.get_level() == 36  begin
	    set_state(information)
    end     
   end

   state information begin
    when letter begin
	    local v = find_npc_by_vnum(20006)
	    if v != 0 then
		    target.vid("__TARGET__", v, "Mirine")
	    end
	    send_letter("Zarażone Kwiaty 36lvl")
    end

    when button or info begin
	    say_title("Zarażone Kwiaty")
	    say("Mirine")
	    say("Jest bardzo chora")
	    say("Idź do niej i zaoferuj jej pomoc.")
    end

    when __TARGET__.target.click or 20006.chat."Rozmowa z Mirine" begin
	    target.delete("__TARGET__")
	    say(locale.NOTICE_COLOR.."Biolog Chaegirab:"..locale.NORMAL_COLOR)
	    say("Witaj, Jestem Mirine.")
	    say("Jestem bardzo chora...")
	    say("Potrzebuje Zarażonych Kwiatów.")
	    say("Proszę pomóż mi.")
	    wait()
	    say(locale.NOTICE_COLOR.."Biolog Chaegirab:"..locale.NORMAL_COLOR)  
	    say("Aktualnie jestem chora")
	    say("jedynym lekarstwem dla mnie jest Zarażony Kwiat")
	    say("Czy przyniesiesz mi 5 takich Zarażonych Kwiatów?")
	    say("Dziękuje. Z góry.")
	    say("Pozdrawiam Mirine")
	    set_state(go_to_disciple)
	    pc.setqf("collect_count",0)
	    pc.setqf("drink_drug",0)
    end
   end

   state go_to_disciple begin
    when letter begin
	    send_letter("Zarażone Kwiaty 36lvl")
    end

    when button or info begin
	    say_title("Zdobądź Zarażone Kwiaty")
	    say("Mirine")
	    say("Jest Bardzo Chora")
	    say("Zdobądź dla Niej 5 Zarażonych Kwiatów")
	    say("Bardzo ich potrzebuje")
	    say("By się wyleczyć")
	    say("Te Kwiaty wyglądają tak:")
	    say_item_vnum(30153)
  	  say("Zarażone Kwiaty możesz zdobyć od:")
  	  say_reward("Ezo. Fanatyk")
	    say_reward("Przyniosłeś już ".." "..pc.getqf("collect_count").." Zarażonych Kwiatów.")
	    say("")
    end

    when 71035.use begin --˘Xgˇ¦b?A?o
	    if pc.getqf("drink_drug") == 1 then
		    say("")
		    say("?wˇMgˇL??I?F1|ˇM")
		    say("")
		    return
	    end
	    if pc.count_item(30153) == 0 then
		    say("Mirine:")
		    say("Prosze, zdobadz dla mnie te Kwiaty!")
		    say("To jest naprawde bardzo wazne dla mnie!")
		    say("")
		    return
	    end
	    item.remove()  
	    pc.setqf("drink_drug",1)
    end

    when 701.kill begin
	    if pc.count_item(30153) < 5 - pc.getqf("collect_count")then
		    pc.give_item2(30153, 1)
	    end
    end

    when 20006.chat."Zarażone Kwiaty " with pc.count_item(30153) > 0 begin
	    say(locale.NOTICE_COLOR.."Mirine:"..locale.NORMAL_COLOR)
	    say("O jak fajnie! Masz już jeden Kwiat Dla mnie.")
	    say("Pozwól rzucę okiem.")
	    say("Jeszcze sekundka")
	    say("")
	    pc.remove_item(30153, 1)
	    wait()
	    local pass_percent
	    if pc.getqf("drink_drug")==0 then
		    pass_percent=70
	    else								    
		    pass_percent=100
	    end

	    local s= number(1,100)
	    if s<= pass_percent  then
		    if pc.getqf("collect_count")< 4 then  --5-O?H?U
			    local index =pc.getqf("collect_count")+1
			    pc.setqf("collect_count",index)
			    say(locale.NOTICE_COLOR.."Mirine:"..locale.NORMAL_COLOR)
			    say("Jupi. Ten Kwiat nie jest uszkodzony =) ")
			    say_reward("Dostarcz mi jeszcze".." "..5-pc.getqf("collect_count").. " Zarażonych Kwiatów!")
			    say("Proszę poszukaj jeszcze.")
			    say("")
			    pc.setqf("drink_drug",0)							 --?A?o??cl??
			    return
		    end
		    say(locale.NOTICE_COLOR.."Mirine:"..locale.NORMAL_COLOR)  
		    say_reward("O jak fajnie. Dostarczyłeś mi już ")
		    say_reward("wszystkie Zarażone Kwiaty.")
		    say("Mirine w nagrodę dała Ci")
		    say_reward("1.000.000 PD")
		    say_reward("10.000.000 PLN")    
		    pc.setqf("collect_count",index)
		    pc.setqf("drink_drug",0)						    
		    clear_letter()
		    set_state(__complete)
		    pc.change_money(10000000)
		    pc.give_exp2(1000000)
		    set_quest_state("levelup","run")
		    return
	    else																																																								    
		    say(locale.NOTICE_COLOR.."Mirine:"..locale.NORMAL_COLOR)  
		    say("Ahhhh ;P")
		    say("Ten Kwiat jest uszkodzony =( .")
		    say("Dostarcz mi następny....")
		    say("")
		    pc.setqf("drink_drug",0)								 --?A?o??cl??
		    return
	    end

    end
   end

   state __complete begin
   end
end

 

Opublikowano

Bony w questach wyglądają mniej więcej tak:

 

affect.add_collect(apply.MOV_SPEED,15,60*60*24*365*60)  

 

a co zrobić żeby jako bon było odporność na daną klasę, czy bd to wyglądało tak?

 

affect.add_collect(apply.RESIST_WARRIOR,15,60*60*24*365*60)   

czy moze tak

affect.add_collect(apply.POINT_RESIST_WARRIOR,15,60*60*24*365*60)   

 

kiedy uzywamy POINT

kiedy uzywamy GRADE

 

czy dajac bonus na klase piszemy apply.ATT_BONUS_TO_WARRIOR

czy moze piszemy apply.POINT_ATTBONUS_WARRIOR

 

dlaczego tak a nie inaczej i kiedy jakiego uzywamy. Z gory dziekuje za pomoc

 

Potrzebuję przyklad zapisu odpornosci na kazda klase silny na kazda klasem wartosc ataku, max hp reg hp, obrazenia od x% bd dodane do pz, otrucie, odpornosci np na magie, otrucie itd

 

za pomoc daje plusy i like

Opublikowano

Up O to Ci chodzi ? ;x

 

 

 

(ID Bonów Navicat zakladka: Player >> Item):

Max PŻ	1
Max PE	2
Energia Życiowa	3
Inteligencja	4
Siła	5
Zwinność	6
Szybkosc ataku	7
Szybkość Poruszania się	8
Szybkość Zaklęcia	9
Regeneracja PŻ	10
Regeneracja PE	11
Szansa na  Otrucie	12
Szansa na Omdlenie	13
Szansa na Spowolnienie	14
Szanasa na krytyka	15
Szanasa na przeszywke	16
Silny przeciwko Pół-Ludzion	17
Silny przeciwko zwierzetom	18
Silny przeciwko Orkom	19
Silny przeciwko mistykom	20
Silny przeciwko nieumarlym	21
Silny przeciwko diablom	22
Obrażenia absorbowane przez PŻ	23
Obrażenia absorbowane przez PE	24
Szansa na Kradzież PE	25
Szansa na Kradzież PŻ	26
Szansa na Uniknięcie strzały	28
Odporność na Miecze	29
Odporność na 2-Ręczną	30
Odporność na Sztyety	31
Odporność na Dzwony	32
Odporność na Wachlarze	33
Odporność na Strzały	34
Odpornosc na Ogień	35
Odpornosc na Błyskawice	36
Odporność na Magie	37
Odporność na Wiatr	38
Blok Ciosów	39
Odbicie ciosow	40
Odporność na Trucizny	 41
Szansa na BONUS Doś.	43
Szansa na podwójna ilosc YANG	44
Szansa na podwójna ilosc Przedmiotów	45
Niewrazliwy na Omdlenia	48
Wartość Atak	53
Silny przeciwko wojownikom	59
Silny przeciwko Ninjom	60
Silny przeciwko Surzom	61
Silny przeciwko Szamanom	62
Silny przeciwko potworom	63
Umiejetności	71
Srednie	72
Odporność na Wojownika	78
Odpornośc na Ninje	 79
Odporność na Sure	80
Odporność na Szamana	81
46 - Mikstury (ileś) % efekt podniesiony
47 - Szansa na odzyskanie PŻ
48 - Niewrazliwy na Omdlenia
49 - Niewrazliwy na spowolnienie
50 - Niewrazliwy na Upadek

 

 

Pomogłam? Daj: "Lubie to"

Opublikowano

Up O to Ci chodzi ? ;x

 

 

 

(ID Bonów Navicat zakladka: Player >> Item):

Max PŻ	1
Max PE	2
Energia Życiowa	3
Inteligencja	4
Siła	5
Zwinność	6
Szybkosc ataku	7
Szybkość Poruszania się	8
Szybkość Zaklęcia	9
Regeneracja PŻ	10
Regeneracja PE	11
Szansa na  Otrucie	12
Szansa na Omdlenie	13
Szansa na Spowolnienie	14
Szanasa na krytyka	15
Szanasa na przeszywke	16
Silny przeciwko Pół-Ludzion	17
Silny przeciwko zwierzetom	18
Silny przeciwko Orkom	19
Silny przeciwko mistykom	20
Silny przeciwko nieumarlym	21
Silny przeciwko diablom	22
Obrażenia absorbowane przez PŻ	23
Obrażenia absorbowane przez PE	24
Szansa na Kradzież PE	25
Szansa na Kradzież PŻ	26
Szansa na Uniknięcie strzały	28
Odporność na Miecze	29
Odporność na 2-Ręczną	30
Odporność na Sztyety	31
Odporność na Dzwony	32
Odporność na Wachlarze	33
Odporność na Strzały	34
Odpornosc na Ogień	35
Odpornosc na Błyskawice	36
Odporność na Magie	37
Odporność na Wiatr	38
Blok Ciosów	39
Odbicie ciosow	40
Odporność na Trucizny	 41
Szansa na BONUS Doś.	43
Szansa na podwójna ilosc YANG	44
Szansa na podwójna ilosc Przedmiotów	45
Niewrazliwy na Omdlenia	48
Wartość Atak	53
Silny przeciwko wojownikom	59
Silny przeciwko Ninjom	60
Silny przeciwko Surzom	61
Silny przeciwko Szamanom	62
Silny przeciwko potworom	63
Umiejetności	71
Srednie	72
Odporność na Wojownika	78
Odpornośc na Ninje	 79
Odporność na Sure	80
Odporność na Szamana	81
46 - Mikstury (ileś) % efekt podniesiony
47 - Szansa na odzyskanie PŻ
48 - Niewrazliwy na Omdlenia
49 - Niewrazliwy na spowolnienie
50 - Niewrazliwy na Upadek

 

 

Raczej nie o to tylko o nazwę bonów w MySQL.

 

@kilu

Najlepiej sprawdź nazwy w:

MySQL / twoja nazwa / player / item_attr 

(nie jestem pewny tego item_attr, ale coś w tym stylu)

***


Nie gram już w ogóle w metina,


ale jeśli potrzeba komuś pomoc z questem


to jeśli będę potrafił to mogę pomóc.


***

Opublikowano

questlib.lua, na samym dole są nazwy wszystkich bonów.

 

DevilxMetin

 

quest make_herb_lv36  begin
state start begin
 when login or levelup with pc.get_level() >= 36 begin
  set_state(information)
 end
end
state information begin
 when letter begin
  local v = find_npc_by_vnum(20006)
  if v != 0 then
target.vid("__TARGET__", v, "Mirine")
  end
  send_letter("Zarażone Kwiaty 36lvl")
 end
 when button or info begin
  say_title("Zarażone Kwiaty")
  say("Mirine")
  say("Jest bardzo chora")
  say("Idź do niej i zaoferuj jej pomoc.")
 end
 when __TARGET__.target.click or 20006.chat."Rozmowa z Mirine" begin
  target.delete("__TARGET__")
  say(locale.NOTICE_COLOR.."Biolog Chaegirab:"..locale.NORMAL_COLOR)
  say("Witaj, Jestem Mirine.")
  say("Jestem bardzo chora...")
  say("Potrzebuje Zarażonych Kwiatów.")
  say("Proszę pomóż mi.")
  wait()
  say(locale.NOTICE_COLOR.."Biolog Chaegirab:"..locale.NORMAL_COLOR)
  say("Aktualnie jestem chora")
  say("jedynym lekarstwem dla mnie jest Zarażony Kwiat")
  say("Czy przyniesiesz mi 5 takich Zarażonych Kwiatów?")
  say("Dziękuje. Z góry.")
  say("Pozdrawiam Mirine")
  set_state(go_to_disciple)
  pc.setqf("collect_count",0)
  pc.setqf("drink_drug",0)
 end
end
state go_to_disciple begin
 when letter begin
  send_letter("Zarażone Kwiaty 36lvl")
 end

 when button or info begin
  say_title("Zdobądź Zarażone Kwiaty")
  say("Mirine")
  say("Jest Bardzo Chora")
  say("Zdobądź dla Niej 5 Zarażonych Kwiatów")
  say("Bardzo ich potrzebuje")
  say("By się wyleczyć ")
  say("Te Kwiaty wyglądają tak:")
  say_item_vnum(30153)
  say("Zarażone Kwiaty możesz zdobyć od:")
  say_reward("Ezo. Fanatyk")
  say_reward("Przyniosłeś już "..pc.getqf("collect_count").." Zarażonych Kwiatów.")
  say("")
 end

 when 701.kill begin
  if pc.getqf("collect_count") < 5 then
pc.give_item2(30153, 1)
  end
 end
 when 20006.chat."Zarażone Kwiaty " with pc.count_item(30153) > 0 begin
  say(locale.NOTICE_COLOR.."Mirine:"..locale.NORMAL_COLOR)
  say("O jak fajnie! Masz już jeden Kwiat Dla mnie.")
  say("Pozwól rzucę okiem.")
  say("Jeszcze sekundka")
  say("")
  pc.remove_item(30153, 1)
  wait()
  local s = number(1,100)
  if s <= 70 then
if pc.getqf("collect_count")< 4 then
 local index =pc.getqf("collect_count")+1
 pc.setqf("collect_count",index)
 say(locale.NOTICE_COLOR.."Mirine:"..locale.NORMAL_COLOR)
 say("Jupi. Ten Kwiat nie jest uszkodzony =) ")
 say_reward("Dostarcz mi jeszcze".." "..5-pc.getqf("collect_count").. " Zarażonych Kwiatów!")
 say("Proszę poszukaj jeszcze.")
 say("")
 pc.setqf("drink_drug",0)
 return
end
say(locale.NOTICE_COLOR.."Mirine:"..locale.NORMAL_COLOR)
say_reward("O jak fajnie. Dostarczyłeś mi już ")
say_reward("wszystkie Zarażone Kwiaty.")
say("Mirine w nagrodę dała Ci")
say_reward("1.000.000 PD")
say_reward("10.000.000 PLN")
pc.setqf("collect_count",index)
pc.setqf("drink_drug",0)
clear_letter()
set_state(__complete)
pc.change_money(10000000)
pc.give_exp2(1000000)
set_quest_state("levelup","run")
return
  else
say(locale.NOTICE_COLOR.."Mirine:"..locale.NORMAL_COLOR)
say("Ahhhh ;P")
say("Ten Kwiat jest uszkodzony =( .")
say("Dostarcz mi następny....")
say("")
pc.setqf("drink_drug",0)
  end
 end
end

state __complete begin
end
end

 

 

Pan RiV, jedyne co możesz jeszcze zrobić w tym queście to zmienić nazwę przy

quest staruszka begin

na np.

quest u_staruszki begin

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano
questlib.lua, na samym dole są nazwy wszystkich bonów.

q moglbys mi podeslac tego questa gdyz nie mam w tym momencie serwera a musze zedytowac innego questa. Tak chodzilo mi o nazwy bonow w jezyku lua, przy dodawaniu nagrody za questa ;> i kiedy jeszcze piszemy POINT i GRADE przed nazwa? Te nazwy z item.attr nie dzialają więc muszą być to te ktore ty napisales, dziekuje za pomoc i prosze wyslij mi tego questa. Dzieki

Opublikowano

affect.add_collect(6, 2000, 60*60*24*365*60) - w tym wypadku zadziała to jako bon na HP, gdyż POINT_MAX_HP = 6

 

Pełna lista:

 

POINT_NONE	  = 0
POINT_LEVEL	  = 1
POINT_VOICE	  = 2
POINT_EXP	  = 3
POINT_NEXT_EXP	 = 4
POINT_HP	  = 5
POINT_MAX_HP	 = 6
POINT_SP	  = 7
POINT_MAX_SP	 = 8 
POINT_STAMINA	 = 9
POINT_MAX_STAMINA    = 10
POINT_GOLD	  = 11
POINT_ST	  = 12
POINT_HT	  = 13
POINT_DX	  = 14
POINT_IQ	  = 15
POINT_DEF_GRADE	 = 16
POINT_ATT_SPEED	 = 17
POINT_ATT_GRADE	 = 18
POINT_MOV_SPEED	 = 19
POINT_CLIENT_DEF_GRADE   = 20
POINT_CASTING_SPEED    = 21
POINT_MAGIC_ATT_GRADE   = 22
POINT_MAGIC_DEF_GRADE   = 23
POINT_EMPIRE_POINT    = 24
POINT_LEVEL_STEP    = 25
POINT_STAT	  = 26
POINT_SUB_SKILL	 = 27
POINT_SKILL	  = 28
POINT_WEAPON_MIN    = 29
POINT_WEAPON_MAX    = 30
POINT_PLAYTIME	 = 31
POINT_HP_REGEN	 = 32
POINT_SP_REGEN	 = 33
POINT_BOW_DISTANCE    = 34
POINT_HP_RECOVERY    = 35
POINT_SP_RECOVERY    = 36
POINT_POISON_PCT    = 37
POINT_STUN_PCT	 = 38
POINT_SLOW_PCT	 = 39
POINT_CRITICAL_PCT    = 40
POINT_PENETRATE_PCT    = 41
POINT_CURSE_PCT	 = 42
POINT_ATTBONUS_HUMAN   = 43
POINT_ATTBONUS_ANIMAL   = 44
POINT_ATTBONUS_ORC    = 45
POINT_ATTBONUS_MILGYO   = 46
POINT_ATTBONUS_UNDEAD   = 47
POINT_ATTBONUS_DEVIL   = 48
POINT_ATTBONUS_INSECT   = 49
POINT_ATTBONUS_FIRE    = 50
POINT_ATTBONUS_ICE    = 51
POINT_ATTBONUS_DESERT   = 52
POINT_ATTBONUS_MONSTER   = 53
POINT_ATTBONUS_WARRIOR   = 54
POINT_ATTBONUS_ASSASSIN   = 55
POINT_ATTBONUS_SURA    = 56
POINT_ATTBONUS_SHAMAN   = 57
POINT_ATTBONUS_TREE    = 58
POINT_RESIST_WARRIOR   = 59
POINT_RESIST_ASSASSIN   = 60
POINT_RESIST_SURA    = 61
POINT_RESIST_SHAMAN    = 62
POINT_STEAL_HP	 = 63
POINT_STEAL_SP	 = 64
POINT_MANA_BURN_PCT    = 65
POINT_DAMAGE_SP_RECOVER   = 66
POINT_BLOCK	  = 67
POINT_DODGE	  = 68
POINT_RESIST_SWORD    = 69
POINT_RESIST_TWOHAND   = 70
POINT_RESIST_DAGGER    = 71
POINT_RESIST_BELL    = 72
POINT_RESIST_FAN    = 73
POINT_RESIST_BOW    = 74
POINT_RESIST_FIRE    = 75
POINT_RESIST_ELEC    = 76
POINT_RESIST_MAGIC    = 77
POINT_RESIST_WIND    = 78
POINT_REFLECT_MELEE    = 79
POINT_REFLECT_CURSE    = 80
POINT_POISON_REDUCE    = 81
POINT_KILL_SP_RECOVER   = 82
POINT_EXP_DOUBLE_BONUS   = 83
POINT_GOLD_DOUBLE_BONUS   = 84
POINT_ITEM_DROP_BONUS   = 85
POINT_POTION_BONUS    = 86
POINT_KILL_HP_RECOVERY   = 87
POINT_IMMUNE_STUN    = 88
POINT_IMMUNE_SLOW    = 89
POINT_IMMUNE_FALL    = 90
POINT_PARTY_ATTACKER_BONUS  = 91
POINT_PARTY_TANKER_BONUS  = 92
POINT_ATT_BONUS	 = 93
POINT_DEF_BONUS	 = 94
POINT_ATT_GRADE_BONUS   = 95
POINT_DEF_GRADE_BONUS   = 96
POINT_MAGIC_ATT_GRADE_BONUS  = 97
POINT_MAGIC_DEF_GRADE_BONUS  = 98
POINT_RESIST_NORMAL_DAMAGE  = 99
POINT_HIT_HP_RECOVERY   = 100
POINT_HIT_SP_RECOVERY    = 101
POINT_MANASHIELD    = 102
POINT_PARTY_BUFFER_BONUS  = 103
POINT_PARTY_SKILL_MASTER_BONUS = 104
POINT_HP_RECOVER_CONTINUE  = 105
POINT_SP_RECOVER_CONTINUE  = 106
POINT_STEAL_GOLD    = 107
POINT_POLYMORPH	 = 108
POINT_MOUNT	  = 109
POINT_PARTY_HASTE_BONUS   = 110
POINT_PARTY_DEFENDER_BONUS  = 111
POINT_STAT_RESET_COUNT   = 112
POINT_HORSE_SKILL    = 113
POINT_MALL_ATTBONUS    = 114
POINT_MALL_DEFBONUS    = 115
POINT_MALL_EXPBONUS    = 116
POINT_MALL_ITEMBONUS   = 117
POINT_MALL_GOLDBONUS   = 118
POINT_MAX_HP_PCT    = 119
POINT_MAX_SP_PCT    = 120
POINT_SKILL_DAMAGE_BONUS  = 121
POINT_NORMAL_HIT_DAMAGE_BONUS = 122
POINT_SKILL_DEFEND_BONUS  = 123
POINT_NORMAL_HIT_DEFEND_BONUS = 124
POINT_PC_BANG_EXP_BONUS   = 125
POINT_PC_BANG_DROP_BONUS  = 126

 

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

Sunushi mam nadzieje że się nudzisz xD ?

Napiszesz mi queścika?

W którym trzeba

Pójść do kowala------>Pójść do H. Zbr--------> H. ZBr będzie kazał zdobyć-------> Stalke (byle jaka postać)--------->Dać ja H. zbr---------> I h. zbr da dla kowala kawalek zepsuje zbr. i kowal da nagrde

100kk PLN

Zbr. Z nieb. stali

42009

44009

46009

48009

i

60kk PD.

Misja będzie na 111 lvl

Opublikowano

Budowa nie różni się niczym, jedynie jest kilka nowych funkcji na nowszym game. Jeśli chodzi o state to jak najbardziej, większość YMIRowskich questów kończy się na state __COMPLETE__

 

DevilxMetin, spróbuję, jednak może trochę minąć zanim go napisze (trochę zajęty jestem)

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

@DevilxMetin już po woli kończę pisać

 

@Sunushi a jest jakaś różnica pomiędzy

pc.count_item()

a

pc.countitem()

 

@edit już skończyłem pisać

 

 

quest prosba_kowala begin
   state start begin
       when login or levelup with pc.get_level() >= 111 begin
           set_state(info)
       end
   end

   state info begin
       when letter begin
           send_letter("Idz do kowala")
           local n = find_npc_by_vnum(20016)
           if n != 0 then
               target.vid("target_kowal",n,"Kowal")
           end
       end

       when button or info begin
           say_title("Prosba Kowala")
           say("Czy chcesz wykonać tą misję ??")
           local s = select("Tak","Nie")
           if s == 1 then
               say("Idź do kowala")
           elseif s == 2 then
               target.delete("target_kowal")
               set_state(koniec)
           end
       end

       when target_kowal.target.click or 20016.click begin
           target.delete("target_kowal")
           say_title("Kowal :")
           say("Idź do Mirine")
           set_state(prosba_zbroja)
       end
   end

   state prosba_zbroja begin
       when letter begin
           send_letter("Idz do Mirine")
           local n = find_npc_by_vnum(20006)
           if n != 0 then
               target.vid("target_zbroje",n,"Mirine")
           end
       end

       when button or info begin
           say_title("Prosba Kowala")
           say("Idź do Mirine")
       end

       when target_zbroje.target.click or 20006.click begin
           target.delete("target_zbroje")
           say_title("Mirine :")
           say("Zdobądź dla mnie stalkę.")
           say("Może być obojętnie jaka.")
           say("Jak już będziesz ją miał wróc do mnie")
           set_state(stalka)
       end
   end

   state stalka begin
       when 20006.chat."Masz dla mnie stalkę ??" begin
           say_title("Mirine :")
           if pc.count_item(11297) >= 1 or pc.count_item(11497) >= 1 or pc.count_item(11697) >= 1 or pc.count_item(11897) >= 1 then
               say("Dzięki za stalkę ")
               say("Masz tutaj kawałek zepsutej zbroi.")
               say("Idź i zanieś to kowalowi.")
               pc.give_item2(30005)
               set_state(prosba_nagroda)
           else
               say("Nie masz stalki ")
               say("Wróc jak będziesz ją miał.")
           end
       end
   end

   state prosba_nagroda begin
       when letter begin
           send_letter("Idz do kowala po nagrode")
           local n = find_npc_by_vnum(20016)
           if n != 0 then
               target.vid("target_nagroda",n,"Kowal")
           end
       end

       when button or info begin
           say_title("Prosba kowala")
           say("Idź do kowala po nagrodę.")
           say("I przy okazji zanieś mu kawałek zepsutej zbroi.")
       end

       when target_nagroda.target.click or 20016.click begin
           say_title("Kowal :")
           say("Dzięki za kawałek zepsutej zbroi.")
           say("W nagrodę otrzymasz :")
           say_reward("100.000.000 PLN")
           say_reward("60.000.000 PD")
           say_reward("Zbr. Z nieb. stali")
           pc.remove_item(30005,1)
           pc.change_money(100000000)
           pc.give_exp2(60000000)
           if pc.job == 0 then -- Wojownik
               pc.give_item2(42009)
           elseif pc.job == 1 then -- Ninja
               pc.give_item2(44009)
           elseif pc.job == 2 then -- Sura
               pc.give_item2(46009)
           elseif pc.job == 3 then -- Szaman
               pc.give_item2(48009)
           end
           set_state(koniec)
       end
   end

   state koniec begin
   end
end

 

Opublikowano

to teraz mam pytanie ktorego moge uzyc jako nagrode w quescie (nazwa bonusu)

 

apply.

POINT_HP_REGEN

czy

apply.

HP_REGEN

 

Czy zawsze trzeba uzywac POINT czy tyko w nektorych przypadkach

 

czy zawsze moge uzyc point zmieniajac tylko

affect.add_collect

na

affect.add_collect_point

 

tak jest w jednym z questow:

affect.add_collect(apply.MOV_SPEED,15,60*60*24*365*60)    
affect.add_collect_point(POINT_DEF_BONUS,15,60*60*24*365*60) --60łâ

Opublikowano

Witam, mam pytanie odnośnie pisania questów.

 

Jak napisać, żeby ktoś musiał zabić konkretnego gracza?

 

I jeszcze jak napisac, ze po zabiciu monarchy pojawiał się komunikat .

wersja która mi nie działa:

when kill with npc.is_pc() and oh.ismonarch() != 0 begin

say("blablaa")

end

Opublikowano

Może ktoś naprawić tego questa? żeby był kompletny ?

 

 

quest diamondt begin
		    state start begin
						    when 20087.chat."Wieza Se-Pong" begin
										    if pc.level >= 95 then
														    say_title("Strażnik Se-Pong: ")
														    say_title("Wieża Se-Pong jest przeklęta...")
														    say_reward("Czy masz odwage wejść do niej?")
														    local s = select("Wejdz", "Anuluj")
														    if a == 1 then
																		    pc.setqf("priv_se_pong", 1)
																		    d.join(66)
														    end
										    else
														    say("Posiadasz zbyt maly level")
										    end
						    end
						    when login begin
										    if pc.get_map_index() == 65 then
														    if pc.getqf("priv_se_pong") > 0 then
																		    pc.setqf("priv_se_pong", 0)
														    end
										    end
										    if pc.get_map_index() == 66 then
														    if pc.get_x() < 2048+88 or pc.get_y() < 6656+577 or pc.get_x() > 2048+236 or pc.get_y() > 6656+737 then
																		    pc.warp((5376+532)*100, (512+596+4)*100, 65)
														    end
														    pc.set_warp_location(65, 5376+532, 512+596+4)
										    elseif pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 then
														    pc.set_warp_location(65, 5376+532, 512+596+4)
										    end
						    end
						    when login with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
										    if pc.getqf("priv_se_pong") > 0 then
														    pc.setqf("priv_se_pong", 0)
														    d.regen_file("data/dungeon/se_pong_regen.txt")
														    d.spawn_mob(8032, 195, 690)
										    end
						    end
						    when 8032.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
										    timer("se_pong", 6)
						    end
						    when se_pong.timer begin
										    d.new_jump_all(66, special.devil_tower[1][1], special.devil_tower[1][2])
										    d.regen_file("data/dungeon/se_pong_regen2.txt")
										    d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/se_pong_regen3.txt")
						    end
						    when 1093.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
										    d.jump_all(special.devil_tower[3][1], special.devil_tower[3][2])
										    d.spawn_mob(8033, 372, 631)
						    end
						    when 8033.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
										    d.regen_file("data/dungeon/se_pong_regen4.txt")
						    end
						    when 1095.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
										    d.setf("pieczenci", 5)
										    d.jump_all(special.devil_tower[4][1], special.devil_tower[4][2])
										    d.regen_file("data/dungeon/se_pong_regen5.txt")
						    end
						    when 2291.kill with pc.in_dungeon() begin
										    pc.give_item2(50084, 1)
						    end
						    when 20353.take with item.vnum == 50084 begin
										    npc.purge()
										    item.remove()
										    d.setf("pieczenci", d.getf("pieczenci") - 1)
										    if d.getf("pieczenci") <= 0 then
														    d.clear_regen()
														    d.regen_file("data/dungeon/se_pong_regen6.txt")
														    d.set_warp_at_eliminate(4, d.get_map_index(), special.devil_tower[2][1], special.devil_tower[2][2], "data/dungeon/se_pong_regen7.txt")
										    end
						    end
						    when 2604.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
										    d.clear_regen()
										    d.spawn_mob(2501, 617, 676)
										    d.jump_all(2048+590, 6656+638)
						    end
						    when 2501.kill with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
										    d.spawn_mob(20074, 617, 676)
										    d.regen_file("data/dungeon/se_pong_regen7.txt")
						    end
						    when 20087.chat."Wyjdz" with pc.in_dungeon() and pc.get_map_index() >= 660000 and pc.get_map_index() < 670000 begin
										    say("Chcesz wyjść ")
										    local b = select("Wyjdz", "Anuluj")
										    if b == 1 then
														    timer("wyjdz_se_pong", 12)
										    end
						    end
						    when wyjdz_se_pong.timer begin
										    d.exit_all()
						    end
		    end
end

 

Pomogłam? Daj: "Lubie to"

Opublikowano

@Kusicielka pierwszy rzut na quest i już błąd

zamiast

if pc.level >= 95 then

daj

if pc.get_level() >= 95 then

 

Jak zauważę więcej błędów to dam edit.

Opublikowano

Bony w questach wyglądają mniej więcej tak:

 

affect.add_collect(apply.MOV_SPEED,15,60*60*24*365*60)  

 

a co zrobić żeby jako bon było odporność na daną klasę, czy bd to wyglądało tak?

 

affect.add_collect(apply.RESIST_WARRIOR,15,60*60*24*365*60)   

czy moze tak

affect.add_collect(apply.POINT_RESIST_WARRIOR,15,60*60*24*365*60)   

 

kiedy uzywamy POINT

kiedy uzywamy GRADE

 

czy dajac bonus na klase piszemy apply.ATT_BONUS_TO_WARRIOR

czy moze piszemy apply.POINT_ATTBONUS_WARRIOR

 

dlaczego tak a nie inaczej i kiedy jakiego uzywamy. Z gory dziekuje za pomoc

 

Potrzebuję przyklad zapisu odpornosci na kazda klase silny na kazda klasem wartosc ataku, max hp reg hp, obrazenia od x% bd dodane do pz, otrucie, odpornosci np na magie, otrucie itd

 

za pomoc daje plusy i like

 

Proszę o jak najszybszą odpowiedź.

Opublikowano

kilu,

affect.add_collect(xx,15,60*60*24*365*60)

w miejsce xx wpisujesz cyferkę z tych bonów co podałem Ci wcześniej, np 59 to odporność na wojowników, 60 na ninje itd. Powinno tak załapać.

Koniec z MPCForum.pl i ogółem z metinem

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...