Tworzenie silnika 2D. Porada


#1

##Witam.

Chciałbym się dowiedzieć czego potrzebuję aby napisać własny silnik do tibii.
Chcę to zrobić w ramach hobby. Umiem trochę C,C++, w tej chwili uczę się PHP.
Chcę postawić własny serwer od zera. Ale aby to zrobić potrzebuję najpierw zrobić silnik.

Byłbym wdzięczny gdyby ktoś powiedział mi od czego zacząć i w jakim kierunku iść.
Wiem że tworzenie silnika zajmuje trochę czasu ale uważam, że warto bo wtedy więcej się dowiem i będę mógł sam naprawiać problemy, które mnie spotkają oraz modernizować serwer.

Z góry dziękuję za odpowiedzi.


#2

dużo dużo czasu i samozaparcia oraz wiedzy.

Stworzyć dokumentacje silnika i na jej podstawie tworzyć swoje dziecko.


#3

To ty chcesz w końcu serwer gry stawiać czy robić silnik graficzny do gry 2D? Jedno z drugim ma niewiele wspólnego…

Ale załóżmy, że to jednak o serwer ci chodzi…

Umiejąc trochę C++ nie napiszesz takiego czegoś, backend do gier MMO to wg mnie wyższa szkoła jazdy. Żeby coś takiego zrobić w miarę sensownie to ty to swoje ‘trochę’ zamień w pierwszej kolejności na ‘bardzo dobrze’ (a potrwa to dużo dłużej niż ci się wydaje). W tym czasie powinieneś napisać co najmniej kilka gier nie-onlinowych.
Potem zacznij analizować budowę i działanie innych serwerów gier. Ściągnij sobie OTSa, ściągnij sobie L2J (serwer Lineage 2 pisany w Javie). pobaw się tym, modyfikuj, debuguj. Zobacz jak to działa od środka. Zagadnienia związane z wielowątkowością musisz miec opanowane na 5+.

Za pisanie serwera gry bierz się dopiero wtedy, gdy twoja wiedza i umiejętności będą na tyle wysokie, że sam będziesz umiał wyobrazić sobie jak taki projekt powinien być zrealizowany.


#4

@frozenshade
Aby postawić serwer tibi potrzebuję najpierw zrobić silnik na którym by ten serwer działał a potem baze danych.
Z twojej wypowiedzi rozumiem że muszę nauczyć się C++ i Javy.
W folderze z silnikiem tibi mam pliki .lua, html, php, sql oraz dll.

Ogólnie dzięki za odpowiedzi.


#5

Czyli upraszczając, chcesz sobie napisać backend.

Nie, nie każę ci się uczyć konkretnie C++ i Javy. Ty się po prostu naucz programować i myśleć jak programista. To, że w folderze z ‘silnikiem’ tibii (wcale nie silnikiem) masz takie a nie inne pliki to po prostu kwestia przyjętych przez autorów rozwiązań. Czym sa te magiczne rozszerzenia to sobie doczytasz, nie są one w żaden sposób zarezerwowane dla tibii. Serwer tibii, jak i każdy inny serwer jakiejkolwiek gry można napisać w czymkolwiek, oczywiście sa lepsze i gorsze rozwiązania.

Ja w tym wypadku szedł bym oczywiście w jakiś język który wynikowo da mi jakiś uruchamialny proces (C++, C#, Java dla przykładu) i wsparł bym sie jakimś językiem skryptowym, np do questów. Dane trzymał bym oczywiście w bazie, bez znaczenia jakiej, wybrał bym tą którą znam najlepiej (czyli pewnie Microsoftową).


#6

Zatem zacznę się uczyć javy, potem lua, a następnie się zobaczy. Liczę że do końca roku zrobię przynajmniej zalążek serwera.


#7

Jaki był wasz początek uczenia się jezyka? Podajcie program , jezyk, i z czego. Ja aktualnie się ucze z biblioteczki Komputer Świat o C++ i umiem takie male podstawy. A w czego i jak sie uczyliscie?


#8

Ja nauczyłem się pętli ifów, i zacząłem pisać projekty, potem szukałem konkretnie jak coś zrobic jak napotykałem na problem i robiłem potem zaczeło się już bardziej o szlifowanie rozwiązań


#9

Zaczynałem od BASIC-a i assemblera na 8-bitowce, uczyłem się z artykułów w gazecie bo o internetach to nikt wtedy nie słyszał. To były lata 80-te i 90-te ubiegłego wieku :slight_smile:


#10

Zaczynałem od Pascala ze wstawkami assemblera, kompilator Free Pascal. Rożne kursy, książki, np. “Tworzenie gier 2D i 3D w języku Turbo Pascal”