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

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

to ja poproszę dosyć może złożonego - może nie - questa :D Ale chciałbym zrealizować swój pomysł, jednak chyba trochę się pogubiłem ( mistrzem w pisaniu questów nie jestem ;d) i wolę poprosić o pomoc ;p A więc przejdźmy do rzeczy : Poproszę o questa w takiej postaci : rozmowa z npc , po rozmowie przenosi gracza na dana mapę o kordach x,y , po naciśnięciu na przedmiot (mi chodzi głównie o kolumnę) pojawia się informacja, a po jej zamknięciu respi się boss , po jego zabiciu naciskam drugą kolumnę, informacja, pojawia się drugi boss i tak trzeci i czwarty raz , po zabiciu ostatniego podchodzę do npc, rozmawiam z nim , po zamknięciu chatu przenosi go i mnie na mapę o kordach x,y , rozmawiam z nim , respi sie ostatni boss , po zabiciu bossa , wracam do tego NPC , rozmawiam i npc zamienia się w mobka ( tutaj z zastosowaniem npc.purge ) a po jego zabiciu wylatuje drop , po 30 sekundach przenosi gracza do m1 i koniec ( to z przenoszeniem do m1 konieczne nie musi być, bo można tepnąć sie pierścieniem) ;p I aby questa mogło się robić co 30min ;d Wiem, że trochę dużo wymagam i pewnie polecą zaraz komenty, że za takie questy to się płaci i nie wiem co jeszcze, ale spróbować zawsze mogłem .

 

Objaśnienie : Miałem pomysł na taki mini-dungeon . Rozmawiasz z danym npc i przenosisz się na małą mapkę w stylu "komnaty", gdzie znajdują się 4 kolumny a na końcu stoi npc (którego na końcu zabijamy ). Kolumny oznaczają tak jakby "zaklęte dusze bossów", a po naciśnieciu ich pojawiają się po kolei 4 bossy . W sumie tu moznaby zakończyć i zabić głownego bossa, ale pomyślałem nad rozbudowaniem i zamiast go zabijać rozmawiamy z nim, a on przed nami "niby ucieka" na inną mapkę , gadamy z nim na niej, a on przyzywa nowego bossa, a po jego zabiciu wreszcie możemy zabić tego NPC-moba, dzięki czemu kończymy questa i otrzymujemy drop :DTe wszystkie bossy to tak jakby strażnicy broniący głównego bossa :P

 

Może nikt mi nie pomoże, może choć trochę ktoś mnie nakieruje, może w ogóle nie dostanę odpowiedzi, ale na pewno komuś przyda się taki pomysł i być może zrobi do niego questa i wykorzysta :P Dzieki za wysłuchanie-przeczytanie, a gdyby miał ktoś ochotę napisać w tej sprawie to zapraszam na pw lub na GG: 162158

 

Dzięki , broneq00 ;p

gaaran.gif

Master of Client modding

^^

 

						 "Dopóki nie skorzystałem z internetu, nie wiedziałem, że na świecie jest tylu idiotów."

Stanisław Lem

Opublikowano

@Kopson44 sprawdź czy bedzie działać

http://wklej.to/fknNV

 

@pati9428

Zależy jak masz zrobiony quest ale możesz zrobić coś takiego przy włączaniu dropu eventowego przypisać do game.set_event_flag np. liczbę 5 i jeżeli będzie w game.get_event_flag ta liczba to dopiero dropi a żeby wyłączyć to zamiast 5 przypisujesz np. 1.

Oto przykładowy quest :

http://wklej.to/S69rw

Opublikowano

maniek1310 ja ten quest mam bez flag robiony. Nie wiem czy tak jest prawidłowo ale ważne że działa .

Mój Quest :

 

quest drop begin
state start begin
when 20016.chat."GM: Specjalny Event - Drop " with pc.is_gm()  begin
say_title("Drop? ")
local a = select("Tak ", "Zakoncz ")
if a == 2 then
return
end
if a == 1 then
local s = math.random(100)
if s >= 1 and s < 71 then
pc.give_item2(50117)
end
end
end
end
end

Opublikowano

quest drop begin
state start begin
 when 20016.chat."GM: Specjalny Event - Drop " with pc.is_gm()  begin
  local s = select("Aktywacja" , "Dezaktywacja" , "Anuluj")
   if s == 1 then
 game.set_event_flag("event", 1)
   elseif s == 2 then
 game.set_event_flag("event", 0)
   end
 end

 when kill with not npc.is_pc() begin
  local s = math.random(100)
   if s >= 1 and s < 71 then
    pc.give_item2(50117)
   end
 end
end
end

 

Sprawdź.

 

umarł

Opublikowano

quest drop begin
state start begin
 when 20016.chat."GM: Specjalny Event - Drop " with pc.is_gm()  begin
  local s = select("Aktywacja" , "Dezaktywacja" , "Anuluj")
if s == 1 then
 game.set_event_flag("event", 1)
elseif s == 2 then
 game.set_event_flag("event", 0)
end
 end

 when kill with not npc.is_pc() begin
  local s = math.random(100)
   if s >= 1 and s < 71 then
	pc.give_item2(50117)
   end
 end
end
end

 

Sprawdź.

Będzie dropiło nawet jak wyłączy event, zrób tak:

quest drop begin
state start begin
 when 20016.chat."GM: Specjalny Event - Drop " with pc.is_gm()  begin
  local s = select("Aktywacja" , "Dezaktywacja" , "Anuluj")
   if s == 1 then
	 game.set_event_flag("event", 1)
   elseif s == 2 then
	 game.set_event_flag("event", 0)
   end
 end

 when kill with not npc.is_pc() begin
 if game.get_event_flag("event") > 0 then
	  local s = math.random(100)
	   if s >= 1 and s < 71 then
	    pc.give_item2(50117)
	   end
   else
  return
 end
end
end
end

Opublikowano

@kwiatmix a po co robić dodatkową pętlę if jak można do when dodać and

 

quest drop begin
state start begin
when 20016.chat."GM: Specjalny Event - Drop " with pc.is_gm() begin
local s = select("Aktywacja" , "Dezaktywacja" , "Anuluj")
if s == 1 then
game.set_event_flag("event", 1)
elseif s == 2 then
game.set_event_flag("event", 0)
end
end

when kill with not npc.is_pc() and game.get_event_flag("event") > 0 begin
local s = math.random(100)
if s >= 1 and s < 71 then
pc.give_item2(50117)
end
end
end
end

Opublikowano

Będzie dropiło nawet jak wyłączy event, zrób tak:

quest drop begin
state start begin
 when 20016.chat."GM: Specjalny Event - Drop " with pc.is_gm()  begin
  local s = select("Aktywacja" , "Dezaktywacja" , "Anuluj")
if s == 1 then
	 game.set_event_flag("event", 1)
elseif s == 2 then
	 game.set_event_flag("event", 0)
end
 end

 when kill with not npc.is_pc() begin
 if game.get_event_flag("event") > 0 then
	  local s = math.random(100)
	   if s >= 1 and s < 71 then
		pc.give_item2(50117)
	   end
else
  return
 end
end
end
end

 

Ta, pojebało mi się...


 when kill with not npc.is_pc() and game.get_event_flag("event") == 1 begin

 

umarł

Opublikowano

@up

quest kwiatmix_metin begin
 state start begin
   when 8029.kill begin
   pc.setqf("kwiatmix", pc.getqf("kwiatmix")+1)
 if pc.getqf("kwiatmix") >= 10 then
   pc.setqf("kwiatmix", 0)
   say("Gratulacje, kolejne 10 metinów zniszczone")
  end
   end
 end
end

Opublikowano

@maniek1310 dzięki, że chociaż zainteresowałeś się ;p Wiem, że to trochę długi quest, ale ja dopiero zaczynam swoją drogę w pisaniu questów ( nawet przerwałem prace nad własnym serwerem dopóki nie stanę się "lepszym adminem" :D ) W tym queście było, ze przenosi mnie i NPC na inną mapę, ale nie wiem czy jest to wykonalne, więc można najwyzej zastosować npc.purge, a później dodać resp tego NPC na nowej mapce i chyba będzie po kłopocie :D Ale co ja będę mówił skoro się nie znam ;d Czekam - nawet jeśli miałyby być to tylko wskazówki a nie cały quest ;p

gaaran.gif

Master of Client modding

^^

 

						 "Dopóki nie skorzystałem z internetu, nie wiedziałem, że na świecie jest tylu idiotów."

Stanisław Lem

Opublikowano

Zadziała?

quest cien begin
    state start begin
				    when 71125.use begin
								    pc.mount(20110, 1728000)
	  pc.mount_bonus(63, 20)
						    end

						    when 71124.use begin
								    pc.mount(20113, 1728000)
	  pc.mount_bonus(63, 20)
						    end
							    when 71126.use begin
								   pc.mount(20112, 1728000)
	    pc.mount_bonus(63, 20)
							    end
							    when 71127.use begin
								   pc.mount(20111, 1728000)
	    pc.mount_bonus(63, 20)
						  end
		    end
end

Chodzi mi o wierzchowce 480h ściągane/zakładane z bonem 20 potwory.

Opublikowano

Nie, nie zadziała

 

zamiast

 

pc.mount(20111, 1728000)
pc.mount_bonus(63, 20)

 

ma być na przykład

 

pc.mount(20113, 60*60*24*365*60)
pc.mount_bonus(apply.DEF_GRADE_BONUS,100,60*60*24*365*60)

Opublikowano

UP

quest cien begin
	    state start begin
									    when 71125.use begin
																	    pc.mount(20110, 1728000)
			  pc.mount_bonus(63, 20)
													    end

													    when 71124.use begin
																	    pc.mount(20113, 1728000)
			  pc.mount_bonus(63, 20)
													    end
															    when 71126.use begin
																	   pc.mount(20112, 1728000)
			    pc.mount_bonus(63, 20)
															    end
															    when 71127.use begin
																	   pc.mount(20111, 1728000)
			    pc.mount_bonus(63, 20)
													  end
					    end
end

 

Zamiast (1728000) daj (60*60*48) - To powinno byc na 48 godzin , (20111,

28800) - to raczej na 480 ale nie wiem czy zadziała .

A co do bonów to są źle podane , teraz nie mam jak sprawdzić dokładnych nazw , które trzeba wpisać ale jak wrócę jutro to Ci podam .

Opublikowano

Nie, nie zadziała

 

zamiast

 

pc.mount(20111, 1728000)
pc.mount_bonus(63, 20)

 

ma być na przykład

 

pc.mount(20113, 60*60*24*365*60)
pc.mount_bonus(apply.DEF_GRADE_BONUS,100,60*60*24*365*60)

 

a czemu to nie zadziała ?

 

 

@edit

;))

 

umarł

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...