DevBlog: Avoiding Unity Netcode

When I started Network Traders a year ago, I was intrigued by Unity’s new networking layer, which was then still the MLAPI. After some testing, I realised that it was just not the right tool for my application. So when does it make sense to use Netcode and what might be an alternative for your project if it doesn’t?

Continue reading DevBlog: Avoiding Unity Netcode

No Behaviour for Incoming RPC (UNet Pitfalls #2)

Some problems are so intractable that you almost despair on them, like the one with the RPC error message that haunted me for two months. It was even more stubborn than the one I wrote about in my last post. Imagine you are working happily on your multiplayer game and out of nowhere you get an error that says “Found no behaviour for incoming ClientRPC …”. In this case, I really did not change anything in that part of the code and the error just popped up. Continue reading No Behaviour for Incoming RPC (UNet Pitfalls #2)

UNet Pitfalls: OnStartClient Execution Order

Unity’s UNet multiplayer networking layer is easy to use and a good solution for any project without special demands in this regard. However, doing my second project now with UNet, I repeatedly find some pitfalls which temporarily take the fun out of programming. This time, I wondered about some SyncVars not synchronizing correctly, until I found out that my problems had nothing to do with them. Instead, I discovered that the OnStartClient method of NetworkBehaviours is not always called in the same order with other callbacks such as Awake or Start.

Continue reading UNet Pitfalls: OnStartClient Execution Order