The fact that it doesn’t actually check what stage it is until after the card has been initialized makes me wonder if they aren’t just generic off-the-shelf RFID cards under the hood. With legit cards becoming harder to source (especially in small quantities), it might be possible to use generic white off-the-shelf cards, similar to how you can spoof amiibo. Anyone have any experience with this?
I don't think you'll have much luck with generic cards. These cards come with some header data pre-written on them and the game reads the header to tell if it's an acceptable card prior to subsequent reading/writing.
I have worked on a Python script to emulate the card reader (it works), but I'm not sure how unique the protocol is to these cards vs generic RFID cards. Perhaps if the protocol is generic and you had a means of writing an acceptable header to the generic cards, then you might have something that works.
I analyzed header data from several cards and discovered how to generate acceptable cards with my script. I'll eventually release the script, but was wanting to do more testing on ID8 and haven't gotten to do that yet.
The thing is, when I am working with a virtual card that's just a data file on my computer, I can change anything I want on it, including bytes that might otherwise be restricted. I couldn't, for example, figure out how to rewrite a used physical card to make it read as new. Some counter bytes seemed to be locked from writing on the physical cards. I'm not sure what challenges you'd run into trying to convert generic cards.