What the industrial standard to design a client system?

Started by
3 comments, last by alvaro 10 years, 11 months ago

Hi guys,

I'm confused about this process before detail coding, what kind method be used to design a game client framework? Refer to my experience on website development, we will design the system via UML.

Regards,

Advertisement

Well you can design it in UML or any other workflow package you want, this doesn't always happen though due to time constraints in implementing a system and getting the game out on time.

Worked on titles: CMR:DiRT2, DiRT 3, DiRT: Showdown, GRID 2, theHunter, theHunter: Primal, Mad Max, Watch Dogs: Legion

A game client is just like a single-player game, except it needs to keep its state synchronized externally through the network. So there are as many ways to design a game client as there are ways to design single-player games, and then there are multiple ways of going about the synchronization. This means it's not very likely that there is an industry standard. Many designs are centered around a "game loop", but that's about it.

Every game is different, but when it comes to the communication patterns there will always be similarities.

Networked tic-tac-toe is probably going to be similar to networked chess. Both are slow, turn based, with static screens. A move can be transmitted with a byte or two.

But both are going to be different from networked pong. Networked pong is potentially sending frequent player state change updates. (It is not necessarily sending ball updates since those can be calculated. Also it is sufficient to send up/down events rather than a continuous stream of positions.)

A networked First Person Shooter is likely to be somewhat similar to pong, except with more than two players and more game events.

I think what frob is describing are protocols for communicating between server and client, which wasn't exactly the original question. but it's probably a better question to ask.

As far as I can tell, UML is a distraction. I mean, if you have experience with it and find it useful, that's great. But I have never found it useful myself.

This topic is closed to new replies.

Advertisement