I have a rule that modifies a base password depending on the name of the site the password is for. That way I only have to remember the base password and the rule.
Also, you don’t need to remember only the base password and the rule. You also need to have an exceptions process for when your “generated” password is incompatible with the esoteric requirements of a new site (length, character restrictions, etc.). And you need to remember this at login time, when you aren’t presented with the same information about those requirements as you were when you registered.
Much easier to just manage randomized passwords through 1Password.