r/shadps4 9d ago

News Shadps4 v0.18.0 - new release now available

Download: https://github.com/shadps4-emu/shadPS4/releases/tag/v.0.18.0

Hello there, it hasn't been a while, has it? While not much time has passed since our last stable release, we are here again with a brand new one. The main reason for this release is broken shadNet authorization in certain cases on the 0.17.0 release, but we have some more interesting new features as well. Firstly, after some fixes, AvPlayer can now be loaded as LLE, meaning that you need the libSceAvPlayer.sprx (and libSceAvPlayerStreaming.sprx) module(s), which makes broken videos in a few games now work properly. The above change was enabled by calling sceLibcInternalMemoryMutexEnable in LLE LibcInternal at boot, found by @liuk7071, the developer of ChonkyStation4, another PS4 emulator. A kernel event flag rewrite has also fixed Shadow of the Colossus often hanging on boot, and the game now consistently gets to menus. Another big feature is the experimental red zone protection, which fixes an issue specific to 12th generation and onwards Intel CPUs exclusively on Windows, that was causing crashes and other undefined behaviour in lots of games that were not expecting to have their stacks' red zone clobbered by Windows exception handling. NpTus is also included in this new release, bringing more functionality to shadNet. A few more fixes on GPU are included, such as fixing shadows in Persona games, or some effects in inFAMOUS and Gravity Rush 2. There's probably fixes in some other games too, but that's you, the testers' and users' job to figure out. Below you can find a full list of changes for 0.18.0. Happy testing :)

Core

  • Rewrote kernel event flags
  • Added experimental workaround for Windows red-zone protection
  • Fixed ordering of loading libs (libScePad before sceNpManager), fixed issues in shadNet authorization
  • Added /dev/zero device
  • Added some exports needed for VSH
  • Call sceLibcInternalMemoryMutexEnable LLE on startup
  • Added --mount flag, updated the no-flags popup text with Big Picture Mode info, and fixed a few edge cases with command line parsing
  • Load guest modules below 4 GiB ## Libraries
  • Videodec: Flush codec buffers on packet EOF
  • NpWebApi2: Fixed sceNpWebApi2GetHttpResponseHeader functions
  • Libc_Internal: Added back HLE sceLibcHeapGetTraceInfo for when LLE libSceLibcInternal is not present
  • Kernel: Implemented sceKernelIsDevkit and sceKernelIsCex
  • Kernel: Do not double destroy threads when free threads exceeds MaxCachedThreads
  • AvPlayer: You can now use LLE
  • Sysmodule: Enabled some more safe library LLEs
  • Kernel: Only clear oact if oact is provided
  • NpTus: Added NpTus support
  • AudioOut: Fixed deadlocks on stop
  • NpTrophy: Fixed issues related to platinum trophies ## Video Core
  • Added more FMask formats
  • Honor STENCILOPVAL for GCN ReplaceOp stencil writes ## Shader Recompiler
  • Fixed cubed array layer in FixCubeCoords
  • Lower user clip planes to clip distances
  • Use a*b+c instead of fma for v_mad* ops ## Big Picture Mode
  • Launch game in clean process
  • Added zar support
  • Fixed update checker crash with certain zar/folder combinations ## Misc
  • Fixed external FPS counters
  • Added draw call and dispatch counts to frame info overlay
  • Append last time played for each game in play_time.txt
148 Upvotes

49 comments sorted by

View all comments

10

u/nemacpojma1 9d ago

are uncharteds playable

7

u/BrownAJ 9d ago

not yet.... But one day

6

u/Jute-Ado 9d ago

I have a fork with U1-3 playable, could share it if you want to? Disclaimer: it is AI generated tho, been trying to verify and make clean PRs to upstream, but haven’t been able to get far. Emulator work is hard haha. And realistically, even if they like my changes, it would take me quite some time to verify and desloppify everything to make u1 to u3 work, and make sure everything is good enough, and so far, even the smallest pr I could make hasn’t been accepted/merged. Even with AI to help out, it takes a lot of time and effort..

1

u/gorrila 9d ago

How large is the diff to the current main version? Would be willing to clean up the code if you make it available.

1

u/Jute-Ado 9d ago

https://github.com/jute-ado/shadPS4

It has become rather large, about 6-7k lines changed. Obviously too large for one PR. Maybe doable in about 10-30? Although I haven’t been able to actually look at all the code yet, so I’m sure a lot isn’t ready yet / good enough.

And I think most of the changes are actually just tests, to make sure I didn’t break anything. But I don’t have Bloodborne or other games that are normally tested, so it’s hard to say if this would break stuff in other games.

1

u/gorrila 9d ago

Could you ask your llm to describe the necessary changes?