[GUIDA]Come modificare la % dei bonus e status

« Older   Newer »
 
  Share  
.
  1. Spectrus
        +1   -1
     
    .

    User deleted


    Ho pensato di creare una guida per chi vuole cimentarsi nel:
    1) cambiare le % dei bonus sugli oggetti
    2) modificare lo status.
    3) modificare il fabbro (% successo up, oggetti richiesti e soldi richiesti)
    4) modificare oggetti in vendita dagli NPC e il loro prezzo

    Do ovviamente per scontato che abbiate già seguito il tutorial principale che vi insegna a come creare il vostro server.

    1) Dunque, per quanto riguarda il primo punto, dovete aprire il DB con Navicat 8 MySQL, come mostrato all'inizio di questo video (seguitelo pari pari fino al minuto 1:20):

    YouTube - Set Modalita GM

    Invece di cliccare su "account" come viene mostrato sul video, andate alla voce "player" (sotto la voce "mysql") e poi cliccate sulla tabella "item_attr". Dopo un attesa di 10-15 secondi si aprirà la tabella, di cui vi posto un'immagine:



    Come potete notare, nella prima colonna c'è il nome del bonus, nella seconda una colonna chiamata "prob" (lasciate sempre 1, non toccatela) e poi vi sono 5 colonne denominate "lvl x", dove x spazia da 1 a 5.
    Ebbene le colonne "lvl" indicano le possibili percentuali di bonus che possono uscire su un oggetto.
    Se prendiamo STR ad esempio, vedrete che su un arma può uscire il suo bonus da un minimo di 2 (STR+2) ad un massimo di 12 (STR+12).
    Pertanto se volete che tale "range" non esista, ma esca sempre e solo il bonus massimo preferito, dovete modificare tutti i campi "lvl" mettendo un unico valore (come ho fatto io con MAX_HP, dove ho messo il massimo valore possibile, cioè 32767, su ogni livello di bonus).

    Nella stessa tabella dovrebbe essere possibile, inoltre, modificare anche su quale oggetto può uscire un determinato bonus (non l'ho testato, ma è intuibile). Se prendete come riferimento la colonna "Weapon", ovvero quello dell'arma, noterete che c'è un 5 per ogni bonus possibile che può uscire su di essa (STR, INT... etc), e uno 0 che indica che non è possibile far uscire tale bonus sull'arma (Rigenera Hp ed MP, cioè HP_REGEN e SP_REGEN ad esempio, non possono uscire su un'arma e infatti hanno il valore 0 alla voce Weapon). Modificando pertanto i valori, mettendo 5 al posto di 0 o viceversa, dovrebbe (sottolineo il condizionale perchè non l'ho testato di persona) essere possibile modificare quali tipi di bonus possono uscire sui vari oggetti.

    2) Passiamo ora al punto 2, ovvero moddare lo status. Non c'è niente di più semplice ve l'assicuro.
    Vicino alla tabella "item_attr" dovrebbe esserci un'altra tabella chiamata "player". Apritela.

    Noterete che ci sono anche qui varie colonne chiamate "account_id", "name", "job" "voice" "dir" etc...
    Evidenziate la riga corrispondente al nome del pg di cui volete modificare lo status e cominciate a scorrere le colonne:



    Ad un certo punto, noterete 4 colonne chiamate "st" "ht" "dx" e "iq", che corrispondono ai quattro status Forza, Vitalità, Destrezza e Intelligenza.
    Basta semplicemente cambiare i valori presenti all'interno di essi, con altri molto più alti (il massimo è 32767). Salvate le modifiche con il simbolo della spunta in basso e il gioco è fatto.

    3) Adesso vi spiegherò come modificare il fabbro: le percentuali di successo per ogni up, i soldi richiesti e gli oggetti richiesti.

    Aprite la tabella "refine_proto" che si trova sempre dentro player. Vi saranno varie colonne, nominate "id", "vnum0", "count0", "vnum1", "count1"... "cost"... "prob".



    Le colonne vnumx (con x che varia da 0 a 4) presentano nei loro campi il value corrispondente al tipo di oggetto richiesto per l'up (come ad esempio le Bili d'orso, Ostriche, Perle etc... ). Ad ogni vnumx è associato un countx (anch'esso ovviamente varia da 0 a 4) che indica la quantità del tipo di oggetto richiesto.
    Se prendiamo ad esempio l'id numero 25, vedrete che esso presenta un 30016 su vnum0, 2 su count0, 27992 su vnum1 e 1 su count1. Cosa significa? Significa che il fabbro per l'up chiederà un 2x Pietra preziosa del demone (30016 è infatti il value corrispondente ad esso) e 1x Perla Bianca.
    Se volete che il fabbro non chieda più gli oggetti, è sufficiente mettere 0 nei campi vnumx e ai loro countx corrispondenti.

    Per modificare il costo degli up, scorrete le colonne e cambiate i numeri presenti nei campi della colonna denominata "cost". Le cifre che vedete (600, 1200, 2500 etc) non sono altro che i prezzi in yang dei vari up. Infine l'ultima colonna, "prob" presenta all'interno dei propri campi un numero (90, 80, 70...) che indica, in percentuale, il successo dell'up.
    Anche qui, basta che mettiate 100 ad ogni campo e il fabbro diventerà infallibile per tutti gli oggetti e per tutti gli up XD

    Per inserire uno stesso valore su un'intera colonna (ad esempio il valore "100" su tutta la colonna "prob" del fabbro in modo tale che non fallisca mai un up) dovete fare quella che gli informatici chiamano "query".
    Se cliccate sul bottone query che si trova in "player" e poi su "New Query" vi si dovrebbe aprire una nuova finestra come questa (ho evidenziato in rosso i bottoni da premere):



    All'interno di "Query Editor" copiate questa stringa di comandi:

    update refine_proto
    set prob = 100;

    Infine cliccate sul bottoncino "Run" e salvate la query.
    Tali stringhe praticamente indicano al database di modificare la tabella refine_proto e di "settare" l'intera colonna "prob" con un valore pari a 100. In generale se dovete cambiare un'intera colonna di una qualsiasi tabella ad un determinato valore, basta che facciate:

    update <tabella scelta>
    set <colonna scelta> = <valore scelto> ;

    Ricordatevi solo, che la modifica tramite query è IRREVERSIBILE! Cioè una volta fatta partire la query, non potete più tornare indietro ai valori precedenti. Tenetelo a mente quando partite a modificare ;)

    4) Detto questo, passiamo infine a come modificare gli oggetti e i prezzi presenti dagli NPC. A dispetto di quello che si può pensare, per modificare gli oggetti e i prezzi, bisogna andare in due tabelle diverse!
    Per modificare gli oggetti che vendono gli NPC, bisogna aprire la tabella "shop_item".
    La colonna "shop_vnum" indica nei suoi campi il value corrispondente ai vari NPC. 1 = mercante d'armi, 2 = pescatore, 3 = bottegaia, 4 = mercante d'armature etc...
    Nella colonna "item_vnum" sono presenti i value degli oggetti acquistabili dai vari NPC. "count" invece è la quantità dell'oggetto messo in vendita dall'NPC.



    Facciamo un esempio anche in questo caso e consideriamo la riga numero 57: shop_vnum = 3 quindi significa che l'oggetto è presente dalla bottegaia, vnum = 28638, dove 28638 corrisponde al value della Pietra Evasione+5 e 1 indica che ne ne vende 1. In definitiva, la bottegaia vende 1 Pietra Evasione+5 (e infatti se loggate in game è proprio così). Pertanto se volete cambiare il tipo e la quantità di un item da un NPC, è sufficiente che modifichiate il value e il campo "count" ad esso corrispondente.

    Come e' possibile però cambiare il prezzo di vendita di tale oggetto? Per fare ciò bisogna chiudere la tabella "shop_item" e aprire la tabella "item_proto". Qui il numero di colonne e di righe è incredibilmente elevato, perchè questa tabella racchiude tutte le armi/collane/armature/pietre etc. con le loro proprietà e per ogni up a cui si trovano, tant'è vero che il database si articola su più pagine (scorrevoli cliccando sulle freccie in basso a destra).

    A noi interessano, per modificare i prezzi di vendita, esclusivamente due colonne: "vnum" (che è la prima) e "gold".
    Seguendo l'esempio di prima dell'Evasione+5, cerchiamo il value corrispondente all'oggetto nel DB (28638): lo troveremo alla riga 750 di pagina 3.



    Scorrete le colonne e trovate quella corrispondente a "gold": noterete senz'altro che per la pietra, il valore ad esso associato è 200000000, che tradotto in game equivale a 200 milioni di yang (che infatti è proprio il prezzo a cui viene venduto dalla bottegaia). Basta che togliate 3 zeri e la simpaticona vi venderà la pietra in game per 200K anzichè 200KK :-P

    Dalla stessa tabella dovrebbe, inoltre, essere possibile modificare anche gli attributi degli oggetti: per esempio far sì che una Ripetizione+5 dia 80% velocità magia anzichè 40 e cose così... Ma questo lo lascio scoprire a voi per divertimento.

    Vi ricordo che per ogni modifica effettuata al DB, dovete chiudere il gioco e riavviare il server locale. Per farlo basta digitare ./stop su FreeBSD, aspettare che finisca le operazioni e poi digitare ./start.

    Bene, questo è quanto sono riuscito ad apprendere smanettando un paio di giorni col database :-P
    In definitiva, è molto importante conoscere i value degli oggetti/NPC/mob che si vogliono modificare, pertanto tenete sempre sotto mano una guida con tutti i value.
    Rimangono ancora molte cose da scoprire ... Ma perlomeno con questa guida spero ci siano alcuni spunti da cui partire.

    Spero di essere stato d'aiuto. Se ci sono domande su certi passaggi non chiari o altre cose che è meglio aggiungere, postate pure.
     
    Top
    .
0 replies since 11/4/2010, 18:20   134 views
  Share  
.