Trochę pokombinowałem i... udało się ;] Co prawda działa tylko w ColumnsUI, ale działa ;]
//ostatnio odtwarzany
$set_global(ostatnio_odtwarzany,
$ifequal($mod(%_system_year%,4),0,$puts(dni,$mul(%_system_year%,366)),$puts(dni,$mul(%_system_year%,365)))
$ifequal(%_system_month%,1,$puts(dni,$add($get(dni),$mul(%_system_month%,31))),)
$ifequal(%_system_month%,3,$puts(dni,$add($get(dni),$mul(%_system_month%,31))),)
$ifequal(%_system_month%,5,$puts(dni,$add($get(dni),$mul(%_system_month%,31))),)
$ifequal(%_system_month%,7,$puts(dni,$add($get(dni),$mul(%_system_month%,31))),)
$ifequal(%_system_month%,8,$puts(dni,$add($get(dni),$mul(%_system_month%,31))),)
$ifequal(%_system_month%,10,$puts(dni,$add($get(dni),$mul(%_system_month%,31))),)
$ifequal(%_system_month%,12,$puts(dni,$add($get(dni),$mul(%_system_month%,31))),)
$ifequal($mod(%_system_year%,4),0,
$ifequal(%_system_month%,2,$puts(dni,$add($get(dni),$mul(%_system_month%,29))),),
$ifequal(%_system_month%,2,$puts(dni,$add($get(dni),$mul(%_system_month%,28))),)
)
$ifequal(%_system_month%,2,$puts(dni,$add($get(dni),$mul(%_system_month%,30))),)
$ifequal(%_system_month%,4,$puts(dni,$add($get(dni),$mul(%_system_month%,30))),)
$ifequal(%_system_month%,6,$puts(dni,$add($get(dni),$mul(%_system_month%,30))),)
$ifequal(%_system_month%,9,$puts(dni,$add($get(dni),$mul(%_system_month%,30))),)
$ifequal(%_system_month%,11,$puts(dni,$add($get(dni),$mul(%_system_month%,30))),)
$puts(dni,$add($get(dni),%_system_day%))
$ifequal($mod($year(%LAST_PLAYED%),4),0,
$puts(dni_last,$mul($year(%LAST_PLAYED%),366)),$puts(dni_last,$mul($year(%LAST_PLAYED%),365)))
$ifequal($month(%LAST_PLAYED%),1,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),31))),)
$ifequal($month(%LAST_PLAYED%),3,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),31))),)
$ifequal($month(%LAST_PLAYED%),5,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),31))),)
$ifequal($month(%LAST_PLAYED%),7,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),31))),)
$ifequal($month(%LAST_PLAYED%),8,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),31))),)
$ifequal($month(%LAST_PLAYED%),10,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),31))),)
$ifequal($month(%LAST_PLAYED%),12,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),31))),)
$ifequal($mod($year(%LAST_PLAYED%),4),0,
$ifequal($month(%LAST_PLAYED%),2,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),29))),),
$ifequal($month(%LAST_PLAYED%),2,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),28))),)
)
$ifequal($month(%LAST_PLAYED%),2,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),30))),)
$ifequal($month(%LAST_PLAYED%),4,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),30))),)
$ifequal($month(%LAST_PLAYED%),6,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),30))),)
$ifequal($month(%LAST_PLAYED%),9,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),30))),)
$ifequal($month(%LAST_PLAYED%),11,$puts(dni_last,$add($get(dni_last),$mul($month(%LAST_PLAYED%),30))),)
$puts(dni_last,$add($get(dni_last),$day_of_month(%LAST_PLAYED%)))
$ifgreater($get(dni_last),0,$sub($get(dni),$get(dni_last)),)
)
Tak zwane rozwiązanie "na szybko". Byłoby prościej/krócej gdyby dało się odejmować od razu dwie daty i nie trzeba się martwić o lata przestępne i takie tam xD