Good question, ArmouredOutlaw!
Those files are useful for people who either want to take a closer look at the source code or develop mods that are compatible with Wurst.
Minecraft's code is basically scrambled by default - it's obfuscated. Fabric untangles it in a two-step process, creating two different formats, which each have their pros and cons:
- Intermediary - consistent across Minecraft versions, but not human-readable
- Yarn - human-readable, ideal for mod dev testing, but not quite as consistent
Normally when you run Minecraft with Fabric, everything is in the Intermediary format to maximize compatibility, but when you are developing a mod and running it for testing, everything is in Yarn format so that you can read the source code and make sense of it.
But this also means that normal Fabric mods won't work in a testing environment and dev builds of Fabric mods won't work in an end-user environment, since they are in different formats.
With that in mind, let's look at each of these files:
The -sources.jar
file just contains the source code for that particular Wurst version, with any references to Minecraft's code in intermediary format. This means it will map correctly to the normal .jar
file (which is also intermediary), but any references to Minecraft's code will be hard to read.
The -dev.jar
file contains the compiled code, but in Yarn format. If you are developing a mod is meant to work together with Wurst in some way, and you are using the same version of Yarn that I used to develop that version of Wurst, then you can simply drop this file into the mods folder of your development environment and it should work there, whereas the normal .jar
file wouldn't.
The -sources-dev.jar
file also contains the source code, but this time in Yarn format, so that it maps correctly to the -dev.jar
file. It's also generally easier to read than the regular -sources.jar
file.
Hope that clears it up for you!