The base fee adjusts itself
Each block has a target size. If the previous block was fuller than target, the base fee rises; if emptier, it falls. The adjustment is capped per block, so the fee climbs or drops smoothly rather than spiking randomly.
The base fee is burned, not paid to the validator. That removes the incentive for a producer to stuff blocks with their own transactions to inflate it.
The priority tip buys ordering
The tip is the part that actually goes to the block producer, and it is what decides whether you are included now or in a few blocks. On a quiet chain a minimal tip is enough; during congestion the tip is the competitive variable.
A tip far above the going rate buys you position in the next block and nothing else. It does not make the transaction more likely to succeed.
Max fee is a ceiling, not a payment
You set a maximum you are willing to pay per unit of gas. You are charged the base fee at inclusion plus your tip, and the difference is returned. Setting a generous ceiling protects against a rising base fee without costing anything when the fee does not rise.
This is widely misunderstood: a high max fee is not a high payment. A high tip is.
What this looks like on rollups
Rollups follow the same transaction format but their cost is dominated by posting data back to Ethereum. Their execution fee is tiny and their data fee moves with mainnet conditions, so a rollup gets more expensive when mainnet does — just from a much lower base.
Practically: on a rollup the tip rarely matters. On mainnet during congestion it is the only thing that matters.