Skip to main content

Persistence for Ephemeral Game Servers

· 15 min read
Mike Seese
Lead Developer @ Redwood
tip

I wrote this post as a guest article for Hathora, and I've released it here too as a mirror. Hathora is Redwood's official on-demand game server provider, which can greatly simplify your infrastructure and DevOps.

Without persistent data, online games would only have usernames and maybe avatars. Worlds wouldn't be able to reload after a game or OS update. Whether you're using Hathora for ephemeral matches or persistent worlds, you usually need persistent data to at least keep track of player progression and the player's appearance (but likely much more).

Since Hathora's servers are purely ephemeral [for good reason], we need to add additional components to get persistent data:

  • Configuring the servers during creation to give them state
  • An external place to store the data
  • Methods to retrieve the data

In this post, we'll talk about the different types of persistence and how best to integrate them with Hathora's ephemeral game servers.

Version 2.2.1 Released

· One min read
Mike Seese
Lead Developer @ Redwood
note

This release only has changes in the Backend; the UE plugins and game templates were not changed other than a bumped version number.

This release fixes an issue with the yarn dev command and attempts to fix issues with admin accounts when only using Steam auth provider.

See the GitHub release notes or click Read More below for details.

Version 2.0.0 Released

· One min read
Mike Seese
Lead Developer @ Redwood
note

The backend didn't change except for the version number; we've updated the zip regardless.

ARedwoodCharacter has been replaced with URedwoodCharacterComponent

This breaking change changes how player character data is set up. Long story short, to support pawns that inherit from APawn instead of ACharacter, the data persistence happens in an Actor Component instead of an Actor. This supports using Redwood with the UE Mover plugin, the marketplace GMCv2 plugin, and other scenarios that don't use UCharacterMovementComponent.

See the GitHub release notes or click Read More below.

Version 1.0.0 Released

· One min read
Mike Seese
Lead Developer @ Redwood

Redwood is now out of Early Access with the release of version 1.0.0!

This release includes:

🏹 RPG template project
🗺️ Zones, shards, portals, and basic character data
🎒 Inventory, interactables, and merchants
🏰 Instanced dungeons

See the GitHub release notes or click Read More below.

Redwood is Royalties-based on Oct 1

· 3 min read
Mike Seese
Lead Developer @ Redwood

After conducting a survey, over 75% of the participants favored switching to a royalty fees based model. Here's what that change will look like:

  • If you purchase(d) Redwood before Oct 1, you'll keep your unlimited projects perpetual license with full source code, free perpetual updates, and never owe royalties
  • Indie Licensees can keep their current license or opt for a refund and switch to the royalty model
  • After Oct 1, everyone can use Redwood with limited source code and 4% gross revenue royalties after $100k USD
  • Custom licenses are available for full source code, console support, private/dedicated support, reduced royalty rate, and co-development

Redwood now has Indie Pricing

· One min read
Mike Seese
Lead Developer @ Redwood

🌲 I'm extremely excited to announce Redwood's Indie Program! 🌲

💰 Accepted studios only pay $295 initially (~90% off)
🔓 Get the full benefits of our Standard License
🚀 You only pay the remaining balance when/if you launch with Redwood