def METHOD_NAME(
    cls,
    gamespec: ArrayMember,
    args: Namespace,
    string_resources: StringResource,
    existing_graphics: list[str]
) -> list[Modpack]:
    """
    Input game speification and media here and get a set of
    modpacks back.
    :param gamespec: Gamedata from empires.dat read in by the
                     reader functions.
    :type gamespec: ...dataformat.value_members.ArrayMember
    :returns: A list of modpacks.
    :rtype: list
    """
    info("Starting conversion...")
    # Create a new container for the conversion process
    dataset = cls._pre_processor(
        gamespec,
        args.game_version,
        string_resources,
        existing_graphics
    )
    debug_converter_objects(args.debugdir, args.debug_info, dataset)
    # Create the custom openage formats (nyan, sprite, terrain, etc.)
    dataset = cls._processor(dataset)
    debug_converter_object_groups(args.debugdir, args.debug_info, dataset)
    # Create modpack definitions
    modpacks = cls._post_processor(dataset)
    return modpacks