Sphinx and The Cursed Mummy is an original 3rd person action-adventure inspired by the mythology of ancient Egypt. Travelling the world via magical portals to foil the evil plans of Set. Sphinx's Journey will require all his wits, agility, and special powers.
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.
[img]https://steamcdn-a.akamaihd.net/steamcommunity/public/images/clans/31158491/eaf1b980e78917fa273d4f51a867aad417360caa.png[/img]
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.
[img]https://steamcdn-a.akamaihd.net/steamcommunity/public/images/clans/31158491/f4440ef0af162f2510d51d64a2e4e7a240907004.png[/img]
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.
[img]https://steamcdn-a.akamaihd.net/steamcommunity/public/images/clans/31158491/2e9b5a3144b06bcaa3e0803512a07d35bc73b15c.png[/img][img]https://steamcdn-a.akamaihd.net/steamcommunity/public/images/clans/31158491/a9bef0dc134aff6482bcb8b01d4a2ceb0bf7c8b6.png[/img]
Also, here is the complete cumulative changelog since our last announcement:
[h1]2018-01-30 (Tuesday)[/h1]
[list]
[*] German translation improvements by @MagicianMana.
[*] Make the health Gold Ankh UI indicators scalable by the [i]TextHudObjScaling[/i] key in the [i][Graphics][/i] 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 [i]EGXGL_ATTRIB_DIVISOR_INSTANCING[/i] / [i]glVertexAttribDivisor[/i] 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 [i]glObjectLabel[/i]'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 [i]InputGrabbed[/i] key in the [i][RenderMode][/i] section of [i]Sphinx.ini[/i]. It is set to 1/TRUE by default. Suggested by @DaxterSpeed.
[code]
[RenderMode]
InputGrabbed=0
[/code]
[*] 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 [i]Sphinx.ini[/i]. For example, this is is the correct mapping for French AZERTY layouts, where WASD is ZQSD:
[code]
[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
[/code]
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.
[/list]
[h1]2018-03-09 (Friday)[/h1]
[list]
[*] 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 [i].dylib[/i].
[*] Conditionally enable the frame-stepping code when a
[code][Debug]
AllowGamePause=1[/code] key appears in [i]Sphinx.ini[/i]. 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. [i]TR_SmallLight[/i] 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 [i]GL_NV_fill_rectangle[/i] 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 ([i]EXGeoViewer[/i]).
[*] Make the HUD toggle option in the development [i]Watcher dialog[/i] actually work. This should have been implemented in 2003. Now the optional [code][WatcherItems]
Display-Hud=0[/code] [i]Sphinx.ini[/i] 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 [i]TextHudObjScaling[/i] variable to 1.3, unless overridden in [i]Sphinx.ini[/i]. Making UI text slightly larger by default.
[*] Minor cleanups.
[/list]
[h1]2018-03-28 (Wednesday)[/h1]
[list]
[*] 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.
[list]
[*] 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:
[code]
[Debug]
ScanMode=1
[/code]
[/list]
[*] 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. [url=http://steamcommunity.com/app/606710/discussions/0/1486613649677940682/#c1489992080511890706]Kudos to @YouTube.GTuxTV for the original report[/url].
[*] 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.
[list]
[*] 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)
[/list]
[*] 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 [url=https://steamcommunity.com/app/606710/discussions/0/1698294337764697650/]found the camera rotation too fast[/url].
[code]
[PCKeyboardMap]
CameraSpeedMultiplierX=0.7
CameraSpeedMultiplierY=1.0
[/code]
[*] 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.
[/list]
[h1]2018-04-03 (Tuesday)[/h1]
[list]
[*] 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.
[list]
[*] This only happened when freezing monsters like Skeletal Spiders or Wasp Spiders, instead of the smaller Fire Armadillos; which are carried around.
[/list]
[*] 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.
[list]
[*] This 2D impostor and the one in the Anubis Wall entrance were the more noticeable ones.
[/list]
[*] Let modders use additional music hashcodes instead of hardcoding the list of jumpcodes, let's be more lenient here on PC.
[list]
[*] 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.
[/list]
[*] 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.
[/list]
[h1]2018-04-08 (Sunday)[/h1]
[list]
[*] Add a savestate-ish player position save/restore functionality useful for speedrunning practice. Save position with [i]LT + RT + Left analog click[/i] / [i]Page up[/i], restore with [i]Left analog click[/i] / [i]Page Down[/i]. You need to use -dev mode and have [i][Debug] ScanMode=1[/i] in [i]Sphinx.ini[/i] for it to work. Dedicated to speedrunners like [i]Remi[/i] and [i]turothking[/i].
[*] Optimize several HD texture replacements.
[/list]
[h1]2018-04-12 (Thursday)[/h1]
[list]
[*] 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).
[/list]
[h1]2018-04-26 (Thursday)[/h1]
[list]
[*] 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 @[url=https://steamcommunity.com/id/LetsPlayNintendoITA]LetsPlayNintendo[/url], @[url=https://steamcommunity.com/profiles/76561198031551983]Remidemmi[/url] (DE), and @[url=https://steamcommunity.com/id/rararafa]SenseiTional[/url] (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.
[/list]
[h1]2018-04-30 (Monday)[/h1]
[list]
[*] 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.
[/list]
[h1]2018-05-23 (Wednesday)[/h1]
[list]
[*] 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.
[/list]
Thanks for reading!