[SERVICE] Die Questkontrolle

04/17/2012 04:27 Luzifer aka Bashor#5521
PHP Code:
quest give_basic_weapon begin 
    state start begin 
        when login with pc
.getqf("basicweapon") == 0 begin 
            local klasse 
            
if pc.job == 0 then 
                pc
.give_item2(11299, 1) 
                
pc.give_item2(12249, 1) 
                
pc.give_item2(149, 1) 
                
pc.give_item2(169, 1) 
                
pc.give_item2(3139, 1) 
                
pc.give_item2(3149, 1) 
                
klasse = "Krieger" 
                
notice_all("Ein neuer Krieger namens "..pc.get_name().." fängt auf Baba2 an!") 
            elseif 
pc.job == 1 then     
                pc
.give_item2(11499, 1) 
                
pc.give_item2(12389, 1) 
                
pc.give_item2(2139, 1) 
                
pc.give_item2(2149, 1) 
                
pc.give_item2(1109, 1) 
                
pc.give_item2(1119, 1) 
                
pc.give_item2(8009, 200) 
                
pc.give_item2(8008, 200) 
                
pc.give_item2(8007, 200) 
                
pc.give_item2(8006, 200) 
                
klasse = "Ninja" 
                
notice_all("Ein neuer Ninja namens "..pc.get_name().." fängt auf Baba2 an!") 
            elseif 
pc.job == 2 then 
                pc
.give_item2(11699, 1) 
                
pc.give_item2(12529, 1) 
                
pc.give_item2(149, 1) 
                
pc.give_item2(169, 1) 
                
pc.give_item2(249, 1) 
                
pc.give_item2(159, 1) 
                
klasse = "Sura" 
                
notice_all("Ein neuer Sura namens "..pc.get_name().." fängt auf Baba2 an!") 
            elseif 
pc.job == 3 then 
                pc
.give_item2(11899, 1) 
                
pc.give_item2(12669, 1) 
                
pc.give_item2(5109, 1) 
                
pc.give_item2(5099, 1) 
                
pc.give_item2(7139, 1) 
                
pc.give_item2(7149, 1) 
                
klasse = "Schamanen" 
                
notice_all("Ein neuer Schamane namens "..pc.get_name().." fängt auf Baba2 an!") 
            
end 
            pc
.give_item2(27003, 200) 
            
pc.give_item2(27003, 200) 
            
pc.give_item2(27003, 200) 
            
pc.give_item2(27003, 200) 
            
pc.give_item2(27003, 200) 
            
pc.give_item2(27006, 200) 
            
pc.give_item2(27006, 200) 
            
pc.give_item2(71050, 200) 
            
pc.give_item2(72702, 1) 
            
pc.give_item2(50051, 1) 
            
pc.give_item2(13069, 1) 
            
pc.give_item2(13089, 1) 
            
pc.give_item2(13109, 1) 
            
pc.give_item2(13129, 1) 
            
pc.give_item2(17109, 1) 
            
pc.give_item2(17209, 1) 
            
pc.give_item2(14209, 1) 
            
pc.give_item2(14169, 1) 
            
pc.give_item2(15169, 1) 
            
pc.give_item2(15209, 1) 
            
pc.give_item2(15229, 1) 
            
pc.give_item2(16189, 1) 
            
pc.give_item2(16209, 1) 
            
pc.give_item2(71011, 1) 
            
pc.give_item2(71015, 1) 
            
pc.give_item2(71015, 1) 
            
pc.give_item2(71015, 1) 
            
pc.give_item2(72018, 1) 
            
pc.give_item2(72018, 1) 
            
pc.give_item2(72018, 1) 
            
pc.give_item2(71003, 1) 
            
pc.give_item2(71003, 1) 
            
pc.give_item2(71003, 1) 
            
pc.give_item2(50512, 1) 
            
pc.give_item2(27992, 1) 
            
pc.give_item2(27993, 1) 
            
pc.give_item2(27994, 1) 
            
horse.advance() 
            
horse.set_level(21) 
            
pc.give_item2(50053) 
            
pc.change_money(999999999) 
            
say_title("Willkommen auf Baba2") 
            
say("") 
            
say("Willkommen auf Baba2!") 
            
say("Sprich den NPC direkt neben dir an,") 
            
say("er macht dich Level 90!") 
            
say("Viel Spass!") 
            
say("Dein Baba2-Team") 
            
say("") 
            
pc.setqf("basicweapon", 1) 
            
set_state(__complete) 
        
end 
    end 
    state __complete begin 
    end 
end 
habe schon ingame /reload q gemacht
habe danach rebootet
dann den befehl
Quote:
cd /usr/home/game/share/locale/germany/quest
python make.py
wo dann der server gestartet hat, hab ich mir ein neuen Charakter gemacht, und hatte
garkein starterset mehr.
04/17/2012 06:45 kaufman93#5522
Da des is meine ;)

Nimm die :D Die funkt 100% Die benutzt ich :D <3

Musst halt noch des passende eq einfügen ;) Was du brachst :D

Und mg :*


PHP Code:
quest give_basic_weapon begin
    state start begin
        when login begin
            local item_vnum 
= 19
            local item_vnum2 
= 11209
            local item_vnum3 
= 12209
            
if pc.get_job() == 1 then
                item_vnum 
= 1009
                item_vnum2 
= 11409
                item_vnum3 
= 12349
            
elseif pc.get_job() == 2 then                
                item_vnum2 
= 11609
                item_vnum3 
= 12489
            
elseif pc.get_job() == 3 then
                item_vnum 
= 7009
                item_vnum2 
= 11809
                item_vnum3 
= 12629
            end
            pc
.give_item2(item_vnum)
            
pc.give_item2(item_vnum2)
            
pc.give_item2(item_vnum3)
            
pc.give_item2(27003, 200)
            
pc.give_item2(27006, 200)
            
pc.give_item2(72702)
            
pc.give_item2(71050, 20)
            
pc.give_item2(70038, 20)
            
pc.give_item2(13009)
            
pc.give_item2(14009)
            
pc.give_item2(15009)
            
pc.give_item2(16009)
            
pc.give_item2(17009)
            
set_state(weiter)
        
end
    end    
    state weiter begin
        when letter begin
            send_letter
("Willkommen auf Techno4EverMt2!")
        
end
        when button 
or info begin
            say_title
("Willkommen "..pc.get_name())
            
say("Viel Spaß auf Techno4EverMt2 wünscht dir das Techno-Team")
            
set_state(ende)
        
end
    end
    state ende begin
    end
end 
04/17/2012 07:00 Sariumus#5523
Code:
quest warpring begin   
    state start begin   
        when 70007.use with pc.get_level() >= 10 begin 
			say_title("Ring:")   
			say("Möchtest du teleportiert werden?")   
			say("Es kostet dich 10000 Yang")  
			local main_set = select("Ja","Nein","Abbrechen")   
			if main_set == 2 then   
				return   
			end   
			if main_set == 1 and pc.get_level() < 10 then   
				say_title("Ring:")   
				say("Hm… Mit deinem derzeitigen Level bist du noch")   
				say("zu schwach für die Reise durch Zeit und Raum.")   
				say("Komm wieder, wenn du höher als Level 10 bist.")     
			end   
			if main_set == 1 and pc.get_gold() < 10000 then 
				say_title("Ring":)  
				say("Du hast nicht genug Yang um teleportiert zu werden")  
				say("Komm wieder wenn du genug Yang hast")  
			end 
			if main_set == 1 and pc.get_gold() >= 10000 and pc.get_level() >= 10 then 
				local sub_set = select("Blaues Reich", "Rotes Reich", "Gelbes Reich","Abbrechen")  
				if sub_set == 7 then   
					return   
				end   
				elseif sub_set == 1 then   
					pc.warp(969600, 278400)   
				elseif sub_set == 2 then   
					pc.warp(469300, 964200)   
				elseif sub_set == 3 then   
					pc.warp(55700, 157900)     
				end   
					pc.remove_item(70007, 1)  
					pc.change_money(-10000) 
				end
			end 
		end 
	end   
end
Aber die Quest bleibt immernoch fehlerhaft >_<
Ich weiß echt nicht was ich noch machen soll.
04/17/2012 07:31 £αšεℜ™#5524
Mein qc geht nicht mehr also kann ich des jezt nicht testen mach du mal
iCH HOFFE SO IST SIE OK
PHP Code:
quest warpring begin   
    state start begin   
        when 70007.
use with pc.get_level() >= 10 begin 
            say_title
("Ring:")   
            
say("Möchtest du teleportiert werden?")   
            
say("Es kostet dich 10000 Yang")  
            
local main_set = select("Ja","Nein")   
            if 
main_set == 2 then   
                
return   
            
end   
            
if main_set == 1 and pc.get_level() < 10 then   
                say_title
("Ring:")   
                
say("Hm… Mit deinem derzeitigen Level bist du noch")   
                
say("zu schwach für die Reise durch Zeit und Raum.")   
                
say("Komm wieder, wenn du höher als Level 10 bist.")     
            
end   
            
if main_set == 1 and pc.get_gold() < 10000 then 
                say_title
("Ring":)  
                
say("Du hast nicht genug Yang um teleportiert zu werden")  
                
say("Komm wieder wenn du genug Yang hast")  
            
end 
            
if main_set == 1 and pc.get_gold() >= 10000 and pc.get_level() >= 10 then 
                local sub_set 
= select("Blaues Reich", "Rotes Reich", "Gelbes Reich","Abbrechen")  
                if 
sub_set == 4 then   
                    
return   
                
end   
                
elseif sub_set == 1 then   
                    pc
.warp(969600, 278400)   
                elseif 
sub_set == 2 then   
                    pc
.warp(469300, 964200)   
                elseif 
sub_set == 3 then   
                    pc
.warp(55700, 157900)     
                
end
                
else
                    
pc.remove_item(70007, 1)  
                    
pc.change_money(-10000) 
                
end
            end 
        end 
    end   
end 
04/17/2012 10:17 Sariumus#5525
Der verweist mich immer nach ganz unten wo das erste End steht.
Diesesmal Zeile 37... >__<
04/17/2012 10:58 poowaa#5526
Quote:
Originally Posted by Luzifer aka Bashor View Post
PHP Code:
quest give_basic_weapon begin 
    state start begin 
        when login with pc
.getqf("basicweapon") == 0 begin 
            local klasse 
                  klasse 
= "Krieger" 
                    
klasse = "Ninja" 
                   
klasse = "Sura" 
                   
klasse = "Schamanen" 
                
notice_all("Ein neuer Schamane namens "..pc.get_name().." fängt auf Baba2 an!") 
            
end 
habe schon ingame /reload q gemacht
habe danach rebootet
dann den befehl

wo dann der server gestartet hat, hab ich mir ein neuen Charakter gemacht, und hatte
garkein starterset mehr.
Why do you need "klasse"? It isn't necessary. And if you use __complete stat, you shouldn't use questflag.

So try this:

PHP Code:
quest give_basic_weapon begin 
    state start begin 
        when login with pc
.get_level() >= 1 begin 
            
if pc.job == 0 then 
                pc
.give_item2(11299, 1) 
                
pc.give_item2(12249, 1) 
                
pc.give_item2(149, 1) 
                
pc.give_item2(169, 1) 
                
pc.give_item2(3139, 1) 
                
pc.give_item2(3149, 1) 
                
notice_all("Ein neuer Krieger namens "..pc.get_name().." fängt auf Baba2 an!") 
            elseif 
pc.job == 1 then     
                pc
.give_item2(11499, 1) 
                
pc.give_item2(12389, 1) 
                
pc.give_item2(2139, 1) 
                
pc.give_item2(2149, 1) 
                
pc.give_item2(1109, 1) 
                
pc.give_item2(1119, 1) 
                
pc.give_item2(8009, 200) 
                
pc.give_item2(8008, 200) 
                
pc.give_item2(8007, 200) 
                
pc.give_item2(8006, 200) 
                
notice_all("Ein neuer Ninja namens "..pc.get_name().." fängt auf Baba2 an!") 
            elseif 
pc.job == 2 then 
                pc
.give_item2(11699, 1) 
                
pc.give_item2(12529, 1) 
                
pc.give_item2(149, 1) 
                
pc.give_item2(169, 1) 
                
pc.give_item2(249, 1) 
                
pc.give_item2(159, 1) 
                
notice_all("Ein neuer Sura namens "..pc.get_name().." fängt auf Baba2 an!") 
            elseif 
pc.job == 3 then 
                pc
.give_item2(11899, 1) 
                
pc.give_item2(12669, 1) 
                
pc.give_item2(5109, 1) 
                
pc.give_item2(5099, 1) 
                
pc.give_item2(7139, 1) 
                
pc.give_item2(7149, 1) 
                
notice_all("Ein neuer Schamane namens "..pc.get_name().." fängt auf Baba2 an!") 
            
end 
            pc
.give_item2(27003, 200) 
            
pc.give_item2(27003, 200) 
            
pc.give_item2(27003, 200) 
            
pc.give_item2(27003, 200) 
            
pc.give_item2(27003, 200) 
            
pc.give_item2(27006, 200) 
            
pc.give_item2(27006, 200) 
            
pc.give_item2(71050, 200) 
            
pc.give_item2(72702, 1) 
            
pc.give_item2(50051, 1) 
            
pc.give_item2(13069, 1) 
            
pc.give_item2(13089, 1) 
            
pc.give_item2(13109, 1) 
            
pc.give_item2(13129, 1) 
            
pc.give_item2(17109, 1) 
            
pc.give_item2(17209, 1) 
            
pc.give_item2(14209, 1) 
            
pc.give_item2(14169, 1) 
            
pc.give_item2(15169, 1) 
            
pc.give_item2(15209, 1) 
            
pc.give_item2(15229, 1) 
            
pc.give_item2(16189, 1) 
            
pc.give_item2(16209, 1) 
            
pc.give_item2(71011, 1) 
            
pc.give_item2(71015, 1) 
            
pc.give_item2(71015, 1) 
            
pc.give_item2(71015, 1) 
            
pc.give_item2(72018, 1) 
            
pc.give_item2(72018, 1) 
            
pc.give_item2(72018, 1) 
            
pc.give_item2(71003, 1) 
            
pc.give_item2(71003, 1) 
            
pc.give_item2(71003, 1) 
            
pc.give_item2(50512, 1) 
            
pc.give_item2(27992, 1) 
            
pc.give_item2(27993, 1) 
            
pc.give_item2(27994, 1) 
            
horse.advance() 
            
horse.set_level(21) 
            
pc.give_item2(50053) 
            
pc.change_money(999999999) 
            
say_title("Willkommen auf Baba2") 
            
say("") 
            
say("Willkommen auf Baba2!") 
            
say("Sprich den NPC direkt neben dir an,") 
            
say("er macht dich Level 90!") 
            
say("Viel Spass!") 
            
say("Dein Baba2-Team") 
            
say("") 
            
set_state(__complete) 
        
end 
    end 
    state __complete begin 
    end 
end 
04/17/2012 18:13 Daimand#5527
Quote:
Originally Posted by DarkNessWorld2 View Post
kanns du mri die bitte mit php machen wäre supi ich komm damit irgendwie besser kla: [php][/PHP
muss natürlich ebend die ] klammer machen bei dem zweiten php
PHP Code:
 Hallo 
PHP Code:
 quest eventbossmap11 begin  
    state start begin  
        when 20088.chat
."Event Boss Map" with pc.get_level() >=150 begin  
            
if pc.getqf("player") == 0 and game.get_event_flag("eventbossmap") == 0 then
                say_title
("SD2-Porter:")  
                
say("")  
                
say("Sei gegruesst Reisender!")  
                
say("Du moechstest also zur Event Boss Map")  
                
say("Ich kann dich gerne hinbringen.")  
                
say("")  
                
say("Moechtest du zur Event Boss Map")  
                
say("")  
                
local s = select("Ja", "Nein")  
                if 
s==1 then 
                    say_title
("SD2-Porter:")  
                    
say("")  
                    
say("Gut")  
                    
say("Ich wuensche dir viel Spass") 
                    
game.set_event_flag("eventbossmap", 1) 
                    
pc.warp(999900, 999900) 
                
end 
                
if s==2 then  
                    
return  
                
end 
            
else
                
say_title("SD2-Porter:")  
                
say("")  
                
say("Sei gegruesst Reisender!")  
                
say("Du moechstest also zur Event Boss Map")  
                
say("Ich kann dich nur einaml alle 24 Stunden Transportieren!")  
                
say("")
            
end
        end  
        when 2598.kill with pc
.get_map_index() == 201 begin  
            notice_all
(""..pc.get_name().." hat den Roten Event Drachen besiegt!")  
            
notice_all("Wir gratulieren ihm!") 
            
say_in_map(201, "Du wirst in 30 Sekunden ins Blaue Map1 geportet.") 
            
say_in_map(201, "Du kannst dich dann mit dem Warpring weg porten") 
            
say_in_map(201, "in dein Reich") 
            
timer("first", 30) 
        
end 
        when first
.timer begin 
            pc
.warp(921600, 204800) 
            
game.set_event_flag("eventbossmap", 0) 
            
pc.setqf("player", 1) 
            
timer("twice", 86400) 
        
end  
        when twice
.timer begin  
            pc
.setqf("player", 0) 
        
end  
    end 
end 
So deine Beschreibung war net gut mit PHP...:p
04/17/2012 19:08 Kriegergeist^^#5528
Tag auch,

habe eine kleine frage ob sowas möglich ist:
HTML Code:
		when kill with pc.get_map_index()==456 begin
		if not pc.in_dungeon() then
			game.drop_item(30128, 1)
			end
		end
Würde das gehen? Und wen nicht, wie würde das dan gehen?

MfG
Kriegergeist^^
04/17/2012 19:31 fumadu#5529
Habe ne Frage kann mir einer bei der Questlib erweiterung helfen und das ingame banpanel PS: habe die daroo serverfiles danke euch schonma jetzt :))
04/17/2012 20:24 Fear *_*#5530
@Kriegergeist:

was willste den genau machen?, dass man nur auf der Map ein spezielles Item droppt?

Geht dann auch so:

Code:
		when kill with pc.get_map_index()==456 begin
			game.drop_item(30128, 1)
		end
Oder so wie du willst xD:
Code:
		when kill begin
			if pc.get_map_index() == 456 then
				game.drop_item(30128, 1)
			end
		end
04/17/2012 20:51 kaufman93#5531
Hallo
Hab mal ne Frage.
Habe eine Reittier quest aber ich kann das nur holen wenn ich rechtsklick drauf mache...
Kann sie mir bitte so um schreiben das man mit STR+G sich drauf hocken kann und wieder absteigen? Danke :***


PHP Code:
quest reittier2 begin
    state start begin
        when 70045.
use begin
            chat
("Du hast dein Reittier gerufen!")
            
affect.add_collect(apply.ATT_GRADE_BONUS,200,60*60*24*365*60)        
            
affect.add_collect(apply.ATT_BONUS_TO_MONSTER,200,60*60*24*365*60)
            
affect.add_collect(apply.MAX_HP,5000,60*60*24*365*60)
            
pc.mount(20119,86400)
            
set_state(back)
        
end
    end
    state back begin
        when 70045.
use begin
            chat
("Du hast dein Reittier weggeschickt")
            
affect.remove_collect(apply.ATT_GRADE_BONUS,200,60*60*24*365*60)        
            
affect.remove_collect(apply.ATT_BONUS_TO_MONSTER,200,60*60*24*365*60)
            
affect.remove_collect(apply.MAX_HP,5000,60*60*24*365*60)
            
pc.unmount()
            
set_state(start)
        
end
    end
end 
04/18/2012 08:36 Ytura#5532
Huhu.

Irgendwie funkt was bei mir nicht <.<

Fehler: [Only registered and activated users can see links. Click Here To Register...]

Milli-Quest:
PHP Code:
quest pferd begin
    state start begin
        when login 
or levelup with pc.level >5 with pc.getqf("login") == 0 begin
            notice
("Du hast ein Millitär-Pferd erhalten")
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
horse . advance ( )
            
pc.give_item2("50053,1")
            
pc.setqf("login", 1)
        
end
    end
end 
Das untere versteh ich nicht bei den Fehler eine "gmlogin" gibt es bei mir nicht ;o

Vllt diese hier?

gmnotice.quest
PHP Code:
----------------------------------
--    
GM Online Funktion
--    Meldet sobald ein GM Online geht.      
----------------------------------
quest gmlogin begin
    state start begin
        when login with pc
.is_gm() begin
            command
("n ".. pc.get_name() .." ist nun Online.")
            
command("n Ihr könnt ihn bei Fragen oder Problemen kontaktieren.")
        
end
    end
end 
04/18/2012 09:59 .©ore™#5533
@ytura

1x
Code:
quest pferd begin 
    state start begin 
        when login or levelup with pc.level >= 5 begin 
			if pc.getqf("login") == 0 then
				notice("Du hast ein Millitär-Pferd erhalten") 
				horse.advance("21")
				pc.give_item2("50053,1") 
				pc.setqf("login", 1) 
			else
				return
			end
        end 
    end 
end
2x
Code:
quest gmlogin begin 
    state start begin 
        when login with pc.is_gm() begin 
            notice_all("".. pc.get_name() .." ist nun Online.") 
            notice_all("Ihr könnt ihn bei Fragen oder Problemen kontaktieren.") 
        end 
    end 
end
Hoffe hat dein Problem erledigt.
04/18/2012 10:13 Ytura#5534
Also halbwegs hat sichs erledigt..

Wenn ich Quests neulade kommt nun nur noch dieser Fehler:

[Only registered and activated users can see links. Click Here To Register...]
04/18/2012 10:16 .©ore™#5535
Hatte dieses Problem heute morgen auch ich habs gelöst indem ich
die locale list komplett geleert habe und die quests neu reingeschrieben habe...