Difference between revisions of "Cemu"

From Emulation General Wiki
Jump to navigation Jump to search
("Moving away" my ass. Stop vandalizing the wiki over your petty aversion to even indirect mentions of piracy.)
(Piracy)
Line 118: Line 118:
 
There are anti-piracy measures on the Patreon early-access builds that are put behind the $5 tier. Backers putting out these builds can get banned if they're caught, and when the program fails verification, it locks down some features that impact performance.
 
There are anti-piracy measures on the Patreon early-access builds that are put behind the $5 tier. Backers putting out these builds can get banned if they're caught, and when the program fails verification, it locks down some features that impact performance.
  
Until 1.7.5 was released, one developer from Team Cemu, mudlord, spun off the project out of creative differences with the team, and in protest he put out cracked versions of early builds on his personal blog. These were also used to expose people breaching licenses for other emulators. A subreddit and Discord server was made to discuss Cemu piracy.
+
Until 1.7.5 was released, mudlord put out cracked versions of early builds on his personal blog. A subreddit and Discord server was made to discuss Cemu piracy.
  
 
The official subreddit for Cemu advises against downloading unofficial "builds", saying they could be traced with malware, and it is part of their rules not to counterargue. The Cemu piracy subreddit has encountered malware authors taking advantage of this.
 
The official subreddit for Cemu advises against downloading unofficial "builds", saying they could be traced with malware, and it is part of their rules not to counterargue. The Cemu piracy subreddit has encountered malware authors taking advantage of this.

Revision as of 18:17, 21 August 2017

Cemu-Logo.png
Current version: 2.0
Active: Yes
OS: Windows
Authors: Exzap
Official website: Cemu
Source code: Closed source

Cemu is a closed-source Wii U emulator for Windows. System requirements are pretty high[1] if you want games to run at full speed, although there are numerous bugs that can crash games due to unimplemented features. It emulates the GamePad, Classic, and Pro controllers. A compatibility list can be found here.

Before updates are publicly released, they're accessible to backers over at their Patreon.

Downloads

System requirements

You will also need enough storage for the Wii U games. Running Cemu on WINE has been reported to work just as well as Windows.

Minimum

  • Windows 7 (64-bit)
  • Graphics Card: Supports at least OpenGL 4.0
  • Memory: 4 GB

Recommended

  • Windows 10 (64-bit)
  • Graphics Card: Supports OpenGL 4.0 or newer (avoid integrated graphics)
  • Memory: 6 GB or more

Setting up

Physical Dumps

You'll first need to fill in the "keys.txt" file in Cemu's directory. It has a sample line with a bogus key and a comment, which you may as well delete.

Your file must have many lines like this, one for the Wii U Common Key (D7B00402659BA2ABD2CB0DB27FA2B656), and one line for the Game Key of each game. Sharing these keys isn't exactly safe legally, but ROM sites at least share the Game ones. Note that for games using the Loadiine format, you won't need a Game Key at all, but those will need Cemu versions from 1.4.0 onward.

Your ISO must be either uncompressed, compressed using WUD format, or in Loadiine format (only possible for versions 1.4.0 onward) to boot in Cemu. Here's a compatibility list.

Digital Copies

CEMU supports either physical games dumps in WUD, or compressed WUX format, as well as game dumps converted to the Loadiine format. Loadiine games come as multiple directories with game files and a rpx file.


Nintendo's servers are poorly secured due to a huge oversight when designing Wii U/3DS software protection. As such, with tickets proving you bought the game (but which you can get through less legit ways), there are downloader utilities like NUSGrabber, FunKiiU, UWizard, or jnus among others, and decryption tools like UWizard and CDecrypt, to obtain a functional copy.

  • Download an NUS downloader such as WiiU USB Helper.
  • Paste this URL into WiiU USB helper when prompted for the titlekey database. - https://wiiu.titlekeys.com/
  • Select the game you want to download, click get it and then download games.
  • This will download the files for the game you chose (the same as the .tik's title). May I suggest that you choose your own region where possible, so the download is quicker (from your regional servers).
  • Now we need to convert the game into Loadiine format so that you can load it in Cemu. Simply right click your newly downloaded game, then click "Prepare for Emulation".
  • Load the .rpx file from [Your gamelocation]/code/[yourgame].rpx with cemu.

Updates and DLC

Prior to 1.7.3, only updates were supported though pasting update files on the main game's folders (keeping in mind the main game is in Loadiine format) and overwriting any files. DLC wouldn't work at all through this method, though with some specific games there were workarounds and some could play DLC tracks in Mario Kart 8 through swapping of specific files. From 1.7.3 onwards, proper support for DLC and updates was included in CEMU.

Use the same process as above to download updates. Once decrypted, simply copy and paste these over the original game's files.

To install updates and DLC on Cemu (1.7.3+):

  • Run the game at least once.
  • Check Cemu's log.txt file and look for a line that says "Mounting local storage (AOC): .\mlc01\usr\title\NUMBERS\NUMBERS\aoc\"
  • Add (create) folders with the same name as the above (substituting the "NUMBERS" bit with the actual numbers) in your "CEMUFOLDER/mlc01/usr/title" folder.
  • Add any updates (which must be added first) you want to the "CEMUFOLDER/mlc01/usr/title/NUMBERS/NUMBERS/" folder.
  • Create a folder named "aoc" and put the DLC files into there. The "code", "content", and "meta" folders of the actual game itself also go in the "aoc" folder.

Amiibo Support

Amiibo are hard-to-find figurines unlocking various on-disc content in select 3DS and Wii U games. They use the NFC technology. Nintendo Amiibo data is distributed online as NFC tags (.bin files). Here's a recent complete set of the official ones (March 2017) but there's also unofficial spoofed packs on various other sites.

Recent versions of CEMU include Amiibo support. Simply go to NFC / Scan NFC Tag from file, and load the relevant .bin file. Keep in mind Amiboo support in CEMU is incomplete right now and not all figurines are compatible yet - though incompatibilities may be caused by bad Amiboo dumps as well.

Controls

The Wiimote still isn't emulated yet, but you can have up to 8 GamePads set in the menu.

Wii U GamePad bindings:

  • Touch Controls: Mouse left click.
  • Tilting and Gyro Controls: Holding the mouse right-click and dragging. It's lacking Z-axis key binding at the moment.
  • Switch Screens between TV and GamePad: "TAB" key, "Ctrl+TAB" to keep focus. TV by default.
  • Microphone: Spoofed, a configurable key simulates blowing on the mic.

Cemu cannot go online or connect to a real (or emulated) 3DS.

Troubleshooting/Speeding up

Shadercaches

Shaders are normally cached as you play the game. This can cause a lot of stutter and slow the game down.

Cemu accepts other shader caches that can be traded online. You can go to /r/CEMUcaches and search for the ones you want. It's often very difficult to generate a complete cache for large games, and will not completely eliminate stuttering.

Some settings in the Nvidia control panel might help.

Some games' transferable caches may cause slowdowns on some graphics cards like the GeForce GTX 970. If this is the case, you will have to generate your own shaders and delete the ones you downloaded. In the case of the GeForce, also consider deleting the .bin and /toc file in your GLCache at %APPDATA%\NVIDIA\GLCache\(hexstring)\(hexstring).

Native H.264 Decoder

MP4 videos are often encoded for Wii U games with the expectation that the hardware plays it back on-the-fly, but because the x86 architecture is not PowerPC, this is resource-intensive for Cemu since it has to run the PowerPC video decoder. An unofficial utility called CEMUhook bypasses this by playing H.264 video directly from Windows codecs that are programmed for x86.

Disable Hyperthreading

Cemu may not be programmed well with hyperthreading. To disable it, go into the Task Manager, right click cemu.exe and then set these affinities:

Processor affinity.png

Graphics Packs

To work around emulation bugs and other problems the way Dolphin does, "Graphic Packs" are title-specific property sheets which defines advanced settings you might not be able to change in the interface. Basic rendering options including shadow resolution and quality, post-processing effects like bloom, lighting and godrays, custom anti-aliasing, and such can be applied here. You can even use them to reduce the internal resolution for an increase in the framerate. This is not to be confused with Texture Packs, which are replacement textures; CEMU doesn't support that, but it is planned.

The "Graphic Packs" themselves are folders under the graphicPacks directory. They can be named anything, but they should contain the "rules.txt" file. A bare-bones example of a "Graphics Pack", called "Bayo_1080p", would look like this:

[Definition]
titleIds = 0005000010172600,0005000010172700,000500001011b900,000500001014db00,0005000010157e00,0005000010157f00
name = "Bayonetta 1 + 2 - 1080p"

[TextureRedefine]
width = 1280
height = 720
overwriteWidth = 1920
overwriteHeight = 1080

Whenever the titleId matches the current one, Cemu will show the Graphics Pack under Options -> Graphics Pack. If you don't know what the titleId of the game you want is, check the logs.txt file. You can safely delete it in the event that it gets too big for a text editor to parse.

The overwriteWidth and overwriteHeight properties used in this example will upscale the game from 720p to 1080p. But if the game doesn't have all of its textures in the specified resolution, they won't be upscaled and could look messy as a result. In this case, this problem is seen in some FMVs in the game. This is the purpose of the TextureRedefine rule.

See some of the community graphics packs at this page.

Issues

  • Save states aren't getting implemented any time soon. This has a lot to do with the complexity of the Wii U memory layout and architecture, as well as the huge file size. As a result, the current developers are not interested in implementing them.
  • The emulator is still unfinished and unoptimised, as noted in the lack of efficient and stable H.264 video decoding, causing glitchy videos. This is worked around with Cemuhook entirely, but its approach to video decoding is unlikely to be taken into the emulator.

Piracy

There are anti-piracy measures on the Patreon early-access builds that are put behind the $5 tier. Backers putting out these builds can get banned if they're caught, and when the program fails verification, it locks down some features that impact performance.

Until 1.7.5 was released, mudlord put out cracked versions of early builds on his personal blog. A subreddit and Discord server was made to discuss Cemu piracy.

The official subreddit for Cemu advises against downloading unofficial "builds", saying they could be traced with malware, and it is part of their rules not to counterargue. The Cemu piracy subreddit has encountered malware authors taking advantage of this.

External links

  1. It works at full speed with i3 6100 + GeForce GTX 750 Ti though.