Sphinx and the Cursed Mummy cover
Sphinx and the Cursed Mummy screenshot
Genre: Platform, Puzzle, Role-playing (RPG), Adventure

Sphinx and the Cursed Mummy

Now with mouse-controlled blowpipe, restored Abydos Museum/character HD textures and more stuff

Yesterday we added the much requested mouse-controlled blowpipe controls, this is the first step towards having full-featured mouse and keyboard mapping support in EngineX.



Now that most of the groundwork is in place it should not take long. We still need to add extra sub-menus and configurable options; ensuring that everything runs as expected will probably take most of the remaining work.

In other news, we also added several high-quality textures for the Abydos Museum and brought back some original (really high resolution) character textures for Sphinx and the mummy that will be tweaked in future updates to better match their final look. We also improved the draw distance for various Abydos NPCs like the ones in the main plaza, as requested.



Today's update also brought many other fixes and improvements; we brought back the iconic thunder sound that sounds when you first enter the main menu, we made the back/cancel labels clickable, fixed a bunch of long-standing collision issues, skipping cutscenes now works even if the dialog is in wait state, brought back or implemented some beta/modding features needed by the beta map restoration project, and little tweaks everywhere.



Also, here is the complete cumulative changelog since our last announcement:

2018-06-28 (Thursday)



  • Made the fan-favorite intro logo thunderous again. The sound was broken on release due to a little hashcode header mismatch.
  • Add initial support for the mouse-controlled camera that we have been teasing for a while, we still need to add a mouse sensitivity control. The player can shoot with the left mouse button and exit first-person mode via right-click. The groundwork for keyboard action mapping is laid out and it will probably come after this.
  • Save the vertical sync changes to Sphinx.ini, fixes disabling v-sync in the in-game options.
  • Prefix the screen name with a number in the graphics options, useful to distinguish them in case there are two or more screens with the same name.
  • Add support for clicking the "(B) Back" labels in the pause and main menus, now the user can go back and cancel via mouse.

  • Carefully hex-edit the level data to improve draw distances of NPCs and triggers in the Abydos Canals. Now characters like the the boat owner, the Mad Boy/Juggler and the giggling lady in the Main Plaza can be seen from afar.
  • Add several much needed HQ textures for the Abydos Museum, refurbish some wall textures to add some lost detail. Make some signs and canopies partially transparent via alpha-testing/alpha-to-coverage.
  • Remove the squarish/invisible roadblocks in the middle of the ramp in the Great Wall Entrance II Room, the collision meshes of the wooden pillars poked through the ramp they support. This is a long standing bug still present in all the original console versions.
  • Fix the hanging flags collision in the sneak corridor of the Castle of Uruk during the second mummy visit. Now the mummy doesn't get stuck and can walk and sneak under them, hopefully without introducing some extra regressions.

  • If we skipped a cutscene with the inventory key and the dialog/help window was in a pause point waiting for user input we would get stuck in the fade-to-black transition after skipping it, and we would also need to press 'accept' to return to normal gameplay. Fix that so that pressing the inventory/skip button suffices.
  • Reimplement some beta features and mechanics asked by modders:

    • Add support for the PushFlag_AmunRa flag in the XTrigger_Pickupable and XTrigger_Pushable triggers; it was halfplemented. Set the needed strength to 2 if we have the Hands of Amun + Hands of Amun Ra or 1 of each. Previously it only counted the amount of HT_Item_Ability_HandsOfAmun, and there was no reference to HT_Item_Ability_HandsOfAmunRa.
    • Whitelist HT_Item_Pickup_FireDart for pickup creation, which is also used while dropping items randomly in breakable containers. Also, add support for dropping fire darts on intelligent item generation.

      • Now when ContainerFlag_SpawnPickup is checked in EuroLand the FireDart flag can generate an item in either random or intelligent mode. The behavior in the final game shouldn't change because this item isn't flagged in any container, only in beta maps.


  • Fix the slightly offset highlight tab in the Notes section of the Book of Sphinx; the currently selected objective/entry text overflowed a bit.
  • Update the copyright year of the boot-up/legal screen from the initial 2017 to 2018.
  • Use the HQ selection tab texture for the Book of Sphinx again, it regressed after the latest changes.
  • Losslessly compress all of the HQ texture replacements, reducing their disk footprint and halving loading times.
  • Reduce HQ texture replacement micro-stutter during gameplay.
  • Add some framebuffer discard optimizations on MSAA resolve.



2018-05-28 (Monday)



  • Add the initial version of the HQ Sphinx/Mummy character texture replacements, they were sourced from the highest pre-rendered 3ds Max models available and they don't exactly match their final counterparts, so it will require some texture tweaking and recoloring work, but this is good enough for now; the amount of extra detail is beautiful.
  • Add several new HQ texture replacements covering mainly Heliopolis Dungeon, Uruk Intro, Uruk Islands and Anubis Wall.
  • Uncomment the unpossession code so that we can still play the old Sakkara maps with the Dino Oafs and Shell Critters, it should also fix the contextual buttons not changing after possessing the same monster a second time. See ContextActions.xls for HT_Trig_Context_CancelPossession / HT_Trig_Context_DinoOaf / HT_Trig_Context_Frog.
  • Get rid of the possession dart first-person fire action context when arriving at a Sakkara unpossession point by resetting the Sphinx action context to the default one, the HUD and buttons looked pretty buggy.
  • Raise the large data heap again a bit (to 40 MiB, same as in Xbox) from the original 22 MiB in PC. Fixes OOM crash in the second part of the _sk_02.edb mod, right after the submap load due to big map sizes.
  • Add an extra xxHash for the propPusheableBull texture (from _mu_eye), add a HQ texture for the triple mummy saw trap in that very same map, it was pretty low res.
  • Fix the "/lib32/libc.so.6: version `GLIBC_2.7' not found" error on older Linux distros. This is caused by the GLIBC update, which made Sphinx.elf use powf@@GLIBC_2.2.5. Replace it by the perfectly functional powf@GLIBC_2.0 and use manual Linux glibc versioning selection based on this: https://github.com/wheybags/glibc_version_header
  • Tell the Linux linker to use both hash styles ("sysv" a "gnu") for compatibility. Set the OpenGL library to LEGACY to keep using libgl instead of libglvnd.



Thanks for reading!

Now with improved, and mostly original, HD textures

During the past few months we have been recovering and tweaking more than ~130 environmental textures from original sources, and now we are transplanting them back into the game 15 years later. Many scenes and props now look crisp and more detailed than their sixth-generation, compressed counterparts.



The Eurocom and Anibyte artists originally painted their images at bigger sizes, but due to serious console and memory limitations at the time they had to be downsized and compressed to Heliopolis and back.

These upgrades mostly cover common gameplay elements; like buttons, statues and levers and, more specifically, Heliopolis Exterior, Anubis Wall, Abydos Canals and the Uruk Intro. We will probably keep adding more original assets in zones that still need some care, like the Lost Temple, some Mummy dungeons and Luxor.



Modern computers are much more capable than a PlayStation® 2 or GameCube™. Enjoy playing Sphinx as it was originally meant to be seen, it holds up pretty well.



Also, here is the complete cumulative changelog since our last announcement:

2018-01-30 (Tuesday)



  • German translation improvements by @MagicianMana.
  • Make the health Gold Ankh UI indicators scalable by the TextHudObjScaling key in the [Graphics] section of Sphinx.ini, too. As requested by @DaxterSpeed.
  • Add a texture override (hudRotatorSelect.png) for the golden highlight frame around the currently selected item in the pop-up rotator of the HUD. This one has higher resolution and it doesn't look half as stretched as the original one, specially after making that list wider a few weeks ago.
  • Disable the EGXGL_ATTRIB_DIVISOR_INSTANCING / glVertexAttribDivisor hack, it didn't seem to help. It was disabled by default; let it autodetect, as intended: http://steamcommunity.com/app/606710/discussions/0/1621726179559230606/
  • Disable glObjectLabel'ing again to improve performance.
  • Update the Windows version of the SDL2 (to 2.0.7) and OpenAL Soft (to 1.18.2) libraries. Don't link/import the SDL2 library symbols by ordinal anymore; do it by name, because it breaks dragging and dropping new SDL2.dll versions that don't share export order.
  • Let the user choose if she wants to bound/restrict/confine the mouse cursor within the window borders through a new InputGrabbed key in the [RenderMode] section of Sphinx.ini. It is set to 1/TRUE by default. Suggested by @DaxterSpeed.

    [RenderMode]
    InputGrabbed=0

  • Make the left analog stick WASD keyboard button support remappable for people that use AZERTY/QUERTZ. It can be done through new configuration keys in Sphinx.ini. For example, this is is the correct mapping for French AZERTY layouts, where WASD is ZQSD:

    [PCKeyboardMap]
    SDL_CONTROLLER_LSTICK_LEFT=20 # Q
    SDL_CONTROLLER_LSTICK_RIGHT=7 # D
    SDL_CONTROLLER_LSTICK_UP=29 # Z
    SDL_CONTROLLER_LSTICK_DOWN=22 # S
    SDL_CONTROLLER_BUTTON_LEFTSTICK=26 # W
    SDL_CONTROLLER_BUTTON_RIGHTSTICK=6 # C
    SDL_CONTROLLER_BUTTON_LEFTSHOULDER=4 # A
    SDL_CONTROLLER_BUTTON_RIGHTSHOULDER=8 # E

    Suggested by @Alice Madieus: http://steamcommunity.com/app/606710/discussions/0/1693785669872263827/
  • Some chests could be opened multiple times on cutscene skips. Don't let people exploit it: https://twitter.com/owashii/status/952217023567802369
  • Skipping the Heliopolis boulder cutscene after burning the wooden platform soft-locked the controls. Make it unskippable.


2018-03-09 (Friday)



  • Improve the safe zone for 4:3 screens, some of the text in menus and HUD spilled over at either side. See this Steam forum discussion: http://steamcommunity.com/app/606710/discussions/0/1700542332338620293/
  • Update to the latest SDL2 version in both Windows and macOS. We now use 2.0.8, which comes with a bunch of fixes and improvements.
  • Compile and update the macOS version of OpenAL Soft to 1.18.2, we were using 1.18.1 until now; bundle the HRTF coefficients in the .dylib.
  • Conditionally enable the frame-stepping code when a
    [Debug]
    AllowGamePause=1
    key appears in Sphinx.ini. Replace the forwards/backwards mouse buttons by the Scroll Lock/Pause keys.

    Enable this mode by keeping pressed one of the buttons until you press the other once. The game will stop, gameplay-wise. You can then either press Scroll Lock to make it go really slow or just advance one frame each time you press Pause. To disable just do the same press-one-while-keeping-the-other-pressed trick again.
  • For some reason the dynamic lights didn't use the alpha modulation term that was enabled for things like the fireflies (i.e. TR_SmallLight trigger) so they appear and go off suddenly in a pretty jarring fashion, fix those fade-ins and outs ~15 years later. Buttery smooth.
  • Simplify the sound streaming code in the OpenAL back-end, this is used for music and ambient sounds.
  • Enable a bunch of important debug traces in the retail build.
  • Get rid of the jarring one-frame flicker in the light that appears while diving fast. This is more of a workaround than a real fix, but it's simple and will do the trick for now.
  • Add support for the GL_NV_fill_rectangle extension, that should improve drawing 2D text and all the other screen-aligned rectangular sprites. It uses the polygon's bounding box during rasterization, simplifying the computations and making them faster, at least in theory.
  • Enable the subnormal number flush-to-zero mode at start-up to make floating point operations faster on supported hardware by trading some precision.
  • Also, workaround the crash on file selection in the EngineX Viewer (EXGeoViewer).
  • Make the HUD toggle option in the development Watcher dialog actually work. This should have been implemented in 2003. Now the optional [WatcherItems]
    Display-Hud=0
    Sphinx.ini key can be used to take superior screenshots.
  • Improve the SDL2 event loop handling for snappier response times.
  • Improve the SDL2 gamepad back-end performance and its hot-plugging support. There are still some underlying issues in the SDL2/Xinput library that prevent the Steam Controller from hot-plugging while using it wirelessly on Windows, an easy workaround is to connect it via USB cable or plug a different wired controller after pairing so that both are detected.
  • Also, stop the rumbling altogether when we switch to mouse/keyboard mode.
  • Set the TextHudObjScaling variable to 1.3, unless overridden in Sphinx.ini. Making UI text slightly larger by default.
  • Minor cleanups.


2018-03-28 (Wednesday)



  • Implement a `-dev` mode, make it so that most of the debug/development EngineX windows, such as the level or cutscene selector or the right-click menu, can be enabled using `-dev` as command-line parameter in the retail build.

    • This also enables cheats and disables achievements.
    • Additionally, players can enable no-clip (you can toggle it by clicking the right analog stick and going up/down with Y/A or Triangle/Cross) through a new Sphinx.ini key:

      [Debug]
      ScanMode=1


  • Add high-resolution replacements for a bunch of commonly used low-res textures of scene props, mainly in Abydos and Heliopolis. More to come.
  • Add some additional high-definition Abydos texture replacements sourced for the original artwork.
  • Expose soft particles as a selectable item in the graphics menu, now that the UI fire effect regression is fixed. Kudos to @YouTube.GTuxTV for the original report.
  • Fix the GPU freezes/stalls under Mesa/Intel/Nouveau/Linux, turns out I had forgotten to initialize the `i` counter variable in the `for` loop of the dynamic lights and that caused infinite loops in the default pixel shader, where as in the proprietary drivers it was just seemingly initialized to zero by default; working fine.

    • I have reported the infinite loop/freeze problem to Mesa 3D: https://bugs.freedesktop.org/show_bug.cgi?id=105755 (the mesa glsl compiler actually caught the uninitialized part)
    • I have also opened one in glslang to add lint warnings: https://github.com/KhronosGroup/glslang/issues/1315 (prevention is important)

  • Improve the drawing distance of the Anubis Wall entrance in the Heliopolis exterior, bringing the fade-out range farther apart. Now the interior is visible from the Cursed Palace and beyond, no more 2D cardboard portal.
  • Let the player modulate the camera rotation amount by some predefined constant through Sphinx.ini. @animalmagic found the camera rotation too fast.

    [PCKeyboardMap]
    CameraSpeedMultiplierX=0.7
    CameraSpeedMultiplierY=1.0

  • Add mipmapping support for the HD replacement textures, now that we are replacing 3D-mapped objects it was pretty ugly from afar.
  • Sanitize the OpenAL sound streaming code a bit better, should mitigate the rare bug where music stops working after a few hours of uninterrupted gameplay.
  • Optimize the depth renderbuffer texture transfer format by using the proper type, it should improve transfer performance by avoiding possible conversions. It can't hurt.
  • Fix a segmentation fault caused by improper use of variable arguments in Linux and macOS.
  • Update the gamecontrollerdb.txt mappings file from the unofficial community list (https://github.com/gabomdq/SDL_GameControllerDB), adding out-of-the-box support for many gamepads.


2018-04-03 (Tuesday)



  • Fix the user-after-free pointer dereference monster thaw crash for good. There was a tricky bug in all the previous Sphinx versions that caused a crash when trying to push the block of a big monster (frozen with ice darts) just when it starts to thaw out.

    • This only happened when freezing monsters like Skeletal Spiders or Wasp Spiders, instead of the smaller Fire Armadillos; which are carried around.

  • Add animated HD texture replacements for the water surface layers in Abydos Canals/Council/Heliopolis Exterior.
  • Add matching xxHash codes so that the Abydos Council Chambers map makes use of the already existing HD textures added in the 2018-03-28 update.
  • Expand the portal fade-out distance of the Osiris shield room entrance (the one with the spikes), improving its drawing distance.

    • This 2D impostor and the one in the Anubis Wall entrance were the more noticeable ones.

  • Let modders use additional music hashcodes instead of hardcoding the list of jumpcodes, let's be more lenient here on PC.

    • Just ensure that the jump code is within the valid range and call it a day.
    • Now people should be able to add extra music tracks if needed once proper tooling is in place. New ambient sounds should already be possible, no hardcoding there.

  • Remove a bunch of additional precompiled beta maps included the release day that don't work in the normal game. Now that the Authoring Tools are public proper levels can be exported by prospective players using EuroLand, most of those will actually work.


2018-04-08 (Sunday)



  • Add a savestate-ish player position save/restore functionality useful for speedrunning practice. Save position with LT + RT + Left analog click / Page up, restore with Left analog click / Page Down. You need to use -dev mode and have [Debug] ScanMode=1 in Sphinx.ini for it to work. Dedicated to speedrunners like Remi and turothking.
  • Optimize several HD texture replacements.


2018-04-12 (Thursday)



  • Export a series of useful static global variables using a signature/marker that third-party software like LiveSplit can read across versions, this avoids having to hardcode addresses. Should open the door to third-party auto-splitters for speedruns.
  • Expose the game status in the gExportedBlock so that third party tools can know if we are in a loading screen or waiting for an async submap (black screen with the spinning Ankh icon).


2018-04-26 (Thursday)



  • Use GPU-persistent buffers for streamed vertex data (skinned meshes/cloth physics) when possible. This requires at least OpenGL 4.3 + ARB_buffer_storage.
  • Extend the Game Over background screen to also cover the entire left side in widescreen and ultrawidescreen monitors.
  • Completed the German and French translation of the remaining Steam achievements. Thanks to @LetsPlayNintendo, @Remidemmi (DE), and @SenseiTional (FR).
  • Changed the localized versions of some achievement names to match with their original in-game names.
  • Enable alpha blending in the alpha-tested textures of the Book of Sphinx. Fix the Book of Sphinx info box misalignment when the Artifacts tab is selected, the position is exactly the same when in the Monsters or Note pages, but it moves a little when switching to Artifacts.
  • Also, add a non-pixelated Book of Sphinx background, the original looked pretty stretched.
  • Change the gamepad button bindings in -dev mode to save player position with LT + Left analog click / Page up, and restore it with RT + Left analog click / Page down. No more clicking by mistake.
  • First batch of HQ texture replacements.


2018-04-30 (Monday)



  • Additional preventive checks against rare teleport-based softlocks.
  • Fix the animated HQ water texture tiling issues. Repainted the seams of the 72 texture frames, now they aren't noticeable anymore.
  • Improve the papyrus background image.


2018-05-23 (Wednesday)



  • Add a massive amount of HQ texture replacements sourced from the original artwork, mixed with tweaked versions of the texture pack. Covering mainly Uruk Intro, Uruk Islands, Abydos Canals, Heliopolis, Dark Area, Uruk exteriors, Cursed Palace surroundings and the Anubis Wall itself.
  • Flip the conditions in the ISSAID command to hopefully try to fix some rare softlocks when a gamescript is waiting for ISSAID after LOCKCONTROLS + PRINTMESSAGE and then some other trigger overlaps in time and also does LOCKCONTROLS 1 + PRINTMESSAGE while we are waiting, causing the first trigger to never return from ISSAID and unlock the controls with the tailing LOCKCONTROLS 0, leaving the player stuck. This can happen in the crawlspace of the Luxor throne room, if the crawl help text wasn't triggered by not moving the throne all the way and then we accidentally move it just when the old NPC called Sorkon talks to us when coming back.
  • Don't let the user set negative display indexes in Sphinx.ini, clamp it to {0, max-screen-index} range. Fixes displaying the resolution when [RenderMode] Display=-1.


Thanks for reading!

First Sphinx mod released, restoring a good part of Akaria, early Uruk, old Mummy missions and the beta storyline

After working on it for three long months and beta-testing it in the Sphinx Discord servers for a few weeks, @jmarti856 has announced the first public mod for the PC version of Sphinx and the Cursed Mummy.



He is now trying to bring back to life the lost levels of Sakkara as best as he can, given that many cutscenes and mechanics are missing or unfinished.

https://steamcommunity.com/app/606710/discussions/1/1696045708662788270/

There are still many cozy secrets tucked away in the files that we released with the Authoring Tools DLC. As more modders start learning the EngineX tools and making their own mods we will feature them in announcements like this. Have fun!






Sphinx Modkit Out Now!

Hello,

We just shipped the Authoring tools that were also used crafting the game. It also includes source assets.

You can find it here: http://store.steampowered.com/app/750430/Sphinx_and_the_Cursed_Mummy_Authoring_Tools/

Please be aware that you need to tell Steam to download it.

We prepared a guide here on how to set it up and first steps with it: http://steamcommunity.com/sharedfiles/filedetails/?id=1306820082

Enjoy!

Now with dynamic lights, better gamepad support, new achievements and more stuff

Happy new year! Things haven't slowed down since our last Sphinx announcement, and we have been hard at work expanding the font support, with improved glyph sizes and tweaks for all the six languages.

Also, for those wanting even more flexibility, we have made the dialog text scaling entirely configurable (take a look at the TextHudObjScaling option in the changelog below), in case you want to play on your couch without eye strain.

This Monday we added support for points of dynamic omnidirectional light. Which subtly enhance the mood when you open a chest, get a new item or there are fireflies moving nearby.




A bit more subtle is the expanded item rotator, now 1.7 times wider. The golden frame has been centered and the list extended, lending more space for the bigger typography. Previously, the overflowing text only displayed partial item names, causing problems like selecting the correct Portal Amulet while playing in Romance languages.




Many of you probably noticed the two new achievements we added in the middle of December, rewarding exploration. They cover getting all the health Gold Ankh Pieces for Sphinx and all the Onyx Scarabs found across the six mummy visits. The latter will require a new game to work properly, sorry about that.

We have also fixed a few typos, improving the flow of our Italian/Spanish/German translation of the game and achievements. Thanks to contributions by @LetsPlayNintendoITA and @MagicianMana.



You can now plug several gamepads at the same time and switch between them. Having things like joysticks, flight sticks or fight sticks connected while playing won't cause detection problems anymore. Also, Steam Controller users should be able to turn it off and on and still being able to play after idling.

The elephant in the room is contextual mouse/keyboard support. It is still being done, and it turned out to be slightly more complicated than all the other problems we have fixed so far. Hopefully, it will be out soon.

In other news, we are also working on releasing the original editor and tools that Eurocom used to make the game in 2003, so that people can make mods and custom levels. We will also try to include most—if not all—of the unpublished beta content, like the infamous worlds of Akaria and Sakkara, so that the community can fix and improve those incomplete levels, bringing them back to life, 15 years later.


Also, here is the complete cumulative changelog since our last announcement:

2017-12-09 (Saturday)


<*> Remake all the default fonts for all the languages with more legible counterparts.
<*> Fix the proportions of the amounts column in the artifacts/captured monsters list of the Book of Sphinx. With the new fonts there were some overlapping issues.
<*> Make the game DPI-aware on Windows to hopefully improve the resolution limitations. Keep in mind that higher resolutions will make some parts of the interface unreadable.
<*> Improve the alignment of the Circle/B button text in the contextual HUD to account for the bigger fonts in all the non-English languages.
<*> Minor HUD tweaks.


2017-12-10 (Sunday)


<*> Switch to a Clang/C2-based compiler on Windows instead of MSVC, this fixes the Abydos monkey-bars regression on Windows and probably several other subtle things.
<*> Enlarge the internal memory pools to avoid crashing in Luxor after talking to Nefertiti and advancing to the banquet hall due to a memory compaction trigger caused by the bigger size of the new fonts.
<*> Fix a few mistakes in the Spanish translation, mainly covering Horus lines in the Uruk intro.


2017-12-12 (Tuesday)


<*> Reduce the Fonts.edb size again from ~3MB to 280KB to try to mitigate the Luxor State Rooms crash after meeting Nefertiti. Export the internal font textures with very reduced resolutions and use the texoverride functionality to load them at their original size externally. Now the Fonts.edb is smaller than the original one, so this should work, in theory, to workaround those pesky EngineX memory limitations.
<*> Minor V-Sync improvements. Switch to «standard» V-Sync if «adaptive» is not supported.


2017-12-16 (Saturday)



  • Added two additional achievements to the game:

    • Golden: Get all the 12 Gold Ankhs and reach the maximum health.
    • Onyx Completionist: Get the 480 Onyx Scarab collection from the Uruk Castle. I have just tested it by scavenging them across all the six mummy levels and it works. You can spend them normally, no need to keep them all in the inventory/Book of Sphinx. Due to the way skarabs are counted it will require a new game, or at least starting from the first mummy level.

  • Minor cleanups.


2017-12-18 (Monday)



  • Fix the «Practice Makes Perfect» achievement, unlock it only after improving a valid time.
  • Correct the description of the «Acrobatic Ease» achievement, replace the 77 in «77 seconds or less» by 78 to make it match the game times.
  • Use the LB/RB naming scheme in the HUD while using the Xbox controller button prompts, instead of L1/R1.
  • Strip some superfluous trailing spaces in contextual strings of the French translation that caused text misalignment and artificial padding.
  • Make the ability/item rotator 1.7 times wider and center the gold framing. The bigger font made it difficult to select the correct Portal God Amulet in some languages.
  • Fix some additional overlapping/misalignment problems caused by the bigger font, specially in the SWAP strings used while in triple mummy mode.
  • Improved the gamepad hot-plug mechanism on PC to change the active gamepad used by EngineX, now the player can simultaneously plug various gamepads and switch between them at any given time, the game will always use the one you pressed last. Allow an infinite number of un/plugging combinations instead of the original 8 slots.
  • Fix a defect in the SDL2 gamepad back-end that caused it to stop looking for valid controllers after finding a connected joystick, wheel or flight stick.
  • Minor cleanups.


2017-12-21 (Thursday)



  • Improvements done to the German translation, courtesy of @MagicianMana.


2018-01-08 (Monday)



  • Implement omnidirectional point lights in the OpenGL back-end. Happy new year!
  • Let the player configure the text size for the font used in the dialog/cutscene/help window through a TextHudObjScaling key in the [Graphics] section of Sphinx.ini. Example:

    [Graphics]
    TextHudObjScaling=1.4

  • Use the texture-based fallback technique by default for particle instancing, let's see if this is more compatible with Intel(R) HD Graphics 3000 users.
  • More German translation fixes and stylistic improvements, courtesy of @MagicianMana.
  • Make the hardcoded button prompts bigger by default.
  • Disable RTTI to improve performance, minor cleanups.

Now with bigger, and more legible, English fonts

We have just pushed a tentative update that should make things easier on the eyes by improving the glyph sizes for things like the dialog-heavy cutscenes, inventory and HUD. Let us know what you think and provide screenshots in the likely case you find something wonky or misaligned.

If feedback is positive we will do the same thing for the other languages, if not we can roll it back.

Take a look:



Also, here is the complete cumulative changelog since our last announcement:

2017-11-22 (Wednesday)


<*> Add five graphics options (FOV, particles, anisotropic filtering, multisampling, vertical sync) and one sound option (reverb toggle) in the pause menu of the remaining languages (French, German, Spanish, Italian and Korean).
<*> Better alignment for the graphics options of the English/Italian main menu.


2017-11-23 (Thursday)


<*> Localize the "degrees" suffix in the Field of View display of the graphics menu.
<*> Attempt to fix the occasionally black dynamic object, due to invalid ambient light.
<*> Always use the highest quality 3D model for each character and object by disabling LODs. Should reduce the geometry pop-in and improve graphical fidelity.
<*> More grammatical corrections done to the Italian translation by @LetsPlayNintendoITA.
<*> Tell the player how to close the version information window by pressing F10, in case it was opened by mistake.
<*> Minor cleanups.


2017-11-24 (Friday)


<*> First attempt at fixing the root of the problem that causes the pure black objects and the black screen/teleport issues.
<*> Add colours to some of the new toggleable graphics options (Particles/V-Sync).
<*> More in-deep Italian translation fixes courtesy of @LetsPlayNintendoITA.
<*> Minor cleanups.


2017-11-27 (Monday)


<*> Second attempt at fixing the occasional player/NPC teleport floating point NaN issue. The black objects issue (due to invalid ambient light coloring) at least seems to be fixed.
<*> Fix several logic defects with the help of a static analyzer.
<*> Turn down the debug switches a notch.


2017-12-04 (Monday)


<*> Replaced the existing title screen logos with HQ versions that combine original sources ("SPHINX") with remastered subtitles ("and the cursed mummy" in various languages).
<*> Minor cosmetic changes done to the oxygen bubble indicator.
<*> Minor tweaks done to the Italian translation for consistency.


2017-12-05 (Tuesday)


<*> Let the player skip most of the cutscenes in the PC port by pressing the Back/Select button, this is now enabled by default. Dedicated to speedrunners like Remi and turothking.
<*> Add a HQ version of the Book of Sphinx section pointer texture, repainted with added details that didn't exist before.
<*> Changed the localized versions of some achievement names to match with their original in-game names.
<*> Minor fixes.


2017-12-08 (Friday)


<*> Add a bigger, more legible default font for the English version of the game, this is a tentative change to test the waters and get some feedback before doing it for other languages. It works in the ability rotator, HUD, cutscene teletyper, Book of Sphinx and several other places.
<*> Check that either the {GL_ARB_multisample + GL_ARB_texture_multisample + GL_EXT_framebuffer_multisample} extensions or OpenGL 3.2 are available before enabling multi-sampling and alpha-to-coverage. This should mitigate possible black screens and opaque objects that normally should have cutout transparency, as seen in this thread: http://steamcommunity.com/app/606710/discussions/0/1500126447388546792/
<*> Minor fixes.


Thanks for reading!

PS: The much-needed bindable mouse/keyboard control rework is underway.

Ten days of daily updates

As many of you already know, we have been busy since launch day updating the game with several stability fixes and gameplay improvements as they were reported by the community.

Now that the game is in much better shape we will start implementing some of the most commonly requested things: scalable text during cutscenes and remappable keyboard controls.

We know that some of you don't read the discussions section, so here is the cumulative changelog to date:

2017-11-10 (Friday)



  • Fixed an off-by-one bug in the resolution selector that skipped one entry while going to the left, never showing the biggest resolution unless pressing the right key again.
  • Don't show a message-box showing GLSL compilation errors when the compilation was successful but the error string was not zero; this only happened under the Intel OpenGL driver.
  • Mitigate the occasional sound-looping problem. A more comprehensive fix is in the works.
  • Added a workaround for people reporting black screens and framebuffer issues: http://steamcommunity.com/app/606710/discussions/0/1483235412207725225/#c1483235412209019801
  • Minor cleanups.


2017-11-11 (Saturday)



  • Rename «Antialiasing» to «Anisotropic Filtering» to make it less confusing.
  • Make the windowed mode bigger by default.
  • Add five graphics options (FOV, particles, anisotropic filtering, multisampling, vertical sync) and one sound option (reverb toggle) in the English version of the pause menu. More languages coming up.
  • Don't make the window resizable to avoid possible sprite misalignment issues. Disable Alt+Enter for the same reason.
  • Lock the mouse within the window bounds while the game is in the foreground.
  • Added a configuration key to let the player choose PlayStation-style button prompts: http://steamcommunity.com/app/606710/discussions/0/1483235412206736841/#c1483235412208681177
  • Added a Sphinx.png icon file for the Linux version of the game, it will be used in the game window.
  • Move the Sphinx.ini configuration file to the following folder, ensuring that settings are always writable:

    Windows: %appdata%\Sphinx\Sphinx.ini
    macOS: ~/Library/Application Support/Sphinx/Sphinx.ini
    Linux: ~/.local/share/Sphinx/Sphinx.ini



2017-11-12 (Sunday)



  • Fix the Crocodile Scales Steam achievement.
  • Make it so that players can also unlock the Crocodile Scales achievement if they beat their best time in the Heliopolis swimming course. Avoiding having to start a new game just for this.


2017-11-13 (Monday)



  • Second attempt at fixing the sound loop problem.


2017-11-14 (Tuesday)



  • Fix the Harvest Moon achievement. Trigger it the last time the farmer gives you what they found while digging in the farm instead of when marking the last plot of land. All the achievements should now be obtainable.
  • Fix the occasional sound loop problem once and for all. Tested in the Anubis wall entrance and verified various times. But one can never be completely sure.
  • Always disable the original 'fake' widescreen option on load, as the option will be inaccessible very soon.
  • Don't store the music/sound effect volume, gamepad rumble or camera axis inversion options in each savegame. Instead make them global across the game and persistent in the Sphinx.ini configuration file, just like the new graphics settings.
  • Minor cleanups.


2017-11-15 (Wednesday)


<*> Improve validation in the OpenAL 3D sound back-end, should mitigate the segfaults on Linux. Thanks to the GOG Linux Team (and THQ Nordic) for providing a backtrace and core dump.
<*> Set the correct depth mode every frame to ensure that overlays like MSI Afterburner don't get away with their bad behavior, should fix the reversed depth issues where Sphinx appeared with googly eyes: http://steamcommunity.com/app/606710/discussions/0/1486613649677545884/
<*> Add a custom DT_RUNPATH attribute in the Linux version and include the two fallback libraries we depend on, ensuring that the game loads even if they aren't installed system-wide, a bit like a mini Steam Runtime. This will be used as a basis for the GOG version.


2017-11-17 (Friday)


<*> Fix and thoroughly test Steam achievements on Linux. The Linux version should be on the same level as the other versions now. Feature parity for the three platforms.
<*> Fix the Italian translation of «Game Over», as seen in this thread: http://steamcommunity.com/app/606710/discussions/0/1483235412217494149/
<*> Translate all the new menu options to Italian, as reported in this thread: http://steamcommunity.com/app/606710/discussions/0/1486613649677940682/#c3183345000077535623 (Kudos to @LetsPlayNintendoITA)


2017-11-18 (Saturday)


<*> Workaround the reversed depth bug introduced by the injected commands of RTSS (Riva Tuner Statistics Server), just re-enable depth testing at the start of every frame. See this thread for more info: http://steamcommunity.com/app/606710/discussions/0/3183345176707449697/
<*> Make DoubleChannelPL2-type sounds appear to come from the 3D center. Fixes the funky, quickly-panning sounds from the moving metal bars that surround the death ray hole heading to the main Uruk Castle hall and several other places.
<*> Fix a typo in the Italian script: "T prego, trova mia moglie!" should be "Ti prego" (I beg you). See this Steam Community thread: https://steamcommunity.com/app/606710/discussions/0/1483235412217494149/#c3183345176707080476


2017-11-20 (Monday)


<*> Fix the monkey bars traversal issue in the Temple Trials of the Uruk Islands. Sphinx was bound to fall every time at the L intersection. The level geometry has been tweaked. See this thread: http://steamcommunity.com/app/606710/discussions/0/1483235412217187622/#c1483235412217385225
<*> Lower the OpenGL context requirements to 3.0+ Core Profile and GLSL 1.30. macOS still has a minimum of OpenGL 3.2+ Core Profile and GLSL 1.50. Players with standard GL 3 cards should now be able to launch the game on Windows and Linux. At least I hope so.
<*> More grammatical corrections done to the Italian translation by @LetsPlayNintendoITA (gendering problems mainly). Kudos to him, these were pretty bad too.