diff --git a/src/g_game.c b/src/g_game.c
index 6b7356c524c2a97f089f237ac83158081207299f..10bec888f3d87589d56b7a3b89ff3b1b07e6a94c 100644
--- a/src/g_game.c
+++ b/src/g_game.c
@@ -1678,7 +1678,7 @@ void G_BuildTiccmd(ticcmd_t *cmd, INT32 realtics, UINT8 ssplayer)
 	// At this point, cmd doesn't contain the final angle yet,
 	// So we need to temporarily transform it so Lua scripters
 	// don't need to handle it differently than in other hooks.
-	if (gamestate == GS_LEVEL)
+	if (addedtogame && gamestate == GS_LEVEL)
 	{
 		INT16 extra = ticcmd_oldangleturn[forplayer] - player->oldrelangleturn;
 		INT16 origangle = cmd->angleturn;
diff --git a/src/lua_script.c b/src/lua_script.c
index bc88928f3f2e0e786d12c9e941e87dc875d3ce48..7fd5a98e6f71620ad4c89eff58e71e222773b622 100644
--- a/src/lua_script.c
+++ b/src/lua_script.c
@@ -333,7 +333,7 @@ int LUA_PushGlobals(lua_State *L, const char *word)
 		return 1;
 	// local player variables, by popular request
 	} else if (fastcmp(word,"consoleplayer")) { // player controlling console (aka local player 1)
-		if (consoleplayer < 0 || !playeringame[consoleplayer])
+		if (!addedtogame || consoleplayer < 0 || !playeringame[consoleplayer])
 			return 0;
 		LUA_PushUserdata(L, &players[consoleplayer], META_PLAYER);
 		return 1;