Puzzle Rogue is a rogue-lite homage to the original Puzzle Quest, and something we've been working on on the side for quite a while. We want to get feedback, so it's free to play on Itch.io as of today! Let us know what you think! Show your support by adding it to your Steam wishlist!
Wednesday, December 24, 2025
Friday, November 14, 2025
Let Them Come: Onslaught!
A gorgeous fast-action bullet-heaven game built on Unreal 5, we worked with Tuatara and Digital Bandidos to bring Let Them Come: Onslaught to PlayStation and Xbox! These shipped day and date with the Steam version!
Friday, November 7, 2025
Amanda the Adventurer 3!
We took all the gamepad work, key binding improvements, and other nice additions from the Amanda 2 console versions, and brought them to the newest game! And it just came out a couple days ago! Check it out on Steam!
Creep yourself out exploring a mysterious facility! Learn the origins of Amanda's power, unravel the messages of the mysterious tapes, and discover the truth of Hameln and Kensdale!
Saturday, October 25, 2025
Amanda the Adventurer 2!
Travel to the Kensdale Public Library and dig deeper into the mystery of Amanda the Adventurer. Watch mysterious VHS tapes and unravel what's really going on!
We brought Amanda the Adventurer 2 to all console platforms, and did considerable performance work to make it run well even on the original Switch. The original title on PC didn't have any support for gamepad, so we implemented full gamepad controls, including a custom virtual keyboard for text input when answering Amanda's questions!
Monday, June 9, 2025
Rogue Point!
We've been working with Crowbar Collective on their new FPS, Rogue Point! Play short, randomly generated campaigns with full online co-op! We've been helping with UI and online functionality, in this Unreal powered arcade shooter.
A demo is now available for Steam NextFest! Check it out and feel some of those old Counterstrike vibes!
Wednesday, April 2, 2025
Epic Online Services Environment Selection
When starting up a game using Epic Online Services, your game logic needs to select the correct environment to use. Epic generally provides 3 environments: Development, Staging, and Live. Each have their own Sandbox IDs and Deployment IDs. Generally speaking, you should include configuration data for all 3 environments in your build, and based on launch arguments from the Epic Launcher, decide which environment to actually use. In all cases, when running your game in a local development environment and not from the Epic Launcher, it will use the default configured environment.
For Unity, Epic recommends the PlayEveryware EOS plugin. Epic has actually taken over development of the plugin. You can follow the official instructions to enter your environment configuration values into the project. As long as you enter all 3 environments, when the game is run, the plugin will check the Sandbox ID that was passed in via the Epic Launcher and match it to one of your existing environments, then use that for the game.
Edit: In more recent versions of the plugin (we tested 4.0.0), it reads both the sandbox and deployment from the Epic Launcher command line. The sandbox ID is always included in the command line from Epic, but in order to have the deployment ID provided, you need to edit your Artifact Settings in the Epic Dev Portal. Go to the Artifacts and Binaries section, edit the Artifact, and set the Deployment ID for it. Make sure to do this in each of the 3 environments (dev/stage/live). The Deployment ID that's automatically determined here should match what's in the Product Settings section.
For Unreal Engine 5.1 and newer, Epic recommends using their EOS Online Services plugin. However, the configuration here does not seem to allow multiple environments for the same platform. You can only configure one environment per platform, and must make a different build for each environment.
However, the older EOS Online Subsystem in Unreal Engine 5 does allow for multiple environments to be configured. It will then select the correct one based on the Sandbox ID from the Epic Launcher command line, as the Unity plugin does. In your Engine config, set up the 3 environments:
[/Script/OnlineSubsystemEOS.EOSSettings]
DefaultArtifactName=<live artifact name>
+Artifacts=(
ArtifactName="<dev artifact name>",
ClientId="<client ID>",
ClientSecret="<client secret>",
ProductId="<product ID>",
SandboxId="<dev sandbox ID>",
DeploymentId="<dev deployment ID>",
EncryptionKey="<encryption key>"
)
+Artifacts=(
ArtifactName="<stage artifact name>",
ClientId="<client ID>",
ClientSecret="<client secret>",
ProductId="<product ID>",
SandboxId="<stage sandbox ID>",
DeploymentId="<stage deployment ID>",
EncryptionKey="<encryption key>"
)
+Artifacts=(
ArtifactName="<live artifact name>",
ClientId="<client ID>",
ClientSecret="<client secret>",
ProductId="<product ID>",
SandboxId="<live sandbox ID>",
DeploymentId="<live deployment ID>",
EncryptionKey="<encryption key>"
)
Note that when running your game locally, you can add the "EOSArtifactNameOverride" command line argument to forcibly select the environment you want to use, regardless of the defaults set in the config file. This will not work in the live game running from the Epic Launcher, though. Example: <path to game>/<game>.exe -EOSArtifactNameOverride=<dev artifact name> -EpicPortal
(Also note that for Unreal projects, adding the "EpicPortal" command line argument signals Unreal that it can initialize the eCommerce system if you need to test that locally.)
In Unreal 4.27, the Online Subsystem logic does not select based on Sandbox ID. It will try to select based on the Epic Launcher "EpicApp" argument. However, that argument is the Artifact ID of the game. That ID does not change between environments. You would have to set up different Artifacts in the Epic Dev Portal for development, staging, and live in order to use this feature. Without modifying code, you will again need to make different builds for each environment. In this case, you can change the "DefaultArtifactName" config setting to match the particular environment you are targeting.
If you want to modify Unreal 4.27 source to detect the environment via the command line, check Engine/Plugins/Online/OnlineSubsystemEOS/Source/OnlineSubsystemEOS/Private/EOSSettings.cpp. Compare it to the same file in the source for Unreal Engine 5 and copy over the logic for selecting the artifact settings based on the Sandbox ID.
As a side note, whenever your game is run the from the Epic Launcher, it has multiple command line arguments. You can view these arguments in Windows via several different methods. We recommend Process Explorer. A typical command line will look like this:
<path to game>/<game>.exe -AUTH_LOGIN=unused -AUTH_PASSWORD=<password> -AUTH_TYPE=exchangecode -epicapp=<artifact ID> -epicenv=<Dev/Stage/Prod> -EpicPortal -epicusername="<username>" -epicuserid=<user id> -epiclocale=<locale> -epicsandboxid=<sandbox ID>






