[SERVICE] Die Questerstellung

01/02/2017 17:25 thespeedyy#3571
probier es mal so...
PHP Code:
quest regenbogen begin
    state start begin
            when 50512.
use  begin
                say_title
("Regenbogenstein:")
                
say("Du möchtest also deine Skills ")
                
say("Perfektionieren?")
                if 
pc.job ==0 then
                    say
("Wähle deine Lehre aus")
                    
local s=select("Körper","Mental")
                    if 
s==1 then
                        pc
.set_skill_group(1)
                        
pc.set_skill_level(,59)
                        
pc.set_skill_level(,59)
                        
pc.set_skill_level(,59)
                        
pc.set_skill_level(,59)
                        
pc.set_skill_level(,59)
                        
pc.set_skill_level(,59)
                        
say("Alle deine Skills sind nun Perfekt!")
                        return
                    
end
                    
if s==2 then
                        pc
.set_skill_group(2)
                        
pc.set_skill_level(16 ,59)
                        
pc.set_skill_level(17 ,59)
                        
pc.set_skill_level(18 ,59)
                        
pc.set_skill_level(19 ,59)
                        
pc.set_skill_level(20 ,59)
                        
pc.set_skill_level(21 ,59)
                        
say("Alle deine Skills sind nun Perfekt!")
                        return
                    
end
                
elseif pc.job ==5 then
                    say
("Wähle deine Lehre aus")
                    
local s=select("Nahkampf","Fernkampf")
                    if 
s==1 then
                        pc
.set_skill_group(3)
                        
pc.set_skill_level(31 ,59)
                        
pc.set_skill_level(32 ,59)
                        
pc.set_skill_level(33 ,59)
                        
pc.set_skill_level(34 ,59)
                        
pc.set_skill_level(35 ,59)
                        
pc.set_skill_level(36 ,59)
                        
say("Alle deine Skills sind nun Perfekt!")
                        return
                    
end
                    
if s==2 then
                        pc
.set_skill_group(4)
                        
pc.set_skill_level(46 ,59)
                        
pc.set_skill_level(47 ,59)
                        
pc.set_skill_level(48 ,59)
                        
pc.set_skill_level(49 ,59)
                        
pc.set_skill_level(50 ,59)
                        
pc.set_skill_level(51 ,59)
                        
say("Alle deine Skills sind nun Perfekt!")
                        return
                    
end
                
elseif pc.job ==2 then
                    say
("Wähle deine Lehre aus")
                    
local s=select("Magie","Waffe")
                    if 
s==1 then
                        pc
.set_skill_group(5)
                        
pc.set_skill_level(76 ,59)
                        
pc.set_skill_level(77 ,59)
                        
pc.set_skill_level(78 ,59)
                        
pc.set_skill_level(79 ,59)
                        
pc.set_skill_level(80 ,59)
                        
pc.set_skill_level(8159)
                        
say("Alle deine Skills sind nun Perfekt!")
                        return
                    
end
                    
if s==2 then
                        
--Waffe
                        pc
.set_skill_group(6)
                        
pc.set_skill_level(61 ,59)
                        
pc.set_skill_level(62 ,59)
                        
pc.set_skill_level(63 ,59)
                        
pc.set_skill_level(64 ,59)
                        
pc.set_skill_level(65 ,59)
                        
pc.set_skill_level(66 ,59)
                        
say("Alle deine Skills sind nun Perfekt!")
                        return
                    
end
                
elseif pc.job ==3 then
                    say
("Wähle deine Lehre aus")
                    
local s=select("Heilung","Drache")
                    if 
s==1 then
                        pc
.set_skill_group(7)
                        
pc.set_skill_level(106 ,59)
                        
pc.set_skill_level(107 ,59)
                        
pc.set_skill_level(108 ,59)
                        
pc.set_skill_level(109 ,59)
                        
pc.set_skill_level(110 ,59)
                        
pc.set_skill_level(111 ,59)
                        
say("Alle deine Skills sind nun Perfekt!")
                        return
                    if 
s==2 then
                        pc
.set_skill_group(8)
                        
pc.set_skill_level(91 ,59)
                        
pc.set_skill_level(92 ,59)
                        
pc.set_skill_level(93 ,59)
                        
pc.set_skill_level(94 ,59)
                        
pc.set_skill_level(95 ,59)
                        
pc.set_skill_level(96 ,59)
                        
say("Alle deine Skills sind nun Perfekt!")
                        return
                    
end
                
elseif pc.job ==8 then
                    pc
.set_skill_group(9)
                    
pc.set_skill_level(170 ,59)
                    
pc.set_skill_level(171 ,59)
                    
pc.set_skill_level(172 ,59)
                    
pc.set_skill_level(173 ,59)
                    
pc.set_skill_level(174 ,59)
                    
pc.set_skill_level(175 ,59)
                    
say("Alle deine Skills sind nun Perfekt!")
                    return
                
end
            end
            pc
.remove_item2(item.get_vnum())
        
end
    end
end 
01/02/2017 18:29 TommyH99#3572
Geht nicht da kommt immer ein Fehler.
Hab schon versucht selber zu schauen woran es liegt bei "pc.remove_item2(item.get_vnum())" die ) zu viel weg das "pc.remove_item2(item.get_vnum())" unter das end gesetzt usw geht nicht kommt immer der Fehler.

[Only registered and activated users can see links. Click Here To Register...]
01/02/2017 20:43 Rofelmau#3573
Quote:
Originally Posted by TommyH99 View Post
Geht nicht da kommt immer ein Fehler.
Hab schon versucht selber zu schauen woran es liegt bei "pc.remove_item2(item.get_vnum())" die ) zu viel weg das "pc.remove_item2(item.get_vnum())" unter das end gesetzt usw geht nicht kommt immer der Fehler.

[Only registered and activated users can see links. Click Here To Register...]
01/02/2017 21:16 TommyH99#3574
[Only registered and activated users can see links. Click Here To Register...]
01/02/2017 22:41 Rofelmau#3575
Quote:
Originally Posted by TommyH99 View Post
[Only registered and activated users can see links. Click Here To Register...]
01/02/2017 22:48 TommyH99#3576
Selber Fehler immernoch string "start": 92
01/02/2017 23:10 Rofelmau#3577
Quote:
Originally Posted by TommyH99 View Post
Selber Fehler immernoch string "start": 92
01/02/2017 23:45 TommyH99#3578
Ok danke es kommt keine Fehlermeldung mehr und der Stein verschwindet auch nach dem benutzen. Aber die Lykaner Skills werden immer noch nicht auf P gesetzt.
01/02/2017 23:51 .Delta#3579
kann sein, dass ich mich da jetzt komplett irre, habe lange nichts mehr damit gemacht, aber ist es nicht so, dass die skill_group immer 1 oder 2 ist?
01/03/2017 00:01 TommyH99#3580
Quote:
kann sein, dass ich mich da jetzt komplett irre, habe lange nichts mehr damit gemacht, aber ist es nicht so, dass die skill_group immer 1 oder 2 ist?
Ich weiß nicht mehr wie es auf meiner alten Zeit auf De war wo ich ein Lykaner gezockt hab und ich weiß nicht ob das normal ist aber auf meinem Server hat der Lykaner nur eine Skillung also zB gibts die unterteilung Körper Mental bei Lykaner bei mir nicht jeder Lykaner kann nur ein und die selbe Skillgruppe lernen.

Ich hab gerade mal den Stein mit Ninja getestet weil er auch so eine ungewöhnliche Job Zahl hat (nach Navicat 5). Bei Ninja geht der Stein auch nicht also es kommt der Text "Deine Skills sind nun auf Perfekter Meister" aber sie werden nicht hochgesetzt.
Kann es sein dass die Job Zahlen die in Navicat stehen für Ninja und Lykaner falsch sind? Denn genau die 2 Klassen mit den ungewöhnlichen Zahlen bei denen geht der Stein nicht. Und wenn ja wieso steht in Navicat die falsche Job Zahl?

Hab mich schon länger gewundert wieso Ninja 5 ist wo er auf anderen Servern eig immer 2 war.

[Only registered and activated users can see links. Click Here To Register...]
01/03/2017 01:25 ThaRielFliege#3581
Quote:
Originally Posted by .Delta View Post
kann sein, dass ich mich da jetzt komplett irre, habe lange nichts mehr damit gemacht, aber ist es nicht so, dass die skill_group immer 1 oder 2 ist?
Ja die Skill_group ist immer nur 1 oder 2 und halt 0.

0 = kein job
1 = Job eins (zb Körper)
2 = Job zwei (zb mental)
01/03/2017 04:57 TommyH99#3582
Hab alle Probleme gelöst hab eine andere Quest genommen und auf meinen Fall bisschen abgeändert.
Wer die Quest haben will kann sie benutzen.

- 6. Skill bei Krieger und Ninja geht.
- Alle 6 Lykaner Skills gehen.
- Stein verschwindet nach dem benutzen.
- Der Registein geht immer nur für einen Skill.

Sollte auch alles bugfrei sein habs bei mir getestet.


HTML Code:
quest regenbogen begin
	state start begin
		when 50512.use begin
			say_title("Regenbogenstein:")
			say("Du möchtest also einen deiner Skills ")
			say("zur Großmeisterfertigkeit machen?")
			say("Achtung: Du musst erst deine Lehre")
			say("bei den Lehrern wählen!")
			
			if pc.job ==0 then
				say("Wähle deine Lehre aus")
				local s=select("Körper","Mental")
				
				if s==1 then
					local p=select("Dreiwege-Schnitt","Schwertwirbel","Kampfrausch","Aura Des Schwertes","Sausen","Lebenswille")
					
					if p==1 then
						pc.set_skill_group(1)
						pc.set_skill_level(1 ,59)
						chat("Dreiwege-Schnitt ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(1)
						pc.set_skill_level(2 ,59)
						chat("Schwertwirbel ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(1)
						pc.set_skill_level(3 ,59)
						chat("Kampfrausch ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(1)
						pc.set_skill_level(4 ,59)
						chat("Aura Des Schwertes ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(1)
						pc.set_skill_level(5 ,59)
						chat("Sausen ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(1)
						pc.set_skill_level(6 ,59)
						chat("Lebenswille ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
				
				if s==2 then
					local p=select("Durchschlag","Heftiges Schlagen","Stampfer","Starker Körper","Schwertschlag","Schwertzirkel")
					
					if p==1 then
						pc.set_skill_group(2)
						pc.set_skill_level(16 ,59)
						chat("Durchschlag ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(2)
						pc.set_skill_level(17 ,59)
						chat("Heftiges Schlagen ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(2)
						pc.set_skill_level(18 ,59)
						chat("Stampfer ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(2)
						pc.set_skill_level(19 ,59)
						chat("Starker Körper ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(2)
						pc.set_skill_level(20 ,59)
						chat("Schwertschlag ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(2)
						pc.set_skill_level(21 ,59)
						chat("Schwertzirkel ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
				
			elseif pc.job ==1 then
				say("Wähle deine Lehre aus")
				local s=select("Nahkampf","Fernkampf")
				
				if s==1 then
					local p=select("Hinterhalt","Blitzangriff","Degenwirbel","Tarnung","Giftwolke","Schleichendes Gift")
					
					if p==1 then
						pc.set_skill_group(3)
						pc.set_skill_level(31 ,59)
						chat("Hinterhalt ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(3)
						pc.set_skill_level(32 ,59)
						chat("Blitzangriff ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(3)
						pc.set_skill_level(33 ,59)
						chat("Degenwirbel ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(3)
						pc.set_skill_level(34 ,59)
						chat("Tarnung ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(3)
						pc.set_skill_level(35 ,59)
						chat("Giftwolke ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(3)
						pc.set_skill_level(36 ,59)
						chat("Schleichendes Gift ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
				
				if s==2 then
					local p=select("Federschreiten","Gift Pfeil","Feuer Pfeil","Pfeilregen","Wiederholter Schuss","Funkenschlag")
					
					if p==1 then
						pc.set_skill_group(4)
						pc.set_skill_level(49 ,59)
						chat("Federschreiten ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(4)
						pc.set_skill_level(50 ,59)
						chat("Gift Pfeil ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(4)
						pc.set_skill_level(48 ,59)
						chat("Feuer Pfeil ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(4)
						pc.set_skill_level(47 ,59)
						chat("Pfeilregen ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(4)
						pc.set_skill_level(46 ,59)
						chat("Wiederholter Schuss ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(4)
						pc.set_skill_level(51 ,59)
						chat("Funkenschlag ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
				
			elseif pc.job ==2 then
				say("Wähle deine Lehre aus")
				local s=select("Magie","Waffe")
				
				if s==1 then
					local p=select("Dunkler Schlag","Flammenschlag","Geist der Flamme","Dunkler Schutz","Geisterschlag","Dunkler Stein")
					
					if p==1 then
						pc.set_skill_group(5)
						pc.set_skill_level(76 ,59)
						chat("Dunkler Schlag ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(5)
						pc.set_skill_level(77 ,59)
						chat("Flammenschlag ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(5)
						pc.set_skill_level(78 ,59)
						chat("Geist der Flamme ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(5)
						pc.set_skill_level(79 ,59)
						chat("Dunkler Schutz ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(5)
						pc.set_skill_level(80 ,59)
						chat("Geisterschlag ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(5)
						pc.set_skill_level(81 ,59)
						chat("Dunkler Stein ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
				
				if s==2 then
					local p=select("Fingerschlag","Drachenwirbel","Verzauberte Klinge","Furcht","Verzauberte Rüstung","Zauber Aufheben")
					
					if p==1 then
						pc.set_skill_group(6)
						pc.set_skill_level(61 ,59)
						chat("Fingerschlag ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(6)
						pc.set_skill_level(62 ,59)
						chat("Drachenwirbel ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(6)
						pc.set_skill_level(63 ,59)
						chat("Verzauberte Klinge ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(6)
						pc.set_skill_level(64 ,59)
						chat("Furcht ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(6)
						pc.set_skill_level(65 ,59)
						chat("Verzauberte Rüstung ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(6)
						pc.set_skill_level(66 ,59)
						chat("Zauber Aufheben ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
				
			elseif pc.job ==3 then
				say("Wähle deine Lehre aus")
				local s=select("Heilung","Drache")
				
				if s==1 then
					local p=select("Angriff +","Schnelligkeit","Kurieren","Blitzkralle","Blitz Heraufbeschwören","Blitzwurf")
					
					if p==1 then
						pc.set_skill_group(7)
						pc.set_skill_level(111 ,59)
						chat("Angriff + ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(7)
						pc.set_skill_level(110 ,59)
						chat("Schnelligkeit ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(7)
						pc.set_skill_level(109 ,59)
						chat("Kurieren ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(7)
						pc.set_skill_level(108 ,59)
						chat("Blitzkralle ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(7)
						pc.set_skill_level(107 ,59)
						chat("Blitz Heraufbeschwören ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(7)
						pc.set_skill_level(106 ,59)
						chat("Blitzwurf	 ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
				
				if s==2 then
					local p=select("Fliegender Talisman","Drachenschießen","Drachengebrüll","Segen","Reflektieren","Hilfe des Drachens")
					
					if p==1 then
						pc.set_skill_group(8)
						pc.set_skill_level(91 ,59)
						chat("Fliegender Talisman ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(8)
						pc.set_skill_level(92 ,59)
						chat("Drachenschießen ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(8)
						pc.set_skill_level(93 ,59)
						chat("Drachengebrüll ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(8)
						pc.set_skill_level(94 ,59)
						chat("Segen ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(8)
						pc.set_skill_level(95 ,59)
						chat("Reflektieren ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(8)
						pc.set_skill_level(96 ,59)
						chat("Hilfe des Drachens ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
				
			elseif pc.job ==4 then
				say("Wähle deine Lehre aus")
				local s=select("Instinkt")
				
				if s==1 then
					local p=select("Zerreißen","Atem des Wolfes","Wolfssprung","Wolfsklaue","Purpurwolfseele","Indigowolfsseele")
					
					if p==1 then
						pc.set_skill_group(9)
						pc.set_skill_level(170 ,59)
						chat("Zerreißen ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==2 then
						pc.set_skill_group(9)
						pc.set_skill_level(171 ,59)
						chat("Atem des Wolfes ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==3 then
						pc.set_skill_group(9)
						pc.set_skill_level(172 ,59)
						chat("Wolfssprung ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==4 then
						pc.set_skill_group(9)
						pc.set_skill_level(173 ,59)
						chat("Wolfsklaue ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==5 then
						pc.set_skill_group(9)
						pc.set_skill_level(174 ,59)
						chat("Purpurwolfseele ist jetzt eine Großmeisterfertigkeit.")
					end
					if p==6 then
						pc.set_skill_group(9)
						pc.set_skill_level(175 ,59)
						chat("Indigowolfsseele ist jetzt eine Großmeisterfertigkeit.")
					end
					pc.remove_item(50512,1)
				end
			end
		end
	end
end
01/10/2017 00:19 thespeedyy#3583
Hätte sonst so vorgeschlagen musst aber dann die special.active_skill_list in der questlib abändern :D
In kurz xD
PHP Code:
quest regi begin
    state start begin
        when 50512.
use begin -- vnum
            table
.foreachi(special.active_skill_list[pc.get_job()+1][pc.get_skill_group()],function(r,skillpc.set_skill_level(skill,59end)
            
pc.remove_item2(item.get_vnum())
        
end
    end
end 
Mit Lehrerabfrage und übersichtlich^^
PHP Code:
quest regi begin
    state start begin
        when 50512.
use begin -- vnum
            
--table.foreachi(special.active_skill_list[pc.get_job()+1][pc.get_skill_group()],function(r,skillpc.set_skill_level(skill,59end)
            if 
pc.get_skill_group()!=0 then
                local fertigkeiten 
special.active_skill_list[pc.get_job()+1][pc.get_skill_group()]
                for 
i=1,table.getn(fertigkeiten) do
                    
pc.set_skill_level(fertigkeiten[i],59)
                
end
                say
("Dein fertigkeiten Wurden 'Alle' auf Perfekt gesetzt.")
                
pc.remove_item2(item.get_vnum())
            else
                
say("Suche zuerst einen Lehrer auf.")
            
end
        end
    end
end 
01/12/2017 18:39 ciknom#3584
Ich suche eine überarbeitete Pferdequest
wobei man schon ab lvl 20 sein Anfängerpferd bekommen
kann in dem man 20x Weißer-Eid Soldatin innerhalb von 30min töteten muss.
Das Pferdebild soll man sofort nach Abgabe dieser Quest bekommen.
Die Zeit zwischen den Reitquest soll auf 30min gestellt sein.

Ab lvl soll 25 die Quest für das Kampfpferd bekommen
in der man 25x Wilder Infanterist innerhalb von 30min töten muss.
Die Zeit zwischen den Killquest soll auf 1h gestellt sein.

Die Militärpferdequest soll so bleiben wie sie ist.

Wäre nais wenn mir einer so eine erstellen könnte :)
01/13/2017 23:39 Kiyoshi2#3585
Hallo leute wer kann mir helfen mit den handelscenter von ente ich habe alles ein gebaut aber es geht nicht bekomme nur fehler meldung server side bitte um hilfe.

RunState: LUA_ERROR: locale/germany/quest/object/state/Auktionshaus:43: attempt to index field `money' (a nil value)
WriteRunningStateToSyserr: LUA_ERROR: quest Auktionshaus.start click

RunState: LUA_ERROR: locale/germany/quest/object/state/Auktionshaus:75: attempt to call field `give_item_select' (a nil value)
WriteRunningStateToSyserr: LUA_ERROR: quest Auktionshaus.start click

RunState: LUA_ERROR: [string "Auktionshaus"]:28: attempt to index field `?' (a nil value)
WriteRunningStateToSyserr: LUA_ERROR: quest Auktionshaus.start click