Jump to content

Recommended Posts

Posted

Πώς να φτιάξετε ένα multisell

 


 

 

I. Τι είναι ένα multisell.

II. Φτιάχνοντας ένα multisell με εξήγηση κωδικών.

III. Συνδέοντας τα multisell με ένα NPC.

IV. Πιθανά σφάλματα και τι να αποφύγετε.

 


 

I. Τι είναι ένα multisell.

Το multisell έιναι ένα απλό xml (Extensible Markup Language) αρχείο το οποίο περιέχει πληροφορίες για αντικείμενα, τιμές κλπ. Το να φτιάξεις ένα multisell είναι πολύ εύκολο και σε βοηθά να δημιουργήσεις ένα μία εύκολη και γρήγορη "multisell buylist για να (την) προσθέσετε σε ένα GM Shop ή ένα Custom NPC. Το καλύτερο είναι ότι μπορείς να αλλάξεις τα αντικείμενα που χρειάζονται για να πάρεις ένα άλλο αντικείμενο. π.χ. Αντί για να δίνεις adena, μπορείς να το αλλάξεις στο να δίνεις ancient adena ή gold bars κλπ.

 

II. Φτιάχνοντας ένα multisell με εξήγηση κωδικών.

Πριν φτιάξεις το multisell θα πρέπει να έχετε τα id των αντικειμένων τα οποία θέλετε να προσθέσετε στο multisell, τις τιμές, και κάποιες βασικές γνώσεις του πως δουλέυουν τα αρχεία xml και htm/html. Αρχικά φτιάξτε ένα απλό αρχείο κειμένου.

23u34v5.jpg

 

Ξεκινώντας

Πάντα ξεκινάτε ένα multisell με τη λέξη

<list>

Αυτό σημαίνει πώς φτιάχνετε μια νέα λίστα (buylist)

142sswm.jpg

 

Πώς να προσθέσετε ένα αντικείμενο

Φυσικά, τα multisell έχουν σχέση με αντικείμενα, γι'αυτό και τα φτιάχνουμε, καθώς είναι εύκολο να προσθέσετε και να χειριστείτε αντικείμενα.

 

Δημιουργώντας και προσθέτοντας ένα αντικείμενο είναι πολύ εύκολο, άρα ας μπούμε στο θέμα. Αφού προσθέσουμε το

<list>

, θα φτιάξουμε ένα νέο αντικείμενο προσθέτοντας αυτόν τον κώδικα

<item id="1">

Ο Αριθμός "1" σε αυτόν τον κώδικα, σημαίνει ότι θα είναι το πρώτο αντικείμενο που θα έχουμε προσθέσει στη λίστα. Μετά από αυτό ακολουθούν τα 2,3,4,5 κλπ. έτσι ώστε κανένα αντικείμενο δεν θα έχει το ίδιο id με κάποιο άλλο, καθώς αυτό μπορεί να προξενήσει ένα σφάμλα στο gameserver.

ok5ow0.jpg

 

Έπειτα πρέπει να προσθέσουμε τα "υλικά" τα οποία ο παίκτης θα χρειαστεί να δώσει, για να πάρει το αντικείμενο.

<ingredient id="57" count="10000"/>

Το id του "υλικού" είναι το 57 - το οποίο σημαίνει adena - και ο παίκτης χρειάζεται να δώσει 10000 απ'αυτά, όπως αναγράφεται στο "count". Τώρα μπορούμε να προχωρήσουμε στο αντικείμενο "παρασκευής", το αντικείμενο το οποίο ο παίκτης παίρνει δίνοντας 10000 adena. Επίσης μπορείτε να προσθέσετε ένα δεύτερο ή και τρίτο "υλικό", απλά χρησιμοποιώντας τον κωδικό πιο πάνω.

5fnjw3.jpg

 

Όπως προείπα, το αντικείμενο "παρασκευής" είναι το αντικείμενο το οποίο ένας παίκτης παίρνει, αφού πρώτα δώσει το/α "υλικό/ά". Ωρίστε ένα κώδικας γι'αυτό.

<production id="1" count="2"/>

Αυτός ο κώδικας σημαίνει πως ο πάικτης θα πάρει 2 αντικείμενα (κοιτάξτε την τιμή στο "count") με το id=1 (το οποίο είναι το short sword, γι'αυτό και είπα πριν πως πρώτα πρεπει να έχετε τα id του "υλικού" και του αντικειμένου "παρασκευής" για να φτιάξετε ένα multisell). Αφού προσθέσετε το αντικείμενο "παρασκευής" μπορείτε, είτε να προσθέσετε παραπάνω αντικείμενα "παρασκευής", είτε να ολοκληρώσετε το αντικείμενο.

1znxsvd.jpg

 

Για να ολοκληρώσετε το αντικείμενο χρειάζεστε αυτόν τον κώδικα

</item>

Μετά απ'αυτό μπορείτε είτε να προσθέσετε ένα δεύτερο αντικείμενο, είτε να ολοκληρώσετε την λίστα.

2kj7l5.jpg

 

Ολοκληρώνοντας ένα multisell

Για να ολοκληρώσετε την λίστα του multisell, θα πρέπει να προσθέσετε αυτόν τον κώδικα στο τέλος της λίστας, και είστε έτοιμοι!

</list>

wjuas9.jpg

 

Παράδειγμα ενός Multisell

Εδώ είναι ένα παράδειγμα ενός multisell, που περιέχει 2 αντικείμενα.

<list>                                                  <!--- Ξεκινά μια νέα λίστα. -->
<item id="1">                                       <!--- Το νέο και πρώτο αντικείμενο. -->
<ingredient id="57" count="10000"/>         <!--- Το αντικείμενο που ο παίκτης πρέπει να έχει (Σ'αυτήν την περίπτωση 10000 adena). -->
<production id="1" count="1"/>                <!--- Το αντικείμενο το οποίο παίρνει ο παίκτης (Σ'αυτήν την περίπτωση ένα short sword). -->
</item>                                               <!--- Ολοκληρώνει το αντικείμενο. -->
<item id="2">                                        <!--- Το νέο και δεύτερο αντικείμενο. -->
<ingredient id="57" count="20000"/>          <!--- Το αντικείμενο που ο παίκτης πρέπει να έχει (Σ'αυτήν την περίπτωση 20000 adena). -->
<production id="1" count="2"/>                 <!--- Το αντικείμενο το οποίο παίρνει ο παίκτης (Σ'αυτήν την περίπτωση δύο short sword) -->
</item>                                                <!--- Ολοκληρώνει το αντικείμενο. -->
</list>                                                  <!--- Ολοκληρώνει τη λίστα. -->

e8u22t.jpg

 

Παρατηρήσεις και άλλα.

Παρατήρηση:

<!--- Αυτή είναι η λεγόμενη "comment line", όπου μπορείτε να γράψετε ένα "σχόλειο" το οποίο είτε θα σχετίζεται με το αντικείμενο (π.χ. το όνομα του), είτε οτιδήποτε άλλο.--->

 

III. Συνδέοντας τα multisell με τα NPC.

Το να συνδέσετε ένα multisell με ένα NPC είναι πραγματικά εύκολο, και το μόνο που θα χρειαστείτε είναι ένα νέο NPC ή ένα που να υπάρχει ήδη (δεν πρόκειται να σας δείξω το πώς να φτιάξετε ένα NPC, καθώς τέτοια Guide ήδη υπάρχουν. Θα σας δείξω πως να τα σνδέσετε με τα multisell).

 

Πώς να σώσετε το multisell

Θεορώντας πως έχετε ήδη, έτοιμο το multisell στο σημειωματάριο, κάντε κλικ στο "Αποθήκευση ως" και αλλά3τε την επέκταση του αρχείου σε .xml. Έπειτα επίλεξτε το "όλα τα αρχεία" και σώστε το με έναν αριθμό (π.χ. 00093.xml) Το επόμενο βήμα είναι να το αντιγράψετε/μετακινήσετε στην τοποθεσία server/gameserver/data/multisell, και αφού το αντιγράψετε/μετακινήσετε σ'αυτήν την τοποθεσία, σιγουρευτείτε πως θυμόσαστε τον αριθμό, καθώς είναι ΠΟΛΥ σημαντικό.

11l0x3p.jpg

dea45c.jpg

 

 

Πώς να το συνδέσετε με τα NPCs

Θεορώντας πως έχετε έτοιμο το NPC σας, πηγαίντε στην τοποθεσία server/gameserver/data/html και βρείτε το αρχείο html του NPC σας. Έπειτα, πατήστε δεξί κλικ στο html αρχείο και ανοίξτε το με σημειοματάριο και προσθέστε αυτή τη γραμμή κάπου:

<a action="bypass -h npc_%objectId%_Multisell Ο_Αριθμός_του_multisell_σας_εδώ">Buy from multisell</a><br>

Σώστε το, και είστε έτοιμοι. Τώρα έχετε συνδέσει το multisell με το NPC. Μπείτε στον server σας και κάντε τον restart ή //reload multisell //reload html. Στο τέλος κάντε spawn το NPC για να το testάρετε.

 

Παράδειγμα της σύνδεσης

Ας πούμε πως έχω μεταφέρει το multisell στην τοποθεσία server/gameserver/data/multisell και το όνομα του multisell είναι 99887700.xml, τότε αυτός είναι ο κώδικας που χρειάζεται να προσθέσω στο NPC.

<a action="bypass -h npc_%objectId%_Multisell 99887700">Buy from multisell</a><br>

 

IV. Πιθανά σφάλματα και τι να αποφύγετε.

Εάν υπάρξουν κάποια σφάλματα, που προέρχονται απ'το gameserver, τότε είναι πιθανόν πως βασίζονται σε συντακτικά λάθη ή απο "<" ή ">" που να λείπουν, γι'αυτό και πρέπει να σιγουρευτείτε δυο φορές πριν τελειώσετε. Επίσης αποφύγετε να χρησιμοποιήσετε το ίδιο id αντικειμένου για παραπάνω από δύο αντικείμενα, επειδή ίσως προκαλέσει προβλήματα και τα αντικείμενα στο Multisell δεν θα εμφανίζονται σωστά.

 

~Credits~

Όλα τα credits πάνε στον Stealth, ο οποίος έφτιαξε αυτό το guide στο αγγλικό section. Αυτό που έκανα εγώ ήταν να το μεταφράσω, και να το κάνω post εδώ, έτσι ώστε να εμπλουτιστεί το ελληνικό section.

 

Best Regards,

~Coyote

 

Posted

egw eimai newbie developer kai me voi8ises polu thx file  pws dinw karma

 

Den mporeis alla thanks gia th skepsh :P

 

Kai genikws thanks all gia ta kala sas logia...

Posted

Exw ftiaksei to mulltisell m alla otan paw sto shop kai pataw stn lista m vgazei maura koutia anti gia ta items. Kamia idea?

 

Gia help oswn afora to topic postare sto help section.

Edw kane post mono comments.

 

BTW elen3e an ola ta tags einai ok kai an o ari8mos tou multisell den einai polu megalos (p.x. 594759867389439843).

Gia perissotera se pm h sto dev help section.

Posted

Gia help oswn afora to topic postare sto help section.

Edw kane post mono comments.

 

BTW elen3e an ola ta tags einai ok kai an o ari8mos tou multisell den einai polu megalos (p.x. 594759867389439843).

Gia perissotera se pm h sto dev help section.

Exw postarei sto help section alla ta reads einai poli ligotera apo edw... Tespa tha se kanw pm.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




×
×
  • Create New...