[Feature request] A pattern that prints the names of spells in a list
object-Object opened this issue ยท 17 comments
Right now if you have a long hex stored as a list in something like a focus, the only way (as far as I know) to see what patterns it consists of is to look up each one individually with a pattern renderer, since the hover text shows the internal representation (eg. EAST aadaa). A pattern that takes a list of patterns as input and prints the names (eg. Gemini Decomposition) would be very useful for debugging long hexes.
Ideally I'm looking for something like the output of this script, but with the names that are actually in the book.
I thought of a better way to word this. I'm looking for a pattern like Reveal that displays pattern names instead of angle signatures.
Hang on, I can't believe I never thought of this oh my god. Just have the text output of patterns be the name of the action if it matches. auughh.
hang on I'm gonna implement this
CAUSE I PROBABLY ALREADY DID AND REALIZED WE CAN'T AUGHHHHHHHHGHSD
because the client doesn't KNOW the GODDAMN PATTERN LOOKUP
though make sure that any Great Pattern walk matches? just so you can't brute force it that way. Maybe it goes "Greater Teleport?" instead of "Mind's Reflection"
Also, if we do this, we should add dynamic names for things like numeric reflection and bookkeeper's gambit
i.e. "Bookkeeper's Gambit v-v-vvvv", "Numeric Reflection 5", etc
this is especially fine because equality checks already ignore start direction, so showing just the name doesn't actually change much
The problem is I don't know how to check if two patterns look the same sans stroke order; that's the same as checking if two graphs are isomorphic. And no one knows how to do that!
A quick wikipedia search tells me that not only is this problem computationally really hard, we actually don't know how computationally hard it is! The fastest known algo is 2^O(sqrt(n log n))
Apparently there exists a faster algorithm for planar graphs but my eyes start glazing over when I go deep into Math Wikipedia so we're gonna need to call in @Alwinfy on this one
I mean there's always the copout of checking whether the set of line segments is the same
Either way you could probably implement the rest of it and leave a stub for that stuff? the dynamic name stuff definitely would need some doing
Alwinfy has a solution but I'm too tired right now to understand it; I'll look with fresh eyes in the morning.
Alwinfy has a solution but I'm too tired right now to understand it; I'll look with fresh eyes in the morning.
You could put this in just about any conversation with alwinfy and it probably wouldn't look out of place lmfao
Eldritch math friend
For what it's worth, object and my script doesn't even attempt great spell naming; they come out as gobbledigook. They are not usually relevant to control flow, etc, s the importance of having proper names isn't as serious as it is with the regular patterns.
personally, I think it'd probably be easier and better to just display the shapes, instead of the names.