Client-based game code

Started by
2 comments, last by hplus0603 11 years, 6 months ago
{note for context, this was moved from another thread discussing the maximum number of clients on a game server}


You could also look at Badumna www.scalify.com

Badumna uses a hybrid of a peer-to-peer architecture and client-server. All state synchronization can be done peer to peer, removing the need for sharding and providing almost unlimited number of clients with real-time interaction. Functions that need to be done securely can stay client-server.
Advertisement
Please keep technology announcements in an appropriate thread.

I do have a question about Badumna, though: If I don't write any code on the server (as claimed on your website,) how do you avoid clients cheating?
enum Bool { True, False, FileNotFound };

I do have a question about Badumna, though: If I don't write any code on the server (as claimed on your website,) how do you avoid clients cheating?


Hi hplus0603

We use an approach called Distributed Validation, which nominates disinterested validators in the network. There is an overview here: http://scalify.com/dist-validation.html

As it is a hybrid solution, the developer can also choose to keep some functions client-server rather than peer-to-peer. It really depends on the game and where there is an incentive to cheat.
Distributed Validation, which nominates disinterested validators in the network[/quote]

That's an idea that has been described in theory many times, but I've never seen it work in reality in a large-scale, deployed, game. When you get a large use case description, I'd love to read it!

Note that server costs isn't really a factor that affects game developers much. Having a server, where you can fully control and gate your players, is actually a significant benefit, for both profitability and gameplay. Compared to the cost of artists and programmers, servers are a footnote in the margin of the P&L statement.

enum Bool { True, False, FileNotFound };

This topic is closed to new replies.

Advertisement