Which proxy pattern to use for a dApp that'll use the same proxy for multiple implementations?

I'm making a gaming DApp that consists of multiple contracts that work for the same game's ecosystem. I want to make the contracts upgradable and hence am looking for the best proxy pattern such that I can make one proxy that will be delegating calls to different implementations.
I was looking at the Diamond Structure for implementing this pattern.
Are they any better alternatives? Which proxy pattern would best suit my purpose?
Suggestions are well appreciated. :smiley: