emersonrp / bindcontrol

Keybind manager for City of Heroes
GNU General Public License v3.0
3 stars 3 forks source link

MM pet names suggests a unique name is not unique #77

Closed xizar closed 3 months ago

xizar commented 3 months ago

BindControl_Rm8XrJJgfx

BC seems to think that "odo" is not a unique name as compares to (presumably) "podo" and "goro" (There were only two named ferrets in The Beastmaster (1982), so I had to choose their baby's name.)

The other pets I have are "Ruh", "Roh", and "Cougar".

The specific error is "Name Error: one or more of your pet names has errors. blah blah blah".

As I don't actually know how bodyguard mode works in CoX (for all the years I spent playing as MM, I don't think I ever used more than "aggressive" "move to" "passive" and "attack target"), I don't really know how to test this one. Within this subset of pet activities, though, everything seems fine, and I never see errors in the game as relates to screwing around with my pets.

xizar commented 3 months ago

Sweater Puppy.bcp.txt added the bcp file, renamed to append a txt at the end so github would take it.

emersonrp commented 3 months ago

This is actually basically working as intended. Because of the way City of Heroes does name checking for the various /pet_*_name commands, having a name that's a subset of another name will cause a collision with possibly-undesired results. For instance, "/petcom_name odo pass" will set Odo to passive, but will -also- set Podo, as well as Frodo and Odometer. If in BindControl, you had Odo set to be a bodyguard, but Podo not, this would make that not work, as the "bodyguard" command would apply to both.

So, BindControl checks that each name has -some- unique substring in it, and (if you have enabled by-name binds or the pet command binds), will let you know if it can't find one. There might be a -wee- little bit of polishing the behavior around how and when it complains, but this is sorta how it has to be.

xizar commented 3 months ago

I did not realize CoX was like that. Well if nothing's to be done, I'll change Goro's name to Godo and wash my hands of it. Maybe just add an explainer for why the failure happens?

emersonrp commented 3 months ago

Documentation is always good -- I've put some more text into the "Pet Names" help popup on that page which will find its way into the next release. Gonna go ahead and close this one.