Unfortunately, hierarchicals in replace_metadata does affect the title page; I'm still finding fics labeled as "Fanfiction.Mass Effect."
However, it may be possible to use add_to_extra_valid_entries & include_in_entryname to accomplish what you want. I use it to remap categories to a few broad tags:
Code:
replace_metadata:
## Sorts anything other than a few selected categories into "Fanfiction.Other"
tagscategory=>^(?!.*(Half-Life|Portal|Mass Effect|The Elder Scrolls|Crossover)).*$=>Other
## Adds Fanfiction. to the beginning of tagcategory
tagscategory=>^(.*)$=>Fanfiction.\1
## Some more tagcategory standardization
tagscategory=>(Portal|Half-Life)=>Half-Life & Portal
tagscategory=>(Mass Effect: Andromeda|Mass Effect Trilogy)=>Mass Effect
include_metadata_post:
## Removes other tags if Crossover is a category
tagscategory==Fanfiction.Crossover&&category==Crossover
## Adds "Crossover" if more than one category after category replaces/includes/excludes.
add_category_when_multi_category: Crossover
# 'add_to_' concats on to existing param, thus the leading comma
add_to_extra_valid_entries:,tagscategory,
# tagscategory is a copy category for Fanfiction.category in tags
include_in_tagscategory:category
include_subject_tags: tagscategory