Quake 1: Unlimited Ammo
Edit id1/config.cfg
and change the following:
bind MOUSE1 "+attack; give c 999; give n 999; give s 999; give r 999"
This simply pushes ammo to max (231) with every attack. If (like me) you hold the mouse button down for continuous attack, the ammo will refill either when you let go of the button, or when ammo reaches zero and the game attempts to cycle to a different weapon — but because the ammo will no longer be zero, your weapon won’t be cycled and your ammo will still be refilled.
Note: This misbehaves with Thunderbolt in water because that discharges all ammo (batteries) in one shot. It will refill the ammo but won’t prevent weapon change.