added setup options to skip (un)covering and hatching for BD engine
[rocksndiamonds.git] / src / conf_gfx.c
index bfcc94fd35f0215c66347371a12dc87c7c301345..5e5e64b17c1199bb29b1197f6b10fedf39f17d05 100644 (file)
@@ -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    },
@@ -81,10 +82,15 @@ struct ConfigTypeInfo image_config_suffix[] =
   { ".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               }
 };
@@ -97,6 +103,9 @@ struct ConfigInfo image_config[] =
 
   // images for Boulder Dash style elements and actions
 
+  { "bd_player",                               UNDEFINED_FILENAME      },
+  { "bd_player.clone_from",                    "player_1"              },
+
   { "bd_wall",                                 "RocksDC.png"           },
   { "bd_wall.xpos",                            "12"                    },
   { "bd_wall.ypos",                            "9"                     },
@@ -153,6 +162,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"                    },
@@ -195,12 +209,16 @@ 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"                     },
 
+  { "bd_amoeba_2",                             UNDEFINED_FILENAME      },
+  { "bd_amoeba_2.clone_from",                  "bd_amoeba"             },
+  { "bd_amoeba_2.EDITOR",                      UNDEFINED_FILENAME      },
+  { "bd_amoeba_2.EDITOR.clone_from",           "bd_amoeba.EDITOR"      },
+
   { "bd_butterfly",                            "RocksElements.png"     },
   { "bd_butterfly.xpos",                       "4"                     },
   { "bd_butterfly.ypos",                       "12"                    },
@@ -249,6 +267,27 @@ struct ConfigInfo image_config[] =
   { "bd_butterfly.down.EDITOR.xpos",           "11"                    },
   { "bd_butterfly.down.EDITOR.ypos",           "12"                    },
 
+  { "bd_butterfly_2",                          UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.clone_from",               "bd_butterfly.up"       },
+  { "bd_butterfly_2.EDITOR",                   UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.EDITOR.clone_from",                "bd_butterfly.up.EDITOR" },
+  { "bd_butterfly_2.right",                    UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.right.clone_from",         "bd_butterfly.right"    },
+  { "bd_butterfly_2.right.EDITOR",             UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.right.EDITOR.clone_from",  "bd_butterfly.right.EDITOR" },
+  { "bd_butterfly_2.up",                       UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.up.clone_from",            "bd_butterfly.up"       },
+  { "bd_butterfly_2.up.EDITOR",                        UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.up.EDITOR.clone_from",     "bd_butterfly.up.EDITOR" },
+  { "bd_butterfly_2.left",                     UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.left.clone_from",          "bd_butterfly.left"     },
+  { "bd_butterfly_2.left.EDITOR",              UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.left.EDITOR.clone_from",   "bd_butterfly.left.EDITOR" },
+  { "bd_butterfly_2.down",                     UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.down.clone_from",          "bd_butterfly.down"     },
+  { "bd_butterfly_2.down.EDITOR",              UNDEFINED_FILENAME      },
+  { "bd_butterfly_2.down.EDITOR.clone_from",   "bd_butterfly.down.EDITOR" },
+
   { "bd_firefly",                              "RocksElements.png"     },
   { "bd_firefly.xpos",                         "6"                     },
   { "bd_firefly.ypos",                         "12"                    },
@@ -297,6 +336,648 @@ struct ConfigInfo image_config[] =
   { "bd_firefly.down.EDITOR.xpos",             "15"                    },
   { "bd_firefly.down.EDITOR.ypos",             "12"                    },
 
+  { "bd_firefly_2",                            UNDEFINED_FILENAME      },
+  { "bd_firefly_2.clone_from",                 "bd_firefly.up" },
+  { "bd_firefly_2.EDITOR",                     UNDEFINED_FILENAME      },
+  { "bd_firefly_2.EDITOR.clone_from",          "bd_firefly.up.EDITOR" },
+  { "bd_firefly_2.right",                      UNDEFINED_FILENAME      },
+  { "bd_firefly_2.right.clone_from",           "bd_firefly.right"      },
+  { "bd_firefly_2.right.EDITOR",               UNDEFINED_FILENAME      },
+  { "bd_firefly_2.right.EDITOR.clone_from",    "bd_firefly.right.EDITOR" },
+  { "bd_firefly_2.up",                         UNDEFINED_FILENAME      },
+  { "bd_firefly_2.up.clone_from",              "bd_firefly.up" },
+  { "bd_firefly_2.up.EDITOR",                  UNDEFINED_FILENAME      },
+  { "bd_firefly_2.up.EDITOR.clone_from",       "bd_firefly.up.EDITOR" },
+  { "bd_firefly_2.left",                       UNDEFINED_FILENAME      },
+  { "bd_firefly_2.left.clone_from",            "bd_firefly.left"       },
+  { "bd_firefly_2.left.EDITOR",                        UNDEFINED_FILENAME      },
+  { "bd_firefly_2.left.EDITOR.clone_from",     "bd_firefly.left.EDITOR" },
+  { "bd_firefly_2.down",                       UNDEFINED_FILENAME      },
+  { "bd_firefly_2.down.clone_from",            "bd_firefly.down"       },
+  { "bd_firefly_2.down.EDITOR",                        UNDEFINED_FILENAME      },
+  { "bd_firefly_2.down.EDITOR.clone_from",     "bd_firefly.down.EDITOR" },
+
+  { "bd_sand",                                 UNDEFINED_FILENAME      },
+  { "bd_sand.clone_from",                      "sand"                  },
+
+  { "bd_sand_2",                               UNDEFINED_FILENAME      },
+  { "bd_sand_2.clone_from",                    "emc_grass"             },
+
+  { "bd_sand_ball",                            "RocksBD.png"           },
+  { "bd_sand_ball.xpos",                       "1"                     },
+  { "bd_sand_ball.ypos",                       "36"                    },
+  { "bd_sand_ball.frames",                     "1"                     },
+  { "bd_sand_ball.scale_up_factor",            "2"                     },
+
+  { "bd_sand_loose",                           "RocksBD.png"           },
+  { "bd_sand_loose.xpos",                      "0"                     },
+  { "bd_sand_loose.ypos",                      "44"                    },
+  { "bd_sand_loose.frames",                    "1"                     },
+  { "bd_sand_loose.scale_up_factor",           "2"                     },
+
+  { "bd_sand_sloped_up_right",                 "RocksBD.png"           },
+  { "bd_sand_sloped_up_right.xpos",            "0"                     },
+  { "bd_sand_sloped_up_right.ypos",            "35"                    },
+  { "bd_sand_sloped_up_right.frames",          "1"                     },
+  { "bd_sand_sloped_up_right.scale_up_factor", "2"                     },
+  { "bd_sand_sloped_up_left",                  "RocksBD.png"           },
+  { "bd_sand_sloped_up_left.xpos",             "1"                     },
+  { "bd_sand_sloped_up_left.ypos",             "35"                    },
+  { "bd_sand_sloped_up_left.frames",           "1"                     },
+  { "bd_sand_sloped_up_left.scale_up_factor",  "2"                     },
+  { "bd_sand_sloped_down_left",                        "RocksBD.png"           },
+  { "bd_sand_sloped_down_left.xpos",           "2"                     },
+  { "bd_sand_sloped_down_left.ypos",           "35"                    },
+  { "bd_sand_sloped_down_left.frames",         "1"                     },
+  { "bd_sand_sloped_down_left.scale_up_factor","2"                     },
+  { "bd_sand_sloped_down_right",               "RocksBD.png"           },
+  { "bd_sand_sloped_down_right.xpos",          "3"                     },
+  { "bd_sand_sloped_down_right.ypos",          "35"                    },
+  { "bd_sand_sloped_down_right.frames",                "1"                     },
+  { "bd_sand_sloped_down_right.scale_up_factor","2"                    },
+
+  { "bd_sand_glued",                           UNDEFINED_FILENAME      },
+  { "bd_sand_glued.clone_from",                        "sand"                  },
+
+  { "bd_wall_sloped_up_right",                 "RocksBD.png"           },
+  { "bd_wall_sloped_up_right.xpos",            "4"                     },
+  { "bd_wall_sloped_up_right.ypos",            "34"                    },
+  { "bd_wall_sloped_up_right.frames",          "1"                     },
+  { "bd_wall_sloped_up_right.scale_up_factor", "2"                     },
+  { "bd_wall_sloped_up_left",                  "RocksBD.png"           },
+  { "bd_wall_sloped_up_left.xpos",             "5"                     },
+  { "bd_wall_sloped_up_left.ypos",             "34"                    },
+  { "bd_wall_sloped_up_left.frames",           "1"                     },
+  { "bd_wall_sloped_up_left.scale_up_factor",  "2"                     },
+  { "bd_wall_sloped_down_left",                        "RocksBD.png"           },
+  { "bd_wall_sloped_down_left.xpos",           "6"                     },
+  { "bd_wall_sloped_down_left.ypos",           "34"                    },
+  { "bd_wall_sloped_down_left.frames",         "1"                     },
+  { "bd_wall_sloped_down_left.scale_up_factor","2"                     },
+  { "bd_wall_sloped_down_right",               "RocksBD.png"           },
+  { "bd_wall_sloped_down_right.xpos",          "7"                     },
+  { "bd_wall_sloped_down_right.ypos",          "34"                    },
+  { "bd_wall_sloped_down_right.frames",                "1"                     },
+  { "bd_wall_sloped_down_right.scale_up_factor","2"                    },
+
+  { "bd_wall_non_sloped",                      UNDEFINED_FILENAME      },
+  { "bd_wall_non_sloped.clone_from",           "wall"                  },
+
+  { "bd_wall_diggable",                                UNDEFINED_FILENAME      },
+  { "bd_wall_diggable.clone_from",             "bd_wall"               },
+
+  { "bd_wall_diamond",                         UNDEFINED_FILENAME      },
+  { "bd_wall_diamond.clone_from",              "wall_bd_diamond"       },
+
+  { "bd_wall_key_1",                           UNDEFINED_FILENAME      },
+  { "bd_wall_key_1.clone_from",                        "bd_wall"               },
+
+  { "bd_wall_key_2",                           UNDEFINED_FILENAME      },
+  { "bd_wall_key_2.clone_from",                        "bd_wall"               },
+
+  { "bd_wall_key_3",                           UNDEFINED_FILENAME      },
+  { "bd_wall_key_4.clone_from",                        "bd_wall"               },
+
+  { "bd_falling_wall",                         UNDEFINED_FILENAME      },
+  { "bd_falling_wall.clone_from",              "bd_wall"               },
+
+  { "bd_steelwall",                            UNDEFINED_FILENAME      },
+  { "bd_steelwall.clone_from",                 "steelwall"             },
+
+  { "bd_steelwall_sloped_up_right",            "RocksBD.png"           },
+  { "bd_steelwall_sloped_up_right.xpos",       "4"                     },
+  { "bd_steelwall_sloped_up_right.ypos",       "35"                    },
+  { "bd_steelwall_sloped_up_right.frames",     "1"                     },
+  { "bd_steelwall_sloped_up_right.scale_up_factor", "2"                        },
+  { "bd_steelwall_sloped_up_left",             "RocksBD.png"           },
+  { "bd_steelwall_sloped_up_left.xpos",                "5"                     },
+  { "bd_steelwall_sloped_up_left.ypos",                "35"                    },
+  { "bd_steelwall_sloped_up_left.frames",      "1"                     },
+  { "bd_steelwall_sloped_up_left.scale_up_factor", "2"                 },
+  { "bd_steelwall_sloped_down_left",           "RocksBD.png"           },
+  { "bd_steelwall_sloped_down_left.xpos",      "6"                     },
+  { "bd_steelwall_sloped_down_left.ypos",      "35"                    },
+  { "bd_steelwall_sloped_down_left.frames",    "1"                     },
+  { "bd_steelwall_sloped_down_left.scale_up_factor", "2"               },
+  { "bd_steelwall_sloped_down_right",          "RocksBD.png"           },
+  { "bd_steelwall_sloped_down_right.xpos",     "7"                     },
+  { "bd_steelwall_sloped_down_right.ypos",     "35"                    },
+  { "bd_steelwall_sloped_down_right.frames",   "1"                     },
+  { "bd_steelwall_sloped_down_right.scale_up_factor", "2"              },
+
+  { "bd_steelwall_explodable",                 UNDEFINED_FILENAME      },
+  { "bd_steelwall_explodable.clone_from",      "bd_steelwall"          },
+
+  { "bd_steelwall_diggable",                   UNDEFINED_FILENAME      },
+  { "bd_steelwall_diggable.clone_from",                "bd_steelwall"          },
+
+  { "bd_expandable_wall_horizontal",           UNDEFINED_FILENAME      },
+  { "bd_expandable_wall_horizontal.clone_from", "expandable_wall_horizontal" },
+  { "bd_expandable_wall_horizontal.EDITOR",    UNDEFINED_FILENAME      },
+  { "bd_expandable_wall_horizontal.EDITOR.clone_from", "expandable_wall_horizontal.EDITOR" },
+
+  { "bd_expandable_wall_vertical",             UNDEFINED_FILENAME      },
+  { "bd_expandable_wall_vertical.clone_from", "expandable_wall_vertical" },
+  { "bd_expandable_wall_vertical.EDITOR",      UNDEFINED_FILENAME      },
+  { "bd_expandable_wall_vertical.EDITOR.clone_from", "expandable_wall_vertical.EDITOR" },
+
+  { "bd_expandable_wall_any",                  UNDEFINED_FILENAME      },
+  { "bd_expandable_wall_any.clone_from",       "expandable_wall_any"   },
+  { "bd_expandable_wall_any.EDITOR",           UNDEFINED_FILENAME      },
+  { "bd_expandable_wall_any.EDITOR.clone_from", "expandable_wall_any.EDITOR"   },
+
+  { "bd_expandable_steelwall_horizontal",      UNDEFINED_FILENAME      },
+  { "bd_expandable_steelwall_horizontal.clone_from", "expandable_steelwall_horizontal" },
+  { "bd_expandable_steelwall_horizontal.EDITOR", UNDEFINED_FILENAME    },
+  { "bd_expandable_steelwall_horizontal.EDITOR.clone_from", "expandable_steelwall_horizontal.EDITOR" },
+
+  { "bd_expandable_steelwall_vertical",                UNDEFINED_FILENAME      },
+  { "bd_expandable_steelwall_vertical.clone_from", "expandable_steelwall_vertical" },
+  { "bd_expandable_steelwall_vertical.EDITOR", UNDEFINED_FILENAME      },
+  { "bd_expandable_steelwall_vertical.EDITOR.clone_from", "expandable_steelwall_vertical.EDITOR" },
+
+  { "bd_expandable_steelwall_any",             UNDEFINED_FILENAME      },
+  { "bd_expandable_steelwall_any.clone_from",  "expandable_steelwall_any" },
+  { "bd_expandable_steelwall_any.EDITOR",      UNDEFINED_FILENAME      },
+  { "bd_expandable_steelwall_any.EDITOR.clone_from", "expandable_steelwall_any.EDITOR" },
+
+  { "bd_expandable_wall_switch_horizontal",    "RocksBD.png"           },
+  { "bd_expandable_wall_switch_horizontal.xpos", "0"                   },
+  { "bd_expandable_wall_switch_horizontal.ypos", "5"                   },
+  { "bd_expandable_wall_switch_horizontal.frames", "1"                 },
+  { "bd_expandable_wall_switch_horizontal.scale_up_factor", "2"                },
+
+  { "bd_expandable_wall_switch_vertical",      "RocksBD.png"           },
+  { "bd_expandable_wall_switch_vertical.xpos", "1"                     },
+  { "bd_expandable_wall_switch_vertical.ypos", "5"                     },
+  { "bd_expandable_wall_switch_vertical.frames", "1"                   },
+  { "bd_expandable_wall_switch_vertical.scale_up_factor", "2"          },
+
+  { "bd_inbox",                                        "RocksBD.png"           },
+  { "bd_inbox.xpos",                           "6"                     },
+  { "bd_inbox.ypos",                           "2"                     },
+  { "bd_inbox.frames",                         "1"                     },
+  { "bd_inbox.scale_up_factor",                        "2"                     },
+  { "bd_inbox.opening",                                "RocksBD.png"           },
+  { "bd_inbox.opening.xpos",                   "6"                     },
+  { "bd_inbox.opening.ypos",                   "2"                     },
+  { "bd_inbox.opening.frames",                 "2"                     },
+  { "bd_inbox.opening.delay",                  "8"                     },
+  { "bd_inbox.opening.scale_up_factor",                "2"                     },
+  { "bd_inbox.EDITOR",                         "RocksBD.png"           },
+  { "bd_inbox.EDITOR.xpos",                    "3"                     },
+  { "bd_inbox.EDITOR.ypos",                    "4"                     },
+  { "bd_inbox.EDITOR.scale_up_factor",         "2"                     },
+
+  { "bd_exit_closed",                          UNDEFINED_FILENAME      },
+  { "bd_exit_closed.clone_from",               "exit_closed"           },
+
+  { "bd_exit_open",                            UNDEFINED_FILENAME      },
+  { "bd_exit_openm.clone_from",                        "exit_open"             },
+
+  { "bd_invisible_exit_closed",                        UNDEFINED_FILENAME      },
+  { "bd_invisible_exit_closed.clone_from",     "invisible_wall"        },
+  { "bd_invisible_exit_closed.EDITOR",         UNDEFINED_FILENAME      },
+  { "bd_invisible_exit_closed.EDITOR.clone_from", "bd_exit_closed"     },
+
+  { "bd_invisible_exit_open",                  UNDEFINED_FILENAME      },
+  { "bd_invisible_exit_open.clone_from",       "invisible_wall"        },
+  { "bd_invisible_exit_open.EDITOR",           UNDEFINED_FILENAME      },
+  { "bd_invisible_exit_open.EDITOR.clone_from", "bd_exit_open"         },
+
+  { "bd_flying_rock",                          UNDEFINED_FILENAME      },
+  { "bd_flying_rock.clone_from",               "bd_rock"               },
+
+  { "bd_mega_rock",                            UNDEFINED_FILENAME      },
+  { "bd_mega_rock.clone_from",                 "bd_rock"               },
+
+  { "bd_rock_glued",                           UNDEFINED_FILENAME      },
+  { "bd_rock_glued.clone_from",                        "bd_rock"               },
+
+  { "bd_flying_diamond",                       UNDEFINED_FILENAME      },
+  { "bd_flying_diamond.clone_from",            "bd_diamond"            },
+
+  { "bd_diamond_glued",                                UNDEFINED_FILENAME      },
+  { "bd_diamond_glued.clone_from",             "bd_diamond"            },
+
+  { "bd_diamond_key",                          "RocksBD.png"           },
+  { "bd_diamond_key.xpos",                     "3"                     },
+  { "bd_diamond_key.ypos",                     "1"                     },
+  { "bd_diamond_key.frames",                   "1"                     },
+  { "bd_diamond_key.scale_up_factor",          "2"                     },
+
+  { "bd_trapped_diamond",                      "RocksBD.png"           },
+  { "bd_trapped_diamond.xpos",                 "2"                     },
+  { "bd_trapped_diamond.ypos",                 "1"                     },
+  { "bd_trapped_diamond.frames",               "1"                     },
+  { "bd_trapped_diamond.scale_up_factor",      "2"                     },
+
+  { "bd_nut",                                  UNDEFINED_FILENAME      },
+  { "bd_nut.clone_from",                       "nut"                   },
+
+  { "bd_bladder",                              "RocksBD.png"           },
+  { "bd_bladder.xpos",                         "0"                     },
+  { "bd_bladder.ypos",                         "22"                    },
+  { "bd_bladder.frames",                       "1"                     },
+  { "bd_bladder.scale_up_factor",              "2"                     },
+
+  { "bd_bladder_spender",                      "RocksBD.png"           },
+  { "bd_bladder_spender.xpos",                 "6"                     },
+  { "bd_bladder_spender.ypos",                 "0"                     },
+  { "bd_bladder_spender.frames",               "1"                     },
+  { "bd_bladder_spender.scale_up_factor",      "2"                     },
+
+  { "bd_creature_switch",                      "RocksBD.png"           },
+  { "bd_creature_switch.xpos",                 "2"                     },
+  { "bd_creature_switch.ypos",                 "2"                     },
+  { "bd_creature_switch.frames",               "1"                     },
+  { "bd_creature_switch.scale_up_factor",      "2"                     },
+  { "bd_creature_switch.active",               "RocksBD.png"           },
+  { "bd_creature_switch.active.xpos",          "3"                     },
+  { "bd_creature_switch.active.ypos",          "2"                     },
+  { "bd_creature_switch.active.frames",                "1"                     },
+  { "bd_creature_switch.active.scale_up_factor", "2"                   },
+
+  { "bd_biter_switch_1",                       "RocksBD.png"           },
+  { "bd_biter_switch_1.xpos",                  "4"                     },
+  { "bd_biter_switch_1.ypos",                  "1"                     },
+  { "bd_biter_switch_1.frames",                        "1"                     },
+  { "bd_biter_switch_1.scale_up_factor",       "2"                     },
+
+  { "bd_biter_switch_2",                       "RocksBD.png"           },
+  { "bd_biter_switch_2.xpos",                  "4"                     },
+  { "bd_biter_switch_2.ypos",                  "1"                     },
+  { "bd_biter_switch_2.frames",                        "1"                     },
+  { "bd_biter_switch_2.scale_up_factor",       "2"                     },
+
+  { "bd_biter_switch_3",                       "RocksBD.png"           },
+  { "bd_biter_switch_3.xpos",                  "4"                     },
+  { "bd_biter_switch_3.ypos",                  "1"                     },
+  { "bd_biter_switch_3.frames",                        "1"                     },
+  { "bd_biter_switch_3.scale_up_factor",       "2"                     },
+
+  { "bd_biter_switch_4",                       "RocksBD.png"           },
+  { "bd_biter_switch_4.xpos",                  "4"                     },
+  { "bd_biter_switch_4.ypos",                  "1"                     },
+  { "bd_biter_switch_4.frames",                        "1"                     },
+  { "bd_biter_switch_4.scale_up_factor",       "2"                     },
+
+  { "bd_replicator",                           "RocksBD.png"           },
+  { "bd_replicator.xpos",                      "0"                     },
+  { "bd_replicator.ypos",                      "38"                    },
+  { "bd_replicator.frames",                    "1"                     },
+  { "bd_replicator.scale_up_factor",           "2"                     },
+  { "bd_replicator.active",                    "RocksBD.png"           },
+  { "bd_replicator.active.xpos",               "0"                     },
+  { "bd_replicator.active.ypos",               "38"                    },
+  { "bd_replicator.active.frames",             "8"                     },
+  { "bd_replicator.active.delay",              "2"                     },
+  { "bd_replicator.active.scale_up_factor",    "2"                     },
+
+  { "bd_replicator_switch",                    "RocksBD.png"           },
+  { "bd_replicator_switch.xpos",               "3"                     },
+  { "bd_replicator_switch.ypos",               "36"                    },
+  { "bd_replicator_switch.frames",             "1"                     },
+  { "bd_replicator_switch.scale_up_factor",    "2"                     },
+  { "bd_replicator_switch.active",             "RocksBD.png"           },
+  { "bd_replicator_switch.active.xpos",                "2"                     },
+  { "bd_replicator_switch.active.ypos",                "36"                    },
+  { "bd_replicator_switch.active.frames",      "1"                     },
+  { "bd_replicator_switch.active.scale_up_factor", "2"                 },
+
+  { "bd_conveyor_left",                                "RocksBD.png"           },
+  { "bd_conveyor_left.xpos",                   "0"                     },
+  { "bd_conveyor_left.ypos",                   "41"                    },
+  { "bd_conveyor_left.frames",                 "1"                     },
+  { "bd_conveyor_left.scale_up_factor",                "2"                     },
+  { "bd_conveyor_left.active",                 "RocksBD.png"           },
+  { "bd_conveyor_left.active.xpos",            "0"                     },
+  { "bd_conveyor_left.active.ypos",            "41"                    },
+  { "bd_conveyor_left.active.frames",          "8"                     },
+  { "bd_conveyor_left.active.delay",           "2"                     },
+  { "bd_conveyor_left.active.scale_up_factor", "2"                     },
+
+  { "bd_conveyor_right",                       "RocksBD.png"           },
+  { "bd_conveyor_right.xpos",                  "0"                     },
+  { "bd_conveyor_right.ypos",                  "40"                    },
+  { "bd_conveyor_right.frames",                        "1"                     },
+  { "bd_conveyor_right.scale_up_factor",       "2"                     },
+  { "bd_conveyor_right.active",                        "RocksBD.png"           },
+  { "bd_conveyor_right.active.xpos",           "0"                     },
+  { "bd_conveyor_right.active.ypos",           "40"                    },
+  { "bd_conveyor_right.active.frames",         "8"                     },
+  { "bd_conveyor_right.active.delay",          "2"                     },
+  { "bd_conveyor_right.active.scale_up_factor", "2"                    },
+
+  { "bd_conveyor_switch",                      "RocksBD.png"           },
+  { "bd_conveyor_switch.xpos",                 "3"                     },
+  { "bd_conveyor_switch.ypos",                 "44"                    },
+  { "bd_conveyor_switch.frames",               "1"                     },
+  { "bd_conveyor_switch.scale_up_factor",      "2"                     },
+  { "bd_conveyor_switch.active",               "RocksBD.png"           },
+  { "bd_conveyor_switch.active.xpos",          "4"                     },
+  { "bd_conveyor_switch.active.ypos",          "44"                    },
+  { "bd_conveyor_switch.active.frames",                "1"                     },
+  { "bd_conveyor_switch.active.scale_up_factor", "2"                   },
+
+  { "bd_conveyor_dir_switch_left",             "RocksBD.png"           },
+  { "bd_conveyor_dir_switch_left.xpos",                "2"                     },
+  { "bd_conveyor_dir_switch_left.ypos",                "44"                    },
+  { "bd_conveyor_dir_switch_left.frames",      "1"                     },
+  { "bd_conveyor_dir_switch_left.scale_up_factor", "2"                 },
+
+  { "bd_conveyor_dir_switch_right",            "RocksBD.png"           },
+  { "bd_conveyor_dir_switch_right.xpos",       "1"                     },
+  { "bd_conveyor_dir_switch_right.ypos",       "44"                    },
+  { "bd_conveyor_dir_switch_right.frames",     "1"                     },
+  { "bd_conveyor_dir_switch_right.scale_up_factor", "2"                        },
+
+  { "bd_gravity_switch",                       "RocksBD.png"           },
+  { "bd_gravity_switch.xpos",                  "2"                     },
+  { "bd_gravity_switch.ypos",                  "34"                    },
+  { "bd_gravity_switch.frames",                        "1"                     },
+  { "bd_gravity_switch.scale_up_factor",       "2"                     },
+  { "bd_gravity_switch.active",                        "RocksBD.png"           },
+  { "bd_gravity_switch.active.xpos",           "3"                     },
+  { "bd_gravity_switch.active.ypos",           "34"                    },
+  { "bd_gravity_switch.active.frames",         "1"                     },
+  { "bd_gravity_switch.active.scale_up_factor","2"                     },
+
+  { "bd_acid",                                 "RocksBD.png"           },
+  { "bd_acid.xpos",                            "4"                     },
+  { "bd_acid.ypos",                            "2"                     },
+  { "bd_acid.frames",                          "1"                     },
+  { "bd_acid.scale_up_factor",                 "2"                     },
+
+  { "bd_box",                                  "RocksBD.png"           },
+  { "bd_box.xpos",                             "5"                     },
+  { "bd_box.ypos",                             "2"                     },
+  { "bd_box.frames",                           "1"                     },
+  { "bd_box.scale_up_factor",                  "2"                     },
+
+  { "bd_time_penalty",                         "RocksBD.png"           },
+  { "bd_time_penalty.xpos",                    "1"                     },
+  { "bd_time_penalty.ypos",                    "1"                     },
+  { "bd_time_penalty.frames",                  "1"                     },
+  { "bd_time_penalty.scale_up_factor",         "2"                     },
+
+  { "bd_gravestone",                           "RocksBD.png"           },
+  { "bd_gravestone.xpos",                      "1"                     },
+  { "bd_gravestone.ypos",                      "1"                     },
+  { "bd_gravestone.frames",                    "1"                     },
+  { "bd_gravestone.scale_up_factor",           "2"                     },
+
+  { "bd_clock",                                        "RocksBD.png"           },
+  { "bd_clock.xpos",                           "0"                     },
+  { "bd_clock.ypos",                           "2"                     },
+  { "bd_clock.frames",                         "1"                     },
+  { "bd_clock.scale_up_factor",                        "2"                     },
+
+  { "bd_pot",                                  "RocksBD.png"           },
+  { "bd_pot.xpos",                             "7"                     },
+  { "bd_pot.ypos",                             "7"                     },
+  { "bd_pot.frames",                           "1"                     },
+  { "bd_pot.scale_up_factor",                  "2"                     },
+
+  { "bd_pneumatic_hammer",                     "RocksBD.png"           },
+  { "bd_pneumatic_hammer.xpos",                        "6"                     },
+  { "bd_pneumatic_hammer.ypos",                        "7"                     },
+  { "bd_pneumatic_hammer.frames",              "1"                     },
+  { "bd_pneumatic_hammer.scale_up_factor",     "2"                     },
+
+  { "bd_teleporter",                           "RocksBD.png"           },
+  { "bd_teleporter.xpos",                      "5"                     },
+  { "bd_teleporter.ypos",                      "7"                     },
+  { "bd_teleporter.frames",                    "1"                     },
+  { "bd_teleporter.scale_up_factor",           "2"                     },
+
+  { "bd_skeleton",                             "RocksBD.png"           },
+  { "bd_skeleton.xpos",                                "1"                     },
+  { "bd_skeleton.ypos",                                "34"                    },
+  { "bd_skeleton.frames",                      "1"                     },
+  { "bd_skeleton.scale_up_factor",             "2"                     },
+
+  { "bd_water",                                        "RocksBD.png"           },
+  { "bd_water.xpos",                           "0"                     },
+  { "bd_water.ypos",                           "12"                    },
+  { "bd_water.frames",                         "1"                     },
+  { "bd_water.scale_up_factor",                        "2"                     },
+
+  { "bd_key_1",                                        "RocksBD.png"           },
+  { "bd_key_1.xpos",                           "3"                     },
+  { "bd_key_1.ypos",                           "8"                     },
+  { "bd_key_1.frames",                         "1"                     },
+  { "bd_key_1.scale_up_factor",                        "2"                     },
+
+  { "bd_key_2",                                        "RocksBD.png"           },
+  { "bd_key_2.xpos",                           "4"                     },
+  { "bd_key_2.ypos",                           "8"                     },
+  { "bd_key_2.frames",                         "1"                     },
+  { "bd_key_2.scale_up_factor",                        "2"                     },
+
+  { "bd_key_3",                                        "RocksBD.png"           },
+  { "bd_key_3.xpos",                           "5"                     },
+  { "bd_key_3.ypos",                           "8"                     },
+  { "bd_key_3.frames",                         "1"                     },
+  { "bd_key_3.scale_up_factor",                        "2"                     },
+
+  { "bd_gate_1",                               "RocksBD.png"           },
+  { "bd_gate_1.xpos",                          "0"                     },
+  { "bd_gate_1.ypos",                          "8"                     },
+  { "bd_gate_1.frames",                                "1"                     },
+  { "bd_gate_1.scale_up_factor",               "2"                     },
+
+  { "bd_gate_2",                               "RocksBD.png"           },
+  { "bd_gate_2.xpos",                          "1"                     },
+  { "bd_gate_2.ypos",                          "8"                     },
+  { "bd_gate_2.frames",                                "1"                     },
+  { "bd_gate_2.scale_up_factor",               "2"                     },
+
+  { "bd_gate_3",                               "RocksBD.png"           },
+  { "bd_gate_3.xpos",                          "2"                     },
+  { "bd_gate_3.ypos",                          "8"                     },
+  { "bd_gate_3.frames",                                "1"                     },
+  { "bd_gate_3.scale_up_factor",               "2"                     },
+
+  { "bd_lava",                                 "RocksBD.png"           },
+  { "bd_lava.xpos",                            "0"                     },
+  { "bd_lava.ypos",                            "39"                    },
+  { "bd_lava.frames",                          "1"                     },
+  { "bd_lava.scale_up_factor",                 "2"                     },
+
+  { "bd_sweet",                                        "RocksBD.png"           },
+  { "bd_sweet.xpos",                           "0"                     },
+  { "bd_sweet.ypos",                           "1"                     },
+  { "bd_sweet.frames",                         "1"                     },
+  { "bd_sweet.scale_up_factor",                        "2"                     },
+
+  { "bd_voodoo_doll",                          "RocksBD.png"           },
+  { "bd_voodoo_doll.xpos",                     "7"                     },
+  { "bd_voodoo_doll.ypos",                     "0"                     },
+  { "bd_voodoo_doll.frames",                   "1"                     },
+  { "bd_voodoo_doll.scale_up_factor",          "2"                     },
+
+  { "bd_slime",                                        "RocksBD.png"           },
+  { "bd_slime.xpos",                           "0"                     },
+  { "bd_slime.ypos",                           "25"                    },
+  { "bd_slime.frames",                         "1"                     },
+  { "bd_slime.scale_up_factor",                        "2"                     },
+
+  { "bd_waiting_rock",                         UNDEFINED_FILENAME      },
+  { "bd_waiting_rock.clone_from",              "bd_rock"               },
+
+  { "bd_chasing_rock",                         UNDEFINED_FILENAME      },
+  { "bd_chasing_rock.clone_from",              "bd_rock"               },
+
+  { "bd_ghost",                                        "RocksBD.png"           },
+  { "bd_ghost.xpos",                           "0"                     },
+  { "bd_ghost.ypos",                           "20"                    },
+  { "bd_ghost.frames",                         "1"                     },
+  { "bd_ghost.scale_up_factor",                        "2"                     },
+
+  { "bd_cow",                                  "RocksBD.png"           },
+  { "bd_cow.xpos",                             "0"                     },
+  { "bd_cow.ypos",                             "11"                    },
+  { "bd_cow.frames",                           "1"                     },
+  { "bd_cow.scale_up_factor",                  "2"                     },
+  { "bd_cow.left",                             "RocksBD.png"           },
+  { "bd_cow.left.xpos",                                "0"                     },
+  { "bd_cow.left.ypos",                                "11"                    },
+  { "bd_cow.left.frames",                      "1"                     },
+  { "bd_cow.left.scale_up_factor",             "2"                     },
+  { "bd_cow.up",                               "RocksBD.png"           },
+  { "bd_cow.up.xpos",                          "0"                     },
+  { "bd_cow.up.ypos",                          "11"                    },
+  { "bd_cow.up.frames",                                "1"                     },
+  { "bd_cow.up.scale_up_factor",               "2"                     },
+  { "bd_cow.right",                            "RocksBD.png"           },
+  { "bd_cow.right.xpos",                       "0"                     },
+  { "bd_cow.right.ypos",                       "11"                    },
+  { "bd_cow.right.frames",                     "1"                     },
+  { "bd_cow.right.scale_up_factor",            "2"                     },
+  { "bd_cow.down",                             "RocksBD.png"           },
+  { "bd_cow.down.xpos",                                "0"                     },
+  { "bd_cow.down.ypos",                                "11"                    },
+  { "bd_cow.down.frames",                      "1"                     },
+  { "bd_cow.down.scale_up_factor",             "2"                     },
+
+  { "bd_stonefly",                             "RocksBD.png"           },
+  { "bd_stonefly.xpos",                                "0"                     },
+  { "bd_stonefly.ypos",                                "19"                    },
+  { "bd_stonefly.frames",                      "1"                     },
+  { "bd_stonefly.scale_up_factor",             "2"                     },
+  { "bd_stonefly.right",                       "RocksBD.png"           },
+  { "bd_stonefly.right.xpos",                  "0"                     },
+  { "bd_stonefly.right.ypos",                  "19"                    },
+  { "bd_stonefly.right.frames",                        "1"                     },
+  { "bd_stonefly.right.scale_up_factor",       "2"                     },
+  { "bd_stonefly.up",                          "RocksBD.png"           },
+  { "bd_stonefly.up.xpos",                     "0"                     },
+  { "bd_stonefly.up.ypos",                     "19"                    },
+  { "bd_stonefly.up.frames",                   "1"                     },
+  { "bd_stonefly.up.scale_up_factor",          "2"                     },
+  { "bd_stonefly.left",                                "RocksBD.png"           },
+  { "bd_stonefly.left.xpos",                   "0"                     },
+  { "bd_stonefly.left.ypos",                   "19"                    },
+  { "bd_stonefly.left.frames",                 "1"                     },
+  { "bd_stonefly.left.scale_up_factor",                "2"                     },
+  { "bd_stonefly.down",                                "RocksBD.png"           },
+  { "bd_stonefly.down.xpos",                   "0"                     },
+  { "bd_stonefly.down.ypos",                   "19"                    },
+  { "bd_stonefly.down.frames",                 "1"                     },
+  { "bd_stonefly.down.scale_up_factor",                "2"                     },
+
+  { "bd_biter",                                        "RocksBD.png"           },
+  { "bd_biter.xpos",                           "0"                     },
+  { "bd_biter.ypos",                           "21"                    },
+  { "bd_biter.frames",                         "1"                     },
+  { "bd_biter.scale_up_factor",                        "2"                     },
+  { "bd_biter.right",                          "RocksBD.png"           },
+  { "bd_biter.right.xpos",                     "0"                     },
+  { "bd_biter.right.ypos",                     "21"                    },
+  { "bd_biter.right.frames",                   "1"                     },
+  { "bd_biter.right.scale_up_factor",          "2"                     },
+  { "bd_biter.up",                             "RocksBD.png"           },
+  { "bd_biter.up.xpos",                                "0"                     },
+  { "bd_biter.up.ypos",                                "21"                    },
+  { "bd_biter.up.frames",                      "1"                     },
+  { "bd_biter.up.scale_up_factor",             "2"                     },
+  { "bd_biter.left",                           "RocksBD.png"           },
+  { "bd_biter.left.xpos",                      "0"                     },
+  { "bd_biter.left.ypos",                      "21"                    },
+  { "bd_biter.left.frames",                    "1"                     },
+  { "bd_biter.left.scale_up_factor",           "2"                     },
+  { "bd_biter.down",                           "RocksBD.png"           },
+  { "bd_biter.down.xpos",                      "0"                     },
+  { "bd_biter.down.ypos",                      "21"                    },
+  { "bd_biter.down.frames",                    "1"                     },
+  { "bd_biter.down.scale_up_factor",           "2"                     },
+
+  { "bd_dragonfly",                            "RocksBD.png"           },
+  { "bd_dragonfly.xpos",                       "0"                     },
+  { "bd_dragonfly.ypos",                       "42"                    },
+  { "bd_dragonfly.frames",                     "1"                     },
+  { "bd_dragonfly.scale_up_factor",            "2"                     },
+  { "bd_dragonfly.right",                      "RocksBD.png"           },
+  { "bd_dragonfly.right.xpos",                 "0"                     },
+  { "bd_dragonfly.right.ypos",                 "42"                    },
+  { "bd_dragonfly.right.frames",               "1"                     },
+  { "bd_dragonfly.right.scale_up_factor",      "2"                     },
+  { "bd_dragonfly.up",                         "RocksBD.png"           },
+  { "bd_dragonfly.up.xpos",                    "0"                     },
+  { "bd_dragonfly.up.ypos",                    "42"                    },
+  { "bd_dragonfly.up.frames",                  "1"                     },
+  { "bd_dragonfly.up.scale_up_factor",         "2"                     },
+  { "bd_dragonfly.left",                       "RocksBD.png"           },
+  { "bd_dragonfly.left.xpos",                  "0"                     },
+  { "bd_dragonfly.left.ypos",                  "42"                    },
+  { "bd_dragonfly.left.frames",                        "1"                     },
+  { "bd_dragonfly.left.scale_up_factor",       "2"                     },
+  { "bd_dragonfly.down",                       "RocksBD.png"           },
+  { "bd_dragonfly.down.xpos",                  "0"                     },
+  { "bd_dragonfly.down.ypos",                  "42"                    },
+  { "bd_dragonfly.down.frames",                        "1"                     },
+  { "bd_dragonfly.down.scale_up_factor",       "2"                     },
+
+  { "bd_bomb",                                 "RocksBD.png"           },
+  { "bd_bomb.xpos",                            "0"                     },
+  { "bd_bomb.ypos",                            "6"                     },
+  { "bd_bomb.frames",                          "1"                     },
+  { "bd_bomb.scale_up_factor",                 "2"                     },
+
+  { "bd_nitro_pack",                           "RocksBD.png"           },
+  { "bd_nitro_pack.xpos",                      "0"                     },
+  { "bd_nitro_pack.ypos",                      "36"                    },
+  { "bd_nitro_pack.frames",                    "1"                     },
+  { "bd_nitro_pack.scale_up_factor",           "2"                     },
+
+  { "bd_player_with_bomb",                     "RocksBD.png"           },
+  { "bd_player_with_bomb.xpos",                        "3"                     },
+  { "bd_player_with_bomb.ypos",                        "4"                     },
+  { "bd_player_with_bomb.frames",              "1"                     },
+  { "bd_player_with_bomb.scale_up_factor",     "2"                     },
+
+  { "bd_player_glued",                         UNDEFINED_FILENAME      },
+  { "bd_player_glued.clone_from",              "bd_player"             },
+
+  { "bd_player_stirring",                      "RocksBD.png"           },
+  { "bd_player_stirring.xpos",                 "3"                     },
+  { "bd_player_stirring.ypos",                 "4"                     },
+  { "bd_player_stirring.frames",               "1"                     },
+  { "bd_player_stirring.scale_up_factor",      "2"                     },
+
+  { "bd_fake_bonus",                           "RocksBD.png"           },
+  { "bd_fake_bonus.xpos",                      "0"                     },
+  { "bd_fake_bonus.ypos",                      "15"                    },
+  { "bd_fake_bonus.frames",                    "1"                     },
+  { "bd_fake_bonus.scale_up_factor",           "2"                     },
+
+  { "bd_covered",                              "RocksBD.png"           },
+  { "bd_covered.xpos",                         "4"                     },
+  { "bd_covered.ypos",                         "0"                     },
+  { "bd_covered.frames",                       "1"                     },
+  { "bd_covered.scale_up_factor",              "2"                     },
+
   // images for Supaplex style elements and actions
 
   { "[sp_default].exploding",                  "RocksSP.png"           },
@@ -979,11 +1660,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 +1680,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"     },
@@ -1033,6 +1712,11 @@ struct ConfigInfo image_config[] =
   { "dynamite.active.frames",                  "7"                     },
   { "dynamite.active.delay",                   "12"                    },
   { "dynamite.active.anim_mode",               "linear"                },
+  { "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"                     },
@@ -1047,6 +1731,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"                     },
@@ -1482,8 +2171,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"                     },
@@ -1491,20 +2179,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"                     },
@@ -1512,8 +2197,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"                     },
@@ -1522,23 +2206,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"                     },
@@ -2118,41 +2827,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"           },
@@ -2277,6 +2982,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"                     },
@@ -2289,6 +2999,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"                     },
@@ -2301,6 +3016,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"                     },
@@ -2352,11 +3072,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"                    },
@@ -2540,18 +3270,38 @@ struct ConfigInfo image_config[] =
   { "key_1.xpos",                              "4"                     },
   { "key_1.ypos",                              "1"                     },
   { "key_1.frames",                            "1"                     },
+  { "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.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.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.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"                     },
@@ -2701,6 +3451,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"                     },
@@ -2715,6 +3470,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"                     },
@@ -2729,6 +3489,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"                     },
@@ -2862,6 +3627,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"                     },
@@ -2923,14 +3693,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"                     },
@@ -4002,18 +4787,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"                     },
@@ -4235,11 +5040,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"                    },
@@ -4898,20 +5713,26 @@ struct ConfigInfo image_config[] =
   { "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"                     },
@@ -4931,11 +5752,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"                     },
@@ -4965,8 +5798,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"                     },
@@ -4984,6 +5816,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"                    },
@@ -5063,53 +5905,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"                },
@@ -5637,6 +6452,94 @@ struct ConfigInfo image_config[] =
   { "df_mine.xpos",                            "4"                     },
   { "df_mine.ypos",                            "8"                     },
   { "df_mine.frames",                          "1"                     },
+  { "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      },
@@ -5651,6 +6554,7 @@ struct ConfigInfo image_config[] =
 #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
 
 
   // ==========================================================================
@@ -5999,6 +6903,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      },
@@ -6044,6 +6969,13 @@ struct ConfigInfo image_config[] =
   { "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      },
 
@@ -6159,6 +7091,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"                   },
@@ -6184,6 +7123,7 @@ struct ConfigInfo image_config[] =
   { "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      },
@@ -6203,6 +7143,13 @@ struct ConfigInfo image_config[] =
   { "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"                   },
@@ -6597,6 +7544,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"                     },
@@ -7172,6 +8121,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"                     },
@@ -7180,6 +8137,14 @@ 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"                    },
@@ -7187,6 +8152,8 @@ struct ConfigInfo image_config[] =
   { "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      },
@@ -7194,6 +8161,7 @@ struct ConfigInfo image_config[] =
   { "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      },
@@ -7718,6 +8686,7 @@ struct ConfigInfo image_config[] =
   { "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"                 },
@@ -7726,10 +8695,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"                   },
@@ -7754,6 +8731,9 @@ struct ConfigInfo image_config[] =
   { "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             },
@@ -7771,6 +8751,9 @@ struct ConfigInfo image_config[] =
   { "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             },
@@ -7801,6 +8784,8 @@ struct ConfigInfo image_config[] =
   { "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"                     },
@@ -7868,6 +8853,11 @@ struct ConfigInfo image_config[] =
   { "menu.list_size.INFO[ELEMENTS]",           "-1"                    },
   { "menu.list_size.SETUP",                    "-1"                    },
 
+  { "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"                    },
@@ -7878,6 +8868,9 @@ struct ConfigInfo image_config[] =
   { "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"                    },
@@ -7888,6 +8881,7 @@ struct ConfigInfo image_config[] =
   { "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"                   },
@@ -7898,6 +8892,7 @@ struct ConfigInfo image_config[] =
   { "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"                    },
@@ -7908,6 +8903,7 @@ struct ConfigInfo image_config[] =
   { "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"                    },
@@ -7918,6 +8914,7 @@ struct ConfigInfo image_config[] =
   { "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"                    },
@@ -7928,6 +8925,7 @@ struct ConfigInfo image_config[] =
   { "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"                    },
@@ -7938,6 +8936,7 @@ struct ConfigInfo image_config[] =
   { "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"                     },
@@ -7948,9 +8947,10 @@ struct ConfigInfo image_config[] =
   { "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]",       "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"                     },
@@ -7992,6 +8992,9 @@ struct ConfigInfo image_config[] =
   { "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"                    },
 
@@ -8173,6 +9176,19 @@ struct ConfigInfo image_config[] =
   { "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"                },
@@ -8407,12 +9423,46 @@ struct ConfigInfo image_config[] =
   { "game.panel.gems.class",                   "none"                  },
   { "game.panel.gems.style",                   "none"                  },
 
+  { "game.panel.gems_total.x",                 "-1"                    },
+  { "game.panel.gems_total.y",                 "-1"                    },
+  { "game.panel.gems_total.align",             "left"                  },
+  { "game.panel.gems_total.valign",            "top"                   },
+  { "game.panel.gems_total.digits",            "-1"                    },
+  { "game.panel.gems_total.font",              "font.text_2"           },
+  { "game.panel.gems_total.draw_masked",       "true"                  },
+  { "game.panel.gems_total.draw_order",                "0"                     },
+  { "game.panel.gems_total.class",             "none"                  },
+  { "game.panel.gems_total.style",             "none"                  },
+
+  { "game.panel.gems_collected.x",             "-1"                    },
+  { "game.panel.gems_collected.y",             "-1"                    },
+  { "game.panel.gems_collected.align",         "left"                  },
+  { "game.panel.gems_collected.valign",                "top"                   },
+  { "game.panel.gems_collected.digits",                "-1"                    },
+  { "game.panel.gems_collected.font",          "font.text_2"           },
+  { "game.panel.gems_collected.draw_masked",   "true"                  },
+  { "game.panel.gems_collected.draw_order",    "0"                     },
+  { "game.panel.gems_collected.class",         "none"                  },
+  { "game.panel.gems_collected.style",         "none"                  },
+
+  { "game.panel.gems_score.x",                 "-1"                    },
+  { "game.panel.gems_score.y",                 "-1"                    },
+  { "game.panel.gems_score.align",             "left"                  },
+  { "game.panel.gems_score.valign",            "top"                   },
+  { "game.panel.gems_score.digits",            "-1"                    },
+  { "game.panel.gems_score.font",              "font.text_2"           },
+  { "game.panel.gems_score.draw_masked",       "true"                  },
+  { "game.panel.gems_score.draw_order",                "0"                     },
+  { "game.panel.gems_score.class",             "none"                  },
+  { "game.panel.gems_score.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"                  },
@@ -8610,8 +9660,9 @@ struct ConfigInfo image_config[] =
   { "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"                  },
@@ -8621,8 +9672,9 @@ struct ConfigInfo image_config[] =
   { "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"                  },
@@ -9400,6 +10452,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"                    },
@@ -9413,6 +10467,8 @@ struct ConfigInfo image_config[] =
   { "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"                    },
@@ -9424,6 +10480,8 @@ struct ConfigInfo image_config[] =
   { "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"                    },
@@ -9742,14 +10800,19 @@ 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_bd_graphics_engine",      "false"                 },
   { "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"                  },