Quantcast
Download
(3 Kb)
Download
Updated: 06/13/21 07:24 PM
Compatibility:
Blackwood (7.0.5)
Updated:06/13/21 07:24 PM
Created:04/11/20 06:45 PM
Monthly downloads:5,329
Total downloads:16,813
Favorites:48
MD5:
7.0.5
Lazy Alchemy Learner  Updated this week!  Popular! (More than 5000 hits)
Version: 1.0.3
by: Dolgubon [More]
This add-on will queue all (base game/cheap) alchemy traits up so you can learn them easily. Simply type /learnalchemytraits into chat, visit an alchemy station, and let it do its work!


Requires LibLazyCrafting to work
Version 1.0.3:

Added messages when stuff is queued, plus a message if nothing is queued.

Version 1.0.2:

API Bump
Fixed a bug where it wouldn't use different solvents. Now should properly choose multiple solvents where needed. Also, will prioritize higher level solvents (mainly so as to use alkahest first)
Optional Files (0)


Archived Files (2)
File Name
Version
Size
Uploader
Date
1.0.2
2kB
Dolgubon
05/30/21 05:23 PM
1
2kB
Dolgubon
04/11/20 06:45 PM


Post A Reply Comment Options
Unread 06/02/21, 06:28 PM  
Dolgubon
 
Dolgubon's Avatar
AddOn Author - Click to view AddOns

Forum posts: 374
File comments: 767
Uploads: 18
Originally Posted by Redmsa
Originally Posted by Ratinira
Like the idea of the addon, very helpful, but.. all my toons have maxed alchemy and I have 7k of Alcahest, but addon is demanding and using Night Oil which is not wery common at the market (and addon is using 50 of it per character). Is there a way I can force it it use Alcahest?
Try this (you need to replace strings manually):

local poison =
{
75365,
75365,
}
The issue should be fixed in the next version, so this fix won't be necessary.


Originally Posted by EgotisticalElf
I fixed the issues I was having and added a bit of UI feedback.

Thanks! Unfortunately I only noticed this after I fixed the issue myself, but the UI feedback is a good idea and will be added in.
Report comment to moderator  
Reply With Quote
Unread 06/01/21, 04:52 AM  
Redmsa

Forum posts: 0
File comments: 21
Uploads: 0
BTW, my edited list based on current price (its not ideal, but works for me), includes all alchemical reagents:

Code:
31 Cheap+:
{30148,77585},
{30148,30165},
{30164,30160},
{30164,30159},
{30164,30157},
{30161,77581},
{77581,30149},
{77581,77587},
{30152,30165},
{30152,77589},
{77589,77587},
{30158,30153},
{77591,77583},
{77583,30158},
{77590,77587},
{77590,77584},
{30160,30154},
{30148,30154},
{30151,30149},
{30149,30162},
{30159,30155},
{30153,30159},
{30153,77584},
{30156,77587},
{30159,30162},
{30159,30154},
{77585,77584},
{77585,77587},
{30151,30154},
{30157,30162},
{30157,30153},


30 Expens.+:
{139019,77583},
{139019,77589},
{139020,77591},
{139020,77584},
{139020,77587},
{150731,77584},
{150731,150789},
{150731,150669},
{150671,150789},
{150671,77581},
{150671,150670},
{150671,30153},
{150789,77587},
{150789,77584},
{150670,77590},
{150670,150669},
{150669,30154},
{150669,150672},
{150672,30166},
{150672,77587},
{30166,30151},
{30166,30162},
{30161,30157},
{30156,30163},
{30156,30165},
{30158,30152},
{30158,30161},
{30155,30163},
{30163,30157},
{30165,77585},
WIP:
Code:
***
Powdered Mother of Pearl,Beetle Scuttle 
Powdered Mother of Pearl,Scrib Jelly
Clam Gall,Mudcrab Chitin
Clam Gall,Spider Egg
Clam Gall,Fleshfly Larva
Dragon's Blood,Spider Egg
Dragon's Blood,Dragon's Bile
Dragon's Blood,Chaurus Egg
{139019,77583},
{139019,77589},
{139020,77591},
{139020,77584},
{139020,77587},
{150731,77584},
{150731,150789},
{150731,150669},
Dragon Rheum, Dragon's Bile = Heroism
Dragon Rheum, Torchbug Thorax = Enervation
Dragon Rheum, Vile Coagulant = Restore Magicka
Dragon Rheum, Namira's Rot
Dragon's Bile, Fleshfly Larva
Dragon's Bile, Spider Egg
{150671,150789},
{150671,77581},
{150671,150670},
{150671,30153},
{150789,77587},
{150789,77584},
Vile Coagulant, Nightshade = Protection, Ravage Health 
Vile Coagulant, Crimson Nirnroot = Timidity
Chaurus Egg, White Cap = Ravage Magicka, Detection
Chaurus Egg, Crimson Nirnroot = Timidity
Crimson Nirnroot, Water Hyacinth = Spell Critical, Restore Health
Crimson Nirnroot, Fleshfly Larva
Water Hyacinth, Emetic Russula = Entrapment
Water Hyacinth, Dragonthorn
{150670,77590},
{150670,150669},
{150669,30154},
{150669,150672},
{150672,30166},
{150672,77587},
{30166,30151},
{30166,30162},

***
Corn Flower, Torchbug Thorax = Detection
Torchbug Thorax, Stinkhorn = Fracture
Torchbug Thorax, Fleshfly Larva = Vitality
Violet Coprinus, Nirnroot = Ravage Health
Violet Coprinus, Scrib Jelly = Ravage Magicka
Scrib Jelly, Fleshfly Larva = Vulnerability
Lady's Smock, Namiras Rot = Spell Critical
{30161,77581},
{77581,30149},
{77581,77587},
{30152,30165},
{30152,77589},
{77589,77587},
{30158,30153},

Mudcrab Chitin, Beetle Scuttle = Increase Armor + Protection
Beetle Scuttle, Lady's Smock = Breach
Nightshade, Fleshfly Larva = Gradual Ravage Health
Nightshade, Spider Egg = Defile
Bugloss, White Cap = Cowardice + Increase Spell Resist
Blue Entoloma, White Cap = Ravage Magicka + Cowardice
{77591,77583},
{77583,30158},
{77590,77587},
{77590,77584},
{30160,30154},
{30148,30154},

Emetic Russula, Stinkhorn = +2
Stinkhorn, Dragonthorn = +2
Wormwood, Luminous Russula
Namiras Rot, Wormwood
Namiras Rot, Spider Egg
Imp Stool, Fleshfly Larva
Wormwood, Dragonthorn
Wormwood, White Cap
{30151,30149},
{30149,30162},
{30159,30155},
{30153,30159},
{30153,77584},
{30156,77587},
{30159,30162},
{30159,30154},

Butterfly Wing, Spider Egg
Butterfly Wing, Fleshfly Larva
Emetic Russula, White Cap
Blessed Thistle, Dragonthorn
Blessed Thistle, Namiras Rot
{77585,77584},
{77585,77587},
{30151,30154},
{30157,30162},
{30157,30153},
Report comment to moderator  
Reply With Quote
Unread 06/01/21, 04:45 AM  
Redmsa

Forum posts: 0
File comments: 21
Uploads: 0
Originally Posted by Ratinira
Like the idea of the addon, very helpful, but.. all my toons have maxed alchemy and I have 7k of Alcahest, but addon is demanding and using Night Oil which is not wery common at the market (and addon is using 50 of it per character). Is there a way I can force it it use Alcahest?
Try this (you need to replace strings manually):

local poison =
{
75365,
75365,
}
Report comment to moderator  
Reply With Quote
Unread 05/28/21, 05:26 AM  
Ratinira

Forum posts: 0
File comments: 18
Uploads: 0
Like the idea of the addon, very helpful, but.. all my toons have maxed alchemy and I have 7k of Alcahest, but addon is demanding and using Night Oil which is not wery common at the market (and addon is using 50 of it per character). Is there a way I can force it it use Alcahest?
Last edited by Ratinira : 05/28/21 at 05:39 AM.
Report comment to moderator  
Reply With Quote
Unread 05/18/21, 05:55 AM  
EgotisticalElf

Forum posts: 0
File comments: 20
Uploads: 0
I fixed the issues I was having and added a bit of UI feedback.

Code:
LazyAlchemyLearner = {}

LazyAlchemyLearner.name = "LazyAlchemyLearner"
local comboInfo = 
{
{77583,77591},
{77583,77585},
{77583,30152},
{30157,30153},
{30148,30154},
{30148,77585},
{30148,30165},
{30160,30154},
{30164,30160},
{30164,30159},
{30164,30157},
{30161,30154},
{30161,30157},
{30162,30149},
{30162,30157},
{30162,30166},
{30151,30166},
{30151,30152},
{30151,30155},
{77587,77581},
{77587,77589},
{77587,30156},
{77587,77590},
{30156,30163},
{30156,30165},
{30158,30152},
{30158,30161},
{30158,30166},
{30155,30163},
{30155,77584},
{30163,30157},
{77591,77590},
{77591,30154},
{30153,30159},
{30153,30166},
{77590,30165},
{30165,77585},
{77589,77584},
{77589,30157},
{77589,30154},
{30159,77584},
{77584,77591},
{30149,30151},
{77581,30159},
{77581,30165},
{77581,30149},
{30166,30155},
{30159,30166},
{77585,77584},
{30153,30165},
{77584,30165},
}

local solvent = 
{

}
local poison =
{
75357,
75358,
75359,
75360,
75361,
75362,
75363,
75364,
75365,
}

local function getItemLinkFromItemId(itemId)
	return string.format("|H1:item:%d:%d:50:0:0:0:0:0:0:0:0:0:0:0:0:%d:%d:0:0:%d:0|h|h", itemId, 0, ITEMSTYLE_NONE, 0, 10000) 
end

local function getSolvent(proficiency)
	for i = proficiency + 1, 0, -1 do
		local bag, bank, craft = GetItemLinkStacks(getItemLinkFromItemId(poison[i]))

		if bag + bank + craft > 0 then
			return bag + bank + craft, poison[i]
		end
	end
	return nil, nil
end

-- |H1:item:75362:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0:0|h|h
local function queueLearningAlchemy()
	-- LibLazyCrafting
	local LLC = LibLazyCrafting:AddRequestingAddon(LazyAlchemyLearner.name,true, function()end)
	local remainingSolvent = 0
	local solvent
	local queued = 0
	
	local solventProficiency = GetNonCombatBonus(NON_COMBAT_BONUS_ALCHEMY_LEVEL)
	if solventProficiency == 0 then
		solventProficiency = 1
	end
	
	remainingSolvent, solvent = getSolvent(solventProficiency)
	
	for i = 1, #comboInfo do
		local known = true
		for j = 1, 4 do
			known = known and GetItemLinkReagentTraitInfo(getItemLinkFromItemId(comboInfo[i][1]), j) and 
			GetItemLinkReagentTraitInfo(getItemLinkFromItemId(comboInfo[i][2]), j)
		end

		if remainingSolvent == 0 then
			remainingSolvent, solvent = getSolvent(solventProficiency)
		end
		if not known then
			queued = queued + 1
			d("Lazy Alchemy Learner: Queued " .. getItemLinkFromItemId(solvent) .. " with " .. getItemLinkFromItemId(comboInfo[i][1]) .. " and " .. getItemLinkFromItemId(comboInfo[i][2]) .. ".")
			
			remainingSolvent = remainingSolvent - 1
			LLC:CraftAlchemyItemId(solvent, comboInfo[i][1], comboInfo[i][2], nil, 1, true,'1')
		end
	end

	if queued == 0 then
		d("Lazy Alchemy Learner: Nothing queued? Perhaps you know everything? This addon does not learn the expensive / non achievement item traits")
	end
end

function LazyAlchemyLearner.Initialize()
	-- queueLearningAlchemy()
end

function LazyAlchemyLearner.OnAddOnLoaded(event, addonName)
	if addonName == LazyAlchemyLearner.name then
	LazyAlchemyLearner.Initialize()
	end
end

EVENT_MANAGER:RegisterForEvent(LazyAlchemyLearner.name, EVENT_ADD_ON_LOADED, LazyAlchemyLearner.OnAddOnLoaded)

SLASH_COMMANDS["/learnalchemytraits"] = queueLearningAlchemy
Report comment to moderator  
Reply With Quote
Unread 05/17/21, 06:10 PM  
EgotisticalElf

Forum posts: 0
File comments: 20
Uploads: 0
Originally Posted by MetaHorus
It seem the addon tries to use the poison one level below your craft? I can make up to lvl 30 poisons (Gall) but when I try to use the addon it tells me ne I don't have enought Slime (lvl 20).
Mine worked on the first 4 alts, but the 5th wants CP100 poison. He has level 50 and all the skill perks.
Report comment to moderator  
Reply With Quote
Unread 11/23/20, 08:47 PM  
MetaHorus

Forum posts: 0
File comments: 10
Uploads: 0
It seem the addon tries to use the poison one level below your craft? I can make up to lvl 30 poisons (Gall) but when I try to use the addon it tells me ne I don't have enought Slime (lvl 20).
Report comment to moderator  
Reply With Quote
Unread 08/30/20, 10:39 AM  
Dolgubon
 
Dolgubon's Avatar
AddOn Author - Click to view AddOns

Forum posts: 374
File comments: 767
Uploads: 18
Re: Errror message?

Originally Posted by bom.piou
hi, i got this for my sorc toon but when i try to use it i get this error message:

user:/AddOns/LazyAlchemyLearner/LazyAlchemyLearner.lua:108: operator + is not supported for nil + number
stack traceback:
user:/AddOns/LazyAlchemyLearner/LazyAlchemyLearner.lua:108: in function 'queueLearningAlchemy'
EsoUI/Ingame/SlashCommands/SlashCommands_Shared.lua:204: in function 'DoCommand'
EsoUI/Ingame/ChatSystem/SharedChatSystem.lua:1785: in function 'SharedChatSystem:SubmitTextEntry'
EsoUI/Ingame/ChatSystem/SharedChatSystem.lua:2493: in function 'ZO_ChatTextEntry_Execute'
ZO_ChatWindowTextEntryEditBox_Enter:3: in function '(main chunk)'
(tail call): ?
(tail call): ?

it also says in the chatbox that addrequestingaddon has been called twice or more and that i should use getrequestingaddon instead but i don't know what that is?
can someone please help me fix this?
The second one, isn't too important. Just a warning message, I'll fix it up so it doesn't say that. The first... I'm not too sure how it came about. Since you saw the addrequestingaddon message, I'm guessing you did the /learnalchemytraits command twice - did you see the error the first or second time? What lvl of solvent proficiency do you have, and how many different solvents of each type do you have?
Report comment to moderator  
Reply With Quote
Unread 08/30/20, 01:46 AM  
bom.piou

Forum posts: 0
File comments: 3
Uploads: 0
Errror message?

hi, i got this for my sorc toon but when i try to use it i get this error message:

user:/AddOns/LazyAlchemyLearner/LazyAlchemyLearner.lua:108: operator + is not supported for nil + number
stack traceback:
user:/AddOns/LazyAlchemyLearner/LazyAlchemyLearner.lua:108: in function 'queueLearningAlchemy'
EsoUI/Ingame/SlashCommands/SlashCommands_Shared.lua:204: in function 'DoCommand'
EsoUI/Ingame/ChatSystem/SharedChatSystem.lua:1785: in function 'SharedChatSystem:SubmitTextEntry'
EsoUI/Ingame/ChatSystem/SharedChatSystem.lua:2493: in function 'ZO_ChatTextEntry_Execute'
ZO_ChatWindowTextEntryEditBox_Enter:3: in function '(main chunk)'
(tail call): ?
(tail call): ?

it also says in the chatbox that addrequestingaddon has been called twice or more and that i should use getrequestingaddon instead but i don't know what that is?
can someone please help me fix this?
Report comment to moderator  
Reply With Quote
Unread 05/14/20, 09:15 AM  
Dolgubon
 
Dolgubon's Avatar
AddOn Author - Click to view AddOns

Forum posts: 374
File comments: 767
Uploads: 18
It's not very profitable to craft what you propose either. Regardless, this add-on is a one time use (per toon ofc) so there's not much point in obsessively minimizing cost. Nor is it worth my time.


Originally Posted by True_Bach
It is not very profitable to craft poisons :-(
Especially when you have 10-18 characters, and you want everyone to upgrade their traits.

What about that?
92 reagents and useful potions, which you can use or sell.
Report comment to moderator  
Reply With Quote
Unread 05/13/20, 04:43 PM  
True_Bach

Forum posts: 0
File comments: 15
Uploads: 0
It is not very profitable to craft poisons :-(
Especially when you have 10-18 characters, and you want everyone to upgrade their traits.

What about that?
92 reagents and useful potions, which you can use or sell.

Last edited by True_Bach : 05/13/20 at 04:54 PM.
Report comment to moderator  
Reply With Quote
Unread 05/10/20, 06:37 AM  
daimon
Premium Member
 
daimon's Avatar
Premium Member

Forum posts: 10
File comments: 124
Uploads: 0
Nicee so much time saved, thanks. It did a miss a few for me though and produced an error after typing in the chat command before starting the process for some reason.

Missing traits:
Butterfly Wing: Lingering Health
Namira's Rot: invisible
Spider Egg: invisible
Water Hyacint: restore health
Wormwood: increase weapon crit

Error:
Warning: Spoiler
__________________
""I am that which grips the heart in fright, hearkens night and silences the light." It was written on my sword, long…long ago." ―Ajunta Pall
avatar by Humon
Last edited by daimon : 05/10/20 at 06:46 AM.
Report comment to moderator  
Reply With Quote
Unread 05/04/20, 09:29 AM  
Akotar

Forum posts: 0
File comments: 8
Uploads: 0
Originally Posted by YetAnotherUser
Originally Posted by Dolgubon
But, there might be some that it skips. The 'dynamic solvent' use is honestly the most complicated part of the addon, and I'm not too interested in expanding it atm.
It skips Alcahest. When I tried learning all traits with my characters with topped alchemy, it kept complaining about Night-Oil being not available. Night-Oil is one level below Alcahest and it's really expensive to buy, which is why I didn't have it, although I had all other poisons.

Unless you change something in the addon to enable Alcahest to be used, the best way to use the addon is to drop Alchemy skill all the way to 1 first, so that it works with the cheapest poisons which are sure to be found somewhere in the craft bag.
I think it's because addon tries to check every single poison you have before making them. So if you get just 1 night's oil it might work.
Report comment to moderator  
Reply With Quote
Unread 05/04/20, 09:22 AM  
YetAnotherUser

Forum posts: 0
File comments: 5
Uploads: 0
Originally Posted by Dolgubon
But, there might be some that it skips. The 'dynamic solvent' use is honestly the most complicated part of the addon, and I'm not too interested in expanding it atm.
It skips Alcahest. When I tried learning all traits with my characters with topped alchemy, it kept complaining about Night-Oil being not available. Night-Oil is one level below Alcahest and it's really expensive to buy, which is why I didn't have it, although I had all other poisons.

Unless you change something in the addon to enable Alcahest to be used, the best way to use the addon is to drop Alchemy skill all the way to 1 first, so that it works with the cheapest poisons which are sure to be found somewhere in the craft bag.
Report comment to moderator  
Reply With Quote
Unread 05/03/20, 01:40 AM  
Akotar

Forum posts: 0
File comments: 8
Uploads: 0
Originally Posted by Dolgubon
If someone got me all the item links for the different runes, I could do that pretty quickly. But, not too interested in going out and getting that list myself.
Code:
/* Aspect Runes */
Ta 45850
Jejota 45851
Denata 45852
Rekuta 45853
Kuta 45854
Code:
/* Potency Runes */
Denara 45812
Derado 45814
Edode 45822
Edora 45809
Hade 45825
Idode 45826
Itade 68340
Jaera 45810
Jayde 45821
Jehade 64508
Jejora 45806
Jera 45857
Jode 45817
Jora 45855
Kedeko 45828
Kude 45830
Kura 45816
Notade 45818
Ode 45819
Odra 45807
Pode 45827
Pojode 45823
Pojora 45808
Pora 45811
Porade 45856
Rede 45829
Rejera 64509
Rekude 45824
Rekura 45815
Repora 68341
Rera 45813
Tade 45820
Code:
/* Essence Runes */
Dekeipa 45839
Deni 45833
Denima 45836
Deteri 45842
Hakeijo 68342
Haoko 45841
Jaedi 45844
Kaderi 45849
Kuoko 45837
Lire 45845
Makderi 45848
Makko 45832
Makkoma 45835
Meip 45840
Oko 45831
Okoma 45834
Okori 45843
Oru 45846
Rakeipa 45838
Taderi 45847
Maybe you could add one option to make Repora - Hakeijo - Kuta and make dependency to learn all enchanting 4/4 10/10 so it doesnt fail on any. Love your addons m8. Just made a few adjustments on your addon and I'm using it to learn all including expensive ones with triple method. Couldn't have done that myself as I don't have proper coding knowledge for this language Can also mix all those id's if you don't have time.
Last edited by Akotar : 05/03/20 at 03:54 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.