(Sorry to bother you again)
Reported here: https://tshock.co/xf/index.php?threads/keychangerssc.2528/page-4#post-47250
Tried debugging.

https://github.com/Enerdy/KeyChanger/blob/master/KeyChanger.cs#L246
Though I don't know much about TShock API, I think it would be better to use TileX,TileY for InArea() rather than raw coordinates(X,Y)...?
--> if (!region.InArea(args.Player.TileX, args.Player.TileY))