diff --git a/npc/Changelog.txt b/npc/Changelog.txt
index 4ef2a5ec67..e0548a1d17 100644
--- a/npc/Changelog.txt
+++ b/npc/Changelog.txt
@@ -31,6 +31,16 @@ Evera
 
 Date		Added
 ======
+05/31	* Now re-using one variable MISC_QUEST for such quests: [Lupus]
+	  Morgenstein, Nifl Witch, Edgar's Offer, Prontera Culvert,
+	  Juice Maker, Tempestra, 
+	- replaced BUNYBND with @BUNYBND
+	- added a special global function "F_ClearGarbage" function [Lupus]
+	  that converts old quest variables into MISC_QUEST bits;
+	  clears outdated, wasted variables. Temporary added its calls into Warpra & Kafra
+	IMPORTANT! Update all your quests and Global_Functions.txt
+		If you continue using not updated Quests scripts, it could cause
+		some exploits or the passed quests reset
 05/30
 	* Fixed Jawaii Classic Suite NPC warping directly ontop of a warp [Evera]
 	* Fixed the Umbala Skeleton Gate thanks to LightFighter and Naf- [Playtester]
diff --git a/npc/cities/izlude.txt b/npc/cities/izlude.txt
index 1b3c82649f..15dbb03308 100644
--- a/npc/cities/izlude.txt
+++ b/npc/cities/izlude.txt
@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= kobra_k88
 //===== Current Version: ===================================== 
-//= 1.4
+//= 1.5
 //===== Compatible With: ===================================== 
 //= eAthena 7.15 +
 //===== Description: ========================================= 
@@ -13,8 +13,9 @@
 //= 1.1 fixed 2 zeny bugs/checks [Lupus]
 //= 1.2 Fixed a lot of typo�s [Nexon]
 //= 1.3 Removed callfunc Is_####_Class in favor of baseClass [Silentdragon]
-//= 1.4 Added a Jawaii related npc [MasterOfMuppets]
-//= 1.4a Fixed a small bug to the Jawaii warper, thanks to reddozen and Silent [MasterOfMuppets]
+//= 1.4 Added a Jawaii related npc. 1.4a Fixed a small bug to
+//=	the Jawaii warper, thanks to reddozen and Silent [MasterOfMuppets]
+//= 1.5 Replaced iz_move_alberta with MISC_QUEST & 16 [Lupus]
 //============================================================
 
 
@@ -828,7 +829,7 @@ M_Menu:
 			close;
 
 		sM_1:
-			if (iz_move_alberta == 1) goto sM_2;
+			if (MISC_QUEST & 16) goto sM_2;
 			mes "[Edgar]";
 			mes "Okay...";
 			mes "You don't want to walk AND you've";
@@ -843,7 +844,7 @@ M_Menu:
 			next;
 			menu "Alrighty~?",-,"Bah, what a rip off!!",sm_1b;
 			
-				set iz_move_alberta,1;
+				set MISC_QUEST,MISC_QUEST | 16;
 				if(Zeny < 250) goto sl_NoZeny;
 				set Zeny, Zeny - 250;
 				warp "alberta.gat",195,164;
@@ -978,8 +979,6 @@ s_Go:
 }
 			else if(Zeny < 100000)
 {
-				
-
 					mes "[Marry Happy]";
 					mes "I've explained about the trip to 'Jawaii'.";
 					mes "You'll need 100,000 z.";
diff --git a/npc/cities/morocc.txt b/npc/cities/morocc.txt
index 6d9c52ca39..2f329318d0 100644
--- a/npc/cities/morocc.txt
+++ b/npc/cities/morocc.txt
@@ -448,9 +448,10 @@ moc_fild16.gat,199,212,4	script	Hashisid	48,{
 
 moc_fild16.gat,195,281,4	script	Assassin Guardian#1::SinGuard	707,{
 	mes "[Assassin Guardian]";
-	if(BaseJob == Job_Assassin) mes "Welcome.";
-	if(BaseJob == Job_Assassin) close;
-
+	if(BaseJob == Job_Assassin) {
+		mes "Welcome.";
+		close;
+	}
 	set @temp, rand(1,4);
 	if(@temp == 1) mes "........";
 	if(@temp == 2) mes "Hmmm..........";
diff --git a/npc/cities/niflheim.txt b/npc/cities/niflheim.txt
index 83fce64f05..45c768c753 100644
--- a/npc/cities/niflheim.txt
+++ b/npc/cities/niflheim.txt
@@ -4,7 +4,7 @@
 //= Fyrien, Dizzy, PKGINGO
 //= Official NPCs translated and re-edited by Celest
 //===== Current Version: ===================================== 
-//= 1.08
+//= 1.1
 //===== Compatible With: ===================================== 
 //= Any eAthena Version; Niflheim Required
 //===== Description: ========================================= 
@@ -19,6 +19,7 @@
 //= 1.07 Fixed typos [Nexon]
 //= 1.08 Commented "Traveler" out as it is not official & we have correct Bungee quest in. 
 //=     Also removed TODO, as they are already done. [Vicious_Pucca]
+//= 1.1 Replaced nif_q_done with MISC_QUEST & 32. nif_t -> @nif_t [Lupus]
 //============================================================ 
 
 //prontera.gat,164,161,4	script	Traveler::NifTrav	68,{
@@ -247,7 +248,7 @@ L_book2:
 	close;
 
 L_book3:
-	set nif_t,0;
+	set @nif_t,0;
 	set @nif_random1,rand(1,10);
 	mes "[Aesop Bruce]";
 	mes "Ahahaha.... I see you are brave!!";
@@ -260,7 +261,7 @@ L_MENU1:
 	goto L_MENU2;
 
 	L_MENU1_2:
-	set nif_t,nif_t + 10;
+	set @nif_t,@nif_t + 10;
 	goto L_MENU2;
 
 	L_MENU1_3: 
@@ -276,7 +277,7 @@ L_MENU2:
 	goto L_MENU3;
 
 	L_MENU2_3:
-	set nif_t,nif_t + 10;
+	set @nif_t,@nif_t + 10;
 	goto L_MENU3;
 
 L_MENU3:
@@ -292,12 +293,12 @@ L_MENU3:
 	goto L_score;
 
 	L_MENU3_4:
-	set nif_t,nif_t + 10;
+	set @nif_t,@nif_t + 10;
 	goto L_score;
 
 
 L_score:
-	if (nif_t == 30) goto L_sucess1;
+	if (@nif_t == 30) goto L_sucess1;
 	mes "[Aesop Bruce]";
 	mes "Hahahaha!! Your prayers were wrong!!";
 	mes "Time to face deathohohohoho,";
@@ -341,7 +342,7 @@ niflheim.gat,224,243,3	script	Alager	795,{
 	mes "I'm going to eat you...";
 	next;
 	mes "-Chomp bite slurp-";
-	if (nif_quest1 == 1 || nif_q_done == 1) goto L_end;
+	if (nif_quest1 == 1 || (MISC_QUEST & 32)) goto L_end;
 	percentheal -60,0;
 	next;
 	mes "[Alager]";
@@ -375,7 +376,7 @@ nif_in.gat,105,81,3	script	Grey	794,{
 	mes "^FF0000The beautiful melody surrounding thy soul,^000000";
 	mes "^FF0000Is the key from Lord Death's wrath.^000000";
 	next;
-	if (nif_quest2 == 1 || nif_q_done == 1) goto L_end;
+	if (nif_quest2 == 1 || (MISC_QUEST & 32)) goto L_end;
 	set @nif_random,rand(1,4);
 	mes "[Grey]";
 	mes "Heh, let me give you a little exam!";
@@ -441,7 +442,7 @@ nif_in.gat,31,20,3	script	Kurtz	794,{
 	mes "Business nowadays is really bad...";
 	mes "Back when I used to be alive,";
 	mes "my business was this bad too~!";
-	if (nif_quest3 == 1 || nif_q_done == 1) close;
+	if (nif_quest3 == 1 || (MISC_QUEST & 32)) close;
 	next;
 	mes "[Kurtz]";
 	mes "Hey! You there! Dump this for me";
@@ -456,8 +457,7 @@ nif_in.gat,31,20,3	script	Kurtz	794,{
 }
 
 niflheim.gat,169,71,5	script	#1	111,2,2{
-	if (nif_q_done == 1) end;
-	if (nif_quest4 == 1) end;
+	if (MISC_QUEST & 32 || nif_quest4 == 1) end;
 
 	mes "- In the nearby tombs -";
 	mes "- you see something -";
@@ -474,7 +474,7 @@ L_end:
 }
 
 niflheim.gat,208,103,5	script	#2	111,2,2{
-	if (nif_q_done == 1) end;
+	if (MISC_QUEST & 32) end;
 	if (nif_quest5 == 1) goto L_key2;
 	if (nif_quest5 >= 2) end;
 
@@ -505,14 +505,14 @@ L_end:
 
 nif_in.gat,115,181,5	script	#4	111,3,3{
 	mes "- You see a huge old piano -";
-	if (nif_q_done==0) mes "- with a few keys missing  -";
-	if (nif_q_done==1) mes "- with one key missing -";
-	if (nif_q_done==0 && countitem(7184) > 5) goto L_event;//Items: Piano Key,
+	if ((MISC_QUEST & 32)==0) mes "- with a few keys missing  -";
+	if (MISC_QUEST & 32) mes "- with one key missing -";
+	if ((MISC_QUEST & 32)==0 && countitem(7184) > 5) goto L_event;//Items: Piano Key,
 	close;
 
 L_event:
 	delitem 7184,6;//Items: Piano Key,
-	set nif_q_done, 1;
+	set MISC_QUEST,MISC_QUEST | 32;
 	//clear auxiliary vars now
 	set nif_quest1, 0;
 	set nif_quest2, 0;
@@ -530,7 +530,7 @@ L_event:
 }
 
 nif_in.gat,118,151,5	script	#5	111,3,3{
-	if (nif_q_done != 1) end;
+	if((MISC_QUEST & 32)==0) end;
 
 	mes "- The very moment the long shadow -";
 	mes "- of your body falls on the piano -";
diff --git a/npc/cities/prontera.txt b/npc/cities/prontera.txt
index af76c62d10..22701b18b2 100644
--- a/npc/cities/prontera.txt
+++ b/npc/cities/prontera.txt
@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= kobra_k88
 //===== Current Version: ===================================== 
-//= 1.5a
+//= 1.6
 //===== Compatible With: ===================================== 
 //= eAthena 7.15 +
 //===== Description: ========================================= 
@@ -14,6 +14,7 @@
 //= Spellchecked [massdriller]
 //= 1.4 Optimized. Novices > 20 BaseJob can go to Culvert, too [Lupus]
 //= 1.5a Added a Jawaii related npc [MasterOfMuppets]
+//= 1.6 Replaced sewer_prt with (MISC_QUEST & 8) [Lupus]
 //============================================================
 
 
@@ -126,14 +127,8 @@ prontera.gat,102,287,5	script	Shuger	98,{
 // ------------------------------------------------------------------------------------------- Culvert -------------------------------------------------------------------------------\\
 // Culvert Guardian ----------------------------------------------------
 prt_fild05.gat,270,212,5	script	Culvert Guardian	105,{
-	if(sewer_prt == 1) goto L_WARP;
 	mes "[Culvert Guardian]";
-	mes "Sorry, but only volunteers for the Culvert Campaign can go inside.";
-	mes "Speak with the ^000077Recruiter^000000 about volunteering.  He's located in the ^ff0000Prontera Chivalry^000000.";
-	close;
-
-	L_WARP:
-		mes "[Culvert Guardian]";
+	if(MISC_QUEST & 8) {
 		mes "Here you are. The entrance of the Culvert. Are you sure you want to Go inside?";
 		next;
 		menu "Sure.",-,"Quit.",M_END;
@@ -141,12 +136,16 @@ prt_fild05.gat,270,212,5	script	Culvert Guardian	105,{
 			warp "prt_sewb1.gat",131,247;
 		M_END:
 			close;
+	}
+	mes "Sorry, but only volunteers for the Culvert Campaign can go inside.";
+	mes "Speak with the ^000077Recruiter^000000 about volunteering.  He's located in the ^ff0000Prontera Chivalry^000000.";
+	close;
 }
 
 // Recruiter -----------------------------------------------------------
 prt_in.gat,88,105,2	script	Recruiter	105,{
-	if(sewer_prt == 1) goto L_WARP;
 	mes "[Recruiter]";
+	if(MISC_QUEST & 8) goto L_WARP;
 	mes "Let me inform about the official Notice from the Capital Defence Headquarter of Rune-Midgard Kingdom";
 	next;
 	mes "[Recruiter]";
@@ -188,14 +187,13 @@ prt_in.gat,88,105,2	script	Recruiter	105,{
 		next;
 		mes "[Recruiter]";
 		mes "3 Red Potions, 1 Milk, and 1 Orange Potion for an emergency.";
-		set sewer_prt,1;
+		set MISC_QUEST,MISC_QUEST | 8;
 		getitem 501,3;
 		getitem 519,1;
 		getitem 502,1;
 		next;
-		
-	L_WARP:
 		mes "[Recruiter]";
+	L_WARP:
 		mes "Are you ready? I will warp you to the Culvert.";
 		next;
 		warp "prt_fild05.gat",274,208;
diff --git a/npc/custom/warper/warper.txt b/npc/custom/warper/warper.txt
index eb0b2b1252..c9b74f1a17 100644
--- a/npc/custom/warper/warper.txt
+++ b/npc/custom/warper/warper.txt
@@ -3,7 +3,7 @@
 //===== By: ==================================================
 //= Darkchild
 //===== Current Version: =====================================
-//= 1.6a
+//= 1.7
 //===== Compatible With: =====================================
 //= Any eAthena Version;
 //===== Description: =========================================
@@ -20,6 +20,7 @@
 //= 1.5 Added this NPC to more places [Lupus]
 //= 1.6 Rewrote a lot. Changed the sprite, some locations. [Poki#3]
 //= TODO Add an option for selecting the level of the dungeon. [Poki#3]
+//= 1.7 Temporary? Added F_ClearGarbage to clear unused/outdated variables [Lupus]
 //============================================================
 //============================================================
 //= To allow selecting the Level of the Dungeon you want to
@@ -28,6 +29,9 @@
 
 -	script	Warp Agent::warpra	859,{
 //	set @lvlselect,0;
+
+	callfunc "F_ClearGarbage"; //Clear outdated, unused variables
+
 	mes "[Warp Agent]";
 	mes "Hello,";
 	mes "I can teleport you to any Town or Dungeon!";
diff --git a/npc/jobs/2-2/alchemist.txt b/npc/jobs/2-2/alchemist.txt
index 6848a8346d..e76de06517 100644
--- a/npc/jobs/2-2/alchemist.txt
+++ b/npc/jobs/2-2/alchemist.txt
@@ -1,10 +1,9 @@
 //===== eAthena Script ======================================= 
 //= Alchemist Job Quest
 //===== By: ==================================================
-//= nestor_zulueta (Fusion)
-//= converted by Darkchild
+//= nestor_zulueta (Fusion), converted by Darkchild
 //===== Current Version: ===================================== 
-//= 2.1
+//= 2.2
 //===== Compatible With: ===================================== 
 //= eAthena 1.0 +
 //===== Description: ========================================= 
@@ -23,7 +22,7 @@
 //= to go. [Lupus]
 //= 1.6a fixed some wrong answers, thanks to zlider for info [Lupus]
 //= 2.0 Changed numbers to constants. [Vicious]
-//= 2.1 Got rid of 'al_morgen' var [Lupus]
+//= 2.2 Got rid of 'al_morgen' var. Now uses (MISC_QUEST & 4) [Lupus]
 //============================================================ 
 
 
@@ -775,7 +774,7 @@ L_Start:
 		mes "If you dont have business here just go away. Ok!!!";
 		close;
 L_Check:	
-	if(MORGEN != 3) goto L_NotRdy;
+	if((MISC_QUEST & 4)==0) goto L_NotRdy;
 	mes "Yes, cut the Tentacle..";
 	mes "and mix some Sticku Mucus,";
 	mes "Jellopy solution in the test tube Darn, where did the Medicine Bowl go...";
@@ -833,7 +832,6 @@ L_Result:
 	mes "Go out and to the room next to here.  ^5533FFNicholas^000000 probably has more to teach you than me.";
 	set ALCH_Q,5;
 	set ALCH_Q2,0;
-	set al_morgen, 0;
 	close;
 
 	L_Failed:
diff --git a/npc/kafras/functions_kafras.txt b/npc/kafras/functions_kafras.txt
index 0bd55246e2..07afc66d45 100644
--- a/npc/kafras/functions_kafras.txt
+++ b/npc/kafras/functions_kafras.txt
@@ -33,6 +33,7 @@
 //= 5.0 Fixed the close2;....close; end; lines. Who let them slip away? =/ [erKURITA]
 //=	  Also, the kafra upon warp was giving back the zeny. Removed. [erKURITA]
 //= 5.1 Optimized a little, added no tele/save arg's [Evera]
+//= 5.1a Temporary? Added F_ClearGarbage to clear unused/outdated variables [Lupus]
 //============================================================ 
 
 
@@ -43,6 +44,9 @@
 //==========================================================================
 function	script	F_Kafra	{
 	set @kafPass, 0;
+
+	callfunc "F_ClearGarbage"; //Clear outdated, unused variables
+
 	mes "[Kafra]";
 	switch(getarg(0)){
 		default:
diff --git a/npc/other/Global_Functions.txt b/npc/other/Global_Functions.txt
index b064d538be..548da4eb9d 100644
--- a/npc/other/Global_Functions.txt
+++ b/npc/other/Global_Functions.txt
@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= Lupus, kobra_k88
 //===== Current Version: ===================================== 
-//= 1.8
+//= 1.9
 //===== Compatible With: ===================================== 
 //= eAthena 1.0
 //===== Description: ========================================= 
@@ -19,6 +19,7 @@
 //= Moved here useful function 'getJobName'
 //= 1.7 Added "F_ItemName" function, added a great sample for "F_ItemName"
 //= 1.8 Added Job Vars clear for Extended classes: TK,SL,SG [Lupus]
+//= 1.9 Added "F_ClearGarbage" func that clears outdated, wasted variables [Lupus]
 //============================================================ 
 
 
@@ -57,6 +58,17 @@ function	script	F_ClearJobVar	{
 	set TAEK_Q,0;
 	set STGL_Q,0;
 	set SOUL_Q,0;
+}
+
+function	script	F_ClearGarbage	{
+	// Clear outdated global VARS
+	if(MARIANNE) {set MISC_QUEST,MISC_QUEST | 1;}
+	set MEAT,0; set MORRISON,0; set MARIANNE,0;
+	set BUNYBND,0; set TEMPESTRA,0; 
+	set sewer_prt,0; set iz_move_alberta,0;
+	if(nif_q_done) {set nif_q_done,0; set MISC_QUEST,MISC_QUEST | 64;}
+	if(MORGEN >= 2) {set MISC_QUEST,MISC_QUEST | 4;}
+	set MORGEN,0; set nif_t,0;
 	return;
 }
 
diff --git a/npc/quests/bunnyband.txt b/npc/quests/bunnyband.txt
index e3635ce625..3f9cbd3bf9 100644
--- a/npc/quests/bunnyband.txt
+++ b/npc/quests/bunnyband.txt
@@ -3,22 +3,23 @@
 //===== By: ================================================== 
 //= eAthena Dev Team
 //===== Current Version: ===================================== 
-//= v1.3
+//= v1.4
 //===== Compatible With: ===================================== 
 //= eAthena 7.15 +
 //===== Description: ========================================= 
 //=
 //===== Additional Comments: ================================= 
-//= v1.1 using duplicate command
+//= 1.1 using duplicate command
 //= 1.2 Fixed NPC location, removed NPC dupes [Lupus]
 //= 1.3 RE-Fixed exploit V_V, also cleared used VAR [Lupus]
+//= 1.4 replaced BUNYBND with @BUNYBND [Lupus]
 //============================================================ 
 
 
 // Alberta ------------------------------------------------------------------------------------------------------------------------------------------
 alberta.gat,23,232,1	script	Kafra Corp. Rep.#1::KCRep	83,{
 	mes "[Kafra Corp. Rep.]";
-	if (BUNYBND) goto L_Check;
+	if (@BUNYBND) goto L_Check;
 	mes "^529DFFSpecial Event, ^FF0000Bunny Band ^529DFFQuest!!^000000";
 	next;
 	menu "Information",-, "Join",M_Join, "Cancel",M_End;
@@ -50,7 +51,7 @@ alberta.gat,23,232,1	script	Kafra Corp. Rep.#1::KCRep	83,{
 
 		mes "[Kafra Corp. Rep.]";
 		mes "Thank you for participating in the event. Please come back when you have gathered all of the items.";
-		set BUNYBND, 1;
+		set @BUNYBND, 1;
 		close;
 
 	M_End:
@@ -70,7 +71,7 @@ alberta.gat,23,232,1	script	Kafra Corp. Rep.#1::KCRep	83,{
 		mes "[Kafra Corp. Rep.]";
 		mes "Tah dah!!! Here is your ^FF0000Bunny Band^000000... Please take it!";
 		getitem 2214,1;
-		set BUNYBND,0;
+		set @BUNYBND,0;
 		next;
 		mes "[Kafra Corp. Rep.]";
 		mes "We appreciate your participation in this special event. Thank you and enjoy your Bunny Band!";
diff --git a/npc/quests/counteragent_mixture.txt b/npc/quests/counteragent_mixture.txt
index d24bb0f04e..1e82c78599 100644
--- a/npc/quests/counteragent_mixture.txt
+++ b/npc/quests/counteragent_mixture.txt
@@ -4,7 +4,7 @@
 //= kobra_k88
 //= added some dialogs for Morgenstein by Komurka
 //===== Current Version: ===================================== 
-//= 1.8
+//= 1.9
 //===== Compatible With: ===================================== 
 //= eAthena 7.15 +
 //===== Description: ========================================= 
@@ -19,6 +19,7 @@
 //= 1.6 Fixed some bugs, also related to Alch Job quest [Lupus]
 //= 1,7 Fixed exploit [Lupus]
 //= 1.8 Got rid of 'al_morgen' var [Lupus]
+//= 1.9 now uses (MISC_QUEST & 4) bit
 //============================================================ 
 
 
@@ -53,7 +54,7 @@ M_Menu2:
 		goto M_Menu;
 
 	M_Solut:
-		if(MORGEN==0)set MORGEN,1;
+		if((MISC_QUEST & 4)==0 && MORGEN==0)set MORGEN,1;
 		mes "[Merchant Louitz]";
 		mes "Apparently that scientist uses those solutions to make other agents and mixtures.";
 		mes "You should speak with ^0000ddAure Dupon^000000 in Geffen to find out more about it. ";
@@ -77,7 +78,7 @@ geffen.gat,181,114,4	script	Aure Dupon	55,{
 	mes "[Aure Dupon]";
 	mes "So... why did you stop me??";
 	emotion e_hmm;
-	if(MORGEN >= 1) goto M_Menu2;
+	if((MISC_QUEST & 4) || MORGEN) goto M_Menu2;
 M_Menu:
 	next;
 	menu "Talk",M_Talk,"Cancel",M_Cancel;
@@ -94,7 +95,7 @@ M_Menu2:
 		next;
 		mes "[Aure Dupon]";
 		mes "Would you be able to give up everything else in your life to achieve that goal? Even if it meant risking insanity??";
-		if(MORGEN>=1) goto M_Menu2;
+		if((MISC_QUEST & 4) || MORGEN) goto M_Menu2;
 		goto M_Menu;
 
 	M_Morgen:
@@ -115,8 +116,8 @@ M_Menu2:
 
 // Chemist Morgenstein -----------------------------------------------------------
 geffen_in.gat,141,140,2	script	Morgenstein	121,{
-	if(MORGEN == 2) goto L_0;
-	if(MORGEN == 3) goto L_1;
+	if(MORGEN >= 2) goto L_0;
+	if(MISC_QUEST & 4) goto L_1;
 
 	mes "[Chemist Morgenstein]";
 	mes "Heheheheheh... Sniff Sniff... I can smell something appetizing here.";
@@ -163,7 +164,8 @@ M_Menu:
 		mes "[Chemist Morgenstein]";
 		mes "I can make one for you right now,if you want?? Ahhh... Talking about my experiments and research makes me.... 'excited'.......";
 		mes "You too can feel my 'excitement' if you wish..... Ahhhhh.... I can make you feel...";
-		set MORGEN,3;
+		set MISC_QUEST,MISC_QUEST | 4;
+		set MORGEN,0;
 		close;
 
 L_1:
diff --git a/npc/quests/juice_maker.txt b/npc/quests/juice_maker.txt
index 93fd979680..3661408d43 100644
--- a/npc/quests/juice_maker.txt
+++ b/npc/quests/juice_maker.txt
@@ -3,13 +3,14 @@
 //===== By: ==================================================
 //= kobra_k88
 //===== Current Version: =====================================
-//= 1.7
+//= 1.8
 //===== Compatible With: =====================================
 //= eAthena 7.15 +
 //===== Description: =========================================
 //= 
 //===== Additional Comments: =================================
-//= Fully working
+//= Condition if done: (MISC_QUEST & 1)
+//= 
 //= 1.1 fixed input number check [Lupus]
 //= 1.2 fixed misplaced Grape<->Carrot juices [Lupus]
 //= 1.3 added a loopless menu 'as many as possible' [Lupus]
@@ -17,15 +18,17 @@
 //= subfunc.  Changed fruit amount needed to 1.[kobra_k88]
 //= Fixed exploits [Lupus]
 //= 1.6 fixed typo (where did @ipnut came from?) [Lance]
-//= 1.7 got rid of 2 vars: 'MEAT',"MARIANNE" [Lupus]
+//= 1.8 got rid of vars: 'MEAT',"MARIANNE","MORRISON"
+//= 	From now, all common quests start using bits of the
+//=	same variable MISC_QUEST [Lupus]
 //============================================================
 
 
 // Morrison ------------------------------------------------
 prt_in.gat,47,173,2	script	Morrison	97,{
 	mes "[Little Morrison]";
-	if(MORRISON > 10) goto L_GoAway;
-	if(MORRISON == 10) goto L_Candy;
+	if(MISC_QUEST&1 || @MORRISON > 10) goto L_GoAway;
+	if(@MORRISON == 10) goto L_Candy;
 
 	mes "Wahhhhh!!! Wahh... NO more! NO more!";
 	mes "I won't... eat anymore stupid ^0000ffFruit^000000 things!!";
@@ -66,7 +69,7 @@ prt_in.gat,47,173,2	script	Morrison	97,{
 		sM_Give:
 			if(countitem(517) == 0) goto L_GoAway; //Meat
 			delitem 517,1;	//Meat
-			set MORRISON,MORRISON+1;
+			set @MORRISON,@MORRISON+1;
 			mes "[Little Morrison]";
 			mes "Whoah~!!! It's real Meat, Meat!";
 			mes "Mmmm! It makes my mouth water.";
@@ -75,7 +78,7 @@ prt_in.gat,47,173,2	script	Morrison	97,{
 			close;
 
 		sM_Ignore:
-			set MORRISON,11;
+			set @MORRISON,11;
 			mes "[Little Morrison]";
 			mes "Boo...";
 			mes "Boo... Fine... Alright, Alright~!!! Selfish meanie!";
@@ -103,7 +106,7 @@ L_Candy:
 	next;
 	getitem 529,3;
 	getitem 530,1;
-	set MORRISON,0;
+	set @MORRISON,0;
 	mes "[Little Morrison]";
 	mes "It is from my secret stash of Candy that I hide from my Mom.  Since";
 	mes "you gave me some Meat, I will give you some candy." ;
@@ -114,8 +117,8 @@ L_Candy:
 // Housewife Marianne ---------------------------------------------------
 prt_in.gat,49,172,2	script	Housewife Marianne	53,{
 	mes "[Housewife Marianne]";
-	if(MORRISON > 10) goto L_Juice;
-	if(MORRISON) goto L_GaveMeat;
+	if(MISC_QUEST&1 || @MORRISON > 10) goto L_Juice;
+	if(@MORRISON) goto L_GaveMeat;
 
 	mes "Morrison!! Please eat some fruit will ya? Fruit~!";
 	mes "*Sob*~!! Like father like son...";
@@ -146,7 +149,7 @@ prt_in.gat,49,172,2	script	Housewife Marianne	53,{
 		close;
 	
 L_GaveMeat:
-	set MORRISON,0;
+	set @MORRISON,0;
 	mes "Oh MY GOD!!... Oh lord...";
 	emotion e_omg;
 	next;
@@ -159,7 +162,6 @@ L_GaveMeat:
 	close;
 
 L_Juice:
-	set MORRISON,20;
 	mes "Thank you for not giving my son any meat.  I'm trying to feed him";
 	mes "^0000ffFruits^000000 and vegetables, but this child doesn't want to eat";
 	mes "anything except Meat...";
@@ -177,15 +179,15 @@ L_Juice:
 	mes "[Housewife Marianne]";
 	mes "... Was is it...^ff0000Payon^000000...or ^ff0000Morroc^000000...?";
 	emotion e_hmm;
-	next;
+	set @MORRISON,0;
+	set MISC_QUEST,MISC_QUEST | 1;
 	close;
-
 }
 
 // Juicer Marx Hansen ---------------------------------------------------------
 payon_in03.gat,188,146,5	script	Juicer Marx Hansen	86,{
 	mes "[Juicer Marx Hansen]";
-	if(MORRISON == 20) goto L_Juice;
+	if(MISC_QUEST&1) goto L_Juice;
 	mes "Welcome to my shop. What brings you here?";
 	next;
 	menu "Conversation",-,"I am just looking around",M_End;
diff --git a/npc/quests/quests_alberta.txt b/npc/quests/quests_alberta.txt
index 86ed34041f..19482a93a6 100644
--- a/npc/quests/quests_alberta.txt
+++ b/npc/quests/quests_alberta.txt
@@ -3,7 +3,7 @@
 //===== By: ================================================== 
 //= kobra_k88
 //===== Current Version: ===================================== 
-//= 1.5
+//= 1.6
 //===== Compatible With: ===================================== 
 //= eAthena 1.0
 //===== Description: ========================================= 
@@ -14,10 +14,11 @@
 //= Hat of Sun God, Sunday Hat, Mage Hat, Magician Hat Quests
 //===== Additional Comments: ================================= 
 //= Fully working
-//= 1.1 Fixed Spore Doll exploit [Lupus], 1.2 Gramp's Tiger skin label bug
+//= 1.1 Fixed Spore Doll exploit, Gramp's Tiger skin label bug
 //= 1.3 Fixed item ID 7031 -> 7013
 //= 1.4 Fixed a bug, Fixed Exploits, Optimized [Lupus]
-//= 1.5 Turned TEMPESTRA -> @TEMPESTRA, fixed a typo [Lupus]
+//= 1.6 TEMPESTRA quest uses common quests variable MISC_QUEST 
+//=	Condition if done: (MISC_QUEST & 2) [Lupus]
 //============================================================ 
 
 
@@ -504,7 +505,7 @@ alberta.gat,135,79,3	script	Tempestra	71,{
 	mes "[Tempestra]";
 	mes "Ah...... Such a cool breeze.  It's good to be next to the sea.  I think it was the right choice for me to take a break from my business and come here.";
 	emotion e_ho;
-	if(@TEMPESTRA) goto sM_Menu;
+	if(MISC_QUEST & 2) goto sM_Menu;
 	next;
 	mes "[Tempestra]";
 	mes "Oh the sun is so bright today.  I'm glad I brought my hat.  If my skin is exposed to the sun like this everyday, I'm sure to get a sunburn.";
@@ -516,7 +517,7 @@ alberta.gat,135,79,3	script	Tempestra	71,{
 
 		if(countitem(503) < 1) goto L_NoPot;
 		delitem 503, 1;
-		set @TEMPESTRA, 1;
+		set MISC_QUEST,MISC_QUEST | 2;
 		mes "[Tempestra]";
 		mes "Oooh! Thank you so much.  I'm so glad to meet such a friendly person here....";
 		emotion e_thx;