Jump to content

Pudge

WRobot user
  • Posts

    348
  • Joined

  • Last visited

Posts posted by Pudge

  1. Hello.

    For some reason during quests the bot is blacklisting game objects to harvest. I tried to fix that by removing from the blacklist all of objects to harvest for the current quest.  But Quest.QuesterCurrentContext.Profile as Quester.Profile.EasyQuestProfile is always return null. I know that it could be much easier to implement what I wanted, for example, removing the objects to harvest from the blacklist if the bot is in the "harvesting" state near it for some time, but as it has already been done, it's done. The point is that it is not possible to get the necessary information for the log using EasyQuestProfile class. Or maybe I did something wrong?

    Log: 

    Quote

    13:23:32 - [Farming] Farm Burstcap Mushroom > 186.285 ; 8155.31 ; 22.5432 ; "None"
    [N] 13:23:32 - [Path-Finding] FindPath from 186.6675 ; 8105.65 ; 22.99214 ; "None" to 186.285 ; 8155.31 ; 22.5432 ; "None" (Expansion01)
    [N] 13:23:32 - [Server] [Path-Finding] 186.6675, 8105.65, 22.99214 to 186.285, 8155.31, 22.5432 (Expansion01, ResultPartial=False, ResultSuccess=True, Path count=2, SkipIfPartiel=False, IgnoreServerRoadsWater=False, Time=0
    [N] 13:23:32 - [Path-Finding] Path Count: 3 (49.66366y, 154ms, smoothed)
    [D] 13:23:35 - [Farming] !MovementManager.InMovement
    13:23:35 - [Farming] Farm failed



    And this is code I made to fix that: code.cs

    private void GetQuestObjectivesInfo()
    {
    	try
    	{
    		QuestObjectivesInfo = "";
    
    		string QuestObjectivesLogString = "";
    
    		var EasyQuestProfile = Quest.QuesterCurrentContext.Profile as Quester.Profile.EasyQuestProfile; // doesnt work?
    		var OldTypeProfile = Quest.QuesterCurrentContext.Profile as Quester.Profile.QuesterProfile;
    
    		if (EasyQuestProfile != null)
    		{
    			var CurStep = EasyQuestProfile.QuestsSorted[CurStepNum];
    
    			if (CurStep != null)
    			{
    				string CurStepNameClass = CurStep.NameClass;
    
    				if (!string.IsNullOrWhiteSpace(CurStepNameClass))
    				{
    					var EasyQuest = EasyQuestProfile.EasyQuests.FirstOrDefault(q => q.NameClass == EasyQuestProfile.QuestsSorted[CurStepNum].NameClass);
    
    					if (EasyQuest != null)
    					{
    						string EntriesIdLog = "";
    						string QuestTypeString = EasyQuest.QuestType.ToString();
    						var BlacklistedObjects = new List<WoWGameObject>();
    
    						if (EasyQuest.QuestType == EasyQuestType.Gatherer)
    						{
    							Logging.Write("[GetQuestObjectivesInfo] CurStepClassNameOld: " + CurStepClassNameOld + ", QuestType: ["+ QuestTypeString + "]");
    
    							var EasyQuestClass = EasyQuest.QuestClass as Quester.Profile.GathererEasyQuestClass;
    
    							if (EasyQuestClass.EntryIdObjects.Count > 0)
    							{
    								EasyQuestClass.EntryIdObjects.ForEach(entry =>
    								{
    									if (string.IsNullOrWhiteSpace(EntriesIdLog))
    										EntriesIdLog += "entries id objects to harvest: " + entry + "";
    									else
    										EntriesIdLog += ", " + entry + "";
    								});
    
    								BlacklistedObjects = ObjectManager.GetObjectWoWGameObject().FindAll(o => EasyQuestClass.EntryIdObjects.Contains(o.Entry) && (wManager.wManagerSetting.GetListGuidBlackListed().Contains(o.Guid) || wManager.wManagerSetting.IsBlackListed(o.Guid) || wManager.wManagerSetting.IsBlackListedZone(o.Position)));
    
    								QuestObjectivesLogString += EntriesIdLog;
    							}
    						}
    						else if (EasyQuest.QuestType == EasyQuestType.GrinderGathererQuests)
    						{
    							Logging.Write("[GetQuestObjectivesInfo] CurStepClassNameOld: [" + CurStepClassNameOld + "], QuestType: [" + QuestTypeString + "]");
    
    							var EasyQuestClass = EasyQuest.QuestClass as Quester.Profile.GrinderGathererEasyQuestClass;
    
    							if (EasyQuestClass.EntryGathererTarget.Count > 0)
    							{
    								var ObjectsEntriesList = new List<int>();
    
    								EasyQuestClass.EntryGathererTarget.ForEach(entry =>
    								{
    									if (!ObjectsEntriesList.Contains(entry.Entry))
    										ObjectsEntriesList.Add(entry.Entry);
    
    									if (string.IsNullOrWhiteSpace(EntriesIdLog))
    										EntriesIdLog += "entries id objects to harvest: " + entry.Entry + "";
    									else
    										EntriesIdLog += ", " + entry.Entry + "";
    								});
    
    								QuestObjectivesLogString += EntriesIdLog;
    
    								BlacklistedObjects = ObjectManager.GetObjectWoWGameObject().FindAll(o => ObjectsEntriesList.Contains(o.Entry) && (wManager.wManagerSetting.GetListGuidBlackListed().Contains(o.Guid) || wManager.wManagerSetting.IsBlackListed(o.Guid) || wManager.wManagerSetting.IsBlackListedZone(o.Position)));
    							}
    						}
    						else
    						{
    							QuestObjectivesInfo = "QuestType: is not gatherer";
    							Logging.Write("[GetQuestObjectivesInfo] CurStepClassNameOld: [" + CurStepClassNameOld + "], QuestType: is not gatherer");
    						}
    
    						// remove objects from blacklist while harvest
    						if (BlacklistedObjects.Count > 0)
    						{
    							string BlacklistedObjectsString = "quest: [" + CurStepClassNameOld + "], remove " + BlacklistedObjects.Count + " objects from blacklist: ";
    
    							BlacklistedObjects.ForEach(o =>
    							{
    								if (string.IsNullOrWhiteSpace(BlacklistedObjectsString))
    									BlacklistedObjectsString += "[" + o.Name + "] " + o.Guid + "";
    								else
    									BlacklistedObjectsString += ", [" + o.Name + "] " + o.Guid + "";
    
    								if (wManager.wManagerSetting.IsBlackListed(o.Guid))
    								{
    									Logging.Write("[GetQuestObjectivesInfo] remove guid of object [" + o.Name + "] " + o.Guid + " from blacklisted");
    									wManager.wManagerSetting.RemoveBlackList(o.Guid);
    								}
    
    								if (wManager.wManagerSetting.GetListGuidBlackListed().Contains(o.Guid))
    								{
    									Logging.Write("[GetQuestObjectivesInfo] remove guid of object [" + o.Name + "] " + o.Guid + " from GetListGuidBlackListed");
    									wManager.wManagerSetting.GetListGuidBlackListed().Remove(o.Guid);
    								}
    
    								if (wManager.wManagerSetting.IsBlackListedZone(o.Position))
    								{
    									var BadBlacklistsForCurrentQuest = wManager.wManagerSetting.GetListZoneBlackListed().FindAll(bl => o.Position.DistanceTo(bl.GetPosition()) < 15);
    
    									Logging.Write("[GetQuestObjectivesInfo] remove " + BadBlacklistsForCurrentQuest.Count + " bad blacklist areas for current quest");
    
    									wManager.wManagerSetting.GetListZoneBlackListed().RemoveAll(bl => o.Position.DistanceTo(bl.GetPosition()) < 15);
    
    									// return back removed blacklists after harvest
    									Task.Factory.StartNew(() =>
    									{
    										while (IsLaunched)
    										{
    											if (!Conditions.InGameAndConnected || me.Position.DistanceTo(o.Position) > 50)
    											{
    												Logging.Write("[GetQuestObjectivesInfo] return back " + BadBlacklistsForCurrentQuest.Count + " bad blacklist areas for current quest to blacklist");
    
    												BadBlacklistsForCurrentQuest.ForEach(bl =>
    												{
    													if (wManager.wManagerSetting.GetListZoneBlackListed().Count(b => b == bl) == 0)
    														wManager.wManagerSetting.AddBlackListZone(bl);
    												});
                                                  
                                                  	break;
    											}
    											Thread.Sleep(10000);
    										}
    									});
    								}
    							});
    
                              	QuestObjectivesInfo = QuestObjectivesLogString;
    							SDM("" + info1 + ", " + BlacklistedObjectsString + ", " + info2 + "");
    							logs(BlacklistedObjectsString);
    							SetCenterText(text: BlacklistedObjectsString, frameflash: true, CenterTextFrameUpdateTimeCD: 15, textcolor: "ff0000", force: true);
    							MaximizeWowWindow();
    						}
    					}
    					else
    					{
    						QuestObjectivesInfo = "EasyQuest = null";
    						Logging.Write("[GetQuestObjectivesInfo] CurStepClassNameOld: [" + CurStepClassNameOld + "], EasyQuest = null");
    					}
    				}
    				else
    				{
    					QuestObjectivesInfo = "CurStepNameClass string is null";
    					Logging.Write("[GetQuestObjectivesInfo] CurStepClassNameOld: [" + CurStepClassNameOld + "], CurStepNameClass string is null");
    				}
    			}
    			else
    			{
    				QuestObjectivesInfo = "CurStep = null";
    				Logging.Write("[GetQuestObjectivesInfo] CurStepClassNameOld: [" + CurStepClassNameOld + "], CurStep = null");
    			}
    		}
    		else
    		{
    			QuestObjectivesInfo = "EasyQuestProfile = null";
    			Logging.Write("[GetQuestObjectivesInfo] CurStepClassNameOld: [" + CurStepClassNameOld + "], EasyQuestProfile = null");
    		}
    	}
    	catch (Exception e)
    	{
          	QuestObjectivesInfo = "? - exception";
    		Logging.Write("[GetQuestObjectivesInfo] CurStepClassNameOld: [" + CurStepClassNameOld + "], GetQuestObjectivesInfo exception: " + e.ToString() + "");
    	}
    }
    
    
    private string CurStepClassNameOld
    {
    	get
    	{
    		string currentstep = "";
    
    		try
    		{
    			var profile = Quest.QuesterCurrentContext.Profile as Quester.Profile.QuesterProfile;
    
    			if (profile != null)
    			{
    				if (profile.QuestsSorted[CurStepNum].NameClass != null)
    				{
    					if (profile.QuestsSorted[CurStepNum].Action == QuestAction.RunCode)
    						currentstep = "c# code";
    					else if (profile.QuestsSorted[CurStepNum].Action == QuestAction.RunLuaCode)
    						currentstep = "lua code";
    					else if (profile.QuestsSorted[CurStepNum].NameClass.Length >= 50 || profile.QuestsSorted[CurStepNum].NameClass.Contains(Environment.NewLine))
    						currentstep = "? - a lot of symbols";
    					else
    						currentstep = profile.QuestsSorted[Quest.QuesterCurrentContext.CurrentStep].NameClass;
    				}
    				else
    					currentstep = "? - NameClass is null";
    			}
    			else
    				currentstep = "? - Profile is null";
    		}
    		catch (Exception e)
    		{
    			Logging.Write("CurStepClassNameOld exception: " + e.ToString() + "");
    			currentstep = "? - exception";
    		}
    
    		return currentstep;
    	}
    }
    
    
    private int CurStepNum
    {
    	get { return wManager.Wow.Helpers.Quest.QuesterCurrentContext.CurrentStep; }
    }
    
    
    private string QuestObjectivesInfo;

     

  2. 5 hours ago, Droidz said:

    You are sure that no one of your plugins/figthclass/profile change these settings ? Check value of option (with dev tools) when bot is running 

    i sent you a video with devtools

  3.  

    Hi, I don't understand why but the bot stopped using drinks to restore mana, it just ignores their presence in the backpack.
    The following settings are set:

    wManager.wManagerSetting.CurrentSetting.DrinkName = "Conjured Mana Strudel";
    wManager.wManagerSetting.CurrentSetting.DrinkPercent = 65;
    wManager.wManagerSetting.CurrentSetting.TryToUseBestBagFoodDrink = true;
    wManager.wManagerSetting.CurrentSetting.DrinkMaxPercent = 99;

    Also wManager.wManagerSetting.CurrentSetting.DrinkAmount returns 0.
    image.png.3c104520b679926cb141843ff47ae0b3.png

  4.  

    Hello, @Droidz, there is an urgent need to control bots on two or more different machines, in wrobot have api API robotManager.Helpful.Var that allows you to create variables for communication within one bot program,I know that bots can read variables from an xml document on one computer to communicate, but how to do something like that so that bots on different PCs can transfer information to each other is not yet clear to me. It would be cool if you add such an api you can add or suggest how you can implement a variable so that bots can read it from different computer machines.

  5. public void AddNewReloggerProfile(string AccName, string pass, string charname, string server, string Wrobotkey, string wowpath, string profilename, string runtime)
            {
    
                var t = new Thread(o =>
                {
    
                    try
                    {
                        Logging.Write("1");
                        var newprofile = new Relogger.Classes.ReloggerProfile();
                         //Logging.Write("2");
                         //Relogger.Classes.ReloggerProfileSettings.
                         newprofile.Name = AccName + " " + pass + " " + charname;
                         //newprofile.CurrentTaskIndex
                         //  Logging.Write("3");
                         newprofile.CurrentWowAccount = new Relogger.Classes.ChangeCharacterReloggerTask();
                        newprofile.CurrentWRobotAccount = new Relogger.Classes.ChangeWRobotLicenseKeyReloggerTask();
                        newprofile.CurrentWRobotAccount.WRobotKey = Wrobotkey;
                        newprofile.CurrentWowAccount.AccountName = AccName;
                        newprofile.CurrentWowAccount.Server = server;
                         // Logging.Write("4");
                         newprofile.CurrentWowAccount.BattleNet = AccName;
                         // Logging.Write("5");
                         newprofile.CurrentWowAccount.Password = pass;
                         //Logging.Write("6");
                         newprofile.CurrentWowAccount.Character = charname;
                         //Logging.Write("7");
                         newprofile.Checked = true;
                         // Logging.Write("8");
                         newprofile.Settings.MinimiseWRobotOnStart = true;
                         // Logging.Write("9");
                         newprofile.Settings.RelaunchIfWowOrWRobotCrash = true;
                         //Logging.Write("10");
                         newprofile.Settings.RunTasksLoop = true;
                         // Logging.Write("11");
                         newprofile.Settings.ScheduleResetAtEnd = true;
                         // Logging.Write("12");
                         newprofile.Settings.Tasks.Add(new Relogger.Classes.ReloggerTask { TaskType = Relogger.Classes.TaskType.ChangeWowPath.ToString(), Task = new Relogger.Classes.ChangeWowPathReloggerTask { WowPath = wowpath }, Name = "123" });
                         //Logging.Write("13");
                         newprofile.Settings.Tasks.Add(new Relogger.Classes.ReloggerTask { TaskType = Relogger.Classes.TaskType.Run.ToString(), Task = new Relogger.Classes.RunReloggerTask { RunTime = runtime, Product = "Quester", Profile = profilename, }, Name = "run" });
                        Relogger.Classes.ReloggerGeneralSettings.CurrentSetting.Profiles.Add(newprofile);
    
                    }
                    catch (Exception e)
                    {
                        Logging.WriteError(e.ToString());
                    }
                });
                t.SetApartmentState(ApartmentState.STA);
                t.Start();
    
            }

     

     

    Hi, I tested your snippet of code, slightly changing it, the profile is created, but the data such as Password, AccountName, CharacterName and key do not change, also, an error pops up when you click on ChangeWowpath or Run Task.

    https://youtu.be/7DqBFwXmtgk

    23 ноя 2021 20H02.log.html

  6. Hi, I am trying to write a code that will create a new profile in the relogger, 

    It looks like this:

    public void AddNewReloggerProfile(string AccName, string pass, string charname, string key, string wowpath, string profilename, string runtime)
            {
    
                System.Threading.Tasks.Task.Factory.StartNew(() =>
                {
    
                    try
                    {
                        Logging.Write("1");
                        var newprofile = new Relogger.Classes.ReloggerProfile();
                        Logging.Write("2");
                        //Relogger.Classes.ReloggerProfileSettings.
                        newprofile.Name = AccName + " " + pass + " " + charname;
                        Logging.Write("3");
                        newprofile.CurrentWowAccount.AccountName = AccName;
                        Logging.Write("4");
                        newprofile.CurrentWowAccount.BattleNet = AccName;
                        Logging.Write("5");
                        newprofile.CurrentWowAccount.Password = pass;
                        Logging.Write("6");
                        newprofile.CurrentWowAccount.Character = charname;
                        Logging.Write("7");
                        newprofile.Checked = true;
                        Logging.Write("8");
                        newprofile.Settings.MinimiseWRobotOnStart = true;
                        Logging.Write("9");
                        newprofile.Settings.RelaunchIfWowOrWRobotCrash = true;
                        Logging.Write("10");
                        newprofile.Settings.RunTasksLoop = true;
                        Logging.Write("11");
                        newprofile.Settings.ScheduleResetAtEnd = true;
                        Logging.Write("12");
                        newprofile.Settings.Tasks.Add(new Relogger.Classes.ReloggerTask { TaskType = Relogger.Classes.TaskType.ChangeWowPath.ToString(), Task = new Relogger.Classes.ChangeWowPathReloggerTask { WowPath = wowpath }, Name = "123" });
                        Logging.Write("13");
                        newprofile.Settings.Tasks.Add(new Relogger.Classes.ReloggerTask { TaskType = Relogger.Classes.TaskType.Run.ToString(), Task = new                         Relogger.Classes.RunReloggerTask { RunTime = runtime, Product = "Quester", Profile = profilename, }, Name = "run" });
                        Relogger.Classes.ReloggerGeneralSettings.CurrentSetting.Profiles.Add(newprofile);
    
                    }
                    catch (Exception e)
                    {
                        Logging.WriteError(e.ToString());
                    }
                });
               
            }

    I'm testing through the OnButtonPress () method:

     public override void OnButtonPress()
            {
                AddNewReloggerProfile("124", "124", "124", "124", "124", "124", "124");
                base.OnButtonPress();
            }
        }

    But I am getting the error:

    image.png.207b2c2ca283232bc3093e4baa042425.png

     

    20 ноя 2021 07H35.log.html

    If you use the code outside the Task.Factory (()) thread, the program simply stops responding.

    Any help would be welcome, thanks.

  7. ⚠️⚠️⚠️ The problem is urgent. The bot breaks through the wall in cities like harry potter into the portal to hogwarts. What happens to meshes / pathfinding? And why in cities? Why can't the meshes be saved in the bot folder in case of problems with the pathfinder server ?

  8.  

    Hello, lately there are very often problems with finding a path, a bot bumping into walls in a city, or simply cannot use the path finding normally, I cannot understand the reason of this behavior:

    03:17:45 - [Fight] Can't reach Scourge Banner-Bearer, blacklisting it.
    03:17:45 - [Fight] Player Attack Converted Hero (lvl 80)
    [N] 03:17:46 - [Path-Finding] GetZPosition: 7306,558 ; 2490,304 ; 396,2049 ; "Flying" strict = False
    [N] 03:17:46 - [Path-Finding] GetZPosition result: Z = 0 (0 ms)
    [N] 03:17:46 - [Path-Finding] FindPath from 7306,558 ; 2490,304 ; 0 ; "Flying" to 7300,61 ; 2524,44 ; 395,5601 ; "None" (Northrend)
    [N] 03:17:46 - [Path-Finding] Cannot find path: 7306,558 ; 2490,304 ; 0 ; "Flying" (Northrend_27,33068_18,3002) to 7300,61 ; 2524,44 ; 395,5601 ; "None" (Northrend_27,26667_18,31136)
    [N] 03:17:46 - [Path-Finding] Path Count: 2 (397,0749y, 0ms) (resultPartial=True, resultSuccess=False (more info with server log option))
    [D] 03:17:46 - [Fight] Cannot make path to the target (Converted Hero), ignore it.
    03:17:46 - [Fight] Can't reach Converted Hero, blacklisting it.
    03:17:47 - [Fight] Player Attack Converted Hero (lvl 80)
    [N] 03:17:47 - [Path-Finding] GetZPosition: 7326,559 ; 2468,781 ; 396,4211 ; "Flying" strict = False
    [N] 03:17:47 - [Path-Finding] GetZPosition result: Z = 0 (0 ms)
    [N] 03:17:47 - [Path-Finding] FindPath from 7326,559 ; 2468,781 ; 0 ; "Flying" to 7302,68 ; 2522,19 ; 395,5894 ; "None" (Northrend)
    [N] 03:17:47 - [Path-Finding] Cannot find path: 7326,559 ; 2468,781 ; 0 ; "Flying" (Northrend_27,37103_18,2627) to 7302,68 ; 2522,19 ; 395,5894 ; "None" (Northrend_27,27089_18,30747)
    [N] 03:17:47 - [Path-Finding] Path Count: 2 (399,8921y, 0ms) (resultPartial=True, resultSuccess=False (more info with server log option))
    [D] 03:17:47 - [Fight] Cannot make path to the target (Converted Hero), ignore it.
    03:17:47 - [Fight] Can't reach Converted Hero, blacklisting it.
    03:17:47 - [Fight] Player Attack Converted Hero (lvl 79)
    [N] 03:17:48 - [Path-Finding] GetZPosition: 7338,118 ; 2465,958 ; 393,1622 ; "Flying" strict = False
    [N] 03:17:48 - [Path-Finding] GetZPosition result: Z = 0 (0 ms)
    [N] 03:17:48 - [Path-Finding] FindPath from 7338,118 ; 2465,958 ; 0 ; "Flying" to 7332,55 ; 2498,18 ; 391,9678 ; "None" (Northrend)
    [N] 03:17:48 - [Path-Finding] Cannot find path: 7338,118 ; 2465,958 ; 0 ; "Flying" (Northrend_27,37633_18,24103) to 7332,55 ; 2498,18 ; 391,9678 ; "None" (Northrend_27,31591_18,25147)
    [N] 03:17:48 - [Path-Finding] Path Count: 2 (393,3293y, 0ms) (resultPartial=True, resultSuccess=False (more info with server log option))
    [D] 03:17:48 - [Fight] Cannot make path to the target (Converted Hero), ignore it.
    03:17:48 - [Fight] Can't reach Converted Hero, blacklisting it.
    03:17:48 - [Fight] Player Attack Converted Hero (lvl 79)
    [N] 03:17:48 - [Path-Finding] GetZPosition: 7344,723 ; 2471,328 ; 393,4188 ; "Flying" strict = False
    [N] 03:17:48 - [Path-Finding] GetZPosition result: Z = 0 (0 ms)
    [N] 03:17:48 - [Path-Finding] FindPath from 7344,723 ; 2471,328 ; 0 ; "Flying" to 7298,56 ; 2526,63 ; 395,5017 ; "None" (Northrend)
    [N] 03:17:48 - [Path-Finding] Cannot find path: 7344,723 ; 2471,328 ; 0 ; "Flying" (Northrend_27,36626_18,22865) to 7298,56 ; 2526,63 ; 395,5017 ; "None" (Northrend_27,26257_18,3152)
    [N] 03:17:48 - [Path-Finding] Path Count: 2 (402,0086y, 0ms) (resultPartial=True, resultSuccess=False (more info with server log option))
    [D] 03:17:48 - [Fight] Cannot make path to the target (Converted Hero), ignore it.

  9. On 11/12/2021 at 2:53 PM, Droidz said:

    Hi, it is code:

            private void ButtonCopyLog(object sender, System.Windows.RoutedEventArgs e)
            {
                try
                {
                    var logFilePath = $@"{Others.GetCurrentDirectory}\Logs\{Logging.NameCurrentLogFile()}";
                    var logCopyDest = $@"{Environment.GetFolderPath(Environment.SpecialFolder.DesktopDirectory)}\{Logging.NameCurrentLogFile()}";
                    if (File.Exists(logCopyDest))
                        File.Delete(logCopyDest);
                    File.Copy(logFilePath, logCopyDest);
                    Logging.Write("[Logging]" + Logging.NameCurrentLogFile() + " copied on your desktop.");
                }
                catch
                {
                }
            }

     

    Thank you very much, this is what I need

  10. Hey all, who know how you can call this method, using code?
     

    copylog.PNG.d6b71ec015d2e4f64a85e52442c0107f.PNG

     

     

    Often there is some kind of error in the code, but by the time it is detected, the bot has already closed, and it becomes difficult to find the required log file in the "Logs" folder, when there are thousands of them, if you knew how to call this method, you could make a plugin, allowing you to copy the log when certain errors occur, this would be very useful.

  11. [E] 19:09:33 - PathFinder server seem down, use offline pathfinder.
    Offline pathfinding does not work, a bunch of bots run into the wall in capitals.
    @Droidz, maybe you can do something with it, this is not the first time a problem arises when your servers crash and many of bots, after casting the hearthstone, simply run into the wall in one place, in front of everyone's eyes.

  12. I think I figured out why it didn't work. p.CurrentWowAccount == null if no windows are running in the relogger.

    There is one more problem, the relogger for some reason does not support the russian language, instead of it there are some symbols in the form of a question mark.

    do so:

    robotManager.Helpful.Logging.Write("авбгдиичоаып");

    we get:

    22:03:04 - ������������

  13. 1 hour ago, Droidz said:

    You run this code at start?

    This is the body of the OnButtonPress() method

    Аfter adding 

    robotManager.Helpful.Logging.Write("p.CurrentWowAccount==null > " + (p.CurrentWowAccount == null));
                            robotManager.Helpful.Logging.Write("p.CurrentWowAccount.AccountName==null > " + (p.CurrentWowAccount.AccountName == null));
                            robotManager.Helpful.Logging.Write("p.CurrentWowAccount.Password==null > " + (p.CurrentWowAccount.Password == null));

    We get:

    238673641_(2021_09.2413-34-44).jpg.2d6848098b8cf41194fa0b88b5932bc1.jpg

     

  14. Hi, I am trying to make a plugin for a relogger that will change account data depending on the conditions. I am facing a problem.

    System.Threading.Tasks.Task.Factory.StartNew(() =>
                {
                    
                        for (int i = 0; i < Relogger.Classes.ReloggerGeneralSettings.CurrentSetting.Profiles.Count; i++)
                        {
                            try
                            {
                            var p = Relogger.Classes.ReloggerGeneralSettings.CurrentSetting.Profiles[i];
                            if (p.Checked && p.Name.ToLower().Contains("myaccountname"))
                            {
                                robotManager.Helpful.Logging.Write("124");
                                p.CurrentWowAccount.AccountName = "1242";
                                p.CurrentWowAccount.Password = "1242";
                                
                            }
                        }
                            catch (Exception e)
                            {
                                robotManager.Helpful.Logging.WriteError(Name + " > " + e);
                            }
    
                        }
    
                });

    When trying to read or change the field CurrentWowAccount.AccountName or CurrentWowAccount.Password I get the error:

    [E] 22:26:06 - CHANGEKEY > System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в MyNamespace.MyPlugin.b__0()

    Is it possible to implement changing account data through a plugin or is this error a consequence of data protection?

×
×
  • Create New...