Tag Info

New answers tagged

1

Say for example that you have a team of 5 fighting a boss. The boss's actions/powers etc are hardcoded into the game code, but its decision making is based upon some probabilities, are those calculated server side and then distributed to all the players? For example, when it is going to use a specific "spell" or who it is even targeting. Sure it is. The ...


1

You should be able to use java without any performance problems, the technology went way past that. Although services that work with massive number of clients still use c++. As for your choice of sockets, it's not a matter of performance, as people usually think, it's about what are you going to use them for. On game servers you don't care if messages are ...


1

In client-server architecture, server is said to be always listening to its port(s) so that any client can connect to it at anytime. Also, clients usually have dynamic IP addresses and the port used for the connection may vary from machine to machine; on the other hand, servers should have static IPs (at least, DNS translation helps us) and the port(s) used ...


0

Many games are data driven, and apple is fine with you downloading data from your servers which changes the behavior of the game, adds content, etc. If you can't do with data what you need to do, you have to put out a new exe that exposes new features to data, that will let you do more without executable patching. Rinse and repeat.


0

I wanted to comment in the other question but I can't. You say "big game publishers are able to do post-release DLC" but are you sure they are loading scripts? It's really a need in your game to load new scripts with new levels? Again, I'm answering as android developer.


1

Panda Pajamas excellent answer has covered a lot of the topic, but if you want more detailed information I suggest taking a look at Gaffer on Games series of blogs on 'UDP vs TCP'. There Glenn Fiedler goes into more detail about the problem with using TCP for games with real-time requirements, and suggests how you can build reliability into your own ...


7

One of the most common misunderstandings of TCP vs UDP is that TCP's main feature is reliability. The main feature of TCP is that it abstracts a stream of data to send from one socket to another. Reliability, as provided by TCP is a requirement for the abstraction to work, but is not the central idea behind TCP. You might want to consider basing your ...


17

While ideal, it is practically improbable to validate every single input against the server, both in terms of computational load and latency in input confirmation for the client. Consequently there are usually a handful of things that aren't validated on the server in many MMOs. In some cases this includes certain classes of character movement, which is why ...


5

Many MMO's are designed with client-side hit prediction. So if there is a hit on the client, it sends that result to the server that there was a hit. In this case the server is not truly authoritative, and thus cheating is possible. To be honest, if I were designing an MMO, I would make the server fully authoritative, with the client only sending clamped ...


2

Unity's Asset Bundles were designed specifically for this purpose, to allow you to add/download new Unity content and prefabs without the user having to update their game client at all. http://docs.unity3d.com/Manual/AssetBundlesIntro.html


9

One of the reasons why there are protections is that reading the game state could allow bots to know the state of the game and act accordingly. For instance, grinding in a MMO: if the "bot" knows what mob is around, it can send commands to the game clients to select the mob, hit it until its life is 0, pick up the loot, rinse and repeat. With this, even if ...


2

Laszlo Fuleki's answer is fine. The problem is that, if you are asking this, you probably are not using a suited level structure. So if there's an internet connection, check for a new level avaliable and if it proceeds, show it to the user (you can use a system notification or an inbox icon inside the game). Then there are 2 options: The level is already ...


1

Since you use security checks on the server, in your place I would use the existing backend to provide the daily new level as well. You could transmit a JSON, XML, whatever really to the client, and based on that the client would construct the level. This way you would have full control over what is available and what is not (e.g. sending level data when the ...



Top 50 recent answers are included