Forum Replies Created
-
AuthorPosts
-
But it does not describe the condition that occurs at the moment
The current crafting condition is stored at address 7FF66EF26F88 in memory as a “byte array.”
The appearance of new crafting conditions distorts the memory layout inside Crafting Solver and it starts reading random values from RAM.
Before the addition of the two new conditions, you could have processed the condition as uint8, but the list of possible conditions is now 9 items long and extends beyond 0-7. The data type is Uint16 (0000 0001 1110 0011 for newest recipes, bitmasked to 483) and if treated as such, should prevent the solver/process from reading outside the correct area.
Please let me know if this is of use to you or if you are willing to provide more specific details about the issue. Thank you for your consideration.
- This reply was modified 3 years, 10 months ago by Dobonhonkeroos.
- This reply was modified 3 years, 10 months ago by Dobonhonkeroos.
I would like to provide some information that could be of use to recognizing the “unsupported crafting conditions.” What conditions a recipe is capable of having is stored in column 7 of RecipeLevelTable as a bitmask. Most are “15”, but Phase 2-3 Experts are “115”, and Phase 4 (5.41) Experts are “483”. Here are the conditions, their hex values, what powers of two they resolve to, and binary representations of the flags which are set or not set for each case.
Normal = 1 (1)
Good = 2 (2)
Excellent = 3 (4)
Poor = 4 (8)
Centered = 5 (16)
Sturdy = 6 (32)
Pliant = 7 (64)
Malleable = 8 (128)
Primed = 9 (256)Standard Recipes: “15” = 000001111
Phase 2&3 Expert Recipes: “115” = 001110011
Phase 4 Expert Recipes: “483” = 111100011– Normal recipes are therefore 0+0+0+0+0+8+4+2+1 = 15, because in order: Poor, Excellent, Good, and Normal are active.
– Prior Experts are 0+0+64+32+16+0+0+2+1 = 115, with Poor/Excellent disabled, but Centered, Sturdy, and Pliant active in addition to Good and Normal.
– 5.41 Experts are 256+128+64+32+0+0+0+2+1 = 483, with Primed, Malleable, Pliant, Sturdy, Good, and Normal active. Poor/Excellent are again disabled, and Centered is now disabled.If Miqobot is capable of recognizing and distinguishing between other conditions already, hopefully identifying the 2 new conditions by hex value will be straightforward and allow implementation.
I hope that this is of use, and even if it is not, please feel free to contact me if there is something more in-depth I may be able to assist with.
- This reply was modified 3 years, 10 months ago by Dobonhonkeroos. Reason: minor addition
-
AuthorPosts