Download
(31 Kb)
Download
Updated: 12/13/21 06:52 PM
Pictures
File Info
Compatibility:
Ascending Tide (7.3.5)
Deadlands (7.2.5)
Waking Flame (7.1.5)
Blackwood (7.0.5)
Flames of Ambition (6.3.5)
Markarth (6.2.5)
Stonethorn (6.1.5)
Greymoor (6.0.5)
Updated:12/13/21 06:52 PM
Created:12/09/17 08:57 PM
Monthly downloads:66
Total downloads:12,479
Favorites:28
MD5:
FCO Mounty  Popular! (More than 5000 hits)
Version: 0.2.7
by: Baertram [More]
IMPORTANT CHANGE - Version 0.0.7
This addon depends on the following libraries:
-LibAddonMenu-2.0
-LibZone

FAQ / Frequently asked questions / Questions fréquemment posées / Oft gefragte Fragen

Attention:
You can manually download the standalone libraries from the links above.
-> Be sure to check the extraction of the zip files! They must NOT create another subfolder in AddOns containing the name of the zip archive itsself! Example:
zip filename: LiBStub_v1_4.zip
Extracted to:
AddOns\LibStub_v1_4\LibStub -> WRONG!
Extracted to:
AddOns\LibStub -> CORRECT!

Or use Minion to download them.

You may need to close and restart the game to recognize the new libraries in the addon manager!
Additional information about libraries and why I have changed my addons to use standalone, and not included libraries anymore, can be found in the general FAQ



FCO Mounty

This addon will give you the ability to change your mount depending on your current location (zone).
e.g. use a camel in the Alik'r desert, and a horse in Stormhaven.


-> If you are looking for a similar addon for pets try out "PetZone"

In addition the addon is able to block your horse training skills. You are able to level only one specific horse training until it's maxed out this way, without clicking a wrong training button by accident.

Features
-Setup your desired mount for a base map zone and for some subzones
Your chosen mount will be used if you do a /reloadui or any other loading screen in the zone.
You need to unmount if you change a zone without a loadscreen/reloadui in order to mount on your desired subzone mount!
-Disable the train feed, train, speed, train carry buttons at the stable.

Usage
Changing your mount via the collectibles is not saving the current mount for the given zone!
You have to open the addon settings via chat command /fcoms (or manually by pressing ESC key, and then navigate to the addon settings of FCO Mounty) and click the button "Current zone".
The zone and subzone (e.g. a city at the current map) will be selected in the dropdowns and you can choose your mount for that zone + subzone now.

If you want to set a mount for the whole zone (map) just change the subzone dropdown to "-ALL-".


The addon will detect a sub-zone change not automatically (only if you do a /reloadui or are coming from a loading screen). So if you are mounted and ride into a new subzone (a city e.g.) it will be recognized if you unmount.
If you are not mounted it will be recognized if you switch your weapons and are not in a fight.

I could implement some more checks but it will be checked quite often then (e.g. via ability events). So for now this should be enough checks.

What zone and subzone am I currently in?
If you want to know if a zone & subzone changed, and what zone & subzone name is currently used, then write the following into your chat and press the return key:
Code:
/script FCOM.zone2Chat()
Or use the chat slash command
Code:
/fcomz
It will show you the zone and subzone name + the map's tile textuire name used to determine the zone and subzone, in the chat. Only if the subzone changed the mount will be changed on unmount as well! If the subzone of a map is always the same you got no way to differ in it and set different mounts This is due to the game's API functions and not an addon problem.

Report missing zone/subZone data directly from the game to www.esoui.com -> FCOMounty -> Bug report?
Added chat slash command
Code:
/fcomr
to report a missing zone or subzone directly to me.
This will only work if you are not in a house or dungeon, if you are on an overland map or a city map (not all cities provide "subzone" names so maybe some cities are named the same in their zone as the overland zone. I cannot change this sorry.
Watch the chat for information if you are standing wrong, the data already exists or not.

If the zone or subzone is not known yet in the FCOMounty data tables:
A popup will open, trying to open a website www.esoui.com and so on... Click yes and it will auto fill in the needed zone data for me into a bug report at www.esoui.com -> FCOMounty bug panel. Send this bug report then and I got all data to add.


Added slash command
Code:
/fcoma
to manually check the current zone + subzone for missing entries and add them to the temporary SavedVariables.
You still need to report those to the addon dev to add them to the addon unless you want to always loose them at possible future updates! Use the chat command /fcomr for further information how to report them and read the addon description's part "Report missing zone/subZone data directly from the game to www.esoui.com ..."

FCOMounty Automatically scans the zone & subZone after a loading screen and adds missing entries to the internal temporary savedvariables. Missing zone&subzone data will be shown inside the chat,a fter that scan, and inside the settings menu as zones or subzones containing a _ and e.g. a suffix like "base"! Please report these missing ones or your saved mounts might be lost again for these combinations once the addon will update the data into the preloaded addon data properly! (e.g. subzone "newsubzone_base" will be changed to "newsubzone" with future addon updates).
Attention: This addon needs the following libraries installed and activated
-LibAddonMenu-2.0
-LibZone

You need to install them as standalone versions!
Check the description for information what a library is, what a standalone library is, what other addons are helping you to see the dependent libraries of an addon, and how you are able to install them properly as a standalone version.


0.2.7 - 2021-12-14
-Updated with new zone data
-Fixed error message at settings for unknown zones/subzones

0.2.6 - 2021-09-16
Fixed nil error upon loading, if SavedVariables contained FCOMounty_NewZoneData table with new found subzones

0.2.5 - 2021-09-16
Updated API, removed older API version
Added more subzones -> Thanks to howellqagan for sending in the collected new subzones!
Fixed a typo

0.2.4 - 2021-08-01
Fixed nil table index at settings "transfer temp SV zonedata to preloaded"

0.2.3 - 2021-08-01
-Updated API
-Added setting to update the -ALL- subzone, if you manually use a mount, too
-Added slash command
Code:
/fcoma
to manually check the current zone + subzone for missing entries and add them to the temporary SavedVariables.
You still need to report those to the addon dev to add them to the addon unless you want to always loose them at possible future updates! Use the chat command /fcomr for further information how to report them and read the addon description's part "Report missing zone/subZone data directly from the game to www.esoui.com ..."

FCOMounty Automatically scans the zone & subZone after a loading screen and adds missing entries to the internal temporary savedvariables. Missing zone&subzone data will be shown inside the chat,a fter that scan, and inside the settings menu as zones or subzones containing a _ and e.g. a suffix like "base"! Please report these missing ones or your saved mounts might be lost again for these combinations once the addon will update the data into the preloaded addon data properly! (e.g. subzone "newsubzone_base" will be changed to "newsubzone" with future addon updates).


0.2.2
Updated API for Blackwood
Added the new Blackwood zones -> Thanks to HowellQagan!

0.2.1
Updated API for Markarth
Added Markarth's The Reak zone -> Thanks to HowellQagan!

0.2.0
Changed mount detection code to use ZOs code of the collectibles manager

0.1.9
-Updated API
-Updated needed LAM version
-Fixed ZOs function returning always 0 even if you own mounts in a collectible subCategory. Removed the check on "mountsOwned" so far which will increase time to scan the mounts but will work for now until this was fixed by Zos, or a workaround was named

0.1.8
-Updated API to Thonestorn
-Needs newest LibZone library 0.6.9, please update!

0.1.7
-Updated API to Greymoor
-Made compatible with and dependend on LibZone version 0.6.8 (mandatory!)
-Added Greymoor Skyrim and underground cavern zone data
-Fixed map tile texture detection to support (hopefully all) map texture names now (thanks to manavortex, Shalikran, sirinsidiator and kyoma)
-Added chat slash command /fcomz to show the current zone info in the chat
-Added chat slash command /fcomr to report a missing zone or subzone directly to me.
This will only work if you are not in a house or dungeon, if you are on an overland map or a city map (not all cities provide "subzone" names so maybe some cities are named the same in their zone as the overland zone. I cannot change this sorry.
Watch the chat for information if you are standing wrong, the data already exists or not.

If the zone or subzone is not known yet in the FCOMounty data tables:
A popup will open, trying to open a website www.esoui.com and so on... Click yes and it will auto fill in the needed zone data for me into a bug report at www.esoui.com -> FCOMounty bug panel. Send this bug report then and I got all data to add.

0.1.6
Updated API
Fixed southern Elsweyr

0.1.5
-Added: More descriptions in the settings and tooltips of settings
-Added on request: Randomize mounts for zone & subZone
Enable the randomize mounts checkbox.
Choose your zone & subZone, choose your mount from the dropdown of mounts.
Click the + button to add them to the randomized zone & subzone dropdown
Select one entry in this dropdown and click the - button to remove the mount again.

If you enable the -ALL-: Use the -ALL- subzone for the mounts, this will also apply to the random mounts!
This means if you enable this setting you need to select the zone and the subzone -ALL- to add (+) or delete (-) the random mounts to the dropdown box.

Random mounts will be selected the same like normal mounts, a few seconds after unmounting or at a zone change or /reloadui then!

0.1.4
-Updated API for Drgaonhold
-Added zone entries for Southern Elsweyr
-Removed unregister for callback of LAM panel created

0.1.3
-Updated API for Elsweyr
-Added zone entries for Northern Elsweyr
-Changed code to work with libraries with or without LibStub

0.1.2
Fixed: lua error message pressing "Current zone" button for missing zone/subzone pairs.
This applies to the mount enhancement settings. If no zone/subzone data is found it will use the current standard ESO settings for this zone/subzone and add it to your settings automatically so you are able to change it.

Added "debug" setting (standard: Disabled).
Only if you enable this setting you will see chat messages about missing zone data. So be sure to enable it if you want to support me and tell me where zone/subzone data is missing. Thank you.

0.1.1
Fixed version number. Should be a string. Thanks Ravenmind!

0.1.0
Fixed lua error message while using "Current zone" button.

0.0.9
-Fixed some other error messages
-Added ##AddOnVersion: to manifest txt file
-The addon will disable itself automatically within dungeons, raid dungeons and delves, if it can detect them, to speed up game loading (as most dungeons do not allow you to mount, and those where you are still able to mount will use your last used mount then).
-Changed the zone determination
-Changed the zone names and subzone names in the settings dropdown boxes to show "client language dependent" entries using LibZone (please download and install this library so the addon will work properly!).
-> Check the addon description about "how to download and install standalone libraries properly".

0.0.8
Fixed error message for unknown zones / subzones.
The chat will show a message about this now.
Feel free to contact me via the addon comments or pm so I can add these zones, if they are needed AND if you can mount in this zone! If no mount is possible then just ignore the chat message please.

0.0.7
Updated API and removed libraries.
You need to install them as standalone versions.
Check the description for information what a library is, what a standalone library is, what other addons are helping you to see the dependent libraries of an addon, and how you are able to install them properly as a standalone version.


0.06
-Updated api to summerset
-Updated libraries: Updated libAddonMenu, removed libMapPins
-Updated: Summerset zone data (Thanks to daxterjax) and some delve subzones

0.05
Added: More zone data which was missing, thanks to: Nighn_9
Added: Function to print the current zone and subzone to chat so you can specify me some information if another zone is "missing" in the addon. Write me a PM or an addon comment with the chat output and I'll add it to the addon.

Chat command:
/script FCOM.zone2Chat()

Example output:
[FCOMounty] Current zone: bangkorai, current subzone: bangkorai_base


0.04
-Added "preset mount option" to set the manually chosen mount from your collectibles as the standard mount for the current zone & subzone. The option is turned off by default.

-Fixed: Changing your mount in the settings for te current zone & subzone will update the settings accordingly and choose the mount for you, so your next ride in the zone will use this mount then
-Fixed: Getting unmounted in combat/unmount in combat will wait until you leave combat to update the mount of the current zone & subzone for you
-Changing the weapons in combat won't update the mount info anymore (better performance)
-Fixed: The stable training "+" button settings will be disabled if you have trained it to the maximum already, or if only 1 training type is left


0.03
-Added option to switch to the currently active zone and subzone in the settings to set the mount for the current zone
-> Use chat command /fcoms to get to the FCOMounty settings

-Reworkd the code to detect a zone change so it's not flooding a "Collectible no ready" message (only will check if the zone or subzone changed)

0.02
-Added events for unmounting, weapon change and switiching to mouse mode (talking to NPCs e.g.).
If you are not mounted and not in combat at this time the current zone will be checked and your desired mount will be prepared
Archived Files (25)
File Name
Version
Size
Uploader
Date
0.2.6
31kB
Baertram
09/16/21 02:55 PM
0.2.5
31kB
Baertram
09/16/21 09:31 AM
0.2.4
31kB
Baertram
08/01/21 10:11 AM
0.2.2
29kB
Baertram
06/06/21 06:14 AM
0.2.1
29kB
Baertram
12/28/20 04:45 PM
0.2.0
29kB
Baertram
08/27/20 04:55 AM
0.1.9
29kB
Baertram
08/26/20 04:02 PM
0.1.8
28kB
Baertram
08/09/20 07:34 AM
0.1.7
28kB
Baertram
05/07/20 04:56 PM
0.1.7
31kB
Baertram
03/14/20 04:46 PM
0.1.5
27kB
Baertram
12/16/19 02:38 PM
0.1.4
25kB
Baertram
10/26/19 12:23 PM
0.1.3
24kB
Baertram
05/19/19 05:15 PM
0.1.2
24kB
Baertram
12/09/18 10:14 AM
0.1.1
24kB
Baertram
12/02/18 08:18 AM
0.1.0
24kB
Baertram
11/30/18 05:05 AM
0.09
24kB
Baertram
11/20/18 03:03 PM
0.08
22kB
Baertram
10/14/18 02:46 PM
0.07
22kB
Baertram
09/20/18 04:16 PM
0.06
64kB
Baertram
05/27/18 11:34 AM
0.05
69kB
Baertram
02/25/18 09:27 AM
0.04
69kB
Baertram
12/17/17 05:47 PM
0.03
67kB
Baertram
12/10/17 02:53 PM
0.02
65kB
Baertram
12/09/17 09:38 PM
0.01
65kB
Baertram
12/09/17 08:57 PM


Post A Reply Comment Options
Unread 07/31/21, 06:35 AM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4912
File comments: 5990
Uploads: 78
Okay, many thanks again for your testing help! If you found now zones to be added send them via email to me:
[email protected]
If you want any special name for the subzone just add a comment - - MySubZoneName for newsubzone009_base behind the line in the SV please


Originally Posted by HowellQagan
Yep, just edited the comment, I restored the original SV but without the ZoneDataManuallyAdded parts and it works fine without those. But when I had existing ones in FCOMounty_NewZoneData, it just bugged out and created a completely new SV as if I was logging in the first time with this addon.

Originally Posted by Baertram
The zoneData is checked for existing entries upon load of the addon.
The ones in FCOMounty_NewZoneData not existing in the preloaded zoneData will be added.
The ones that are meanwhile/allready given will be removed from the table FCOMounty_NewZoneData automatically.
Maybe the rimmen_base subzone was already in the preloaded zone data and was removed due to this automatically.

But the error message kind of confuses me.
If you say all is fine though if you start without any old SV data of manually collected missing zones and subzones, this is a positive news at least
You could try if using standard FCOMounty SV files without any manually added entries will be able to work properly, adding new unknown entries, and even adding them to the preloaded FCOM_ZoenData.lua file and do a reloadui -> should be removed within SV table FCOMounty_NewZoneData then!
Report comment to moderator  
Reply With Quote
Unread 07/30/21, 10:48 AM  
HowellQagan
 
HowellQagan's Avatar

Forum posts: 11
File comments: 437
Uploads: 0
Yep, just edited the comment, I restored the original SV but without the ZoneDataManuallyAdded parts and it works fine without those. But when I had existing ones in FCOMounty_NewZoneData, it just bugged out and created a completely new SV as if I was logging in the first time with this addon.

Originally Posted by Baertram
The zoneData is checked for existing entries upon load of the addon.
The ones in FCOMounty_NewZoneData not existing in the preloaded zoneData will be added.
The ones that are meanwhile/allready given will be removed from the table FCOMounty_NewZoneData automatically.
Maybe the rimmen_base subzone was already in the preloaded zone data and was removed due to this automatically.

But the error message kind of confuses me.
If you say all is fine though if you start without any old SV data of manually collected missing zones and subzones, this is a positive news at least
You could try if using standard FCOMounty SV files without any manually added entries will be able to work properly, adding new unknown entries, and even adding them to the preloaded FCOM_ZoenData.lua file and do a reloadui -> should be removed within SV table FCOMounty_NewZoneData then!
Last edited by HowellQagan : 07/30/21 at 10:49 AM.
Report comment to moderator  
Reply With Quote
Unread 07/30/21, 10:44 AM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4912
File comments: 5990
Uploads: 78
The zoneData is checked for existing entries upon load of the addon.
The ones in FCOMounty_NewZoneData not existing in the preloaded zoneData will be added.
The ones that are meanwhile/allready given will be removed from the table FCOMounty_NewZoneData automatically.
Maybe the rimmen_base subzone was already in the preloaded zone data and was removed due to this automatically.

But the error message kind of confuses me.
If you say all is fine though if you start without any old SV data of manually collected missing zones and subzones, this is a positive news at least
You could try if using standard FCOMounty SV files without any manually added entries will be able to work properly, adding new unknown entries, and even adding them to the preloaded FCOM_ZoenData.lua file and do a reloadui -> should be removed within SV table FCOMounty_NewZoneData then!


Originally Posted by HowellQagan
Oh boy.

So I did that exactly as you wrote it down and logging into the game in a zone/subzone where I had a manuallyadded value in the sv gave me these errors.

Warning: Spoiler


Then I logged out and it removed the rimmen_base part like this:

Warning: Spoiler


Then I logged out and back and I got the same errors with a slight difference in the longer one:

Warning: Spoiler


Then I logged out and it removed the _zoneId entry too from the SV like this:

Warning: Spoiler


I guess it didn't like having those in the SV while it was already in the zonedata or something ¯\_(ツ)_/¯
After it purged those from these couple ui rebuilds it wasn't throwing any further errors.

Originally Posted by Baertram
Warning: Spoiler
Report comment to moderator  
Reply With Quote
Unread 07/30/21, 10:37 AM  
HowellQagan
 
HowellQagan's Avatar

Forum posts: 11
File comments: 437
Uploads: 0
Oh boy.

So I did that exactly as you wrote it down and logging into the game in a zone/subzone where I had a manuallyadded value in the sv gave me these errors.

Warning: Spoiler


Then I logged out and it removed the rimmen_base part like this:

Warning: Spoiler


Then I logged out and back and I got the same errors with a slight difference in the longer one:

Warning: Spoiler


Then I logged out and it removed the _zoneId entry too from the SV like this:

Warning: Spoiler


I guess it didn't like having those in the SV while it was already in the zonedata or something ¯\_(ツ)_/¯
After it purged those from these couple ui rebuilds it wasn't throwing any further errors.

EDIT: actually it fully reset my SV. Lmao.
I restored the original SV but with ZoneDataManuallyAdded removed and now it's fine.

Originally Posted by Baertram
Warning: Spoiler
Last edited by HowellQagan : 07/30/21 at 10:47 AM.
Report comment to moderator  
Reply With Quote
Unread 07/29/21, 01:44 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4912
File comments: 5990
Uploads: 78
Definately a bug then! Will have a look thanks!
Originally Posted by HowellQagan
One last thing: if there is a "ManuallyAdded" zonedata in the SV, it "overwrites" the values in 'FCOM_zonedata', i.e. if there is an update and it adds the new zones automatically upon a visit, then you update the addon to contain the formatted names, it will still display the values stored in the SV instead of the nicely formatted names added to the 'FCOM_zonedata'.
I've changed the SV files as well to use it's own new table without any @accountName or charname atteched:
Code:
FCOMounty_NewZoneData =
{
    ["clockwork"] =
    {
        ["brassfortress_base"] = "brassfortress_base||981",
        ["_zoneId"] = 981,
    },
}
If you test the next version please logout before, backup your SV file FCOMounty.lua, and inside the old SV table containing the new zoneData ["ZoneDataManuallyAdded"] move the entries to a completely new created table at the top level of the file (e.g insert at the 1st line of FCOMounty.lua, above FCOMounty_Settings =):
Code:
FCOMounty_NewZoneData = {
 --contents of ZoneDataManuallyAdded here
-- e.g.
   ["elsweyr"] = 
    {
        ["rimmen_base"] = "rimmen_base||1086",
        ["_zoneId"] = 1086,
    },
}
Remove the old subtables ["ZoneDataManuallyAdded"] everywhere in the settings file then.

The SV file should look like this then:
Code:
FCOMounty_NewZoneData =
{
    ["clockwork"] =
    {
        ["brassfortress_base"] = "brassfortress_base||981",
        ["_zoneId"] = 981,
    },
}
FCOMounty_Settings =
{
    ["Default"] =
    {
        ["@accountName"] = 
        {
...
        },
...
    }
}
This will make the size of the SV shrink as the new zones are not saved per account or char anymore and also sharing the table with me is easier!
Last edited by Baertram : 07/29/21 at 03:23 PM.
Report comment to moderator  
Reply With Quote
Unread 07/29/21, 01:16 PM  
HowellQagan
 
HowellQagan's Avatar

Forum posts: 11
File comments: 437
Uploads: 0
Thanks again.

After the latest update it looks like this after pressing 'Current zone':



I tested it with Elsweyr now (commented it out in FCOM_zonedata.lua), it added the entries to the addon settings without an extra reloadui. The version before this one simply had these two dropdowns show up blank.

I'm a bit confused about the [_zoneId] = 1261 entry question though.

Edit: okay I get it now. After a reload, it saved it into the SV like this now:

Lua Code:
  1. ["ZoneDataManuallyAdded"] =
  2. {
  3.     ["elsweyr"] =
  4.     {
  5.         ["rimmen_base"] = "rimmen_base||1086",
  6.         ["_zoneId"] = 1086,
  7.     },
  8. },

Then the answer is no, there was no ["_zoneId"] in the previous one.

One last thing: if there is a "ManuallyAdded" zonedata in the SV, it "overwrites" the values in 'FCOM_zonedata', i.e. if there is an update and it adds the new zones automatically upon a visit, then you update the addon to contain the formatted names, it will still display the values stored in the SV instead of the nicely formatted names added to the 'FCOM_zonedata'.

If you still plan on adding zonenames manually to the zonedata occasionally, I would consider changing the priority of the displayed names in the addon settings to the zonedata values if it exists and only default to LAM/SV if it doesn't.

Originally Posted by Baertram
Thanks for the test.
Hm, wasn't there any [_zoneId] = 1261, entry at the Blackwood table?
I'll try this myself.

Have added a new LAM settings updater upon opening of the settings menu which should reload the tables and keep them updated that way, each time you open the LAm panel of FCOMounty (after opening it the first time).
Code:
-Added house check
-Update the missing zoneData at event_player_activated
-Updated settings dropdowns with new found zone & subzones (w/o reloadui)
The ALM subzone dropdowns will contain the name of teh subzone (given by the texture name!), a divider | followed by the zoneId
-Removed debug messages
Please re-download and use a bit further. If you find any debug messages still showing (except the ones telling you zonedata was added) please tell me.
Thanks!
Last edited by HowellQagan : 07/29/21 at 01:29 PM.
Report comment to moderator  
Reply With Quote
Unread 07/28/21, 03:35 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4912
File comments: 5990
Uploads: 78
Thanks for the test.
Hm, wasn't there any [_zoneId] = 1261, entry at the Blackwood table?
I'll try this myself.

Have added a new LAM settings updater upon opening of the settings menu which should reload the tables and keep them updated that way, each time you open the LAm panel of FCOMounty (after opening it the first time).
Code:
-Added house check
-Update the missing zoneData at event_player_activated
-Updated settings dropdowns with new found zone & subzones (w/o reloadui)
The ALM subzone dropdowns will contain the name of teh subzone (given by the texture name!), a divider | followed by the zoneId
-Removed debug messages
Please re-download and use a bit further. If you find any debug messages still showing (except the ones telling you zonedata was added) please tell me.
Thanks!

Originally Posted by HowellQagan
Since houses stopped adding themselves and I'm unsure there were any zones missing, I commented out the blackwood zone block from zonedata to test this. That way it was added to the savedvar like this:

Lua Code:
  1. ["ZoneDataManuallyAdded"] =
  2.     {
  3.         ["blackwood"] =
  4.         {
  5.             ["blackwood_base"] = 1261,
  6.         },
  7.     },

And it doesn't show the newly added zone/subzone names in the menu ("empty" option in selected shown upon pressing current zone button) until reloadui but I can still save to it and it remembers the saved value.

Originally Posted by Baertram
Oh yeah thanks for the feedback and the reminder about homes
Please redownload the actual version and test the house again, thanks.

https://github.com/Baertram/FCOMount...ads/master.zip
Attention: Only extract the subfolder FCOMounty to live/AddOns! Do not extract the 1st subfolder FCOMounty-master as well.

Do the new added zones show properly at the settings menu if you click "current zone" then or manually open the dropdown boxes?
Or is a reloadui needed?
Last edited by Baertram : 07/28/21 at 05:36 PM.
Report comment to moderator  
Reply With Quote
Unread 07/28/21, 01:14 PM  
HowellQagan
 
HowellQagan's Avatar

Forum posts: 11
File comments: 437
Uploads: 0
Since houses stopped adding themselves and I'm unsure there were any zones missing, I commented out the blackwood zone block from zonedata to test this. That way it was added to the savedvar like this:

Lua Code:
  1. ["ZoneDataManuallyAdded"] =
  2.     {
  3.         ["blackwood"] =
  4.         {
  5.             ["blackwood_base"] = 1261,
  6.         },
  7.     },

And it doesn't show the newly added zone/subzone names in the menu ("empty" option in selected shown upon pressing current zone button) until reloadui but I can still save to it and it remembers the saved value.

Originally Posted by Baertram
Oh yeah thanks for the feedback and the reminder about homes
Please redownload the actual version and test the house again, thanks.

https://github.com/Baertram/FCOMount...ads/master.zip
Attention: Only extract the subfolder FCOMounty to live/AddOns! Do not extract the 1st subfolder FCOMounty-master as well.

Do the new added zones show properly at the settings menu if you click "current zone" then or manually open the dropdown boxes?
Or is a reloadui needed?
Report comment to moderator  
Reply With Quote
Unread 07/27/21, 03:53 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4912
File comments: 5990
Uploads: 78
Oh yeah thanks for the feedback and the reminder about homes
Please redownload the actual version and test the house again, thanks.

https://github.com/Baertram/FCOMount...ads/master.zip
Attention: Only extract the subfolder FCOMounty to live/AddOns! Do not extract the 1st subfolder FCOMounty-master as well.

Do the new added zones show properly at the settings menu if you click "current zone" then or manually open the dropdown boxes?
Or is a reloadui needed?


Originally Posted by HowellQagan
Tested it, thanks!


I see you also added addZoneToSV, it immediately popped up the debug message when I entered a home, which I found slightly strange since previously FCOM used to ignore homes completely.

>[21:39:39] [FCOMounty]Current zoneName(ID): housing(888), subzoneName: earthtearcavern_base
>[21:39:39] [FCOMounty]Added the new zone 'housing' and subZone 'earthtearcavern_base' . Please still use the slash command /fcomr to report this missing zone + subzone to the author so that others benefit from the data as well

It did not throw errors in the Sacrament area now either.

Thank you!
Last edited by Baertram : 07/27/21 at 03:58 PM.
Report comment to moderator  
Reply With Quote
Unread 07/27/21, 01:53 PM  
HowellQagan
 
HowellQagan's Avatar

Forum posts: 11
File comments: 437
Uploads: 0
Tested it, thanks!

I see you also added addZoneToSV, it immediately popped up the debug message when I entered a home, which I found slightly strange since previously FCOM used to ignore homes completely.

>[21:39:39] [FCOMounty]Current zoneName(ID): housing(888), subzoneName: earthtearcavern_base
>[21:39:39] [FCOMounty]Added the new zone 'housing' and subZone 'earthtearcavern_base' . Please still use the slash command /fcomr to report this missing zone + subzone to the author so that others benefit from the data as well

It did not throw errors in the Sacrament area now either.

Thank you!
Report comment to moderator  
Reply With Quote
Unread 07/26/21, 07:08 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4912
File comments: 5990
Uploads: 78
@HowelQagan

Please test this version here:
Code:
-Updated API
-Updated dependencies
-Added setting to update the -ALL- subzone, if you manually use a mount, too
-Added slash command /fcoma to add the currently opened map's zone and subzone to the data (if missing)
e.g. open the Murkmire map and then navigate to the Deadwater village (north-west) and click it to open the city map, then type /fcoma into the chat and press the return key
It will be added for the next usages then. But if you loose your SavedVariables this data will be gone again! So make sure you report missing data to the author if you want it to be integrated constantly into the addon!
https://github.com/Baertram/FCOMount...ads/master.zip

Attention: Only extract the subfolder FCOMounty to live/AddOns! Do not extract the 1st subfolder FCOMounty-master as well.
Last edited by Baertram : 07/26/21 at 07:09 PM.
Report comment to moderator  
Reply With Quote
Unread 07/26/21, 05:04 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4912
File comments: 5990
Uploads: 78
I've added the new settings checkbox as you had requested and I'm checking the error you got atm.
It was raised in line 360 of FCOMounty.checkAndPresetMountForZone' so it wa snot your addition but my old line:
Code:
--Set the current active mount as new mount now
        FCOMounty.SaveMountIdToSettings(activeMountId, false, zone, subZone, mouseEnhancementData)
You can see that in line 130 where it checks for:
Code:
if zone ~= nil and zone ~= "" and (subZone ~= nil and subZone ~= "" and subZone ~= FCOM_NONE_ENTRIES and subZone ~= FCOM_ALL_ENTRIES) then
-> and subZone ~= FCOM_ALL_ENTRIES
So your addition would never run into that if condition.

So somehow the function was called and skipped the security checks here, which would create the tables properly by themselves:
lines 133ff
Code:
if settings.zone2Mount[zone] == nil then settings.zone2Mount[zone] = {} end
        if settings.zone2Mount[zone][subZone] == nil then settings.zone2Mount[zone][subZone] = {} end
In line 135 the nil error happened so either zone was nil or subZone (I guess this one was nil here) was nil.
You could see that within the error message as well if you expand the lua error message and watch the variables shown, search for zone or subZone
As both were filled, with justice and banditden5_base, and the error says "tried to index a nil value" it tried to index the table settings.zone2Mount there, which somehow was nil.
You can see this in the variables: settings = [table:2]{}
So this is the problem here.
settings.zone2Mount was missing somehow!
> settings.zone2Mount = settings.zone2Mount or {}
should fix it there for the moment


You'll find a test version later on here. Thanks for testing it then!

Originally Posted by HowellQagan
Just got this during a Black Sacrament (Trader's Cove) after that modification I made (exactly the line I added):

Lua Code:
  1. user:/AddOns/FCOMounty/src/FCOM_settings.lua:135: attempt to index a nil value
  2. stack traceback:
  3. user:/AddOns/FCOMounty/src/FCOM_settings.lua:135: in function 'FCOMounty.SaveMountIdToSettings'
  4. <Locals> mountId = 1332, activateMount = F, zone = "justice", subZone = "banditden5_base", mountEnhancements = [table:1]{}, settings = [table:2]{}, doCheckIfActivateMountNow = F </Locals>
  5. user:/AddOns/FCOMounty/src/FCOM_mounts.lua:360: in function 'FCOMounty.checkAndPresetMountForZone'
  6. <Locals> presetMount = T, zone = "justice", subZone = "banditden5_base", savedMountIdForZone = 0, activeMountId = 1332, mouseEnhancementData = [table:1] </Locals>
  7. user:/AddOns/FCOMounty/FCOMounty.lua:108: in function 'func'
  8. EsoUI/Libraries/Globals/globalapi.lua:227: in function '(anonymous)'

I knew it would eventually bite me in the buttocks. I guess it tried to save the mount upon using a collectible, though I'm not sure why if I was in an area that's not supposed to have a mount saved.

I took this small snippet from FCOM_zones.lua and modified it a bit to create a conditional save all (Ln135-139 now):

Lua Code:
  1. local isInDungeon = IsUnitInDungeon("player")
  2. local houseOwner = GetCurrentHouseOwner()
  3. if not isInDungeon or not (houseOwner and houseOwner ~= "") then
  4.     settings.zone2Mount[zone][FCOM_ALL_ENTRIES].mountId = mountId
  5. end

Seems like it worked, at least I couldn't get the previous error in "dungeon" areas.
Last edited by Baertram : 07/26/21 at 05:15 PM.
Report comment to moderator  
Reply With Quote
Unread 07/26/21, 02:59 PM  
HowellQagan
 
HowellQagan's Avatar

Forum posts: 11
File comments: 437
Uploads: 0
Just got this during a Black Sacrament (Trader's Cove) after that modification I made (exactly the line I added):

Lua Code:
  1. user:/AddOns/FCOMounty/src/FCOM_settings.lua:135: attempt to index a nil value
  2. stack traceback:
  3. user:/AddOns/FCOMounty/src/FCOM_settings.lua:135: in function 'FCOMounty.SaveMountIdToSettings'
  4. <Locals> mountId = 1332, activateMount = F, zone = "justice", subZone = "banditden5_base", mountEnhancements = [table:1]{}, settings = [table:2]{}, doCheckIfActivateMountNow = F </Locals>
  5. user:/AddOns/FCOMounty/src/FCOM_mounts.lua:360: in function 'FCOMounty.checkAndPresetMountForZone'
  6. <Locals> presetMount = T, zone = "justice", subZone = "banditden5_base", savedMountIdForZone = 0, activeMountId = 1332, mouseEnhancementData = [table:1] </Locals>
  7. user:/AddOns/FCOMounty/FCOMounty.lua:108: in function 'func'
  8. EsoUI/Libraries/Globals/globalapi.lua:227: in function '(anonymous)'

I knew it would eventually bite me in the buttocks. I guess it tried to save the mount upon using a collectible, though I'm not sure why if I was in an area that's not supposed to have a mount saved.

I took this small snippet from FCOM_zones.lua and modified it a bit to create a conditional save all (Ln135-139 now):

Lua Code:
  1. local isInDungeon = IsUnitInDungeon("player")
  2. local houseOwner = GetCurrentHouseOwner()
  3. if not isInDungeon or not (houseOwner and houseOwner ~= "") then
  4.     settings.zone2Mount[zone][FCOM_ALL_ENTRIES].mountId = mountId
  5. end

Seems like it worked, at least I couldn't get the previous error in "dungeon" areas.
Report comment to moderator  
Reply With Quote
Unread 07/10/21, 05:37 AM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4912
File comments: 5990
Uploads: 78
Thanks for the work, especially after updates and new zones, it's very appreciated
Yep, most probably the additional setting checkbox would just be something that 90% would not need.
I'll make my mind and add your code line then in the future. Currently working on FCOIS.

Originally Posted by HowellQagan
Alright, thank you. My thought process was that it only uses -ALL- if its own option is enabled, so it would only affect people who have both "Use -ALL-" and "Save collectible change" enabled, but the latter only saves to subzones right now so it wouldn't work with "Use -ALL-", meaning if someone has both active they would probably want it to save to -ALL-. But I guess third option works as well, just thought it would be simpler to only add it as an extra save.

edit: after some blundering around, I added this to a new line after Ln360 in FCOM_mounts.lua and it works, it saves to -ALL-. I guess a check could be added to only do this when the option to use -ALL- everywhere is enabled but I'm glad I could even make this work :'D

Lua Code:
  1. FCOMounty.SaveMountIdToSettings(activeMountId, false, zone, FCOM_ALL_ENTRIES, mouseEnhancementData)

Originally Posted by Baertram
Should be possI think. I'll have a look if this would break anything. Could take a while.
But I might need to add another setting just in case someone does not like this to be saved to ALL as well, automatically.
Report comment to moderator  
Reply With Quote
Unread 07/10/21, 04:15 AM  
HowellQagan
 
HowellQagan's Avatar

Forum posts: 11
File comments: 437
Uploads: 0
Alright, thank you. My thought process was that it only uses -ALL- if its own option is enabled, so it would only affect people who have both "Use -ALL-" and "Save collectible change" enabled, but the latter only saves to subzones right now so it wouldn't work with "Use -ALL-", meaning if someone has both active they would probably want it to save to -ALL-. But I guess third option works as well, just thought it would be simpler to only add it as an extra save.

edit: after some blundering around, I added this to a new line after Ln360 in FCOM_mounts.lua and it works, it saves to -ALL-. I guess a check could be added to only do this when the option to use -ALL- everywhere is enabled but I'm glad I could even make this work :'D

Lua Code:
  1. FCOMounty.SaveMountIdToSettings(activeMountId, false, zone, FCOM_ALL_ENTRIES, mouseEnhancementData)

Originally Posted by Baertram
Should be possI think. I'll have a look if this would break anything. Could take a while.
But I might need to add another setting just in case someone does not like this to be saved to ALL as well, automatically.
Last edited by HowellQagan : 07/10/21 at 05:10 AM.
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.