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

wynagrodzenie polegana tym, iz tam masz jakas rozmowe(po zabiciu w Twoim przypadku i gdy juz rozmowa toczy sie z jakims npc) i ustawiasz sobie say'e ze otrzymujesz np 100kkyang 100kk PD itp itd, a w quescie ustawiasz to na zasadzie takiej:

 

pc.give_exp2(100000000) --- 100kk PD
pc.change_money(100000000) --- 100kk Yang
pc.give_item(x, y) --- x jest to id itemu natomiast y jest to ilość tego itemu np dla 10 strategii kontrataku to jest

pc.give_item(70031, 10)

 

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

Witam prosił bym o napisanie takiego questa id npc oraz rozmowe napisze sam

 

 

Udaj sie do Wiezy Wygnangocw pokonaj 40x Bossa o id 9997

po czym zdobedziesz Przedmiot i musisz sie udac na Zniszczone Pole ubic 10x Bossa o id 2611

dropnie ci przedmiot p

potem ubic 5x Bossa o id 2636 i zaniesc to do npc i dostajesz nagrode

 

Opublikowano

quest Zabij_HaeTae begin
		state start begin
										when login or levelup with pc.level >= 50 begin
																		set_state(jakis)
														end
						end

						state jakis begin
										when letter begin
																		local v = find_npc_by_vnum(30013)
																						if v != 0 then
																										target.vid("__TARGET__", v, "Buuu")
																						end
														end

														when __TARGET__.target.click or
																		30013.chat."Hae-Tae" begin
																						say_title(mob_name(30013)..": ")
																										target.delete("__TARGET__")
																														say("Witaj. Możesz zdobyć ")
																														say("pewien przedmiot,")
																														say("którym umocnisz swoją ")
																														say("zbroje 6/7 bon")
																														wait()
																														say_title(mob_name(30013)..": ")
																														say("Musisz tylko zabić ")
																														say("Hae-Tae.")
																														say("Idź i go zabij.")
																														say("Powodzenia.")
																														set_state(kill)
														end
						end

						state kill begin
										when 5002.kill begin
																		pc.give_item2(71051, 1)
																						say("Zdobyłeś przedmiot.")
																						say("Teraz możesz wzmocnić swoją zbroję ")
																						timer("poczatkujacy", 86400)
														end

														when poczatkujacy.timer begin
																		restart_quest()
														end
						end
end

 

 

 

Naprawi mi go ktoś tak aby się wyświetlał po lewej stronie jako Quest i można by go wykonać tylko 1 raz

sygnafranc.png

Opublikowano

2xUp.

 

Sprawdź

quest daj_level begin
state start begin
when 20363.chat."Daj Level" begin
say_title("Daj level. ")
say("")
say_reward("Pamiętaj ,że stracisz dotychczasowy poziom. ")
say("")
say("Wpisz jaki level chcesz otrzymać. ")
local x = input()

----------------
if x == "" then
say_reward("Musisz wpisać jaki level chcesz dostać. ")
npc.unlock()
else
command("a "..pc.get_name().." "..x)
end
end
end
end

 

UP

trzymaj

 

 

 

when wyjdz.timer begin

d.exit_all()

end

end

end[/code]

 

Działa tylko ze na postaci GM a na normalny Playerze nie ;/

5_SurvingIgnite.gif

Opublikowano

xxx

 

@EDIT

 

quest już działa.. sam naprawilem.

//nieregulaminowa sygnatura

Opublikowano

4xUp

 

----------------------
--Made By Pon.Lok--
----------------------
quest wieza begin
state start begin
when 20015.chat."Wieża Wygnańców" begin
say("Trzymaj się ")
--------------------------------
local x = podaj kaordy x*100
local y = podaj kaordy y*100
--------------------------------
wait()
pc.warp(x, y)
notice("Zabij Bossy. ")
d.setf("pierwszy", 40)
end

when 9997.kill with pc.in_dungeon() begin
d.setf("pierwszy", d.getf("pierwszy") - 1)
if d.getf("pierwszy") <= 0 then
d.setf("drugi", 10)
pc.give_item2(id, ilosc)
else
d.notice("Pozostało"..d.getf("pierwszy"))
end

when 2611.kill with pc.in_dungeon() begin
d.setf("drugi", d.getf("drugi") - 1)
if d.getf("drugi") <= 0 then
d.setf("ostatni", 5)
else
d.notice("Pozostało"..d.getf("drugi"))
end

when 2611.kill with pc.in_dungeon() begin
d.setf("ostatni", d.getf("ostatni") - 1)
if d.getf("ostatni") <= 0 then
-----------------------------------
local v=find_npc_by_vnum(20015) -- jesli inny npc zmien jego id --
elseif 0 == v then
else
target.vid("__TARGET__", v, "NPC.")
-----------------------------------
else
d.notice("Pozostało"..d.getf("ostatni"))
end
end

when __TARGET__.target.click begin
		target.delete("__TARGET__")
say_title("Nagroda")
pc.give_item2(id, ilosc)
end
end
end

 

 

Na przyszłość bardziej opisuj misje... nie mam zamiaru domyślać się.

 

Poklaps a teraz

 

quest daj_level begin
state start begin
when 20363.chat."Daj Level" begin
say_title("Daj level. ")
say("")
say_reward("Pamiętaj ,że stracisz dotychczasowy poziom. ")
say("")
say("Wpisz jaki level chcesz otrzymać. ")
local x = input()
----------------
if x == "" then
say_reward("Musisz wpisać jaki level chcesz dostać. ")
npc.unlock()
else
repeat
pc.give_exp2(pc.get_next_exp())
until pc.level == x
end
end
end
end

Nieregulaminowa sygnatura

Opublikowano

Poszukuję questu coś ala misja na 2,3,4... poziom konia że musisz jeździć do takich punktów na różnych mapach.

I chcę że jak tam dojedziesz to po wjechaniu "pod" strzałkę to wyskakuje okienko z informacją o udamy dojechaniu do punktu.

Tych punktów chciałbym 4.

Za każdy dojechany punkt otrzymujesz 70031.

Możesz schodzić z konia itp.

Potem po dojechaniu do all punktów musisz wrócić do 2604 i oddać mu 4 itemy(70031).

Questa daje nam:

2604.

Opublikowano

Jak dodać komunikat, gdy postać wejdzie na konia lub "rozpocznie tutaj".

quest misja begin
state start begin
 when (postac wejdzie na konia) begin
 chat("Przykładowy tekst")
 end
end
end

Opublikowano

Sprawdź tak.

 

quest test begin
state start begin
 when login begin
  if horse.ride() then
   chat("Własnie jeździsz na koniu. ")

  elseif horse.unsummon() then
   chat("Odwołałeś swojego konia. ")

  elseif horse.summon() then
   chat("Właśnie przywołałeś swojego konia. ")

  end
 end
end
end

 

Chyba zadziała.

Nieregulaminowa sygnatura

Opublikowano

 

 

 

Pon.Lok

To działanie będzie wywołane tylko jeden raz, ja potrzebuje czegoś co będzie się uruchamiało przy każdym wejściu i zejściu z konia, a po za tym horse.ride() nie zadziałało, gdy zmienilem na pc.is_riding() pojawił się komunikat po zalogowaniu.

Opublikowano

Nie ma bezpośrednio when tych funkcji co których chcesz. można bawić się typu when login or enter with pc.is_riding() begin itp. Ale szczerze nie wiem czy to zadziała .

Nieregulaminowa sygnatura

Opublikowano

 

quest jakistamquest begin

state start begin

when login or levelup with pc.get_level >= 50 begin

sets_state(info)

end

end

state info begin

when letter begin

local v = find_npc_by_vnum(20021)

if v != 0 then

target.vid("__TARGET__", v, "Ariyoung")

end

send_letter("Proroczy Sen")

end

when button or info begin

say_title("Proroczy sen")

say("sadsa")

say("adsa")

say_reward("dsds")

end

when __TARGET__.target.click or

20021.chat."Test" begin

target.delete("__TARGET__")

say_title("sadsa")

say("dsdsd")

set_state(info3)

end

state info3 begin

when letter begin

send_letter("Zabij dziki pies")

end

when button or info3 begin

say("Zabij dziki pies")

end

when 1001.kill with pc.countitem(70021)==0 begin

local random = math.random(5)

if random == 1 then

pc.give_item2(70021, 1)

say("sdsds")

set_state(__COMPLETE__)

end

end

end

state __COMPLETE__ begin

end

end

 

 

Proszę o poprawę,

imetin_logo.png

Opublikowano

up sprawdź.

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

state info begin
 when letter begin
  send_letter("Proroczy Sen")
  local v = find_npc_by_vnum(20021)
  if v != 0 then
  target.vid("__TARGET__", v, "Ariyoung")
  end
 end

 when button or info begin
  say_title("Proroczy sen")
  say("sadsa")
  say("adsa")
  say_reward("dsds")
 end

 when __TARGET__.target.click or
  20021.chat."Test" begin
  target.delete("__TARGET__")
  say_title("sadsa")
  say("dsdsd")
  set_state(info3)
 end

 state info3 begin
  when letter begin
send_letter("Zabij dziki pies")
  end

 when button or info3 begin
  say("Zabij dziki pies")
 end

 when 101.kill with pc.countitem(70021) == 0 begin
  local szansa = 50 --szansa na drop wynosi 50%--
if math.random(szansa) == 1 then
 pc.give_item2(70021, 1)
 say("sdsds")
 set_state(__COMPLETE__)
end
 end
end
state __COMPLETE__ begin
end
end

Nieregulaminowa sygnatura

Opublikowano

Poszukuję questu coś ala misja na 2,3,4... poziom konia że musisz jeździć do takich punktów na różnych mapach.

I chcę że jak tam dojedziesz to po wjechaniu "pod" strzałkę to wyskakuje okienko z informacją o udamy dojechaniu do punktu.

Tych punktów chciałbym 4.

Za każdy dojechany punkt otrzymujesz 70031.

Możesz schodzić z konia itp.

Potem po dojechaniu do all punktów musisz wrócić do 2604 i oddać mu 4 itemy(70031).

Questa daje nam:

2604.

Opublikowano

4xUp

 

----------------------
--Made By Pon.Lok--
----------------------
quest wieza begin
state start begin
when 20015.chat."Wieża Wygnańców" begin
say("Trzymaj się ")
--------------------------------
local x = podaj kaordy x*100
local y = podaj kaordy y*100
--------------------------------
wait()
pc.warp(x, y)
notice("Zabij Bossy. ")
d.setf("pierwszy", 40)
end

when 9997.kill with pc.in_dungeon() begin
d.setf("pierwszy", d.getf("pierwszy") - 1)
if d.getf("pierwszy") <= 0 then
d.setf("drugi", 10)
pc.give_item2(id, ilosc)
else
d.notice("Pozostało"..d.getf("pierwszy"))
end

when 2611.kill with pc.in_dungeon() begin
d.setf("drugi", d.getf("drugi") - 1)
if d.getf("drugi") <= 0 then
d.setf("ostatni", 5)
else
d.notice("Pozostało"..d.getf("drugi"))
end

when 2611.kill with pc.in_dungeon() begin
d.setf("ostatni", d.getf("ostatni") - 1)
if d.getf("ostatni") <= 0 then
-----------------------------------
local v=find_npc_by_vnum(20015) -- jesli inny npc zmien jego id --
elseif 0 == v then
else
target.vid("__TARGET__", v, "NPC.")
-----------------------------------
else
d.notice("Pozostało"..d.getf("ostatni"))
end
end

when __TARGET__.target.click begin
		target.delete("__TARGET__")
say_title("Nagroda")
pc.give_item2(id, ilosc)
end
end
end

 

 

Na przyszłość bardziej opisuj misje... nie mam zamiaru domyślać się.

 

Poklaps a teraz

 

quest daj_level begin
state start begin
when 20363.chat."Daj Level" begin
say_title("Daj level. ")
say("")
say_reward("Pamiętaj ,że stracisz dotychczasowy poziom. ")
say("")
say("Wpisz jaki level chcesz otrzymać. ")
local x = input()
----------------
if x == "" then
say_reward("Musisz wpisać jaki level chcesz dostać. ")
npc.unlock()
else
repeat
pc.give_exp2(pc.get_next_exp())
until pc.level == x
end
end
end
end

Działa tylko ze jak naciskam "Daj level" To mi się zacina client :/ I levela nie daje ;/

5_SurvingIgnite.gif

Opublikowano

A jaki level wpisałeś . ?

Bo jak np 255 to się nie dziwię, bo pętla musi zrobić 254 powtórzeń i cleint nie wyrabia i loga Cie.

Nieregulaminowa sygnatura

Opublikowano

Pon.Lok, nie przesadzajmy :D

 

W queście trzeba dopisać

if x > 0 and x < 255 and x > pc.get_level() then
(cześć quest dająca lvl)
else
return
end

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

:D

 

sunp.png

Sygnatura wykonana przez

Isuribi aka Amelka.

Opublikowano

 

state start begin

when login or levelup with pc.get_level >= 5 begin

set_state(info)

end

end

state info begin

when letter begin

send_letter("Polowanie")

end

 

To jest część questa... wgrywa się dobrze... lecz w grze... list nie przychodzi do mnie...

imetin_logo.png

Opublikowano

spróbuj teraz

quest test begin
   state start begin
       when login or levelup with pc.get_level >= 5 begin
           set_state(info)
       end
   end
   state info begin
       when letter begin
           send_letter("Polowanie")
       end
       when button or info begin
           say_title("Tytuł.")
           say("")
           say("Treść listu")
       end
   end
end

Opublikowano

spróbuj teraz

quest test begin
state start begin
	when login or levelup with pc.get_level >= 5 begin
		set_state(info)
	end
end
state info begin
	when letter begin
		send_letter("Polowanie")
	end
	when button or info begin
		say_title("Tytuł.")
		say("")
		say("Treść listu")
	end
end
end

 

Nie pomaga...

imetin_logo.png

Opublikowano

A jaki level wpisałeś . ?

Bo jak np 255 to się nie dziwię, bo pętla musi zrobić 254 powtórzeń i cleint nie wyrabia i loga Cie.

Wpisałem 150 <<< bo taki mam max

Jak źle to co muszę zrobić ??

5_SurvingIgnite.gif

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...