Pokemon Gen 1 Type Effectiveness glitches

According to Bulbapedia, typed moves against dual type Pokemon (eg Grass vs Water/Flying) do inflict neutral damage, but there is a glitch which causes the 'Not very effective' message:

Dual-type damage misinformation

In Generation I, Pokémon with two types that have a weakness and resistance to the same type receive neutral damage from that type, but the incorrect message is displayed.

For example, Grass-type moves do neutral damage to Gyarados, but if Gyarados is hit by a Grass-type move, the game erroneously states that the attack is "not very effective...".

The 'Not very effective' text caption is triggered by a glitch with the way info messages are chosen and prioritized, which does not respect dual-typing. So for our Grass move v Water/Flying example:

  • Grass v Water is checked 4th -> message is set to 'Super Effective'
  • Grass v Flying is checked 27th -> message is set to 'Not Very Effective'

...Consequently, in this example, the game chooses the message for scenario #27, returning the wrong message "It's not very effective...".

You can read more about the glitch on Bulbapedia