added optional button to restart game (door, panel and touch variants)
[rocksndiamonds.git] / src / conf_gfx.c
index 152769ff8edad9999f51081db17796b52aacb256..62bdab0e6b827bcab7f6064e5c66f425adb41425 100644 (file)
@@ -4,7 +4,7 @@
 // (c) 1995-2014 by Artsoft Entertainment
 //                         Holger Schemel
 //                 info@artsoft.org
-//                 http://www.artsoft.org/
+//                 https://www.artsoft.org/
 // ----------------------------------------------------------------------------
 // conf_gfx.c
 // ============================================================================
@@ -13,9 +13,9 @@
 #include "main.h"
 
 
-/* List values that are not defined in the configuration file are set to
-   reliable default values. If that value is GFX_ARG_UNDEFINED, it will
-   be dynamically determined, using some of the other list values. */
+// List values that are not defined in the configuration file are set to
+// reliable default values. If that value is GFX_ARG_UNDEFINED, it will
+// be dynamically determined, using some of the other list values.
 
 struct ConfigTypeInfo image_config_suffix[] =
 {
@@ -41,6 +41,7 @@ struct ConfigTypeInfo image_config_suffix[] =
   { ".delay",                          "1",            TYPE_INTEGER    },
   { ".anim_mode",                      ARG_UNDEFINED,  TYPE_STRING     },
   { ".global_sync",                    "false",        TYPE_BOOLEAN    },
+  { ".global_anim_sync",               "false",        TYPE_BOOLEAN    },
   { ".crumbled_like",                  ARG_UNDEFINED,  TYPE_ELEMENT    },
   { ".diggable_like",                  ARG_UNDEFINED,  TYPE_ELEMENT    },
   { ".border_size",                    ARG_UNDEFINED,  TYPE_INTEGER    },
@@ -56,12 +57,17 @@ struct ConfigTypeInfo image_config_suffix[] =
   { ".draw_order",                     ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".init_delay_fixed",               ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".init_delay_random",              ARG_UNDEFINED,  TYPE_INTEGER    },
+  { ".init_delay_action",              ARG_UNDEFINED,  TYPE_STRING     },
   { ".anim_delay_fixed",               ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".anim_delay_random",              ARG_UNDEFINED,  TYPE_INTEGER    },
+  { ".anim_delay_action",              ARG_UNDEFINED,  TYPE_STRING     },
   { ".post_delay_fixed",               ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".post_delay_random",              ARG_UNDEFINED,  TYPE_INTEGER    },
+  { ".post_delay_action",              ARG_UNDEFINED,  TYPE_STRING     },
   { ".init_event",                     ARG_UNDEFINED,  TYPE_STRING     },
+  { ".init_event_action",              ARG_UNDEFINED,  TYPE_STRING     },
   { ".anim_event",                     ARG_UNDEFINED,  TYPE_STRING     },
+  { ".anim_event_action",              ARG_UNDEFINED,  TYPE_STRING     },
   { ".name",                           ARG_UNDEFINED,  TYPE_STRING     },
   { ".scale_up_factor",                        ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".tile_size",                      ARG_UNDEFINED,  TYPE_INTEGER    },
@@ -70,15 +76,21 @@ struct ConfigTypeInfo image_config_suffix[] =
   { ".fade_delay",                     ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".post_delay",                     ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".auto_delay",                     ARG_UNDEFINED,  TYPE_INTEGER    },
+  { ".auto_delay_unit",                        ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".align",                          ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".valign",                         ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".sort_priority",                  ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".class",                          ARG_UNDEFINED,  TYPE_STRING     },
   { ".style",                          ARG_UNDEFINED,  TYPE_STRING     },
+  { ".alpha",                          ARG_UNDEFINED,  TYPE_INTEGER    },
   { ".active_xoffset",                 "0",            TYPE_INTEGER    },
   { ".active_yoffset",                 "0",            TYPE_INTEGER    },
   { ".pressed_xoffset",                        "0",            TYPE_INTEGER    },
   { ".pressed_yoffset",                        "0",            TYPE_INTEGER    },
+  { ".stacked_xfactor",                        "1",            TYPE_INTEGER    },
+  { ".stacked_yfactor",                        "1",            TYPE_INTEGER    },
+  { ".stacked_xoffset",                        "0",            TYPE_INTEGER    },
+  { ".stacked_yoffset",                        "0",            TYPE_INTEGER    },
 
   { NULL,                              NULL,           0               }
 };
@@ -89,7 +101,7 @@ struct ConfigInfo image_config[] =
   // image definitions for game elements (for in-game and editor graphics)
   // ==========================================================================
 
-  /* images for Boulder Dash style elements and actions */
+  // images for Boulder Dash style elements and actions
 
   { "bd_wall",                                 "RocksDC.png"           },
   { "bd_wall.xpos",                            "12"                    },
@@ -147,6 +159,11 @@ struct ConfigInfo image_config[] =
   { "bd_diamond.falling.ypos",                 "10"                    },
   { "bd_diamond.falling.frames",               "2"                     },
   { "bd_diamond.falling.delay",                        "4"                     },
+  { "bd_diamond.collecting",                   "RocksCollect.png"      },
+  { "bd_diamond.collecting.xpos",              "0"                     },
+  { "bd_diamond.collecting.ypos",              "8"                     },
+  { "bd_diamond.collecting.frames",            "7"                     },
+  { "bd_diamond.collecting.anim_mode",         "linear"                },
 
   { "bd_magic_wall",                           "RocksElements.png"     },
   { "bd_magic_wall.xpos",                      "12"                    },
@@ -189,8 +206,7 @@ struct ConfigInfo image_config[] =
   { "bd_amoeba.xpos",                          "8"                     },
   { "bd_amoeba.ypos",                          "6"                     },
   { "bd_amoeba.frames",                                "4"                     },
-  { "bd_amoeba.delay",                         "1000000"               },
-  { "bd_amoeba.anim_mode",                     "random"                },
+  { "bd_amoeba.anim_mode",                     "random_static"         },
   { "bd_amoeba.EDITOR",                                "RocksElements.png"     },
   { "bd_amoeba.EDITOR.xpos",                   "8"                     },
   { "bd_amoeba.EDITOR.ypos",                   "7"                     },
@@ -291,7 +307,7 @@ struct ConfigInfo image_config[] =
   { "bd_firefly.down.EDITOR.xpos",             "15"                    },
   { "bd_firefly.down.EDITOR.ypos",             "12"                    },
 
-  /* images for Supaplex style elements and actions */
+  // images for Supaplex style elements and actions
 
   { "[sp_default].exploding",                  "RocksSP.png"           },
   { "[sp_default].exploding.xpos",             "8"                     },
@@ -829,15 +845,12 @@ struct ConfigInfo image_config[] =
   { "sp_hardware_base_6.ypos",                 "4"                     },
   { "sp_hardware_base_6.frames",               "1"                     },
 
-  /* images for Sokoban style elements and actions */
+  // images for Sokoban style elements and actions
 
   { "sokoban_object",                          "RocksElements.png"     },
   { "sokoban_object.xpos",                     "9"                     },
   { "sokoban_object.ypos",                     "7"                     },
   { "sokoban_object.frames",                   "1"                     },
-  { "sokoban_object.EDITOR",                   "RocksElements.png"     },
-  { "sokoban_object.EDITOR.xpos",              "2"                     },
-  { "sokoban_object.EDITOR.ypos",              "14"                    },
 
   { "sokoban_field_empty",                     "RocksElements.png"     },
   { "sokoban_field_empty.xpos",                        "10"                    },
@@ -853,11 +866,8 @@ struct ConfigInfo image_config[] =
   { "sokoban_field_player.xpos",               "0"                     },
   { "sokoban_field_player.ypos",               "15"                    },
   { "sokoban_field_player.frames",             "1"                     },
-  { "sokoban_field_player.EDITOR",             "RocksHeroes.png"       },
-  { "sokoban_field_player.EDITOR.xpos",                "1"                     },
-  { "sokoban_field_player.EDITOR.ypos",                "15"                    },
 
-  /* images for Emerald Mine style elements and actions */
+  // images for Emerald Mine style elements and actions
 
   { "empty_space",                             "RocksSP.png"           },
   { "empty_space.xpos",                                "0"                     },
@@ -979,11 +989,10 @@ struct ConfigInfo image_config[] =
   { "emerald.falling.ypos",                    "0"                     },
   { "emerald.falling.frames",                  "2"                     },
   { "emerald.falling.delay",                   "4"                     },
-  { "emerald.collecting",                      "RocksMore.png"         },
-  { "emerald.collecting.xpos",                 "3"                     },
-  { "emerald.collecting.ypos",                 "2"                     },
-  { "emerald.collecting.frames",               "3"                     },
-  { "emerald.collecting.delay",                        "2"                     },
+  { "emerald.collecting",                      "RocksCollect.png"      },
+  { "emerald.collecting.xpos",                 "0"                     },
+  { "emerald.collecting.ypos",                 "0"                     },
+  { "emerald.collecting.frames",               "7"                     },
   { "emerald.collecting.anim_mode",            "linear"                },
 
   { "diamond",                                 "RocksElements.png"     },
@@ -1000,11 +1009,10 @@ struct ConfigInfo image_config[] =
   { "diamond.falling.ypos",                    "0"                     },
   { "diamond.falling.frames",                  "2"                     },
   { "diamond.falling.delay",                   "4"                     },
-  { "diamond.collecting",                      "RocksMore.png"         },
-  { "diamond.collecting.xpos",                 "7"                     },
-  { "diamond.collecting.ypos",                 "2"                     },
-  { "diamond.collecting.frames",               "3"                     },
-  { "diamond.collecting.delay",                        "2"                     },
+  { "diamond.collecting",                      "RocksCollect.png"      },
+  { "diamond.collecting.xpos",                 "0"                     },
+  { "diamond.collecting.ypos",                 "1"                     },
+  { "diamond.collecting.frames",               "7"                     },
   { "diamond.collecting.anim_mode",            "linear"                },
 
   { "bomb",                                    "RocksElements.png"     },
@@ -1027,18 +1035,17 @@ struct ConfigInfo image_config[] =
   { "dynamite.xpos",                           "0"                     },
   { "dynamite.ypos",                           "3"                     },
   { "dynamite.frames",                         "1"                     },
-  { "dynamite.EDITOR",                         "RocksElements.png"     },
-  { "dynamite.EDITOR.xpos",                    "0"                     },
-  { "dynamite.EDITOR.ypos",                    "14"                    },
   { "dynamite.active",                         "RocksElements.png"     },
   { "dynamite.active.xpos",                    "1"                     },
   { "dynamite.active.ypos",                    "3"                     },
   { "dynamite.active.frames",                  "7"                     },
   { "dynamite.active.delay",                   "12"                    },
   { "dynamite.active.anim_mode",               "linear"                },
-  { "dynamite.active.EDITOR",                  "RocksElements.png"     },
-  { "dynamite.active.EDITOR.xpos",             "1"                     },
-  { "dynamite.active.EDITOR.ypos",             "14"                    },
+  { "dynamite.collecting",                     "RocksCollect.png"      },
+  { "dynamite.collecting.xpos",                        "0"                     },
+  { "dynamite.collecting.ypos",                        "7"                     },
+  { "dynamite.collecting.frames",              "7"                     },
+  { "dynamite.collecting.anim_mode",           "linear"                },
 
   { "em_dynamite",                             "RocksEMC.png"          },
   { "em_dynamite.xpos",                                "0"                     },
@@ -1053,6 +1060,11 @@ struct ConfigInfo image_config[] =
   { "em_dynamite.active.EDITOR",               "RocksEMC.png"          },
   { "em_dynamite.active.EDITOR.xpos",          "2"                     },
   { "em_dynamite.active.EDITOR.ypos",          "15"                    },
+  { "em_dynamite.collecting",                  "RocksCollect.png"      },
+  { "em_dynamite.collecting.xpos",             "0"                     },
+  { "em_dynamite.collecting.ypos",             "15"                    },
+  { "em_dynamite.collecting.frames",           "7"                     },
+  { "em_dynamite.collecting.anim_mode",                "linear"                },
 
   { "wall_emerald",                            "RocksElements.png"     },
   { "wall_emerald.xpos",                       "4"                     },
@@ -1488,8 +1500,7 @@ struct ConfigInfo image_config[] =
   { "amoeba_wet.xpos",                         "8"                     },
   { "amoeba_wet.ypos",                         "6"                     },
   { "amoeba_wet.frames",                       "4"                     },
-  { "amoeba_wet.delay",                                "1000000"               },
-  { "amoeba_wet.anim_mode",                    "random"                },
+  { "amoeba_wet.anim_mode",                    "random_static"         },
   { "amoeba_wet.EDITOR",                       "RocksElements.png"     },
   { "amoeba_wet.EDITOR.xpos",                  "4"                     },
   { "amoeba_wet.EDITOR.ypos",                  "6"                     },
@@ -1497,20 +1508,17 @@ struct ConfigInfo image_config[] =
   { "amoeba.dropping.xpos",                    "8"                     },
   { "amoeba.dropping.ypos",                    "6"                     },
   { "amoeba.dropping.frames",                  "4"                     },
-  { "amoeba.dropping.delay",                   "1000000"               },
-  { "amoeba.dropping.anim_mode",               "random"                },
+  { "amoeba.dropping.anim_mode",               "random_static"         },
   { "amoeba_dry",                              "RocksElements.png"     },
   { "amoeba_dry.xpos",                         "8"                     },
   { "amoeba_dry.ypos",                         "6"                     },
   { "amoeba_dry.frames",                       "4"                     },
-  { "amoeba_dry.delay",                                "1000000"               },
-  { "amoeba_dry.anim_mode",                    "random"                },
+  { "amoeba_dry.anim_mode",                    "random_static"         },
   { "amoeba_full",                             "RocksElements.png"     },
   { "amoeba_full.xpos",                                "8"                     },
   { "amoeba_full.ypos",                                "6"                     },
   { "amoeba_full.frames",                      "4"                     },
-  { "amoeba_full.delay",                       "1000000"               },
-  { "amoeba_full.anim_mode",                   "random"                },
+  { "amoeba_full.anim_mode",                   "random_static"         },
   { "amoeba_full.EDITOR",                      "RocksElements.png"     },
   { "amoeba_full.EDITOR.xpos",                 "8"                     },
   { "amoeba_full.EDITOR.ypos",                 "7"                     },
@@ -1518,8 +1526,7 @@ struct ConfigInfo image_config[] =
   { "amoeba_dead.xpos",                                "12"                    },
   { "amoeba_dead.ypos",                                "6"                     },
   { "amoeba_dead.frames",                      "4"                     },
-  { "amoeba_dead.delay",                       "1000000"               },
-  { "amoeba_dead.anim_mode",                   "random"                },
+  { "amoeba_dead.anim_mode",                   "random_static"         },
   { "amoeba_dead.EDITOR",                      "RocksElements.png"     },
   { "amoeba_dead.EDITOR.xpos",                 "12"                    },
   { "amoeba_dead.EDITOR.ypos",                 "6"                     },
@@ -1528,23 +1535,48 @@ struct ConfigInfo image_config[] =
   { "em_key_1.xpos",                           "4"                     },
   { "em_key_1.ypos",                           "6"                     },
   { "em_key_1.frames",                         "1"                     },
+  { "em_key_1.collecting",                     "RocksCollect.png"      },
+  { "em_key_1.collecting.xpos",                        "7"                     },
+  { "em_key_1.collecting.ypos",                        "4"                     },
+  { "em_key_1.collecting.frames",              "7"                     },
+  { "em_key_1.collecting.anim_mode",           "linear"                },
   { "em_key_2",                                        "RocksSP.png"           },
   { "em_key_2.xpos",                           "5"                     },
   { "em_key_2.ypos",                           "6"                     },
   { "em_key_2.frames",                         "1"                     },
+  { "em_key_2.collecting",                     "RocksCollect.png"      },
+  { "em_key_2.collecting.xpos",                        "7"                     },
+  { "em_key_2.collecting.ypos",                        "5"                     },
+  { "em_key_2.collecting.frames",              "7"                     },
+  { "em_key_2.collecting.anim_mode",           "linear"                },
   { "em_key_3",                                        "RocksSP.png"           },
   { "em_key_3.xpos",                           "6"                     },
   { "em_key_3.ypos",                           "6"                     },
   { "em_key_3.frames",                         "1"                     },
+  { "em_key_3.collecting",                     "RocksCollect.png"      },
+  { "em_key_3.collecting.xpos",                        "7"                     },
+  { "em_key_3.collecting.ypos",                        "6"                     },
+  { "em_key_3.collecting.frames",              "7"                     },
+  { "em_key_3.collecting.anim_mode",           "linear"                },
   { "em_key_4",                                        "RocksSP.png"           },
   { "em_key_4.xpos",                           "7"                     },
   { "em_key_4.ypos",                           "6"                     },
   { "em_key_4.frames",                         "1"                     },
+  { "em_key_4.collecting",                     "RocksCollect.png"      },
+  { "em_key_4.collecting.xpos",                        "7"                     },
+  { "em_key_4.collecting.ypos",                        "7"                     },
+  { "em_key_4.collecting.frames",              "7"                     },
+  { "em_key_4.collecting.anim_mode",           "linear"                },
 
   { "dc_key_white",                            "RocksSP.png"           },
   { "dc_key_white.xpos",                       "13"                    },
   { "dc_key_white.ypos",                       "1"                     },
   { "dc_key_white.frames",                     "1"                     },
+  { "dc_key_white.collecting",                 "RocksCollect.png"      },
+  { "dc_key_white.collecting.xpos",            "7"                     },
+  { "dc_key_white.collecting.ypos",            "0"                     },
+  { "dc_key_white.collecting.frames",          "7"                     },
+  { "dc_key_white.collecting.anim_mode",       "linear"                },
 
   { "em_gate_1",                               "RocksSP.png"           },
   { "em_gate_1.xpos",                          "0"                     },
@@ -1722,7 +1754,7 @@ struct ConfigInfo image_config[] =
   { "em_steel_exit.closing.delay",             "6"                     },
   { "em_steel_exit.closing.anim_mode",         "linear"                },
 
-  /* images for Emerald Mine Club style elements and actions */
+  // images for Emerald Mine Club style elements and actions
 
   { "balloon",                                 "RocksDC.png"           },
   { "balloon.xpos",                            "12"                    },
@@ -1770,6 +1802,11 @@ struct ConfigInfo image_config[] =
   { "spring.ypos",                             "13"                    },
   { "spring.frames",                           "1"                     },
 
+  { "spring.left",                             UNDEFINED_FILENAME      },
+  { "spring.left.clone_from",                  "spring"                },
+  { "spring.right",                            UNDEFINED_FILENAME      },
+  { "spring.right.clone_from",                 "spring"                },
+
   { "emc_steelwall_1",                         "RocksDC.png"           },
   { "emc_steelwall_1.xpos",                    "14"                    },
   { "emc_steelwall_1.ypos",                    "0"                     },
@@ -1820,7 +1857,7 @@ struct ConfigInfo image_config[] =
   { "emc_wall_8.ypos",                         "7"                     },
   { "emc_wall_8.frames",                       "1"                     },
 
-  /* images for Diamond Caves style elements and actions */
+  // images for Diamond Caves style elements and actions
 
   { "invisible_steelwall",                     "RocksSP.png"           },
   { "invisible_steelwall.xpos",                        "3"                     },
@@ -2119,41 +2156,37 @@ struct ConfigInfo image_config[] =
   { "envelope_1.xpos",                         "0"                     },
   { "envelope_1.ypos",                         "4"                     },
   { "envelope_1.frames",                       "1"                     },
-  { "envelope_1.collecting",                   "RocksMore.png"         },
-  { "envelope_1.collecting.xpos",              "5"                     },
-  { "envelope_1.collecting.ypos",              "4"                     },
-  { "envelope_1.collecting.frames",            "3"                     },
-  { "envelope_1.collecting.delay",             "2"                     },
+  { "envelope_1.collecting",                   "RocksCollect.png"      },
+  { "envelope_1.collecting.xpos",              "7"                     },
+  { "envelope_1.collecting.ypos",              "8"                     },
+  { "envelope_1.collecting.frames",            "7"                     },
   { "envelope_1.collecting.anim_mode",         "linear"                },
   { "envelope_2",                              "RocksMore.png"         },
   { "envelope_2.xpos",                         "1"                     },
   { "envelope_2.ypos",                         "4"                     },
   { "envelope_2.frames",                       "1"                     },
-  { "envelope_2.collecting",                   "RocksMore.png"         },
-  { "envelope_2.collecting.xpos",              "5"                     },
-  { "envelope_2.collecting.ypos",              "4"                     },
-  { "envelope_2.collecting.frames",            "3"                     },
-  { "envelope_2.collecting.delay",             "2"                     },
+  { "envelope_2.collecting",                   "RocksCollect.png"      },
+  { "envelope_2.collecting.xpos",              "7"                     },
+  { "envelope_2.collecting.ypos",              "9"                     },
+  { "envelope_2.collecting.frames",            "7"                     },
   { "envelope_2.collecting.anim_mode",         "linear"                },
   { "envelope_3",                              "RocksMore.png"         },
   { "envelope_3.xpos",                         "2"                     },
   { "envelope_3.ypos",                         "4"                     },
   { "envelope_3.frames",                       "1"                     },
-  { "envelope_3.collecting",                   "RocksMore.png"         },
-  { "envelope_3.collecting.xpos",              "5"                     },
-  { "envelope_3.collecting.ypos",              "4"                     },
-  { "envelope_3.collecting.frames",            "3"                     },
-  { "envelope_3.collecting.delay",             "2"                     },
+  { "envelope_3.collecting",                   "RocksCollect.png"      },
+  { "envelope_3.collecting.xpos",              "7"                     },
+  { "envelope_3.collecting.ypos",              "10"                    },
+  { "envelope_3.collecting.frames",            "7"                     },
   { "envelope_3.collecting.anim_mode",         "linear"                },
   { "envelope_4",                              "RocksMore.png"         },
   { "envelope_4.xpos",                         "3"                     },
   { "envelope_4.ypos",                         "4"                     },
   { "envelope_4.frames",                       "1"                     },
-  { "envelope_4.collecting",                   "RocksMore.png"         },
-  { "envelope_4.collecting.xpos",              "5"                     },
-  { "envelope_4.collecting.ypos",              "4"                     },
-  { "envelope_4.collecting.frames",            "3"                     },
-  { "envelope_4.collecting.delay",             "2"                     },
+  { "envelope_4.collecting",                   "RocksCollect.png"      },
+  { "envelope_4.collecting.xpos",              "7"                     },
+  { "envelope_4.collecting.ypos",              "11"                    },
+  { "envelope_4.collecting.frames",            "7"                     },
   { "envelope_4.collecting.anim_mode",         "linear"                },
 
   { "sign_radioactivity",                      "RocksDC.png"           },
@@ -2278,6 +2311,11 @@ struct ConfigInfo image_config[] =
   { "extra_time.ypos",                         "0"                     },
   { "extra_time.frames",                       "6"                     },
   { "extra_time.delay",                                "4"                     },
+  { "extra_time.collecting",                   "RocksCollect.png"      },
+  { "extra_time.collecting.xpos",              "7"                     },
+  { "extra_time.collecting.ypos",              "2"                     },
+  { "extra_time.collecting.frames",            "7"                     },
+  { "extra_time.collecting.anim_mode",         "linear"                },
 
   { "shield_normal",                           "RocksDC.png"           },
   { "shield_normal.xpos",                      "8"                     },
@@ -2290,6 +2328,11 @@ struct ConfigInfo image_config[] =
   { "shield_normal.active.frames",             "3"                     },
   { "shield_normal.active.delay",              "8"                     },
   { "shield_normal.active.anim_mode",          "pingpong"              },
+  { "shield_normal.collecting",                        "RocksCollect.png"      },
+  { "shield_normal.collecting.xpos",           "7"                     },
+  { "shield_normal.collecting.ypos",           "1"                     },
+  { "shield_normal.collecting.frames",         "7"                     },
+  { "shield_normal.collecting.anim_mode",      "linear"                },
 
   { "shield_deadly",                           "RocksDC.png"           },
   { "shield_deadly.xpos",                      "8"                     },
@@ -2302,6 +2345,11 @@ struct ConfigInfo image_config[] =
   { "shield_deadly.active.frames",             "3"                     },
   { "shield_deadly.active.delay",              "8"                     },
   { "shield_deadly.active.anim_mode",          "pingpong"              },
+  { "shield_deadly.collecting",                        "RocksCollect.png"      },
+  { "shield_deadly.collecting.xpos",           "7"                     },
+  { "shield_deadly.collecting.ypos",           "3"                     },
+  { "shield_deadly.collecting.frames",         "7"                     },
+  { "shield_deadly.collecting.anim_mode",      "linear"                },
 
   { "switchgate_closed",                       "RocksDC.png"           },
   { "switchgate_closed.xpos",                  "8"                     },
@@ -2353,11 +2401,21 @@ struct ConfigInfo image_config[] =
   { "pearl.breaking.frames",                   "4"                     },
   { "pearl.breaking.delay",                    "2"                     },
   { "pearl.breaking.anim_mode",                        "linear"                },
+  { "pearl.collecting",                                "RocksCollect.png"      },
+  { "pearl.collecting.xpos",                   "0"                     },
+  { "pearl.collecting.ypos",                   "16"                    },
+  { "pearl.collecting.frames",                 "7"                     },
+  { "pearl.collecting.anim_mode",              "linear"                },
 
   { "crystal",                                 "RocksDC.png"           },
   { "crystal.xpos",                            "9"                     },
   { "crystal.ypos",                            "11"                    },
   { "crystal.frames",                          "1"                     },
+  { "crystal.collecting",                      "RocksCollect.png"      },
+  { "crystal.collecting.xpos",                 "0"                     },
+  { "crystal.collecting.ypos",                 "17"                    },
+  { "crystal.collecting.frames",               "7"                     },
+  { "crystal.collecting.anim_mode",            "linear"                },
 
   { "wall_pearl",                              "RocksDC.png"           },
   { "wall_pearl.xpos",                         "10"                    },
@@ -2459,7 +2517,7 @@ struct ConfigInfo image_config[] =
   { "dc_steelwall_2_single.ypos",              "0"                     },
   { "dc_steelwall_2_single.frames",            "1"                     },
 
-  /* images for DX Boulderdash style elements and actions */
+  // images for DX Boulderdash style elements and actions
 
   { "tube_right_down",                         "RocksDC.png"           },
   { "tube_right_down.xpos",                    "9"                     },
@@ -2535,36 +2593,44 @@ struct ConfigInfo image_config[] =
   { "dx_supabomb.ypos",                                "9"                     },
   { "dx_supabomb.frames",                      "1"                     },
 
-  /* images for Rocks'n'Diamonds style elements and actions */
+  // images for Rocks'n'Diamonds style elements and actions
 
   { "key_1",                                   "RocksElements.png"     },
   { "key_1.xpos",                              "4"                     },
   { "key_1.ypos",                              "1"                     },
   { "key_1.frames",                            "1"                     },
-  { "key_1.EDITOR",                            "RocksElements.png"     },
-  { "key_1.EDITOR.xpos",                       "4"                     },
-  { "key_1.EDITOR.ypos",                       "14"                    },
+  { "key_1.collecting",                                "RocksCollect.png"      },
+  { "key_1.collecting.xpos",                   "0"                     },
+  { "key_1.collecting.ypos",                   "3"                     },
+  { "key_1.collecting.frames",                 "7"                     },
+  { "key_1.collecting.anim_mode",              "linear"                },
   { "key_2",                                   "RocksElements.png"     },
   { "key_2.xpos",                              "5"                     },
   { "key_2.ypos",                              "1"                     },
   { "key_2.frames",                            "1"                     },
-  { "key_2.EDITOR",                            "RocksElements.png"     },
-  { "key_2.EDITOR.xpos",                       "5"                     },
-  { "key_2.EDITOR.ypos",                       "14"                    },
+  { "key_2.collecting",                                "RocksCollect.png"      },
+  { "key_2.collecting.xpos",                   "0"                     },
+  { "key_2.collecting.ypos",                   "4"                     },
+  { "key_2.collecting.frames",                 "7"                     },
+  { "key_2.collecting.anim_mode",              "linear"                },
   { "key_3",                                   "RocksElements.png"     },
   { "key_3.xpos",                              "6"                     },
   { "key_3.ypos",                              "1"                     },
   { "key_3.frames",                            "1"                     },
-  { "key_3.EDITOR",                            "RocksElements.png"     },
-  { "key_3.EDITOR.xpos",                       "6"                     },
-  { "key_3.EDITOR.ypos",                       "14"                    },
+  { "key_3.collecting",                                "RocksCollect.png"      },
+  { "key_3.collecting.xpos",                   "0"                     },
+  { "key_3.collecting.ypos",                   "5"                     },
+  { "key_3.collecting.frames",                 "7"                     },
+  { "key_3.collecting.anim_mode",              "linear"                },
   { "key_4",                                   "RocksElements.png"     },
   { "key_4.xpos",                              "7"                     },
   { "key_4.ypos",                              "1"                     },
   { "key_4.frames",                            "1"                     },
-  { "key_4.EDITOR",                            "RocksElements.png"     },
-  { "key_4.EDITOR.xpos",                       "7"                     },
-  { "key_4.EDITOR.ypos",                       "14"                    },
+  { "key_4.collecting",                                "RocksCollect.png"      },
+  { "key_4.collecting.xpos",                   "0"                     },
+  { "key_4.collecting.ypos",                   "6"                     },
+  { "key_4.collecting.frames",                 "7"                     },
+  { "key_4.collecting.anim_mode",              "linear"                },
 
   { "gate_1",                                  "RocksElements.png"     },
   { "gate_1.xpos",                             "4"                     },
@@ -2686,9 +2752,6 @@ struct ConfigInfo image_config[] =
   { "lamp.xpos",                               "0"                     },
   { "lamp.ypos",                               "7"                     },
   { "lamp.frames",                             "1"                     },
-  { "lamp.EDITOR",                             "RocksElements.png"     },
-  { "lamp.EDITOR.xpos",                                "2"                     },
-  { "lamp.EDITOR.ypos",                                "14"                    },
   { "lamp.active",                             "RocksElements.png"     },
   { "lamp.active.xpos",                                "1"                     },
   { "lamp.active.ypos",                                "7"                     },
@@ -2717,6 +2780,11 @@ struct ConfigInfo image_config[] =
   { "emerald_yellow.falling.ypos",             "8"                     },
   { "emerald_yellow.falling.frames",           "2"                     },
   { "emerald_yellow.falling.delay",            "4"                     },
+  { "emerald_yellow.collecting",               "RocksCollect.png"      },
+  { "emerald_yellow.collecting.xpos",          "0"                     },
+  { "emerald_yellow.collecting.ypos",          "9"                     },
+  { "emerald_yellow.collecting.frames",                "7"                     },
+  { "emerald_yellow.collecting.anim_mode",     "linear"                },
   { "emerald_red",                             "RocksElements.png"     },
   { "emerald_red.xpos",                                "8"                     },
   { "emerald_red.ypos",                                "9"                     },
@@ -2731,6 +2799,11 @@ struct ConfigInfo image_config[] =
   { "emerald_red.falling.ypos",                        "9"                     },
   { "emerald_red.falling.frames",              "2"                     },
   { "emerald_red.falling.delay",               "4"                     },
+  { "emerald_red.collecting",                  "RocksCollect.png"      },
+  { "emerald_red.collecting.xpos",             "0"                     },
+  { "emerald_red.collecting.ypos",             "13"                    },
+  { "emerald_red.collecting.frames",           "7"                     },
+  { "emerald_red.collecting.anim_mode",                "linear"                },
   { "emerald_purple",                          "RocksElements.png"     },
   { "emerald_purple.xpos",                     "10"                    },
   { "emerald_purple.ypos",                     "9"                     },
@@ -2745,6 +2818,11 @@ struct ConfigInfo image_config[] =
   { "emerald_purple.falling.ypos",             "9"                     },
   { "emerald_purple.falling.frames",           "2"                     },
   { "emerald_purple.falling.delay",            "4"                     },
+  { "emerald_purple.collecting",               "RocksCollect.png"      },
+  { "emerald_purple.collecting.xpos",          "0"                     },
+  { "emerald_purple.collecting.ypos",          "14"                    },
+  { "emerald_purple.collecting.frames",                "7"                     },
+  { "emerald_purple.collecting.anim_mode",     "linear"                },
 
   { "wall_emerald_yellow",                     "RocksElements.png"     },
   { "wall_emerald_yellow.xpos",                        "8"                     },
@@ -2878,6 +2956,11 @@ struct ConfigInfo image_config[] =
   { "speed_pill.xpos",                         "14"                    },
   { "speed_pill.ypos",                         "9"                     },
   { "speed_pill.frames",                       "1"                     },
+  { "speed_pill.collecting",                   "RocksCollect.png"      },
+  { "speed_pill.collecting.xpos",              "0"                     },
+  { "speed_pill.collecting.ypos",              "2"                     },
+  { "speed_pill.collecting.frames",            "7"                     },
+  { "speed_pill.collecting.anim_mode",         "linear"                },
 
   { "dark_yamyam",                             "RocksElements.png"     },
   { "dark_yamyam.xpos",                                "8"                     },
@@ -2939,14 +3022,29 @@ struct ConfigInfo image_config[] =
   { "dynabomb_increase_number.xpos",           "12"                    },
   { "dynabomb_increase_number.ypos",           "11"                    },
   { "dynabomb_increase_number.frames",         "1"                     },
+  { "dynabomb_increase_number.collecting",     "RocksCollect.png"      },
+  { "dynabomb_increase_number.collecting.xpos",        "0"                     },
+  { "dynabomb_increase_number.collecting.ypos",        "10"                    },
+  { "dynabomb_increase_number.collecting.frames", "7"                  },
+  { "dynabomb_increase_number.collecting.anim_mode", "linear"          },
   { "dynabomb_increase_size",                  "RocksElements.png"     },
   { "dynabomb_increase_size.xpos",             "15"                    },
   { "dynabomb_increase_size.ypos",             "11"                    },
   { "dynabomb_increase_size.frames",           "1"                     },
+  { "dynabomb_increase_size.collecting",       "RocksCollect.png"      },
+  { "dynabomb_increase_size.collecting.xpos",  "0"                     },
+  { "dynabomb_increase_size.collecting.ypos",  "11"                    },
+  { "dynabomb_increase_size.collecting.frames",        "7"                     },
+  { "dynabomb_increase_size.collecting.anim_mode", "linear"            },
   { "dynabomb_increase_power",                 "RocksElements.png"     },
   { "dynabomb_increase_power.xpos",            "12"                    },
   { "dynabomb_increase_power.ypos",            "9"                     },
   { "dynabomb_increase_power.frames",          "1"                     },
+  { "dynabomb_increase_power.collecting",      "RocksCollect.png"      },
+  { "dynabomb_increase_power.collecting.xpos", "0"                     },
+  { "dynabomb_increase_power.collecting.ypos", "12"                    },
+  { "dynabomb_increase_power.collecting.frames", "7"                   },
+  { "dynabomb_increase_power.collecting.anim_mode", "linear"           },
 
   { "pig",                                     "RocksHeroes.png"       },
   { "pig.xpos",                                        "8"                     },
@@ -3131,9 +3229,6 @@ struct ConfigInfo image_config[] =
   { "penguin.xpos",                            "8"                     },
   { "penguin.ypos",                            "6"                     },
   { "penguin.frames",                          "1"                     },
-  { "penguin.EDITOR",                          "RocksElements.png"     },
-  { "penguin.EDITOR.xpos",                     "12"                    },
-  { "penguin.EDITOR.ypos",                     "14"                    },
   { "penguin.down",                            "RocksHeroes.png"       },
   { "penguin.down.xpos",                       "8"                     },
   { "penguin.down.ypos",                       "6"                     },
@@ -3247,15 +3342,12 @@ struct ConfigInfo image_config[] =
   { "stoneblock.ypos",                         "1"                     },
   { "stoneblock.frames",                       "1"                     },
 
-  /* images for other elements and actions */
+  // images for other elements and actions
 
   { "player_1",                                        "RocksHeroes.png"       },
   { "player_1.xpos",                           "0"                     },
   { "player_1.ypos",                           "0"                     },
   { "player_1.frames",                         "1"                     },
-  { "player_1.EDITOR",                         "RocksElements.png"     },
-  { "player_1.EDITOR.xpos",                    "4"                     },
-  { "player_1.EDITOR.ypos",                    "7"                     },
   { "player_1.down",                           "RocksHeroes.png"       },
   { "player_1.down.xpos",                      "0"                     },
   { "player_1.down.ypos",                      "0"                     },
@@ -3385,9 +3477,6 @@ struct ConfigInfo image_config[] =
   { "player_2.xpos",                           "0"                     },
   { "player_2.ypos",                           "3"                     },
   { "player_2.frames",                         "1"                     },
-  { "player_2.EDITOR",                         "RocksElements.png"     },
-  { "player_2.EDITOR.xpos",                    "5"                     },
-  { "player_2.EDITOR.ypos",                    "7"                     },
   { "player_2.down",                           "RocksHeroes.png"       },
   { "player_2.down.xpos",                      "0"                     },
   { "player_2.down.ypos",                      "3"                     },
@@ -3517,9 +3606,6 @@ struct ConfigInfo image_config[] =
   { "player_3.xpos",                           "0"                     },
   { "player_3.ypos",                           "6"                     },
   { "player_3.frames",                         "1"                     },
-  { "player_3.EDITOR",                         "RocksElements.png"     },
-  { "player_3.EDITOR.xpos",                    "6"                     },
-  { "player_3.EDITOR.ypos",                    "7"                     },
   { "player_3.down",                           "RocksHeroes.png"       },
   { "player_3.down.xpos",                      "0"                     },
   { "player_3.down.ypos",                      "6"                     },
@@ -3649,9 +3735,6 @@ struct ConfigInfo image_config[] =
   { "player_4.xpos",                           "0"                     },
   { "player_4.ypos",                           "9"                     },
   { "player_4.frames",                         "1"                     },
-  { "player_4.EDITOR",                         "RocksElements.png"     },
-  { "player_4.EDITOR.xpos",                    "7"                     },
-  { "player_4.EDITOR.ypos",                    "7"                     },
   { "player_4.down",                           "RocksHeroes.png"       },
   { "player_4.down.xpos",                      "0"                     },
   { "player_4.down.ypos",                      "9"                     },
@@ -4033,18 +4116,38 @@ struct ConfigInfo image_config[] =
   { "emc_key_5.xpos",                          "0"                     },
   { "emc_key_5.ypos",                          "5"                     },
   { "emc_key_5.frames",                                "1"                     },
+  { "emc_key_5.collecting",                    "RocksCollect.png"      },
+  { "emc_key_5.collecting.xpos",               "7"                     },
+  { "emc_key_5.collecting.ypos",               "12"                    },
+  { "emc_key_5.collecting.frames",             "7"                     },
+  { "emc_key_5.collecting.anim_mode",          "linear"                },
   { "emc_key_6",                               "RocksEMC.png"          },
   { "emc_key_6.xpos",                          "1"                     },
   { "emc_key_6.ypos",                          "5"                     },
   { "emc_key_6.frames",                                "1"                     },
+  { "emc_key_6.collecting",                    "RocksCollect.png"      },
+  { "emc_key_6.collecting.xpos",               "7"                     },
+  { "emc_key_6.collecting.ypos",               "13"                    },
+  { "emc_key_6.collecting.frames",             "7"                     },
+  { "emc_key_6.collecting.anim_mode",          "linear"                },
   { "emc_key_7",                               "RocksEMC.png"          },
   { "emc_key_7.xpos",                          "2"                     },
   { "emc_key_7.ypos",                          "5"                     },
   { "emc_key_7.frames",                                "1"                     },
+  { "emc_key_7.collecting",                    "RocksCollect.png"      },
+  { "emc_key_7.collecting.xpos",               "7"                     },
+  { "emc_key_7.collecting.ypos",               "14"                    },
+  { "emc_key_7.collecting.frames",             "7"                     },
+  { "emc_key_7.collecting.anim_mode",          "linear"                },
   { "emc_key_8",                               "RocksEMC.png"          },
   { "emc_key_8.xpos",                          "3"                     },
   { "emc_key_8.ypos",                          "5"                     },
   { "emc_key_8.frames",                                "1"                     },
+  { "emc_key_8.collecting",                    "RocksCollect.png"      },
+  { "emc_key_8.collecting.xpos",               "7"                     },
+  { "emc_key_8.collecting.ypos",               "15"                    },
+  { "emc_key_8.collecting.frames",             "7"                     },
+  { "emc_key_8.collecting.anim_mode",          "linear"                },
 
   { "emc_gate_5",                              "RocksEMC.png"          },
   { "emc_gate_5.xpos",                         "0"                     },
@@ -4266,11 +4369,21 @@ struct ConfigInfo image_config[] =
   { "emc_lenses.xpos",                         "6"                     },
   { "emc_lenses.ypos",                         "4"                     },
   { "emc_lenses.frames",                       "1"                     },
+  { "emc_lenses.collecting",                   "RocksCollect.png"      },
+  { "emc_lenses.collecting.xpos",              "7"                     },
+  { "emc_lenses.collecting.ypos",              "16"                    },
+  { "emc_lenses.collecting.frames",            "7"                     },
+  { "emc_lenses.collecting.anim_mode",         "linear"                },
 
   { "emc_magnifier",                           "RocksEMC.png"          },
   { "emc_magnifier.xpos",                      "7"                     },
   { "emc_magnifier.ypos",                      "4"                     },
   { "emc_magnifier.frames",                    "1"                     },
+  { "emc_magnifier.collecting",                        "RocksCollect.png"      },
+  { "emc_magnifier.collecting.xpos",           "7"                     },
+  { "emc_magnifier.collecting.ypos",           "17"                    },
+  { "emc_magnifier.collecting.frames",         "7"                     },
+  { "emc_magnifier.collecting.anim_mode",      "linear"                },
 
   { "emc_wall_9",                              "RocksEMC.png"          },
   { "emc_wall_9.xpos",                         "10"                    },
@@ -4521,428 +4634,434 @@ struct ConfigInfo image_config[] =
   { "mm_wooden_grid_fixed_4.ypos",             "6"                     },
   { "mm_wooden_grid_fixed_4.frames",           "1"                     },
 
-  { "mm_polarisator_1",                                "RocksMM.png"           },
-  { "mm_polarisator_1.xpos",                   "0"                     },
-  { "mm_polarisator_1.ypos",                   "5"                     },
-  { "mm_polarisator_1.frames",                 "1"                     },
-  { "mm_polarisator_2",                                "RocksMM.png"           },
-  { "mm_polarisator_2.xpos",                   "1"                     },
-  { "mm_polarisator_2.ypos",                   "5"                     },
-  { "mm_polarisator_2.frames",                 "1"                     },
-  { "mm_polarisator_3",                                "RocksMM.png"           },
-  { "mm_polarisator_3.xpos",                   "2"                     },
-  { "mm_polarisator_3.ypos",                   "5"                     },
-  { "mm_polarisator_3.frames",                 "1"                     },
-  { "mm_polarisator_4",                                "RocksMM.png"           },
-  { "mm_polarisator_4.xpos",                   "3"                     },
-  { "mm_polarisator_4.ypos",                   "5"                     },
-  { "mm_polarisator_4.frames",                 "1"                     },
-  { "mm_polarisator_5",                                "RocksMM.png"           },
-  { "mm_polarisator_5.xpos",                   "4"                     },
-  { "mm_polarisator_5.ypos",                   "5"                     },
-  { "mm_polarisator_5.frames",                 "1"                     },
-  { "mm_polarisator_6",                                "RocksMM.png"           },
-  { "mm_polarisator_6.xpos",                   "5"                     },
-  { "mm_polarisator_6.ypos",                   "5"                     },
-  { "mm_polarisator_6.frames",                 "1"                     },
-  { "mm_polarisator_7",                                "RocksMM.png"           },
-  { "mm_polarisator_7.xpos",                   "6"                     },
-  { "mm_polarisator_7.ypos",                   "5"                     },
-  { "mm_polarisator_7.frames",                 "1"                     },
-  { "mm_polarisator_8",                                "RocksMM.png"           },
-  { "mm_polarisator_8.xpos",                   "7"                     },
-  { "mm_polarisator_8.ypos",                   "5"                     },
-  { "mm_polarisator_8.frames",                 "1"                     },
-  { "mm_polarisator_9",                                "RocksMM.png"           },
-  { "mm_polarisator_9.xpos",                   "8"                     },
-  { "mm_polarisator_9.ypos",                   "5"                     },
-  { "mm_polarisator_9.frames",                 "1"                     },
-  { "mm_polarisator_10",                       "RocksMM.png"           },
-  { "mm_polarisator_10.xpos",                  "9"                     },
-  { "mm_polarisator_10.ypos",                  "5"                     },
-  { "mm_polarisator_10.frames",                        "1"                     },
-  { "mm_polarisator_11",                       "RocksMM.png"           },
-  { "mm_polarisator_11.xpos",                  "10"                    },
-  { "mm_polarisator_11.ypos",                  "5"                     },
-  { "mm_polarisator_11.frames",                        "1"                     },
-  { "mm_polarisator_12",                       "RocksMM.png"           },
-  { "mm_polarisator_12.xpos",                  "11"                    },
-  { "mm_polarisator_12.ypos",                  "5"                     },
-  { "mm_polarisator_12.frames",                        "1"                     },
-  { "mm_polarisator_13",                       "RocksMM.png"           },
-  { "mm_polarisator_13.xpos",                  "12"                    },
-  { "mm_polarisator_13.ypos",                  "5"                     },
-  { "mm_polarisator_13.frames",                        "1"                     },
-  { "mm_polarisator_14",                       "RocksMM.png"           },
-  { "mm_polarisator_14.xpos",                  "13"                    },
-  { "mm_polarisator_14.ypos",                  "5"                     },
-  { "mm_polarisator_14.frames",                        "1"                     },
-  { "mm_polarisator_15",                       "RocksMM.png"           },
-  { "mm_polarisator_15.xpos",                  "14"                    },
-  { "mm_polarisator_15.ypos",                  "5"                     },
-  { "mm_polarisator_15.frames",                        "1"                     },
-  { "mm_polarisator_16",                       "RocksMM.png"           },
-  { "mm_polarisator_16.xpos",                  "15"                    },
-  { "mm_polarisator_16.ypos",                  "5"                     },
-  { "mm_polarisator_16.frames",                        "1"                     },
-
-  { "mm_polarisator_cross_1",                  "RocksMM.png"           },
-  { "mm_polarisator_cross_1.xpos",             "0"                     },
-  { "mm_polarisator_cross_1.ypos",             "6"                     },
-  { "mm_polarisator_cross_1.frames",           "1"                     },
-  { "mm_polarisator_cross_2",                  "RocksMM.png"           },
-  { "mm_polarisator_cross_2.xpos",             "1"                     },
-  { "mm_polarisator_cross_2.ypos",             "6"                     },
-  { "mm_polarisator_cross_2.frames",           "1"                     },
-  { "mm_polarisator_cross_3",                  "RocksMM.png"           },
-  { "mm_polarisator_cross_3.xpos",             "2"                     },
-  { "mm_polarisator_cross_3.ypos",             "6"                     },
-  { "mm_polarisator_cross_3.frames",           "1"                     },
-  { "mm_polarisator_cross_4",                  "RocksMM.png"           },
-  { "mm_polarisator_cross_4.xpos",             "3"                     },
-  { "mm_polarisator_cross_4.ypos",             "6"                     },
-  { "mm_polarisator_cross_4.frames",           "1"                     },
-
-  { "mm_beamer_1",                             "RocksMM.png"           },
-  { "mm_beamer_1.xpos",                                "0"                     },
-  { "mm_beamer_1.ypos",                                "3"                     },
-  { "mm_beamer_1.frames",                      "1"                     },
-  { "mm_beamer_2",                             "RocksMM.png"           },
-  { "mm_beamer_2.xpos",                                "1"                     },
-  { "mm_beamer_2.ypos",                                "3"                     },
-  { "mm_beamer_2.frames",                      "1"                     },
-  { "mm_beamer_3",                             "RocksMM.png"           },
-  { "mm_beamer_3.xpos",                                "2"                     },
-  { "mm_beamer_3.ypos",                                "3"                     },
-  { "mm_beamer_3.frames",                      "1"                     },
-  { "mm_beamer_4",                             "RocksMM.png"           },
-  { "mm_beamer_4.xpos",                                "3"                     },
-  { "mm_beamer_4.ypos",                                "3"                     },
-  { "mm_beamer_4.frames",                      "1"                     },
-  { "mm_beamer_5",                             "RocksMM.png"           },
-  { "mm_beamer_5.xpos",                                "4"                     },
-  { "mm_beamer_5.ypos",                                "3"                     },
-  { "mm_beamer_5.frames",                      "1"                     },
-  { "mm_beamer_6",                             "RocksMM.png"           },
-  { "mm_beamer_6.xpos",                                "5"                     },
-  { "mm_beamer_6.ypos",                                "3"                     },
-  { "mm_beamer_6.frames",                      "1"                     },
-  { "mm_beamer_7",                             "RocksMM.png"           },
-  { "mm_beamer_7.xpos",                                "6"                     },
-  { "mm_beamer_7.ypos",                                "3"                     },
-  { "mm_beamer_7.frames",                      "1"                     },
-  { "mm_beamer_8",                             "RocksMM.png"           },
-  { "mm_beamer_8.xpos",                                "7"                     },
-  { "mm_beamer_8.ypos",                                "3"                     },
-  { "mm_beamer_8.frames",                      "1"                     },
-  { "mm_beamer_9",                             "RocksMM.png"           },
-  { "mm_beamer_9.xpos",                                "8"                     },
-  { "mm_beamer_9.ypos",                                "3"                     },
-  { "mm_beamer_9.frames",                      "1"                     },
-  { "mm_beamer_10",                            "RocksMM.png"           },
-  { "mm_beamer_10.xpos",                       "9"                     },
-  { "mm_beamer_10.ypos",                       "3"                     },
-  { "mm_beamer_10.frames",                     "1"                     },
-  { "mm_beamer_11",                            "RocksMM.png"           },
-  { "mm_beamer_11.xpos",                       "10"                    },
-  { "mm_beamer_11.ypos",                       "3"                     },
-  { "mm_beamer_11.frames",                     "1"                     },
-  { "mm_beamer_12",                            "RocksMM.png"           },
-  { "mm_beamer_12.xpos",                       "11"                    },
-  { "mm_beamer_12.ypos",                       "3"                     },
-  { "mm_beamer_12.frames",                     "1"                     },
-  { "mm_beamer_13",                            "RocksMM.png"           },
-  { "mm_beamer_13.xpos",                       "12"                    },
-  { "mm_beamer_13.ypos",                       "3"                     },
-  { "mm_beamer_13.frames",                     "1"                     },
-  { "mm_beamer_14",                            "RocksMM.png"           },
-  { "mm_beamer_14.xpos",                       "13"                    },
-  { "mm_beamer_14.ypos",                       "3"                     },
-  { "mm_beamer_14.frames",                     "1"                     },
-  { "mm_beamer_15",                            "RocksMM.png"           },
-  { "mm_beamer_15.xpos",                       "14"                    },
-  { "mm_beamer_15.ypos",                       "3"                     },
-  { "mm_beamer_15.frames",                     "1"                     },
-  { "mm_beamer_16",                            "RocksMM.png"           },
-  { "mm_beamer_16.xpos",                       "15"                    },
-  { "mm_beamer_16.ypos",                       "3"                     },
-  { "mm_beamer_16.frames",                     "1"                     },
-
-  { "mm_beamer_red_1",                         "RocksDF.png"           },
-  { "mm_beamer_red_1.xpos",                    "0"                     },
-  { "mm_beamer_red_1.ypos",                    "4"                     },
-  { "mm_beamer_red_1.frames",                  "1"                     },
-  { "mm_beamer_red_2",                         "RocksDF.png"           },
-  { "mm_beamer_red_2.xpos",                    "1"                     },
-  { "mm_beamer_red_2.ypos",                    "4"                     },
-  { "mm_beamer_red_2.frames",                  "1"                     },
-  { "mm_beamer_red_3",                         "RocksDF.png"           },
-  { "mm_beamer_red_3.xpos",                    "2"                     },
-  { "mm_beamer_red_3.ypos",                    "4"                     },
-  { "mm_beamer_red_3.frames",                  "1"                     },
-  { "mm_beamer_red_4",                         "RocksDF.png"           },
-  { "mm_beamer_red_4.xpos",                    "3"                     },
-  { "mm_beamer_red_4.ypos",                    "4"                     },
-  { "mm_beamer_red_4.frames",                  "1"                     },
-  { "mm_beamer_red_5",                         "RocksDF.png"           },
-  { "mm_beamer_red_5.xpos",                    "4"                     },
-  { "mm_beamer_red_5.ypos",                    "4"                     },
-  { "mm_beamer_red_5.frames",                  "1"                     },
-  { "mm_beamer_red_6",                         "RocksDF.png"           },
-  { "mm_beamer_red_6.xpos",                    "5"                     },
-  { "mm_beamer_red_6.ypos",                    "4"                     },
-  { "mm_beamer_red_6.frames",                  "1"                     },
-  { "mm_beamer_red_7",                         "RocksDF.png"           },
-  { "mm_beamer_red_7.xpos",                    "6"                     },
-  { "mm_beamer_red_7.ypos",                    "4"                     },
-  { "mm_beamer_red_7.frames",                  "1"                     },
-  { "mm_beamer_red_8",                         "RocksDF.png"           },
-  { "mm_beamer_red_8.xpos",                    "7"                     },
-  { "mm_beamer_red_8.ypos",                    "4"                     },
-  { "mm_beamer_red_8.frames",                  "1"                     },
-  { "mm_beamer_red_9",                         "RocksDF.png"           },
-  { "mm_beamer_red_9.xpos",                    "8"                     },
-  { "mm_beamer_red_9.ypos",                    "4"                     },
-  { "mm_beamer_red_9.frames",                  "1"                     },
-  { "mm_beamer_red_10",                                "RocksDF.png"           },
-  { "mm_beamer_red_10.xpos",                   "9"                     },
-  { "mm_beamer_red_10.ypos",                   "4"                     },
-  { "mm_beamer_red_10.frames",                 "1"                     },
-  { "mm_beamer_red_11",                                "RocksDF.png"           },
-  { "mm_beamer_red_11.xpos",                   "10"                    },
-  { "mm_beamer_red_11.ypos",                   "4"                     },
-  { "mm_beamer_red_11.frames",                 "1"                     },
-  { "mm_beamer_red_12",                                "RocksDF.png"           },
-  { "mm_beamer_red_12.xpos",                   "11"                    },
-  { "mm_beamer_red_12.ypos",                   "4"                     },
-  { "mm_beamer_red_12.frames",                 "1"                     },
-  { "mm_beamer_red_13",                                "RocksDF.png"           },
-  { "mm_beamer_red_13.xpos",                   "12"                    },
-  { "mm_beamer_red_13.ypos",                   "4"                     },
-  { "mm_beamer_red_13.frames",                 "1"                     },
-  { "mm_beamer_red_14",                                "RocksDF.png"           },
-  { "mm_beamer_red_14.xpos",                   "13"                    },
-  { "mm_beamer_red_14.ypos",                   "4"                     },
-  { "mm_beamer_red_14.frames",                 "1"                     },
-  { "mm_beamer_red_15",                                "RocksDF.png"           },
-  { "mm_beamer_red_15.xpos",                   "14"                    },
-  { "mm_beamer_red_15.ypos",                   "4"                     },
-  { "mm_beamer_red_15.frames",                 "1"                     },
-  { "mm_beamer_red_16",                                "RocksDF.png"           },
-  { "mm_beamer_red_16.xpos",                   "15"                    },
-  { "mm_beamer_red_16.ypos",                   "4"                     },
-  { "mm_beamer_red_16.frames",                 "1"                     },
-
-  { "mm_beamer_yellow_1",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_1.xpos",                 "0"                     },
-  { "mm_beamer_yellow_1.ypos",                 "5"                     },
-  { "mm_beamer_yellow_1.frames",               "1"                     },
-  { "mm_beamer_yellow_2",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_2.xpos",                 "1"                     },
-  { "mm_beamer_yellow_2.ypos",                 "5"                     },
-  { "mm_beamer_yellow_2.frames",               "1"                     },
-  { "mm_beamer_yellow_3",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_3.xpos",                 "2"                     },
-  { "mm_beamer_yellow_3.ypos",                 "5"                     },
-  { "mm_beamer_yellow_3.frames",               "1"                     },
-  { "mm_beamer_yellow_4",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_4.xpos",                 "3"                     },
-  { "mm_beamer_yellow_4.ypos",                 "5"                     },
-  { "mm_beamer_yellow_4.frames",               "1"                     },
-  { "mm_beamer_yellow_5",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_5.xpos",                 "4"                     },
-  { "mm_beamer_yellow_5.ypos",                 "5"                     },
-  { "mm_beamer_yellow_5.frames",               "1"                     },
-  { "mm_beamer_yellow_6",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_6.xpos",                 "5"                     },
-  { "mm_beamer_yellow_6.ypos",                 "5"                     },
-  { "mm_beamer_yellow_6.frames",               "1"                     },
-  { "mm_beamer_yellow_7",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_7.xpos",                 "6"                     },
-  { "mm_beamer_yellow_7.ypos",                 "5"                     },
-  { "mm_beamer_yellow_7.frames",               "1"                     },
-  { "mm_beamer_yellow_8",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_8.xpos",                 "7"                     },
-  { "mm_beamer_yellow_8.ypos",                 "5"                     },
-  { "mm_beamer_yellow_8.frames",               "1"                     },
-  { "mm_beamer_yellow_9",                      "RocksDF.png"           },
-  { "mm_beamer_yellow_9.xpos",                 "8"                     },
-  { "mm_beamer_yellow_9.ypos",                 "5"                     },
-  { "mm_beamer_yellow_9.frames",               "1"                     },
-  { "mm_beamer_yellow_10",                     "RocksDF.png"           },
-  { "mm_beamer_yellow_10.xpos",                        "9"                     },
-  { "mm_beamer_yellow_10.ypos",                        "5"                     },
-  { "mm_beamer_yellow_10.frames",              "1"                     },
-  { "mm_beamer_yellow_11",                     "RocksDF.png"           },
-  { "mm_beamer_yellow_11.xpos",                        "10"                    },
-  { "mm_beamer_yellow_11.ypos",                        "5"                     },
-  { "mm_beamer_yellow_11.frames",              "1"                     },
-  { "mm_beamer_yellow_12",                     "RocksDF.png"           },
-  { "mm_beamer_yellow_12.xpos",                        "11"                    },
-  { "mm_beamer_yellow_12.ypos",                        "5"                     },
-  { "mm_beamer_yellow_12.frames",              "1"                     },
-  { "mm_beamer_yellow_13",                     "RocksDF.png"           },
-  { "mm_beamer_yellow_13.xpos",                        "12"                    },
-  { "mm_beamer_yellow_13.ypos",                        "5"                     },
-  { "mm_beamer_yellow_13.frames",              "1"                     },
-  { "mm_beamer_yellow_14",                     "RocksDF.png"           },
-  { "mm_beamer_yellow_14.xpos",                        "13"                    },
-  { "mm_beamer_yellow_14.ypos",                        "5"                     },
-  { "mm_beamer_yellow_14.frames",              "1"                     },
-  { "mm_beamer_yellow_15",                     "RocksDF.png"           },
-  { "mm_beamer_yellow_15.xpos",                        "14"                    },
-  { "mm_beamer_yellow_15.ypos",                        "5"                     },
-  { "mm_beamer_yellow_15.frames",              "1"                     },
-  { "mm_beamer_yellow_16",                     "RocksDF.png"           },
-  { "mm_beamer_yellow_16.xpos",                        "15"                    },
-  { "mm_beamer_yellow_16.ypos",                        "5"                     },
-  { "mm_beamer_yellow_16.frames",              "1"                     },
-
-  { "mm_beamer_green_1",                       "RocksDF.png"           },
-  { "mm_beamer_green_1.xpos",                  "0"                     },
-  { "mm_beamer_green_1.ypos",                  "6"                     },
-  { "mm_beamer_green_1.frames",                        "1"                     },
-  { "mm_beamer_green_2",                       "RocksDF.png"           },
-  { "mm_beamer_green_2.xpos",                  "1"                     },
-  { "mm_beamer_green_2.ypos",                  "6"                     },
-  { "mm_beamer_green_2.frames",                        "1"                     },
-  { "mm_beamer_green_3",                       "RocksDF.png"           },
-  { "mm_beamer_green_3.xpos",                  "2"                     },
-  { "mm_beamer_green_3.ypos",                  "6"                     },
-  { "mm_beamer_green_3.frames",                        "1"                     },
-  { "mm_beamer_green_4",                       "RocksDF.png"           },
-  { "mm_beamer_green_4.xpos",                  "3"                     },
-  { "mm_beamer_green_4.ypos",                  "6"                     },
-  { "mm_beamer_green_4.frames",                        "1"                     },
-  { "mm_beamer_green_5",                       "RocksDF.png"           },
-  { "mm_beamer_green_5.xpos",                  "4"                     },
-  { "mm_beamer_green_5.ypos",                  "6"                     },
-  { "mm_beamer_green_5.frames",                        "1"                     },
-  { "mm_beamer_green_6",                       "RocksDF.png"           },
-  { "mm_beamer_green_6.xpos",                  "5"                     },
-  { "mm_beamer_green_6.ypos",                  "6"                     },
-  { "mm_beamer_green_6.frames",                        "1"                     },
-  { "mm_beamer_green_7",                       "RocksDF.png"           },
-  { "mm_beamer_green_7.xpos",                  "6"                     },
-  { "mm_beamer_green_7.ypos",                  "6"                     },
-  { "mm_beamer_green_7.frames",                        "1"                     },
-  { "mm_beamer_green_8",                       "RocksDF.png"           },
-  { "mm_beamer_green_8.xpos",                  "7"                     },
-  { "mm_beamer_green_8.ypos",                  "6"                     },
-  { "mm_beamer_green_8.frames",                        "1"                     },
-  { "mm_beamer_green_9",                       "RocksDF.png"           },
-  { "mm_beamer_green_9.xpos",                  "8"                     },
-  { "mm_beamer_green_9.ypos",                  "6"                     },
-  { "mm_beamer_green_9.frames",                        "1"                     },
-  { "mm_beamer_green_10",                      "RocksDF.png"           },
-  { "mm_beamer_green_10.xpos",                 "9"                     },
-  { "mm_beamer_green_10.ypos",                 "6"                     },
-  { "mm_beamer_green_10.frames",               "1"                     },
-  { "mm_beamer_green_11",                      "RocksDF.png"           },
-  { "mm_beamer_green_11.xpos",                 "10"                    },
-  { "mm_beamer_green_11.ypos",                 "6"                     },
-  { "mm_beamer_green_11.frames",               "1"                     },
-  { "mm_beamer_green_12",                      "RocksDF.png"           },
-  { "mm_beamer_green_12.xpos",                 "11"                    },
-  { "mm_beamer_green_12.ypos",                 "6"                     },
-  { "mm_beamer_green_12.frames",               "1"                     },
-  { "mm_beamer_green_13",                      "RocksDF.png"           },
-  { "mm_beamer_green_13.xpos",                 "12"                    },
-  { "mm_beamer_green_13.ypos",                 "6"                     },
-  { "mm_beamer_green_13.frames",               "1"                     },
-  { "mm_beamer_green_14",                      "RocksDF.png"           },
-  { "mm_beamer_green_14.xpos",                 "13"                    },
-  { "mm_beamer_green_14.ypos",                 "6"                     },
-  { "mm_beamer_green_14.frames",               "1"                     },
-  { "mm_beamer_green_15",                      "RocksDF.png"           },
-  { "mm_beamer_green_15.xpos",                 "14"                    },
-  { "mm_beamer_green_15.ypos",                 "6"                     },
-  { "mm_beamer_green_15.frames",               "1"                     },
-  { "mm_beamer_green_16",                      "RocksDF.png"           },
-  { "mm_beamer_green_16.xpos",                 "15"                    },
-  { "mm_beamer_green_16.ypos",                 "6"                     },
-  { "mm_beamer_green_16.frames",               "1"                     },
-
-  { "mm_beamer_blue_1",                                "RocksDF.png"           },
-  { "mm_beamer_blue_1.xpos",                   "0"                     },
-  { "mm_beamer_blue_1.ypos",                   "7"                     },
-  { "mm_beamer_blue_1.frames",                 "1"                     },
-  { "mm_beamer_blue_2",                                "RocksDF.png"           },
-  { "mm_beamer_blue_2.xpos",                   "1"                     },
-  { "mm_beamer_blue_2.ypos",                   "7"                     },
-  { "mm_beamer_blue_2.frames",                 "1"                     },
-  { "mm_beamer_blue_3",                                "RocksDF.png"           },
-  { "mm_beamer_blue_3.xpos",                   "2"                     },
-  { "mm_beamer_blue_3.ypos",                   "7"                     },
-  { "mm_beamer_blue_3.frames",                 "1"                     },
-  { "mm_beamer_blue_4",                                "RocksDF.png"           },
-  { "mm_beamer_blue_4.xpos",                   "3"                     },
-  { "mm_beamer_blue_4.ypos",                   "7"                     },
-  { "mm_beamer_blue_4.frames",                 "1"                     },
-  { "mm_beamer_blue_5",                                "RocksDF.png"           },
-  { "mm_beamer_blue_5.xpos",                   "4"                     },
-  { "mm_beamer_blue_5.ypos",                   "7"                     },
-  { "mm_beamer_blue_5.frames",                 "1"                     },
-  { "mm_beamer_blue_6",                                "RocksDF.png"           },
-  { "mm_beamer_blue_6.xpos",                   "5"                     },
-  { "mm_beamer_blue_6.ypos",                   "7"                     },
-  { "mm_beamer_blue_6.frames",                 "1"                     },
-  { "mm_beamer_blue_7",                                "RocksDF.png"           },
-  { "mm_beamer_blue_7.xpos",                   "6"                     },
-  { "mm_beamer_blue_7.ypos",                   "7"                     },
-  { "mm_beamer_blue_7.frames",                 "1"                     },
-  { "mm_beamer_blue_8",                                "RocksDF.png"           },
-  { "mm_beamer_blue_8.xpos",                   "7"                     },
-  { "mm_beamer_blue_8.ypos",                   "7"                     },
-  { "mm_beamer_blue_8.frames",                 "1"                     },
-  { "mm_beamer_blue_9",                                "RocksDF.png"           },
-  { "mm_beamer_blue_9.xpos",                   "8"                     },
-  { "mm_beamer_blue_9.ypos",                   "7"                     },
-  { "mm_beamer_blue_9.frames",                 "1"                     },
-  { "mm_beamer_blue_10",                       "RocksDF.png"           },
-  { "mm_beamer_blue_10.xpos",                  "9"                     },
-  { "mm_beamer_blue_10.ypos",                  "7"                     },
-  { "mm_beamer_blue_10.frames",                        "1"                     },
-  { "mm_beamer_blue_11",                       "RocksDF.png"           },
-  { "mm_beamer_blue_11.xpos",                  "10"                    },
-  { "mm_beamer_blue_11.ypos",                  "7"                     },
-  { "mm_beamer_blue_11.frames",                        "1"                     },
-  { "mm_beamer_blue_12",                       "RocksDF.png"           },
-  { "mm_beamer_blue_12.xpos",                  "11"                    },
-  { "mm_beamer_blue_12.ypos",                  "7"                     },
-  { "mm_beamer_blue_12.frames",                        "1"                     },
-  { "mm_beamer_blue_13",                       "RocksDF.png"           },
-  { "mm_beamer_blue_13.xpos",                  "12"                    },
-  { "mm_beamer_blue_13.ypos",                  "7"                     },
-  { "mm_beamer_blue_13.frames",                        "1"                     },
-  { "mm_beamer_blue_14",                       "RocksDF.png"           },
-  { "mm_beamer_blue_14.xpos",                  "13"                    },
-  { "mm_beamer_blue_14.ypos",                  "7"                     },
-  { "mm_beamer_blue_14.frames",                        "1"                     },
-  { "mm_beamer_blue_15",                       "RocksDF.png"           },
-  { "mm_beamer_blue_15.xpos",                  "14"                    },
-  { "mm_beamer_blue_15.ypos",                  "7"                     },
-  { "mm_beamer_blue_15.frames",                        "1"                     },
-  { "mm_beamer_blue_16",                       "RocksDF.png"           },
-  { "mm_beamer_blue_16.xpos",                  "15"                    },
-  { "mm_beamer_blue_16.ypos",                  "7"                     },
-  { "mm_beamer_blue_16.frames",                        "1"                     },
+  { "mm_polarizer_1",                          "RocksMM.png"           },
+  { "mm_polarizer_1.xpos",                     "0"                     },
+  { "mm_polarizer_1.ypos",                     "5"                     },
+  { "mm_polarizer_1.frames",                   "1"                     },
+  { "mm_polarizer_2",                          "RocksMM.png"           },
+  { "mm_polarizer_2.xpos",                     "1"                     },
+  { "mm_polarizer_2.ypos",                     "5"                     },
+  { "mm_polarizer_2.frames",                   "1"                     },
+  { "mm_polarizer_3",                          "RocksMM.png"           },
+  { "mm_polarizer_3.xpos",                     "2"                     },
+  { "mm_polarizer_3.ypos",                     "5"                     },
+  { "mm_polarizer_3.frames",                   "1"                     },
+  { "mm_polarizer_4",                          "RocksMM.png"           },
+  { "mm_polarizer_4.xpos",                     "3"                     },
+  { "mm_polarizer_4.ypos",                     "5"                     },
+  { "mm_polarizer_4.frames",                   "1"                     },
+  { "mm_polarizer_5",                          "RocksMM.png"           },
+  { "mm_polarizer_5.xpos",                     "4"                     },
+  { "mm_polarizer_5.ypos",                     "5"                     },
+  { "mm_polarizer_5.frames",                   "1"                     },
+  { "mm_polarizer_6",                          "RocksMM.png"           },
+  { "mm_polarizer_6.xpos",                     "5"                     },
+  { "mm_polarizer_6.ypos",                     "5"                     },
+  { "mm_polarizer_6.frames",                   "1"                     },
+  { "mm_polarizer_7",                          "RocksMM.png"           },
+  { "mm_polarizer_7.xpos",                     "6"                     },
+  { "mm_polarizer_7.ypos",                     "5"                     },
+  { "mm_polarizer_7.frames",                   "1"                     },
+  { "mm_polarizer_8",                          "RocksMM.png"           },
+  { "mm_polarizer_8.xpos",                     "7"                     },
+  { "mm_polarizer_8.ypos",                     "5"                     },
+  { "mm_polarizer_8.frames",                   "1"                     },
+  { "mm_polarizer_9",                          "RocksMM.png"           },
+  { "mm_polarizer_9.xpos",                     "8"                     },
+  { "mm_polarizer_9.ypos",                     "5"                     },
+  { "mm_polarizer_9.frames",                   "1"                     },
+  { "mm_polarizer_10",                         "RocksMM.png"           },
+  { "mm_polarizer_10.xpos",                    "9"                     },
+  { "mm_polarizer_10.ypos",                    "5"                     },
+  { "mm_polarizer_10.frames",                  "1"                     },
+  { "mm_polarizer_11",                         "RocksMM.png"           },
+  { "mm_polarizer_11.xpos",                    "10"                    },
+  { "mm_polarizer_11.ypos",                    "5"                     },
+  { "mm_polarizer_11.frames",                  "1"                     },
+  { "mm_polarizer_12",                         "RocksMM.png"           },
+  { "mm_polarizer_12.xpos",                    "11"                    },
+  { "mm_polarizer_12.ypos",                    "5"                     },
+  { "mm_polarizer_12.frames",                  "1"                     },
+  { "mm_polarizer_13",                         "RocksMM.png"           },
+  { "mm_polarizer_13.xpos",                    "12"                    },
+  { "mm_polarizer_13.ypos",                    "5"                     },
+  { "mm_polarizer_13.frames",                  "1"                     },
+  { "mm_polarizer_14",                         "RocksMM.png"           },
+  { "mm_polarizer_14.xpos",                    "13"                    },
+  { "mm_polarizer_14.ypos",                    "5"                     },
+  { "mm_polarizer_14.frames",                  "1"                     },
+  { "mm_polarizer_15",                         "RocksMM.png"           },
+  { "mm_polarizer_15.xpos",                    "14"                    },
+  { "mm_polarizer_15.ypos",                    "5"                     },
+  { "mm_polarizer_15.frames",                  "1"                     },
+  { "mm_polarizer_16",                         "RocksMM.png"           },
+  { "mm_polarizer_16.xpos",                    "15"                    },
+  { "mm_polarizer_16.ypos",                    "5"                     },
+  { "mm_polarizer_16.frames",                  "1"                     },
+
+  { "mm_polarizer_cross_1",                    "RocksMM.png"           },
+  { "mm_polarizer_cross_1.xpos",               "0"                     },
+  { "mm_polarizer_cross_1.ypos",               "6"                     },
+  { "mm_polarizer_cross_1.frames",             "1"                     },
+  { "mm_polarizer_cross_2",                    "RocksMM.png"           },
+  { "mm_polarizer_cross_2.xpos",               "1"                     },
+  { "mm_polarizer_cross_2.ypos",               "6"                     },
+  { "mm_polarizer_cross_2.frames",             "1"                     },
+  { "mm_polarizer_cross_3",                    "RocksMM.png"           },
+  { "mm_polarizer_cross_3.xpos",               "2"                     },
+  { "mm_polarizer_cross_3.ypos",               "6"                     },
+  { "mm_polarizer_cross_3.frames",             "1"                     },
+  { "mm_polarizer_cross_4",                    "RocksMM.png"           },
+  { "mm_polarizer_cross_4.xpos",               "3"                     },
+  { "mm_polarizer_cross_4.ypos",               "6"                     },
+  { "mm_polarizer_cross_4.frames",             "1"                     },
+
+  { "mm_teleporter_1",                         "RocksMM.png"           },
+  { "mm_teleporter_1.xpos",                    "0"                     },
+  { "mm_teleporter_1.ypos",                    "3"                     },
+  { "mm_teleporter_1.frames",                  "1"                     },
+  { "mm_teleporter_2",                         "RocksMM.png"           },
+  { "mm_teleporter_2.xpos",                    "1"                     },
+  { "mm_teleporter_2.ypos",                    "3"                     },
+  { "mm_teleporter_2.frames",                  "1"                     },
+  { "mm_teleporter_3",                         "RocksMM.png"           },
+  { "mm_teleporter_3.xpos",                    "2"                     },
+  { "mm_teleporter_3.ypos",                    "3"                     },
+  { "mm_teleporter_3.frames",                  "1"                     },
+  { "mm_teleporter_4",                         "RocksMM.png"           },
+  { "mm_teleporter_4.xpos",                    "3"                     },
+  { "mm_teleporter_4.ypos",                    "3"                     },
+  { "mm_teleporter_4.frames",                  "1"                     },
+  { "mm_teleporter_5",                         "RocksMM.png"           },
+  { "mm_teleporter_5.xpos",                    "4"                     },
+  { "mm_teleporter_5.ypos",                    "3"                     },
+  { "mm_teleporter_5.frames",                  "1"                     },
+  { "mm_teleporter_6",                         "RocksMM.png"           },
+  { "mm_teleporter_6.xpos",                    "5"                     },
+  { "mm_teleporter_6.ypos",                    "3"                     },
+  { "mm_teleporter_6.frames",                  "1"                     },
+  { "mm_teleporter_7",                         "RocksMM.png"           },
+  { "mm_teleporter_7.xpos",                    "6"                     },
+  { "mm_teleporter_7.ypos",                    "3"                     },
+  { "mm_teleporter_7.frames",                  "1"                     },
+  { "mm_teleporter_8",                         "RocksMM.png"           },
+  { "mm_teleporter_8.xpos",                    "7"                     },
+  { "mm_teleporter_8.ypos",                    "3"                     },
+  { "mm_teleporter_8.frames",                  "1"                     },
+  { "mm_teleporter_9",                         "RocksMM.png"           },
+  { "mm_teleporter_9.xpos",                    "8"                     },
+  { "mm_teleporter_9.ypos",                    "3"                     },
+  { "mm_teleporter_9.frames",                  "1"                     },
+  { "mm_teleporter_10",                                "RocksMM.png"           },
+  { "mm_teleporter_10.xpos",                   "9"                     },
+  { "mm_teleporter_10.ypos",                   "3"                     },
+  { "mm_teleporter_10.frames",                 "1"                     },
+  { "mm_teleporter_11",                                "RocksMM.png"           },
+  { "mm_teleporter_11.xpos",                   "10"                    },
+  { "mm_teleporter_11.ypos",                   "3"                     },
+  { "mm_teleporter_11.frames",                 "1"                     },
+  { "mm_teleporter_12",                                "RocksMM.png"           },
+  { "mm_teleporter_12.xpos",                   "11"                    },
+  { "mm_teleporter_12.ypos",                   "3"                     },
+  { "mm_teleporter_12.frames",                 "1"                     },
+  { "mm_teleporter_13",                                "RocksMM.png"           },
+  { "mm_teleporter_13.xpos",                   "12"                    },
+  { "mm_teleporter_13.ypos",                   "3"                     },
+  { "mm_teleporter_13.frames",                 "1"                     },
+  { "mm_teleporter_14",                                "RocksMM.png"           },
+  { "mm_teleporter_14.xpos",                   "13"                    },
+  { "mm_teleporter_14.ypos",                   "3"                     },
+  { "mm_teleporter_14.frames",                 "1"                     },
+  { "mm_teleporter_15",                                "RocksMM.png"           },
+  { "mm_teleporter_15.xpos",                   "14"                    },
+  { "mm_teleporter_15.ypos",                   "3"                     },
+  { "mm_teleporter_15.frames",                 "1"                     },
+  { "mm_teleporter_16",                                "RocksMM.png"           },
+  { "mm_teleporter_16.xpos",                   "15"                    },
+  { "mm_teleporter_16.ypos",                   "3"                     },
+  { "mm_teleporter_16.frames",                 "1"                     },
+
+  { "mm_teleporter_red_1",                     "RocksDF.png"           },
+  { "mm_teleporter_red_1.xpos",                        "0"                     },
+  { "mm_teleporter_red_1.ypos",                        "4"                     },
+  { "mm_teleporter_red_1.frames",              "1"                     },
+  { "mm_teleporter_red_2",                     "RocksDF.png"           },
+  { "mm_teleporter_red_2.xpos",                        "1"                     },
+  { "mm_teleporter_red_2.ypos",                        "4"                     },
+  { "mm_teleporter_red_2.frames",              "1"                     },
+  { "mm_teleporter_red_3",                     "RocksDF.png"           },
+  { "mm_teleporter_red_3.xpos",                        "2"                     },
+  { "mm_teleporter_red_3.ypos",                        "4"                     },
+  { "mm_teleporter_red_3.frames",              "1"                     },
+  { "mm_teleporter_red_4",                     "RocksDF.png"           },
+  { "mm_teleporter_red_4.xpos",                        "3"                     },
+  { "mm_teleporter_red_4.ypos",                        "4"                     },
+  { "mm_teleporter_red_4.frames",              "1"                     },
+  { "mm_teleporter_red_5",                     "RocksDF.png"           },
+  { "mm_teleporter_red_5.xpos",                        "4"                     },
+  { "mm_teleporter_red_5.ypos",                        "4"                     },
+  { "mm_teleporter_red_5.frames",              "1"                     },
+  { "mm_teleporter_red_6",                     "RocksDF.png"           },
+  { "mm_teleporter_red_6.xpos",                        "5"                     },
+  { "mm_teleporter_red_6.ypos",                        "4"                     },
+  { "mm_teleporter_red_6.frames",              "1"                     },
+  { "mm_teleporter_red_7",                     "RocksDF.png"           },
+  { "mm_teleporter_red_7.xpos",                        "6"                     },
+  { "mm_teleporter_red_7.ypos",                        "4"                     },
+  { "mm_teleporter_red_7.frames",              "1"                     },
+  { "mm_teleporter_red_8",                     "RocksDF.png"           },
+  { "mm_teleporter_red_8.xpos",                        "7"                     },
+  { "mm_teleporter_red_8.ypos",                        "4"                     },
+  { "mm_teleporter_red_8.frames",              "1"                     },
+  { "mm_teleporter_red_9",                     "RocksDF.png"           },
+  { "mm_teleporter_red_9.xpos",                        "8"                     },
+  { "mm_teleporter_red_9.ypos",                        "4"                     },
+  { "mm_teleporter_red_9.frames",              "1"                     },
+  { "mm_teleporter_red_10",                    "RocksDF.png"           },
+  { "mm_teleporter_red_10.xpos",               "9"                     },
+  { "mm_teleporter_red_10.ypos",               "4"                     },
+  { "mm_teleporter_red_10.frames",             "1"                     },
+  { "mm_teleporter_red_11",                    "RocksDF.png"           },
+  { "mm_teleporter_red_11.xpos",               "10"                    },
+  { "mm_teleporter_red_11.ypos",               "4"                     },
+  { "mm_teleporter_red_11.frames",             "1"                     },
+  { "mm_teleporter_red_12",                    "RocksDF.png"           },
+  { "mm_teleporter_red_12.xpos",               "11"                    },
+  { "mm_teleporter_red_12.ypos",               "4"                     },
+  { "mm_teleporter_red_12.frames",             "1"                     },
+  { "mm_teleporter_red_13",                    "RocksDF.png"           },
+  { "mm_teleporter_red_13.xpos",               "12"                    },
+  { "mm_teleporter_red_13.ypos",               "4"                     },
+  { "mm_teleporter_red_13.frames",             "1"                     },
+  { "mm_teleporter_red_14",                    "RocksDF.png"           },
+  { "mm_teleporter_red_14.xpos",               "13"                    },
+  { "mm_teleporter_red_14.ypos",               "4"                     },
+  { "mm_teleporter_red_14.frames",             "1"                     },
+  { "mm_teleporter_red_15",                    "RocksDF.png"           },
+  { "mm_teleporter_red_15.xpos",               "14"                    },
+  { "mm_teleporter_red_15.ypos",               "4"                     },
+  { "mm_teleporter_red_15.frames",             "1"                     },
+  { "mm_teleporter_red_16",                    "RocksDF.png"           },
+  { "mm_teleporter_red_16.xpos",               "15"                    },
+  { "mm_teleporter_red_16.ypos",               "4"                     },
+  { "mm_teleporter_red_16.frames",             "1"                     },
+
+  { "mm_teleporter_yellow_1",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_1.xpos",             "0"                     },
+  { "mm_teleporter_yellow_1.ypos",             "5"                     },
+  { "mm_teleporter_yellow_1.frames",           "1"                     },
+  { "mm_teleporter_yellow_2",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_2.xpos",             "1"                     },
+  { "mm_teleporter_yellow_2.ypos",             "5"                     },
+  { "mm_teleporter_yellow_2.frames",           "1"                     },
+  { "mm_teleporter_yellow_3",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_3.xpos",             "2"                     },
+  { "mm_teleporter_yellow_3.ypos",             "5"                     },
+  { "mm_teleporter_yellow_3.frames",           "1"                     },
+  { "mm_teleporter_yellow_4",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_4.xpos",             "3"                     },
+  { "mm_teleporter_yellow_4.ypos",             "5"                     },
+  { "mm_teleporter_yellow_4.frames",           "1"                     },
+  { "mm_teleporter_yellow_5",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_5.xpos",             "4"                     },
+  { "mm_teleporter_yellow_5.ypos",             "5"                     },
+  { "mm_teleporter_yellow_5.frames",           "1"                     },
+  { "mm_teleporter_yellow_6",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_6.xpos",             "5"                     },
+  { "mm_teleporter_yellow_6.ypos",             "5"                     },
+  { "mm_teleporter_yellow_6.frames",           "1"                     },
+  { "mm_teleporter_yellow_7",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_7.xpos",             "6"                     },
+  { "mm_teleporter_yellow_7.ypos",             "5"                     },
+  { "mm_teleporter_yellow_7.frames",           "1"                     },
+  { "mm_teleporter_yellow_8",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_8.xpos",             "7"                     },
+  { "mm_teleporter_yellow_8.ypos",             "5"                     },
+  { "mm_teleporter_yellow_8.frames",           "1"                     },
+  { "mm_teleporter_yellow_9",                  "RocksDF.png"           },
+  { "mm_teleporter_yellow_9.xpos",             "8"                     },
+  { "mm_teleporter_yellow_9.ypos",             "5"                     },
+  { "mm_teleporter_yellow_9.frames",           "1"                     },
+  { "mm_teleporter_yellow_10",                 "RocksDF.png"           },
+  { "mm_teleporter_yellow_10.xpos",            "9"                     },
+  { "mm_teleporter_yellow_10.ypos",            "5"                     },
+  { "mm_teleporter_yellow_10.frames",          "1"                     },
+  { "mm_teleporter_yellow_11",                 "RocksDF.png"           },
+  { "mm_teleporter_yellow_11.xpos",            "10"                    },
+  { "mm_teleporter_yellow_11.ypos",            "5"                     },
+  { "mm_teleporter_yellow_11.frames",          "1"                     },
+  { "mm_teleporter_yellow_12",                 "RocksDF.png"           },
+  { "mm_teleporter_yellow_12.xpos",            "11"                    },
+  { "mm_teleporter_yellow_12.ypos",            "5"                     },
+  { "mm_teleporter_yellow_12.frames",          "1"                     },
+  { "mm_teleporter_yellow_13",                 "RocksDF.png"           },
+  { "mm_teleporter_yellow_13.xpos",            "12"                    },
+  { "mm_teleporter_yellow_13.ypos",            "5"                     },
+  { "mm_teleporter_yellow_13.frames",          "1"                     },
+  { "mm_teleporter_yellow_14",                 "RocksDF.png"           },
+  { "mm_teleporter_yellow_14.xpos",            "13"                    },
+  { "mm_teleporter_yellow_14.ypos",            "5"                     },
+  { "mm_teleporter_yellow_14.frames",          "1"                     },
+  { "mm_teleporter_yellow_15",                 "RocksDF.png"           },
+  { "mm_teleporter_yellow_15.xpos",            "14"                    },
+  { "mm_teleporter_yellow_15.ypos",            "5"                     },
+  { "mm_teleporter_yellow_15.frames",          "1"                     },
+  { "mm_teleporter_yellow_16",                 "RocksDF.png"           },
+  { "mm_teleporter_yellow_16.xpos",            "15"                    },
+  { "mm_teleporter_yellow_16.ypos",            "5"                     },
+  { "mm_teleporter_yellow_16.frames",          "1"                     },
+
+  { "mm_teleporter_green_1",                   "RocksDF.png"           },
+  { "mm_teleporter_green_1.xpos",              "0"                     },
+  { "mm_teleporter_green_1.ypos",              "6"                     },
+  { "mm_teleporter_green_1.frames",            "1"                     },
+  { "mm_teleporter_green_2",                   "RocksDF.png"           },
+  { "mm_teleporter_green_2.xpos",              "1"                     },
+  { "mm_teleporter_green_2.ypos",              "6"                     },
+  { "mm_teleporter_green_2.frames",            "1"                     },
+  { "mm_teleporter_green_3",                   "RocksDF.png"           },
+  { "mm_teleporter_green_3.xpos",              "2"                     },
+  { "mm_teleporter_green_3.ypos",              "6"                     },
+  { "mm_teleporter_green_3.frames",            "1"                     },
+  { "mm_teleporter_green_4",                   "RocksDF.png"           },
+  { "mm_teleporter_green_4.xpos",              "3"                     },
+  { "mm_teleporter_green_4.ypos",              "6"                     },
+  { "mm_teleporter_green_4.frames",            "1"                     },
+  { "mm_teleporter_green_5",                   "RocksDF.png"           },
+  { "mm_teleporter_green_5.xpos",              "4"                     },
+  { "mm_teleporter_green_5.ypos",              "6"                     },
+  { "mm_teleporter_green_5.frames",            "1"                     },
+  { "mm_teleporter_green_6",                   "RocksDF.png"           },
+  { "mm_teleporter_green_6.xpos",              "5"                     },
+  { "mm_teleporter_green_6.ypos",              "6"                     },
+  { "mm_teleporter_green_6.frames",            "1"                     },
+  { "mm_teleporter_green_7",                   "RocksDF.png"           },
+  { "mm_teleporter_green_7.xpos",              "6"                     },
+  { "mm_teleporter_green_7.ypos",              "6"                     },
+  { "mm_teleporter_green_7.frames",            "1"                     },
+  { "mm_teleporter_green_8",                   "RocksDF.png"           },
+  { "mm_teleporter_green_8.xpos",              "7"                     },
+  { "mm_teleporter_green_8.ypos",              "6"                     },
+  { "mm_teleporter_green_8.frames",            "1"                     },
+  { "mm_teleporter_green_9",                   "RocksDF.png"           },
+  { "mm_teleporter_green_9.xpos",              "8"                     },
+  { "mm_teleporter_green_9.ypos",              "6"                     },
+  { "mm_teleporter_green_9.frames",            "1"                     },
+  { "mm_teleporter_green_10",                  "RocksDF.png"           },
+  { "mm_teleporter_green_10.xpos",             "9"                     },
+  { "mm_teleporter_green_10.ypos",             "6"                     },
+  { "mm_teleporter_green_10.frames",           "1"                     },
+  { "mm_teleporter_green_11",                  "RocksDF.png"           },
+  { "mm_teleporter_green_11.xpos",             "10"                    },
+  { "mm_teleporter_green_11.ypos",             "6"                     },
+  { "mm_teleporter_green_11.frames",           "1"                     },
+  { "mm_teleporter_green_12",                  "RocksDF.png"           },
+  { "mm_teleporter_green_12.xpos",             "11"                    },
+  { "mm_teleporter_green_12.ypos",             "6"                     },
+  { "mm_teleporter_green_12.frames",           "1"                     },
+  { "mm_teleporter_green_13",                  "RocksDF.png"           },
+  { "mm_teleporter_green_13.xpos",             "12"                    },
+  { "mm_teleporter_green_13.ypos",             "6"                     },
+  { "mm_teleporter_green_13.frames",           "1"                     },
+  { "mm_teleporter_green_14",                  "RocksDF.png"           },
+  { "mm_teleporter_green_14.xpos",             "13"                    },
+  { "mm_teleporter_green_14.ypos",             "6"                     },
+  { "mm_teleporter_green_14.frames",           "1"                     },
+  { "mm_teleporter_green_15",                  "RocksDF.png"           },
+  { "mm_teleporter_green_15.xpos",             "14"                    },
+  { "mm_teleporter_green_15.ypos",             "6"                     },
+  { "mm_teleporter_green_15.frames",           "1"                     },
+  { "mm_teleporter_green_16",                  "RocksDF.png"           },
+  { "mm_teleporter_green_16.xpos",             "15"                    },
+  { "mm_teleporter_green_16.ypos",             "6"                     },
+  { "mm_teleporter_green_16.frames",           "1"                     },
+
+  { "mm_teleporter_blue_1",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_1.xpos",               "0"                     },
+  { "mm_teleporter_blue_1.ypos",               "7"                     },
+  { "mm_teleporter_blue_1.frames",             "1"                     },
+  { "mm_teleporter_blue_2",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_2.xpos",               "1"                     },
+  { "mm_teleporter_blue_2.ypos",               "7"                     },
+  { "mm_teleporter_blue_2.frames",             "1"                     },
+  { "mm_teleporter_blue_3",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_3.xpos",               "2"                     },
+  { "mm_teleporter_blue_3.ypos",               "7"                     },
+  { "mm_teleporter_blue_3.frames",             "1"                     },
+  { "mm_teleporter_blue_4",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_4.xpos",               "3"                     },
+  { "mm_teleporter_blue_4.ypos",               "7"                     },
+  { "mm_teleporter_blue_4.frames",             "1"                     },
+  { "mm_teleporter_blue_5",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_5.xpos",               "4"                     },
+  { "mm_teleporter_blue_5.ypos",               "7"                     },
+  { "mm_teleporter_blue_5.frames",             "1"                     },
+  { "mm_teleporter_blue_6",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_6.xpos",               "5"                     },
+  { "mm_teleporter_blue_6.ypos",               "7"                     },
+  { "mm_teleporter_blue_6.frames",             "1"                     },
+  { "mm_teleporter_blue_7",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_7.xpos",               "6"                     },
+  { "mm_teleporter_blue_7.ypos",               "7"                     },
+  { "mm_teleporter_blue_7.frames",             "1"                     },
+  { "mm_teleporter_blue_8",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_8.xpos",               "7"                     },
+  { "mm_teleporter_blue_8.ypos",               "7"                     },
+  { "mm_teleporter_blue_8.frames",             "1"                     },
+  { "mm_teleporter_blue_9",                    "RocksDF.png"           },
+  { "mm_teleporter_blue_9.xpos",               "8"                     },
+  { "mm_teleporter_blue_9.ypos",               "7"                     },
+  { "mm_teleporter_blue_9.frames",             "1"                     },
+  { "mm_teleporter_blue_10",                   "RocksDF.png"           },
+  { "mm_teleporter_blue_10.xpos",              "9"                     },
+  { "mm_teleporter_blue_10.ypos",              "7"                     },
+  { "mm_teleporter_blue_10.frames",            "1"                     },
+  { "mm_teleporter_blue_11",                   "RocksDF.png"           },
+  { "mm_teleporter_blue_11.xpos",              "10"                    },
+  { "mm_teleporter_blue_11.ypos",              "7"                     },
+  { "mm_teleporter_blue_11.frames",            "1"                     },
+  { "mm_teleporter_blue_12",                   "RocksDF.png"           },
+  { "mm_teleporter_blue_12.xpos",              "11"                    },
+  { "mm_teleporter_blue_12.ypos",              "7"                     },
+  { "mm_teleporter_blue_12.frames",            "1"                     },
+  { "mm_teleporter_blue_13",                   "RocksDF.png"           },
+  { "mm_teleporter_blue_13.xpos",              "12"                    },
+  { "mm_teleporter_blue_13.ypos",              "7"                     },
+  { "mm_teleporter_blue_13.frames",            "1"                     },
+  { "mm_teleporter_blue_14",                   "RocksDF.png"           },
+  { "mm_teleporter_blue_14.xpos",              "13"                    },
+  { "mm_teleporter_blue_14.ypos",              "7"                     },
+  { "mm_teleporter_blue_14.frames",            "1"                     },
+  { "mm_teleporter_blue_15",                   "RocksDF.png"           },
+  { "mm_teleporter_blue_15.xpos",              "14"                    },
+  { "mm_teleporter_blue_15.ypos",              "7"                     },
+  { "mm_teleporter_blue_15.frames",            "1"                     },
+  { "mm_teleporter_blue_16",                   "RocksDF.png"           },
+  { "mm_teleporter_blue_16.xpos",              "15"                    },
+  { "mm_teleporter_blue_16.ypos",              "7"                     },
+  { "mm_teleporter_blue_16.frames",            "1"                     },
 
   { "mm_kettle",                               "RocksMM.png"           },
-  { "mm_kettle.xpos",                          "12"                    },
-  { "mm_kettle.ypos",                          "1"                     },
+  { "mm_kettle.xpos",                          "9"                     },
+  { "mm_kettle.ypos",                          "8"                     },
   { "mm_kettle.frames",                                "1"                     },
   { "mm_kettle.exploding",                     "RocksMM.png"           },
-  { "mm_kettle.exploding.xpos",                        "13"                    },
-  { "mm_kettle.exploding.ypos",                        "1"                     },
-  { "mm_kettle.exploding.frames",              "3"                     },
-  { "mm_kettle.exploding.delay",               "4"                     },
+  { "mm_kettle.exploding.xpos",                        "10"                    },
+  { "mm_kettle.exploding.ypos",                        "8"                     },
+  { "mm_kettle.exploding.frames",              "6"                     },
+  { "mm_kettle.exploding.delay",               "2"                     },
   { "mm_kettle.exploding.anim_mode",           "linear"                },
 
   { "mm_bomb",                                 "RocksMM.png"           },
   { "mm_bomb.xpos",                            "5"                     },
   { "mm_bomb.ypos",                            "2"                     },
   { "mm_bomb.frames",                          "1"                     },
+  { "mm_bomb.active",                          "RocksMM.png"           },
+  { "mm_bomb.active.xpos",                     "12"                    },
+  { "mm_bomb.active.ypos",                     "1"                     },
+  { "mm_bomb.active.frames",                   "3"                     },
+  { "mm_bomb.active.delay",                    "6"                     },
+  { "mm_bomb.active.anim_mode",                        "pingpong"              },
 
   { "mm_prism",                                        "RocksMM.png"           },
   { "mm_prism.xpos",                           "0"                     },
@@ -4962,11 +5081,23 @@ struct ConfigInfo image_config[] =
   { "mm_steel_lock.xpos",                      "8"                     },
   { "mm_steel_lock.ypos",                      "2"                     },
   { "mm_steel_lock.frames",                    "1"                     },
+  { "mm_steel_lock.exploding",                 "RocksMM.png"           },
+  { "mm_steel_lock.exploding.xpos",            "4"                     },
+  { "mm_steel_lock.exploding.ypos",            "8"                     },
+  { "mm_steel_lock.exploding.frames",          "5"                     },
+  { "mm_steel_lock.exploding.delay",           "2"                     },
+  { "mm_steel_lock.exploding.anim_mode",       "linear"                },
 
   { "mm_wooden_lock",                          "RocksMM.png"           },
   { "mm_wooden_lock.xpos",                     "9"                     },
   { "mm_wooden_lock.ypos",                     "6"                     },
   { "mm_wooden_lock.frames",                   "1"                     },
+  { "mm_wooden_lock.exploding",                        "RocksMM.png"           },
+  { "mm_wooden_lock.exploding.xpos",           "4"                     },
+  { "mm_wooden_lock.exploding.ypos",           "8"                     },
+  { "mm_wooden_lock.exploding.frames",         "5"                     },
+  { "mm_wooden_lock.exploding.delay",          "2"                     },
+  { "mm_wooden_lock.exploding.anim_mode",      "linear"                },
 
   { "mm_steel_block",                          "RocksMM.png"           },
   { "mm_steel_block.xpos",                     "8"                     },
@@ -4996,8 +5127,7 @@ struct ConfigInfo image_config[] =
   { "mm_lightball.xpos",                       "12"                    },
   { "mm_lightball.ypos",                       "2"                     },
   { "mm_lightball.frames",                     "3"                     },
-  { "mm_lightball.delay",                      "1000000"               },
-  { "mm_lightball.anim_mode",                  "random"                },
+  { "mm_lightball.anim_mode",                  "random_static"         },
   { "mm_lightball_red",                                "RocksMM.png"           },
   { "mm_lightball_red.xpos",                   "12"                    },
   { "mm_lightball_red.ypos",                   "2"                     },
@@ -5015,6 +5145,16 @@ struct ConfigInfo image_config[] =
   { "mm_gray_ball.xpos",                       "15"                    },
   { "mm_gray_ball.ypos",                       "2"                     },
   { "mm_gray_ball.frames",                     "1"                     },
+  { "mm_gray_ball.active",                     "RocksMM.png"           },
+  { "mm_gray_ball.active.xpos",                        "15"                    },
+  { "mm_gray_ball.active.ypos",                        "1"                     },
+  { "mm_gray_ball.active.frames",              "2"                     },
+  { "mm_gray_ball.active.delay",               "20"                    },
+  { "mm_gray_ball.active.vertical",            "true"                  },
+  { "mm_gray_ball.EDITOR",                     "RocksMM.png"           },
+  { "mm_gray_ball.EDITOR.xpos",                        "15"                    },
+  { "mm_gray_ball.EDITOR.ypos",                        "1"                     },
+  { "mm_gray_ball.EDITOR.frames",              "1"                     },
 
   { "mm_fuel_full",                            "RocksMM.png"           },
   { "mm_fuel_full.xpos",                       "10"                    },
@@ -5094,53 +5234,26 @@ struct ConfigInfo image_config[] =
   { "mm_pacman.eating.down.ypos",              "4"                     },
   { "mm_pacman.eating.down.frames",            "1"                     },
 
-  { "mm_mask_mcduffin.right",                  "RocksMM.png"           },
-  { "mm_mask_mcduffin.right.xpos",             "8"                     },
-  { "mm_mask_mcduffin.right.ypos",             "8"                     },
-  { "mm_mask_mcduffin.right.frames",           "1"                     },
-  { "mm_mask_mcduffin.up",                     "RocksMM.png"           },
-  { "mm_mask_mcduffin.up.xpos",                        "9"                     },
-  { "mm_mask_mcduffin.up.ypos",                        "8"                     },
-  { "mm_mask_mcduffin.up.frames",              "1"                     },
-  { "mm_mask_mcduffin.left",                   "RocksMM.png"           },
-  { "mm_mask_mcduffin.left.xpos",              "10"                    },
-  { "mm_mask_mcduffin.left.ypos",              "8"                     },
-  { "mm_mask_mcduffin.left.frames",            "1"                     },
-  { "mm_mask_mcduffin.down",                   "RocksMM.png"           },
-  { "mm_mask_mcduffin.down.xpos",              "11"                    },
-  { "mm_mask_mcduffin.down.ypos",              "8"                     },
-  { "mm_mask_mcduffin.down.frames",            "1"                     },
-
-  { "mm_mask_grid_1",                          "RocksMM.png"           },
-  { "mm_mask_grid_1.xpos",                     "4"                     },
-  { "mm_mask_grid_1.ypos",                     "8"                     },
-  { "mm_mask_grid_1.frames",                   "1"                     },
-  { "mm_mask_grid_2",                          "RocksMM.png"           },
-  { "mm_mask_grid_2.xpos",                     "5"                     },
-  { "mm_mask_grid_2.ypos",                     "8"                     },
-  { "mm_mask_grid_2.frames",                   "1"                     },
-  { "mm_mask_grid_3",                          "RocksMM.png"           },
-  { "mm_mask_grid_3.xpos",                     "6"                     },
-  { "mm_mask_grid_3.ypos",                     "8"                     },
-  { "mm_mask_grid_3.frames",                   "1"                     },
-  { "mm_mask_grid_4",                          "RocksMM.png"           },
-  { "mm_mask_grid_4.xpos",                     "7"                     },
-  { "mm_mask_grid_4.ypos",                     "8"                     },
-  { "mm_mask_grid_4.frames",                   "1"                     },
-
-  { "mm_mask_rectangle",                       "RocksMM.png"           },
-  { "mm_mask_rectangle.xpos",                  "1"                     },
-  { "mm_mask_rectangle.ypos",                  "8"                     },
-  { "mm_mask_rectangle.frames",                        "1"                     },
-
-  { "mm_mask_circle",                          "RocksMM.png"           },
-  { "mm_mask_circle.xpos",                     "0"                     },
-  { "mm_mask_circle.ypos",                     "8"                     },
-  { "mm_mask_circle.frames",                   "1"                     },
+  { "mm_envelope_1",                           UNDEFINED_FILENAME      },
+  { "mm_envelope_1.clone_from",                        "envelope_1"            },
+  { "mm_envelope_1.collecting",                        UNDEFINED_FILENAME      },
+  { "mm_envelope_1.collecting.clone_from",     "envelope_1.collecting" },
+  { "mm_envelope_2",                           UNDEFINED_FILENAME      },
+  { "mm_envelope_2.clone_from",                        "envelope_2"            },
+  { "mm_envelope_2.collecting",                        UNDEFINED_FILENAME      },
+  { "mm_envelope_2.collecting.clone_from",     "envelope_2.collecting" },
+  { "mm_envelope_3",                           UNDEFINED_FILENAME      },
+  { "mm_envelope_3.clone_from",                        "envelope_3"            },
+  { "mm_envelope_3.collecting",                        UNDEFINED_FILENAME      },
+  { "mm_envelope_3.collecting.clone_from",     "envelope_3.collecting" },
+  { "mm_envelope_4",                           UNDEFINED_FILENAME      },
+  { "mm_envelope_4.clone_from",                        "envelope_4"            },
+  { "mm_envelope_4.collecting",                        UNDEFINED_FILENAME      },
+  { "mm_envelope_4.collecting.clone_from",     "envelope_4.collecting" },
 
   { "[mm_default].exploding",                  "RocksMM.png"           },
-  { "[mm_default].exploding.xpos",             "8"                     },
-  { "[mm_default].exploding.ypos",             "4"                     },
+  { "[mm_default].exploding.xpos",             "0"                     },
+  { "[mm_default].exploding.ypos",             "8"                     },
   { "[mm_default].exploding.frames",           "8"                     },
   { "[mm_default].exploding.delay",            "2"                     },
   { "[mm_default].exploding.anim_mode",                "linear"                },
@@ -5668,8 +5781,96 @@ struct ConfigInfo image_config[] =
   { "df_mine.xpos",                            "4"                     },
   { "df_mine.ypos",                            "8"                     },
   { "df_mine.frames",                          "1"                     },
-
-  /* (these are only defined as elements to support ".PANEL" definitions) */
+  { "df_mine.active",                          "RocksDF.png"           },
+  { "df_mine.active.xpos",                     "3"                     },
+  { "df_mine.active.ypos",                     "8"                     },
+  { "df_mine.active.frames",                   "3"                     },
+  { "df_mine.active.delay",                    "6"                     },
+  { "df_mine.active.anim_mode",                        "pingpong"              },
+
+  { "df_mirror_fixed_1",                       "RocksDF.png"           },
+  { "df_mirror_fixed_1.xpos",                  "0"                     },
+  { "df_mirror_fixed_1.ypos",                  "10"                    },
+  { "df_mirror_fixed_1.frames",                        "1"                     },
+  { "df_mirror_fixed_2",                       "RocksDF.png"           },
+  { "df_mirror_fixed_2.xpos",                  "1"                     },
+  { "df_mirror_fixed_2.ypos",                  "10"                    },
+  { "df_mirror_fixed_2.frames",                        "1"                     },
+  { "df_mirror_fixed_3",                       "RocksDF.png"           },
+  { "df_mirror_fixed_3.xpos",                  "2"                     },
+  { "df_mirror_fixed_3.ypos",                  "10"                    },
+  { "df_mirror_fixed_3.frames",                        "1"                     },
+  { "df_mirror_fixed_4",                       "RocksDF.png"           },
+  { "df_mirror_fixed_4.xpos",                  "3"                     },
+  { "df_mirror_fixed_4.ypos",                  "10"                    },
+  { "df_mirror_fixed_4.frames",                        "1"                     },
+  { "df_mirror_fixed_5",                       "RocksDF.png"           },
+  { "df_mirror_fixed_5.xpos",                  "4"                     },
+  { "df_mirror_fixed_5.ypos",                  "10"                    },
+  { "df_mirror_fixed_5.frames",                        "1"                     },
+  { "df_mirror_fixed_6",                       "RocksDF.png"           },
+  { "df_mirror_fixed_6.xpos",                  "5"                     },
+  { "df_mirror_fixed_6.ypos",                  "10"                    },
+  { "df_mirror_fixed_6.frames",                        "1"                     },
+  { "df_mirror_fixed_7",                       "RocksDF.png"           },
+  { "df_mirror_fixed_7.xpos",                  "6"                     },
+  { "df_mirror_fixed_7.ypos",                  "10"                    },
+  { "df_mirror_fixed_7.frames",                        "1"                     },
+  { "df_mirror_fixed_8",                       "RocksDF.png"           },
+  { "df_mirror_fixed_8.xpos",                  "7"                     },
+  { "df_mirror_fixed_8.ypos",                  "10"                    },
+  { "df_mirror_fixed_8.frames",                        "1"                     },
+  { "df_mirror_fixed_9",                       "RocksDF.png"           },
+  { "df_mirror_fixed_9.xpos",                  "8"                     },
+  { "df_mirror_fixed_9.ypos",                  "10"                    },
+  { "df_mirror_fixed_9.frames",                        "1"                     },
+  { "df_mirror_fixed_10",                      "RocksDF.png"           },
+  { "df_mirror_fixed_10.xpos",                 "9"                     },
+  { "df_mirror_fixed_10.ypos",                 "10"                    },
+  { "df_mirror_fixed_10.frames",               "1"                     },
+  { "df_mirror_fixed_11",                      "RocksDF.png"           },
+  { "df_mirror_fixed_11.xpos",                 "10"                    },
+  { "df_mirror_fixed_11.ypos",                 "10"                    },
+  { "df_mirror_fixed_11.frames",               "1"                     },
+  { "df_mirror_fixed_12",                      "RocksDF.png"           },
+  { "df_mirror_fixed_12.xpos",                 "11"                    },
+  { "df_mirror_fixed_12.ypos",                 "10"                    },
+  { "df_mirror_fixed_12.frames",               "1"                     },
+  { "df_mirror_fixed_13",                      "RocksDF.png"           },
+  { "df_mirror_fixed_13.xpos",                 "12"                    },
+  { "df_mirror_fixed_13.ypos",                 "10"                    },
+  { "df_mirror_fixed_13.frames",               "1"                     },
+  { "df_mirror_fixed_14",                      "RocksDF.png"           },
+  { "df_mirror_fixed_14.xpos",                 "13"                    },
+  { "df_mirror_fixed_14.ypos",                 "10"                    },
+  { "df_mirror_fixed_14.frames",               "1"                     },
+  { "df_mirror_fixed_15",                      "RocksDF.png"           },
+  { "df_mirror_fixed_15.xpos",                 "14"                    },
+  { "df_mirror_fixed_15.ypos",                 "10"                    },
+  { "df_mirror_fixed_15.frames",               "1"                     },
+  { "df_mirror_fixed_16",                      "RocksDF.png"           },
+  { "df_mirror_fixed_16.xpos",                 "15"                    },
+  { "df_mirror_fixed_16.ypos",                 "10"                    },
+  { "df_mirror_fixed_16.frames",               "1"                     },
+
+  { "df_slope_1",                              "RocksDF.png"           },
+  { "df_slope_1.xpos",                         "0"                     },
+  { "df_slope_1.ypos",                         "11"                    },
+  { "df_slope_1.frames",                       "1"                     },
+  { "df_slope_2",                              "RocksDF.png"           },
+  { "df_slope_2.xpos",                         "1"                     },
+  { "df_slope_2.ypos",                         "11"                    },
+  { "df_slope_2.frames",                       "1"                     },
+  { "df_slope_3",                              "RocksDF.png"           },
+  { "df_slope_3.xpos",                         "2"                     },
+  { "df_slope_3.ypos",                         "11"                    },
+  { "df_slope_3.frames",                       "1"                     },
+  { "df_slope_4",                              "RocksDF.png"           },
+  { "df_slope_4.xpos",                         "3"                     },
+  { "df_slope_4.ypos",                         "11"                    },
+  { "df_slope_4.frames",                       "1"                     },
+
+  // (these are only defined as elements to support ".PANEL" definitions)
   { "graphic_1",                               UNDEFINED_FILENAME      },
   { "graphic_2",                               UNDEFINED_FILENAME      },
   { "graphic_3",                               UNDEFINED_FILENAME      },
@@ -5679,32 +5880,17 @@ struct ConfigInfo image_config[] =
   { "graphic_7",                               UNDEFINED_FILENAME      },
   { "graphic_8",                               UNDEFINED_FILENAME      },
 
-#include "conf_chr.c"  /* include auto-generated data structure definitions */
-#include "conf_cus.c"  /* include auto-generated data structure definitions */
-#include "conf_grp.c"  /* include auto-generated data structure definitions */
+#include "conf_chr.c"  // include auto-generated data structure definitions
+#include "conf_cus.c"  // include auto-generated data structure definitions
+#include "conf_grp.c"  // include auto-generated data structure definitions
+#include "conf_emp.c"  // include auto-generated data structure definitions
 
 
   // ==========================================================================
   // image definitions not associated with game elements (menu screens etc.)
   // ==========================================================================
 
-  /* keyword to stop parser: "NO_MORE_ELEMENT_IMAGES" <-- do not change! */
-
-#if 1
-  /* !!! TEMPORARILY STORED HERE -- PROBABLY TO BE CHANGED !!! */
-
-  /* (for testing, change filename back to "emc_objects dot png") */
-  { "emc_object",                              "RocksEMC.png"          },
-#if 0
-  { "emc_object.scale_up_factor",              "2"                     },
-#endif
-
-  /* (for testing, change filename back to "emc_players dot png") */
-  { "emc_sprite",                              "RocksEMC.png"          },
-#if 0
-  { "emc_sprite.scale_up_factor",              "2"                     },
-#endif
-#endif
+  // keyword to stop parser: "NO_MORE_ELEMENT_IMAGES" <-- do not change!
 
   { "sp_frame_horizontal",                     "RocksSP.png"           },
   { "sp_frame_horizontal.xpos",                        "7"                     },
@@ -6046,6 +6232,27 @@ struct ConfigInfo image_config[] =
   { "menu.button_prev_level.active",           UNDEFINED_FILENAME      },
   { "menu.button_prev_level.active.clone_from",        "menu.button_left.active" },
 
+  { "menu.button_next_level2",                 UNDEFINED_FILENAME      },
+  { "menu.button_next_level2.clone_from",      "menu.button_right"     },
+  { "menu.button_next_level2.active",          UNDEFINED_FILENAME      },
+  { "menu.button_next_level2.active.clone_from", "menu.button_right.active" },
+  { "menu.button_prev_level2",                 UNDEFINED_FILENAME      },
+  { "menu.button_prev_level2.clone_from",      "menu.button_left"      },
+  { "menu.button_prev_level2.active",          UNDEFINED_FILENAME      },
+  { "menu.button_prev_level2.active.clone_from", "menu.button_left.active" },
+
+  { "menu.button_next_score",                  UNDEFINED_FILENAME      },
+  { "menu.button_next_score.clone_from",       "menu.button_down"      },
+  { "menu.button_next_score.active",           UNDEFINED_FILENAME      },
+  { "menu.button_next_score.active.clone_from",        "menu.button_down.active" },
+  { "menu.button_prev_score",                  UNDEFINED_FILENAME      },
+  { "menu.button_prev_score.clone_from",       "menu.button_up"        },
+  { "menu.button_prev_score.active",           UNDEFINED_FILENAME      },
+  { "menu.button_prev_score.active.clone_from",        "menu.button_up.active" },
+
+  { "menu.button_play_tape",                   UNDEFINED_FILENAME      },
+  { "menu.button_play_tape.clone_from",                "gfx.tape.button.play"  },
+
   { "menu.button_name",                                UNDEFINED_FILENAME      },
   { "menu.button_name.clone_from",             "menu.button"           },
   { "menu.button_name.active",                 UNDEFINED_FILENAME      },
@@ -6079,6 +6286,53 @@ struct ConfigInfo image_config[] =
   { "menu.button_quit.active",                 UNDEFINED_FILENAME      },
   { "menu.button_quit.active.clone_from",      "menu.button.active"    },
 
+  { "menu.button_first_level",                 UNDEFINED_FILENAME      },
+  { "menu.button_first_level.active",          UNDEFINED_FILENAME      },
+  { "menu.button_last_level",                  UNDEFINED_FILENAME      },
+  { "menu.button_last_level.active",           UNDEFINED_FILENAME      },
+  { "menu.button_level_number",                        UNDEFINED_FILENAME      },
+  { "menu.button_level_number.active",         UNDEFINED_FILENAME      },
+
+  { "menu.button_insert_solution",             UNDEFINED_FILENAME      },
+  { "menu.button_insert_solution.active",      UNDEFINED_FILENAME      },
+  { "menu.button_play_solution",               UNDEFINED_FILENAME      },
+  { "menu.button_play_solution.active",                UNDEFINED_FILENAME      },
+
+  { "menu.button_levelset_info",               UNDEFINED_FILENAME      },
+  { "menu.button_levelset_info.clone_from",    "envelope_1"            },
+  { "menu.button_levelset_info.pressed",       UNDEFINED_FILENAME      },
+  { "menu.button_levelset_info.pressed.clone_from", "envelope_1.collecting" },
+  { "menu.button_levelset_info.active",                UNDEFINED_FILENAME      },
+  { "menu.button_levelset_info.active.clone_from", "envelope_1"                },
+
+  { "menu.button_switch_ecs_aga",              UNDEFINED_FILENAME      },
+  { "menu.button_switch_ecs_aga.active",       UNDEFINED_FILENAME      },
+
+  { "menu.button_touch_back",                  "RocksTouch.png"        },
+  { "menu.button_touch_back.x",                        "210"                   },
+  { "menu.button_touch_back.y",                        "180"                   },
+  { "menu.button_touch_back.width",            "60"                    },
+  { "menu.button_touch_back.height",           "60"                    },
+  { "menu.button_touch_back.pressed_xoffset",  "-200"                  },
+  { "menu.button_touch_next",                  "RocksTouch.png"        },
+  { "menu.button_touch_next.x",                        "330"                   },
+  { "menu.button_touch_next.y",                        "180"                   },
+  { "menu.button_touch_next.width",            "60"                    },
+  { "menu.button_touch_next.height",           "60"                    },
+  { "menu.button_touch_next.pressed_xoffset",  "-200"                  },
+  { "menu.button_touch_back2",                 "RocksTouch.png"        },
+  { "menu.button_touch_back2.x",               "210"                   },
+  { "menu.button_touch_back2.y",               "180"                   },
+  { "menu.button_touch_back2.width",           "60"                    },
+  { "menu.button_touch_back2.height",          "60"                    },
+  { "menu.button_touch_back2.pressed_xoffset", "-200"                  },
+  { "menu.button_touch_next2",                 "RocksTouch.png"        },
+  { "menu.button_touch_next2.x",               "330"                   },
+  { "menu.button_touch_next2.y",               "180"                   },
+  { "menu.button_touch_next2.width",           "60"                    },
+  { "menu.button_touch_next2.height",          "60"                    },
+  { "menu.button_touch_next2.pressed_xoffset", "-200"                  },
+
   { "menu.scrollbar",                          "RocksDC.png"           },
   { "menu.scrollbar.xpos",                     "8"                     },
   { "menu.scrollbar.ypos",                     "10"                    },
@@ -6166,6 +6420,13 @@ struct ConfigInfo image_config[] =
   { "gfx.game.button.load.height",             "30"                    },
   { "gfx.game.button.load.pressed_xoffset",    "-100"                  },
 
+  { "gfx.game.button.restart",                 "RocksDoor2.png"        },
+  { "gfx.game.button.restart.x",               "200"                   },
+  { "gfx.game.button.restart.y",               "50"                    },
+  { "gfx.game.button.restart.width",           "30"                    },
+  { "gfx.game.button.restart.height",          "30"                    },
+  { "gfx.game.button.restart.pressed_xoffset", "30"                    },
+
   { "gfx.game.button.sound_music",             "RocksDoor.png"         },
   { "gfx.game.button.sound_music.x",           "305"                   },
   { "gfx.game.button.sound_music.y",           "245"                   },
@@ -6188,6 +6449,36 @@ struct ConfigInfo image_config[] =
   { "gfx.game.button.sound_simple.pressed_xoffset", "-100"             },
   { "gfx.game.button.sound_simple.active_yoffset", "-30"               },
 
+  { "gfx.game.button.panel_stop",              UNDEFINED_FILENAME      },
+  { "gfx.game.button.panel_pause",             UNDEFINED_FILENAME      },
+  { "gfx.game.button.panel_play",              UNDEFINED_FILENAME      },
+  { "gfx.game.button.panel_restart",           UNDEFINED_FILENAME      },
+
+  { "gfx.game.button.panel_sound_music",       UNDEFINED_FILENAME      },
+  { "gfx.game.button.panel_sound_loops",       UNDEFINED_FILENAME      },
+  { "gfx.game.button.panel_sound_simple",      UNDEFINED_FILENAME      },
+
+  { "gfx.game.button.touch_stop",              "RocksTouch.png"        },
+  { "gfx.game.button.touch_stop.x",            "210"                   },
+  { "gfx.game.button.touch_stop.y",            "120"                   },
+  { "gfx.game.button.touch_stop.width",                "60"                    },
+  { "gfx.game.button.touch_stop.height",       "60"                    },
+  { "gfx.game.button.touch_stop.pressed_xoffset", "-200"               },
+  { "gfx.game.button.touch_pause",             "RocksTouch.png"        },
+  { "gfx.game.button.touch_pause.x",           "270"                   },
+  { "gfx.game.button.touch_pause.y",           "120"                   },
+  { "gfx.game.button.touch_pause.width",       "60"                    },
+  { "gfx.game.button.touch_pause.height",      "60"                    },
+  { "gfx.game.button.touch_pause.pressed_xoffset", "-200"              },
+  { "gfx.game.button.touch_pause.active_yoffset", "60"                 },
+
+  { "gfx.game.button.touch_restart",           "RocksTouch.png"        },
+  { "gfx.game.button.touch_restart.x",         "210"                   },
+  { "gfx.game.button.touch_restart.y",         "240"                   },
+  { "gfx.game.button.touch_restart.width",     "60"                    },
+  { "gfx.game.button.touch_restart.height",    "60"                    },
+  { "gfx.game.button.touch_restart.pressed_xoffset", "-200"            },
+
   { "gfx.tape.button.eject",                   "RocksDoor.png"         },
   { "gfx.tape.button.eject.x",                 "305"                   },
   { "gfx.tape.button.eject.y",                 "357"                   },
@@ -6225,6 +6516,9 @@ struct ConfigInfo image_config[] =
   { "gfx.tape.button.play.height",             "18"                    },
   { "gfx.tape.button.play.pressed_xoffset",    "-100"                  },
 
+  { "gfx.tape.button.insert_solution",         UNDEFINED_FILENAME      },
+  { "gfx.tape.button.play_solution",           UNDEFINED_FILENAME      },
+
   { "gfx.tape.symbol.eject",                   UNDEFINED_FILENAME      },
   { "gfx.tape.symbol.stop",                    UNDEFINED_FILENAME      },
   { "gfx.tape.symbol.pause",                   "RocksDoor.png"         },
@@ -6349,6 +6643,25 @@ struct ConfigInfo image_config[] =
   { "gfx.request.button.player_4",             UNDEFINED_FILENAME      },
   { "gfx.request.button.player_4.clone_from",  "gfx.request.button.player_1" },
 
+  { "gfx.request.button.touch_yes",            "RocksTouch.png"        },
+  { "gfx.request.button.touch_yes.x",          "204"                   },
+  { "gfx.request.button.touch_yes.y",          "0"                     },
+  { "gfx.request.button.touch_yes.width",      "92"                    },
+  { "gfx.request.button.touch_yes.height",     "56"                    },
+  { "gfx.request.button.touch_yes.pressed_xoffset", "-200"             },
+  { "gfx.request.button.touch_no",             "RocksTouch.png"        },
+  { "gfx.request.button.touch_no.x",           "304"                   },
+  { "gfx.request.button.touch_no.y",           "0"                     },
+  { "gfx.request.button.touch_no.width",       "92"                    },
+  { "gfx.request.button.touch_no.height",      "56"                    },
+  { "gfx.request.button.touch_no.pressed_xoffset", "-200"              },
+  { "gfx.request.button.touch_confirm",                "RocksTouch.png"        },
+  { "gfx.request.button.touch_confirm.x",      "204"                   },
+  { "gfx.request.button.touch_confirm.y",      "60"                    },
+  { "gfx.request.button.touch_confirm.width",  "192"                   },
+  { "gfx.request.button.touch_confirm.height", "56"                    },
+  { "gfx.request.button.touch_confirm.pressed_xoffset", "-200"         },
+
   { "font.initial_1",                          "RocksFontSmall.png"    },
   { "font.initial_1.x",                                "0"                     },
   { "font.initial_1.y",                                "0"                     },
@@ -6381,7 +6694,7 @@ struct ConfigInfo image_config[] =
   { "font.title_2.width",                      "14"                    },
   { "font.title_2.height",                     "14"                    },
   { "font.title_2.SETUP",                      UNDEFINED_FILENAME      },
-  { "font.title_2.SETUP.clone_from",           "font.text_4"           },
+  { "font.title_2.SETUP.clone_from",           "font.text_2"           },
 
   { "font.menu_1",                             "RocksFontBig.png"      },
   { "font.menu_1.x",                           "0"                     },
@@ -6420,6 +6733,8 @@ struct ConfigInfo image_config[] =
   { "font.text_1.LEVELNR.clone_from",          "font.text_1.LEVELS"    },
   { "font.text_1.SETUP",                       UNDEFINED_FILENAME      },
   { "font.text_1.SETUP.clone_from",            "font.text_1.LEVELS"    },
+  { "font.text_1.NAMES",                       UNDEFINED_FILENAME      },
+  { "font.text_1.NAMES.clone_from",            "font.input_1.MAIN"     },
   { "font.text_1.PREVIEW",                     "RocksFontEM.png"       },
   { "font.text_1.PREVIEW.x",                   "0"                     },
   { "font.text_1.PREVIEW.y",                   "160"                   },
@@ -6455,6 +6770,8 @@ struct ConfigInfo image_config[] =
   { "font.text_2.LEVELNR.clone_from",          "font.text_2.LEVELS"    },
   { "font.text_2.SETUP",                       UNDEFINED_FILENAME      },
   { "font.text_2.SETUP.clone_from",            "font.text_2.LEVELS"    },
+  { "font.text_2.NAMES",                       UNDEFINED_FILENAME      },
+  { "font.text_2.NAMES.clone_from",            "font.option_off"       },
   { "font.text_2.PREVIEW",                     "RocksFontEM.png"       },
   { "font.text_2.PREVIEW.x",                   "0"                     },
   { "font.text_2.PREVIEW.y",                   "160"                   },
@@ -6484,6 +6801,8 @@ struct ConfigInfo image_config[] =
   { "font.text_3.LEVELNR.clone_from",          "font.text_3.LEVELS"    },
   { "font.text_3.SETUP",                       UNDEFINED_FILENAME      },
   { "font.text_3.SETUP.clone_from",            "font.text_3.LEVELS"    },
+  { "font.text_3.NAMES",                       UNDEFINED_FILENAME      },
+  { "font.text_3.NAMES.clone_from",            "font.menu_1"           },
   { "font.text_3.PREVIEW",                     "RocksFontEM.png"       },
   { "font.text_3.PREVIEW.x",                   "0"                     },
   { "font.text_3.PREVIEW.y",                   "160"                   },
@@ -6515,6 +6834,8 @@ struct ConfigInfo image_config[] =
   { "font.text_4.LEVELNR.clone_from",          "font.text_4.LEVELS"    },
   { "font.text_4.SETUP",                       UNDEFINED_FILENAME      },
   { "font.text_4.SETUP.clone_from",            "font.text_4.LEVELS"    },
+  { "font.text_4.NAMES",                       UNDEFINED_FILENAME      },
+  { "font.text_4.NAMES.clone_from",            "font.menu_1.active"    },
   { "font.text_4.SCORES",                      "RocksFontMedium.png"   },
   { "font.text_4.SCORES.x",                    "0"                     },
   { "font.text_4.SCORES.y",                    "480"                   },
@@ -6552,6 +6873,8 @@ struct ConfigInfo image_config[] =
   { "font.request.y",                          "210"                   },
   { "font.request.width",                      "14"                    },
   { "font.request.height",                     "14"                    },
+  { "font.request_narrow",                     UNDEFINED_FILENAME      },
+  { "font.request_narrow.clone_from",          "font.text_1.DOOR"      },
 
   { "font.input_1",                            "RocksFontSmall.png"    },
   { "font.input_1.x",                          "0"                     },
@@ -6563,6 +6886,8 @@ struct ConfigInfo image_config[] =
   { "font.input_1.MAIN.y",                     "0"                     },
   { "font.input_1.MAIN.width",                 "32"                    },
   { "font.input_1.MAIN.height",                        "32"                    },
+  { "font.input_1.NAMES",                      UNDEFINED_FILENAME      },
+  { "font.input_1.NAMES.clone_from",           "font.input_1.MAIN"     },
   { "font.input_1.active",                     "RocksFontSmall.png"    },
   { "font.input_1.active.x",                   "0"                     },
   { "font.input_1.active.y",                   "210"                   },
@@ -6573,6 +6898,8 @@ struct ConfigInfo image_config[] =
   { "font.input_1.active.MAIN.y",              "480"                   },
   { "font.input_1.active.MAIN.width",          "32"                    },
   { "font.input_1.active.MAIN.height",         "32"                    },
+  { "font.input_1.active.NAMES",               UNDEFINED_FILENAME      },
+  { "font.input_1.active.NAMES.clone_from",    "font.input_1.active.MAIN" },
   { "font.input_1.active.SETUP",               "RocksFontBig.png"      },
   { "font.input_1.active.SETUP.x",             "0"                     },
   { "font.input_1.active.SETUP.y",             "0"                     },
@@ -6619,6 +6946,8 @@ struct ConfigInfo image_config[] =
   { "font.value_old.y",                                "160"                   },
   { "font.value_old.width",                    "32"                    },
   { "font.value_old.height",                   "32"                    },
+  { "font.value_old_narrow",                   UNDEFINED_FILENAME      },
+  { "font.value_old_narrow.clone_from",                "font.text_2.LEVELS"    },
   { "font.value_narrow",                       UNDEFINED_FILENAME      },
   { "font.value_narrow.clone_from",            "font.text_4.LEVELS"    },
 
@@ -6647,6 +6976,9 @@ struct ConfigInfo image_config[] =
   { "font.info.levelset",                      UNDEFINED_FILENAME      },
   { "font.info.levelset.clone_from",           "font.level_number"     },
 
+  { "font.main.network_players",               UNDEFINED_FILENAME      },
+  { "font.main.network_players.clone_from",    "font.level_number"     },
+
   { "editor.element_border",                   "RocksMore.png"         },
   { "editor.element_border.xpos",              "0"                     },
   { "editor.element_border.ypos",              "2"                     },
@@ -7102,6 +7434,14 @@ struct ConfigInfo image_config[] =
   { "gfx.editor.input.level_number.height",    "16"                    },
   { "gfx.editor.input.level_number.border_size","1"                    },
 
+  { "setup.input.text",                                "RocksSP.png"           },
+  { "setup.input.text.x",                      "0"                     },
+  { "setup.input.text.y",                      "0"                     },
+  { "setup.input.text.width",                  "32"                    },
+  { "setup.input.text.height",                 "32"                    },
+  { "setup.input.text.active_xoffset",         "0"                     },
+  { "setup.input.text.border_size",            "0"                     },
+
   { "global.border",                           "RocksScreen.png"       },
   { "global.border.MAIN",                      UNDEFINED_FILENAME      },
   { "global.border.SCORES",                    UNDEFINED_FILENAME      },
@@ -7110,6 +7450,14 @@ struct ConfigInfo image_config[] =
 
   { "global.door",                             "RocksDoor.png"         },
 
+  { "global.busy_initial",                     "RocksBusy.png"         },
+  { "global.busy_initial.x",                   "0"                     },
+  { "global.busy_initial.y",                   "0"                     },
+  { "global.busy_initial.width",               "32"                    },
+  { "global.busy_initial.height",              "32"                    },
+  { "global.busy_initial.frames",              "28"                    },
+  { "global.busy_initial.frames_per_line",     "7"                     },
+  { "global.busy_initial.delay",               "2"                     },
   { "global.busy",                             "RocksBusy.png"         },
   { "global.busy.x",                           "0"                     },
   { "global.busy.y",                           "0"                     },
@@ -7118,14 +7466,31 @@ struct ConfigInfo image_config[] =
   { "global.busy.frames",                      "28"                    },
   { "global.busy.frames_per_line",             "7"                     },
   { "global.busy.delay",                       "2"                     },
+  { "global.busy_playfield",                   "RocksBusy.png"         },
+  { "global.busy_playfield.x",                 "0"                     },
+  { "global.busy_playfield.y",                 "0"                     },
+  { "global.busy_playfield.width",             "32"                    },
+  { "global.busy_playfield.height",            "32"                    },
+  { "global.busy_playfield.frames",            "28"                    },
+  { "global.busy_playfield.frames_per_line",   "7"                     },
+  { "global.busy_playfield.delay",             "2"                     },
+
+  { "global.tile_cursor",                      "RocksMore.png"         },
+  { "global.tile_cursor.xpos",                 "10"                    },
+  { "global.tile_cursor.ypos",                 "7"                     },
+  { "global.tile_cursor.frames",               "1"                     },
 
   { "background",                              UNDEFINED_FILENAME      },
+  { "background.LOADING_INITIAL",              UNDEFINED_FILENAME      },
+  { "background.LOADING",                      UNDEFINED_FILENAME      },
   { "background.TITLE_INITIAL",                        UNDEFINED_FILENAME      },
   { "background.TITLE",                                UNDEFINED_FILENAME      },
   { "background.MAIN",                         UNDEFINED_FILENAME      },
+  { "background.NAMES",                                UNDEFINED_FILENAME      },
   { "background.LEVELS",                       UNDEFINED_FILENAME      },
   { "background.LEVELNR",                      UNDEFINED_FILENAME      },
   { "background.SCORES",                       UNDEFINED_FILENAME      },
+  { "background.SCOREINFO",                    UNDEFINED_FILENAME      },
   { "background.EDITOR",                       UNDEFINED_FILENAME      },
   { "background.INFO",                         UNDEFINED_FILENAME      },
   { "background.INFO[ELEMENTS]",               UNDEFINED_FILENAME      },
@@ -7311,8 +7676,8 @@ struct ConfigInfo image_config[] =
   { "door_2.top_border_correction.width",      "108"                   },
   { "door_2.top_border_correction.height",     "8"                     },
 
-  /* the last image entry apparently gets overwritten by very last entry
-     of "image_config[]"; so far this bug could not be found and fixed */
+  // the last image entry apparently gets overwritten by very last entry
+  // of "image_config[]"; so far this bug could not be found and fixed
   { "last_image_entry_bug",                    UNDEFINED_FILENAME      },
 
 
@@ -7320,81 +7685,95 @@ struct ConfigInfo image_config[] =
   // non-image definitions
   // ==========================================================================
 
-  /* the following directives are not associated with an image, but
-     probably make sense to be defined in "graphicsinfo.conf", too */
+  // the following directives are not associated with an image, but
+  // probably make sense to be defined in "graphicsinfo.conf", too
 
-  /* keyword to start parser: "CONFIG_VARS_START" <-- do not change! */
+  // keyword to start parser: "CONFIG_VARS_START" <-- do not change!
 
   { "[title_initial].fade_mode",               "fade"                  },
   { "[title_initial].fade_delay",              "500"                   },
   { "[title_initial].post_delay",              "250"                   },
   { "[title_initial].auto_delay",              "-1"                    },
+  { "[title_initial].auto_delay_unit",         "ms"                    },
   { "[title].fade_mode",                       "fade"                  },
   { "[title].fade_delay",                      "500"                   },
   { "[title].post_delay",                      "250"                   },
   { "[title].auto_delay",                      "-1"                    },
+  { "[title].auto_delay_unit",                 "ms"                    },
 
   { "[titlescreen_initial].sort_priority",     "0"                     },
   { "[titlescreen_initial].fade_mode",         ARG_DEFAULT             },
   { "[titlescreen_initial].fade_delay",                ARG_DEFAULT             },
   { "[titlescreen_initial].post_delay",                ARG_DEFAULT             },
   { "[titlescreen_initial].auto_delay",                ARG_DEFAULT             },
+  { "[titlescreen_initial].auto_delay_unit",   ARG_DEFAULT             },
   { "[titlescreen].sort_priority",             "0"                     },
   { "[titlescreen].fade_mode",                 ARG_DEFAULT             },
   { "[titlescreen].fade_delay",                        ARG_DEFAULT             },
   { "[titlescreen].post_delay",                        ARG_DEFAULT             },
   { "[titlescreen].auto_delay",                        ARG_DEFAULT             },
+  { "[titlescreen].auto_delay_unit",           ARG_DEFAULT             },
 
   { "titlescreen_initial_1.sort_priority",     ARG_DEFAULT             },
   { "titlescreen_initial_1.fade_mode",         ARG_DEFAULT             },
   { "titlescreen_initial_1.fade_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_1.post_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_1.auto_delay",                ARG_DEFAULT             },
+  { "titlescreen_initial_1.auto_delay_unit",   ARG_DEFAULT             },
   { "titlescreen_initial_2.sort_priority",     ARG_DEFAULT             },
   { "titlescreen_initial_2.fade_mode",         ARG_DEFAULT             },
   { "titlescreen_initial_2.fade_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_2.post_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_2.auto_delay",                ARG_DEFAULT             },
+  { "titlescreen_initial_2.auto_delay_unit",   ARG_DEFAULT             },
   { "titlescreen_initial_3.sort_priority",     ARG_DEFAULT             },
   { "titlescreen_initial_3.fade_mode",         ARG_DEFAULT             },
   { "titlescreen_initial_3.fade_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_3.post_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_3.auto_delay",                ARG_DEFAULT             },
+  { "titlescreen_initial_3.auto_delay_unit",   ARG_DEFAULT             },
   { "titlescreen_initial_4.sort_priority",     ARG_DEFAULT             },
   { "titlescreen_initial_4.fade_mode",         ARG_DEFAULT             },
   { "titlescreen_initial_4.fade_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_4.post_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_4.auto_delay",                ARG_DEFAULT             },
+  { "titlescreen_initial_4.auto_delay_unit",   ARG_DEFAULT             },
   { "titlescreen_initial_5.sort_priority",     ARG_DEFAULT             },
   { "titlescreen_initial_5.fade_mode",         ARG_DEFAULT             },
   { "titlescreen_initial_5.fade_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_5.post_delay",                ARG_DEFAULT             },
   { "titlescreen_initial_5.auto_delay",                ARG_DEFAULT             },
+  { "titlescreen_initial_5.auto_delay_unit",   ARG_DEFAULT             },
   { "titlescreen_1.sort_priority",             ARG_DEFAULT             },
   { "titlescreen_1.fade_mode",                 ARG_DEFAULT             },
   { "titlescreen_1.fade_delay",                        ARG_DEFAULT             },
   { "titlescreen_1.post_delay",                        ARG_DEFAULT             },
   { "titlescreen_1.auto_delay",                        ARG_DEFAULT             },
+  { "titlescreen_1.auto_delay_unit",           ARG_DEFAULT             },
   { "titlescreen_2.sort_priority",             ARG_DEFAULT             },
   { "titlescreen_2.fade_mode",                 ARG_DEFAULT             },
   { "titlescreen_2.fade_delay",                        ARG_DEFAULT             },
   { "titlescreen_2.post_delay",                        ARG_DEFAULT             },
   { "titlescreen_2.auto_delay",                        ARG_DEFAULT             },
+  { "titlescreen_2.auto_delay_unit",           ARG_DEFAULT             },
   { "titlescreen_3.sort_priority",             ARG_DEFAULT             },
   { "titlescreen_3.fade_mode",                 ARG_DEFAULT             },
   { "titlescreen_3.fade_delay",                        ARG_DEFAULT             },
   { "titlescreen_3.post_delay",                        ARG_DEFAULT             },
   { "titlescreen_3.auto_delay",                        ARG_DEFAULT             },
+  { "titlescreen_3.auto_delay_unit",           ARG_DEFAULT             },
   { "titlescreen_4.sort_priority",             ARG_DEFAULT             },
   { "titlescreen_4.fade_mode",                 ARG_DEFAULT             },
   { "titlescreen_4.fade_delay",                        ARG_DEFAULT             },
   { "titlescreen_4.post_delay",                        ARG_DEFAULT             },
   { "titlescreen_4.auto_delay",                        ARG_DEFAULT             },
+  { "titlescreen_4.auto_delay_unit",           ARG_DEFAULT             },
   { "titlescreen_5.sort_priority",             ARG_DEFAULT             },
   { "titlescreen_5.fade_mode",                 ARG_DEFAULT             },
   { "titlescreen_5.fade_delay",                        ARG_DEFAULT             },
   { "titlescreen_5.post_delay",                        ARG_DEFAULT             },
   { "titlescreen_5.auto_delay",                        ARG_DEFAULT             },
+  { "titlescreen_5.auto_delay_unit",           ARG_DEFAULT             },
 
   { "[titlemessage_initial].x",                        "-1"                    },
   { "[titlemessage_initial].y",                        "-1"                    },
@@ -7413,6 +7792,7 @@ struct ConfigInfo image_config[] =
   { "[titlemessage_initial].fade_delay",       ARG_DEFAULT             },
   { "[titlemessage_initial].post_delay",       ARG_DEFAULT             },
   { "[titlemessage_initial].auto_delay",       ARG_DEFAULT             },
+  { "[titlemessage_initial].auto_delay_unit",  ARG_DEFAULT             },
   { "[titlemessage].x",                                "-1"                    },
   { "[titlemessage].y",                                "-1"                    },
   { "[titlemessage].width",                    "-1"                    },
@@ -7430,6 +7810,7 @@ struct ConfigInfo image_config[] =
   { "[titlemessage].fade_delay",               ARG_DEFAULT             },
   { "[titlemessage].post_delay",               ARG_DEFAULT             },
   { "[titlemessage].auto_delay",               ARG_DEFAULT             },
+  { "[titlemessage].auto_delay_unit",          ARG_DEFAULT             },
 
   { "titlemessage_initial_1.x",                        ARG_DEFAULT             },
   { "titlemessage_initial_1.y",                        ARG_DEFAULT             },
@@ -7448,6 +7829,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_initial_1.fade_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_1.post_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_1.auto_delay",       ARG_DEFAULT             },
+  { "titlemessage_initial_1.auto_delay_unit",  ARG_DEFAULT             },
   { "titlemessage_initial_2.x",                        ARG_DEFAULT             },
   { "titlemessage_initial_2.y",                        ARG_DEFAULT             },
   { "titlemessage_initial_2.width",            ARG_DEFAULT             },
@@ -7465,6 +7847,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_initial_2.fade_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_2.post_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_2.auto_delay",       ARG_DEFAULT             },
+  { "titlemessage_initial_2.auto_delay_unit",  ARG_DEFAULT             },
   { "titlemessage_initial_3.x",                        ARG_DEFAULT             },
   { "titlemessage_initial_3.y",                        ARG_DEFAULT             },
   { "titlemessage_initial_3.width",            ARG_DEFAULT             },
@@ -7482,6 +7865,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_initial_3.fade_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_3.post_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_3.auto_delay",       ARG_DEFAULT             },
+  { "titlemessage_initial_3.auto_delay_unit",  ARG_DEFAULT             },
   { "titlemessage_initial_4.x",                        ARG_DEFAULT             },
   { "titlemessage_initial_4.y",                        ARG_DEFAULT             },
   { "titlemessage_initial_4.width",            ARG_DEFAULT             },
@@ -7499,6 +7883,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_initial_4.fade_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_4.post_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_4.auto_delay",       ARG_DEFAULT             },
+  { "titlemessage_initial_4.auto_delay_unit",  ARG_DEFAULT             },
   { "titlemessage_initial_5.x",                        ARG_DEFAULT             },
   { "titlemessage_initial_5.y",                        ARG_DEFAULT             },
   { "titlemessage_initial_5.width",            ARG_DEFAULT             },
@@ -7516,6 +7901,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_initial_5.fade_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_5.post_delay",       ARG_DEFAULT             },
   { "titlemessage_initial_5.auto_delay",       ARG_DEFAULT             },
+  { "titlemessage_initial_5.auto_delay_unit",  ARG_DEFAULT             },
   { "titlemessage_1.x",                                ARG_DEFAULT             },
   { "titlemessage_1.y",                                ARG_DEFAULT             },
   { "titlemessage_1.width",                    ARG_DEFAULT             },
@@ -7533,6 +7919,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_1.fade_delay",               ARG_DEFAULT             },
   { "titlemessage_1.post_delay",               ARG_DEFAULT             },
   { "titlemessage_1.auto_delay",               ARG_DEFAULT             },
+  { "titlemessage_1.auto_delay_unit",          ARG_DEFAULT             },
   { "titlemessage_2.x",                                ARG_DEFAULT             },
   { "titlemessage_2.y",                                ARG_DEFAULT             },
   { "titlemessage_2.width",                    ARG_DEFAULT             },
@@ -7550,6 +7937,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_2.fade_delay",               ARG_DEFAULT             },
   { "titlemessage_2.post_delay",               ARG_DEFAULT             },
   { "titlemessage_2.auto_delay",               ARG_DEFAULT             },
+  { "titlemessage_2.auto_delay_unit",          ARG_DEFAULT             },
   { "titlemessage_3.x",                                ARG_DEFAULT             },
   { "titlemessage_3.y",                                ARG_DEFAULT             },
   { "titlemessage_3.width",                    ARG_DEFAULT             },
@@ -7567,6 +7955,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_3.fade_delay",               ARG_DEFAULT             },
   { "titlemessage_3.post_delay",               ARG_DEFAULT             },
   { "titlemessage_3.auto_delay",               ARG_DEFAULT             },
+  { "titlemessage_3.auto_delay_unit",          ARG_DEFAULT             },
   { "titlemessage_4.x",                                ARG_DEFAULT             },
   { "titlemessage_4.y",                                ARG_DEFAULT             },
   { "titlemessage_4.width",                    ARG_DEFAULT             },
@@ -7584,6 +7973,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_4.fade_delay",               ARG_DEFAULT             },
   { "titlemessage_4.post_delay",               ARG_DEFAULT             },
   { "titlemessage_4.auto_delay",               ARG_DEFAULT             },
+  { "titlemessage_4.auto_delay_unit",          ARG_DEFAULT             },
   { "titlemessage_5.x",                                ARG_DEFAULT             },
   { "titlemessage_5.y",                                ARG_DEFAULT             },
   { "titlemessage_5.width",                    ARG_DEFAULT             },
@@ -7601,6 +7991,7 @@ struct ConfigInfo image_config[] =
   { "titlemessage_5.fade_delay",               ARG_DEFAULT             },
   { "titlemessage_5.post_delay",               ARG_DEFAULT             },
   { "titlemessage_5.auto_delay",               ARG_DEFAULT             },
+  { "titlemessage_5.auto_delay_unit",          ARG_DEFAULT             },
 
   { "readme.x",                                        "-1"                    },
   { "readme.y",                                        "-1"                    },
@@ -7620,9 +8011,11 @@ struct ConfigInfo image_config[] =
 
   { "border.draw_masked.TITLE",                        "false"                 },
   { "border.draw_masked.MAIN",                 "false"                 },
+  { "border.draw_masked.NAMES",                        "false"                 },
   { "border.draw_masked.LEVELS",               "false"                 },
   { "border.draw_masked.LEVELNR",              "false"                 },
   { "border.draw_masked.SCORES",               "false"                 },
+  { "border.draw_masked.SCOREINFO",            "false"                 },
   { "border.draw_masked.EDITOR",               "false"                 },
   { "border.draw_masked.INFO",                 "false"                 },
   { "border.draw_masked.SETUP",                        "false"                 },
@@ -7631,10 +8024,18 @@ struct ConfigInfo image_config[] =
 
   { "border.draw_masked_when_fading",          "true"                  },
 
+  { "init.busy_initial.x",                     "-1"                    },
+  { "init.busy_initial.y",                     "-1"                    },
+  { "init.busy_initial.align",                 "center"                },
+  { "init.busy_initial.valign",                        "middle"                },
   { "init.busy.x",                             "-1"                    },
   { "init.busy.y",                             "-1"                    },
   { "init.busy.align",                         "center"                },
   { "init.busy.valign",                                "middle"                },
+  { "init.busy_playfield.x",                   "-1"                    },
+  { "init.busy_playfield.y",                   "-1"                    },
+  { "init.busy_playfield.align",               "center"                },
+  { "init.busy_playfield.valign",              "middle"                },
 
   { "menu.enter_menu.fade_mode",               "none"                  },
   { "menu.enter_menu.fade_delay",              "250"                   },
@@ -7655,9 +8056,13 @@ struct ConfigInfo image_config[] =
   { "menu.enter_screen.TITLE.fade_delay",      "500"                   },
   { "menu.enter_screen.TITLE.post_delay",      "250"                   },
   { "menu.enter_screen.TITLE.auto_delay",      "-1"                    },
+  { "menu.enter_screen.TITLE.auto_delay_unit", "-1"                    },
   { "menu.enter_screen.SCORES.fade_mode",      ARG_DEFAULT             },
   { "menu.enter_screen.SCORES.fade_delay",     ARG_DEFAULT             },
   { "menu.enter_screen.SCORES.post_delay",     ARG_DEFAULT             },
+  { "menu.enter_screen.SCOREINFO.fade_mode",   ARG_DEFAULT             },
+  { "menu.enter_screen.SCOREINFO.fade_delay",  ARG_DEFAULT             },
+  { "menu.enter_screen.SCOREINFO.post_delay",  ARG_DEFAULT             },
   { "menu.enter_screen.EDITOR.fade_mode",      ARG_DEFAULT             },
   { "menu.enter_screen.EDITOR.fade_delay",     ARG_DEFAULT             },
   { "menu.enter_screen.EDITOR.post_delay",     ARG_DEFAULT             },
@@ -7671,9 +8076,13 @@ struct ConfigInfo image_config[] =
   { "menu.leave_screen.TITLE.fade_delay",      "500"                   },
   { "menu.leave_screen.TITLE.post_delay",      "250"                   },
   { "menu.leave_screen.TITLE.auto_delay",      "-1"                    },
+  { "menu.leave_screen.TITLE.auto_delay_unit", "-1"                    },
   { "menu.leave_screen.SCORES.fade_mode",      ARG_DEFAULT             },
   { "menu.leave_screen.SCORES.fade_delay",     ARG_DEFAULT             },
   { "menu.leave_screen.SCORES.post_delay",     ARG_DEFAULT             },
+  { "menu.leave_screen.SCOREINFO.fade_mode",   ARG_DEFAULT             },
+  { "menu.leave_screen.SCOREINFO.fade_delay",  ARG_DEFAULT             },
+  { "menu.leave_screen.SCOREINFO.post_delay",  ARG_DEFAULT             },
   { "menu.leave_screen.EDITOR.fade_mode",      ARG_DEFAULT             },
   { "menu.leave_screen.EDITOR.fade_delay",     ARG_DEFAULT             },
   { "menu.leave_screen.EDITOR.post_delay",     ARG_DEFAULT             },
@@ -7687,6 +8096,7 @@ struct ConfigInfo image_config[] =
   { "menu.next_screen.TITLE.fade_delay",       "500"                   },
   { "menu.next_screen.TITLE.post_delay",       "250"                   },
   { "menu.next_screen.TITLE.auto_delay",       "-1"                    },
+  { "menu.next_screen.TITLE.auto_delay_unit",  "-1"                    },
   { "menu.next_screen.INFO.fade_mode",         ARG_DEFAULT             },
   { "menu.next_screen.INFO.fade_delay",                ARG_DEFAULT             },
   { "menu.next_screen.INFO.post_delay",                ARG_DEFAULT             },
@@ -7695,12 +8105,16 @@ struct ConfigInfo image_config[] =
   { "menu.draw_yoffset",                       "0"                     },
   { "menu.draw_xoffset.MAIN",                  "0"                     },
   { "menu.draw_yoffset.MAIN",                  "0"                     },
+  { "menu.draw_xoffset.NAMES",                 "0"                     },
+  { "menu.draw_yoffset.NAMES",                 "0"                     },
   { "menu.draw_xoffset.LEVELS",                        "0"                     },
   { "menu.draw_yoffset.LEVELS",                        "0"                     },
   { "menu.draw_xoffset.LEVELNR",               "0"                     },
   { "menu.draw_yoffset.LEVELNR",               "0"                     },
   { "menu.draw_xoffset.SCORES",                        "0"                     },
   { "menu.draw_yoffset.SCORES",                        "0"                     },
+  { "menu.draw_xoffset.SCOREINFO",             "0"                     },
+  { "menu.draw_yoffset.SCOREINFO",             "0"                     },
   { "menu.draw_xoffset.EDITOR",                        "0"                     },
   { "menu.draw_yoffset.EDITOR",                        "0"                     },
   { "menu.draw_xoffset.INFO",                  "0"                     },
@@ -7723,6 +8137,8 @@ struct ConfigInfo image_config[] =
   { "menu.draw_yoffset.SETUP",                 "0"                     },
   { "menu.draw_xoffset.SETUP[GAME]",           "0"                     },
   { "menu.draw_yoffset.SETUP[GAME]",           "0"                     },
+  { "menu.draw_xoffset.SETUP[ENGINES]",                "0"                     },
+  { "menu.draw_yoffset.SETUP[ENGINES]",                "0"                     },
   { "menu.draw_xoffset.SETUP[EDITOR]",         "0"                     },
   { "menu.draw_yoffset.SETUP[EDITOR]",         "0"                     },
   { "menu.draw_xoffset.SETUP[GRAPHICS]",       "0"                     },
@@ -7754,7 +8170,11 @@ struct ConfigInfo image_config[] =
 
   { "menu.scrollbar_xoffset",                  "0"                     },
 
+  { "menu.list.SETUP[CHOOSE_OTHER].align",     "left"                  },
+  { "menu.list.SETUP[CHOOSE_OTHER].valign",    "top"                   },
+
   { "menu.list_size",                          "-1"                    },
+  { "menu.list_size.NAMES",                    "-1"                    },
   { "menu.list_size.LEVELS",                   "-1"                    },
   { "menu.list_size.LEVELNR",                  "-1"                    },
   { "menu.list_size.SCORES",                   "-1"                    },
@@ -7762,13 +8182,110 @@ struct ConfigInfo image_config[] =
   { "menu.list_size.INFO[ELEMENTS]",           "-1"                    },
   { "menu.list_size.SETUP",                    "-1"                    },
 
-  { "menu.text.paragraph.large_spacing",       "-3"                    },
-  { "menu.text.paragraph.normal_spacing",      "-2"                    },
-  { "menu.text.headline.large_spacing",                "-2"                    },
-  { "menu.text.headline.normal_spacing",       "-1"                    },
-  { "menu.text.line.large_spacing",            "-1"                    },
-  { "menu.text.line.normal_spacing",           "0"                     },
-  { "menu.text.all.extra_spacing",             "2"                     },
+  { "menu.list_entry_size.INFO[ELEMENTS]",     "-1"                    },
+
+  { "menu.tile_size.INFO[ELEMENTS]",           "-1"                    },
+
+  { "menu.left_spacing.SCOREINFO",             "16"                    },
+  { "menu.left_spacing.INFO",                  "16"                    },
+  { "menu.left_spacing.INFO[TITLE]",           "16"                    },
+  { "menu.left_spacing.INFO[ELEMENTS]",                "16"                    },
+  { "menu.left_spacing.INFO[MUSIC]",           "16"                    },
+  { "menu.left_spacing.INFO[CREDITS]",         "16"                    },
+  { "menu.left_spacing.INFO[PROGRAM]",         "16"                    },
+  { "menu.left_spacing.INFO[VERSION]",         "16"                    },
+  { "menu.left_spacing.INFO[LEVELSET]",                "16"                    },
+  { "menu.left_spacing.SETUP[INPUT]",          "16"                    },
+
+  { "menu.middle_spacing.INFO[ELEMENTS]",      "16"                    },
+
+  { "menu.right_spacing.SCOREINFO",            "16"                    },
+  { "menu.right_spacing.INFO",                 "16"                    },
+  { "menu.right_spacing.INFO[TITLE]",          "16"                    },
+  { "menu.right_spacing.INFO[ELEMENTS]",       "16"                    },
+  { "menu.right_spacing.INFO[MUSIC]",          "16"                    },
+  { "menu.right_spacing.INFO[CREDITS]",                "16"                    },
+  { "menu.right_spacing.INFO[PROGRAM]",                "16"                    },
+  { "menu.right_spacing.INFO[VERSION]",                "16"                    },
+  { "menu.right_spacing.INFO[LEVELSET]",       "16"                    },
+  { "menu.right_spacing.SETUP[INPUT]",         "16"                    },
+
+  { "menu.top_spacing.SCOREINFO",              "100"                   },
+  { "menu.top_spacing.INFO",                   "100"                   },
+  { "menu.top_spacing.INFO[TITLE]",            "100"                   },
+  { "menu.top_spacing.INFO[ELEMENTS]",         "100"                   },
+  { "menu.top_spacing.INFO[MUSIC]",            "100"                   },
+  { "menu.top_spacing.INFO[CREDITS]",          "100"                   },
+  { "menu.top_spacing.INFO[PROGRAM]",          "100"                   },
+  { "menu.top_spacing.INFO[VERSION]",          "100"                   },
+  { "menu.top_spacing.INFO[LEVELSET]",         "100"                   },
+  { "menu.top_spacing.SETUP[INPUT]",           "100"                   },
+
+  { "menu.bottom_spacing.SCOREINFO",           "20"                    },
+  { "menu.bottom_spacing.INFO",                        "20"                    },
+  { "menu.bottom_spacing.INFO[TITLE]",         "20"                    },
+  { "menu.bottom_spacing.INFO[ELEMENTS]",      "20"                    },
+  { "menu.bottom_spacing.INFO[MUSIC]",         "20"                    },
+  { "menu.bottom_spacing.INFO[CREDITS]",       "20"                    },
+  { "menu.bottom_spacing.INFO[PROGRAM]",       "20"                    },
+  { "menu.bottom_spacing.INFO[VERSION]",       "20"                    },
+  { "menu.bottom_spacing.INFO[LEVELSET]",      "20"                    },
+  { "menu.bottom_spacing.SETUP[INPUT]",                "20"                    },
+
+  { "menu.paragraph_spacing.SCOREINFO",                "-2"                    },
+  { "menu.paragraph_spacing.INFO",             "-3"                    },
+  { "menu.paragraph_spacing.INFO[TITLE]",      "-3"                    },
+  { "menu.paragraph_spacing.INFO[ELEMENTS]",   "-3"                    },
+  { "menu.paragraph_spacing.INFO[MUSIC]",      "-3"                    },
+  { "menu.paragraph_spacing.INFO[CREDITS]",    "-3"                    },
+  { "menu.paragraph_spacing.INFO[PROGRAM]",    "-3"                    },
+  { "menu.paragraph_spacing.INFO[VERSION]",    "-2"                    },
+  { "menu.paragraph_spacing.INFO[LEVELSET]",   "-3"                    },
+  { "menu.paragraph_spacing.SETUP[INPUT]",     "-1"                    },
+
+  { "menu.headline1_spacing.SCOREINFO",                "-2"                    },
+  { "menu.headline1_spacing.INFO",             "-2"                    },
+  { "menu.headline1_spacing.INFO[TITLE]",      "-2"                    },
+  { "menu.headline1_spacing.INFO[ELEMENTS]",   "-2"                    },
+  { "menu.headline1_spacing.INFO[MUSIC]",      "-2"                    },
+  { "menu.headline1_spacing.INFO[CREDITS]",    "-2"                    },
+  { "menu.headline1_spacing.INFO[PROGRAM]",    "-2"                    },
+  { "menu.headline1_spacing.INFO[VERSION]",    "-2"                    },
+  { "menu.headline1_spacing.INFO[LEVELSET]",   "-2"                    },
+  { "menu.headline1_spacing.SETUP[INPUT]",     "-2"                    },
+
+  { "menu.headline2_spacing.SCOREINFO",                "-1"                    },
+  { "menu.headline2_spacing.INFO",             "-1"                    },
+  { "menu.headline2_spacing.INFO[TITLE]",      "-1"                    },
+  { "menu.headline2_spacing.INFO[ELEMENTS]",   "-1"                    },
+  { "menu.headline2_spacing.INFO[MUSIC]",      "-1"                    },
+  { "menu.headline2_spacing.INFO[CREDITS]",    "-1"                    },
+  { "menu.headline2_spacing.INFO[PROGRAM]",    "-1"                    },
+  { "menu.headline2_spacing.INFO[VERSION]",    "-1"                    },
+  { "menu.headline2_spacing.INFO[LEVELSET]",   "-1"                    },
+  { "menu.headline2_spacing.SETUP[INPUT]",     "-1"                    },
+
+  { "menu.line_spacing.SCOREINFO",             "0"                     },
+  { "menu.line_spacing.INFO",                  "0"                     },
+  { "menu.line_spacing.INFO[TITLE]",           "0"                     },
+  { "menu.line_spacing.INFO[ELEMENTS]",                "0"                     },
+  { "menu.line_spacing.INFO[MUSIC]",           "0"                     },
+  { "menu.line_spacing.INFO[CREDITS]",         "0"                     },
+  { "menu.line_spacing.INFO[PROGRAM]",         "0"                     },
+  { "menu.line_spacing.INFO[VERSION]",         "0"                     },
+  { "menu.line_spacing.INFO[LEVELSET]",                "0"                     },
+  { "menu.line_spacing.SETUP[INPUT]",          "0"                     },
+
+  { "menu.extra_spacing.SCOREINFO",            "2"                     },
+  { "menu.extra_spacing.INFO",                 "2"                     },
+  { "menu.extra_spacing.INFO[TITLE]",          "2"                     },
+  { "menu.extra_spacing.INFO[ELEMENTS]",       "4"                     },
+  { "menu.extra_spacing.INFO[MUSIC]",          "2"                     },
+  { "menu.extra_spacing.INFO[CREDITS]",                "2"                     },
+  { "menu.extra_spacing.INFO[PROGRAM]",                "2"                     },
+  { "menu.extra_spacing.INFO[VERSION]",                "2"                     },
+  { "menu.extra_spacing.INFO[LEVELSET]",       "2"                     },
+  { "menu.extra_spacing.SETUP[INPUT]",         "2"                     },
 
   { "main.button.name.x",                      "0"                     },
   { "main.button.name.y",                      "64"                    },
@@ -7787,11 +8304,29 @@ struct ConfigInfo image_config[] =
   { "main.button.quit.x",                      "0"                     },
   { "main.button.quit.y",                      "288"                   },
 
+  { "main.button.first_level.x",               "-1"                    },
+  { "main.button.first_level.y",               "-1"                    },
+  { "main.button.last_level.x",                        "-1"                    },
+  { "main.button.last_level.y",                        "-1"                    },
+  { "main.button.level_number.x",              "-1"                    },
+  { "main.button.level_number.y",              "-1"                    },
+
   { "main.button.prev_level.x",                        "320"                   },
   { "main.button.prev_level.y",                        "96"                    },
   { "main.button.next_level.x",                        "448"                   },
   { "main.button.next_level.y",                        "96"                    },
 
+  { "main.button.insert_solution.x",           "-1"                    },
+  { "main.button.insert_solution.y",           "-1"                    },
+  { "main.button.play_solution.x",             "-1"                    },
+  { "main.button.play_solution.y",             "-1"                    },
+
+  { "main.button.levelset_info.x",             "-1"                    },
+  { "main.button.levelset_info.y",             "-1"                    },
+
+  { "main.button.switch_ecs_aga.x",            "-1"                    },
+  { "main.button.switch_ecs_aga.y",            "-1"                    },
+
   { "main.text.name.x",                                "-1"                    },
   { "main.text.name.y",                                "-1"                    },
   { "main.text.name.width",                    "-1"                    },
@@ -7938,6 +8473,51 @@ struct ConfigInfo image_config[] =
   { "main.input.name.valign",                  "top"                   },
   { "main.input.name.font",                    "font.input_1"          },
 
+  { "main.network_players.x",                  "68"                    },
+  { "main.network_players.y",                  "448"                   },
+  { "main.network_players.align",              "center"                },
+  { "main.network_players.valign",             "middle"                },
+  { "main.network_players.font",               "font.main.network_players" },
+  { "main.network_players.tile_size",          "16"                    },
+  { "main.network_players.border_size",                "2"                     },
+
+  { "main.preview_players.x",                  "474"                   },
+  { "main.preview_players.y",                  "448"                   },
+  { "main.preview_players.align",              "center"                },
+  { "main.preview_players.valign",             "middle"                },
+  { "main.preview_players.tile_size",          "32"                    },
+  { "main.preview_players.border_size",                "2"                     },
+  { "main.preview_players.vertical",           "false"                 },
+  { "main.preview_players.xoffset",            "-1"                    },
+  { "main.preview_players.yoffset",            "-1"                    },
+
+  { "setup.button.prev_player.x",              "320"                   },
+  { "setup.button.prev_player.y",              "64"                    },
+  { "setup.button.next_player.x",              "384"                   },
+  { "setup.button.next_player.y",              "64"                    },
+
+  { "setup.button.touch_back.x",               "0"                     },
+  { "setup.button.touch_back.y",               "0"                     },
+  { "setup.button.touch_next.x",               "-60"                   },
+  { "setup.button.touch_next.y",               "0"                     },
+  { "setup.button.touch_back2.x",              "0"                     },
+  { "setup.button.touch_back2.y",              "-60"                   },
+  { "setup.button.touch_next2.x",              "-60"                   },
+  { "setup.button.touch_next2.y",              "-60"                   },
+
+  { "scores.button.prev_level.x",              "-1"                    },
+  { "scores.button.prev_level.y",              "-1"                    },
+  { "scores.button.next_level.x",              "-1"                    },
+  { "scores.button.next_level.y",              "-1"                    },
+
+  { "scores.button.prev_score.x",              "-1"                    },
+  { "scores.button.prev_score.y",              "-1"                    },
+  { "scores.button.next_score.x",              "-1"                    },
+  { "scores.button.next_score.y",              "-1"                    },
+
+  { "scores.button.play_tape.x",               "-1"                    },
+  { "scores.button.play_tape.y",               "-1"                    },
+
   { "preview.x",                               "272"                   },
   { "preview.y",                               "380"                   },
   { "preview.align",                           "center"                },
@@ -8139,12 +8719,14 @@ struct ConfigInfo image_config[] =
   { "door_1.height",                           "-1"                    },
   { "door_1.step_offset",                      "2"                     },
   { "door_1.step_delay",                       "10"                    },
+  { "door_1.post_delay",                       "100"                   },
   { "door_1.anim_mode",                                "default"               },
 
   { "door_2.width",                            "-1"                    },
   { "door_2.height",                           "-1"                    },
   { "door_2.step_offset",                      "2"                     },
   { "door_2.step_delay",                       "10"                    },
+  { "door_2.post_delay",                       "100"                   },
   { "door_2.anim_mode",                                "default"               },
 
   { "game.panel.level_number.x",               "51"                    },
@@ -8156,6 +8738,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.level_number.font_narrow",     "font.text_1"           },
   { "game.panel.level_number.draw_masked",     "true"                  },
   { "game.panel.level_number.draw_order",      "0"                     },
+  { "game.panel.level_number.class",           "none"                  },
+  { "game.panel.level_number.style",           "none"                  },
 
   { "game.panel.gems.x",                       "50"                    },
   { "game.panel.gems.y",                       "54"                    },
@@ -8165,143 +8749,198 @@ struct ConfigInfo image_config[] =
   { "game.panel.gems.font",                    "font.text_2"           },
   { "game.panel.gems.draw_masked",             "true"                  },
   { "game.panel.gems.draw_order",              "0"                     },
+  { "game.panel.gems.class",                   "none"                  },
+  { "game.panel.gems.style",                   "none"                  },
 
   { "game.panel.inventory_count.x",            "50"                    },
   { "game.panel.inventory_count.y",            "89"                    },
   { "game.panel.inventory_count.align",                "center"                },
   { "game.panel.inventory_count.valign",       "top"                   },
-  { "game.panel.inventory_count.digits",       "3"                     },
+  { "game.panel.inventory_count.digits",       "-1"                    },
   { "game.panel.inventory_count.font",         "font.text_2"           },
+  { "game.panel.inventory_count.font_narrow",  "font.text_1"           },
   { "game.panel.inventory_count.draw_masked",  "true"                  },
   { "game.panel.inventory_count.draw_order",   "0"                     },
+  { "game.panel.inventory_count.class",                "none"                  },
+  { "game.panel.inventory_count.style",                "none"                  },
 
   { "game.panel.inventory_first_1.x",          "-1"                    },
   { "game.panel.inventory_first_1.y",          "-1"                    },
   { "game.panel.inventory_first_1.tile_size",  "16"                    },
   { "game.panel.inventory_first_1.draw_masked",        "false"                 },
   { "game.panel.inventory_first_1.draw_order", "0"                     },
+  { "game.panel.inventory_first_1.class",      "none"                  },
+  { "game.panel.inventory_first_1.style",      "none"                  },
   { "game.panel.inventory_first_2.x",          "-1"                    },
   { "game.panel.inventory_first_2.y",          "-1"                    },
   { "game.panel.inventory_first_2.tile_size",  "16"                    },
   { "game.panel.inventory_first_2.draw_masked",        "false"                 },
   { "game.panel.inventory_first_2.draw_order", "0"                     },
+  { "game.panel.inventory_first_2.class",      "none"                  },
+  { "game.panel.inventory_first_2.style",      "none"                  },
   { "game.panel.inventory_first_3.x",          "-1"                    },
   { "game.panel.inventory_first_3.y",          "-1"                    },
   { "game.panel.inventory_first_3.tile_size",  "16"                    },
   { "game.panel.inventory_first_3.draw_masked",        "false"                 },
   { "game.panel.inventory_first_3.draw_order", "0"                     },
+  { "game.panel.inventory_first_3.class",      "none"                  },
+  { "game.panel.inventory_first_3.style",      "none"                  },
   { "game.panel.inventory_first_4.x",          "-1"                    },
   { "game.panel.inventory_first_4.y",          "-1"                    },
   { "game.panel.inventory_first_4.tile_size",  "16"                    },
   { "game.panel.inventory_first_4.draw_masked",        "false"                 },
   { "game.panel.inventory_first_4.draw_order", "0"                     },
+  { "game.panel.inventory_first_4.class",      "none"                  },
+  { "game.panel.inventory_first_4.style",      "none"                  },
   { "game.panel.inventory_first_5.x",          "-1"                    },
   { "game.panel.inventory_first_5.y",          "-1"                    },
   { "game.panel.inventory_first_5.tile_size",  "16"                    },
   { "game.panel.inventory_first_5.draw_masked",        "false"                 },
   { "game.panel.inventory_first_5.draw_order", "0"                     },
+  { "game.panel.inventory_first_5.class",      "none"                  },
+  { "game.panel.inventory_first_5.style",      "none"                  },
   { "game.panel.inventory_first_6.x",          "-1"                    },
   { "game.panel.inventory_first_6.y",          "-1"                    },
   { "game.panel.inventory_first_6.tile_size",  "16"                    },
   { "game.panel.inventory_first_6.draw_masked",        "false"                 },
   { "game.panel.inventory_first_6.draw_order", "0"                     },
+  { "game.panel.inventory_first_6.class",      "none"                  },
+  { "game.panel.inventory_first_6.style",      "none"                  },
   { "game.panel.inventory_first_7.x",          "-1"                    },
   { "game.panel.inventory_first_7.y",          "-1"                    },
   { "game.panel.inventory_first_7.tile_size",  "16"                    },
   { "game.panel.inventory_first_7.draw_masked",        "false"                 },
   { "game.panel.inventory_first_7.draw_order", "0"                     },
+  { "game.panel.inventory_first_7.class",      "none"                  },
+  { "game.panel.inventory_first_7.style",      "none"                  },
   { "game.panel.inventory_first_8.x",          "-1"                    },
   { "game.panel.inventory_first_8.y",          "-1"                    },
   { "game.panel.inventory_first_8.tile_size",  "16"                    },
   { "game.panel.inventory_first_8.draw_masked",        "false"                 },
   { "game.panel.inventory_first_8.draw_order", "0"                     },
+  { "game.panel.inventory_first_8.class",      "none"                  },
+  { "game.panel.inventory_first_8.style",      "none"                  },
 
   { "game.panel.inventory_last_1.x",           "-1"                    },
   { "game.panel.inventory_last_1.y",           "-1"                    },
   { "game.panel.inventory_last_1.tile_size",   "16"                    },
   { "game.panel.inventory_last_1.draw_masked", "false"                 },
   { "game.panel.inventory_last_1.draw_order",  "0"                     },
+  { "game.panel.inventory_last_1.class",       "none"                  },
+  { "game.panel.inventory_last_1.style",       "none"                  },
   { "game.panel.inventory_last_2.x",           "-1"                    },
   { "game.panel.inventory_last_2.y",           "-1"                    },
   { "game.panel.inventory_last_2.tile_size",   "16"                    },
   { "game.panel.inventory_last_2.draw_masked", "false"                 },
   { "game.panel.inventory_last_2.draw_order",  "0"                     },
+  { "game.panel.inventory_last_2.class",       "none"                  },
+  { "game.panel.inventory_last_2.style",       "none"                  },
   { "game.panel.inventory_last_3.x",           "-1"                    },
   { "game.panel.inventory_last_3.y",           "-1"                    },
   { "game.panel.inventory_last_3.tile_size",   "16"                    },
   { "game.panel.inventory_last_3.draw_masked", "false"                 },
   { "game.panel.inventory_last_3.draw_order",  "0"                     },
+  { "game.panel.inventory_last_3.class",       "none"                  },
+  { "game.panel.inventory_last_3.style",       "none"                  },
   { "game.panel.inventory_last_4.x",           "-1"                    },
   { "game.panel.inventory_last_4.y",           "-1"                    },
   { "game.panel.inventory_last_4.tile_size",   "16"                    },
   { "game.panel.inventory_last_4.draw_masked", "false"                 },
   { "game.panel.inventory_last_4.draw_order",  "0"                     },
+  { "game.panel.inventory_last_4.class",       "none"                  },
+  { "game.panel.inventory_last_4.style",       "none"                  },
   { "game.panel.inventory_last_5.x",           "-1"                    },
   { "game.panel.inventory_last_5.y",           "-1"                    },
   { "game.panel.inventory_last_5.tile_size",   "16"                    },
   { "game.panel.inventory_last_5.draw_masked", "false"                 },
   { "game.panel.inventory_last_5.draw_order",  "0"                     },
+  { "game.panel.inventory_last_5.class",       "none"                  },
+  { "game.panel.inventory_last_5.style",       "none"                  },
   { "game.panel.inventory_last_6.x",           "-1"                    },
   { "game.panel.inventory_last_6.y",           "-1"                    },
   { "game.panel.inventory_last_6.tile_size",   "16"                    },
   { "game.panel.inventory_last_6.draw_masked", "false"                 },
   { "game.panel.inventory_last_6.draw_order",  "0"                     },
+  { "game.panel.inventory_last_6.class",       "none"                  },
+  { "game.panel.inventory_last_6.style",       "none"                  },
   { "game.panel.inventory_last_7.x",           "-1"                    },
   { "game.panel.inventory_last_7.y",           "-1"                    },
   { "game.panel.inventory_last_7.tile_size",   "16"                    },
   { "game.panel.inventory_last_7.draw_masked", "false"                 },
   { "game.panel.inventory_last_7.draw_order",  "0"                     },
+  { "game.panel.inventory_last_7.class",       "none"                  },
+  { "game.panel.inventory_last_7.style",       "none"                  },
   { "game.panel.inventory_last_8.x",           "-1"                    },
   { "game.panel.inventory_last_8.y",           "-1"                    },
   { "game.panel.inventory_last_8.tile_size",   "16"                    },
   { "game.panel.inventory_last_8.draw_masked", "false"                 },
   { "game.panel.inventory_last_8.draw_order",  "0"                     },
+  { "game.panel.inventory_last_8.class",       "none"                  },
+  { "game.panel.inventory_last_8.style",       "none"                  },
 
   { "game.panel.key_1.x",                      "18"                    },
   { "game.panel.key_1.y",                      "123"                   },
   { "game.panel.key_1.tile_size",              "16"                    },
   { "game.panel.key_1.draw_masked",            "false"                 },
   { "game.panel.key_1.draw_order",             "0"                     },
+  { "game.panel.key_1.class",                  "none"                  },
+  { "game.panel.key_1.style",                  "none"                  },
   { "game.panel.key_2.x",                      "34"                    },
   { "game.panel.key_2.y",                      "123"                   },
   { "game.panel.key_2.tile_size",              "16"                    },
   { "game.panel.key_2.draw_masked",            "false"                 },
   { "game.panel.key_2.draw_order",             "0"                     },
+  { "game.panel.key_2.class",                  "none"                  },
+  { "game.panel.key_2.style",                  "none"                  },
   { "game.panel.key_3.x",                      "50"                    },
   { "game.panel.key_3.y",                      "123"                   },
   { "game.panel.key_3.tile_size",              "16"                    },
   { "game.panel.key_3.draw_masked",            "false"                 },
   { "game.panel.key_3.draw_order",             "0"                     },
+  { "game.panel.key_3.class",                  "none"                  },
+  { "game.panel.key_3.style",                  "none"                  },
   { "game.panel.key_4.x",                      "66"                    },
   { "game.panel.key_4.y",                      "123"                   },
   { "game.panel.key_4.tile_size",              "16"                    },
   { "game.panel.key_4.draw_masked",            "false"                 },
   { "game.panel.key_4.draw_order",             "0"                     },
+  { "game.panel.key_4.class",                  "none"                  },
+  { "game.panel.key_4.style",                  "none"                  },
   { "game.panel.key_5.x",                      "-1"                    },
   { "game.panel.key_5.y",                      "-1"                    },
   { "game.panel.key_5.tile_size",              "16"                    },
   { "game.panel.key_5.draw_masked",            "false"                 },
   { "game.panel.key_5.draw_order",             "0"                     },
+  { "game.panel.key_5.class",                  "none"                  },
+  { "game.panel.key_5.style",                  "none"                  },
   { "game.panel.key_6.x",                      "-1"                    },
   { "game.panel.key_6.y",                      "-1"                    },
   { "game.panel.key_6.tile_size",              "16"                    },
   { "game.panel.key_6.draw_masked",            "false"                 },
   { "game.panel.key_6.draw_order",             "0"                     },
+  { "game.panel.key_6.class",                  "none"                  },
+  { "game.panel.key_6.style",                  "none"                  },
   { "game.panel.key_7.x",                      "-1"                    },
   { "game.panel.key_7.y",                      "-1"                    },
   { "game.panel.key_7.tile_size",              "16"                    },
   { "game.panel.key_7.draw_masked",            "false"                 },
   { "game.panel.key_7.draw_order",             "0"                     },
+  { "game.panel.key_7.class",                  "none"                  },
+  { "game.panel.key_7.style",                  "none"                  },
   { "game.panel.key_8.x",                      "-1"                    },
   { "game.panel.key_8.y",                      "-1"                    },
   { "game.panel.key_8.tile_size",              "16"                    },
   { "game.panel.key_8.draw_masked",            "false"                 },
   { "game.panel.key_8.draw_order",             "0"                     },
+  { "game.panel.key_8.class",                  "none"                  },
+  { "game.panel.key_8.style",                  "none"                  },
   { "game.panel.key_white.x",                  "-1"                    },
   { "game.panel.key_white.y",                  "-1"                    },
   { "game.panel.key_white.tile_size",          "16"                    },
   { "game.panel.key_white.draw_masked",                "false"                 },
   { "game.panel.key_white.draw_order",         "0"                     },
+  { "game.panel.key_white.class",              "none"                  },
+  { "game.panel.key_white.style",              "none"                  },
   { "game.panel.key_white_count.x",            "-1"                    },
   { "game.panel.key_white_count.y",            "-1"                    },
   { "game.panel.key_white_count.align",                "left"                  },
@@ -8310,24 +8949,32 @@ struct ConfigInfo image_config[] =
   { "game.panel.key_white_count.font",         "font.text_2"           },
   { "game.panel.key_white_count.draw_masked",  "true"                  },
   { "game.panel.key_white_count.draw_order",   "0"                     },
+  { "game.panel.key_white_count.class",                "none"                  },
+  { "game.panel.key_white_count.style",                "none"                  },
 
   { "game.panel.score.x",                      "50"                    },
   { "game.panel.score.y",                      "159"                   },
   { "game.panel.score.align",                  "center"                },
   { "game.panel.score.valign",                 "top"                   },
-  { "game.panel.score.digits",                 "5"                     },
+  { "game.panel.score.digits",                 "-1"                    },
   { "game.panel.score.font",                   "font.text_2"           },
+  { "game.panel.score.font_narrow",            "font.text_1"           },
   { "game.panel.score.draw_masked",            "true"                  },
   { "game.panel.score.draw_order",             "0"                     },
+  { "game.panel.score.class",                  "none"                  },
+  { "game.panel.score.style",                  "none"                  },
 
   { "game.panel.highscore.x",                  "-1"                    },
   { "game.panel.highscore.y",                  "-1"                    },
   { "game.panel.highscore.align",              "left"                  },
   { "game.panel.highscore.valign",             "top"                   },
-  { "game.panel.highscore.digits",             "5"                     },
+  { "game.panel.highscore.digits",             "-1"                    },
   { "game.panel.highscore.font",               "font.text_2"           },
+  { "game.panel.highscore.font_narrow",                "font.text_1"           },
   { "game.panel.highscore.draw_masked",                "true"                  },
   { "game.panel.highscore.draw_order",         "0"                     },
+  { "game.panel.highscore.class",              "none"                  },
+  { "game.panel.highscore.style",              "none"                  },
 
   { "game.panel.time.x",                       "50"                    },
   { "game.panel.time.y",                       "194"                   },
@@ -8338,6 +8985,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.time.font_narrow",             "font.text_1"           },
   { "game.panel.time.draw_masked",             "true"                  },
   { "game.panel.time.draw_order",              "0"                     },
+  { "game.panel.time.class",                   "none"                  },
+  { "game.panel.time.style",                   "none"                  },
 
   { "game.panel.time_hh.x",                    "-1"                    },
   { "game.panel.time_hh.y",                    "-1"                    },
@@ -8347,6 +8996,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.time_hh.font",                 "font.text_2"           },
   { "game.panel.time_hh.draw_masked",          "true"                  },
   { "game.panel.time_hh.draw_order",           "0"                     },
+  { "game.panel.time_hh.class",                        "none"                  },
+  { "game.panel.time_hh.style",                        "none"                  },
   { "game.panel.time_mm.x",                    "-1"                    },
   { "game.panel.time_mm.y",                    "-1"                    },
   { "game.panel.time_mm.align",                        "left"                  },
@@ -8355,6 +9006,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.time_mm.font",                 "font.text_2"           },
   { "game.panel.time_mm.draw_masked",          "true"                  },
   { "game.panel.time_mm.draw_order",           "0"                     },
+  { "game.panel.time_mm.class",                        "none"                  },
+  { "game.panel.time_mm.style",                        "none"                  },
   { "game.panel.time_ss.x",                    "-1"                    },
   { "game.panel.time_ss.y",                    "-1"                    },
   { "game.panel.time_ss.align",                        "left"                  },
@@ -8363,11 +9016,14 @@ struct ConfigInfo image_config[] =
   { "game.panel.time_ss.font",                 "font.text_2"           },
   { "game.panel.time_ss.draw_masked",          "true"                  },
   { "game.panel.time_ss.draw_order",           "0"                     },
+  { "game.panel.time_ss.class",                        "none"                  },
+  { "game.panel.time_ss.style",                        "none"                  },
 
   { "game.panel.time_anim.x",                  "5"                     },
   { "game.panel.time_anim.y",                  "72"                    },
   { "game.panel.time_anim.direction",          "right"                 },
   { "game.panel.time_anim.class",              "mm_engine_only"        },
+  { "game.panel.time_anim.style",              "none"                  },
 
   { "game.panel.health.x",                     "-1"                    },
   { "game.panel.health.y",                     "-1"                    },
@@ -8378,6 +9034,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.health.font_narrow",           "font.text_1"           },
   { "game.panel.health.draw_masked",           "true"                  },
   { "game.panel.health.draw_order",            "0"                     },
+  { "game.panel.health.class",                 "none"                  },
+  { "game.panel.health.style",                 "none"                  },
 
   { "game.panel.health_anim.x",                        "5"                     },
   { "game.panel.health_anim.y",                        "107"                   },
@@ -8393,6 +9051,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.frame.font",                   "font.text_2"           },
   { "game.panel.frame.draw_masked",            "true"                  },
   { "game.panel.frame.draw_order",             "0"                     },
+  { "game.panel.frame.class",                  "none"                  },
+  { "game.panel.frame.style",                  "none"                  },
 
   { "game.panel.shield_normal.x",              "-1"                    },
   { "game.panel.shield_normal.y",              "-1"                    },
@@ -8407,6 +9067,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.shield_normal_time.font",      "font.text_2"           },
   { "game.panel.shield_normal_time.draw_masked", "true"                        },
   { "game.panel.shield_normal_time.draw_order",        "0"                     },
+  { "game.panel.shield_normal_time.class",     "none"                  },
+  { "game.panel.shield_normal_time.style",     "none"                  },
   { "game.panel.shield_deadly.x",              "-1"                    },
   { "game.panel.shield_deadly.y",              "-1"                    },
   { "game.panel.shield_deadly.tile_size",      "16"                    },
@@ -8420,12 +9082,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.shield_deadly_time.font",      "font.text_2"           },
   { "game.panel.shield_deadly_time.draw_masked","true"                 },
   { "game.panel.shield_deadly_time.draw_order",        "0"                     },
+  { "game.panel.shield_deadly_time.class",     "none"                  },
+  { "game.panel.shield_deadly_time.style",     "none"                  },
 
   { "game.panel.exit.x",                       "-1"                    },
   { "game.panel.exit.y",                       "-1"                    },
   { "game.panel.exit.tile_size",               "16"                    },
   { "game.panel.exit.draw_masked",             "false"                 },
   { "game.panel.exit.draw_order",              "0"                     },
+  { "game.panel.exit.class",                   "none"                  },
+  { "game.panel.exit.style",                   "none"                  },
 
   { "game.panel.emc_magic_ball.x",             "-1"                    },
   { "game.panel.emc_magic_ball.y",             "-1"                    },
@@ -8437,6 +9103,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.emc_magic_ball_switch.tile_size", "16"                 },
   { "game.panel.emc_magic_ball_switch.draw_masked", "true"             },
   { "game.panel.emc_magic_ball_switch.draw_order", "0"                 },
+  { "game.panel.emc_magic_ball_switch.class",  "none"                  },
+  { "game.panel.emc_magic_ball_switch.style",  "none"                  },
 
   { "game.panel.light_switch.x",               "-1"                    },
   { "game.panel.light_switch.y",               "-1"                    },
@@ -8451,6 +9119,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.light_switch_time.font",       "font.text_2"           },
   { "game.panel.light_switch_time.draw_masked",        "true"                  },
   { "game.panel.light_switch_time.draw_order", "0"                     },
+  { "game.panel.light_switch_time.class",      "none"                  },
+  { "game.panel.light_switch_time.style",      "none"                  },
 
   { "game.panel.timegate_switch.x",            "-1"                    },
   { "game.panel.timegate_switch.y",            "-1"                    },
@@ -8465,18 +9135,24 @@ struct ConfigInfo image_config[] =
   { "game.panel.timegate_switch_time.font",    "font.text_2"           },
   { "game.panel.timegate_switch_time.draw_masked", "true"              },
   { "game.panel.timegate_switch_time.draw_order", "0"                  },
+  { "game.panel.timegate_switch_time.class",   "none"                  },
+  { "game.panel.timegate_switch_time.style",   "none"                  },
 
   { "game.panel.switchgate_switch.x",          "-1"                    },
   { "game.panel.switchgate_switch.y",          "-1"                    },
   { "game.panel.switchgate_switch.tile_size",  "16"                    },
   { "game.panel.switchgate_switch.draw_masked",        "false"                 },
   { "game.panel.switchgate_switch.draw_order", "0"                     },
+  { "game.panel.switchgate_switch.class",      "none"                  },
+  { "game.panel.switchgate_switch.style",      "none"                  },
 
   { "game.panel.emc_lenses.x",                 "-1"                    },
   { "game.panel.emc_lenses.y",                 "-1"                    },
   { "game.panel.emc_lenses.tile_size",         "16"                    },
   { "game.panel.emc_lenses.draw_masked",       "false"                 },
   { "game.panel.emc_lenses.draw_order",                "0"                     },
+  { "game.panel.emc_lenses.class",             "none"                  },
+  { "game.panel.emc_lenses.style",             "none"                  },
   { "game.panel.emc_lenses_time.x",            "-1"                    },
   { "game.panel.emc_lenses_time.y",            "-1"                    },
   { "game.panel.emc_lenses_time.align",                "left"                  },
@@ -8485,12 +9161,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.emc_lenses_time.font",         "font.text_2"           },
   { "game.panel.emc_lenses_time.draw_masked",  "true"                  },
   { "game.panel.emc_lenses_time.draw_order",   "0"                     },
+  { "game.panel.emc_lenses_time.class",                "none"                  },
+  { "game.panel.emc_lenses_time.style",                "none"                  },
 
   { "game.panel.emc_magnifier.x",              "-1"                    },
   { "game.panel.emc_magnifier.y",              "-1"                    },
   { "game.panel.emc_magnifier.tile_size",      "16"                    },
   { "game.panel.emc_magnifier.draw_masked",    "false"                 },
   { "game.panel.emc_magnifier.draw_order",     "0"                     },
+  { "game.panel.emc_magnifier.class",          "none"                  },
+  { "game.panel.emc_magnifier.style",          "none"                  },
   { "game.panel.emc_magnifier_time.x",         "-1"                    },
   { "game.panel.emc_magnifier_time.y",         "-1"                    },
   { "game.panel.emc_magnifier_time.align",     "left"                  },
@@ -8499,12 +9179,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.emc_magnifier_time.font",      "font.text_2"           },
   { "game.panel.emc_magnifier_time.draw_masked","true"                 },
   { "game.panel.emc_magnifier_time.draw_order",        "0"                     },
+  { "game.panel.emc_magnifier_time.class",     "none"                  },
+  { "game.panel.emc_magnifier_time.style",     "none"                  },
 
   { "game.panel.balloon_switch.x",             "-1"                    },
   { "game.panel.balloon_switch.y",             "-1"                    },
   { "game.panel.balloon_switch.tile_size",     "16"                    },
   { "game.panel.balloon_switch.draw_masked",   "false"                 },
   { "game.panel.balloon_switch.draw_order",    "0"                     },
+  { "game.panel.balloon_switch.class",         "none"                  },
+  { "game.panel.balloon_switch.style",         "none"                  },
 
   { "game.panel.dynabomb_number.x",            "-1"                    },
   { "game.panel.dynabomb_number.y",            "-1"                    },
@@ -8514,6 +9198,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.dynabomb_number.font",         "font.text_2"           },
   { "game.panel.dynabomb_number.draw_masked",  "true"                  },
   { "game.panel.dynabomb_number.draw_order",   "0"                     },
+  { "game.panel.dynabomb_number.class",                "none"                  },
+  { "game.panel.dynabomb_number.style",                "none"                  },
   { "game.panel.dynabomb_size.x",              "-1"                    },
   { "game.panel.dynabomb_size.y",              "-1"                    },
   { "game.panel.dynabomb_size.align",          "left"                  },
@@ -8522,11 +9208,15 @@ struct ConfigInfo image_config[] =
   { "game.panel.dynabomb_size.font",           "font.text_2"           },
   { "game.panel.dynabomb_size.draw_masked",    "true"                  },
   { "game.panel.dynabomb_size.draw_order",     "0"                     },
+  { "game.panel.dynabomb_size.class",          "none"                  },
+  { "game.panel.dynabomb_size.style",          "none"                  },
   { "game.panel.dynabomb_power.x",             "-1"                    },
   { "game.panel.dynabomb_power.y",             "-1"                    },
   { "game.panel.dynabomb_power.tile_size",     "16"                    },
   { "game.panel.dynabomb_power.draw_masked",   "false"                 },
   { "game.panel.dynabomb_power.draw_order",    "0"                     },
+  { "game.panel.dynabomb_power.class",         "none"                  },
+  { "game.panel.dynabomb_power.style",         "none"                  },
 
   { "game.panel.penguins.x",                   "-1"                    },
   { "game.panel.penguins.y",                   "-1"                    },
@@ -8536,6 +9226,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.penguins.font",                        "font.text_2"           },
   { "game.panel.penguins.draw_masked",         "true"                  },
   { "game.panel.penguins.draw_order",          "0"                     },
+  { "game.panel.penguins.class",               "none"                  },
+  { "game.panel.penguins.style",               "none"                  },
 
   { "game.panel.sokoban_objects.x",            "-1"                    },
   { "game.panel.sokoban_objects.y",            "-1"                    },
@@ -8545,6 +9237,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.sokoban_objects.font",         "font.text_2"           },
   { "game.panel.sokoban_objects.draw_masked",  "true"                  },
   { "game.panel.sokoban_objects.draw_order",   "0"                     },
+  { "game.panel.sokoban_objects.class",                "none"                  },
+  { "game.panel.sokoban_objects.style",                "none"                  },
   { "game.panel.sokoban_fields.x",             "-1"                    },
   { "game.panel.sokoban_fields.y",             "-1"                    },
   { "game.panel.sokoban_fields.align",         "left"                  },
@@ -8553,59 +9247,81 @@ struct ConfigInfo image_config[] =
   { "game.panel.sokoban_fields.font",          "font.text_2"           },
   { "game.panel.sokoban_fields.draw_masked",   "true"                  },
   { "game.panel.sokoban_fields.draw_order",    "0"                     },
+  { "game.panel.sokoban_fields.class",         "none"                  },
+  { "game.panel.sokoban_fields.style",         "none"                  },
 
   { "game.panel.robot_wheel.x",                        "-1"                    },
   { "game.panel.robot_wheel.y",                        "-1"                    },
   { "game.panel.robot_wheel.tile_size",                "16"                    },
   { "game.panel.robot_wheel.draw_masked",      "false"                 },
   { "game.panel.robot_wheel.draw_order",       "0"                     },
+  { "game.panel.robot_wheel.class",            "none"                  },
+  { "game.panel.robot_wheel.style",            "none"                  },
 
   { "game.panel.conveyor_belt_1.x",            "-1"                    },
   { "game.panel.conveyor_belt_1.y",            "-1"                    },
   { "game.panel.conveyor_belt_1.tile_size",    "16"                    },
   { "game.panel.conveyor_belt_1.draw_masked",  "false"                 },
   { "game.panel.conveyor_belt_1.draw_order",   "0"                     },
+  { "game.panel.conveyor_belt_1.class",                "none"                  },
+  { "game.panel.conveyor_belt_1.style",                "none"                  },
   { "game.panel.conveyor_belt_1_switch.x",     "-1"                    },
   { "game.panel.conveyor_belt_1_switch.y",     "-1"                    },
   { "game.panel.conveyor_belt_1_switch.tile_size", "16"                        },
   { "game.panel.conveyor_belt_1_switch.draw_masked", "false"           },
   { "game.panel.conveyor_belt_1_switch.draw_order", "0"                        },
+  { "game.panel.conveyor_belt_1_switch.class", "none"                  },
+  { "game.panel.conveyor_belt_1_switch.style", "none"                  },
   { "game.panel.conveyor_belt_2.x",            "-1"                    },
   { "game.panel.conveyor_belt_2.y",            "-1"                    },
   { "game.panel.conveyor_belt_2.tile_size",    "16"                    },
   { "game.panel.conveyor_belt_2.draw_masked",  "false"                 },
   { "game.panel.conveyor_belt_2.draw_order",   "0"                     },
+  { "game.panel.conveyor_belt_2.class",                "none"                  },
+  { "game.panel.conveyor_belt_2.style",                "none"                  },
   { "game.panel.conveyor_belt_2_switch.x",     "-1"                    },
   { "game.panel.conveyor_belt_2_switch.y",     "-1"                    },
   { "game.panel.conveyor_belt_2_switch.tile_size", "16"                        },
   { "game.panel.conveyor_belt_2_switch.draw_masked", "false"           },
   { "game.panel.conveyor_belt_2_switch.draw_order", "0"                        },
+  { "game.panel.conveyor_belt_2_switch.class", "none"                  },
+  { "game.panel.conveyor_belt_2_switch.style", "none"                  },
   { "game.panel.conveyor_belt_3.x",            "-1"                    },
   { "game.panel.conveyor_belt_3.y",            "-1"                    },
   { "game.panel.conveyor_belt_3.tile_size",    "16"                    },
   { "game.panel.conveyor_belt_3.draw_masked",  "false"                 },
   { "game.panel.conveyor_belt_3.draw_order",   "0"                     },
+  { "game.panel.conveyor_belt_3.class",                "none"                  },
+  { "game.panel.conveyor_belt_3.style",                "none"                  },
   { "game.panel.conveyor_belt_3_switch.x",     "-1"                    },
   { "game.panel.conveyor_belt_3_switch.y",     "-1"                    },
   { "game.panel.conveyor_belt_3_switch.tile_size", "16"                        },
   { "game.panel.conveyor_belt_3_switch.draw_masked", "false"           },
   { "game.panel.conveyor_belt_3_switch.draw_order", "0"                        },
+  { "game.panel.conveyor_belt_3_switch.class", "none"                  },
+  { "game.panel.conveyor_belt_3_switch.style", "none"                  },
   { "game.panel.conveyor_belt_4.x",            "-1"                    },
   { "game.panel.conveyor_belt_4.y",            "-1"                    },
   { "game.panel.conveyor_belt_4.tile_size",    "16"                    },
   { "game.panel.conveyor_belt_4.draw_masked",  "false"                 },
   { "game.panel.conveyor_belt_4.draw_order",   "0"                     },
+  { "game.panel.conveyor_belt_4.class",                "none"                  },
+  { "game.panel.conveyor_belt_4.style",                "none"                  },
   { "game.panel.conveyor_belt_4_switch.x",     "-1"                    },
   { "game.panel.conveyor_belt_4_switch.y",     "-1"                    },
   { "game.panel.conveyor_belt_4_switch.tile_size", "16"                        },
   { "game.panel.conveyor_belt_4_switch.draw_masked", "false"           },
   { "game.panel.conveyor_belt_4_switch.draw_order", "0"                        },
+  { "game.panel.conveyor_belt_4_switch.class", "none"                  },
+  { "game.panel.conveyor_belt_4_switch.style", "none"                  },
 
   { "game.panel.magic_wall.x",                 "-1"                    },
   { "game.panel.magic_wall.y",                 "-1"                    },
   { "game.panel.magic_wall.tile_size",         "16"                    },
   { "game.panel.magic_wall.draw_masked",       "false"                 },
   { "game.panel.magic_wall.draw_order",                "0"                     },
+  { "game.panel.magic_wall.class",             "none"                  },
+  { "game.panel.magic_wall.style",             "none"                  },
   { "game.panel.magic_wall_time.x",            "-1"                    },
   { "game.panel.magic_wall_time.y",            "-1"                    },
   { "game.panel.magic_wall_time.align",                "left"                  },
@@ -8614,6 +9330,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.magic_wall_time.font",         "font.text_2"           },
   { "game.panel.magic_wall_time.draw_masked",  "true"                  },
   { "game.panel.magic_wall_time.draw_order",   "0"                     },
+  { "game.panel.magic_wall_time.class",                "none"                  },
+  { "game.panel.magic_wall_time.style",                "none"                  },
 
   { "game.panel.gravity_state.x",              "-1"                    },
   { "game.panel.gravity_state.y",              "-1"                    },
@@ -8624,39 +9342,57 @@ struct ConfigInfo image_config[] =
   { "game.panel.gravity_state.font_active",    "font.text_2"           },
   { "game.panel.gravity_state.draw_masked",    "true"                  },
   { "game.panel.gravity_state.draw_order",     "0"                     },
+  { "game.panel.gravity_state.class",          "none"                  },
+  { "game.panel.gravity_state.style",          "none"                  },
 
   { "game.panel.graphic_1.x",                  "-1"                    },
   { "game.panel.graphic_1.y",                  "-1"                    },
   { "game.panel.graphic_1.draw_masked",                "true"                  },
   { "game.panel.graphic_1.draw_order",         "0"                     },
+  { "game.panel.graphic_1.class",              "none"                  },
+  { "game.panel.graphic_1.style",              "none"                  },
   { "game.panel.graphic_2.x",                  "-1"                    },
   { "game.panel.graphic_2.y",                  "-1"                    },
   { "game.panel.graphic_2.draw_masked",                "true"                  },
   { "game.panel.graphic_2.draw_order",         "0"                     },
+  { "game.panel.graphic_2.class",              "none"                  },
+  { "game.panel.graphic_2.style",              "none"                  },
   { "game.panel.graphic_3.x",                  "-1"                    },
   { "game.panel.graphic_3.y",                  "-1"                    },
   { "game.panel.graphic_3.draw_masked",                "true"                  },
   { "game.panel.graphic_3.draw_order",         "0"                     },
+  { "game.panel.graphic_3.class",              "none"                  },
+  { "game.panel.graphic_3.style",              "none"                  },
   { "game.panel.graphic_4.x",                  "-1"                    },
   { "game.panel.graphic_4.y",                  "-1"                    },
   { "game.panel.graphic_4.draw_masked",                "true"                  },
   { "game.panel.graphic_4.draw_order",         "0"                     },
+  { "game.panel.graphic_4.class",              "none"                  },
+  { "game.panel.graphic_4.style",              "none"                  },
   { "game.panel.graphic_5.x",                  "-1"                    },
   { "game.panel.graphic_5.y",                  "-1"                    },
   { "game.panel.graphic_5.draw_masked",                "true"                  },
   { "game.panel.graphic_5.draw_order",         "0"                     },
+  { "game.panel.graphic_5.class",              "none"                  },
+  { "game.panel.graphic_5.style",              "none"                  },
   { "game.panel.graphic_6.x",                  "-1"                    },
   { "game.panel.graphic_6.y",                  "-1"                    },
   { "game.panel.graphic_6.draw_masked",                "true"                  },
   { "game.panel.graphic_6.draw_order",         "0"                     },
+  { "game.panel.graphic_6.class",              "none"                  },
+  { "game.panel.graphic_6.style",              "none"                  },
   { "game.panel.graphic_7.x",                  "-1"                    },
   { "game.panel.graphic_7.y",                  "-1"                    },
   { "game.panel.graphic_7.draw_masked",                "true"                  },
   { "game.panel.graphic_7.draw_order",         "0"                     },
+  { "game.panel.graphic_7.class",              "none"                  },
+  { "game.panel.graphic_7.style",              "none"                  },
   { "game.panel.graphic_8.x",                  "-1"                    },
   { "game.panel.graphic_8.y",                  "-1"                    },
   { "game.panel.graphic_8.draw_masked",                "true"                  },
   { "game.panel.graphic_8.draw_order",         "0"                     },
+  { "game.panel.graphic_8.class",              "none"                  },
+  { "game.panel.graphic_8.style",              "none"                  },
 
   { "game.panel.element_1.x",                  "-1"                    },
   { "game.panel.element_1.y",                  "-1"                    },
@@ -8664,6 +9400,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_1.element",            "empty_space"           },
   { "game.panel.element_1.draw_masked",                "false"                 },
   { "game.panel.element_1.draw_order",         "0"                     },
+  { "game.panel.element_1.class",              "none"                  },
+  { "game.panel.element_1.style",              "none"                  },
   { "game.panel.element_1_count.x",            "-1"                    },
   { "game.panel.element_1_count.y",            "-1"                    },
   { "game.panel.element_1_count.align",                "left"                  },
@@ -8673,12 +9411,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_1_count.element",      "empty_space"           },
   { "game.panel.element_1_count.draw_masked",  "true"                  },
   { "game.panel.element_1_count.draw_order",   "0"                     },
+  { "game.panel.element_1_count.class",                "none"                  },
+  { "game.panel.element_1_count.style",                "none"                  },
   { "game.panel.element_2.x",                  "-1"                    },
   { "game.panel.element_2.y",                  "-1"                    },
   { "game.panel.element_2.tile_size",          "16"                    },
   { "game.panel.element_2.element",            "empty_space"           },
   { "game.panel.element_2.draw_masked",                "false"                 },
   { "game.panel.element_2.draw_order",         "0"                     },
+  { "game.panel.element_2.class",              "none"                  },
+  { "game.panel.element_2.style",              "none"                  },
   { "game.panel.element_2_count.x",            "-1"                    },
   { "game.panel.element_2_count.y",            "-1"                    },
   { "game.panel.element_2_count.align",                "left"                  },
@@ -8688,12 +9430,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_2_count.element",      "empty_space"           },
   { "game.panel.element_2_count.draw_masked",  "true"                  },
   { "game.panel.element_2_count.draw_order",   "0"                     },
+  { "game.panel.element_2_count.class",                "none"                  },
+  { "game.panel.element_2_count.style",                "none"                  },
   { "game.panel.element_3.x",                  "-1"                    },
   { "game.panel.element_3.y",                  "-1"                    },
   { "game.panel.element_3.tile_size",          "16"                    },
   { "game.panel.element_3.element",            "empty_space"           },
   { "game.panel.element_3.draw_masked",                "false"                 },
   { "game.panel.element_3.draw_order",         "0"                     },
+  { "game.panel.element_3.class",              "none"                  },
+  { "game.panel.element_3.style",              "none"                  },
   { "game.panel.element_3_count.x",            "-1"                    },
   { "game.panel.element_3_count.y",            "-1"                    },
   { "game.panel.element_3_count.align",                "left"                  },
@@ -8703,12 +9449,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_3_count.element",      "empty_space"           },
   { "game.panel.element_3_count.draw_masked",  "true"                  },
   { "game.panel.element_3_count.draw_order",   "0"                     },
+  { "game.panel.element_3_count.class",                "none"                  },
+  { "game.panel.element_3_count.style",                "none"                  },
   { "game.panel.element_4.x",                  "-1"                    },
   { "game.panel.element_4.y",                  "-1"                    },
   { "game.panel.element_4.tile_size",          "16"                    },
   { "game.panel.element_4.element",            "empty_space"           },
   { "game.panel.element_4.draw_masked",                "false"                 },
   { "game.panel.element_4.draw_order",         "0"                     },
+  { "game.panel.element_4.class",              "none"                  },
+  { "game.panel.element_4.style",              "none"                  },
   { "game.panel.element_4_count.x",            "-1"                    },
   { "game.panel.element_4_count.y",            "-1"                    },
   { "game.panel.element_4_count.align",                "left"                  },
@@ -8718,12 +9468,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_4_count.element",      "empty_space"           },
   { "game.panel.element_4_count.draw_masked",  "true"                  },
   { "game.panel.element_4_count.draw_order",   "0"                     },
+  { "game.panel.element_4_count.class",                "none"                  },
+  { "game.panel.element_4_count.style",                "none"                  },
   { "game.panel.element_5.x",                  "-1"                    },
   { "game.panel.element_5.y",                  "-1"                    },
   { "game.panel.element_5.tile_size",          "16"                    },
   { "game.panel.element_5.element",            "empty_space"           },
   { "game.panel.element_5.draw_masked",                "false"                 },
   { "game.panel.element_5.draw_order",         "0"                     },
+  { "game.panel.element_5.class",              "none"                  },
+  { "game.panel.element_5.style",              "none"                  },
   { "game.panel.element_5_count.x",            "-1"                    },
   { "game.panel.element_5_count.y",            "-1"                    },
   { "game.panel.element_5_count.align",                "left"                  },
@@ -8733,12 +9487,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_5_count.element",      "empty_space"           },
   { "game.panel.element_5_count.draw_masked",  "true"                  },
   { "game.panel.element_5_count.draw_order",   "0"                     },
+  { "game.panel.element_5_count.class",                "none"                  },
+  { "game.panel.element_5_count.style",                "none"                  },
   { "game.panel.element_6.x",                  "-1"                    },
   { "game.panel.element_6.y",                  "-1"                    },
   { "game.panel.element_6.tile_size",          "16"                    },
   { "game.panel.element_6.element",            "empty_space"           },
   { "game.panel.element_6.draw_masked",                "false"                 },
   { "game.panel.element_6.draw_order",         "0"                     },
+  { "game.panel.element_6.class",              "none"                  },
+  { "game.panel.element_6.style",              "none"                  },
   { "game.panel.element_6_count.x",            "-1"                    },
   { "game.panel.element_6_count.y",            "-1"                    },
   { "game.panel.element_6_count.align",                "left"                  },
@@ -8748,12 +9506,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_6_count.element",      "empty_space"           },
   { "game.panel.element_6_count.draw_masked",  "true"                  },
   { "game.panel.element_6_count.draw_order",   "0"                     },
+  { "game.panel.element_6_count.class",                "none"                  },
+  { "game.panel.element_6_count.style",                "none"                  },
   { "game.panel.element_7.x",                  "-1"                    },
   { "game.panel.element_7.y",                  "-1"                    },
   { "game.panel.element_7.tile_size",          "16"                    },
   { "game.panel.element_7.element",            "empty_space"           },
   { "game.panel.element_7.draw_masked",                "false"                 },
   { "game.panel.element_7.draw_order",         "0"                     },
+  { "game.panel.element_7.class",              "none"                  },
+  { "game.panel.element_7.style",              "none"                  },
   { "game.panel.element_7_count.x",            "-1"                    },
   { "game.panel.element_7_count.y",            "-1"                    },
   { "game.panel.element_7_count.align",                "left"                  },
@@ -8763,12 +9525,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_7_count.element",      "empty_space"           },
   { "game.panel.element_7_count.draw_masked",  "true"                  },
   { "game.panel.element_7_count.draw_order",   "0"                     },
+  { "game.panel.element_7_count.class",                "none"                  },
+  { "game.panel.element_7_count.style",                "none"                  },
   { "game.panel.element_8.x",                  "-1"                    },
   { "game.panel.element_8.y",                  "-1"                    },
   { "game.panel.element_8.tile_size",          "16"                    },
   { "game.panel.element_8.element",            "empty_space"           },
   { "game.panel.element_8.draw_masked",                "false"                 },
   { "game.panel.element_8.draw_order",         "0"                     },
+  { "game.panel.element_8.class",              "none"                  },
+  { "game.panel.element_8.style",              "none"                  },
   { "game.panel.element_8_count.x",            "-1"                    },
   { "game.panel.element_8_count.y",            "-1"                    },
   { "game.panel.element_8_count.align",                "left"                  },
@@ -8778,6 +9544,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.element_8_count.element",      "empty_space"           },
   { "game.panel.element_8_count.draw_masked",  "true"                  },
   { "game.panel.element_8_count.draw_order",   "0"                     },
+  { "game.panel.element_8_count.class",                "none"                  },
+  { "game.panel.element_8_count.style",                "none"                  },
 
   { "game.panel.ce_score_1.x",                 "-1"                    },
   { "game.panel.ce_score_1.y",                 "-1"                    },
@@ -8788,12 +9556,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.ce_score_1.element",           "empty_space"           },
   { "game.panel.ce_score_1.draw_masked",       "true"                  },
   { "game.panel.ce_score_1.draw_order",                "0"                     },
+  { "game.panel.ce_score_1.class",             "none"                  },
+  { "game.panel.ce_score_1.style",             "none"                  },
   { "game.panel.ce_score_1_element.x",         "-1"                    },
   { "game.panel.ce_score_1_element.y",         "-1"                    },
   { "game.panel.ce_score_1_element.tile_size", "16"                    },
   { "game.panel.ce_score_1_element.element",   "empty_space"           },
   { "game.panel.ce_score_1_element.draw_masked","false"                        },
   { "game.panel.ce_score_1_element.draw_order",        "0"                     },
+  { "game.panel.ce_score_1_element.class",     "none"                  },
+  { "game.panel.ce_score_1_element.style",     "none"                  },
   { "game.panel.ce_score_2.x",                 "-1"                    },
   { "game.panel.ce_score_2.y",                 "-1"                    },
   { "game.panel.ce_score_2.align",             "left"                  },
@@ -8803,12 +9575,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.ce_score_2.element",           "empty_space"           },
   { "game.panel.ce_score_2.draw_masked",       "true"                  },
   { "game.panel.ce_score_2.draw_order",                "0"                     },
+  { "game.panel.ce_score_2.class",             "none"                  },
+  { "game.panel.ce_score_2.style",             "none"                  },
   { "game.panel.ce_score_2_element.x",         "-1"                    },
   { "game.panel.ce_score_2_element.y",         "-1"                    },
   { "game.panel.ce_score_2_element.tile_size", "16"                    },
   { "game.panel.ce_score_2_element.element",   "empty_space"           },
   { "game.panel.ce_score_2_element.draw_masked","false"                        },
   { "game.panel.ce_score_2_element.draw_order",        "0"                     },
+  { "game.panel.ce_score_2_element.class",     "none"                  },
+  { "game.panel.ce_score_2_element.style",     "none"                  },
   { "game.panel.ce_score_3.x",                 "-1"                    },
   { "game.panel.ce_score_3.y",                 "-1"                    },
   { "game.panel.ce_score_3.align",             "left"                  },
@@ -8818,12 +9594,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.ce_score_3.element",           "empty_space"           },
   { "game.panel.ce_score_3.draw_masked",       "true"                  },
   { "game.panel.ce_score_3.draw_order",                "0"                     },
+  { "game.panel.ce_score_3.class",             "none"                  },
+  { "game.panel.ce_score_3.style",             "none"                  },
   { "game.panel.ce_score_3_element.x",         "-1"                    },
   { "game.panel.ce_score_3_element.y",         "-1"                    },
   { "game.panel.ce_score_3_element.tile_size", "16"                    },
   { "game.panel.ce_score_3_element.element",   "empty_space"           },
   { "game.panel.ce_score_3_element.draw_masked","false"                        },
   { "game.panel.ce_score_3_element.draw_order",        "0"                     },
+  { "game.panel.ce_score_3_element.class",     "none"                  },
+  { "game.panel.ce_score_3_element.style",     "none"                  },
   { "game.panel.ce_score_4.x",                 "-1"                    },
   { "game.panel.ce_score_4.y",                 "-1"                    },
   { "game.panel.ce_score_4.align",             "left"                  },
@@ -8833,12 +9613,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.ce_score_4.element",           "empty_space"           },
   { "game.panel.ce_score_4.draw_masked",       "true"                  },
   { "game.panel.ce_score_4.draw_order",                "0"                     },
+  { "game.panel.ce_score_4.class",             "none"                  },
+  { "game.panel.ce_score_4.style",             "none"                  },
   { "game.panel.ce_score_4_element.x",         "-1"                    },
   { "game.panel.ce_score_4_element.y",         "-1"                    },
   { "game.panel.ce_score_4_element.tile_size", "16"                    },
   { "game.panel.ce_score_4_element.element",   "empty_space"           },
   { "game.panel.ce_score_4_element.draw_masked","false"                        },
   { "game.panel.ce_score_4_element.draw_order",        "0"                     },
+  { "game.panel.ce_score_4_element.class",     "none"                  },
+  { "game.panel.ce_score_4_element.style",     "none"                  },
   { "game.panel.ce_score_5.x",                 "-1"                    },
   { "game.panel.ce_score_5.y",                 "-1"                    },
   { "game.panel.ce_score_5.align",             "left"                  },
@@ -8848,12 +9632,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.ce_score_5.element",           "empty_space"           },
   { "game.panel.ce_score_5.draw_masked",       "true"                  },
   { "game.panel.ce_score_5.draw_order",                "0"                     },
+  { "game.panel.ce_score_5.class",             "none"                  },
+  { "game.panel.ce_score_5.style",             "none"                  },
   { "game.panel.ce_score_5_element.x",         "-1"                    },
   { "game.panel.ce_score_5_element.y",         "-1"                    },
   { "game.panel.ce_score_5_element.tile_size", "16"                    },
   { "game.panel.ce_score_5_element.element",   "empty_space"           },
   { "game.panel.ce_score_5_element.draw_masked","false"                        },
   { "game.panel.ce_score_5_element.draw_order",        "0"                     },
+  { "game.panel.ce_score_5_element.class",     "none"                  },
+  { "game.panel.ce_score_5_element.style",     "none"                  },
   { "game.panel.ce_score_6.x",                 "-1"                    },
   { "game.panel.ce_score_6.y",                 "-1"                    },
   { "game.panel.ce_score_6.align",             "left"                  },
@@ -8863,12 +9651,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.ce_score_6.element",           "empty_space"           },
   { "game.panel.ce_score_6.draw_masked",       "true"                  },
   { "game.panel.ce_score_6.draw_order",                "0"                     },
+  { "game.panel.ce_score_6.class",             "none"                  },
+  { "game.panel.ce_score_6.style",             "none"                  },
   { "game.panel.ce_score_6_element.x",         "-1"                    },
   { "game.panel.ce_score_6_element.y",         "-1"                    },
   { "game.panel.ce_score_6_element.tile_size", "16"                    },
   { "game.panel.ce_score_6_element.element",   "empty_space"           },
   { "game.panel.ce_score_6_element.draw_masked","false"                        },
   { "game.panel.ce_score_6_element.draw_order",        "0"                     },
+  { "game.panel.ce_score_6_element.class",     "none"                  },
+  { "game.panel.ce_score_6_element.style",     "none"                  },
   { "game.panel.ce_score_7.x",                 "-1"                    },
   { "game.panel.ce_score_7.y",                 "-1"                    },
   { "game.panel.ce_score_7.align",             "left"                  },
@@ -8878,12 +9670,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.ce_score_7.element",           "empty_space"           },
   { "game.panel.ce_score_7.draw_masked",       "true"                  },
   { "game.panel.ce_score_7.draw_order",                "0"                     },
+  { "game.panel.ce_score_7.class",             "none"                  },
+  { "game.panel.ce_score_7.style",             "none"                  },
   { "game.panel.ce_score_7_element.x",         "-1"                    },
   { "game.panel.ce_score_7_element.y",         "-1"                    },
   { "game.panel.ce_score_7_element.tile_size", "16"                    },
   { "game.panel.ce_score_7_element.element",   "empty_space"           },
   { "game.panel.ce_score_7_element.draw_masked","false"                        },
   { "game.panel.ce_score_7_element.draw_order",        "0"                     },
+  { "game.panel.ce_score_7_element.class",     "none"                  },
+  { "game.panel.ce_score_7_element.style",     "none"                  },
   { "game.panel.ce_score_8.x",                 "-1"                    },
   { "game.panel.ce_score_8.y",                 "-1"                    },
   { "game.panel.ce_score_8.align",             "left"                  },
@@ -8893,12 +9689,16 @@ struct ConfigInfo image_config[] =
   { "game.panel.ce_score_8.element",           "empty_space"           },
   { "game.panel.ce_score_8.draw_masked",       "true"                  },
   { "game.panel.ce_score_8.draw_order",                "0"                     },
+  { "game.panel.ce_score_8.class",             "none"                  },
+  { "game.panel.ce_score_8.style",             "none"                  },
   { "game.panel.ce_score_8_element.x",         "-1"                    },
   { "game.panel.ce_score_8_element.y",         "-1"                    },
   { "game.panel.ce_score_8_element.tile_size", "16"                    },
   { "game.panel.ce_score_8_element.element",   "empty_space"           },
   { "game.panel.ce_score_8_element.draw_masked","false"                        },
   { "game.panel.ce_score_8_element.draw_order",        "0"                     },
+  { "game.panel.ce_score_8_element.class",     "none"                  },
+  { "game.panel.ce_score_8_element.style",     "none"                  },
 
   { "game.panel.player_name.x",                        "-1"                    },
   { "game.panel.player_name.y",                        "-1"                    },
@@ -8908,6 +9708,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.player_name.font",             "font.text_2"           },
   { "game.panel.player_name.draw_masked",      "true"                  },
   { "game.panel.player_name.draw_order",       "0"                     },
+  { "game.panel.player_name.class",            "none"                  },
+  { "game.panel.player_name.style",            "none"                  },
 
   { "game.panel.level_name.x",                 "-1"                    },
   { "game.panel.level_name.y",                 "-1"                    },
@@ -8917,6 +9719,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.level_name.font",              "font.text_2"           },
   { "game.panel.level_name.draw_masked",       "true"                  },
   { "game.panel.level_name.draw_order",                "0"                     },
+  { "game.panel.level_name.class",             "none"                  },
+  { "game.panel.level_name.style",             "none"                  },
   { "game.panel.level_author.x",               "-1"                    },
   { "game.panel.level_author.y",               "-1"                    },
   { "game.panel.level_author.align",           "left"                  },
@@ -8925,6 +9729,8 @@ struct ConfigInfo image_config[] =
   { "game.panel.level_author.font",            "font.text_2"           },
   { "game.panel.level_author.draw_masked",     "true"                  },
   { "game.panel.level_author.draw_order",      "0"                     },
+  { "game.panel.level_author.class",           "none"                  },
+  { "game.panel.level_author.style",           "none"                  },
 
   { "game.button.stop.x",                      "5"                     },
   { "game.button.stop.y",                      "215"                   },
@@ -8942,6 +9748,8 @@ struct ConfigInfo image_config[] =
   { "game.button.pause2.y",                    "-1"                    },
   { "game.button.load.x",                      "-1"                    },
   { "game.button.load.y",                      "-1"                    },
+  { "game.button.restart.x",                   "-1"                    },
+  { "game.button.restart.y",                   "-1"                    },
   { "game.button.sound_music.x",               "5"                     },
   { "game.button.sound_music.y",               "245"                   },
   { "game.button.sound_loops.x",               "35"                    },
@@ -8949,6 +9757,28 @@ struct ConfigInfo image_config[] =
   { "game.button.sound_simple.x",              "65"                    },
   { "game.button.sound_simple.y",              "245"                   },
 
+  { "game.button.panel_stop.x",                        "-1"                    },
+  { "game.button.panel_stop.y",                        "-1"                    },
+  { "game.button.panel_pause.x",               "-1"                    },
+  { "game.button.panel_pause.y",               "-1"                    },
+  { "game.button.panel_play.x",                        "-1"                    },
+  { "game.button.panel_play.y",                        "-1"                    },
+  { "game.button.panel_restart.x",             "-1"                    },
+  { "game.button.panel_restart.y",             "-1"                    },
+  { "game.button.panel_sound_music.x",         "-1"                    },
+  { "game.button.panel_sound_music.y",         "-1"                    },
+  { "game.button.panel_sound_loops.x",         "-1"                    },
+  { "game.button.panel_sound_loops.y",         "-1"                    },
+  { "game.button.panel_sound_simple.x",                "-1"                    },
+  { "game.button.panel_sound_simple.y",                "-1"                    },
+
+  { "game.button.touch_stop.x",                        "0"                     },
+  { "game.button.touch_stop.y",                        "0"                     },
+  { "game.button.touch_pause.x",               "-60"                   },
+  { "game.button.touch_pause.y",               "0"                     },
+  { "game.button.touch_restart.x",             "-1"                    },
+  { "game.button.touch_restart.y",             "-1"                    },
+
   { "tape.button.eject.x",                     "5"                     },
   { "tape.button.eject.y",                     "77"                    },
   { "tape.button.stop.x",                      "23"                    },
@@ -8960,6 +9790,11 @@ struct ConfigInfo image_config[] =
   { "tape.button.play.x",                      "77"                    },
   { "tape.button.play.y",                      "77"                    },
 
+  { "tape.button.insert_solution.x",           "-1"                    },
+  { "tape.button.insert_solution.y",           "-1"                    },
+  { "tape.button.play_solution.x",             "-1"                    },
+  { "tape.button.play_solution.y",             "-1"                    },
+
   { "tape.symbol.eject.x",                     "-1"                    },
   { "tape.symbol.eject.y",                     "-1"                    },
   { "tape.symbol.stop.x",                      "-1"                    },
@@ -9207,6 +10042,8 @@ struct ConfigInfo image_config[] =
   { "editor.settings.tabs.2nd_yoffset",                "64"                    },
   { "editor.settings.tabs.draw_xoffset",       "0"                     },
   { "editor.settings.tabs.draw_yoffset",       "8"                     },
+  { "editor.settings.tooltip.x",               "-1"                    },
+  { "editor.settings.tooltip.y",               "-1"                    },
 
   { "editor.gadget.normal_spacing",            "4"                     },
   { "editor.gadget.small_spacing",             "2"                     },
@@ -9221,23 +10058,30 @@ struct ConfigInfo image_config[] =
   { "request.button.no.y",                     "250"                   },
   { "request.button.confirm.x",                        "2"                     },
   { "request.button.confirm.y",                        "250"                   },
-  { "request.button.player_1.x",               "20"                    },
-  { "request.button.player_1.y",               "200"                   },
+  { "request.button.player_1.x",               "35"                    },
+  { "request.button.player_1.y",               "185"                   },
   { "request.button.player_1.draw_player",     "true"                  },
   { "request.button.player_1.tile_size",       "16"                    },
-  { "request.button.player_2.x",               "50"                    },
-  { "request.button.player_2.y",               "200"                   },
+  { "request.button.player_2.x",               "65"                    },
+  { "request.button.player_2.y",               "215"                   },
   { "request.button.player_2.draw_player",     "true"                  },
   { "request.button.player_2.tile_size",       "16"                    },
-  { "request.button.player_3.x",               "20"                    },
-  { "request.button.player_3.y",               "230"                   },
+  { "request.button.player_3.x",               "35"                    },
+  { "request.button.player_3.y",               "245"                   },
   { "request.button.player_3.draw_player",     "true"                  },
   { "request.button.player_3.tile_size",       "16"                    },
-  { "request.button.player_4.x",               "50"                    },
-  { "request.button.player_4.y",               "230"                   },
+  { "request.button.player_4.x",               "5                    },
+  { "request.button.player_4.y",               "215"                   },
   { "request.button.player_4.draw_player",     "true"                  },
   { "request.button.player_4.tile_size",       "16"                    },
 
+  { "request.button.touch_yes.x",              "0"                     },
+  { "request.button.touch_yes.y",              "-56"                   },
+  { "request.button.touch_no.x",               "-92"                   },
+  { "request.button.touch_no.y",               "-56"                   },
+  { "request.button.touch_confirm.x",          "0"                     },
+  { "request.button.touch_confirm.y",          "-56"                   },
+
   { "request.x",                               "-1"                    },
   { "request.y",                               "-1"                    },
   { "request.width",                           "120"                   },
@@ -9252,14 +10096,18 @@ struct ConfigInfo image_config[] =
   { "request.autowrap",                                "false"                 },
   { "request.centered",                                "true"                  },
   { "request.wrap_single_words",               "true"                  },
+  { "request.draw_order",                      "-1"                    },
 
   { "global.use_envelope_request",             "false"                 },
 
   { "game.graphics_engine_version",            "-1"                    },
   { "game.forced_scroll_delay_value",          "-1"                    },
+  { "game.forced_scroll_x",                    ARG_UNDEFINED           },
+  { "game.forced_scroll_y",                    ARG_UNDEFINED           },
   { "game.use_native_emc_graphics_engine",     "false"                 },
   { "game.use_native_sp_graphics_engine",      "true"                  },
   { "game.use_masked_pushing",                 "false"                 },
+  { "game.use_masked_elements",                        "false"                 },
   { "game.tile_size",                          "32"                    },
 
   { "[player].boring_delay_fixed",             "1000"                  },
@@ -9269,6 +10117,10 @@ struct ConfigInfo image_config[] =
 
   { "viewport.window.width",                   "672"                   },
   { "viewport.window.height",                  "560"                   },
+  { "viewport.window.min_width",               "-1"                    },
+  { "viewport.window.min_height",              "-1"                    },
+  { "viewport.window.max_width",               "-1"                    },
+  { "viewport.window.max_height",              "-1"                    },
   { "viewport.window.TITLE.width",             ARG_DEFAULT             },
   { "viewport.window.TITLE.height",            ARG_DEFAULT             },
 
@@ -9276,79 +10128,174 @@ struct ConfigInfo image_config[] =
   { "viewport.playfield.y",                    "6"                     },
   { "viewport.playfield.width",                        "548"                   },
   { "viewport.playfield.height",               "548"                   },
+  { "viewport.playfield.min_width",            "-1"                    },
+  { "viewport.playfield.min_height",           "-1"                    },
+  { "viewport.playfield.max_width",            "-1"                    },
+  { "viewport.playfield.max_height",           "-1"                    },
+  { "viewport.playfield.margin_left",          "0"                     },
+  { "viewport.playfield.margin_right",         "0"                     },
+  { "viewport.playfield.margin_top",           "0"                     },
+  { "viewport.playfield.margin_bottom",                "0"                     },
+  { "viewport.playfield.border_left",          "-1"                    },
+  { "viewport.playfield.border_right",         "-1"                    },
+  { "viewport.playfield.border_top",           "-1"                    },
+  { "viewport.playfield.border_bottom",                "-1"                    },
   { "viewport.playfield.border_size",          "2"                     },
+  { "viewport.playfield.align_size",           "16"                    },
+  { "viewport.playfield.align",                        "left"                  },
+  { "viewport.playfield.valign",               "top"                   },
   { "viewport.playfield.MAIN.x",               ARG_DEFAULT             },
   { "viewport.playfield.MAIN.y",               ARG_DEFAULT             },
   { "viewport.playfield.MAIN.width",           ARG_DEFAULT             },
   { "viewport.playfield.MAIN.height",          ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.min_width",       ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.min_height",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.max_width",       ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.max_height",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.margin_left",     ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.margin_right",    ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.margin_top",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.margin_bottom",   ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.border_left",     ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.border_right",    ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.border_top",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.border_bottom",   ARG_DEFAULT             },
   { "viewport.playfield.MAIN.border_size",     ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.align_size",      ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.align",           ARG_DEFAULT             },
+  { "viewport.playfield.MAIN.valign",          ARG_DEFAULT             },
   { "viewport.playfield.SCORES.x",             ARG_DEFAULT             },
   { "viewport.playfield.SCORES.y",             ARG_DEFAULT             },
   { "viewport.playfield.SCORES.width",         ARG_DEFAULT             },
   { "viewport.playfield.SCORES.height",                ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.min_width",     ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.min_height",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.max_width",     ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.max_height",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.margin_left",   ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.margin_right",  ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.margin_top",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.margin_bottom", ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.border_left",   ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.border_right",  ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.border_top",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.border_bottom", ARG_DEFAULT             },
   { "viewport.playfield.SCORES.border_size",   ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.align_size",    ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.align",         ARG_DEFAULT             },
+  { "viewport.playfield.SCORES.valign",                ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.x",             ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.y",             ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.width",         ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.height",                ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.min_width",     ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.min_height",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.max_width",     ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.max_height",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.margin_left",   ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.margin_right",  ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.margin_top",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.margin_bottom", ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.border_left",   ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.border_right",  ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.border_top",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.border_bottom", ARG_DEFAULT             },
   { "viewport.playfield.EDITOR.border_size",   ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.align_size",    ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.align",         ARG_DEFAULT             },
+  { "viewport.playfield.EDITOR.valign",                ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.x",            ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.y",            ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.width",                ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.height",       ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.min_width",    ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.min_height",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.max_width",    ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.max_height",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.margin_left",  ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.margin_right", ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.margin_top",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.margin_bottom",        ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.border_left",  ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.border_right", ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.border_top",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.border_bottom",        ARG_DEFAULT             },
   { "viewport.playfield.PLAYING.border_size",  ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.align_size",   ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.align",                ARG_DEFAULT             },
+  { "viewport.playfield.PLAYING.valign",       ARG_DEFAULT             },
 
   { "viewport.door_1.x",                       "566"                   },
   { "viewport.door_1.y",                       "60"                    },
   { "viewport.door_1.width",                   "100"                   },
   { "viewport.door_1.height",                  "280"                   },
   { "viewport.door_1.border_size",             "4"                     },
+  { "viewport.door_1.align",                   "left"                  },
+  { "viewport.door_1.valign",                  "top"                   },
   { "viewport.door_1.MAIN.x",                  ARG_DEFAULT             },
   { "viewport.door_1.MAIN.y",                  ARG_DEFAULT             },
   { "viewport.door_1.MAIN.width",              ARG_DEFAULT             },
   { "viewport.door_1.MAIN.height",             ARG_DEFAULT             },
   { "viewport.door_1.MAIN.border_size",                ARG_DEFAULT             },
+  { "viewport.door_1.MAIN.align",              ARG_DEFAULT             },
+  { "viewport.door_1.MAIN.valign",             ARG_DEFAULT             },
   { "viewport.door_1.SCORES.x",                        ARG_DEFAULT             },
   { "viewport.door_1.SCORES.y",                        ARG_DEFAULT             },
   { "viewport.door_1.SCORES.width",            ARG_DEFAULT             },
   { "viewport.door_1.SCORES.height",           ARG_DEFAULT             },
   { "viewport.door_1.SCORES.border_size",      ARG_DEFAULT             },
+  { "viewport.door_1.SCORES.align",            ARG_DEFAULT             },
+  { "viewport.door_1.SCORES.valign",           ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.x",                        ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.y",                        ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.width",            ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.height",           ARG_DEFAULT             },
   { "viewport.door_1.EDITOR.border_size",      ARG_DEFAULT             },
+  { "viewport.door_1.EDITOR.align",            ARG_DEFAULT             },
+  { "viewport.door_1.EDITOR.valign",           ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.x",               ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.y",               ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.width",           ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.height",          ARG_DEFAULT             },
   { "viewport.door_1.PLAYING.border_size",     ARG_DEFAULT             },
+  { "viewport.door_1.PLAYING.align",           ARG_DEFAULT             },
+  { "viewport.door_1.PLAYING.valign",          ARG_DEFAULT             },
 
   { "viewport.door_2.x",                       "566"                   },
   { "viewport.door_2.y",                       "400"                   },
   { "viewport.door_2.width",                   "100"                   },
   { "viewport.door_2.height",                  "100"                   },
   { "viewport.door_2.border_size",             "4"                     },
+  { "viewport.door_2.align",                   "left"                  },
+  { "viewport.door_2.valign",                  "top"                   },
   { "viewport.door_2.MAIN.x",                  ARG_DEFAULT             },
   { "viewport.door_2.MAIN.y",                  ARG_DEFAULT             },
   { "viewport.door_2.MAIN.width",              ARG_DEFAULT             },
   { "viewport.door_2.MAIN.height",             ARG_DEFAULT             },
   { "viewport.door_2.MAIN.border_size",                ARG_DEFAULT             },
+  { "viewport.door_2.MAIN.align",              ARG_DEFAULT             },
+  { "viewport.door_2.MAIN.valign",             ARG_DEFAULT             },
   { "viewport.door_2.SCORES.x",                        ARG_DEFAULT             },
   { "viewport.door_2.SCORES.y",                        ARG_DEFAULT             },
   { "viewport.door_2.SCORES.width",            ARG_DEFAULT             },
   { "viewport.door_2.SCORES.height",           ARG_DEFAULT             },
   { "viewport.door_2.SCORES.border_size",      ARG_DEFAULT             },
+  { "viewport.door_2.SCORES.align",            ARG_DEFAULT             },
+  { "viewport.door_2.SCORES.valign",           ARG_DEFAULT             },
   { "viewport.door_2.EDITOR.x",                        "566"                   },
   { "viewport.door_2.EDITOR.y",                        "356"                   },
   { "viewport.door_2.EDITOR.width",            "100"                   },
   { "viewport.door_2.EDITOR.height",           "144"                   },
   { "viewport.door_2.EDITOR.border_size",      "4"                     },
+  { "viewport.door_2.EDITOR.align",            "left"                  },
+  { "viewport.door_2.EDITOR.valign",           "top"                   },
   { "viewport.door_2.PLAYING.x",               ARG_DEFAULT             },
   { "viewport.door_2.PLAYING.y",               ARG_DEFAULT             },
   { "viewport.door_2.PLAYING.width",           ARG_DEFAULT             },
   { "viewport.door_2.PLAYING.height",          ARG_DEFAULT             },
   { "viewport.door_2.PLAYING.border_size",     ARG_DEFAULT             },
+  { "viewport.door_2.PLAYING.align",           ARG_DEFAULT             },
+  { "viewport.door_2.PLAYING.valign",          ARG_DEFAULT             },
 
   { NULL,                                      NULL                    }
 };