Advertisement

Need help alpha testing my MMORPG.

Started by February 21, 2005 08:19 PM
27 comments, last by ItsHercule 19 years, 8 months ago
Hah I clicked this expecting to be about GL_ALPHA_TEST...

Cool little game.
Sijmen, it seems that every time you join, weird messages get sent out to the server and I never can see you or your chat messages. Perhaps you are using an outdated source tree.
---2x John Carmack
Advertisement
Quote: Original post by TheChuckster
Sijmen, it seems that every time you join, weird messages get sent out to the server and I never can see you or your chat messages. Perhaps you are using an outdated source tree.


Heh, nice you noticed it. There were a few 'good' times, though, when I used your client.

I was trying to fiddle around a bit with the protocol and such, looking at how you did it. It's looking quite nice really. One question I have though, is: why do you ignore the status message from the server when it concerns the player?

if (nick == nickname) // If it's us, then forget about it!	return;


And while I'm at it, what are you using as message serperator? That's not clear from the source, either. Neither is the 'login' procedure. It doesn't seem to use the message-id system, right?

Overall, well done though!

/edit:
The client segfaults when I'm using two at the same time :|
Hey,

Got somewhat further. It seems like you are first sending the length of the message, and then the message itself, to avoid using message serperators. Looks quite good.

Found a little exploit though: try using a nick like 'Sijmen:1:Muharharhar', you'll get some funny results.

Good luck,
Sijmen Mulder
It's because we already know our own status so why keep track of it as if it were a remote player?

I switched to using the pipe (|) symbol as a separator because the colon is frequently used for smilies. To prevent exploits, I will need to filter it out of messages so that malformed messages do not go to the server.

What's the message-id system?
---2x John Carmack
Quote: Original post by TheChuckster
It's because we already know our own status so why keep track of it as if it were a remote player?


Well, the server might have not accepted the movement. Take for example a hacked map, missynchronisation would be the result.

Quote: I switched to using the pipe (|) symbol as a separator because the colon is frequently used for smilies. To prevent exploits, I will need to filter it out of messages so that malformed messages do not go to the server.


Yes, indeed :)

Quote: What's the message-id system?


1|Sijmen|Hey man!^|| message id


Now I for my part have one question again :)

I did this:

1 - Send the length of the message as uint with network byte order
2 - Send a (null-terminated?) string

However, after that happens, the connection seems to be closed. Is that right?

And also, some strings are zero-terminators, some are not, and some are double zero terminated. Is this your side or SDL_net's?

Good luck!
Sijmen Mulder
Advertisement
The message-id system allows for easy distinction between the three types of messages: position, chat, and disconnect.

I'm guessing the error handling kicked in on you and closed the connection. I oughta publish the server source as well.

And for the null-terminator deal. Yikes. It's more than likely poor coding on my part. How did you get to see the low level packets?
---2x John Carmack
Quote: Original post by TheChuckster
The message-id system allows for easy distinction between the three types of messages: position, chat, and disconnect.

I'm guessing the error handling kicked in on you and closed the connection. I oughta publish the server source as well.

And for the null-terminator deal. Yikes. It's more than likely poor coding on my part. How did you get to see the low level packets?


I've used a Linux program called ethereal.

When does the server close the connection? What is going wrong?
Edit your config file so that you're not using duplicate nicknames. That's probably the issue. Also, another release is going to be out soon. Check the news updates on the site -- I'll post when it's out.

Among other things, it promises a Windows port! (and the server source)
---2x John Carmack
Quote: Original post by TheChuckster
A web site with the source code and more information is up down!

http://thechuckster.homelinux.com/nitro/

This topic is closed to new replies.

Advertisement