👋 Hi there! I'm still building this library — thanks for your patience! If you spot anything or have ideas, feel free to reach out 📩 theunclejdev@gmail.com.

What is a Client

100 XP

⏱️ 3 minutes | 🎚️ Beginner | 🗣️ English

If the server is the computer that keeps the game world alive 24/7, the client is just... you. More specifically, it's the game application running on your own computer or console — the thing you actually see, click, and play on.

Here's the simplest way to think about it: the server holds the world — the map, the player data, the base you built, the zombies wandering around, all of it. The client is your window into that world. When you move your character, your client sends a message to the server saying "hey, I'm moving this direction." The server updates the world based on that, then sends back a message saying "here's what everything looks like now" — including what every other player is doing too. Your client takes that info and draws it on your screen.

This back-and-forth happens dozens of times per second, which is why a bad internet connection gives you that laggy, rubber-banding feeling — your client and the server aren't syncing up fast enough.

A few things worth knowing about the client side:

  • The client doesn't hold the "real" world. If your game crashes or you close it, the world doesn't disappear — it's still sitting safely on the server. Your client is just temporarily disconnected from it.
  • Every player has their own client, but they all talk to the same server. That's what makes multiplayer possible — you're not connected to each other directly, you're all connected to the same central place.
  • The client usually does less "thinking." The heavy lifting — deciding what's allowed, saving progress, resolving conflicts (like two players trying to grab the same loot) — happens on the server. This matters a lot for fairness and anti-cheat, since a server-authoritative setup means players can't just edit their own client to cheat and have it "count."

Putting client and server together

So the full picture looks like this:

  • Server = the persistent world, always running, living in a data center (this is what we're renting from OVHcloud).
  • Client = the game app on your device that lets you see and interact with that world.
  • You (and everyone else) = each running your own client, all pointed at the same server address, all experiencing the same shared world at the same time.

A quick example to make it concrete: when you play Minecraft with friends by hosting it from your own PC, your PC is doing double duty — it's running your client (so you can play) and acting as the server (so your friends can connect). That's exactly why it lags for everyone and dies the moment you close the game — one machine is trying to be both things at once. Once we move the "server" part onto a real dedicated machine on OVHcloud, your PC goes back to just being a client, like everyone else's, and the whole thing runs smoother and more reliably for the whole group.

This client-server split is really the foundation of everything we're about to build, so it's worth having solid before we touch the dashboard.


Next unit: Games and their Servers

Jonathan's profile

Need help?

Feel free to reach out to me on Discord and we'll be more than happy to talk to you 😊.

Join our Discord