Jump to content

Integrated system for coop games


YouGroove
 Share

Recommended Posts

Sockets/WinSockets FTW! wink.png

Highly compatible to each other (as long as you don't use WSA-functions) and free.

 

I think Steam just gives the social and room/lobby aspects and not the actual gameplay networking code.

I think, I read somewhere (probably in this forum) that you can also send arbitrary messages to any steamid.

Link to comment
Share on other sites

Sure you could use sockets but then you need to have implement stuff like congestion control, handle network thread, occasional ping, etc.

Why try reinventing the (tcp-)wheel when you could use RakNet which has an indie friendly license, zero royalty if game has less than 100K revenue.

 

I think it is possible to create a RakNet wrapper for lua, but personally find it just best to digg in with C++ (more control).

 

If anyone are interested in a good RakNet tutorial (C++ based):

Link to comment
Share on other sites

I was talking of high level functions instead included in some package like some you can find with Unity. Perhaps some solution will be available in LE3. Coop story games are very interesting allowing mutual help and interaction, they are becoming to appear lot more in incoming games.

Stop toying and make games

Link to comment
Share on other sites

I was talking of high level functions instead included in some package like some you can find with Unity. Perhaps some solution will be available in LE3. Coop story games are very interesting allowing mutual help and interaction, they are becoming to appear lot more in incoming games.

 

The problem about this is, that you can not really optimize stuff. There are different requirements for different tasks. For example with an FPS you have to make sure that some important things get through, like e.g. hits. On the other hand, it would be an overkill to really make sure that every position/rotation update is transferred. So you have to design your own protocol for this. If you just have a switch like "synchronize this object", you can't really differentiate between those, so you would either end up having too many losses or a flooded network.

  • Upvote 1
Link to comment
Share on other sites

If you just have a switch like "synchronize this object", you can't really differentiate between those, so you would either end up having too many losses or a flooded network.

 

While I agree, an on/off switch is pretty basic. The configuration could be more detailed and still be useful. I personally use RakNet because I don't think networking will be implemented anytime soon, but having some basic options/configs for things in LE networking is doable and can work for a vast majority of the indie games that'll come out of LE with the option to still use a 3rd-party if you want.

Link to comment
Share on other sites

Being the lazy person I am, when I get around to networking I'm going to have a modified entity tracking script. All networkable objects will be prefabs with a script saying whether the object needs to be networked and I it has physics. Every time it syncs it will compare the old list to the new list of entities and only syncs the changed entities.

 

Alas I'm lazy and it will be a while before I get to it.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...