diff --git a/pelita/game_master.py b/pelita/game_master.py
index 42490344..e73049f5 100644
--- a/pelita/game_master.py
+++ b/pelita/game_master.py
@@ -4,6 +4,7 @@ import abc
 import random
 import sys
 import time
+from warnings import warn
 
 from . import datamodel
 from .datamodel import Bot, CTFUniverse
@@ -19,6 +20,10 @@ class PlayerTimeout(Exception):
 class PlayerDisconnected(Exception):
     pass
 
+class NoFoodWarning(Warning):
+    """ Warning about a layout with no food. """
+    pass
+
 class GameMaster:
     """ Controller of player moves and universe updates.
 
@@ -158,6 +163,12 @@ class GameMaster:
             "noise_sight_distance": self.noiser and self.noiser.sight_distance
         }
 
+        # Check that both teams have food, and raise a warning otherwise
+        for (team_id, food_count) in enumerate(self.game_state["food_to_eat"]):
+            if food_count == 0:
+                warn("Layout contains no food for team {}.".format(team_id),
+                     NoFoodWarning)
+
     @property
     def game_time(self):
         return self.game_state["game_time"]

diff --git a/test/test_game_master.py b/test/test_game_master.py
index e943d70b..69277e31 100644
--- a/test/test_game_master.py
+++ b/test/test_game_master.py
@@ -4,7 +4,7 @@ import unittest
 import collections
 
 from pelita.datamodel import CTFUniverse
-from pelita.game_master import GameMaster, ManhattanNoiser, PlayerTimeout
+from pelita.game_master import GameMaster, ManhattanNoiser, PlayerTimeout, NoFoodWarning
 from pelita.player import AbstractPlayer, SimpleTeam, StoppingPlayer, SteppingPlayer
 from pelita.viewer import AbstractViewer
 
@@ -83,6 +83,26 @@ class TestGameMaster:
         with pytest.raises(ValueError):
             GameMaster(test_layout_4, [team_1, team_2, team_3], 4, 200)
 
+    def test_no_food(self):
+        team_1 = SimpleTeam(SteppingPlayer([]), SteppingPlayer([]))
+        team_2 = SimpleTeam(SteppingPlayer([]), SteppingPlayer([]))
+
+        both_starving_layout = (
+            """ ######
+                #0   #
+                #   1#
+                ###### """)
+        with pytest.warns(NoFoodWarning):
+            GameMaster(both_starving_layout, [team_1, team_2], 2, 1)
+
+        one_side_starving_layout = (
+            """ ######
+                #0  .#
+                #   1#
+                ###### """)
+        with pytest.warns(NoFoodWarning):
+            GameMaster(one_side_starving_layout, [team_1, team_2], 2, 1)
+
 class TestUniverseNoiser:
     def test_uniform_noise_manhattan(self):
         test_layout = (
@@ -106,7 +126,7 @@ class TestUniverseNoiser:
                      (4, 3), (5, 3), (6, 3), (7, 3), (7, 2),
                      (6, 1), (5, 1), (4, 1), (3, 1) ]
         unittest.TestCase().assertCountEqual(position_bucket, expected, position_bucket)
-    
+
 
     def test_uniform_noise_4_bots_manhattan(self):
         test_layout = (

Give a warning, when a layout without food is defined?
test/test_game_master.py::TestGame::test_lose_on_eating_all test/test_game_master.py::TestGame::test_lose_5_timeouts test/test_game_master.py::TestGame::test_draw_on_timeout test/test_game_master.py::TestGame::test_win_on_timeout_team_1 test/test_game_master.py::TestGame::test_win_on_eating_all test/test_game_master.py::TestGame::test_must_not_move_after_last_timeout test/test_game_master.py::TestGame::test_viewer_may_change_gm test/test_game_master.py::TestGame::test_failing_player test/test_game_master.py::TestGame::test_play_step test/test_game_master.py::TestGame::test_malicous_player test/test_game_master.py::TestGame::test_kill_count test/test_game_master.py::TestGame::test_game test/test_game_master.py::TestGame::test_win_on_timeout_team_0 test/test_game_master.py::TestUniverseNoiser::test_uniform_noise_manhattan test/test_game_master.py::TestUniverseNoiser::test_noise_manhattan_failure test/test_game_master.py::TestUniverseNoiser::test_uniform_noise_4_bots_no_noise_manhattan test/test_game_master.py::TestUniverseNoiser::test_uniform_noise_4_bots_manhattan test/test_game_master.py::TestAbstracts::test_AbstractViewer test/test_game_master.py::TestAbstracts::test_BrokenViewer test/test_game_master.py::TestGameMaster::test_too_many_registered_teams test/test_game_master.py::TestGameMaster::test_team_names_in_simpleteam test/test_game_master.py::TestGameMaster::test_no_food test/test_game_master.py::TestGameMaster::test_team_names test/test_game_master.py::TestGameMaster::test_too_few_registered_teams