Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
With version 2.0.0 those files were moved to
<WindowsUserFolder>\Documents\PoE-TradeMacro(varies slightly depending on OS version). When you start the script it checks if these files exists in the user folder and if there were any changes made to those files compared to the last script-version. If that's the case these files are updated without overwriting your settings. Before 3.6.0 those files were backed up and overwritten.
This means you won't have to do anything when using/installing a newer version.
It's possible that poe.trade doesn't use CloudFlare protection. The test at script start to check this can give a false positive if the request takes too long. The script should work nonetheless in this case, simply ignore the error message.
The macro gives you quite a lot of feedback on what you can do to resolve issues. It's possible that this will not be relevant, depending on if poe.trade has cloudflare protection enabled or not.
Also, please make sure not to use a cellular hotspot (via your mobile phone), this isn't a guaranteed cause for such an issue but it can be one.
1. Delete your Internet Explorer/Edge cookies (the script can do this for you).
2. Check that your IE security settings aren't low/disabled.
3. Try repeatedly starting the script a few times if the bypass fails.
4. Don't use any proxies, this can cause failing the bypass.
5. Open the settings menu (right-click sytem tray icon) to manually set your cookies (you'll have to refresh them from time to time).
6. Make sure to enable "Scripting" in IE and maybe add poe.trade to "Trusted Sites"(How to).
7. You can also try disabling IE's protected mode. Win 7, IE10 and IE11.
8. Temporarily disable your Antivirus Software/Firewall to make sure it's not interfering. If it does, try adding the TradeMacro folder to the whitelist. Some Security Suites like Comodo may have something like this auto-containment function (or an "active sandbox mode" in general) that may need to be disabled for TradeMacro.
A possible reason for the script not being able to connect to poe.trade is that
lib\curl.exeis being blocked in some way:
resources\tests\curl_test.bat, it generates a
.batfile in a text editor, there are instructions inside. The outfile contents can hopefully show the issue at hand. For a quick simple test you can also try executing
<full path to TradeMacro>\lib\curl.exe -ILk poe.tradein a windows terminal/console.
It should return these response headers:
9. TradeMacro versions after 2.3.4 use cURL for all HTTP requests (poe.trade/Github), so the following information is irrelevant for them. Versions up to 2.3.6 use WinHTTPRequest 5.1 instead. WinHTTP has it's own proxy settings, the default settings don't use any proxy server but this could have been changed on your system. You can check this by opening a windows console window and executing:
netsh winhttp show proxy
If this lists any proxy servers instead of "DirectAccess (no proxy server)" you can reset this proxy.
10. It's very possible that poe.trade doesn't really use cloudflare protection and this error message is a false positive. Cloudflare protection was used once world-wide but is currently only used for a few certain regions. You can run
resources\tests\Test_WinHttpRequest.ahkand take a look at the files in the folder
resources\tests\tests_temp(or go back to #8, using cURL which is relevant after version 2.3.4, the listed reasons below can still be relevant though). The first file is the downloaded Github API page containing some information about TradeMacro releases. The other two files contain the results of the downloaded poe.trade pages (or at least the result of trying to download them via WinHttp). The contents should be the same as when you right click poe.trade in your browser and select to show the pages source code. If you can find the string
cloudflareinstead, the macro downloaded the cloudflare redirect page. Something went wrong.
There are two known issues causing this, related to problems between your router and poe.trade:
- Using a custom DNS server instead of having it set to
Obtain DNS Server address automatically. Checking and changing this is easy, Win7 / Win8 and 10. In this case reset it to automatic retrieval.
- Some of the servers on your way to poe.trade are in a region that triggers CloudFlare protection, possibly with a Captcha challenge. In this case there may not be any known solution aside from using a VPN. If you're satisfied with using TradeMacro with limited functionality you can just ignore these issues. You'll still be able to use all searches that are opened directly in your Browser but you can't use searches that are displaying their results in a tooltip. Using a VPN like hide.me and connecting from a different region can also solve this but it of course is not a good permanent solution unless you're paying for your VPN. But it shows that some server on your way to poe.trade causes this issue. It may be possible to use WinMTR to identify this server by comparing the servers at times when it works and when it doesn't.
Be sure to check if the macro actually works for you despite failing the test connection.
The macro doesn't use any browser for it's searches, it simply pretends to be one. In this case that's Internet Explorer/Edge because it's the easiest to get cookies from. There is currently no support for other browser's since reading those cookies is far more complicated. All browsers cookies are different, so comparing them is useless. Your chrome cookies being different than the automatically retrieved IE cookies is normal and doesn't cause any issues.
You're probably executing/starting the wrong file. The only file to use is
Run_TradeMacro.ahkin the root directory. Nothing else.
You can also try running it as administrator, this should be always the case though.
This error can be related to starting the script by using the Windows File Explorer Quick Access. Starting it via other ways or by a shortcut to the script (using quick access) should work though.
It's possible that you're missing the Visual C++ Redistributables (after a fresh Windows installation for example).
There could be many reasons like poe.trade being down but the first thing you should try is using
Run_only_this.ahkin case you're using
Run_TradeMacro_no_Admin_Elevation.ahk, especially on Win 10. If that doesn't help and you can use the poe.trade website without any problem see if you can find an open issue for your problem or report it. Could also be related to the CloudFlare protection, see #1.
There's a connection test script
resources\tests\Test_WinHttpRequest.ahk, it may be able to show your issue. Using the 32bit version of AHK instead of the 64bit and vice versa could also resolve your issues.
No, you can right-click the scripts icon in your system tray and select "PoE Item Info Settings" to edit both PoE-ItemInfos/PoE-TradeMacros and AdditionalMacros settings.
You can use the advanced search to choose the mods that should be considered. Regarding default search and normal/magic/rare items: The item is sent to poeprices.info to use their pricing using machine-learning algorithms, you'll have to decide for yourself whether the results are good enough and "trustwhorty" for you. Otherwise if you disable this pricing in the settings the default search only considers the item name (Jewels and Flasks) or type (Amulet for example). The following important properties are also considered:
- Item level if it has the highest item level needed for crafting (for example ">= 84" for armour pieces).
- Item sub type if it's a desired crafting base (for example "Hubris Circlet") and has the proper item level.
- Enchantments and corrupted implicit mods.
Ctrl + d: Item name, sockets and links (if 5L/6L) are used. The results have the same corruption state as your item (No/Yes). We also take the item levels needed to 5s/6s an item into consideration. For example excluding items below iLvl 50 if yours is 50+ on Body Armour and 2H bases.
Ctrl + alt + d: In addition to the above you can select the items mods which can have variable rolls and set their min-/max-values. You can also select enchantments and corrupted implicit mods (those are being ignored in the default search).
- The results have the same corruption state as your gem (No/Yes).
- If the gem level is 16 or higher, the level is included as min-level. This can be customized by changing the
- If your gem has quality it is inluded as min-quality and max-quality (exact match). This can be changed to a range (
min-quality = gemQuality - xand
max-quality = gemQuality + x) by editing the
The search only looks for items with the same state as yours (No/Yes) unless you override this logic with the
CorruptedOverrideoptions in the settings menu. Using this forces the search to always use the selected state.
Warning: If you use "Either" or "Yes" the search can't distinguish between normal gems and their vaal counterpart.
If your unique item is fully linked and corrupted and has 3/4 max-sockets the search looks only for fully linked items. This can be disabled in the settings menu.
I heard about some people having problems running the script directly at startup for example via shortcut in the startup folder. One solution to this is using a batch-script (.bat) with the following contents and executing it at startup:cd /D "C:\Full\Path\To\Script\PoE-TradeMacro" start Run_TradeMacro.ahk
It was removed and replaced with a commandline argument, you can still run the script without elevation:
- By making a windows shortcut to
Run_TradeMacro.ahk, right-clicking it and editing it's target field and adding
-noelevationat the end.
- By starting
Run_TradeMacro.ahkvia a batch script (or whatever language you want), for example:cd /D "C:\Full\Path\To\Script\PoE-TradeMacro" start Run_TradeMacro.ahk -noelevation
Quoted from issue #291
Just wanted to follow up with what I found. After some testing and profiling I noticed that anything using Windows DNS resolution was taking a long time, and it seems like the reason was because of an issue with some changes that were made to the way DNS resolution happens when you have multiple interfaces. A number of IPv6 lookups were failing or returning the wrong information (likely due to a VPN connection I have) and resulting in timeouts and failed connections. To solve the issue, I disabled IPv6 completely on the interface and disabled "smart" DNS resolution.
Since then my searches through the TradeMacro have all taken 2-3 seconds tops!
Here's some references for anyone who might experiencing a similar issue:
This issue is very likely related to the Windows Creator Update. In this cause you should be able to solve it by following this guide up to and including disabling Game Monitoring and quickly rebooting. While I'll try to find a better solution I can't guarantee to have any success.
%USERPROFILE%\Documents\PoE-TradeMacro\CustomMacros\customMacros_example.txtexists and is not empty. If it's missing/empty or if in doubt copy the default template file from
<TM Folder>\resources\default_UserFiles\CustomMacros\customMacros_example_dontOverwrite.txtto the user folder while renaming it.
%USERPROFILE%\Documents\PoE-TradeMacro\AdditionalMacros.iniand start the macro again.
Also refer to #20
Try using ctrl + c on the same item or MTX without running TradeMacro or ItemInfo, if it still happens your issue is related to the client itself, not to any macro. If you ever encounter this issue this is most likely the reason, since the macro shouldn't be able to crash the PoE client in any way.
This may be because the script has multiple ways to try determining the default browser, for example by using the one associated with
.html/.htmfiles, which doesn't have to be your systems default browser.
Check if you can reach the poe.ninja website first. If that works, confirm the TradeMacro error message, open the settings menu by right clicking the system tray icon and selecting the corresponding option and look for the "League" setting there. It is possible that the saved value was somehow messed up, changing the league to a different one or selecting one if the field is empty may fix the issue. If this doesn't help look for further support.
Can also be applicable to "Error : target label does not exist" issues.
The script is not able to write files to the user folder, this issue is most likely related to your Security Suite/Antivirus Software preventing Autohotkey to write to your "protected" folders. In this case you have create an exception for Autohotkey. Example for BitDefender by Cano-G.
Delete %Userprofile%\Documents\PoE-TradeMacro\AdditionalMacros.ini and restart the macro.