Disclosure: On this site you won’t find specific advice on “how to call function xyz()”. Interpreting C++ ARM and #pragma dwim is also out of scope.

We’re treating our readers as intelligent beings who can use Google and/or StackOverflow, where all such specific questions were answered more than once.

What you will find is opinions, more opinions, and even more opinions on all the aspects of software development - and with a large chunk of them based on real-world experience too.

Your mileage may vary. Batteries not included.

MMOG: World States and Reducing Traffic

February 1, 2016 by “No Bugs” Bunny

MMOG: World States and Reducing Traffic - Post preview image

Quote:

In practice, for most classical RPGs you can get away with simulating each of your PCs and NPCs as a box (parallelepiped), or as prism (say, hexagonal or octagonal one)

Another Quote:

Mathematically speaking, without Interest Management, the amount of data on our servers will need to send (to all players combined), is O(N^2). Interest Management reduces this number to O(N)

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.System ArchitectureDistributed systemsOn.ProgrammingNetwork Programming

Read more

MMOG. RTT, Input Lag, and How to Mitigate Them

January 25, 2016 by “No Bugs” Bunny

MMOG. RTT, Input Lag, and How to Mitigate Them - Post preview image

Quote:

For fast-paced games, there is one big problem with the flow shown on this diagram, and the name of the problem is “latency” (a.k.a. 'input lag')

Another Quote:

No, better bandwidth doesn't necessarily mean better latency

Filed under: Book: D&D of MOGs1st beta of Vol. I-III1st beta of Vol. VII-IXOn.System ArchitectureDistributed systemsOn.ProgrammingNetwork ProgrammingOn.SecurityFraud Prevention

Read more

MMOG Server-Side. Programming Languages

January 18, 2016 by “No Bugs” Bunny

MMOG Server-Side. Programming Languages - Post preview image

Quote:

From the 50'000-feet point of view, 90% of the differences between modern mainstream programming languages (as they're normally used - or better to say, SHOULD be used - at application-level) are minor or superficial.

Another Quote:

On the server side (unlike client-side) protection from bot writers is not an issue (as server-side code is never exposed to players)

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.ProgrammingProgramming Languages

Read more

Asynchronous Processing for Finite State Machines/Actors: from plain event processing to Futures (with OO and Lambda Call Pyramids in between)

January 11, 2016 by “No Bugs” Bunny

Asynchronous Processing for Finite State Machines/Actors: from plain event processing to Futures (with OO and Lambda Call Pyramids in between) - Post preview image

Quote:

With 'callback pyramid' it is not easy to express the concept of 'wait for more than one thing to complete' , which leads to unnecessary sequencing, adding to latencies (which may or may not be a problem for your purposes, but still a thing to keep in mind).

Another Quote:

Don't even think of converting all of your code to a so-called Continuation-Passing-Style

Filed under: Book: D&D of MOGs1st beta of Vol. I-IIIOn.System Architecture(Re)ActorsOn.ProgrammingProgramming Languages

Read more