Here's my personal system so far;
$noop(requires: album-artist script)
$noop(# define once what characters should be removed)
$set(_unwantedchars,[’`'\\"”/\\-\\\\\\|;:\*\\?!&\\[\\]\\{\\}\(\)<>\\\,\\._\$\\#])
$noop(# if the id of release is "Various Artists", or the release is a dj-mix, or there is a djmixer name present, return true)
$set(_variousrelease,$if($or($eq(%musicbrainz_albumartistid%,89ad4ac3-39f7-470e-963a-56509c546377),$inmulti(%releasetype%,dj-mix),$ne(%djmixer%,)),true,))
$noop(# if this is a Various Artists release, prepare to return trackartist later in the file path)
$set(_trackartist,$replace($strip($if(%_variousrelease%, $rreplace(%artist%,%_unwantedchars%,)-,)), ,_))
$noop(# artist path variable, sort out characters)
$set(_releaseartist,$replace($strip($rreplace(%albumartist%,%_unwantedchars%,)), ,_))
$noop(# prefer earliest date in release group over release date, sort out spaces and delimiters)
$set(_releasedate,$replace($if(%originaldate%,%originaldate%,%date%),-,_)-)
$noop(# cat name, sort out characters)
$set(_catalognumber,$replace($strip($rreplace(%catalognumber%,%_unwantedchars%,)), ,_)-)
$noop(# release name, sort out characters)
$set(_releasealbum,$replace($strip($rreplace(%album%,%_unwantedchars%,)), ,_))
$noop(# release disc number, sort out characters)
$set(_releasediscnum,$if($gt(%totaldiscs%,1),$num(%discnumber%,$if($gt(%totaldiscs%,99),3,$if($gt(%totaldiscs%,9),2,1)))-,))
$noop(# release track number, sort out characters)
$set(_releasetracknum,$num(%tracknumber%,$if($gt(%totaltracks%,99),3,2)))
$noop(# release track name path variable, sort out characters)
$set(_releasetrack,$replace($strip($rreplace(%title%,%_unwantedchars%,)), ,_))
$noop(# build the full path up from the variables set above)
%_releaseartist%/ %_releaseartist%-%_releasedate%%_catalognumber%%_releasealbum%/ %_releaseartist%-%_releasedate%%_releasealbum%-%_releasediscnum%%_releasetracknum%-%_trackartist%%_releasetrack%
Workings out on https://wiki.thingsandstuff.org/Tagging_script
Also, some of https://github.com/murdos/musicbrainz-userscripts have been handy