def do_set(self, arg):
        """ Command to change some options and variables in interactive
            mode """
        args = arg.split()
        if len(args) > 2:
            print("Error: too many parameters.")
        elif len(args) == 0:
            print("Write \'help set\' to see a list of all possible variables")
        else:
            if args[0] == "entity-limit":
                if len(args) == 1:
                    print("entity-limit = {0}".format(self.options.entity_limit))
                else:
                    try:
                        if int(args[1]) >= 0:
                            self.options.entity_limit = int(args[1])
                            print("entity-limit = {0}".format(args[1]))
                            print("Updating chunk status...")
                            self.current.rescan_entities(self.options)
                        else:
                            print("Invalid value. Valid values are positive integers and zero")
                    except ValueError:
                        print("Invalid value. Valid values are positive integers and zero")

            elif args[0] == "workload":

                if len(args) == 1:
                    if self.current:
                        print("Current workload:\n{0}\n".format(self.current.__str__()))
                    print("List of possible worlds and region-sets (determined by the command used to run region-fixer):")
                    number = 1
                    for w in self.world_list:
                        print("   ### world{0} ###".format(number))
                        number += 1
                        # add a tab and print
                        for i in w.__str__().split("\n"):
                            print("\t" + i)
                        print()
                    print("   ### regionset ###")
                    for i in self.regionset.__str__().split("\n"):
                        print("\t" + i)
                    print("\n(Use \"set workload world1\" or name_of_the_world or regionset to choose one)")

                else:
                    a = args[1]
                    if len(a) == 6 and a[:5] == "world" and int(a[-1]) >= 1:
                        # get the number and choos the correct world from the list
                        number = int(args[1][-1]) - 1
                        try:
                            self.current = self.world_list[number]
                            print("workload = {0}".format(self.current.world_path))
                        except IndexError:
                            print("This world is not in the list!")
                    elif a in self.world_names:
                        for w in self.world_list:
                            if w.name == args[1]:
                                self.current = w
                                print("workload = {0}".format(self.current.world_path))
                                break
                        else:
                            print("This world name is not on the list!")
                    elif args[1] == "regionset":
                        if len(self.regionset):
                            self.current = self.regionset
                            print("workload = set of region files")
                        else:
                            print("The region set is empty!")
                    else:
                        print("Invalid world number, world name or regionset.")

            elif args[0] == "processes":
                if len(args) == 1:
                    print("processes = {0}".format(self.options.processes))
                else:
                    try:
                        if int(args[1]) > 0:
                            self.options.processes = int(args[1])
                            print("processes = {0}".format(args[1]))
                        else:
                            print("Invalid value. Valid values are positive integers.")
                    except ValueError:
                        print("Invalid value. Valid values are positive integers.")

            elif args[0] == "verbose":
                if len(args) == 1:
                    print("verbose = {0}".format(str(self.options.verbose)))
                else:
                    if args[1] == "True":
                        self.options.verbose = True
                        print("verbose = {0}".format(args[1]))
                    elif args[1] == "False":
                        self.options.verbose = False
                        print("verbose = {0}".format(args[1]))
                    else:
                        print("Invalid value. Valid values are True and False.")
            else:
                print("Invalid argument! Write \'help set\' to see a list of valid variables.")