diff --git a/xtrn/chickendelivery/service.js b/xtrn/chickendelivery/service.js
index d28d164df4ed0aa9fd3b8ea9ec067df3a4d665b2..f1edf81cdebf1cda1c8ef2b8a431264077344ed8 100644
--- a/xtrn/chickendelivery/service.js
+++ b/xtrn/chickendelivery/service.js
@@ -114,8 +114,8 @@ var cleanUp = function() {
 	jsonClient.disconnect();
 }
 
-if(system.lastuser < 1)
-	exit();
+while(system.lastuser < 1)
+	mswait(15000);
 
 try {
 	initJson();
diff --git a/xtrn/lemons/service.js b/xtrn/lemons/service.js
index 060bd157e584877a2cd49fd859767ea3b6905293..7f73e8e7c51b8414ff4efc34993d7ed8eae00c86 100644
--- a/xtrn/lemons/service.js
+++ b/xtrn/lemons/service.js
@@ -160,6 +160,9 @@ var pushLevels = function() {
 // Set things up
 var init = function() {
 
+	while(system.lastuser < 1)
+		mswait(15000);
+
 	// Load the server config if it exists, or fake it if not
 	if(file_exists(root + "server.ini")) {
 		var f = new File(root + "server.ini");
@@ -228,9 +231,6 @@ var cleanUp = function() {
 	jsonClient.disconnect();
 }
 
-if(system.lastuser < 1)
-	exit();
-
 // Try to do things, log an error if necessary
 try {
 	init();
diff --git a/xtrn/syncwall/service.js b/xtrn/syncwall/service.js
index b49f28dd48e710e921900b8414f81feab5c2a35c..7bf0b6e1efd87fc68fa3a4f90257108150acc747 100644
--- a/xtrn/syncwall/service.js
+++ b/xtrn/syncwall/service.js
@@ -100,6 +100,9 @@ var processUpdate = function(update) {
 
 var init = function() {
 
+	while(system.lastuser < 1)
+		mswait(15000);
+
 	timer = new Timer();
 
 	var f = new File(root + "service.ini");
@@ -176,9 +179,6 @@ var cleanUp = function() {
 	jsonClient.disconnect();
 }
 
-if(system.lastuser < 1)
-	exit();
-
 try {
 	init();
 	main();