In my testing, I have only used custom armor with armor values exceeding Netherite, Netherite, and Diamond armor.
For consistency purposes, I spawned a zombie in hard mode.
When being hit by an entity, the initial hit in these armors will always be less than the following hits damage on the player.
This screenshot shows a player at full health being damaged by a zombie while wearing full Netherite armor. It reflects that the player initially took ~.64 of their health as damage. The following hits took exactly 1.0 of the players health.
[media]This screenshot reflects the same disparity but with full Diamond armor. Here the initial hit took ~.67 of the player's health, while the following hits took 1.0.
[media]This is likely a small part of a very large issue when it comes to damage calculations being performed in Minecraft. It appears that after the initial hit, the game no longer takes into account the player's armor/armor toughness and resorts to a default damage value. I will make a separate bug report for this, as this drastically impacts gameplay and prevents armor with values above Netherite armor from functioning properly in addition to the lack of armor toughness being applicable to custom armor.
PLEASE NOTE: Due to changes to the EntityHurt script event, the attached pack only works in 1.19.70+
I have tested this with both mobs and players, and I cannot reproduce. There are a couple of player weapon + mob armor pairings that are conducive to testing predicted damage in vanilla because they bring a mob down to exactly or nearly exactly 0 health:
Player weapon
Player/mob armor set
Damage/hit
Hits to reach 0 damage
Wooden sword
Iron
2.5
8
Diamon sword
Diamond
2.24
9
These combinations kill either a player a skeleton in the predicted number of hits. If the first hit were doing less or more damage than it should, or later hits were all doing an incorrect amount, the hits-to-kill in game would not match the chart.
The attached addon no longer works because it is set to API 1.1-beta, which is no longer available. I tried setting it to API 1.3 and it gave an error. I can only guess that the issue reported for 1.19.70 beta was either a bug in the API, or a bug in the game that no longer occurs.
The unexpected first-hit damage described in duplicate report MCPE-174871 is due to rounding. Displayed health is always round up to the nearest half-heart.