Das Tag +1 Problem kannst du recht elegant lösen.
Variable "Tageszeit" beinhaltet die Anzahl Minuten des Tages ab Mitternacht. Zeitfortschritt bedeutet somit nichts anderes als Zeit + X Minuten.
Du rechnest also die hinzukommenden Minuten der Variable "Tageszeit" hinzu und überprüfst, ob das Ergebnis 1440 (=1 Tag) übersteigt. Wenn ja, rechnest du minus 1440 und erhöhst die Variable "Tage" um 1. Dies wiederholst du solange, bis die Variable "Tageszeit" unter 1440 liegt.
Voilà
Von dem her kannst du ruhig Quests von der Anzahl vergangenen Tagen abhängig machen.
Was ich dir empfehle: kennzeichne jede Quest mit dem empfohlenen Spielerlevel. So sieht der Spieler sofort, ob er dieser Quest gewachsen ist oder nicht.