diff --git a/src/misn_lua.c b/src/misn_lua.c
index 17b2abb..162fe98 100644
--- a/src/misn_lua.c
+++ b/src/misn_lua.c
@@ -424,7 +424,7 @@ static int misn_accept(lua_State* L) {
 static int misn_finish(lua_State* L) {
   int b;
 
-  if(lua_isboolean(L, -1)) b = lua_toboolean(L, -1);
+  if(lua_isboolean(L, 1)) b = lua_toboolean(L, 1);
   else {
     lua_pushstring(L, "Mission Done");
     lua_error(L); /* THERE IS NO RETURN! */
@@ -458,7 +458,7 @@ static int var_peek(lua_State* L) {
   int i;
   char* str;
 
-  if(lua_isstring(L, -1)) str = (char*) lua_tostring(L, -1);
+  if(lua_isstring(L, 1)) str = (char*) lua_tostring(L, 1);
   else {
     LLUA_DEBUG("Trying to peek a var with non-string name");
     return 0;
@@ -491,7 +491,7 @@ static int var_pop(lua_State* L) {
   int i;
   char* str;
 
-  if(lua_isstring(L, -1)) str = (char*) lua_tostring(L, -1);
+  if(lua_isstring(L, 1)) str = (char*) lua_tostring(L, 1);
   else {
     LLUA_DEBUG("Trying to pop a var with non-string name");
     return 0;
@@ -522,19 +522,19 @@ static int var_push(lua_State* L) {
   var.name = strdup(str);
 
   /* Store appropriate data. */
-  if(lua_isnil(L, -1))
+  if(lua_isnil(L, 1))
     var.type = MISN_VAR_NIL;
-  else if(lua_isnumber(L, -1)) {
+  else if(lua_isnumber(L, 1)) {
     var.type = MISN_VAR_NUM;
-    var.d.num = (double)lua_tonumber(L, -1);
+    var.d.num = (double)lua_tonumber(L, 1);
   }
-  else if(lua_isboolean(L, -1)) {
+  else if(lua_isboolean(L, 1)) {
     var.type = MISN_VAR_BOOL;
-    var.d.b = lua_toboolean(L, -1);
+    var.d.b = lua_toboolean(L, 1);
   }
-  else if(lua_isstring(L, -1)) {
+  else if(lua_isstring(L, 1)) {
     var.type = MISN_VAR_STR;
-    var.d.str = strdup((char*)lua_tostring(L, -1));
+    var.d.str = strdup((char*)lua_tostring(L, 1));
   } else {
     LLUA_DEBUG("Trying to push a var of invalid data type to stack");
     return 0;
@@ -598,9 +598,9 @@ static int player_addCargo(lua_State* L) {
 
   LLUA_MIN_ARGS(2);
 
-  if(lua_isstring(L, -2)) cargo = commodity_get((char*) lua_tostring(L, -2));
+  if(lua_isstring(L, 2)) cargo = commodity_get((char*) lua_tostring(L, 1));
   else return 0;
-  if(lua_isnumber(L, -1)) quantity = (int)lua_tonumber(L, -1);
+  if(lua_isnumber(L, 2)) quantity = (int)lua_tonumber(L, 2);
   else return 0;
 
   ret = pilot_addMissionCargo(player, cargo, quantity);
@@ -616,7 +616,7 @@ static int player_rmCargo(lua_State* L) {
   
   LLUA_MIN_ARGS(1);
 
-  if(lua_isnumber(L, -1)) id = (unsigned int) lua_tonumber(L, -1);
+  if(lua_isnumber(L, 1)) id = (unsigned int) lua_tonumber(L, 1);
   else return 0;
 
   ret = pilot_rmMissionCargo(player, id);
@@ -631,7 +631,7 @@ static int player_pay(lua_State* L) {
 
   LLUA_MIN_ARGS(1);
 
-  if(lua_isnumber(L, -1)) money = (int) lua_tonumber(L, -1);
+  if(lua_isnumber(L, 1)) money = (int) lua_tonumber(L, 1);
   else return 0;
 
   player->credits += money;
@@ -654,10 +654,10 @@ static int player_modFaction(lua_State* L) {
   LLUA_MIN_ARGS(2);
   int f, mod;
 
-  if(lua_isstring(L, -2)) f = faction_get(lua_tostring(L, -2));
+  if(lua_isstring(L, 1)) f = faction_get(lua_tostring(L, 1));
   else LLUA_INVALID_PARAMETER();
 
-  if(lua_isnumber(L, -1)) mod = (int)lua_tonumber(L, -1);
+  if(lua_isnumber(L, 2)) mod = (int)lua_tonumber(L, 2);
   else LLUA_INVALID_PARAMETER();
 
   faction_modPlayer(f, mod);
@@ -669,7 +669,7 @@ static int player_getFaction(lua_State* L) {
   LLUA_MIN_ARGS(1);
   int f;
 
-  if(lua_isstring(L, -1)) f = faction_get(lua_tostring(L, -1));
+  if(lua_isstring(L, 1)) f = faction_get(lua_tostring(L, 1));
   else LLUA_INVALID_PARAMETER();
   lua_pushnumber(L, faction_getPlayer(f));
 
@@ -816,9 +816,9 @@ static int pilot_rename(lua_State* L) {
   unsigned int id;
   Pilot* p;
 
-  if(lua_isnumber(L, -2)) id = (unsigned int) lua_tonumber(L, -2);
+  if(lua_isnumber(L, 1)) id = (unsigned int) lua_tonumber(L, 1);
   else LLUA_INVALID_PARAMETER();
-  if(lua_isstring(L, -1)) name = (char*) lua_tostring(L, -1);
+  if(lua_isstring(L, 2)) name = (char*) lua_tostring(L, 2);
   else LLUA_INVALID_PARAMETER();
 
   p = pilot_get(id);