When using Action Cable sometimes it is useful to broadcast to a channel only if there are active subscriptions. This can be useful to avoid unnecessary processing and network traffic, as well as r...
Enhanced broadcasting with Action Cable
Websockets and dedicated servers
Quick post! I was having trouble using Websockets in Unreal Engine when building the project as a linux dedicated server. FWebSocketsModule::Get().CreateWebSocket was erroring with a fatal error (...
Count loader for graphql-batch
When implemented a GraphQL API using GraphQL Ruby it is beneficial to ensure that executed queries don’t trigger any N+1 query problems. One (of many) solutions to this is graphql-batch which prov...
Default transformations for ActiveStorage attachments
Recently I needed to crop images across a variety of models and attachments on a recent Rails project using ActiveStorage. The initial native solution was to implement methods in each of these mod...
Fixing 'movement not allowed' for respawned pawns
Have you ran into the issue “SimpleMove failed for X: movement not allowed” when trying to call Simple Move to Location after respawning a multiplayer pawn? After a player’s pawn has been killed a...
Struct to JSON serialization
Serializing a Unreal Engine USTRUCT to JSON or deserializing JSON back to a USTRUCT is very painless thanks to the build-in FJsonObjectConverter class. The process is performed recursively without ...
Instant velocity character movement
Unreal Engine’s CharacterMovementComponent is a fantastic component for easily granting a Pawn network-replicated and client-predictive movement with a lot of functionality out of the box that ofte...