Currently, when a brush preset uses a pattern, whole pattern image is saved inside the kpp file. It creates two issues: brush presets use unnecessary higher disk space and kpp files over a certain filesize (somewhere around 6.5 MB) don't load when program starts (preset is not in the brush presets list) - it happens when a texture is big in size. When pattern is missing from texture folder, brush preset informs about the missing resource anyway. My suggestion is remove packing pattern into a kpp file completely.
For this something else is needed as well: patterns used in brush presets should be saved to bundles, similar to how we save only the name of a brush tip, instead of the brush tip data.
It will also need some careful management if we don't want to break older brush packs. Setting to wish.