What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal

Is there any way for AB sessions start minimized?

Voyager92

Member
Joined
Nov 3, 2014
Messages
287
Reaction score
1
I have a couple of computers, in the old one, whenever I run 2-3 sessions the gpu goes to 99% of load and it's temperature just keeps rising, I have noticed that it sometimes freezes.

Minimized, the cpu and gpu seem to work less and specially the load in the gpu is much smaller saving energy and avoid overheating, so my question is there any way for the AA windows to start minimized or get minimized after game loading?

Any help is appreciate, because that is hurting my botting.
 
Well, tried a few tricks like start /min and start-window-min, but nothing, another option would be a 3rd party program, I found eusing software, however its paid, and I havent tested yet.

It would be a great addition to AB to save up pc resources.
 
you can easily achieve that using an autohotkey script to minimize all archeage window every x minutes.
 
you can easily achieve that using an autohotkey script to minimize all archeage window every x minutes.

Damn, my mind completely blanked for ahk, thx for reminding me.

PS: Really enjoyed your work in the divine gifts plugin, I wonder if the same script will work for the incoming one, planning on making changes for that?
 
Its not needed anymore, since scheduled gift stuff are now supported by the AB api using

foreach (ScheduleItem sitem in getScheduleItems())
{
if (sitem.remainTime > 0)
continue;
sitem.Claim();
}

Altho i did not test that code since there's no scheduled item currently available. In theory it should work
 
Its not needed anymore, since scheduled gift stuff are now supported by the AB api using

foreach (ScheduleItem sitem in getScheduleItems())
{
if (sitem.remainTime > 0)
continue;
sitem.Claim();
}

Altho i did not test that code since there's no scheduled item currently available. In theory it should work

wow, had no idea, big thx m8!
 
why do you need to do this? why can't you minimize it by yourself? I'm confused lol

It doesn't minimize when it starts but it runs still when it's minimized, so what is the problem... u have to click it once?
 
why do you need to do this? why can't you minimize it by yourself? I'm confused lol

It doesn't minimize when it starts but it runs still when it's minimized, so what is the problem... u have to click it once?

Because sometimes, other times often, the sessions DC and the client is restarted.
 
Because sometimes, other times often, the sessions DC and the client is restarted.

wtf? mine doesn't restart itself, you're not supposed to COMPLETELY afk bot that's how your dumbass gets caught. If you wanna encourage laziness by all means then, ironically, learn how to code your own plugin, but this is a really bad problem for you to have.
 
Last edited:
wtf? mine doesn't restart itself, you're not supposed to COMPLETELY afk bot that's how your dumbass gets caught. If you wanna encourage laziness by all means then, ironically, learn how to code your own plugin, but this is a really bad problem for you to have.

You are clearly talking out of your ass, thank you for your idiotic and unwanted opinion, now plz, go fuck yourself and go troll somewhere else...
 
Last edited:
You can make a plugin, checking it with auto-run:
Add using System.Diagnostics; and using System.Runtime.InteropServices; to the top of your file.

Declare DllImport Functions:
Code:
        #region DLLImport
        [DllImport("user32.dll")]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool ShowWindow(IntPtr hWnd, ShowWindowCommands nCmdShow);

        [DllImport("user32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        internal static extern bool GetWindowPlacement(IntPtr hWnd, out WINDOWPLACEMENT lpwndpl);

        [DllImport("user32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool SetWindowPlacement(IntPtr hWnd,
           [In] ref WINDOWPLACEMENT lpwndpl);

        [Serializable]
        [StructLayout(LayoutKind.Sequential)]
        internal struct WINDOWPLACEMENT
        {
            public int length;
            public int flags;
            public ShowWindowCommands showCmd;
            public System.Drawing.Point ptMinPosition;
            public System.Drawing.Point ptMaxPosition;
            public System.Drawing.Rectangle rcNormalPosition;
        }

        internal enum ShowWindowCommands : int
        {
            Hide = 0,
            Normal = 1,
            ShowMinimized = 2,
            Maximize = 3, // is this the right value?
            ShowMaximized = 3,
            ShowNoActivate = 4,
            Show = 5,
            Minimize = 6,
            ShowMinNoActive = 7,
            ShowNA = 8,
            Restore = 9,
            ShowDefault = 10,
            ForceMinimize = 11
        }
        #endregion

Finally, the PluginRun() example:
Code:
        public void PluginRun()
        {
            while (true)
            {
                #region Minimize Windows
                var aage_process = Process.GetProcessesByName("archeage");
                foreach (var p in aage_process)
                {
                    IntPtr h = p.MainWindowHandle;

                    // Prepare the WINDOWPLACEMENT structure.
                    var placement = new WINDOWPLACEMENT();
                    placement.length = Marshal.SizeOf(placement);

                    // Get the window's current placement.
                    GetWindowPlacement(h, out placement);

                    if (placement.showCmd != ShowWindowCommands.Minimize)
                    {
                        ShowWindow(h, ShowWindowCommands.Minimize);

                        /* other alternative
                        placement.showCmd = ShowWindowCommands.Minimize;
                        SetWindowPlacement(h, ref placement);
                        */
                    }
                }                            
                #endregion

                Thread.Sleep(5000); //check each 5 seconds... you can improve this.
            }
        }
 
You can make a plugin, checking it with auto-run:
Add using System.Diagnostics; and using System.Runtime.InteropServices; to the top of your file.

Declare DllImport Functions:
Code:
        #region DLLImport
        [DllImport("user32.dll")]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool ShowWindow(IntPtr hWnd, ShowWindowCommands nCmdShow);

        [DllImport("user32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        internal static extern bool GetWindowPlacement(IntPtr hWnd, out WINDOWPLACEMENT lpwndpl);

        [DllImport("user32.dll", SetLastError = true)]
        [return: MarshalAs(UnmanagedType.Bool)]
        static extern bool SetWindowPlacement(IntPtr hWnd,
           [In] ref WINDOWPLACEMENT lpwndpl);

        [Serializable]
        [StructLayout(LayoutKind.Sequential)]
        internal struct WINDOWPLACEMENT
        {
            public int length;
            public int flags;
            public ShowWindowCommands showCmd;
            public System.Drawing.Point ptMinPosition;
            public System.Drawing.Point ptMaxPosition;
            public System.Drawing.Rectangle rcNormalPosition;
        }

        internal enum ShowWindowCommands : int
        {
            Hide = 0,
            Normal = 1,
            ShowMinimized = 2,
            Maximize = 3, // is this the right value?
            ShowMaximized = 3,
            ShowNoActivate = 4,
            Show = 5,
            Minimize = 6,
            ShowMinNoActive = 7,
            ShowNA = 8,
            Restore = 9,
            ShowDefault = 10,
            ForceMinimize = 11
        }
        #endregion

Finally, the PluginRun() example:
Code:
        public void PluginRun()
        {
            while (true)
            {
                #region Minimize Windows
                var aage_process = Process.GetProcessesByName("archeage");
                foreach (var p in aage_process)
                {
                    IntPtr h = p.MainWindowHandle;

                    // Prepare the WINDOWPLACEMENT structure.
                    var placement = new WINDOWPLACEMENT();
                    placement.length = Marshal.SizeOf(placement);

                    // Get the window's current placement.
                    GetWindowPlacement(h, out placement);

                    if (placement.showCmd != ShowWindowCommands.Minimize)
                    {
                        ShowWindow(h, ShowWindowCommands.Minimize);

                        /* other alternative
                        placement.showCmd = ShowWindowCommands.Minimize;
                        SetWindowPlacement(h, ref placement);
                        */
                    }
                }                            
                #endregion

                Thread.Sleep(5000); //check each 5 seconds... you can improve this.
            }
        }

Thank you Manicao, will definitely try that later tonight
 
Back
Top