Discussione [SEMPLICE-GUIDA]Il Lua Base Per Metin

Stato
Discussione chiusa ad ulteriori risposte.

TWhiteGame

Utente Gold
3 Aprile 2013
303
70
114
256
Allora Premetto che so che ci sono 100 Migliardi di Miglioni Di Triglioni di guide ma nonostante questo il mio amico non ci ha capito niente cosi mi ha chiesto
di crearne una base non per quest perchè quella di S4lv4dom sono + che dettagliate ma per semplici script cosi cercherò di accontentarlo.

er Quanto Riguarda Dialoghi NPC.

Scaricare e Aprire NotePad++

Ogni conversazzione inizia con un titolo che si mette con il comando

say_title ("Titolo")

dopo il titolo viene immesso un testo che si mette con il comando

say ("Testo")

Questo è ciò che bisogna sapere per iniziare il lua =p

Ora Decidiamo che il nostro npc deve venderci qualcosa e quindi come titolo usiamo una cosa banale come :

say_title ("Venditore")

come facciamo a sapere che lui ci vuole vendere qualcosa ?? ce lo deve dire; allora usiamo i "say" e strutturiamo il primo pezzo di dialogo

Say_title ("Venditore")
say ("Ciao Amico")
say ("Ti stai avventurando sempre di più ")
say ("Nel meraviglioso mondo di metin!")
say ("Presto gli animali selvatici sarannò più forti")
say ("Vorresti Comprare Delle Pozzioni Per Sopravivere?")


Ecco abbiamo struturato il discorso ora che ci siamo fatti fare una domanda, dobbiamo rispondere ;e per fare ciò si creano delle variabili come si e no. Non staro qui a parlare molto
perchè e meglio che vi faccio vedere prima il comando e poi spiegarvelo. La Varriabile si crea cosi:

local variabile = select ("si" , "no" )

ora il comando e quello sopra elencato ma non sara sempre cosi io ora ho ciamato la variabile "variabile" ma voi potrete chiamarla pure in un altro modo tipo

local siono = select ( "si" , "ciao")

come avete visto non ho cambiato solo il nome variabile ma anche le opzioni che voi potrete modificare a vostro piacimento
icon_smile.gif.pagespeed.ce.UInIgDeTAB.gif


fin qua e semplice ametetelo voi che non avete mai capito il lua non comenterete ma secondo me questa guida vi sara stata utile =) detto ciò continuiamo

ora io gli fo creare delle opzioni ma dentro quelle opzioni dovro pur far fare qualcosa o no?
certo che si allora si fa cosi

local siono = select ( "si" , "no" )

if siono == 1 then

ecco qua xd che siamo arrivati alla parte più difficile per chi inizia la sua aventura
nel linguaggio lua
ogni variabile si distingue con il nome visto prima che in questo caso è "siono"
ma come fa il game a distinguere il si e il no? non puo se non glielo diciamo noi allora
si usano gli " if " e gli "elseif" che ora andremo a vedere
ora prima di vedere "elseif" che è la stessa cosa di un "if" cambia solo la posizione e meglio spiegare la stringa soprastante

if = (in inglese) se
siono = nome variabbile
==
1 then = sarebbe la prima opzione che si indica con il numero 1

if si usa solo alla prima opzione di una variabile
mentre elseif si usa per le altre =p

quindi riassunto script .

Say_title ("Venditore")
say ("Ciao Amico")
say ("Ti stai avventurando sempre di più ")
say ("Nel meraviglioso mondo di metin!")
say ("Presto gli animali selvatici sarannò più forti")
say ("Vorresti Comprare Delle Pozzioni Per Sopravivere?")

local siono = select ( "si" , "no" )
if siono == 1 then

pc.giveitem2 (value item , numero item)
if pc . gold >= 500000 then
pc . changegold ( - 500000 )
return
end

elseif siono == 2 then
return
end



a ecco qua questo e tutto un npc cembra lungo ma è una cosa che se imparata si fa in 30 secondi
e non per dire =)
ma io vi o spiegato fino al "if siono == 1 then"
cosa sono tutti quei comandi sotto??
semplice questo

pc.giveitem2 (value item , numero item)

serve a far ottenere a un player l'item e il numero immessi tipo se voglio che il player ottenga una velenosa +9 scrivero

pc.giveitem2 (189, 1)
ovvero value spada velenosa +9 e quantità

ma non vogliamo dargliela gratis allora si usano questi comandi

if pc . gold >= 500000 then
pc . changegold ( - 500000 )


che sono la quantita yang

if pc . gold >= 500000 then

cioè 500k

e il comando che toglie al player la quantita yang scritta

pc . changegold ( - 500000 )



deto ciò che è riimasto solo

return
end

elseif siono == 2 then
return
end

"
return
end
"
si spiegano da soli sono la parte che chiudono una opzione di una variabile in questo caso del si
facendogli vendere ecc..
e chiudere script

mentre

elseif siono == 2 then
retrun
end


e semplicemente la chiusura dello script
visto che premendo no si rifiuta
si scrive solo return end

ora salvate lo script con il nome " change_empire.start.0.script "
creare una cartella e rinominarla nel value del npc che vogliate
dentro di essa creare una cartella chiamata " chat "
e dentro " chat " inserire il file salvato
ora riaprite note pad++ e scrivete "Nome Che Volete Dare Al Neg " con le virgolette e salvate con
il nome " change_empire.start.0.arg "
e in file creare un altro documento di testo ma lasciarlo vuoto e salvarlo con il nome " change_empire.start.0.when "

quindi voi su desckstop avrete 1 cartella chiamata con il valu npc ( io uso 9003 bottegaia)
dentro la cartella chat e dentro chat i 3 file

9003 > chat > i 3 file fatti sopra =/

=) ho detto tutto ciò che serviva per imparare la base di uno script forse non mi saro spiegato al massimo come detto in cima io non sono un genio del lua ma spero che molti di voi che leggendo la guida abbiano imparato qualcosa e spero che voi non premiate subito la X in alto a destra ma comentiate xd non so come dire

PS:so gia che almeno qualcuno verra a criticare ma ameno io ho fatto ciò che ritenevo gusto =)
 
  • Mi piace
Reazioni: Agator95
monte la guida la creata solo per me,dato che volevo imparare qualcosa,prima me lo stava spiegando ma gli dicevo sempre:ehhhh??? cosaa?? che cazz hai detto???e quindi ha deciso di postarla..
gli ho detto chiama il post "guida per gli ignoranti come Agator" ma ha detto di no perchè l'avrebbero bannato...ora provo a seguire questa guida e vedo se c'è la fatta a farmi capire qualcosa..
grazie amico ;)
 
monte la guida la creata solo per me,dato che volevo imparare qualcosa,prima me lo stava spiegando ma gli dicevo sempre:ehhhh??? cosaa?? che cazz hai detto???e quindi ha deciso di postarla..
gli ho detto chiama il post "guida per gli ignoranti come Agator" ma ha detto di no perchè l'avrebbero bannato...ora provo a seguire questa guida e vedo se c'è la fatta a farmi capire qualcosa..
grazie amico ;)

Si ma se leggi questa guida non sò se impari qualcosa che ti possa servire per fare uno script... secondo me è spiegata male e probabilmente è anche sbagliata la spiegazione però fai te.

Comunque ti consiglio di scaricarti il locale di qualche server e leggerti gli script da li. Ti consiglierei il vecchio aeterna per cominciare, ma non sò se è ancora in circolazione. ( ti dico quello perchè gli script sono di Umberto e sono quindi giusti )
 
Senza offesa, ma si capisce meglio da quella di Salvo.
E quoto con @DarkScorpS, io sinceramente quella di Salvo me la sono letta forze neanche una volta e neanche tutta, ma le cose si capiscono meglio guardando altre quest. Io ho sempre fatto così prima di cominciare a studiarmi qualcosa, devo studiare qualcosa in C#? Mi trovo dei source e gli studio, vedi come impari. Il problema non sono le basi, ma trovare guide/testi più avanzati. Perché con le basi non saprai fare il tutto.
Distinti Saluti,
Mr. Demon.
 
Ultima modifica:
Allora Premetto che so che ci sono 100 Migliardi di Miglioni Di Triglioni di guide ma nonostante questo il mio amico non ci ha capito niente cosi mi ha chiesto
di crearne una base non per quest perchè quella di S4lv4dom sono + che dettagliate ma per semplici script cosi cercherò di accontentarlo.

er Quanto Riguarda Dialoghi NPC.

Scaricare e Aprire NotePad++

Ogni conversazzione inizia con un titolo che si mette con il comando

say_title ("Titolo")

dopo il titolo viene immesso un testo che si mette con il comando

say ("Testo")

Questo è ciò che bisogna sapere per iniziare il lua =p

Ora Decidiamo che il nostro npc deve venderci qualcosa e quindi come titolo usiamo una cosa banale come :

say_title ("Venditore")

come facciamo a sapere che lui ci vuole vendere qualcosa ?? ce lo deve dire; allora usiamo i "say" e strutturiamo il primo pezzo di dialogo

Say_title ("Venditore")
say ("Ciao Amico")
say ("Ti stai avventurando sempre di più ")
say ("Nel meraviglioso mondo di metin!")
say ("Presto gli animali selvatici sarannò più forti")
say ("Vorresti Comprare Delle Pozzioni Per Sopravivere?")


Ecco abbiamo struturato il discorso ora che ci siamo fatti fare una domanda, dobbiamo rispondere ;e per fare ciò si creano delle variabili come si e no. Non staro qui a parlare molto
perchè e meglio che vi faccio vedere prima il comando e poi spiegarvelo. La Varriabile si crea cosi:

local variabile = select ("si" , "no" )

ora il comando e quello sopra elencato ma non sara sempre cosi io ora ho ciamato la variabile "variabile" ma voi potrete chiamarla pure in un altro modo tipo

local siono = select ( "si" , "ciao")

come avete visto non ho cambiato solo il nome variabile ma anche le opzioni che voi potrete modificare a vostro piacimento
icon_smile.gif.pagespeed.ce.UInIgDeTAB.gif


fin qua e semplice ametetelo voi che non avete mai capito il lua non comenterete ma secondo me questa guida vi sara stata utile =) detto ciò continuiamo

ora io gli fo creare delle opzioni ma dentro quelle opzioni dovro pur far fare qualcosa o no?
certo che si allora si fa cosi

local siono = select ( "si" , "no" )

if siono == 1 then

ecco qua xd che siamo arrivati alla parte più difficile per chi inizia la sua aventura
nel linguaggio lua
ogni variabile si distingue con il nome visto prima che in questo caso è "siono"
ma come fa il game a distinguere il si e il no? non puo se non glielo diciamo noi allora
si usano gli " if " e gli "elseif" che ora andremo a vedere
ora prima di vedere "elseif" che è la stessa cosa di un "if" cambia solo la posizione e meglio spiegare la stringa soprastante

if = (in inglese) se
siono = nome variabbile
==
1 then = sarebbe la prima opzione che si indica con il numero 1

if si usa solo alla prima opzione di una variabile
mentre elseif si usa per le altre =p

quindi riassunto script .

Say_title ("Venditore")
say ("Ciao Amico")
say ("Ti stai avventurando sempre di più ")
say ("Nel meraviglioso mondo di metin!")
say ("Presto gli animali selvatici sarannò più forti")
say ("Vorresti Comprare Delle Pozzioni Per Sopravivere?")

local siono = select ( "si" , "no" )
if siono == 1 then

pc.giveitem2 (value item , numero item)
if pc . gold >= 500000 then
pc . changegold ( - 500000 )
return
end

elseif siono == 2 then
return
end



a ecco qua questo e tutto un npc cembra lungo ma è una cosa che se imparata si fa in 30 secondi
e non per dire =)
ma io vi o spiegato fino al "if siono == 1 then"
cosa sono tutti quei comandi sotto??
semplice questo

pc.giveitem2 (value item , numero item)

serve a far ottenere a un player l'item e il numero immessi tipo se voglio che il player ottenga una velenosa +9 scrivero

pc.giveitem2 (189, 1)
ovvero value spada velenosa +9 e quantità

ma non vogliamo dargliela gratis allora si usano questi comandi

if pc . gold >= 500000 then
pc . changegold ( - 500000 )


che sono la quantita yang

if pc . gold >= 500000 then

cioè 500k

e il comando che toglie al player la quantita yang scritta

pc . changegold ( - 500000 )



deto ciò che è riimasto solo

return
end

elseif siono == 2 then
return
end

"
return
end
"
si spiegano da soli sono la parte che chiudono una opzione di una variabile in questo caso del si
facendogli vendere ecc..
e chiudere script

mentre

elseif siono == 2 then
retrun
end


e semplicemente la chiusura dello script
visto che premendo no si rifiuta
si scrive solo return end

ora salvate lo script con il nome " change_empire.start.0.script "
creare una cartella e rinominarla nel value del npc che vogliate
dentro di essa creare una cartella chiamata " chat "
e dentro " chat " inserire il file salvato
ora riaprite note pad++ e scrivete "Nome Che Volete Dare Al Neg " con le virgolette e salvate con
il nome " change_empire.start.0.arg "
e in file creare un altro documento di testo ma lasciarlo vuoto e salvarlo con il nome " change_empire.start.0.when "

quindi voi su desckstop avrete 1 cartella chiamata con il valu npc ( io uso 9003 bottegaia)
dentro la cartella chat e dentro chat i 3 file

9003 > chat > i 3 file fatti sopra =/

=) ho detto tutto ciò che serviva per imparare la base di uno script forse non mi saro spiegato al massimo come detto in cima io non sono un genio del lua ma spero che molti di voi che leggendo la guida abbiano imparato qualcosa e spero che voi non premiate subito la X in alto a destra ma comentiate xd non so come dire

PS:so gia che almeno qualcuno verra a criticare ma ameno io ho fatto ciò che ritenevo gusto =)

Scusami <.< mi permetto di spiegarti che non si fa cosi'....<.<
Come abbiamo detto milioni trilioni o forse d+ volte ... dovete usare i file *.quest e non creare le quest in object :omfg:
non ci vuole nulla
Codice:
--**********************--
--**Script By DarknesS**-- 
--**             **--
--**********************--
quest venditore begin
    state start begin
        when 9012.chat."Venditore"  begin        
            say ("Ciao Amico")
            say ("Ti stai avventurando sempre di più ")
            say ("Nel meraviglioso mondo di metin!")
            say ("Presto gli animali selvatici sarannò più forti")
            say ("Vorresti Comprare Delle Pozioni Per Sopravivere?")    
            value_item = 30090
            numero_item = 10
            prezzo = 500000
            riscatto = - 500000
            say ("Ti accontento")
            local main_set = select("Si","No")
            if main_set == 2 then
                return
            end
            if pc . gold >= prezzo then
            pc . changegold (riscatto)
            pc.giveitem2 (value_item , numero_item)
            end
        end
    end
end
Ps fossi stato in te avrei messo 4 Z in pizzzioni
 
  • Mi piace
Reazioni: Mr.Enyx™
Che poi, forse sono rimasto in dietro ma se ricordo bene, nei say ("Testo") non ci devono essere accenti o simboli strani no?
 
Che poi, forse sono rimasto in dietro ma se ricordo bene, nei say ("Testo") non ci devono essere accenti o simboli strani no?
assolutamente non vero ti faccio un esempio :
****
total_gold = 1000000
say("Mi devi "..total_gold.." Yang" )

- - - Updated - - -

Esatto. Sennò in game si vedono male. Bisogna scrivere le è, ò, ì con '
Bhe sinceramente questa cosa mi e' nuova o comunque non mi e' mai capitato di avere problemi usando ù à ò
Poi dipende come li usi
 
Scusami <.< mi permetto di spiegarti che non si fa cosi'....<.<
Come abbiamo detto milioni trilioni o forse d+ volte ... dovete usare i file *.quest e non creare le quest in object :omfg:
non ci vuole nulla
Codice:
--**********************--
--**Script By DarknesS**-- 
--**             **--
--**********************--
quest venditore begin
    state start begin
        when 9012.chat."Venditore"  begin        
            say ("Ciao Amico")
            say ("Ti stai avventurando sempre di più ")
            say ("Nel meraviglioso mondo di metin!")
            say ("Presto gli animali selvatici sarannò più forti")
            say ("Vorresti Comprare Delle Pozioni Per Sopravivere?")    
            value_item = 30090
            numero_item = 10
            prezzo = 500000
            riscatto = - 500000
            say ("Ti accontento")
            local main_set = select("Si","No")
            if main_set == 2 then
                return
            end
            if pc . gold >= prezzo then
            pc . changegold (riscatto)
            pc.giveitem2 (value_item , numero_item)
            end
        end
    end
end
Ps fossi stato in te avrei messo 4 Z in pizzzioni
Infatti e l'errore che avevo ieri sera, con la cartella Object hahah o vbb... una cosa simile
 
Fahctotum NON è TUTTO ORO QUEL CHE LUCCICA A ME LOLLO PIACEVA MA ULTIMAMENTE MI STA INIZIANDO A STA UN PO SULLE

INOLTRE IO NON HO RISPOSTO A CERI POST PERCHE SE MI ABBASSASI AL LIVELLO DI UN "nabbo" mi batterebe in esperienza quindi =)

NB: SI VOIO SCRIVE IN ITALIANOS COREGOIUUTO =)

 
Mi dispiace ma se lo dice lui è vero.

Mica c'e' bisogno che lo dica lui basta che cercate di dare un senso a quei codici o stringhe lua come vogliamo chiamarle..
Mancano pezzi XD e sopratutto il lua parte da .quest ,non si creano .start .arg o .when quest' ultimi li scrive la quest quando la compili
 
Fahctotum NON è TUTTO ORO QUEL CHE LUCCICA A ME LOLLO PIACEVA MA ULTIMAMENTE MI STA INIZIANDO A STA UN PO SULLE

INOLTRE IO NON HO RISPOSTO A CERI POST PERCHE SE MI ABBASSASI AL LIVELLO DI UN "nabbo" mi batterebe in esperienza quindi =)

NB: SI VOIO SCRIVE IN ITALIANOS COREGOIUUTO =)




Non c'è l'ho con te o con Agator anzi hai fatto un favore con questa guida

stavo solo dicendo che Lollo è il Justin Bieber del lua
 
Non c'è l'ho con te o con Agator anzi hai fatto un favore con questa guida

stavo solo dicendo che Lollo è il Justin Bieber del lua
Lollo è il Justin Bieber del lua ....Nessuno ha messo in dubbio le abilita' di LoLLo .....ma penso che ci sia gente che il lua lo parla come l'italiano vedi BlackYuko!
 
evitate i ommenti inutili,white almeno è riuscito a farmi imparare uno script <.< ignorante come sono in lua sono riuscito a fare uno che da i marmi *-*
e mi sta aiutando ancora,voi invece criticare criticare,di vostre guide,release,cazzate varie non ne vedo
 
evitate i ommenti inutili,white almeno è riuscito a farmi imparare uno script <.< ignorante come sono in lua sono riuscito a fare uno che da i marmi *-*
e mi sta aiutando ancora,voi invece criticare criticare,di vostre guide,release,cazzate varie non ne vedo
MA in realta' ti ho postato il suo script corretto 1.
Release mie ce ne sono basta che cerchi !!2.
Secondo me non hai capito che qua il problema e' che materialmente non e' una guida la sua!!!! non e' questo il LUA
 
senti non mi interessa che è,sono riuscito a imparare qualcosa de nuovo,ora sto facendo o script che da tutto all'inizio
 
Stato
Discussione chiusa ad ulteriori risposte.