My own suggestion looks something like this:
Have 4 mini-events with weekly rotation during the weekends (Friday-Sunday)
Double XP/Gold/whatever-it-is weekend is common and familiar to many players (cod, mmos, etc)
It would incentivize players to make sure they play the game when it’s most beneficial, guarantee they:
1.spend they energy
2. finish weeklies by the end of the week
3. Possibly will be incentivized to top-up their energy by using gems (could lead to paying $$$ for extra gems)
It will also allow everyone to properly prepare for each event and fits the grind system and also would make it slightly easier to approach.
Example 1: If I know that double crimson souls happens last weekend of the month, I have time to stock up on torches.
Example 2: if I know when each mini-event is happening, I, as a player, would have means to be able to structure my progression (1st week I focus on acquiring gold, 2nd week I focus on acquiring materials, 3rd week I focus on doing monster caves and getting more souls, 4th week I do arena) by the end of the month I would have bunch of stuff necessary to properly progress and level up my gear, weapons, heroes etc