How can you tell enemy resistances in Genshin Impact?

I see a lot of answers showing specific enemy resistance values against physical and elemental sources of damage, and I am wondering how or where they are getting this information. Is it even possible to tell what physical/elemental resistances an enemy will have in-game?


There's a convenient list on the wiki here. I can't attest to how accurate these values are, however, my best guess as to how they actually determine this:

Firstly, you can determine the formula by just testing on yourself. Start with 0 resistance and stand on a fire or stand next to an electro crystal since those things do very consistent damage as long as your world level doesn't change. Then, just fiddle around with decreasing / increasing your resistance and measuring how much damage you take until you have enough data points to put it onto a graph. Then, the exact formula is likely guessed. Mihoyo unfortunately doesn't release exact formulas, drop rates, or numbers for anything so guessing is the best we can do, really.

Then, you can just test against enemies. If you want to test Pyro resistance for example, you could, for example, take Amber without any other party members, take her ATK, multiply it by her charged attack damage multiplier, which gives you the amount of damage you're supposed to deal, and then just shoot something. Take how much damage it actually deals versus the theoretical amount and you can determine the damage from that.

Of course, since level difference factors in too, you'll need to fix all but one value each time. For example, to get the formula for how level difference factors in, just start a character at level 1 with a level 1 weapon and then just shoot something once, level your character once, shoot it, rinse and repeat, and eventually you'll get the curve for how level difference affects damage (after you adjust for ATK of course).

That's my best guess, at least. That's how I would go about it - I don't know if this is exactly the same method by which people who found these values on the wiki did it, but hypothetically at least, this would work.