-
Posts
581 -
Joined
-
Last visited
Reputation Activity
-
iMod got a reaction from reapler in Left click unit
Targeting by guid for vanilla (not tested)
private static readonly object LockTargeting = new object(); public static void TargetUnit(ulong guid) { // Allocate memory for the target guid uint alloc = Memory.WowMemory.Memory.AllocateMemory(8); // Write guid Memory.WowMemory.Memory.WriteUInt64(alloc, guid); // Create asm string[] asm = new string[] { $"mov ecx, {alloc}", $"call {0x489A40}", Memory.WowMemory.RetnToHookCode }; lock (LockTargeting) { // Execute Memory.WowMemory.InjectAndExecute(asm); } // Free memory Memory.WowMemory.Memory.FreeMemory(alloc); }
-
iMod reacted to Seminko in Light's Hope: Elysium realm renamed to Lightbringer - how to batch rename WRobot settings
I have over 100 XML settings files for WRobot. Here's how you can change all of them at once.
Run Windows PowerShell, navigate to the settings folder and do:
Get-Childitem *.xml | foreach { rename-item $_ $_.Name.Replace("Elysium", "Lightbringer") } Enjoy
-
iMod reacted to camelot10 in errors when trying to run bot under product settings
search "how to post logs"
-
iMod got a reaction from Apexx in Plugins and Accept User Keyboard Input
Oh damn i had the same problems y.y thats why i switched over to lua ingame detection. This will be a part for Driodz.
-
iMod got a reaction from Seminko in Warlock keeping multiple targets dotted
Yes i just tried to demonstrate what the expression does in the background. The first one is with expression and the other one without.
-
iMod got a reaction from happiness7 in Alive near mobs by Entry C#. Avoidmobs HB
WoWUnit unit = ObjectManager.GetObjectWoWUnit().OrderBy(u => u.GetDistance2D).FirstOrDefault(u => u.Entry == 1234 && u.IsAlive); replace 1234 with your id you are looking for.
"Not working" means nothing happens or do you get errors?
-
iMod got a reaction from Halfbax in need help installing wow into a different spot.
Copy wow to another location and delete the following folders:
Cache
Interface
Logs
WTF
Utils\cache
Utils\logs
-
iMod reacted to Halfbax in need help installing wow into a different spot.
World of Warcraft is portable. So the easiest way is to copy and cleaning up the copied folder. If you are too lazy for it. I have wrote a batch file for you.
@echo off echo World of Warcraft copy and cleaning up echo. echo. echo A path with spaces has to be inside of two quotes e.g. "F:\World of Warcraft" echo If the path hasnt any spaces you dont need them e.g. F:\wow2 echo WARNING: At the end of the path there is not slash! echo ________________ echo. :: variables set /P source= World of Warcraft source folder: set /P des= Destination path: set xcopy=xcopy /S/E/V/Q/F/H/I/N %xcopy% %source% %des% echo Cleaning up destination folder rmdir /s /q %des%\Cache rmdir /s /q %des%\Interface rmdir /s /q %des%\Logs rmdir /s /q %des%\WTF rmdir /s /q %des%\Utils\cache rmdir /s /q %des%\Utils\logs echo done pause
wow-copy-clean.bat
-
iMod got a reaction from Findeh in Alot of questions about FightClass and API
1. Don't subscribe to events in a loop
2. Don't use delegates if you don't understand them until you did some research about them(just a recommendation)
This looks like you just copied the code without to knowledge what it does you (need) to use it in the initialize method.
Just put it infront of the "While" and you should be fine.
-
iMod got a reaction from Findeh in Alot of questions about FightClass and API
Some event samples
#region Events // Listen to events EventsLuaWithArgs.OnEventsLuaWithArgs += delegate (LuaEventsId id, List<string> args) { #region PLAYER_REGEN_ENABLED if (id == LuaEventsId.PLAYER_REGEN_ENABLED) { Functions.InCombat = false; } if (id == LuaEventsId.PLAYER_REGEN_DISABLED) { Functions.InCombat = true; } #endregion #region MODIFIER_STATE_CHANGED if (id == LuaEventsId.MODIFIER_STATE_CHANGED && args.Count == 2) { // Possible values are LSHIFT, RSHIFT, LCTRL, RCTRL, LALT, and RALT string key = args[0]; // 1 means that the the key has been pressed. 0 means that the key has been released int state = int.Parse(args[1]); // AOE mode if (key == "LALT" && state == 0) { // Set status rotation.AoeMode = !rotation.AoeMode; // Write to chat string message = $"iRotation AoeModes: {(rotation.AoeMode ? "|cFF00FF00On.|r" : "|cFFFF0000Off.|r")}"; Lua.LuaDoString($"print(\"{message}\")"); } // Burst mode if (key == "LCTRL" && state == 0) { // Set status rotation.BurstMode = !rotation.BurstMode; // Write to chat string message = $"iRotation BurstMode: {(rotation.BurstMode ? "|cFF00FF00On.|r" : "|cFFFF0000Off.|r")}"; Lua.LuaDoString($"print(\"{message}\")"); } } #endregion }; #endregion
-
iMod got a reaction from sowelu in check distance
You should not using the index because if there is no chest you will get a out of range exception.
// Search for a chest List<WoWGameObject> chest = ObjectManager.GetWoWGameObjectByyId(123456).FirstOrDefault(); // Found? if(chest != null) { // Open Interact.InteractGameObject(chest.GetBaseAddress); }
-
iMod got a reaction from sowelu in check distance
public class Ninja { private Spell _vanish = new Spell("Vanish"); int chestId = 42; void LookingForTheChest() { if (ObjectManager.Me.InCombat && Lua.LuaDoString<bool>("IsShiftKeyDown()")) { //use vanish. How can send to game some bind like "shift + V"? //sleep 2000 Thread.Sleep(2000); // Cast vanish this._vanish.Launch(); } if (ObjectManager.Me.InCombat == false && _vanish.IsSpellUsable && IsAnyoneNearMe() == false && ObjectManager.Me.IsCast == false) { LootTheChest(); } } void LootTheChest() { //lets check chest, maybe it looted already //if no chest i need to go to the next step } bool IsAnyoneNearMe() { //get mobs around List<WoWUnit> mobsNearMe = ObjectManager.GetWoWUnitHostile(); //anyone near me? foreach (WoWUnit u in mobsNearMe) { if (ObjectManager.Me.Position.DistanceTo2D(u.Position) < 30) { return true; } } // ok, fine, there are no mobs near me, lets check where is patrol foreach (WoWUnit u in mobsNearMe) { //how to check by id? im using DisplayID, dont know what is it, but i hope you will help if (u.DisplayId == 2017 && ObjectManager.Me.Position.DistanceTo2D(u.Position) < 100) { return true; } } //so cool, patrol are so far and no one near me, time to loot the chest return false; } }
-
-
iMod got a reaction from spacecowboy in Private server license
Yes you can. 1 IP at the same time means that you are not able to give your friend the key and both of you can use it at the SAME time because of different IP's.
-
iMod got a reaction from Photogenic in [Solved] How to detect debuff Type ?
This is a C# condition. If you want to use raw lua just take the lua command (the string part) and put it into your lua condition.
EDIT: Nvm reapler still wrote that it is c# code
-
iMod got a reaction from k1ngstire in How to cast a area Spell? Like Starfall
Just set the spell setting "AOE Spell = true"
-
iMod got a reaction from Hapiguy in More Remote functions
You could write a webservice and a plugin as client to control what ever you want to.
-
-
iMod got a reaction from BetterSister in Feral Druid - Using [Regrowth] when it procs for instant cast.
Just add Regrowth twice, one with your normal conditions and the 2nd one with the proc condition
-
-
iMod got a reaction from Kikkass in mailing system bug log
Well this bot has one admin and the community. It takes some time ;) i mean what do you think how many messages he get per day? It must be a mess.
This is not like HB and will never be
I know what you mean but i had to wait like 3 weeks to get an answer and sometimes it takes an hour. It always depends on his free time.
-
iMod got a reaction from reapler in Quest Editor
If you are really interrested in creating a nice quest editor in WPF i could offer my help with it. I still started one but lost the focus since it was damn boring alone. I also could offer some SQL knowledge to parse the informations out of a DB. To get all positions of creatures or npc's is kinda easy and i wrote a c# adapter for it which also can parse the openwow page. This is all stuff i made for fun or to learn some new stuff.
Sample:
-
iMod got a reaction from Lord in AOE Heal spell condition
Spell(ID) not Spell("ID")
You need to read the type the constructor of the class wants.
And spaces are not allowed in variable names
_lightOfTuure = new Spell("Light of T'uure"); OR _lightOfTuure = new Spell(208065); Btw please don't mix the variable style ;) if you start with _justStartWithASmallLetter; -
-
iMod reacted to Mykoplazma in CastSpell improvement
Ok don't wanna be rude but
0x00BD0798 Is static ? If so you need add wow base memory adress to that to work. On panda you need to do that because the base is different each time wow is executed so the final adress will be different. In the code above that thing is not present.