I want to know how to make a client like some of those MMORPG's you see out there that they have a client that reads the game files then launches the game. I already know that most those clients are written in C++, but unfortunately i don't that language, I only know C#. But I'm not looking to make a an entire client, Since me and my friends want to make a small 2D game, we need a client that reads the external Data files which holds the sound, images, etc, and Calls the server, Once it receives a response it sends the IP and launches the client.
Since I'm not a great drawer I got stuck with creating the client. I made a small function which calls the server port and checks if its online:
public static void ServerStatus()
{
try
{
TcpClient client = new TcpClient();
NetworkStream stream;
StreamWriter writer;
BinaryReader reader;
IPAddress IP = IPAddress.Parse("String IP");
client.connect(IP, 8484);
if(client !=null)
{
stream = client.getStream();
reader = new BinaryReader(stream);
writer = new StreamWriter(stream, Encoding.Default);
writer.AutoFulsh = true;
}
}
catch
{
MessageBox.Show("Server currently offline");
}
}
But other then that and Some other none important thing, I don't know where to go, I read countless C# books, but none pointed not even gave me a simple hint on where to go. So I feel like a kid lost in a park. So what I am asking is, what other components are used in the processes of making a Game Client. It doesn't need to a direct "Here's how you do it". Simple Pointers would be nice.
Well,I think it doesn't matter program the game use c# or c++. In my work experience, you should learn something about network,GDI drawer, threads and so on .Actually , the responsibility of client is draw something and send your information to server, when server get the message from client ,it will decide what to do and send a reply message to client.The client do something against the message from server.
And the simplest method is search on GitHub,there are many open source games.