Tibia C# i Unity3D
Hej,
Jag har under ett tag nu ägnat lite tid på ett litet projekt (på skoj för nu) där jag försöker skapa ett Tibia-liknande spel. Jag har kommit en bra bit nu och tänkte att jag kunde posta om min utveckling. Det kanske kan intressera någon där ute iallafall
Jag höll för några år sedan på att skriva lite i XNA (C#), men detta projektet valde jag att göra i Unity3D (också C#) för att det är ett så bra hjälpmedel, och jag vill gärna lära mig mer.
Nätverkskommunikationen sköts genom ett egen bibliotek som jag utvecklat till ett tidigare projekt, men det bygger i grunden på Lidgren.Network som jag tycker är ett grymt bra nätverksbibliotek.
Servern skrivs i C# och är ett självständigt Console program. Ett litet urklipp av servern ser ni nedan. (Öppna bilderna i ny flik om ni vill förstora dom).

Här är ett litet urklipp från lite av nätverkskoden. Rätt ointressant för er läsare kanske då inget av nedan är kommenterat ^^

Man kommer först till en inloggning. Först tänkte jag skippa att programmera hela inloggningssystemet till senare i utvecklingen men insåg rätt snart att det kommer skapa stora problem om jag inte har en bas färdig innan jag fortsätter med resten. Så jag gjorde detta först.

Efter godkänd inloggning kommer man till sina karaktärer. Just på detta kontot fanns 1 karaktär med namnet Test Char.

Efter valet av karaktär kommer man in i spelläget. Bilderna är tagna inifrån Unity. Längre ner kommer lite bättre bilder på själva spelet.

På nedan bild ser ni lite hur min "Tile Engine" fungerar. Unity är bra på flera sätt, men det har sina nackdelar ibland, och att skapa en bra Tile Engine i Unity tog mig väldigt många försök, men tillslut hittade jag något som funkade bra. Unity ritar ut alla tiles som är nära dig, och skippar resten. Jag återanvänder också varje GameObject så att unity inte behöver skapa nya. Detta ger en hög framerate, och som spelare ser man ingen skillnad.

Jag utvecklade ett Map-system som kan läsa kartor från programmet "Tiled" som finns att ladda ner gratis från internet. Där man bara slänger in Sprites som man vill använda och ritar i olika lager. Detta programmet gör att jag snabbt kan skapa en värld. Det är också där jag slänger in Spawns. Detta blev också lite smått komplicerat, men bra tillslut.

Senaste jag gjorde var att implementera ett Attack-system. Nedan ser ni en liten demonstration av den, där en Link står och slår mot mig. Skadan baseras på en liten formel som skalar med Strenght.
Hela Attack-Systemet är lite jobbigt att förklara, det hade säkert tagit en hel post i sig.


Till sist så har vi en bild som visar 2 klienter som är inne och spelar. (Ena spelaren har Link som look).

Jag skulle kunna berätta så himla mycket mer om hur allt är uppbyggt, men jag vet inte om folk är så intresserade så jag väntar lite med det Om någon undrar något så är det bara att fråga !
God Natt!
/Robin