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

Oj tam oj tam, U mnie wszystko smiga ;p tak jak wiekszosc moich/cudzych questow na moim serwie smiga, a jak ktos juz u siebie instaluje nagle przestaja dzialac xDD

 

 

@EDIT

@kwiatmix to bedzie chyba

party.get_max_level

jednak nie jestem pewny w 100%.

dCrwk2h.gif

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

no juz zrobiłem, że wchodzi, ale teleportuje tylko lidera pt, reszta grupy zostaje tam gdzie stała

 

tak wogole patrze, to w quescie jest funkcja która by przenosiła całe pt? bo nie widze

 

@edit

dobra narazie wam dupy nie zawracam

lece spać, dzięki za pomoc przy quescie, sam to bym nigdy go tak nie wyedytował :D

jutro was poplusuje bo juz mi się limit skończył

Opublikowano

Jest taka funkcja, żeby sprawdzała lvl wszystkim osobą w pt?

@edit

Jak już to:

party.get_level()

Sprawdzę jutro czy to działa, dzięki za podpowiedź ;)

 

Poszukaj w google temat na mpc "od zera do quest writera" czy jakoś tak, tam masz pełny spis funkcji,

(nie wiem dlaczego ale ja nie mogę teraz wejść do tego tematu...)

Ale bardziej jestem pewny wersji Svope czyli:

party.get_max_level()

Bo party.get_level() to raczej gdyby można było mieć level grupy - tak by mi to pasowało.

Ale mogę się mylić... ;/ :)

 

@EDIT2

Funkcje dla party:

party.chat()
party.clear_ready()
party.get_max_level()
party.get_near_count()
party.getf()
party.is_leader()
party.is_party()
party.run_cinematic()
party.setf()
party.setqf()
party.show_cinematic()
party.syschat()

 

 

@kopson44

A sprawdzałeś w tym queście na komnatę smoka jak jest żeby przeniosło całą grupę?

Jakiś problem z przeglądarką albo z MPC mam jak próbuję coś przez google poszukać... -_-"

 

 

@EDIT

Znalazłem powód problemu wyszukiwania...

Zamiast wyszukiwarki Google (mozilla - górny prawy róg okna przeglądarki = wyszukiwarka) Miałem ustawione jakąś dziwną... O_o

Ale to nieistotne. Hehe :)

***


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

Żeby całe pt przeniosło trzeba chyba użyć:

d.join(id mapy)

A nie pc.warp(kordki, kordki)

@edit

A jak mam otworzyć duegona?

Znalazłem jeszcze coś takiego:

warp_all_in_map()

Może da się z tego zrobić:

warp_party_in_map()

xD?

 

To jak otworzyć duegona, zawsze nad tym się zastanawiałem ;/?

Opublikowano

Żeby całe pt przeniosło trzeba chyba użyć:

d.join(id mapy)

A nie pc.warp(kordki, kordki)

 

d. działa na dungeon

 

@EDIT

@DOWN

A to by zły pomysł nie był w sumie. Hehe :)

Ale trzeba wiedzieć jak to zrobić... ;/

 

+ dla ciebie :)

 

@EDIT2

Itemów działających w dungeonach? O_o

 

Dobra, ja idę już w kime.

Dobranoc :)

***


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

@UP tak dokladnie poczatek d. jest tylko dla dungeonow wiec w tym quescie tego nie mozna dac chyba ze dacie go pod dungeon to juz inna sprawa ;D

 

@EDIT No i itemów działających w dungeonach :D

 

@EDIT2 Stelios chodzi mi o takie cos co miał Wojtek ten przedmiot zabijajacy wszystkie mooby. To dziala tylko w dungeonach jest to komenda

d.kill_all

poza Wojtkiem i mna nie widzialem zeby ktos takie cos mial.

 

Quest na taki przedmiot wyglada następująco:

 

quest krysztal_geem begin
state start begin
	when xxx.use begin
		d.kill_all()
		end
	end
end

 

 

Dobrej nocki : *

dCrwk2h.gif

Opublikowano

@up

 

 

ale odkrycie ....

jest jeszcze 1 taka komenda :)

 

 

@topic

 

 

jak pc.warp ma przeniesc all pt?:<

 

d.join(id mapy) to juz dungeon

 

ten quest nie jest jakis skomplikowany to zrobcie go w dungeonie

QmxvbmR5blhfX19ldW5lX19fNTI0X19fTlVMTF9fXzNfX18xMDBfX19ub25lLnBuZ19fXzhfX19ub25lX19fMDAwMDAwX19fc29sbw==.png
Opublikowano

@UP niech zgadne chodzi ci o komende

kill_all_in_map

niestety nie dziala ona na sf2010. Blondyn poza krytykowaniem innych potrafisz cos innego zrobic? bo jak narazie widze ze 1/3 twoich postow tutaj to krytykowanie pracy innych ludzi może pokaż co ty potrafisz :)

dCrwk2h.gif

Opublikowano

Poprawa questa na start

-------------------------------------------
---             Misja by Czarny dla MPCForum    ---
---     Pozdrawiam i życzę miłej zabawy       ---
-------------------------------------------

quest start begin
       state start begin
               when login begin
                       notice("Witaj na serwerze . Życzymy miłej gry!  ")
                       pc.changemoney( 100000 )
                       horse.set_level(21)
                       pc.set_skill_level(131, 10)
                       pc.give_item2(50053, 1)
                       pc.give_item2(27003, 200)
                       pc.give_item2(27006, 200)
                               local kto = pc.get_job()
                                       if kto == 0 then
                                               pc.give_item2(19, 1)
                                               pc.give_item2(3009, 1)
                                       end
                                       if kto == 1 then
                                               pc.give_item2(1009, 1)
                                               pc.give_item2(2009, 1)
                                               pc.give_item2(8000, 200)
                                       end
                                       if kto == 2 then
                                               pc.give_item2(19, 1)
                                       end
                                       if kto == 3 then
                                               pc.give_item2(5009, 1)
                                               pc.give_item2(7009, 1)
                                       end
                       setstate(koniec)
               end
       end
       state koniec begin
       end
end

Opublikowano

Macie ten quest w formie dangeona, pewnie przy wgrywaniu wywali jakiś błąd z endami. Jak ktoś może niech sprawdzi poprawność endów, ogólnie poprawność całego questa. Teraz nie mam za bardzo czasu trzeba uszykować się na ślub^^.

 

quest d_ponlok begin
state start begin
	when 20016.chat."Wyzwanie" with party.is_leader() begin
		say_title(mob_name(20015)..":")
		if pc.getqf("raz") == 0 then
			say("Witaj "..pc.get_name().."! ")
			say("Mozesz u mnie odbyć pewną misje. ")
			say("")
			say("Misja ta polega na zniszczeniu kilku kamieni ")
			say("metin i kilku potworków. ")

			if party.get_near_count() < 2 then
			say("Wybacz ale wasza drużyna musi mieć dwie osoby. ")
			party.chat("Wasza drużyna musi mieć dwie osoby. ")
			return
			end

			if pc.get_level() < 50 then
			say("Mogę wpuszczać tylko osoby z 50 poziomem. ")
			party.chat("Wasz lider nie posiada 50 poziomu. ")				

			else
			say("Spełniasz Warunki: ")
			say_title("Drużyna posiada dwóch członków. ")
			say("")
			say_title("Wasz lider ma większy bądź równy 50 poziom. ")
			say("")
			say_reward("Chcesz się przenieść aby ją wykonać? ")
			end

			local s = select("Tak", "Nie")
			if s == 2 then
			return
			end

			if s == 1 then
			say_title(mob_name(20016)..":")
			say("Zostaniesz przeniesiony na inna mape. ")
			pc.setqf("raz", get_time()+60*60*23)
			wait()
			d.join(id mapy)
			say("")
			end

		else
		say("Nie mozesz tego zrobić wiecej niż raz dziennie. ")
           say("")
		end

		if pc.getqf("raz") <= get_time() then
			pc.setqf("raz", 0)
		end
	end

	when login with pc.in_dungeon() and pc.get_map_index() == id_mapki begin -- otwarty dungeon
		d.spawn_mob(id, x, y)		-- zrobił bym to przez d.regen_file ale nie wiem
		d.spawn_mob(id, x, y)		-- co tu za mooby mają się respić.
		d.spawn_mob(id, x, y)		-- x and y to kaordy.
		d.spawn_mob(id, x, y)
		d.spawn_mob(id, x, y)
		timer('event', 666)  --- 11 minut 6 sekund
	end

	when event.timer begin
		if party.is_leader() == true and pc.getqf("rip") == 0 then
			d.spawn_mob(1093, x, y)
			pc.setqf("rip", 60*60*23)
		end

		if pc.getqf("rip") <= get_time() then
			pc.setqf("rip", 0)
		end
	end

	when logout with pc.in_dungeon() and pc.get_map_index() == id_mapki begin -- kiedy lognie a mamy otwarty dangeon
		warp_to_village()
	end

	when 1093.kill with pc.in_dungeon() and pc.get_map_index() == id_mapki begin -- rip zabity w dangeonie i na mapie
		d.notice("Zostaniesz przeniesiony do pierwszej wioski. ")
		timer("wroc", 3)
	end

	when wroc.timer begin
		warp_to_village()
	end
end
end	

 

 

@Svope co do tego itemku o to chodziło :P ?

quest itemek_kill begin
state start begin
	when 123.use with pc.in_dungeon() and pc.get_map_index() == id_mapki begin
		d.kill_all
	end
end
end	

Nieregulaminowa sygnatura

Opublikowano

@UP po co dawac pc.in_dungeon jak sama komenda d.kill_all daje to ze mozna uzywac przedmiotu tylko w dungach :) oraz pc.get_map_index wtedy przedmiot bedzie dzialal na mapie z danym indexem :D mozna dac rowniez cos takiego.

 

quest killujmydungi begin
state start begin
	when IDPrzedmiotu.use with pc.is_gm() begin
		d.kill_all()
		end
	end
end

 

 

@EDIT

Ewentualnie można użyć funkcji użycia takiego itemka bezpośrednio w quescie od dunga :D

dCrwk2h.gif

Opublikowano

@Pon.Lok kilka postów UP z poprawionym questem.

               when logout with pc.in_dungeon() and pc.get_map_index() == id_mapki begin -- kiedy lognie a mamy otwarty dangeon
                       warp_to_village()
               end

Nieważne czy ktoś się wyloguje i tak wszystkich do miasta wywali... ;/

 

@EDIT

                               else
                               say("Spełniasz Warunki: ")
                               say_title("Drużyna posiada dwóch członków. ")
                               say("")
                               say_title("Wasz lider ma większy bądź równy 50 poziom. ")
                               say("")
                               say_reward("Chcesz się przenieść aby ją wykonać? ")
                               end

                               local s = select("Tak", "Nie")
								if s == 2 then
									return
								end

								if s == 1 then
									say_title(mob_name(20016)..":")
									say("Zostaniesz przeniesiony na inna mape. ")
									pc.setqf("raz", get_time()+60*60*23)
									wait()
									d.join(id mapy)
									say("")
								end

Przez wyborem czy chcą się przenieść czy nie ustawiłeś end, czyli nawet jeśli spełniają warunki to tego nie zobaczą ;P

 

 

@EDIT2

Poprawiony:

 

quest d_ponlok begin
       state start begin
               when 20016.chat."Wyzwanie" with party.is_leader() begin
                       say_title(mob_name(20015)..":")
                       if pc.getqf("raz") == 0 then
                               say("Witaj "..pc.get_name().."! ")
                               say("Mozesz u mnie odbyć pewną misje. ")
                               say("")
                               say("Misja ta polega na zniszczeniu kilku kamieni ")
                               say("metin i kilku potworków. ")

                               if party.get_near_count() < 2 then
                               say("Wybacz ale wasza drużyna musi mieć dwie osoby. ")
                               party.chat("Wasza drużyna musi mieć dwie osoby. ")
                               return
                               end

                               if pc.get_level() < 50 then
                               say("Mogę wpuszczać tylko osoby z 50 poziomem. ")
                               party.chat("Wasz lider nie posiada 50 poziomu. ")                               

                               else
                               say("Spełniasz Warunki: ")
                               say_title("Drużyna posiada dwóch członków. ")
                               say("")
                               say_title("Wasz lider ma większy bądź równy 50 poziom. ")
                               say("")
                               say_reward("Chcesz się przenieść aby ją wykonać? ")

                               local s = select("Tak", "Nie")
								if s == 2 then
									return
								end

								if s == 1 then
									say_title(mob_name(20016)..":")
									say("Zostaniesz przeniesiony na inna mape. ")
									pc.setqf("raz", get_time()+60*60*23)
									wait()
									d.join(id mapy)
									say("")
								end
                               end

                       else
                       say("Nie mozesz tego zrobić wiecej niż raz dziennie. ")
           say("")
                       end

                       if pc.getqf("raz") <= get_time() then
                               pc.setqf("raz", 0)
                       end
               end

               when login with pc.in_dungeon() and pc.get_map_index() == id_mapki begin -- otwarty dungeon
                       d.spawn_mob(id, x, y)           -- zrobił bym to przez d.regen_file ale nie wiem
                       d.spawn_mob(id, x, y)           -- co tu za mooby mają się respić.
                       d.spawn_mob(id, x, y)           -- x and y to kaordy.
                       d.spawn_mob(id, x, y)
                       d.spawn_mob(id, x, y)
                       timer('event', 666)  --- 11 minut 6 sekund
               end

               when event.timer begin
                       if party.is_leader() == true and pc.getqf("rip") == 0 then
                               d.spawn_mob(1093, x, y)
                               pc.setqf("rip", 60*60*23)
                       end

                       if pc.getqf("rip") <= get_time() then
                               pc.setqf("rip", 0)
                       end
               end
               when logout with pc.get_map_index() == 105 begin
                                                       local empire = pc.get_empire() 
                               if empire == 1 then 
                                       pc.warp(474300, 954800) 
                               elseif empire == 2 then 
                                       pc.warp(63800, 166400) 
                               elseif empire == 3 then 
                                       pc.warp(959900, 269200)
                               end
               end


               when 1093.kill with pc.in_dungeon() and pc.get_map_index() == id_mapki begin -- rip zabity w dangeonie i na mapie
                       d.notice("Zostaniesz przeniesiony do pierwszej wioski. ")
                       timer("wroc", 3)
               end

               when wroc.timer begin
                       warp_to_village()
               end
       end
end     

 

***


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

@UP niech zgadne chodzi ci o komende

kill_all_in_map

niestety nie dziala ona na sf2010. Blondyn poza krytykowaniem innych potrafisz cos innego zrobic? bo jak narazie widze ze 1/3 twoich postow tutaj to krytykowanie pracy innych ludzi może pokaż co ty potrafisz :)

 

 

heh po co mam pokazywac co potrafie skoro biore za to ladna kase ?:>

d. dziala tylko w dungeonie i ch.. tego bedzie

 

i nie ma czegos takiego jak nie dziala na sf2010

 

powiedzcie co trzeba zrobic konkretnie to zrobie bo 5 stron nie chce mi sie czytac :/

 

@topic

 

no ale zeby nie bylo ze tylko krytykuje..

 

to

 

 

when 20016.chat."Wyzwanie" with party.is_leader() begin

 

 

najlepiej poprawic na

 

when 20016.chat."Wyzwanie" begin

 

poniewaz z with party is leader opcja pokaze sie tylko jak bedziemy w pt

 

potem dodac

 

if party.is_leader() == true

 

i dalsza cześć

 

--------------------------------

 

Dzieki temu ludzie beda widziec ze jest cos nowego u kowala a tak tylko po utworzeniu grupy :)

 

----------------------------------

 

dalej

 

skoro to dungeon to po co

 

when wroc.timer begin
                       warp_to_village()

 

w dungeonie najlepiej

 

d.exit_all()

 

when wroc.timer begin
                      d.exit_all
end

 

---------------------------------

 

 

po co to

 

if party.is_leader() == true and pc.getqf("rip") == 0 then

 

tylko lider moze miec ripa?:P

 

wystarczy

 

when event.timer begin
                       if pc.getqf("rip") == 0 then

QmxvbmR5blhfX19ldW5lX19fNTI0X19fTlVMTF9fXzNfX18xMDBfX19ub25lLnBuZ19fXzhfX19ub25lX19fMDAwMDAwX19fc29sbw==.png
Opublikowano

@xDanielPL

chmody - prawa pliku czyli 777 (FZ)

 

Najlepiej wgrywać przez qc, sam kilka razy popełniłem błąd wgrywając przez sh make...

Połowa questów poszła się walić...

 

 

Po wgraniu questa na serwer robiłeś 'reload quest' albo restartowałeś maszynę?

***


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

@Blondyn quest give_basic_weapon 4x lepiej wgrywac sh make -,-

 

 

wez sie nie osmieszaj :)

 

wiesz wogle co robi komenda sh make?

 

po co wszystko quest odswiezac skoro mozna 1?

 

@

dokladnie jak napisal Stelios

-czesto questy ida sie walic

QmxvbmR5blhfX19ldW5lX19fNTI0X19fTlVMTF9fXzNfX18xMDBfX19ub25lLnBuZ19fXzhfX19ub25lX19fMDAwMDAwX19fc29sbw==.png

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...