Πολυγλωσσική υποστήριξη

Η πολυγλωσσική υποστήριξη της WME (δηλαδή η μετάφραση και/ή η μεταγλώττιση του παιχνιδιού σας σε άλλες γλώσσες) βασίζεται σε δύο απλές αρχές: τον πίνακα κειμένων και τα πολλαπλά πακέτα.

Πίνακας κειμένων

Ο πίνακας κειμένων είναι ένα απλό αρχείο κειμένου που περιλαμβάνει όλα τα κείμενα που μπορούν να εμφανιστούν μέσα στο παιχνίδι, όπως οι υπότιτλοι των διαλόγων, οι περιγραφές αντικειμένων, τα μενού κ.λπ. Χρησιμοποιεί την ακόλουθη διάταξη:

Κάθε γραμμή περιλαμβάνει μόνο έναν όρο που σχηματίζεται από μία ξεχωριστή περιγραφή, έναν χαρακτήρα tab και το κείμενο. Για παράδειγμα:

SYSENG0001 Ρυθμίσεις παιχνιδιού
SYSENG0002 Γραφικά
SYSENG0003 Ήχος
SYSENG0004 Χρησιμοποίησε την επιτάχυνση υλικού
SYSENG0005 Κάρτα γραφικών:
SYSENG0006 Χρώμα:
SYSENG0007 Τρέξε σε παράθυρο
Όλα τα κείμενα που θα χρησιμοποιηθούν μέσα στο παιχνίδι πρέπει να γραφούν στην παρακάτω διάταξη:

/syseng0001/Game settings

Κατά τη λειτουργία η μηχανή εξάγει τις πληροφορίες από αυτό το αρχείο και ψάχνει για καταχωρήσεις με την ίδια περιγραφή. Εάν βρει τέτοιες τις χρησιμοποιεί έναντι του αρχικού κειμένου. Με αυτό τον τρόπο μπορείτε να έχετε τα κείμενα περασμένα κατευθείαν μέσα στα scripts τα οποία θα αλλάζουν μόνο εάν υπάρχει διαθέσιμος ένας πίνακας διαλόγων.

Τα κείμενα που είναι γραμμένα στον πίνακα κειμένων με αυτό τον τρόπου παρουσιάζονται αυτόματα μεταφρασμένα στο παιχνίδι (για παράδειγμα όταν χρησιμοποιείτε τη μέθοδο Talk() μπορείτε να δώσετε το κείμενο με την παραπάνω διάταξη). Σε μερικές περιπτώσεις όμως είναι απαραίτητο να χρησιμοποιήσετε τη μέθοδο Game.ExpandString() που δέχεται το αρχικό κείμενο και επιστρέφει τη μετάφραση.

Για την αυτόματη δημιουργία του πίνακα κειμένων από τον κώδικα του παιχνιδιού σας δείτε το εργαλείο String Table Manager.

Αναφορά σε περιγραφή του πίνακα κειμένων από άλλη περιγραφή

Επίσης κάθε περιγραφή μπορεί να αναφέρεται σε άλλες περιγραφές. Αυτό είναι χρήσιμο αν χρειαζόσαστε πολλές περιγραφές να αναφέρονται στο ίδιο κείμενο. Η σύνταξη αυτής της λειτουργίας είναι η ακόλουθη:

SYSENG0001 Ρυθμίσεις παιχνιδιού
SYSENG0008 /SYSENG0001/

Με αυτό τον τρόπο οι περιγραφές SYSENG0001 και SYSENG0008 δείχνουν και οι δύο στον κείμενο "Ρυθμίσεις παιχνιδιού" και έτσι οι μεταφραστές χρειάζεται να μεταφράσουν αυτή τη γραμμή μόνο μία φορά.

Αυτόματη εύρεση αρχείων ομιλίας

Οι περιγραφές στον πίνακα κειμένων χρησιμοποιούνται επίσης για τον αυτόματο εντοπισμό των αντίστοιχων αρχείων ομιλίας. Η WME είναι ρυθμισμένη να ψάχνει για αρχεία ομιλίας στον φάκελο "speech" αλλά μπορείτε να ορίσετε και άλλους με τη μέθοδο Game.AddSpeechDir().

Για παράδειγμα, αν ο πίνακας κειμένου περιλαμβάνει αυτή τη γραμμή:

STR0123 Γεια, είναι ο Γιάννης. Τι κάνεις;

Το αντίστοιχο αρχείο ομιλίας θα πρέπει να ονομαστεί "str0123.ogg". Αν μεταφέρετε αυτό το αρχείο στον φάκελο "speech", η WME θα το παίξει αυτόματα όταν καλέσετε τον παραπάνω διάλογο με την εντολή Talk().

Υποστήριξη Unicode

Οι πίνακες κειμένων δεν περιορίζονται μόνο σε ASCII κείμενα, αλλά μπορούν να περιέχουν και χαρακτήρες Unicode στην κωδικοποίηση UTF8. Αυτό σας επιτρέπει να μεταφράσετε το παιχνίδι σας σε όποια γλώσσα θέλετε, όπως τις ασιατικές ή άλλες "double-byted" γλώσσες. Όμως υπάρχουν ορισμένες προϋποθέσεις για να χρησιμοποιήσετε UTF8 πίνακες κειμένων:

Πρέπει να τον σημειωθεί ότι η WME ΔΕΝ υποστηρίζει αρχεία Unicode, αλλά μόνα αρχεία UTF8.

Ανάγνωση κειμένων από τα δεξιά προς τα αριστερά

Για να ενεργοποιήσετε την υποστήριξη για ανάγνωση από δεξιά προς τα αριστερά (που συναντάτε στα Αραβικά και τα Εβραϊκά) χρησιμοποιείστε την ιδιότητα Game.TextRTL. Να σημειωθεί ότι για να δουλέψει αυτή η λειτουργία είναι απαραίτητη η χρήση γραμματοσειρών TrueType. Δυστυχώς δεν μπορείτε να χρησιμοποιήσετε αυτή την ιδιότητα για το αρχικό παράθυρο ρυθμίσεων γιατί εμφανίζεται πριν την εκτέλεση των scripts. Για αυτό το λόγο μπορείτε να ενεργοποιήσετε την υποστήριξη για ανάγνωση από δεξιά προς τα αριστερά στον πίνακα κειμένων (παρόμοια λειτουργία με την αυτόματη αναγνώριση UTF-8) προσθέτοντας την ακόλουθη γραμμή σε αυτόν:

@right-to-left

Πακέτα για πολυγλωσσική υποστήριξη

Η πολυγλωσσική υποστήριξη δεν περιορίζεται μόνο στα κείμενα. Μπορείτε να χρησιμοποιήσετε διαφορετικές γραμματοσειρές (με διαφορετικές κωδικοσελίδες) και να αλλάξετε τμήματα από τα γραφικά ή τους ήχους. Για αυτό το λόγο η WME σας επιτρέπει να χωρίσετε το παιχνίδι σας σε πολλά πακέτα ώστε να τοποθετήσετε τα μεταφρασμένα αρχεία σε ξεχωριστό πακέτο από το υπόλοιπο παιχνίδι. Δείτε το κεφάλαιο Πακέτα και σύστημα αρχείων για περισσότερες λεπτομέρειες.