User Tools

Site Tools

en


squatter

Mistah Mikey's Squatter

What it does

Scans all residential areas for available plots, and at your discretion, travels to a chosen plot, and attempts to either buy it by spamming its placard or relocate to it.

  • Has both an auto and manual mode. In auto mode, it will immediately travel to the selected plot. In manual mode, it will allow selection of a desired plot from a list of all available plots.
  • Allows you to specify what kind of plot to buy: Private Individual, or Free Company.
  • Allows you to specify what kind of buying transaction you desire: Purchase or Relocation.
  • Allows you to specify what size plot you'd like to buy: Small, Medium, and Large.
  • Allows you to specify which residential districts to scan: Mist, The Lavender Beds, The Goblet, and Shirogane.
  • Automatically uses speed actions (Sprint, Peloton, Fists of Wind) and mounts in residential areas to get you to the placard as quickly as possible.

You can use Squatter several different ways:

  • As a tool to quickly scan all housing areas for available plots (even in worlds other than your home world).
  • To buy or relocate to an available plot you select (only in your home world).
  • To automatically buy or relocate to the first plot that meets your criteria (only in your home world).

What it does not do

Guarantee you will be immediately successful buying a plot. It can take a LONG time, even with an addon that spams the placard every second to purchase it's plot, before you successfully beat out everyone else doing the same thing. Patience is a virtue. At least in Auto Buy mode, it will continuously attempt to buy other available plots after an unsuccessful attempt. YMMV.

Requirements

You must also download MistahMikeysLib from the store. It's free, of course.

Currently, Squatter supports English, French, Japanese, Chinese. and Korean. All these versions have been verified as successfully buying and relocating plots.

You must ensure FFXIV, Minion, and Squatter are always updated to their latest versions.

You must be eligible to buy or relocate to the type of plot you desire. You can only buy or relocate to plots on your home world. You can only own one private plot and one Free Company plot. No other member of a Free Company that is associated with a plot can buy an additional Free Company plot. To purchase a plot privately, you must have at least one class at level 50, and you must be ranked at Second Lieutenant or above in one of the Grand Companies. To purchase a plot for a Free Company, you must be in the Free Company an have permission to purchase a plot. A Free Company must be at least rank 6 and have at least 4 members for a member to purchase a lot for it. For additional information, please see https://na.finalfantasyxiv.com/lodestone/playguide/contentsguide/housing_land/.

You must be attuned to all the major city aetherytes (Limsa Lominsa Lower Decks, New Gridania, Ul'dah - Steps of Nald, and Kugane).

To enable Squatter to scan for available plots, you must have completed all the following quests, which adds the “Residential District Aethernet” option to each major city's Aetheryte:

  1. Where the Heart Is (Mist)- Lower La Noscea, Ahctkoen – X32,Y20
  2. Where the Heart Is (Lavender Beds) – Central Shroud, Margeria – X21,Y22
  3. Where the Heart Is (The Goblet) – Western Thanalan, Imme – X25,Y24
  4. I Dream of Shirogane (Shirogane) - Kugane, Tsurubami – X12,Y10

They are trivial to complete.

Other addons you allow to run at the same time Squatter is running might cause Squatter to fail. Please ensure that no FFXIVMinon tasks are running, Assist in particular, or things will not go well.

IMPORTANT

Squatter will teleport to each major city's aetheryte to scan its associated residential district for available plots. THIS COSTS GIL. To keep the amount of gil spent scanning reasonable, there is a default 30 minute delay between successive scans of the 4 residential districts, so the gil burn is tolerable. My experience is the plots are for sale for very long periods of time, so it is highly unlikely you will miss an opportunity in 30 minutes. By default, after each successive scan delay, the scan direction reverses, starting with the current aetheryte (see the Serpentine Scan Enabled control below.) This provides a small gil savings by slightly reducing the number of teleports required to scan all residential districts. But, if you want to burn gil like a madman because you don't want to miss a medium or large relocation opportunity, you can change the default interval to whatever you can bear.

Be aware the the relocation feature can cause you to unintentionally spend a lot of gil if you aren't careful. Unlike Purchase transactions, Relocation transactions are guaranteed to succeed if you have the gil required to relocate. Use of Auto Buy in conjunction with Relocate will relocate to the first plot discovered during scanning. It's there for you to use as you wish; please make sure you understand the risks involved.

As with any botting activity that occurs in the open world, misuse of this addon might draw attention to yourself as a botter. I have used it continuously for days without any ill affect, but that doesn't guarantee you won't have an issue. The easiest way to avoid a ban is to not use “Auto Buy” mode - simply do the scan, and select an available plot from the list to buy. Then, when your character arrives at the placard, it is programmed to try to find a random open spot near the placard to park itself, but if it doesn't and winds up parking on top of another player, you can uncheck “Enable”, move your character to an open spot, then check “Enable” again. On the other hand, “Auto Buy” often results in you being the first character at the placard, and given Squatters ability to select an open spot automatically, bad positioning is rarely an issue.

UI

You start Squatter via the FFXIVMinion menu drop down. It's under the “MM's Addons” menu item. Clicking “Squatter” should pop up its UI window. The UI consists of different input areas called tabs. Each tab is described below.

Scanner Tab

This tab generally controls scanning for available plots and the buying process.

Character's Free Company and Plot Associations

The top part of the tab provides information about your Free Company membership and current plot associations. This information is used by Squatter to determine your “eligibility” to acquire a plot, since SoE requires you meet certain conditions. The information is automatically gathered whenever Squatter is loaded or reset. However, because Squatter must interact with FFXIV controls (dialogs) to accumulate this information, it can sometimes fail for a variety of reasons that are beyond Squatter's control. If you see that the information does not reflect your reality, or if you change those associations during the game, you can hit the “Refresh” button and Squatter will attempt to gather the information again. If Squatter is persistently unable to gather this information, it likely means some other addon you have installed is interfering with Squatter's ability to operated the required controls. If you find that Squatter is incorrectly preventing you from acquiring plots you should be able to acquire, then you can check “Ignore eligibility” on the Debug tab to disable all eligibility checks. Please report all such issues on the Squatter discord channel.

When Squatter is in it's Scan Cycle Idle Period (waiting to begin it's next scan of the aetherytes), or if you have no aetherytes selected, you can click on any of your associated plots and it will navigate you to that plot - sort of a poor man's mini-aetheryte. Squatter MUST be enabled for this to occur. Once you arrive at the plot, Squatter will disable itself by unchecking “Enable”. To have Squatter resume scanning, recheck “Enable”.

If you would like Squatter to track the demolition timer for the houses on your associated plots, deselect all aetherytes, make sure Squatter is enabled, then click on the plots you own one by one to travel to them. When you arrive, you MUST enable Squatter again (it is automatically disabled upon arrival.) You don't have to use Squatter to travel to your plots - you can travel to them however you please. Once at the plot, make sure Squatter is enabled, enter your house, and you will see the current time recorded in the Last Visit Date column. Squatter will automatically tell you how many days it's been since that visit date in the Days Since Visit column. The last visit date is saved across logins - BUT - Squatter also will delete this information if it determines you no longer own the plot. This might occur accidentally if, for whatever reason, Squatter is unable to accurately determine your plot ownership, which can occur from time to time. If that happens, simply repeat this procedure for the plots that have NEVER as their Last Visit Date to start the ball rolling again.

The controls on this tab are described below.

Enable, Auto Buy, Create CSV, Reset, and Discord Controls

Enable: When checked, enables Squatter to run. If you disable, reenabling will continue execution from the point you disabled. If you were in the middle of buying a plot and have moved out of the housing area, you must reset to put things back in order.

Auto Buy: When checked, Squatter will attempt to travel to a plot to acquire it automatically.

If you have *not* selected a relocation transaction, all housing areas will be completely scanned before attempting to buy, and the highest priority plot will be purchased (the priority scheme is described later.)

If you *have* selected a relocation transaction, Squatter will immediately relocate to the highest priority plot that meets your criteria (you have enough money and it is the size you've chosen).

Create CSV: When checked, Squatter will create a CSV file containing information on all the plots scanned during a scan cycle. As long as this option is checked, each scan will result in a new file being created. The contents should be self-explanatory; it is pretty much the same data you see in the Discovered Plots List, but it is for EVERY plot in the associated Housing Area. The files exist in <Minion Installation Directory>/Bots/FFXIVMinion64/LuaMods/Squatter/CSVData - the file names are randomly generated. Use the data as you please.

Reset: Resets all settings to their default initial values. You can use this to abort a purchase if you can catch it in time. If you have a current profile set, and Load Current Profile After Reset (Profile Tab) is enabled, then your saved profile values will be loaded. The Reset button will disappear while the reset is in progress, and will reappear when it completes.

Discord Icon: Takes you to the Squatter Discord channel if you need support. Be advised I am in the Eastern Time zone (UTC-05:00).

Transaction Completion Action Controls

Shutdown Game After Buy Success: When checked, if you successfully purchase or relocate to a plot, Squatter will teleport you to the next aetheryte in the scan list and exit the game.

Shutdown Game After Buy Failure: When checked, if someone else acquires the plot you are trying to obtain, Squatter will teleport you to the next aetheryte in the scan list and exit the game.

Buy Success Emote: You can select an emote from the dropdown to be performed when you successfully obtain a plot. “None” is the default.

Buy Failure Emote: You can select an emote from the dropdown to be performed when you someone else obtains the plot you are trying to obtain. “None” is the default.

NOTE

If you use minion to autolaunch the game, be aware it will automatically log you back in after being shutdown. Minion doesn't provide any way to prevent this behavior. If you don't want Minion to automatically log you back in, start the game manually, then manually attach Minion to the game.

Scan Cycle Teleport Controls

Because teleporting costs gil, you have a couple of ways you can control how often Squatter will cycle through your selected aetherytes to scan for available plots. After you have completed scanning all selected aetherytes, these controls allow you to specify how long you will idle before beginning to scan the aetherytes again (the scan idle period.)

Scan Hourly: Determines how scanning resumes when you are in the scan idle period. If not checked, you will resume scanning Scan Cycle Interval minutes from when you scanned the first selected housing area. If checked, you will resume scanning Hourly Scan Cycle Delay seconds after each clock hour, local time. Whenever you change this setting, a rescan of all the selected aetherytes immediately occurs, with the next scan occurring in accordance with the new setting. Important: Make sure you sync your clock if you want your hourly scan to be reasonably precise!

Scan Cycle Interval (minutes): The number of minutes Squatter will delay between successive scans for available plots. It is 30 minutes by default, but you can set this to whatever you like. The base time to compute the deadline for starting the next scan cycle is the time the first selected aetheryte is scanned. So, for example, if it takes 2 minutes to scan all the aetherytes, and you've set Scan Cycle Interval to 5 minutes, scanning will resume in 3 minutes. You will see this control only when Scan Hourly is not checked.

Hourly Scan Cycle Delay (seconds): The number of seconds after each clock hour Squatter will resume scanning. You will only see this control only when Scan Hourly is checked.

Scan Idle Period Remaining (minutes): When you are in the Scan Idle Period, this will count down the number of minutes remaining until the next scan cycle is started.

Scan Now: When you in the scan idle period, clicking this will immediately resume scanning. You will only see this control during the scan idle period.

Scan Idle Postponement Period (minutes): The number of minutes Squatter will delay before entering the Scan Idle Period. Setting this value > 0 will cause Squatter to continue to scan for the number of minutes specified before it enters the Scan Idle Period. This is most useful when Scan Hourly is checked, because plots typically do not come available precisely on the hour, and may actually show up a few minutes after the hour.

Scan Idle Postponement Period Remaining (minutes): The number of minutes remaining in the Scan Idle Postponement Period. You will only see this control when the Scan Idle Postponement Period is active.

Delay Between Scans: When checked, Squatter will delay before teleporting to the next aetheryte to scan. The time delayed is randomly selected from the interval [Min Scan Delay, Max Scan Delay]. This will cause Squatter to linger on the Select Residential Ward control before closing it to teleport. If you use this when Target Aetherytes is checked, the current aetheryte will remain targeted until you teleport.

Min Scan Delay (seconds): The minimum amount to time to delay before teleporting to scan.

Max Scan Delay (seconds): The maximum amount to time to delay before teleporting to scan.

Idle in Room: Allows you to select an inn room or grand company barracks to enter when Squatter idles your character. This feature takes precedence over the “Idle at Random Aetheryte” and “Idle at Random Aethernet” features (described below.) If you have any available rooms (inn room or a grand company barracks), the “Idle in Room” pull-down will appear, and the “Idle at Random Aetheryte” and “Idle at Random Aethernet” will not be shown. On the other hand, if you don't have any available rooms, then the “Idle at Random Aetheryte” and “Idle at Random Aethernet” will appear, and the “Idle in Room” pull-down will not be shown. Be aware that both inn rooms and grand company barracks must be unlocked via various quests - for inn rooms, have a look at https://ffxiv.consolegameswiki.com/wiki/Inn_Rooms, and for grand company barracks, have a look at https://us.millenium.gg/guide/24362.html. The “Idle in Room” pull-down entries are the cities where the inn rooms reside or the grand company where the barracks reside.

If you select “None” for “Idle in Room”, then your character will remain at the next aetheryte to be scanned during the Scan Idle Period, but when you make successful plot acquisition, Squatter will always teleport your character out of the housing area to a random aetheryte.

Idle in Random Room: When checked, Squatter will take you to a random entry in your room list (see Idle in Room, above) if you have at least two rooms. If you do not have at least two rooms, this control will not be shown.

Idle at Random Aetheryte: When checked, Squatter will teleport you to a random attuned aetheryte that is not one of the 4 major cities during the scan cycle idle period. Squatter will always do this automatically when you successfully purchase or relocate a plot (it will also automatically disable Squatter by unchecking the Enable checkbox.) If you don't have any attuned aetherytes other than the major cities, it fill fall back randomly to one of them. This only appears if you have don't have access to any inn rooms or grand company barracks

Idle at Random Aethernet: When checked, Squatter will teleport you to a random aethernet that is in one of the 4 major residential areas during the scan cycle idle period. Squatter will always do this automatically when you successfully purchase or relocate a plot (it will also automatically disable Squatter by unchecking the Enable checkbox.) This only appears if you have don't have access to any inn rooms or grand company barracks

Randomize Scan Start: When checked, Squatter will begin scanning at a randomly selected entry in the Housing Area Scan List in a randomly chosen direction (forward or backward). The chosen entry serves as the anchor for determining when the Scan Cycle Idle period occurs, which is when the scan wraps around to the start point.

Serpentine Scan: When checked, Squatter will use serpentine ordering for traversing through the Housing Area Scan List. Serpentine ordering means Squatter will reverse direction after each scan cycle completes, eg, 1 2 3 4 4 3 2 1 1 2 3 4 …. If not checked, then circular ordering is used, eg, 1 2 3 4 1 2 3 4 …

Block Trades: When checked, when any other player tries to trade with you, Squatter will immediately cancel the trade. You are able to initiate trades without them being canceled.

Target Aetherytes: When checked, Squatter will target the aetheryte before scanning so others will see you interacting with it.

Change Position During Idle: When checked, this is cause your character to periodically move to random positions around the Aetheryte. The time between moves is randomly generated from the Base Loiter Duration.

Base Loiter Duration (minutes): The time between moves is generated randomly in the interval [.5*Base Loiter Duration,1.5*Base Loiter Duration]. This value is limited to be between 2 and 10 minutes.

Minutes until Next Change: This control counts down the time until the next move will occur.

Housing Area Scan Criteria Synchronization Controls

These controls affect how changes to the controls in the housing areas comprising the Housing Area Scan List (described next) work. If they are checked, then changes to the corresponding housing area control will be made to ALL housing area entries. If they are not checked, the changes only apply to the corresponding housing area control.

Sync Divisions To Scan: If checked, changes to the Divisions to Scan control will affect all housing area entries.

Sync Plot Type: If checked, changes to the Plot Type control will affect all housing area entries.

Sync Transaction Type: If checked, changes to the Transaction Type control will affect all housing area entries.

Sync Plot Size: If checked, changes to the Plot Size Filter controls will affect all housing area entries.

Sync Grade: If checked, changes to the Grade Filter controls will affect all housing area entries.

Housing Area Scan List

The housing area scan list controls how Squatter scans housing areas (surprise!) and, for each housing area, the top level filter criteria for the plots it will attempt to acquire within that housing area. There are currently 4 entries in this list, one for each of the housing areas currently in the game. Squatter will visit the city aetherytes associated with each housing area in the list to scan for available plots. By default, the visitation order is serpentine. Squatter chooses 1) which entry will be the first one scanned, which acts as the anchor for determining when the Scan Idle Period begins, and 2) the direction the entries will be visited (forward or backward). When the scan wraps around to the first entry, Squatter enters the Scan Idle Period (delay until Squatter will resume scanning), and when it resumes scanning, if serpentine scanning is enabled, it will go in the opposite direction. By default, Squatter chooses the leftmost entry to start the scan and the forward direction. If you check “Randomize Scan Start”, Squatter will randomly chooses the first entry to scan and direction. So you have some idea of where Squatter is in the scanning process, it color codes the current entry being scanned (green) and the next entry to be scanned (cyan); the “enabled” checkbox for the first entry is green.

For each entry in the housing area scan list, you can specify the following housing area-specific criteria by using the following controls:

Housing Area Control

Drop down that allows you to set the housing area for its list entry. You can set these however you like to create whatever visitation order you desire. Be aware, Squatter does not enforce any rules on how you do this - you can set them all to the same housing area if you like, and Squatter will visit the same aetheryte 4 times. It's completely up to you.

Enable Housing Area Control

If checked, the housing area list entry will be included in the scan. The checkbox will be green for housing area Squatter chooses to start the scan.

Divisions to Scan Control

Drop down that allows you to select one of the following:

Both Divisions: Squatter will scan both the Main Division and the Subdivision (60 plots)

Main Division Only: Squatter will only scan the Main Division (30 plots)

Subdivision Only: Squatter will only scan the Subdivision (30 plots)

Plot Type to Acquire Control

Drop down that allows you to select one of the following:

Private: Select this if you wish to acquire a private plot. (Cannot be changed when Plot Status is Buying or Relocating)

Free Company: Select this if you wish to acquire a Free Company plot. (Cannot be changed when Plot Status is Buying or Relocating)

Plot Transaction to Apply Control

Drop down that allows you to select one of the following:

Purchase: Select this if you wish to buy the plot. (Cannot be changed when Plot Status is Buying or Relocating)

Relocate: Select this is you wish to relocate to the plot. (Cannot be changed when Plot Status is Buying or Relocating)

Plot Size Filter Controls

(S)mall, (M)edium, and (L)arge: Check the ones you wish to have Squatter check for availability. Note: only available plots with the size(s) you select will be shown in the Discovered Plots List.

Grade Filter Controls

1 through 5: Check the ones you wish to have Squatter check for availability. Note: only available plots with the grade(s) you select will be shown in the Discovered Plots List.

Discovered Plots List

A scrollable list of plots discovered during scanning. Each line contains the following information:

Status Buying You are in the process of attempting to buy the plot
Relocating You are in the process of attempting to relocate to the plot
Purchased You bought the plot
Relocated You relocated to the plot
Available The plot can be purchased
Available- The plot can be purchased, but you are ineligible
Aborted Acquisition of the plot was manually terminated
Sold Someone else bought a plot you were trying to buy
Owned You or your Free Company owns the plot
Shared You are sharing a Private plot with another owner
Housing Area Town where plot is located
Ward Number Ward in which plot is located
Plot Number The plot being targeted
Size S (small), M (medium), L (large)
Grade A number (1-5) that indicates what the initial price of the plot will be when it first comes on the market, and thus corresponds to its “desirability” (1 being the most expensive and desirable)
Owner The name of the person or Free Company that owns the plot OR
Price Gil required to buy plot (if status is Available, Available-, Buying, or Relocating)
Discovery Time Local time when you detected the plot was available. This time is persistent and is restored, if warranted, whenever Squatter scans after a restart or reset.
Hours Since Discovery Time that has elapsed since Discovery Time
Hours At Placard Fractional number of hours you have spent at the placard trying to buy the plot

Clicking on an Available plot when another plot is not currently being acquired will cause Squatter to immediately try to acquire that plot.

Clicking on an Available plot when another plot is currently being acquired results in a popup that allows you to abort the current acquisition and immediately try to acquire that plot.

Clicking on Buying or Relocating plots results in a popup that allows you to abort the acquisition.

Clicking on Aborted plots changes their status back to Available.

Clicking on Available- plots results in a popup that provides the reason for your ineligibility.

Clicking on Sold plots will remove them from the list.

Clicking on anything other plot status value does nothing.

The list is sorted by Plot status, in the following order: Buying, Relocating, Purchased, Relocated, Available, Available-, Aborted, Sold, Owned. The secondary sorts fields are Housing Area, Ward Number, and Plot Number.

NOTE

If a plot you are visiting is purchased or relocated by someone else, or you are successful purchasing or relocating to it, you will be automatically teleported out of the housing area. If Idle at Random Aetheryte is not checked, you will be sent to the next aetheryte in the scan rotation; otherwise, Squatter will send you to a random attuned aetheryte. After teleporting, Squatter disables itself, so you can see the result and change settings appropriately if you desire (say, to now relocate to a bigger plot than the one you might have just bought.)

Targets Tab

The Targets Tab allows you to prioritize what plots Squatter tries to purchase.

Enable Targets: when checked, enables target prioritization; you are prohibited from checking this if you haven't entered some targets for Squatter to consider. When unchecked, Squatter will try to acquire any plot that becomes available.

Only Acquire Targets: when checked, Squatter will ONLY try to acquire your targeted plots; if other plots become available, they will be ignored. When unchecked, if Squatter does not find a targeted plot, it will try to acquire untargeted plots as well.

You enter a target plot using the Priority, Housing Area, Ward No, and Plot No fields, then add it to the target list using the Add button. The Priority value is a number (can be float) that is used to order the target list. Larger priority values indicate higher priority. If you want to change the priority of an existing target, simply enter its housing area, ward number and plot number along with the new priority value and click Add.

The Ward No and Plot No can be set to zero to act as a wildcard in the plot targeting. So, if you want to target any plot in ward 17, you would enter a plot number of zero. Likewise, if you want to target plot 10 in any ward, you would enter a ward number of zero. If both ward number and plot number are zero, Squatter will target all plots in all wards within that Housing Area - you can use this to prioritize the housing areas within which Squatter will attempt to acquire plots.

You can delete plots from the target list by checking them in the Selection column and clicking the Delete button. You can select/deselect them all by using the checkbox at the bottom of the Selection column.

Keep in mind, priority really only comes into play when you are engaged in a purchase transaction. Only then does Squatter have a full view of everything that is available and can then select your highest priority purchase. Relocation transactions will still occur immediately, so in that case, the first targeted plot encountered will always be acquired. For relocations, you likely want to ensure Only Acquire Targets is checked, since if it is not, Squatter will also relocate to untargeted plots that it encounters before any other targeted plots.

Also, this feature is intended for use when Auto Buy is checked on the Scan Tab - otherwise, it really doesn't do anything at all. It does not filter the available plot list to only show targeted plots. This design decision was driven by the fact that normally there will only be a few available plots up at any given time, so the effort associated with adding in the filtering behavior is not warranted.

All of the settings on this tab can be saved in your profile. So if you want different target lists, you can create different profiles to hold them.

Timing Tab

The Timing Tab is provided to help tune Squatter's ability to interact with the controls that govern plot buying and relocation.

At the top of the tab is a pull down, Set Game FPS, that can be used to modify the FFXIV in-game FPS settings that are available on the System control. Just like that control, you can set the FPS to unlimited, 30, 15, or 7. This is most useful when you are running multiple instances of the FFXIV client on the same computer. You can use the setting to reduce the graphics processing load on certain clients to, say, improve performance on another client you are using to spam placards.

Below the Set Game FPS pulldown is a table that contains timing parameters that are critical to Squatter's placard spamming performance. There are 4 entities Squatter must interact with to acquire a plot: The Plot Placard, the Purchase Land control, the Landowner Selection control, and the Purchase Yes/No control. The Plot Placard sits just outside the plot and is what the player interacts with to begin a plot transaction. Clicking on the Plot Placard causes the Purchase Land control to display. From there, clicking the Purchase Land button will either cause the Landowner Selection control or the Purchase Yes/No control to display, depending on what options are available to you to purchase a plot according to your current plot ownership status. If you own no plots and are not in a Free Company, you will be presented with the Purchase Yes/No control to authorize purchasing a private plot. Otherwise, the Landowner Selection control will display, which then allows you to select the type of transaction you want, again dependent on your current plot ownership status: private plot purchase, free company plot purchase, private plot relocation, or free company plot relocation. Once you click on the desired transaction type, you are presented the Purchase Yes/No control to authorize the selected transaction.

Each of these entities requires communication with the FFXIV server and is therefore affected by your network's current latency and your host's current CPU utilization. Attempting to interact with a control before it is ready - i.e., completely initialized - results in a failure that must then be timed out and retried. To manage the timeout process, two timing parameters are associated with each entity, both in milliseconds: the Total Timeout (total time before failure is declared by Squatter), the Interim Timeout (time delay before Squatter will retry the operation being performed if it hasn't yet succeeded.) The Total Timeout should be a multiple of the Interim Timeout. So, for example, if you have a 2 second Total Timeout, an Interim Timeout could be 200ms, meaning if Squatter doesn't successfully complete its intended operation within 200ms, the operation will be redone up to 10 times until the 2 second Total Timeout is exceeded. Note that these retries are idempotent - that is, they have no impact on the FFXIV server if it is currently executing the prior operation. The default timing values provided work for most normal network latency and CPU utilization situations. However, if your situation requires something different, these parameters can be adjusted to tune Squatter's use of these entities so that you can mitigate the frequency that timeouts occur. By setting “Spam” Debug level in the Debug Tab, you can get information in the Minion Console Log that will tell you what entities are timing out, giving you a clue as to the correct timing parameters to adjust. The bottom line: this is an advanced feature that is best used in consultation with Squatter support, but you are free to use it yourself if you wish.

To give you an idea of how well your timing parameters are working, performance statistics are provided: Success Rate (total successful entity interactions/total entity interactions), Min Time, Avg Time, and Max Time (minimum, average, and maximum times required to successfully interact with the entity.) If your success rate is consistently 100%, then your parameters are working well - you might even be able to adjust them downward to increase the rate at which you “spam” the placard. If any are consistently below 100%, then those entities' timing parameters might need to be adjusted upwards to reduce failure retries. Additionally, if you are worried that you might be spamming the placard too fast, you can use these parameters to slow down the spamming process to whatever you are comfortable with.

A timing issue associated with the Plot Placard control can result in your character slightly moving as the placard is targeted. For the final plot purchase request to be accepted by the server, the placard must be specifically targeted by your character. Because answering the Yes/No control to make the purchase removes the character's target, it must be retargeted on each purchase failure. This repeated retargeting, if done too slowly, can make your character appear to move a little from time to time - a small head bob or shoulder turn. If you experience this, tuning the Plot Placard timing parameters can eliminate it under normal network latency conditions. For example, for good connections, setting the Total Timeout to 1000 and Interim Timeout to 25 results in no discernable movement of your character from other players. This will typically result in the Plot Placard failure statistics to rise, and you'll see some error messages in the console log, but that's not problematic to Squatter's ability to purchase the plot. If you don't want to see the time out error messages, deselect the error debug message level on the Debug Tab. If you want to tune the placard interaction so failures occur less often, you can increase the Total Timeout to be a little larger than the average placard response time.

Movement Tab

The Movement Tab allows you to control what kind of movement speed Squatter will use to run your character to the placard in the housing area. There are two types of movement speed enhancements that are used: running speed actions and mounts. Running speed actions include Sprint, and if you use the right character, Peloton and Fists of Wind. These are invoked as they are available when the distance you must move is fairly short as indicated by the Mount Cutoff Distance. When the distance is longer than the Mount Cutoff Distance, a selected or random mount will be used to travel that distance. The controls on this tab are:

Enable Speed Actions: When checked, Squatter will attempt to use speed actions (Sprint, Peloton, Fists of Wind) whenever they are available and it is appropriate. The mount will take priority if the cutoff distance requirement is met.

Speed Action Cutoff Distance (yalms): The distance above which Squatter will use Speed Actions to move your character.

Enable Mount: When checked, Squatter will attempt to use a mount whenever one is available and it is appropriate.

Mount Cutoff Distance (yalms): The distance above which Squatter will use a mount to move your character.

Mount Selection: A list of mounts from which you can chose one to use whenever a mount is needed to run that long distance to the placard. Be aware that this list, due to limitations in Minion, contains more mounts than you really own. So be sure you pick one you can actually use, or you'll be legging it out over those longer distances.

Select Random Mount: When checked, Squatter will randomly pick an available mount that you own to run to the placard. This overrides your Mount Selection.

This feature is only really useful when you are doing relocations. Getting to that medium or large plot you've been drooling over for months ASAP is paramount. Getting to a plot first for a purchase isn't all that compelling since you'll be there for hours anyway. Be aware, if you enable the Minion speed enhancements, you can get there even faster. Just don't go crazy.

Notifications Tab

The Notification Tab allows you tell Squatter to send an email to a desired recipient email account using a desired sender email account. The events for which Squatter sends a email are: Available plots are discovered during scanning, a plot transaction is initiated (either via AutoBuy or clicking on a desired available plot), a plot transaction succeeds (you acquired the plot), or a plot transaction fails (someone else acquired the plot.) Note: these notifications do not occur when Test Mode or Demo Mode is selected, but you can send a test notification if you wish. The controls on this tab are:

Notifications Enabled: When checked, enables notifications to be sent.

To Email Address: The email address to which notifications will be sent.

From Email Address: The email address from which notifications will be sent.

Email User Account: The user account name on the email system used to send notifications.

Email User Account Password: The user account password of the Email User Account.

Smtps Mail Server Url: The Url of the mail server being used to send emails. The default is for gmail, but you can use others if desired.

Send Test Notification: Clicking this will send a test notification email according to your entries above.

Notification Sent: The total number of notifications sent during this squatter session.

Last Notification Send Error: The output of the command used to send the email if there is an error to help you identify the problem. “No Error” means the command sent the email without experiencing any immediate error.

Profile Tab

The Profile Tab allows you to persistently store most of Squatter's settings. The profile settings are stored in files unique to the character and game language used to create the profile. You can create as many profiles as you like. The controls on this tab are:

Load Current Profile After Reset: When checked, if you hit Reset on the Scanner Tab, or when Squatter is loaded when you start Minion, after all settings are initialized to their default values, the saved settings in your current profile are loaded.

Current Profile Name: The settings file you selected to be the current profile being used by Squatter.

Load: Load all settings from the current profile.

Save: Save all settings to the current profile.

Add New Profile: The name of a new profile you wish to add (must be a valid file name).

Add: Create the new profile and save all current settings to it.

The table is a list of all the profiles you have created for the current character and game language. Using the “Selection” column, you can select specific profiles for the operations Delete or Make Current. Obviously, only one profile at a time can be made current, so you can only select one for that operation, but you can select as many as you like for the Delete operation. You can select/deselect all profiles by using the checkbox in the operation row.

Debug Tab

This tab is primarily intended for use in conjunction with consultation with Squatter support. It enables various test scenarios and debugging information that are used to help diagnose issues that might occur during Squatter's operation. The controls on this tab are:

Enable Log file: When checked, Squatter will create a unique log file for your session. This only needs to be checked if you are told to do so by Squatter support.

Enable Timestamp: When checked, Squatter will include the current tick count in the debug messages. This provides information that facilitates debugging timing issues.

Debug Message Level Settings: Squatter's debug message system implements a simple filtering mechanism that can be used to allow or inhibit certain message classes, generally in increasing order of verbosity. The default settings are fairly “quiet”, but Squatter support may ask you to enable more verbose settings to gather diagnostic information for investigating issues.

Demo Mode: When checked, Squatter will simulate randomly available plots and available gil so you can see how it generally works. Of course, it can't simulate the actual placard spamming, as the placard must be in the “For Sale” state for that behavior to be available.

Test Mode: When checked, Squatter will mark every placard in the first ward of each selected housing area as “Available”. Used in conjunction with “Auto Buy” enabled, it allows verification that there are no floor mesh issues preventing navigation to the placards. Without “Auto Buy” enabled, you can click on specific problem children and subsequently use the Navigation addon to remesh where needed.

Ignore Eligibility: When checked, Squatter will ignore eligibility issues for available plots and always mark them as available (and therefore will attempt to buy them if you have checked AutoBuy or click on them.)

Plot Acquisition Priority Scheme For Auto Buy

Because there are a number of ways to acquire a plot using Auto Buy, a priority scheme is implemented. The way this scheme works is as follows:

1. Squatter will only attempt to acquire plots that meet your top-level selection criteria: checked Housing Areas, selected Divisions To Scan, and checked Plot Sizes. It will ignore any available plots that do not meet these criteria, and they will not appear in the Available Plots list.

2. Squatter will always go after Available plots you click on first (this is true regardless of your Auto Buy state.)

3. If you are in the scan active phase, and you've specified a relocation transaction for a housing area, then Squatter will immediately attempt to acquire the first available targeted plot in that housing area it encounters (See the Targets Tab.) If no targets match and you've not checked Only Acquire Targets, Squatter will immediately relocate to the first available plot it encounters.

To repeat, while scanning, if a relocation transaction is enabled, Squatter will attempt to relocate to the FIRST acceptable plot it encounters. This may not be (and probably won't be) the highest priority plot in your targets list, nor the highest priority untargeted plot you could relocate to. Squatter can only provide that additional discrimination during the scan idle period, when it has a full view of all the plots that are available.

4. If you are in the scan idle period, then Squatter will attempt to acquire the highest priority targeted plot it encounters (See the Targets Tab.) if no targets match and you've not checked Only Acquire Targets, then Squatter will attempt to acquire the the plot it deems as having been on the market the longest. This determination is somewhat complicated and includes considerations for initial plot prices and the time since Squatter discovered a plot became available. The goal is to get you at a plot that you can buy the quickest - the longer a plot has been on the market, the shorter the amount of time you will likely need to spend at it spamming its placard. When there are multiple plots available, this scheme tends to maximize your ability to acquire plots over time, as you won't be wasting time at a plot that just came on the market if others have been on longer, thereby potentially missing buy opportunities.

If more than one plot has the same highest priority (i.e, Squatter believes they have been on the market the same amount of time), Squatter will attempt to acquire the one that has lowest price.

Support

For support or requests, please contact me on discord: https://discord.gg/4fdbD8G. I will respond as soon as I am able, generally within 24 hours at most.

When you need support, please provide me, at a minimum, the following:

  1. A screen shot of your Minion Console Log when the problem occurs
  2. A screen shot of your Squatter Scanner tab

If you post this information to the specified channel, please ensure it does not contain any information that identifies your account, character, or server. For complete anonymity, just DM it to mistahmikey#4073.

If that initial information is insufficient for me to determine the cause, I will ask you to set other debug settings that will provide more information. Squatter has been very stable after many months of use, but it is also a very complex piece of software, and can be negatively affected by a number of factors over which I have no control, not the least of which is what other addons you run. I appreciate your patience in working with me to solve your issue when it is not slam-dunk easy. As long as you are willing to try the debugging measures I request, I will work with you until your problem is solved.

squatter.txt · Last modified: 2021/10/03 13:25 by mistahmikey