The code version of the “How to Draw an Owl” meme

I’ve been reading the Unity manual during my morning commute on BART… because the life of a game developer is non-stop excitement. Today I read something that made me burst out laughing in the middle of a crowded train, a single short bullet pointed list page entitled: Converting a Single Player Game to Multiplayer

If you’ve never made a multiplayer game from a code base someone else has made, attempting to follow these tutorial instructions is the programmer equivalent of the old art meme:

At first I thought it was extremely funny that all you’d need to do to convert a single player designed game to multiplayer is “Make important member variables into SyncVars” and “Create Lobby Scene” but as I thought about it more I began to be worried that seeing something like this might make a student think it was an easy process that they can do “later.” Trying to oversimplify networking by talking about it being a matter of syntax instead of needing to understand concepts like everything needing to be asynchronous is making the process more mysterious, not less. I understand the one to one correlations between the class names could be useful, but I think manuals should take more care when they switch from showing best practices to showing “worst practices” as trying to shoehorn in networking clearly is.

For the most part if a student programmer does find themselves in the position of needing to put multiplayer into a fundamental single player game I look forward to hearing all the rants about rewrites due to discovering something else that is fundamentally unsyncable due to the way it was written and assumptions made.

Good luck with “Converting a Single Player Game to Multiplayer”