However that gives that outputs error: function 'anonymous lambda' called with unexpected argument 'scripts'. I tried the following to make my scripts work but they’re not loaded into mpv:
No it isn’t. It’s overriding both the wrapper and the underlying unwrapped package it depends on simultaneously. You need to override the wrapper to set your own scripts, and you need to override the underlying unwrapped package to use ffmpeg-full. This is how you do both.
To give a bit more context, “wrapped” in nixpkgs context refers to a custom package that contains all the environment variables and runtime arguments and so on that are passed to the underlying program.
pkgs.mpv-unwrapped is the direct build of the upstream mpv code itself, while pkgs.mpv is nixpkgs’ own package that sets some environment variables to include things like your config files, scripts, etc. Changing a buildtime dependency requires changing the unwrapped package, while changing the scripts requires changing the wrapper package.