Motivation
In “Warring States,” my latest multiplayer strategy game, players can move units along a map. Each map consists of a grid of “nodes,” indicated as black spots, and are connected by “roads,” indicated as lines. Each turn, units can move along a road to relocate to another node. Here’s what a 4-player map looks like:
As you can see, most roads are straight, but some roads are curved. The straightforward solution for generating the curved roads would be to have a sprite with a texture of a 90-degree curved line. However, the curvature of the line may change based…
A common challenge that I face when developing multiplayer games has been keeping message serialization and deserialization consistent between the client and the server. In my previous projects, I used Node.js on the backend with Unity C# on the frontend. Since the backend and the frontend used different languages, I needed to write client code to serialize a C# object into a string, and write a symmetrical javascript method to parse that string into the corresponding JSON object. This was a very tedious and error-prone process.
During my internship at Wizards of the Coast, I discovered the NewtonSoft package, which…
Software developer, game maker, student at the University of Washington.