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

[problem] quest nie pokazuje się w grze


Rekomendowane odpowiedzi

Opublikowano

Witam,

 

A więc dodałem questy biologa na serwer, wszystko ładnie się kompiluje w objectach jest id biologa i w tymże folderze są skompilowane już questy. Quest był sprawdzany przez kilka osób i jest prawidłowy. Jednak na serwerze nadal sie nie pojawia, totalne zero! Próbowałem usunąć wszystkie polskie znaki a także wgrywać questy biologa od innych osób - nic. Wie ktoś co może być przyczyną? Czy aby w tabelce player > quest nie powinien się dodać rekord z state information w przypadku biologa? Tabelkę naprawiałem kilkakrotnie i też nie pomaga. Czy spotkał się ktoś z takim problemem?

 

Pozdrawiam, lajki jak zwykle czekają.

Opublikowano

when login or levelup with pc.get_level() >= 60 and pc.get_level() <= 99 begin

 

Próbowałem dobijać także ten 60 level. Też nie działa. Spróbuję wgrać czystą tabelkę quest z bazy danych player. Jeżeli ktoś wykonał już jakiś quest to będzie musiał wykonywać jeszcze raz jeżeli tabelka będzie nowa?

Opublikowano

W tabeli zapisują się wszystkie staty wykonanych, lub uruchomionych questów, więc jeśli wyczyścisz tabelkę "quest" wszystkie questy się zresetują.

 

Próbowałeś zrobić sh make?

Opublikowano

Próbowałem już wiele, nic nie pomaga ale niepokoi mnie ta tabelka quest. Jeżeli w queście jest kod:

 

state run begin
 when login or levelup with pc.get_level() >= 60 and pc.get_level() <= 125 begin
  set_state(information)
 end
end

To po wbiciu levela 60 do tejże tabeli quest powinien dodać się rekord z "information", tymczasem nic się nie dodaje. Tabelka nie jest z crash'owana, normalnie się otwiera, próbowałem ją naprawiać lecz na nadal nie pomaga. Może coś z funkcją set_state() nie trybi?

Opublikowano

Mam to samo błagam pomóżcie o to quest :

----------------------------------------------------
--Triadica.net By Bambus3k
--METIN2 Biolog Quest Lv.50
----------------------------------------------------
quest biolog75lv  begin
	state start begin
	end
	state run begin
			when login or levelup with pc.level >= 75 and pc.level <= 120 begin
					set_state(information)
			end	
	end

	state information begin
			when letter begin
					local v = find_npc_by_vnum(20084)
					if v != 0 then
							target.vid("__TARGET__", v, "Analiza Biologa")
					end
					send_letter("Analiza Biologa")
			end

			when button or info begin
				say_title("Analiza Biologa")
				say("")
									say("Biolog Chaegirab, uczeń Baek-Goa,")
				say("właśnie Cie szukał. Proszę idz")
				say("do niego i zaoferuj mu swoją pomoc.")
				say("")
			end

			when __TARGET__.target.click or
					20084.chat."Znajdz Biologa" begin
					target.delete("__TARGET__")
					say("Biolog Chaegirab:")
					---												   l
					say("Niebiosa, proszę pomóż mi... ")
					say("Badam wszystkie rodzaje roślin w tym ")
					say("imperium. Jest bardzo dużo rzeczy, ")
					say("które muszą zostać zbadane. Nie mam ")
					say("czasu abym mógł sam wybrać się na wyprawe. ")
					say("Proszę,pomóż mi. ")
					wait()
					say("Aktualnie badam Broszury Szermierki.")
		say("Muszę przeprowadzić kilka eksperymentów,")
		say("dlatego potrzebuje egzemplarzy  broszur...")
		say("Czy mógłbyś przynieść mi piętnaście Broszur?")
		say("Proszę, pomóż mi! Zawsze przynoś mi po jednej,")
		say("abym mial czas na ich dokladne przebadanie!")
					say("")
					say_item_vnum(70031)
					set_state(go_to_disciple)
					pc.setqf("duration",0)  --ĄiĄH¸Ő¸ŐŞş?É?ˇ
					pc.setqf("collect_count",0)-- ¨ú?oŞşŞ??~ĽĆ?q
					pc.setqf("drink_drug",0) --łÜ°g´bĂĤôŞş¸Ü1
			end
	end

	state go_to_disciple begin
			when letter begin
					send_letter("Zadanie specjalne!")

			end
			when button or info begin
					say_title("Znajdz Broszury Szermierki")
					---												   l
					say("")
					say("Biolog Chaegirab, uczeń Baek-Goa,")
					say("szuka Broszurek Szermierki.")
					say("Zawsze przynoś mu po jednej, aby miał czas")
					say("na ich dokładne przebadanie.")
					say("Broszurek szukaj w Niebiańskiej Grocie.")
					say("")
					say_item_vnum(70031)
					say_reward("Do tej pory dostarczyłeś ".." "..pc.getqf("collect_count").." Broszur Szermierki.")
					say("")
			end

			when 71035.use begin --°g´bĂĤô
					if get_time() < pc.getqf("duration") then
							say("")
							say("ÁŮ¤ŁĄiĄH¨ĎĄÎ°g´bĂĤô")
							say("")
							return
					end
					if pc.getqf("drink_drug")==1 then
							say("")
							say("¤w¸g¨ĎĄÎ¤F1?¸")
							say("")

							return
					end
					if pc.count_item(70031)==0 then
							say("Biolog Chaegirab:")
							say("Co? Nie przyniosłeś mi zadnej")
							say("Broszury Szermierki..?")
							say("")
							return
					end

					item.remove()  
					pc.setqf("drink_drug",1)
			end



	when 20084.chat." Pamiątka Po Demonie " with pc.count_item(70031) >0   begin
					if get_time() > pc.getqf("duration") then
															say("Biolog Chaegirab:")
							---												   l
							say("Oh!! Znalazleś!")
							say("Pozwól,ze rzuce okiem...")
							say("Jeszcze chwilke.")
							say("")
							pc.remove_item(70031, 1)
							pc.setqf("duration",get_time()+1*1*1) ----------------1??
							wait()

							local pass_percent
							if pc.getqf("drink_drug")==0 then
									pass_percent=80
							else			
									pass_percent=90
							end

							local s= number(1,100)
							if s<= pass_percent  then
							   if pc.getqf("collect_count")< 14 then	 --15­ÓĄĽşˇ
											local index =pc.getqf("collect_count")+1
											pc.setqf("collect_count",index)	 --¨ú?o¤@­Ó?É+1
											say("Biolog Chaegirab:")
											say("Oh!! Ta Pamiątka Po Demonie jest doskonałej jakości!")
											say("Jestes wspanialy!")
											say("Przynieś mi jeszcze ".." "..15-pc.getqf("collect_count").. " Broszurek Szermierki.")
											say("Prosze, sprobuj je znalezć!")
											say("")
											pc.setqf("drink_drug",0)		 --ĂĤôŞě?l¤Ć
											return
									end
									say("Biolog Chaegirab:")
									say("Znalazłeś już piętnaście Broszurek!!")
									say("Dziękuje Ci, że jesteś taki pomocny.")
									say("Musisz teraz zdobyc Olejek Niebios")
									say("Słyszałem, że owy Olejek często wypada z")
									say("Potworów znajdujących się w Niebiańskiej Grocie. ")
									say("Zrobisz to dla mnie?")	
									say("")

									say_item("Olejek Niebios", 71056, "")

									say_reward("Zabijaj Nieb. Wojownik")
									say_reward("Nieb. Łucznik")
									say_reward("Nieb. Magistrat")
									say_reward("Nieb. Komendant")


									pc.setqf("collect_count",0)
									pc.setqf("drink_drug",0)		
									pc.setqf("duration",0)
									set_state(key_item)
									return
							else															
							say("Biolog Chaegirab:")
							say("Wybacz niestety...")
							say("Twoja Broszura była zbyt zepsuta...")
							say("Proszę, przynieś mi inną!")
							say("Nie zawiedz mnie!")
							say("")	
							pc.setqf("drink_drug",0)		 --ĂĤôŞě?l¤Ć
							return
							end
			else
			  say("Biolog Chaegirab:")
			  say("Jeszcze nie skończyłem badać ostatniej Broszury !")
			  say("Wróc później, kiedy juz skończę!")
			  say("")
			  return
			end

	end
end


	state key_item begin
			when letter begin
					send_letter("Olejek Niebios")

					if pc.count_item(71056)>0 then  
							local v = find_npc_by_vnum(20084)
							if v != 0 then
									target.vid("__TARGET__", v, "Olejek Niebios")
							end
					end

			end
			when button or info begin
					if pc.count_item(71056) >0 then
							say_title("Wróć do Biologa!")
							say("")
							---												   l
							say("Zdobyłeś Olejek Niebios! ")
							say("Idz szybko przynieś go Biologowi.")
							say("")
							return
					end

					say_title("Olejek Niebios")
					say("")
					---												   l
					say("Zebrałeś juz odpowiednia ilość")
					say("Broszur Szermierki.")
					say("Musisz teraz znalezc Olejek Niebios ")
					say_item_vnum(71056)----------Żu¤`ĆFĆF?îĄŰ
					say("Olejek Niebios")
					say("można zdobyć zabiając Potwory z Niebiańskiej Groty")	
					say("Nie zawiedz Biologa!")
			end


			when 2411.kill or
					 2412.kill or
					 2413.kill or
					 2414.kill  begin
					local s = number(1, 50)
					if s == 1 and pc.count_item(71056)==0 then
							pc.give_item2(71056, 1)
							send_letter("Olejek Niebios")			  
					end	
			end




			when __TARGET__.target.click  or
					20084.chat." Olejek Niebios " with pc.count_item(71056) > 0  begin
				target.delete("__TARGET__")
					say("Biolog Chaegirab:")
					say("OH!! Zdobyłeś Go! ")
					say("Odnalazłeś Olejek Niebios")
					say("Ciesze się bardzo")
					say("Dziękuję Ci za pomoc")
					say("W zamian otrzymasz nagrode!")
					say("Idz do mojego mistrza Baek-Go")
					say("On za pomoc mi podaruje Ci cenną nagrode.")
					say("")
					pc.remove_item(71056,1)
					set_state(__reward)
			end

	end

	state __reward begin
			when letter begin
					send_letter("Odbierz nagrode!")

					local v = find_npc_by_vnum(20018)
					if v != 0 then
							target.vid("__TARGET__", v, "Baek-Go")
					end

			end
			when button or info begin
					say_title("Odbierz nagrode!")
					---												   l
					say("Udaj się do Baek-Goa")
					say("by otrzymac nagrode za")
					say("Twój ciezki trud...")
					say("Baek-Go znajduje się w pierwszej wiosce")
					say("Masz go na mapie. Spiesz się!")
					say("")
			end

			when __TARGET__.target.click  or
					20018.chat." Nagroda "  begin
				target.delete("__TARGET__")
					say("Baek-Go:")
					say("Drogi przyjacielu")
					say("Za Twój cięzki trud otrzymujesz")
					say("staly bon do obrony")
					say("Zostal on podniesiony o 100")
					say("")
					say_reward("Otrzymano 500.000.000 yang, oraz 20x Magiczny Metal")
					say_reward("Otrzymano bonus obrony")
					say_reward("Zostal on podniesiony o 215 ")
					say_reward("Tego bonusu nikt Ci nie odbierze oraz")
					say("")
					affect.add_collect(apply.DEF_GRADE_BONUS,215,60*60*24*365*60) -----ˇV60?~	  

																			say("Wybierz sobie dodatkową nagrode w postaci")
																			say("Kamienia Dusz")
																			local s = select("Wojownika ", "Ninji", "Sury", "Szamana", "Obrony")

																			if 1 == s then
											pc.give_item2(28633, 1)
											say_reward("Otrzymano Kamień Duszy Wojownika +5")
																			elseif 2 == s then
																							pc.give_item2(28434, 1)
																							say_reward("Otrzymaano Kamień Duszy Ninja +5")
																			elseif 3 == s then
																							pc.give_item2(28435, 1)
																							say_reward("Otrzymaano Kamień Duszy Sury +5")
																			elseif 4 == s then
																							pc.give_item2(28436, 1)
																							say_reward("Otrzymaano Kamień Duszy Szamana +5")
																			elseif 5 == s then
																							pc.give_item2(28442, 1)
																							say_reward("Otrzymaano Kamień Duszy Obrony +5")
									end

																			pc.change_money(500000000)
																			pc.give_item2(25041, 20)

					clear_letter()
					set_quest_state("biolog80lv", "run")
					set_state(__complete)
			end

	end


	state __giveup__ begin
			when 20084.chat."Poddajesz sie?" begin
					say("Biolog Chaegirab:")
					say("Czy jestes pewien, że chcesz sie poddać!?")
					say("Nie bedziesz mial szansy, aby zacząć ponownie!")
					say("Ta misja Cie opusci...")
		 end
	 end
	state __complete begin
	end
end

 

Tylko że jeszcze nie dodałem biologa do gry na 80 chodzi mi o to.. Dam 5x lajk !!

clear_letter()
					set_quest_state("biolog80lv", "run")
					set_state(__complete)
			end

	end

Administrator Serwera Pantheons

Opublikowano

Wgranie nowej tabelki quest również nic nie dało, wiec to chyba od questa coś jest i z funkcjami questów. Skoro quest w grze się nie pojawia to pierwsze kilka linijek jest kolokwialnie pisząc zwalone. Mógłby ktoś sprawdzić?

Opublikowano

wgrywasz quest ./qc ... ? Są jakieś błędy? Może cos jest nie tak w questfunkcjon ( czy jakos tak , nie pamiętam , nie mam jak sprawdzic , piszę z fona )

350x19.png
Opublikowano

dałeś chmody 777 ? jak tak to zrób tak:

 

sh make

 

potem ./qc nazwaqusta.quest

 

 

powinno pomóc.

//nieregulaminowa sygnatura
//BR3ND

Opublikowano

http://www.mpcforum.pl/topic/223876-pisanie-poprawa-questw/

 

Napisz tam, jeśli to wina questa to powinni tam Ci pomóc.

Opublikowano

to nie wina questa. po prostu jesli quest zaczyna się od state innego niż start to musi być uruchomiony 'zdalnie', więc niech zmieni ta nazwę state na start i będzie dobrze.@2up

po chuj ma 2x robić to samo? sh make po prostu robi ./qc każdego questa po kolei według listy.


 

Zarchiwizowany

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

×
×
  • Dodaj nową pozycję...