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

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

[Plugin] Nuok Server Hop

Nuok

Community Developer
Joined
Jan 15, 2010
Messages
975
As of 7.0 Server Hoping is pretty much dead, will leave this up if anyone wants the code.
http://wow.curseforge.com/addons/server-hop/pages/changes-to-cross-realm-in-legion/

NuokServerHop


This is a basic plugin that allows you to jump realms at set intervals, which can be useful for farming in the world.

It is similar to and partly based on the Server Hop addon for wow (http://mods.curse.com/addons/wow/server-hop).

Credits to Apoc for the Ui window.


Versions
v3.4
- Initial release to this thread
v3.5 - Slight change to how it applies to groups, will now check available roles rather than just applying as dps.
v3.6 - Logs the settings you have to debug easier (no other change)
v3.7 - Fixed GetRealmName method from returning null
v3.8 - Add a jump after second setting, the time is combined with the minuet setting!
 

Attachments

Last edited:
Settings
Search Categories - Use this to pick what you would like to search for, by default it searches only the Custom category that includes groups for things like kazzak that are ideal for realm hopping.

Filters
Auto Invite Only - Allows to only apply to groups with auto invite ticked, allows you to jump faster and hopefully annoy less people.
Max Party Size - Allows you to set the max size the group should be when applying, useful for if you want to quest as raids wont allow for completion of objectives.

Options
Auto Leave After X Minuets - Will automatically leave the group your in after so many minuets, be careful if you leave the plugin on it will leave groups. If you set it too 0 it will disable this function.
Realm Blacklist Timer - This will set a minimum time for each realm you jump to before it is allowed to jump back. So you dont jump from Outland to Outland server for example.
Delay Pulse - Slows down the plugin to improve frame rates in-game, this plugin uses alot of LUA which can cause frame rate problems. The higher you set this the less the plugin will run and the less LUA calls will be made (dosn't impact any other part of the bot).
Leave if your group leader - Simply put if your the leader of the group, it will leave the group :)

Debug

Debug Performance - Logs the time it takes for some of the plugins functions to occur.
Detailed Debug - Log alot more information into the logs from the plugin, if you want help turn this on!
 
Last edited:
same, not working.

[EDITED 19-Jun-2016 by chinajade]: Removed highly-abusive cut-n-paste of log file fragment. Please learn to attach your full log:
Ref: [post=378165][Guide] How to attach your log[/post]
 
Last edited by a moderator:
still not working for me, even with just custom selected for the type of group :(

Ok the last thing i can try is to make it apply for all Available Roles so the lua looks like below.

Code:
local tank, heal, dd = C_LFGList.GetAvailableRoles(); C_LFGList.ApplyToGroup({id}, '', tank, heal, dd);

I have run it again this morning with & without wow addons enabled and both times it was able to repeatedly find groups with this version.

I see you get alot of Russian groups dragonbuddy are you using the Russian client?

Like chinajade has said above, please only post full logs.
 
Well, is there anyway you can make the plugin go for join one group and leave after x minutes, then join another group for more efficient farming?
 
WORKING; my problem was I had v3.4 and my toons are tank spec to farm anything, your v3.5 which I just downloaded and tested on US and EU is working. Thanks so much Nuok :)
 
WORKING; my problem was I had v3.4 and my toons are tank spec to farm anything, your v3.5 which I just downloaded and tested on US and EU is working. Thanks so much Nuok :)

That's so weird, I guess i did only test it on characters with DPS and heal specs tho so it never had any impact for me.

Glad its working again tho :0

[FONT=Verdana, Arial, Tahoma, Calibri, Geneva, sans-serif]
Well, is there anyway you can make the plugin go for join one group and leave after x minutes, then join another group for more efficient farming?
[/FONT]

[FONT=Verdana, Arial, Tahoma, Calibri, Geneva, sans-serif]That's what this does....[/FONT]
 
I did some small changes in your LFGList class. See below

Code:
        /// <summary>
        ///     Gets the players current realm name
        /// </summary>
        public static string GetRealmName
        {
            get
            {
                using (new PerformanceLogger(NSettings.Instance.DebugPerformace, "GetRealmName"))
                {
                    string realm;
                    using (StyxWoW.Memory.AcquireFrame())
                    {
                        string lua;
                        var gi = StyxWoW.Me.GroupInfo;
                        var meLeader = gi.GroupLeader == StyxWoW.Me;
                        if (gi.IsInParty && !meLeader)
                            lua = @"local index = GetNumGroupMembers();
for i = 1, index do
if UnitIsGroupLeader('party' ..i) then
local name, realm = UnitName('party' ..i);
if realm == "" or realm == nil then
					realm = GetRealmName()
				end
return realm;
end
end";


                        else if (gi.IsInRaid && !meLeader)
                            lua = @"local index = GetNumGroupMembers();
for i = 1, index do
if UnitIsGroupLeader('raid' ..i) then
local name, realm = UnitName('raid' ..i);
if realm == "" or realm == nil then
					realm = GetRealmName()
				end
return realm;
end
end";
                        else lua = "return GetRealmName();";
                        realm = Lua.GetReturnVal<string>("return GetRealmName();", 0);
                    }

                    if (NSettings.Instance.DebugDetailed && realm != null)
                        Log($"GetRealmName: {realm}");
                    return realm;
                }
            }
        }

Now it properly works to leave the realm after the set Leave after X minutes
However it will not blacklist already visited realms. In my logs the plugin returns always the same current realm. Before this change it was always returning null
The problem is somewhere inside the GetRealmName Method.
I understand your code but i dont know if the syntax is correct.

Edit: sorry for the bad code format
 
I did some small changes in your LFGList class. See below

Code:
 lua = @"local index = GetNumGroupMembers();
for i = 1, index do
if UnitIsGroupLeader('party' ..i) then
local name, realm = UnitName('party' ..i);
if realm == "" or realm == nil then
                    realm = GetRealmName()
                end
return realm;
end
end";
[/QUOTE]

Only problem is all your returning is your realm not the groups if it fails.
Maybe it always does this if the server is the same. 
Ill add it in tho thanks.
 
Yes but this is somehow returning always my realmname. Even if i lookup the leaders realm and he is on another one. Is there a way to debug a message inside the first 2 Lua-If-Statements?
Maybe posting inside the WoW chat something like this? (i dont know if its dangerous tho^^)
DEFAULT_CHAT_FRAME:AddMessage("The groupleaders realm is: " .. realm)

Edit: I also noticed some way around to avoid getting NIL as the return value.
See this topic on the wow forum http://eu.battle.net/wow/en/forum/topic/12618441939
 
Last edited:
Back
Top