make an array of 20 latest mods, 10 styles, 10 hacks, then serialize that.
then in real time, loop through that array to give you the ten latest results, if you got the filter, you ignore the styles if not then you include them. it's still the same amount of queries as before, just like 10 extra lines of code max.
Or index the array differently, have a deep array with hacks and styles as master array indexers then autonumber within those arrays.
For all the sense that made.
I don't see how it would require more than a rewrite of the line that makes the cache array, as that could check parent forum ID.