[ENet-discuss] A query about channels

Nuno Silva little.coding.fox at gmail.com
Sun Jan 17 12:07:59 PST 2010


You should make an enum of some sort to identify data types if you need to.
e.g.:
enum GameDataTypes { GDT_STRING, GDT_FLOAT, GDT_DOUBLE, GDT_INT,
GDT_LOGIN_STRUCT, GDT_MOVEMENT_SAMPLE, ... }
And do some array work to actually compose your packets. E:g.:

MemoryStream Packet;
Packet.Write<unsigned long>(ID);
Packet.Write<String>(WorldName);
....

I actually just write do the second part of this (ID + data), but i never
did get to test it much out there since my game's still not complete altho
some of the network code was done.

On Sun, Jan 17, 2010 at 7:54 PM, Alex Milstead <alex.milstead at gatech.edu>wrote:

> In that case, is there a solid way to extract that identifier? Or will I
> need to do some I'm aware of sprintf calls, is it common practice to simply
> "sprintf" the first integer of the received binary data into a buffer and
> (effectively) switch-case on that buffer, then memcpy the remaining data
> that follows? Or is there a better way of doing this?
>
> Cheers,
> Alex
>
>
> On Jan 17, 2010, at 2:39 PM, Thorbjørn Lindeijer <bjorn at lindeijer.nl>
> wrote:
>
>  On Sun, Jan 17, 2010 at 19:50, Alex Milstead <alex.milstead at gatech.edu>
>> wrote:
>>
>>> Also, Jay you mentioned earlier that it was easy to do simple data-type
>>> checking on the receiving end. I'm a bit of a fledgling network
>>> programmer
>>> -- I'm still definitely becoming more acquainted the vast amount of
>>> unfamiliar programming techniques in this particular arena. The only
>>> surefire type-checking system I know about in programming is in java
>>> (=/),
>>> with it's "instanceof" operator. As far as I know this type of mechanism,
>>> or
>>> anything similar, doesn't really exist in C/C++. So my next question is,
>>> if
>>> we're sending binary data along and receiving it as binary data, what's
>>> the
>>> most efficient way of type-checking the probable struct being piped
>>> through?
>>>
>>
>> You give it a number which designates its type. You'd usually prepend
>> such a number to each of your messages, so that you know how to
>> interpret them on the other end.
>>
>> Regards,
>> Bjørn
>> _______________________________________________
>> ENet-discuss mailing list
>> ENet-discuss at cubik.org
>> http://lists.cubik.org/mailman/listinfo/enet-discuss
>>
> _______________________________________________
> ENet-discuss mailing list
> ENet-discuss at cubik.org
> http://lists.cubik.org/mailman/listinfo/enet-discuss
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cubik.org/pipermail/enet-discuss/attachments/20100117/f0f5b0f5/attachment.htm>


More information about the ENet-discuss mailing list