Ben unity ile oyun geliştirmeye çalışıyorum ve veritabanına unity ile bağlanmanın yani oyun dosyalarının içerisinde SQL bağlantı satırlarının yazmasının güvenli olmadığını düşünüyorum. Bunun için sunucuda çalışan "GameServerManager " belirlenmiş opcode (işlem kodu) ile oyundan gelen opcode ve parametreleri veritabanına işleyecek. Mesela karakter hareket ettiğinde kordinant bilgileri direkt veritabanına değil Game Server Manager'a ulaşacak ve o da veritabanına işleyecek.
Opcode ile ilgili internette böyle bir örnek buldum.
C#:
INSERT INTO [SHARD_DATABASE].[dbo].[_ExeGameServer]
(
Action_ID,
CharName16,
Param02, -- Region Id
Param03, -- PosX
Param04, -- PosY
Param05 -- PosZ
)
VALUES
(
4,
'Test123',
22103,
1918,89893,
17,3228645,
1424,07336
);
Unity ile ilgili bilgiler Unity Documentation adresinde bulunuyor fakat ben bu konuyla alakalı bir konu bulamadım. Bu konuda nasıl bir yol izlemem gerekir? Yardımlarınız için şimdiden teşekkürler.
Online oyunlarda öyle bir düzenek zaten kullanılmıyor. Veritabanına sadece server erişir, clientler servere bağlanır. Eğer veritabanına bir veri kaydedilecekse bunu serverin sağladığı API arayüzüyle yapılır. Örneğin;
Online oyunlarda öyle bir düzenek zaten kullanılmıyor. Veritabanına sadece server erişir, clientler servere bağlanır. Eğer veritabanına bir veri kaydedilecekse bunu serverin sağladığı API arayüzüyle yapılır. Örneğin;
Unity ile 192.168.1.2:32000 IP adresinin portuna nasıl parametre gönderebilirim ve sunucuda GameServerManager ile 32000 portundan gelen parametreleri nasıl kullanabilirim? Github vb kaynaklardan kaynak kodları olan bir proje örneği verebilir misiniz?
Business ve veri tabanı kodları asla client tarafında yapılmaz. Daha doğrusu yapılmamalı.
Tcp / Udp kullanacaksın. Eğer socket programlama ve az çok network bilgin yoksa bilgilerini tazelesen iyi edersin.
Socket biliyorsan şu oynatma listesine bakabilirsin. Ben zamanında bakmıştım. Başlangıç için iyi.
Business ve veri tabanı kodları asla client tarafında yapılmaz. Daha doğrusu yapılmamalı.
Tcp / Udp kullanacaksın. Eğer socket programlama ve az çok network bilgin yoksa bilgilerini tazelesen iyi edersin.
Socket biliyorsan şu oynatma listesine bakabilirsin. Ben zamanında bakmıştım. Başlangıç için iyi.
C# ve Unity programlamayı daha yeni öğrenmeye başladım diyebilirim. Programlarken araştırmalar yaparak, örnek projeleri inceleyerek öğrenmesi daha kalıcı oluyor sanki.