It’s a great idea and it adds a lot of tactical options. I’ve implemented/am implementing this (I’ve not finished yet) it in my RL (see the Cyberpunk RL in the Other Games sub-forum) and found it pretty easy. I was originally going to make it quite complicated with ducking/leaning out and so on, but I’ve found it works best as such:
-For every obstacle tile a bullet passes through it has a chance of destroying the bullet (dependent on the cover rating). Some cover is also destructible if the bullet hits, some not (metal and so forth). Cover with holes in it (grates and stuff) have a low cover rating. This works both ways, so the player will struggle to shoot through a metal sheet and so on.
-Separate to obstacles, you can get into cover by crouching behind something. Getting into/out of cover takes a turn - and getting into cover adds extra cover points to the obstacle. So what might have had a 20% chance of letting a bullet through the cover now has a 10%. It also gives you a small shooting accuracy penalty.
This sounds like a cheap way of doing it, but it’s way easier to calculate and works pretty much the same as a more complicated system. Leaning out could easily be done by removing the accuracy penalty and lowering the cover rating a bit, but I think this would get tedious as the player would always want to get into cover and lean, which isn’t realllllly that much fun in an RL/turn based game.