Exploits break for a number of reasons. It could be at the creators fault, your computer may have something blocking it, or the game made some breaking changes. Focusing on exploit breaking changes, this is most common when the game updates.
Most exploits are DLL based, aka internal. Exploits are just a set of instructions just like any other program is. Programs expect data to be at a certain location. Since exploits manipulate software separate from itself(the game), it becomes more sensitive and complicated to find and handle the data. Lets imaging that in v1.0.0 of a game, the health value is stored at location X. Your exploit then change the value of X appropriately. When the game updates to v1.0.1, the health value may have been moved. If the exploit is still programmed to change the value of X, the game may crash because the health location was moved to another location. The exploit creator would then have to find the health value location and update their exploit appropriately. Only upon getting the exploit update will you be able to start changing your health again.
Plain location changes aren’t the only issues though. If anything, its often the least of worries and only takes a couple hours or so at most to update. There are more challenging issues like when the game creators implement some obfuscation to their code. Obfuscation is “the action of making something obscure, unclear, or unintelligible.” An idea could be translating text like, “Hello world,” into some nonsense like, “moi9nadna2wo7dnf4om.” This really just slows down the exploit creator, but it can be taken to extremes.
Another issue could be the game creators limited data to the server. An exploit can only change data where accessible, like your computer. Changing data on the game server would be like trying to write in the USA’s president’s journal. You just can’t unless you had access to it. Say your game money was once stored on your computer. You could add more just by changing the money value and it reflects everywhere. Now say the money is stored on the server. You can’t change the value anymore. Attempt to buy anything and the server will check if you can afford it. In this situation, its impossible to fix, though there are often hacky solutions. If money is still earnable, the exploit creator can create something to automatically farm money.
There are several other possibilities, but some of the most common reason causes could be shifted data, difficulty finding data, and lack of accessibility.