It will be an equation where points
and time are factors in it however time will be a much less significant part of it compared to the points factor. They should make it purely time based however it isnt.
Edit
'The minimum morale is 25%, there will be no penalty until the attacker exceeds 3 times the points of the defender, and every 5 days that the defender has been playing will increase the attacker's morale by 1%, up to 50%'
Here is the equation and thread:
https://forum.tribalwars.co.uk/showthread.php?7211-Calculation-Morale
morale = 3 * defenderPoints / attackerPoints + 0.25;
if(morale < 0.5){
morale += daysPlayed / 500;
if(morale > 0.5)
morale = 0.5;
step 1) morale = 3*[defender points]/[attacker points] + 0.25
step 2) if the morale is less than 50%, then proceed to step 3. If the morale is greater than or equal to 50%, then skip ahead to step 5.
step 3) add [days played]/500 to the morale from step 1
step 4) if the morale from step 3 is greater than 50%, change it to 50%.
step 5) you now have the final morale.
So basically time-based morale is only really good for mopping up noobs who have been sitting around for a while; early game it doesn't help you as enough time hasn't elapsed...