No to jeszcze Ciebie trochę naprostuje.
Serwer gry a sama gra to są dwie różne rzeczy. Sam serwer jest oprogramowaniem pisanym niezależnie przez zespół ludzi, których zadaniem jest mniej więcej:
a) wyciagnąć jak najwięcej informacji o tym jak to działa na serwerach oficjalnych
b) zebrać te dane i rozrysować model, który będzie na podstawie tego później funkcjonować
c) napisać kod, który zawiera te dane, formuły wyliczające konkretne rzeczy takie jak np. szansa wejścia skilla i tak dalej.
Klient gry czyli to np. "Lineage 2 The Chaotic Throne: The Kamael" to po prostu gra, którą odpalasz na komputerze jako gracz. Sam klient łączy się z serwerem i wymienia się danymi. O kliencie gry myśl jak o zbiorze tekstur grafik tekstów i tak dalej.
Podam ci ogólny przykład jak działa prosta operacja poruszania się w grze.
Ty będąc w grze powiedzmy, że klikasz na jakiś punkt aby postać pobiegła w to miejsce:
a) Klient wysyła informacje o tym do serwera.
b) serwer obiera pakiet danych i sprawdza
- czy postać może znaleźć się w tym miejscu (czy nie ma przeszkody lub nie można po prostu wejść na wskazany punkt)
- serwer wyznacza ścieżkę jaką musi pokonać postać od punktu a do punktu b. Przykładem jest to, że np jak w giran będąc przy gk klikniesz na miejsce za schodami to postać zbiegnie po schodach, sama skręci i dobiegnie we wskazane miejsce.
- serwer odsyła informacje do klienta. Dorzuca też informacje co do animacji, dźwięków jeśli jest to potrzebne.
Reasumując. Rozdziel kwestie serwera a gry. To są dwie różne aplikacje.
Teraz odpowiedzi:
1) jeżeli ściągasz serwer, który jest przygotowany pod daną wersję klienta gry to pobierasz tego właśnie klienta. Czyli jak jest serwer pod kamaela to ściągasz klienta kamaela, jak masz serwer do wersji hellbound to ściągasz klienta do wersji hellbound.
2) Pisząc jakikolwiek program musi on zostać skompilowany z języka jaki ty rozumiesz do języka jaki rozumie maszyna. Procesor nie rozumie składni języka c czy java
3) Serwery są pisane na zasadzie pracy odtwórczej. Ciężko stwierdzić czy cokolwiek w l2j działa w 100% tak samo jak na serwerach oficjalnych. Jak już kiedyś wgryziesz się w kod to zobaczysz, że nie jest on najlepszej jakości. Aplikacja jest niestabilna pełna wad i trzeba nie lada doświadczenia w wyszukiwaniu i poprawianiu błędów.
4) Załóż sobie postać i nadaj jej prawa admina. pobaw się zobacz co i jak. Rozejrzyj się też po plikach jakie masz dostępne w tym projekcie.
W moim artykule który ci podałem dałem info co tam się znajduje.
Jak złapiesz bakcyla to poświęć pare tygodni na intensywną naukę javy. Jak już ogarniesz podstawy to będziesz wiedzieć jak pobrać kod źródłowy i wprowadzić w nim modyfikacje. Będziesz też wiedzieć jak budować projekt.
Z góry polecam ci napisanie jakiś prostych rzeczy i bawienie się serwerem, bo naprawianie błędów jest trudnym i niewdzięcznym zajęciem.