diff --git a/out/main.js b/out/main.js
index badd00e41c32cb16db5ca10bacb37b4521e7c003..37abf5a9eca4aa804d426ce86949622785fd68d3 100644
--- a/out/main.js
+++ b/out/main.js
@@ -6817,21 +6817,32 @@ var $elm$core$List$filter = F2(
 			_List_Nil,
 			list);
 	});
-var $author$project$Main$generateObjectIdents = function (list) {
+var $author$project$Main$generateIconIdents = function (list) {
 	return A2(
 		$elm$core$List$indexedMap,
 		F2(
 			function (id, _char) {
-				if (_char.$ === 'ObjectIcon') {
-					var typeID = _char.a;
-					var x = _char.b;
-					var y = _char.c;
-					var t = _char.d;
-					var c = _char.e;
-					var ident = _char.f;
-					return A6($author$project$Model$ObjectIcon, typeID, x, y, t, c, id + 1);
-				} else {
-					return A6($author$project$Model$ObjectIcon, 0, '', '', '', $elm$core$Maybe$Nothing, 0);
+				switch (_char.$) {
+					case 'ObjectIcon':
+						var typeID = _char.a;
+						var x = _char.b;
+						var y = _char.c;
+						var t = _char.d;
+						var c = _char.e;
+						var ident = _char.f;
+						return A6($author$project$Model$ObjectIcon, typeID, x, y, t, c, id + 1);
+					case 'PlayerIcon':
+						var ident = _char.a;
+						var x = _char.b;
+						var y = _char.c;
+						var name = _char.d;
+						return A4($author$project$Model$PlayerIcon, id + 1, x, y, name);
+					default:
+						var ident = _char.a;
+						var x = _char.b;
+						var y = _char.c;
+						var name = _char.d;
+						return A4($author$project$Model$MonsterIcon, id + 1, x, y, name);
 				}
 			}),
 		list);
@@ -8119,7 +8130,14 @@ var $author$project$Main$update = F2(
 					_Utils_update(
 						model,
 						{
-							enemy: A2($elm_community$array_extra$Array$Extra$removeAt, index, model.enemy)
+							activeTooltip: '',
+							characterList: $author$project$Main$generateIconIdents(
+								A2(
+									$elm$core$List$filter,
+									$author$project$Main$isNotId(index + 1),
+									model.characterList)),
+							enemy: A2($elm_community$array_extra$Array$Extra$removeAt, index, model.enemy),
+							highlightedTableRow: 0
 						}),
 					$elm$core$Platform$Cmd$none);
 			case 'CharacterDeath':
@@ -8335,7 +8353,7 @@ var $author$project$Main$update = F2(
 									{
 										addCharacterIcon: $author$project$Model$DrawingInactive,
 										iconText: '',
-										objectIconList: $author$project$Main$generateObjectIdents(
+										objectIconList: $author$project$Main$generateIconIdents(
 											_Utils_ap(
 												model.objectIconList,
 												_List_fromArray(
@@ -8582,23 +8600,18 @@ var $author$project$Main$update = F2(
 				}
 			case 'ToolTipMsg':
 				var tooltip = msg.a;
+				var mouseInObjectIcon = msg.b;
 				if (tooltip === '') {
 					return _Utils_Tuple2(
 						_Utils_update(
 							model,
-							{
-								activeTooltip: '',
-								mouseInIcon: (tooltip === '') ? false : true
-							}),
+							{activeTooltip: '', mouseInIcon: mouseInObjectIcon}),
 						$elm$core$Platform$Cmd$none);
 				} else {
 					return _Utils_Tuple2(
 						_Utils_update(
 							model,
-							{
-								activeTooltip: tooltip,
-								mouseInIcon: (tooltip === '') ? false : true
-							}),
+							{activeTooltip: tooltip, mouseInIcon: mouseInObjectIcon}),
 						$elm$core$Platform$Cmd$none);
 				}
 			case 'HighlightTableRow':
@@ -8692,22 +8705,22 @@ var $author$project$About$aboutView = A2(
 			_List_Nil,
 			_List_fromArray(
 				[
-					$elm$html$Html$text('\n                Die wenigsten Geschichten im Pen & Paper Rollenspiel DSA kommen ohne einen Kampf aus.\n                Die Mechanik unterscheidet sich allerdings etwas vom normalen Spielgeschehen.\n            '),
+					$elm$html$Html$text('\r\n                Die wenigsten Geschichten im Pen & Paper Rollenspiel DSA kommen ohne einen Kampf aus.\r\n                Die Mechanik unterscheidet sich allerdings etwas vom normalen Spielgeschehen.\r\n            '),
 					A2($elm$html$Html$br, _List_Nil, _List_Nil),
-					$elm$html$Html$text('\n                Zur Vorbereitung wird die Reihenfolge der Kämpfenden bestimmt. Dazu wird der die Initiative (INI) ausgewürfelt.\n                Der Spielleiter würfelt für alle NSCs.\n            '),
+					$elm$html$Html$text('\r\n                Zur Vorbereitung wird die Reihenfolge der Kämpfenden bestimmt. Dazu wird der die Initiative (INI) ausgewürfelt.\r\n                Der Spielleiter würfelt für alle NSCs.\r\n            '),
 					A2($elm$html$Html$br, _List_Nil, _List_Nil),
-					$elm$html$Html$text('\n                Dieser Reihenfolge nach dürfen die Charaktere jetzt je einen Gegner angreifen.\n            ')
+					$elm$html$Html$text('\r\n                Dieser Reihenfolge nach dürfen die Charaktere jetzt je einen Gegner angreifen.\r\n            ')
 				])),
 			A2(
 			$elm$html$Html$p,
 			_List_Nil,
 			_List_fromArray(
 				[
-					$elm$html$Html$text('\n                Um anzugreifen muss zunächst eine Probe mit einem W20 auf den AT-Wert bestanden werden.\n                Gleichzeitig wirft der Angegriffene auf PA oder AW. Gelingt die Probe bricht der Angriff an dieser Stelle ab.\n            '),
+					$elm$html$Html$text('\r\n                Um anzugreifen muss zunächst eine Probe mit einem W20 auf den AT-Wert bestanden werden.\r\n                Gleichzeitig wirft der Angegriffene auf PA oder AW. Gelingt die Probe bricht der Angriff an dieser Stelle ab.\r\n            '),
 					A2($elm$html$Html$br, _List_Nil, _List_Nil),
-					$elm$html$Html$text('\n                War der Angriff erfolgreich und die Verteidigung ein Fehlschlag wird der Schaden berechnet.\n                Das ist die Gelegenheit den \"Angriff\"-Button zu klicken.\n                Entsprechend der Angabe der Waffe (z.B 1W6+4) wird der Angriffswert erwürfelt.\n                Von diesem wird der RS-Wert des Angegriffenen subtrahiert und das Ergebnis von den LeP abgezogen.\n            '),
+					$elm$html$Html$text('\r\n                War der Angriff erfolgreich und die Verteidigung ein Fehlschlag wird der Schaden berechnet.\r\n                Das ist die Gelegenheit den \"Angriff\"-Button zu klicken.\r\n                Entsprechend der Angabe der Waffe (z.B 1W6+4) wird der Angriffswert erwürfelt.\r\n                Von diesem wird der RS-Wert des Angegriffenen subtrahiert und das Ergebnis von den LeP abgezogen.\r\n            '),
 					A2($elm$html$Html$br, _List_Nil, _List_Nil),
-					$elm$html$Html$text('\n                Die Berechnung übernimmt der Manager vollständig!\n            ')
+					$elm$html$Html$text('\r\n                Die Berechnung übernimmt der Manager vollständig!\r\n            ')
 				])),
 			A2(
 			$elm$html$Html$p,
@@ -12419,9 +12432,10 @@ var $author$project$Model$HighlightTableRow = F2(
 	function (a, b) {
 		return {$: 'HighlightTableRow', a: a, b: b};
 	});
-var $author$project$Model$ToolTipMsg = function (a) {
-	return {$: 'ToolTipMsg', a: a};
-};
+var $author$project$Model$ToolTipMsg = F2(
+	function (a, b) {
+		return {$: 'ToolTipMsg', a: a, b: b};
+	});
 var $avh4$elm_color$Color$black = A4($avh4$elm_color$Color$RgbaSpace, 0 / 255, 0 / 255, 0 / 255, 1.0);
 var $elm$core$String$concat = function (strings) {
 	return A2($elm$core$String$join, '', strings);
@@ -12718,7 +12732,8 @@ var $author$project$DungeonMap$placeIcon = function (s) {
 							$elm$svg$Svg$Events$onMouseOut(
 							A2($author$project$Model$HighlightTableRow, 0, '')),
 							$elm$svg$Svg$Events$onClick(
-							A2($author$project$Model$DeleteIcon, iconType, id))
+							A2($author$project$Model$DeleteIcon, iconType, id)),
+							$elm$svg$Svg$Attributes$class('MonsterIcon')
 						]),
 					_List_Nil)
 				]);
@@ -12774,7 +12789,8 @@ var $author$project$DungeonMap$placeIcon = function (s) {
 							$elm$svg$Svg$Events$onMouseOut(
 							A2($author$project$Model$HighlightTableRow, 0, '')),
 							$elm$svg$Svg$Events$onClick(
-							A2($author$project$Model$DeleteIcon, iconType, id))
+							A2($author$project$Model$DeleteIcon, iconType, id)),
+							$elm$svg$Svg$Attributes$class('PlayerIcon')
 						]),
 					_List_Nil)
 				]);
@@ -12795,9 +12811,9 @@ var $author$project$DungeonMap$placeIcon = function (s) {
 								$elm$svg$Svg$Attributes$style(
 								$author$project$DungeonMap$buildCustomObjectIconStyle(color)),
 								$elm$svg$Svg$Events$onMouseOver(
-								$author$project$Model$ToolTipMsg(text)),
+								A2($author$project$Model$ToolTipMsg, text, true)),
 								$elm$svg$Svg$Events$onMouseOut(
-								$author$project$Model$ToolTipMsg('')),
+								A2($author$project$Model$ToolTipMsg, '', false)),
 								$elm$svg$Svg$Attributes$class('ObjectIcon'),
 								$elm$svg$Svg$Events$onClick(
 								A2($author$project$Model$DeleteIcon, iconType, id))
@@ -12827,9 +12843,9 @@ var $author$project$DungeonMap$placeIcon = function (s) {
 								$elm$svg$Svg$Attributes$xlinkHref(
 								$author$project$DungeonMap$getIconPath(typeID)),
 								$elm$svg$Svg$Events$onMouseOver(
-								$author$project$Model$ToolTipMsg(text)),
+								A2($author$project$Model$ToolTipMsg, text, true)),
 								$elm$svg$Svg$Events$onMouseOut(
-								$author$project$Model$ToolTipMsg('')),
+								A2($author$project$Model$ToolTipMsg, '', false)),
 								$elm$svg$Svg$Attributes$class('ObjectIcon'),
 								$elm$svg$Svg$Events$onClick(
 								A2($author$project$Model$DeleteIcon, iconType, id))
diff --git a/src/DungeonMap.elm b/src/DungeonMap.elm
index a77a72ebd06c7994525b6c9816c832f8b3a91ae8..75d63fc8cb602d1c35cc4491bde93da5d9446a4e 100644
--- a/src/DungeonMap.elm
+++ b/src/DungeonMap.elm
@@ -46,7 +46,7 @@ dungeonMapView model =
                             [ text "Upload Map" ]
                         , Button.button
                             [ Button.attrs [ class "metalButton", style "height" "52px" ]
-                            , Button.onClick ClearCharacterList ] 
+                            , Button.onClick ClearCharacterList ]
                             [ text "Clear Map" ]
                         ]
                     ]
@@ -71,7 +71,7 @@ dungeonMap_MonsterList model =
                           Table.tbody []
                             <| characters2rows model.enemy model.highlightedTableRow
                       }
-        
+
         ]
 
 characters2rows : Array.Array Character -> Int -> List (Table.Row Msg)
@@ -112,12 +112,12 @@ dungeonMap_Svg model =
                 ([ SvgAtt.width "100%", SvgAtt.viewBox "0 0 800 550", SvgAtt.version "1.1" ]
                     ++ mouseDrawEvents model.addCharacterIcon
                 )
-                ([ Svg.image 
+                ([ Svg.image
                     [ SvgAtt.width "800"
                     , SvgAtt.height "550"
                     , SvgAtt.title "DungeonMap"
-                    , SvgAtt.xlinkHref (Maybe.withDefault "" (List.head model.previews)) 
-                    ] [] 
+                    , SvgAtt.xlinkHref (Maybe.withDefault "" (List.head model.previews))
+                    ] []
                 ]
                     ++ svgIconList model
                     ++ newIconsView model.addCharacterIcon
@@ -214,6 +214,7 @@ placeIcon s =
                 , Svg.Events.onMouseOver (HighlightTableRow id text)
                 , Svg.Events.onMouseOut (HighlightTableRow 0 "")
                 , Svg.Events.onClick (DeleteIcon iconType id)
+                , SvgAtt.class "MonsterIcon"
                 ] []
             ]
 
@@ -234,6 +235,7 @@ placeIcon s =
                 , Svg.Events.onMouseOver (HighlightTableRow id text)
                 , Svg.Events.onMouseOut (HighlightTableRow 0 "")
                 , Svg.Events.onClick (DeleteIcon iconType id)
+                , SvgAtt.class "PlayerIcon"
                 ] []
             ]
 
@@ -245,8 +247,8 @@ placeIcon s =
                                 , SvgAtt.cy y
                                 , SvgAtt.r "10"
                                 , SvgAtt.style (buildCustomObjectIconStyle color)
-                                , Svg.Events.onMouseOver (ToolTipMsg text)
-                                , Svg.Events.onMouseOut (ToolTipMsg "")
+                                , Svg.Events.onMouseOver (ToolTipMsg text True)
+                                , Svg.Events.onMouseOut (ToolTipMsg "" False)
                                 , SvgAtt.class "ObjectIcon"
                                 , Svg.Events.onClick (DeleteIcon iconType id)
                                 ]
@@ -259,8 +261,8 @@ placeIcon s =
                          , SvgAtt.x (String.fromFloat (Maybe.withDefault 0 (String.toFloat x) - 11.5))
                          , SvgAtt.y (String.fromFloat (Maybe.withDefault 0 (String.toFloat y) - 11.5))
                          , SvgAtt.xlinkHref (getIconPath typeID)
-                         , Svg.Events.onMouseOver (ToolTipMsg text)
-                         , Svg.Events.onMouseOut (ToolTipMsg "")
+                         , Svg.Events.onMouseOver (ToolTipMsg text True)
+                         , Svg.Events.onMouseOut (ToolTipMsg "" False)
                          , SvgAtt.class "ObjectIcon"
                          , Svg.Events.onClick (DeleteIcon iconType id)
                          ] []
diff --git a/src/Main.elm b/src/Main.elm
index 2d2f9e07c8a667be3a9a20a72a514adf952c9ed5..2d0937fd1ffc3f08880b40ae6157eb60882fce82 100644
--- a/src/Main.elm
+++ b/src/Main.elm
@@ -68,7 +68,10 @@ update msg model =
             )
 
         RemoveEnemy index ->
-            ( { model | enemy = Array.removeAt index model.enemy }
+            ( { model | enemy = Array.removeAt index model.enemy
+                      , characterList = generateIconIdents (List.filter (isNotId (index+1)) model.characterList)
+                      , highlightedTableRow = 0
+                      , activeTooltip = "" }
             , Cmd.none
             )
 
@@ -164,7 +167,7 @@ update msg model =
                             else    ( { model | addCharacterIcon = DrawingInactive }, Cmd.none )
 
                         ObjectIcon i x y t c ident ->
-                            ( { model | objectIconList = (generateObjectIdents (model.objectIconList ++ [ ObjectIcon i x y model.iconText (Just model.colour) ident ]))
+                            ( { model | objectIconList = (generateIconIdents (model.objectIconList ++ [ ObjectIcon i x y model.iconText (Just model.colour) ident ]))
                                       , addCharacterIcon = DrawingInactive
                                       , showObjectIconModal = Modal.hidden
                                       , iconText = ""
@@ -269,15 +272,15 @@ update msg model =
 
                 _ -> ( model, Cmd.none )
 
-        ToolTipMsg tooltip ->
+        ToolTipMsg tooltip mouseInObjectIcon ->
             case tooltip of
                 "" ->   ( { model | activeTooltip = ""
-                                  , mouseInIcon = (if tooltip=="" then False else True) }
+                                  , mouseInIcon = mouseInObjectIcon }
                         , Cmd.none
                         )
 
                 _ ->    ( { model | activeTooltip = tooltip
-                                  , mouseInIcon = (if tooltip=="" then False else True) }
+                                  , mouseInIcon = mouseInObjectIcon }
                         , Cmd.none
                         )
 
@@ -373,14 +376,17 @@ isNotId id s =
         ObjectIcon _ _ _ _ _ ident ->
             id/=ident
 
-generateObjectIdents : List CharacterIcon -> List CharacterIcon
-generateObjectIdents list =
+generateIconIdents : List CharacterIcon -> List CharacterIcon
+generateIconIdents list =
     List.indexedMap
         (\id char ->
             case char of
                 ObjectIcon typeID x y t c ident ->
                     ObjectIcon typeID x y t c (id+1)
 
-                _ ->
-                    ObjectIcon 0 "" "" "" Nothing 0
+                PlayerIcon ident x y name ->
+                    PlayerIcon (id+1) x y name
+
+                MonsterIcon ident x y name ->
+                    MonsterIcon (id+1) x y name
         ) list
diff --git a/src/Model.elm b/src/Model.elm
index 3eae4eaa8f8b0f037154f9b86cb1c321cd41252f..8e8fc09af3cf34963b03697c2924ee0e8bf4fd0e 100644
--- a/src/Model.elm
+++ b/src/Model.elm
@@ -125,7 +125,7 @@ type Msg
     | ChangeIconText String
     | ChangeIcon Int
     | ColorPickerMsg ColorPicker.Msg
-    | ToolTipMsg String
+    | ToolTipMsg String Bool
     | HighlightTableRow Int String
     | DeleteIcon String Int
 
diff --git a/src/res/Stylesheet.css b/src/res/Stylesheet.css
index 5748fdda93754dbb6f244da351ca82cdfd5f007a..d9c0249a5704e3a93fb4a8ba5e3620dccd3c61ee 100644
--- a/src/res/Stylesheet.css
+++ b/src/res/Stylesheet.css
@@ -123,8 +123,6 @@ tr:nth-child(odd) {background-color: #faf2eb;}
     fill: grey-darker;
     opacity:0.5;
     fill-opacity:0.5;
-    width:25px;
-    height:25px;
 }
 
 .MonsterIcon {
@@ -138,16 +136,12 @@ tr:nth-child(odd) {background-color: #faf2eb;}
     fill: grey-darker;
     opacity:0.5;
     fill-opacity:0.5;
-    width:30px;
-    height:30px;
 }
 
 .ObjectIcon:hover {
     fill: grey-darker;
     opacity:0.5;
     fill-opacity:0.5;
-    width:25px;
-    height:25px;
 }
 
 .aboutText {