Looking for the right library for me.

Started by
3 comments, last by hplus0603 11 years, 10 months ago
Hello,

I'm kind of new to networking, I've done a bit of it before, but only using .NET's classes which made it really really simple.

Currently, I'm looking for a library for my game engine that will allow me to implement my multiplayer design(All the code is ready other than API code to send and receive info and manage the connections).

I'm looking for a library for native C++ that matches these requirements(In order of importance):
-Can send and receieve strings of text(I've tried looking into SDL_Net since my engine is SDL based, but that API only allows for transferring of set-sized values of data, but I can't know what the length of my strings will be, I need something that works like .NET's networking structure with the StreamWriter and StreamReader classes).-As high level as possible.
-Is well documented, or has resources to learn from.
-LGPL license, or something similiar. If not, then something cheap, as I'm low on resources...
-Would be familiar for me to work with after working with .NET's TcpClient class.


Yea, I realize that there probably is nothing that is this perfect out there, but if you know my requirements of it, you might know something that answers at least a few of them.
Any other APIs that you could suggest would be awsome as well.

Thanks alot!
Advertisement
boost::asio has built-in functions to deal with line-formatted TCP streams.
It's a little bit like TcpClient, because it does use callbacks (typcially in the form of boost::bind() expressions.)
enum Bool { True, False, FileNotFound };
Thanks for that, but I couldn't really find any sources to learn that at that were very easy to get into, any chance you know of somewhere that has peraphs some examples or tutorials?
Or rather a library that does it easier?

Thanks.
The C++ Middleware Writer may be of interest. It supports marshalling C strings and std::string instances. It's free to use.
I really wish you would stop telling everybody about your hosted custom C++ IDL solution for each person who comes by to ask a C/C++ networking question.
In fact, I would like for you to not offer it as a solution at all until there are at least two other legitimate gamedev.net users, separate from yourself, with actual shipped projects, who can describe how they have successfully used it in a project of their own.
I have described several times what I think is wrong with your solution. If you want to discuss how to make it better, or ask for implementation advice, that is totally legit, but as of now, I'm reserving the right to delete any post from you suggesting the C++ middleware writer if you don't also contribute *significant* additional value that is not in any way tied to your particular solution.
It is my opinion as moderator that this will increase the quality of advice for questions being asked in this forum, and this decision is not up for debate.
enum Bool { True, False, FileNotFound };

This topic is closed to new replies.

Advertisement