[SERVICE] Die Questerstellung

06/05/2013 14:51 |★|554#76
Quote:
Originally Posted by GenerationAzzlack View Post
Kann man eig. ne quest dann starten, wenn man z.b. ein Mob gekillt hat?
z.b. man killt den oberork & die quest startet, story story, aufgabe, story & belohung?

€ : 'ne quest wo aus der truhe nen mob spawnt, geht das?

z.b. wie bei den Bossruf rollen <:
PHP Code:
when kill with npc.get_race() == xx begin 
xx mit der VNUM vom Oberork or whatever ersetzen.
----------------------------------------------------------------------------------------------------------------------------------------------------

Quote:
Originally Posted by swamswam View Post
gibt es ne möglichkeit nur bestimmte items die man auf ein npc zieht zu löschen ?
PHP Code:
when xx.take with item.get_vnum() == yy or item.get_vnum() == zz begin 
xx = NPC-Vnum
yy = Item 1 Vnum
zz = Item 2 Vnum
beliebig lange fortführbar
----------------------------------------------------------------------------------------------------------------------------------------------------

Quote:
Originally Posted by kingdasda View Post
Kann mir jemand sagen ob/wie so etwas geht ?

1. Durch einen Quest befehl das wenn der spieler in einem bestimmten Bereich ist das dann etwas passiert (Sound abspielen und/oder Nachricht)
2. Man kann NPC's eine "Route" hinzufügen sodass sie dann wie der Betrunkene Bürger eine bestimmte Runde laufen das sollte aber nicht random sondern gezielt sein und das die NPC's bestimmte Animationen machen wenn sie bei einer bestimmten Koordinate sind (Ich will so einen Tagesablauf erstellen)
1. Gibts keinen speziellen Befehl für. Es geht, aber dies sorgt für Laggs bei hoher Spielerzahl:
Ein Loop_timer (je kürzerer Zeitraum desdo genauer das Ergebnis, aber dafür auch größere Laggs) checkt bei Start die Position des Spielers und falls diese in einem festgelegten Bereich liegt startet die Aktion.

2. Wäre mir keine Möglichkeit bekannt...
Alles ist möglich, aber dies nicht ohne weiteres und wirst auch Clientside dran arbeiten müssen (Animationsbefehle für die Quest)
06/05/2013 21:36 swamswam#77
Quote:
Zitat:
Zitat von swamswam
gibt es ne möglichkeit nur bestimmte items die man auf ein npc zieht zu löschen ?
PHP-Code:
when xx.take with item.get_vnum() == yy or item.get_vnum() == zz begin
xx = NPC-Vnum
yy = Item 1 Vnum
zz = Item 2 Vnum
beliebig lange fortführbar
meine frage war ehr ob man statt die items in der selben quest zu schreiben eine andere quest erstellen kann bzw ne andere txt wo man die items reinschreiben kann :)
06/06/2013 14:50 Flotzi#78
1. Möglichkeit:
Aus einer Schwarzwindanzug+5 bis einschließlich +9, 10 Mal Rotdrachenstahl, 10 Mal Goldener Stoff, 10 Mal Edles Schulterstück und 100.000 Yang, kann man bei Jae-Seon Kim ein Drachenreiteranzug+0 herstellen lassen.
Hinweis: Dieses Verfahren kann aber auch fehlschlagen. Bonis werden nicht übernommen.
2. Möglichkeit:
Aus einem Schwarzwindanzug+9, 3 Traktate zur Fechtkunst, 100 Energiesplitter, 2 Segenschriftrollen und 5.000.000 Yang, kann man bei Admiral Angmur ein Drachenreiteranzug+0 herstellen lassen.
Hinweis: Dieses Verfahren funktioniert zu 100%. Bonis werden übernommen.

Könnte man diese Quest, genauso schreiben?
wäre echt nice.
06/06/2013 23:23 Mr. 'Avenue™#79
Quote:
Originally Posted by Flotzi View Post
1. Möglichkeit:
Aus einer Schwarzwindanzug+5 bis einschließlich +9, 10 Mal Rotdrachenstahl, 10 Mal Goldener Stoff, 10 Mal Edles Schulterstück und 100.000 Yang, kann man bei Jae-Seon Kim ein Drachenreiteranzug+0 herstellen lassen.
Hinweis: Dieses Verfahren kann aber auch fehlschlagen. Bonis werden nicht übernommen.
2. Möglichkeit:
Aus einem Schwarzwindanzug+9, 3 Traktate zur Fechtkunst, 100 Energiesplitter, 2 Segenschriftrollen und 5.000.000 Yang, kann man bei Admiral Angmur ein Drachenreiteranzug+0 herstellen lassen.
Hinweis: Dieses Verfahren funktioniert zu 100%. Bonis werden übernommen.

Könnte man diese Quest, genauso schreiben?
wäre echt nice.
PHP Code:
quest upp begin
    state start begin
        when NPCVNUM
.take with item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9begin
            local upps 
= {
                [
ITEMVNUM1] = {ITEMVNUM1},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM2] = {ITEMVNUM2},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM3] = {ITEMVNUM3},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM4] = {ITEMVNUM4},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM5] = {ITEMVNUM5},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM6] = {ITEMVNUM6},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM7] = {ITEMVNUM7},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM8] = {ITEMVNUM8},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM9] = {ITEMVNUM9},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
            }
            if 
pc.count_item(Rotdrachenstahl) > and pc.count_item(Edles Schulterstück) > and pc.get_gold 99999 then
                item
.remove()
                
pc.give_item2(upps[item.get_vnum()][1])
            else
                
syschat("Du hast nicht die benötigten Materialien.")
            
end
        end
    end
end 
Zur 2 Möglichkeit; Dies kannst du beim UppSystem(normal in der DB) einstellen. Tutorials dazu gibt es genug.
06/08/2013 22:20 Der-Eddy#80
/sticked
06/09/2013 01:53 swamswam#81
wie kann man die timer zeit in min stunden oder sek ausgeben lassen ?

Ich kriege das nur über time_to_str(get.time()) hin, aber dann wird mit das komplette Jahr und so gennant aber ich will ja wissen wie lang das noch dauert

Ich bitte um Hilfe
mfg swamswam
06/09/2013 02:33 Mr. 'Avenue™#82
Quote:
Originally Posted by swamswam View Post
wie kann man die timer zeit in min stunden oder sek ausgeben lassen ?

Ich kriege das nur über time_to_str(get.time()) hin, aber dann wird mit das komplette Jahr und so gennant aber ich will ja wissen wie lang das noch dauert

Ich bitte um Hilfe
mfg swamswam

Hier habe ich mal ein Beispiel
PHP Code:
pc.setqf("time"get_time() + 5*60) -- 5 Minuten


-- Zum Ausgeben
say
("Du kannst erst in "..pc.getqf("time") - get_time().." Sekunden bla"
06/09/2013 12:02 swamswam#83
kann man das nicht auch in

Stunde , Minuten , Sekunden

anzeigen lassen? :)
06/09/2013 12:08 vinni03#84
a lottery, it would be an event, enabled by the game master.
number: 0/10
award: assorted items

thanks :D

#push
please help?
06/09/2013 12:24 Mr. 'Avenue™#85
Quote:
Originally Posted by swamswam View Post
kann man das nicht auch in

Stunde , Minuten , Sekunden

anzeigen lassen? :)
PHP Code:
            local dif_zeit pc.getqf('verbl_zeit') - get_time()
            
local days math.floor(dif_zeit 60 60 24
            
local stnd math.floor((dif_zeit-(days*60*60*24)) / 60 60)
            
local mins math.floor(((dif_zeit-(days*60*60*24))-(stnd*60*60) ) / 60)
            
say_reward('Warte noch : '..stnd..' Stunden!'
06/09/2013 12:34 swamswam#86
Mir zeigt der dann immer 0 Stunden an aber ich will ja das der mir anzeig wie viele verbleibt als Beispiel:

Warte noch 1 Stunde und 11 Minuten !
06/09/2013 12:47 Mr. 'Avenue™#87
Quote:
Originally Posted by swamswam View Post
Mir zeigt der dann immer 0 Stunden an aber ich will ja das der mir anzeig wie viele verbleibt als Beispiel:

Warte noch 1 Stunde und 11 Minuten !
PHP Code:
            local dif_zeit pc.getqf('verbl_zeit') - get_time() 
            
local days math.floor(dif_zeit 60 60 24)  
            
local stnd math.floor((dif_zeit-(days*60*60*24)) / 60 60
            
local mins math.floor(((dif_zeit-(days*60*60*24))-(stnd*60*60) ) / 60
            
say_reward('Warte noch : '..stnd..' Stunden und '..mins..' Minuten!'
06/09/2013 18:10 Summex#88
#Push

Hey ! Kann jemand so etwas wie eine Arena quest schreiben ? Also es gibt einen npc wenn man mit dem redet wird man in eine map teleportiert. Da gibt es einen NPC. Wenn man mit dem spricht, sagt er einem dann Sowas wie: Du möchtest dich in der Arena messen ? oder abbrechen
bei arena messen kommt dann ein text (zum selberbearbeiten) am ende sagt er dann bist du wirklich bereit, dann wählt man aus: Ja bin ich oder Nein, lieber noch nicht. Wenn man Ja wählt sagt er: Gut dein erster Gegner ist ein (z.B.) Wildhund. Soll ich dich jetzt in die Arena teleportieren ? Ja ich bin bereit oder Nein ich muss noch trainieren. Bei ja wird man in eine Map geportet (da muss man dann die Koordinaten anpassen) wenn man den Wildhund gekillt hat steht (falls das geht sonst im normalen chat) eine ankündigung nur für einen selber das man den wildhund besiegt hat, Das Volk jubelt. Du kehrst nun zurück in den Trainingsraum. Dann wird man in eine map geportet (Koordinaten selber anpassen) Wenn man jetzt nochmal mit NPC XY redet sagt er einem: Du hast den Kampf gegen (Beispiel) den Wildhund gewonnen. Hier hast du deine Belohnung: einen Betrag von Yang und ein arenasiegel oder sowas in der art (das item muss man halt noch einfügen) Nach dem ersten Kampf gibt es jetzt einen neuen Ansprechpunkt bei dem NPC (wenn das nicht geht gibt es den Punkt schon von anfang an): Rang erhöhen. Man kann mit 5 Arenasiegeln (also immer nach fünf Kämpfen) diese 5 siegel gegen den nächsten Rang eintauschen. Also zum Beispiel Rang Lehrling usw bis Gladiator und Champion (schreib am besten zwei Beispiele den rest kann ich dann ja weiter schreiben). Dann gibt es noch einen NPC der Gladiatorenverwalter oder sowas und da kann man wenn man einen höheren rang hat seine Belohnung abholen also man kann da auswählen: Beginnerbelohnung - Lehrlingsbelohnung - Fortgeschrittenenbelohnung .... Gladiatorenbelohnung - Arenachampionbelohnung. Wenn man Beginnerbelohnung anklickt sagt er: Tut mir leid für den Rang beginner kann ich dir keine Belohnung geben trainiere weiter und komm später nocheinmal wieder. klickt man alle anderen Ränge an sagt er: Für deinen Mut und deine Kampfkunst erhältst du: (belohung einfügen als beispiel einfach 100 yang und 100 potts oder sowas)

Desweiteren währe es auch cool wenn es eine Ankündigung für alle geben würde (oder es im rufchat stehen würde) wenn jemand zum Rang Champion aufgestiegen ist. Also das währe dann so: Der (Krieger, Ninja, Sura, Schamane) (Name des Spielers) aus dem (blauen, roten, gelben) Reich ist zum Arenachampion befördert worden. Ruhm und Ehre sind ihm Gewiss. Das ganze Volk jubelt.

Es sind also glaube ich 3 Quests ;) Ich weiß das ist ne ziemlich lange Quest aber ich denke das währe recht coo. Ich fände es auch gut das du die Quest so schreiben würdest das halt daneben steht zum Beispiel bei der belohnung: hier beliebige Belohnung einfügen, damit es mir dann leichter fällt die quest für mich umzuschreiben. Außerdem währe es gut wenn du immer zwei Beispiele machst also zwei Kampf Beispiele usw, damit es für mich halt einfacher ist.

LG
Kingdasda
06/09/2013 20:29 nexoseinwas1#89
Hatt jemand eine qarpring quest wo man auch nach grotte 1 und grotte 2 porten kann so wie wie harmoni3 warpring quest nur mit grotte 1 und 2 ? :D
06/10/2013 19:08 Flotzi#90
PHP Code:
quest upp begin
    state start begin
        when NPCVNUM
.take with item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9) or
        
item.get_vnum() >= ITEMVNUM(+5) and item.get_vnum() <= ITEMVNUM(+9begin
            local upps 
= {
                [
ITEMVNUM1] = {ITEMVNUM1},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM2] = {ITEMVNUM2},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM3] = {ITEMVNUM3},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM4] = {ITEMVNUM4},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM5] = {ITEMVNUM5},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM6] = {ITEMVNUM6},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM7] = {ITEMVNUM7},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM8] = {ITEMVNUM8},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
                [
ITEMVNUM9] = {ITEMVNUM9},    -- [WAFFE DIE GEUPPT WIRD] = {WAFFE ZU DER GEUPPT WIRD}
            }
            if 
pc.count_item(Rotdrachenstahl) > and pc.count_item(Edles Schulterstück) > and pc.get_gold 99999 then
                item
.remove()
                
pc.give_item2(upps[item.get_vnum()][1])
            else
                
syschat("Du hast nicht die benötigten Materialien.")
            
end
        end
    end
end 
kannst du mir in diese Quest bitte, diese Vnums einfügen, weil ich weiss nicht sicher was geändert gehört.

Mfg :)

Goldener Stoff -> 30517
Antikes Schulterstück -> 30516
Drachenstahl -> 30512

20259 Drachenreiteranzug

kannst du mir bitte die Vnums einfügen, da ich nicht genau weiß, was ich ändern muss :(