W obronie krzyża
Tworzenie polskich wersji programów i gier
Producenci oprogramowania w różny sposób podchodzą do obsługi języków przez ich produkty. Nie ma jednego, powszechnie stosowanego sposobu tłumaczenia gier i programów.
Niektórzy dodają do programu opcje umożliwiające wybór jednego z języków, czasami wręcz zachęcają użytkowników do tworzenia nowych wersji językowych, niedostępnych w danej chwili.
Inni z kolei pozostawiają sobie monopol na wydawanie zlokalizowanych wersji, a każdą ingerencję, traktują jako łamanie praw autorskich.
Prawa autorskie.
Nie ma chyba większego problemu, jeżeli plik z wersją językową nie stanowi integralnej części oryginalnego programu (np. pliki .lng). Natomiast problem się zaczyna, gdy niezbędna jest modyfikacja oryginalnego pliku programu. Prawo dopuszcza taką ewentualność jedynie na własny użytek, co wyklucza legalną publikację w sieci.
Na razie można stosować pewien wybieg, polegający na używaniu tzw. patcher`ów.
1.Edycja plików tekstowych.
W niektórych aplikacjach wszystkie teksty ukazujące się na ekranie umieszczone są w oddzielnym pliku tekstowym (ew. plikach). Nie zawsze one maja rozszerzenie *.txt, czasem jest to *.lng, *.eng, *.dat, lub inne. Jednym z przykładów może być Windows Commander, który umożliwia wybór jednego z kilkunastu języków. Niestety, nie zawsze jest tak dobrze. Często, jeżeli nawet możliwy jest wybór wersji językowych, nie ma wśród nich wersji polskiej. Aby naprawić to niedopatrzenie, możemy edytować w/w plik(i) zwykłym edytorem tekstu np. systemowym Notepadem (zamiast niego polecam dużo wygodniejszego Metapad`a) i dokonać interesujących nas zmian, tzn. zamienić słowa obce polskimi.
2.Edycja zasobów.
Namiastką standaryzacji min. obsługi wielu języków przez programy może być wprowadzenie przez Borland`a w Delphi 3 raz w C++ Builder 3 nowej deklaracji: "resourcestring". Wszystkie teksty, obrazki, muzyka, kursory itp. znajdujące się w obrębie tej deklaracji stają się w rezultacie zasobami.
Na zasobach można przeprowadzić różne operacje. Można wyciągnąć z pliku muzyczkę, obrazki, ikony czy kursory. Zajmują się tym tzw. grabery. Z naszego punktu widzenia, "tłumaczy programów", nie są to zbyt przydatne narzędzia.
Dużo ciekawiej prezentują się edytory zasobów. Poza "odzyskiem", oferują znacznie więcej. Dzięki nim istnieje możliwość podmiany, edycji(!), dodania zasobów. Można zupełnie zmienić wygląd programu, nie tyko poprzez zmianę grafik/muzyczek w nim zawartych, ale można również całkowicie przebudować menu, okna dialogowe i (co nas najbardziej interesuje) podmienić teksty występujące w programie.
Przykładami tak przydatnych programów mogą być: Resource Hacker (free), Restorator czy Exescope.
Można nimi edytować pliki exe, dll i inne (wykonywalne pliki Win32).
Nie powiedzie się próba edycji w przypadku plików spakowanych jakimś exe-pakerem.
Na przykład, aby dobrać się do zasobów Metapad`a, trzeba go rozpakować za pomocą UPX`a.
3.Edycja kodu programu.
Jeżeli zawiodą dwie poprzednie metody, można pokusić się o edycję kodu programu używając jakiegoś hexedytora (np.Hexworks`a).
Jest to chyba najmniej bezpieczna i wygodna metoda. Również efekty pracy są zazwyczaj najmniej zadowalające. Przykładem lokalizacji programu tym sposobem może być gra Heroes Of Might And Magic 2 PL.
Podczas zastępowania angielskich (najczęściej) słów polskimi należy zwrócić baczną uwagę na to, aby nie przekroczyć długości oryginalnego tekstu. Grozi to posypaniem się programu przy ponownym uruchomieniu.
Przy okazji (dotyczy to również pozostałych punktów)...
Tworząc nowe wersje plików, nie zapomnij o zachowaniu kopii oryginału !
4.Programy dedykowane.
Niektóre programy obsługują wiele języków, korzystając z zewnętrznego (zewnętrznych) pliku(ów) zawierającego bazę wszystkich tekstów występujących w danym programie.
Bardzo popularne, wśród twórców jest rozszerzenie .lng. Niestety, LNG nie zawsze znaczy to samo. Czasem jest to plik przechowujący tylko jedną wersję językową (plik tekstowy WindCommander`a, Opery), czasem jest to zbiór kilku(nastu) języków (The Bat! lub w innym formacie pliki utworzone za pomocą programu IML Editor firmy Interkodex ).
Istnieją specjalne programy przeznaczone dla tłumaczy, pozwalające na tworzenie w/w plików. Często są to małe programy napisane z myślą o stworzeniu kolejnej wersji językowej do "tego jedynego" programu, ew. tych paru, które potrafią obsłużyć dany format (wspomniany wyżej IML).
Tworząc nowe wersje plików, nie zapomnij o zachowaniu kopii oryginału !
5.Programy uniwersalne. (metoda nie polecana przez Portal24h.pl)
Istnieją bardziej uniwersalne narzędzia, bazujące na zasobach tekstowych. Korzystają ze słowników, posiadają wiele opcji ułatwiających tłumaczenie. Niektóre z nich umożliwiają import tłumaczeń ze zlokalizowanych już programów, wpomagają wykrywanie błędów, umożliwiają graficzną edycję okienek.
Przykładami takich progrmów mogą być: Visual Localize i RC-WinTrans.
Trochę inną grupę stanowią narzędzia potrafiące sobie poradzić z programami stworzonymi w Delphi lub C++ Builder. Umożliwiają one utworzenie zewnętrznych plików z wersją językową. Pliki te, w zależności od języka, mają różne rozszerzenia. Podczas uruchamiania się przetłumaczonego programu, na podstawie ustawień regionalnych Windows jest wykrywany odpowiedni plik językowy i automatycznie zostaje użyty.
Przykładowe programy: Language Localizator i Helicon Translator.
6.LingoWare. (metoda nie polecana przez Portal24h.pl)
LingoWare stanowi przykład zupełnie innego podejścia do lokalizacji oprogramowania, mimo, że również bazuje na zasobach. Poprzednio opisane metody zakładały konieczność obsługi przez tłumaczony program zewnętrznych plików językowych lub wymagały ingerencji w "ciało" programu. Niektóre programy nie obsługują plików językowych, a wykrywają wszelkie zmiany w swoim kodzie (np. Teleport Pro). W takich przypadkach właśnie LingoWare może stanowić rozwiązanie problemu.
Program ten, działając w tle, na podstawie specjalnych słowników, podmienia oryginalne teksty. W każdej chwili można przełączyć między wersją oryginalną, a przetłumaczoną. LW umożliwia również prostą edycję tekstów widocznych na ekranie.
Aby przetłumaczyć cały program, najlepiej zaopatrzyć się w LingoWareEditor.
Na stronie producenta dostępne są słowniki do takich programów jak ICQ, Gozzilla,... Niestety, gdy ostatnio tam byłem, nie było słowników z polskimi tekstami.
Wady:
- trzeba mieć zainstalowane LingoWare, aby korzystać z tłumaczeń;
- LingoWare musi działać w tle;
- nie wszystkie programy chcą współpracować z LingoWare
____________________________________________________
Nazwa: Net War
Wersja: Bazowana na xNova 0.9a, aktualnie: 1.0a
Link: net-war.no-1.pl
Rejestracja: net-war.no-1.pl/reg.php
Info
...jest rok 2183. Ziemia została zniszczona, ludzie pozbawieni rodzin zbuntowali się. Wszyscy działają na własną rękę i budują własne kolonie. Zarejestruj się by zebrać armię i zniszczyć obcych czyhających w kosmosie!
Szybkość Gry: 24
Szybkość Floty: 20
Szybkość Surowców: 15
Opis zmian
1.0a
- DEL : Bank
- ADD : Captcha (junior127)
- ADD : Bank (SzpaQ)
- ADD : Karta Gracza (Prox)
- ADD : Loteria (Enter & gucio776)
- ADD : ID Planety oraz ID Gracza w podgladzie
- FIX : Poprawka sklepu 4/4
- FIX : Statystyki
- FIX : Zabezpieczenia
- Loteria
- Handlarz
- Rejestracja
- Sojusz
- Opcje (options.php)
- Panel Admina
- FIX : Misja zatrzymaj [MissionCaseStayAlly.php]
- FIX : Misja zatrzymaj [Wiadomosci] (SzpaQ)
- FIX : Klonowanie floty
- FIX : Zawracanie floty (kallosz)
- FIX : Poprawka urlopu
- FIX : Misja niszcz (Prox)
- FIX : Szpiegowanie (kallosz)
- FIX : Zabezpieczenie budowania [Final Version]
- FIX : Porzucanie planety (Prox)
- FIX : Powloki ochronne
- FIX : MIP (kallosz)
- FIX : Statystyki
- FIX : Pola zniszczen [Dublowanie] (Prox)
- FIX : Raporty wojenne (adik31)
- FIX : Zawracanie floty z misji stacjonuj (mlody87)
- FIX : Poprawka czasu dotarcia flot
- FIX : Zmiana nazwy planety (Prox)
- FIX : Currentplanet usera (Prox)
- FIX : Logowanie i rejestracja na sesjach (DeVil)
- FIX : Jedna rejestracja z jednego IP (DeVil)
- FIX : Falanga
- FIX : Deuter na minusie
- FIX : Usuwanie gracza (Prox)
- FIX : Auto unban (Kasat)
- FIX : Kasowanie moona
- FIX : Szukajka [Koordy uzytkownikow]
- FIX : Blokada ataku sojusznikow (Prox)
- FIX : Banowanie
- FIX : MSBN [Miedzygalaktyczna Siec Badan Naukowych] (kallosz)
- FIX : Sojusze (85% working)
- FIX : Rekordy (100%)
0.9f
- MOD : Bank Sojuszowy (ahmed)
- MOD : Linki referencyjne (peterek)
- MOD : Punkty referencyjne (peterek)
- MOD : Centrum poleconych (peterek)
- ADD : Przyciski do zmiany aktualnej planety
- ADD : Zglaszanie bugow
- ADD : Kup konto Pro
- FIX : Poprawki klonowania
- FIX : Poprawki surowcow
- FIX : Nowy Podglad
- FIX : Nowy layout
- FIX : Aktualizacja Topnava
- FIX : Sojusze (80% working)
- FIX : Rekordy (30%)
0.9e+
- MOD : Loteria
- FIX : Nowy Podglad
- FIX : Usuniecie prawego menu
- FIX : Aktualizacja Topnava
- FIX : Zabezpieczenia Aliance
0.9e
- ADD : Automatyczne podliczanie pkt. (kapec)
- ADD : Nowy budynek: Generator Alfa (Wydobywanie wszystkich surowcow z jednego budynku)
- ADD : Ostatnie podliczenie
- FIX : Poprawka sklepu 3/4
- FIX : Zabezpieczenia Ogolne
- FIX : Kolejna poprawka badan
- FIX : Poprawka Rightmenu
- FIX : Poprawka aliance
- FIX : Banowanie FULL (Prox)
0.9d
- ADD : Dodawanie rpg_punktow i poziomow oficerow z PA
- ADD : Nowy Teleport (Predator)
- FIX : Zabezpieczenie aliance
- FIX : Poprawka chatu
- FIX : Poprawka badan
- FIX : Poprawka naliczania poziomow agresora (mlody87)
- FIX : Raporty wojenne
- FIX : Blokada ataku sojusznikow (Prox)
- FIX : Powloka Ochronna
- FIX : Poprawka sklepu 2/4
- FIX : Zmiana nazwy planety
0.9c
- MOD : Hangar (BassHunter)
- MOD : Sklep (Enter & Dawid266)
- MOD : Zglaszanie bugow (Kondek)
- MOD : System poleconych (Dawid266)
- MOD : Prawe Menu
- FIX : Poprawka wiadomosci (Dawid266)
- FIX : Aktualizacja topnava
- FIX : Poprawka sklepu 1/4
0.9b
- MOD : Bank Sojuszu (Dawid266)
- MOD : Zglaszanie Multikont v1.0 (Prox)
- ADD : lostpassword.php - Nowe haslo (darksoldier)
- ADD : Transportery potrzebne do zabrania surowcow (kapec)
- ADD : Anti SQL Injection
- ADD : Automatyczne usuwanie budynkow z kolejki budowania (kallosz)
- ADD : Pro na dany czas (Dawid266)
- ADD : Max statkow w stoczni i dzial w obronie
- ADD : Rekord Online (GyniO)
- ADD : Panel GO i SGO (BassHunter)
- ADD : Autooptymalizacja v1 (Prox)
- ADD : Rejestracja - Odyslacz do login.php (Chris)
- FIX : [Zabezpieczenie] Budowanie (kallosz)
- FIX : URLOP - Wydobywanie surowcow (kallosz)
- FIX : Poprawka Misji Niszcz (Predek)
- FIX : Optymalizacja serwera (Prox)
- FIX : Optymalizacja Tabel (Prox)
- FIX : Poprawka pliku frames.php (estebar)
- FIX : Poprawka zmiany hasla (kallosz)
- FIX : Poprawka Bitew
- FIX : Klonowanie floty (Prox)
- FIX : Przywileje dla Pro (Dawid266)
- FIX : Zmiana skinu z pola wyboru (Dawid266)
- FIX : Zabezpieczenie PA
- FIX : Poprawka Pro w grze (Dawid266)
- FIX : Automatyczne surowce w js (badtiger)
- FIX : Zabezpieczenie Handlarza
- FIX : Ogloszenia w sojuszu (kasat)
- FIX : Zabezpieczenie dla 0.9a (lelon)
- FIX : Poruszanie sie po galaktyce (kallosz)
0.9a2
- MOD : Misja kolonizuj w galaktyce (XxmangaxX)
- MOD : Masowa wiadomosc (juju67)
- ADD : Noobprotection (Raito)
- ADD : Poprawki w SQL
- ADD : Super Nova (Raito)
- ADD : Niszczenie budynkow (Teyla)
- FIX : Pelne spolszczenie (Dawid266)
- FIX : Polskie litery w chat (Dawid266)
0.8
Xnova Team
Administracja:
Enter - Sam prowadzę grę
(Chętni do współpracy - pisać na PW)
Gra toczy się w kosmosie, jest to prywatny serwer OGame.
Proszę o zgłaszanie błędów w tym temacie