Go to Page... |
Updated: | 04/22/24 11:50 AM |
Created: | 03/21/21 11:05 AM |
Monthly downloads: | 145 |
Total downloads: | 5,141 |
Favorites: | 23 |
MD5: |
![]() |
Comment Options |
tiker |
View Public Profile |
Send a private message to tiker |
Send email to tiker |
Find More Posts by tiker |
Add tiker to Your Buddy List |
f1rex |
View Public Profile |
Send a private message to f1rex |
Send email to f1rex |
Visit f1rex's homepage! |
Find More Posts by f1rex |
Add f1rex to Your Buddy List |
![]() |
|
Forum posts: 0
File comments: 32
Uploads: 0
|
Another thing I noticed but have checked yet...
The latest version is supposed to detect and not add duplicate events. That means that the manual option to remove duplicate events should do nothing (assuming that the latest version is the only version ever used). However, even if the latest version is the only version used, the manual button to remove duplicate events still removes some entries. That means that the automatic and manual duplicate event checking functions are behaving differently. I haven't had time to figure this out yet. |
![]() |
![]() |
tiker |
View Public Profile |
Send a private message to tiker |
Send email to tiker |
Visit tiker's homepage! |
Find More Posts by tiker |
Add tiker to Your Buddy List |
![]() |
||
|
|
|
![]() |
![]() |
f1rex |
View Public Profile |
Send a private message to f1rex |
Send email to f1rex |
Visit f1rex's homepage! |
Find More Posts by f1rex |
Add f1rex to Your Buddy List |
![]() |
|
|
Until another way is implemented, what's the best way to delete entries right now?
|
![]() |
![]() |
NeuroticPixels |
View Public Profile |
Send a private message to NeuroticPixels |
Send email to NeuroticPixels |
Visit NeuroticPixels's homepage! |
Find More Posts by NeuroticPixels |
Add NeuroticPixels to Your Buddy List |
![]() |
||
|
If you have idea how you see batch-deletion functionality, please share it. I mean interface of course Thank you |
|
![]() |
![]() |
f1rex |
View Public Profile |
Send a private message to f1rex |
Send email to f1rex |
Visit f1rex's homepage! |
Find More Posts by f1rex |
Add f1rex to Your Buddy List |
![]() |
|||
|
You can use LibCustomMenu and add a right click context menu to the entries at the list.
Filtered rows could be deleted then. Or you add a keybind to delete "all currently shown" (filtered) rows? Depending on the list type: If you add checkboxes to each entry of the list (as a new first column) one could mark multiple ones and then right click -> Delete checked If the list type is a zo_scrolllist (https://github.com/esoui/esoui/tree/...s/zo_templates) there should be a function to enable selection and/or highlighting. Selection means you click an entry to select it and it stays selected, and you click it again to deselect it. Highlighting means it will show a highlight as you move the mouse over it. function ZO_ScrollList_EnableSelection(self, selectionTemplate, selectionCallback) The selectionTemplate is the XML virtual template used to define how the selected entry looks like, e.g. "ZO_ThinListHighlight" And the selectionCallback is a function you specify that is called as the selection was done -> e.g. show the text of the selected entry somewhere. An example can be found here -> The character selection ingame: https://github.com/esoui/esoui/blob/...board.lua#L394 It uses the selection template "ZO_TallListHighlight" and the callbackFunction called as you select an entry is OnCharacterSelectionChanged. The parameters passed in to the functions are: previouslySelectedData, selectedData where the data tables are the data of the rows of the scrolllist, so it got an index and whatever data you have passed to it during the scrollLists setupRow callback function "setupCallback" in function ZO_ScrollList_AddDataType(self, typeId, templateName, height, setupCallback, hideCallback, dataTypeSelectSound, resetControlCallback)
Last edited by Baertram : 01/05/22 at 04:54 AM.
|
||
![]() |
![]() |
Baertram |
View Public Profile |
Send a private message to Baertram |
Send email to Baertram |
Visit Baertram's homepage! |
Find More Posts by Baertram |
Add Baertram to Your Buddy List |
![]() |
|
|
About the included exe file:
Aren't you able to delete the unused cache from your SavedVariables file from lua code ingame? What exactly is the exe doing? I assume it deletes contents of the SV file? Just set this content = nil ingame and reload the Ui and it will be updated in the SV file. |
![]() |
![]() |
Baertram |
View Public Profile |
Send a private message to Baertram |
Send email to Baertram |
Visit Baertram's homepage! |
Find More Posts by Baertram |
Add Baertram to Your Buddy List |
![]() |
||
|
|
|
![]() |
![]() |
f1rex |
View Public Profile |
Send a private message to f1rex |
Send email to f1rex |
Visit f1rex's homepage! |
Find More Posts by f1rex |
Add f1rex to Your Buddy List |
![]() |
|||
|
Lua should be able to do the same then. You could also create 2 different tables on the SV so you only need to iterate one dedicated without accidently deleting be character saved data.
Unfortunately I'm not able to code in python (I assume this is the py file?) else I'd have checked the code and tried to provide you more info how to achieve the same in lua. Your code seems to loop over the SV table entries and do something: Code:
for account_1 in data[realm_1]: for category_1 in data[realm_1][account_1][character_1]: if category_1 == 'version': continue for name_1 in data[realm_1][account_1][character_1][category_1]: for hash_1 in data[realm_1][account_1][character_1][category_1][name_1]: body = data[realm_1][account_1][character_1][category_1][name_1][hash_1] found = False for realm_2 in data: if realm_2 == realm_1: continue for account_2 in data[realm_2]: if account_2 != account_1: continue for character_2 in data[realm_2][account_2]: if character_2 == character_1: continue for category_2 in data[realm_2][account_2][character_2]: if category_2 != category_1: continue for name_2 in data[realm_2][account_2][character_2][category_2]: if name_2 != name_1: continue for event_2 in data[realm_2][account_2][character_2][category_2][name_2]: hash_2 = data[realm_2][account_2][character_2][category_2][name_2][event_2]['hash'] if hash_2 == hash_1: found = True if 'selectedOptionHash' in data[realm_2][account_2][character_2][category_2][name_2][event_2]: selected_option_hash = data[realm_2][account_2][character_2][category_2][name_2][event_2]['selectedOptionHash'] if selected_option_hash == hash_1: found = True if 'optionHashes' in data[realm_2][account_2][character_2][category_2][name_2][event_2]: for i, option_hash in data[realm_2][account_2][character_2][category_2][name_2][event_2]['optionHashes'].items(): if option_hash == hash_1: found = True This would be the same in lua, with just setting it = nil -> data[realm_1][account_1][character_1][category_1][name_1][hash_1] = nil edit: Looks like the code above would be something like this in lua: Lua Code:
As you got access to the SV and this is only a table you are able to use for key, value in pairs(stable) do and do your checks + cleanup this way. If you provide me an example lua file of the SVs and one example where the cache is stored in it and what needs to be checked and cleaned when I might be able to help you build the lua code. This woulds trip the need to download python executables, dependencies via pip etc. AND especially to use external sofftware and executables in your addon. Just do it within the addon's code. All you need to think about is that the SVs will be cached during gameplay in internal lua tables. So modifiying the SV file on your disk wil ldo nothing until you logout first before! But modfying them ingame in the cachec tables that point to the svfile on your disk + doing a reloadui will update the internat tables AND the SV file properly and clear the cache. So all you need is the logi to loop over the SV files, which is pretty easy if you know the SV table name (and you know it, it's given in oyur txt manifest file ## SavedVariables: tag) and where to look at, what to compare with and then set it = nil At the end call ReloadUI("ingame") and you are done with the cleanup.
Last edited by Baertram : 01/06/22 at 12:39 PM.
|
||
![]() |
![]() |
Baertram |
View Public Profile |
Send a private message to Baertram |
Send email to Baertram |
Visit Baertram's homepage! |
Find More Posts by Baertram |
Add Baertram to Your Buddy List |
![]() |
|
|
Used the cleanup.exe and got this error when I logged back into the game:
Code:
user:/SavedVariables/StorySaver.lua:30: } expected (to close { at line 27) near 'Warriors' |
![]() |
![]() |
NeuroticPixels |
View Public Profile |
Send a private message to NeuroticPixels |
Send email to NeuroticPixels |
Visit NeuroticPixels's homepage! |
Find More Posts by NeuroticPixels |
Add NeuroticPixels to Your Buddy List |
![]() |
|
Forum posts: 4
File comments: 1
Uploads: 0
|
gamepad compatibility
I really like this mod, but for the fact that dialogue logging doesn't work with the gamepad UI active, and I have to play with a gamepad.
It behaves very strangely, occasionally registering the interaction with npcs, such as if it's a different npc from the last one you talked to, with the actual registered log often being from a previous conversation, and not registering follow-ups from the same dialogue, like it does on kb+m. Would it be possible to add gamepad compatibility? It also seems to miss the opening dialogue of a conversation, even with kb+m, which would also be a nice addition. |
![]() |
![]() |
Tatila |
View Public Profile |
Send a private message to Tatila |
Send email to Tatila |
Visit Tatila's homepage! |
Find More Posts by Tatila |
Add Tatila to Your Buddy List |
![]() |
|
|
Hello.
I made JP.lua file. What should I do with this file? I like to save quest items. This is my selfishness. I would be happy if I could switch the automatic save on and off for each filter. Conversations are usually turned off and conversations do not increase. I'm not good at English. Sorry. ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー こんにちは。 私は日本語のファイルを作りました。 私はこのファイルをどうすれば良いでしょうか? 私はこのアドオンのクエストアイテムを記録できる所がとても好きです。 そして、これは私の我儘になります。 フィルターごとに自動保存のオン・オフを設定できたら嬉しいです。 普段は会話をオフにすれば無尽蔵に増えることがなくなります。 私は英語が下手です。 すみません。 |
![]() |
![]() |
snorunt361 |
View Public Profile |
Send a private message to snorunt361 |
Send email to snorunt361 |
Visit snorunt361's homepage! |
Find More Posts by snorunt361 |
Add snorunt361 to Your Buddy List |
![]() |
|
|
I'm back
Hey!
Sorry for big delay, these two years and now I have conditions that are out of my control, but for now I have a little time and inspiration for making my AddOn better. Firstly, I decided to concentrate my efforts on solving conceptual problems and get rid of external script for cache cleaning. Also, I changed the dialogue events concept. Look at changelog for more details. Update is already here. Please, backup before update. Really. Do it even if everything is okay. I've got my data file broken because of filesystem or SSD issue. I didn't have a backup. So don't repeat after me. I try to test everything, but I don't give any guarantees that I will not break something, and loosing AddOn data is critical. All data must be migrated to new version without any problems, but s*** happens. Next step will be to add AddOn settings menu with possibilities to configure how records will be deleted and some other options. Also, I want to add more locales (thanks snorunt361 for feedback) and try to add gamepad compatibility (thanks Tatila for feedback). Write to me here if you want to help with translation. Or just create a pull request on GitHub (link is in the AddOn description). Thanks! |
![]() |
![]() |
f1rex |
View Public Profile |
Send a private message to f1rex |
Send email to f1rex |
Visit f1rex's homepage! |
Find More Posts by f1rex |
Add f1rex to Your Buddy List |
![]() |