I thought the commerical engines and probably even the free ones play different openings from their opening books.
A chess program that plays different openings each time?
Is your current one by any chance the "Chess Live"-App for Android?
If so I suggest Droidfish:
https://play.google.com/store/apps/details?id=org.petero.droidfish&hl=de
It comes with Stockfish 4 which is one of the 3 strongest chess-engines and the strongest free one.
It plays all sorts of different openings and brutally punishes you if you go wrong. Don't expect to ever beat it but what you can do is trying to survive longer and longer before your position is lost. I think in my best game I had equal material for 24 moves and once I drew by a 3-fold in move 10 ^^
One of the reasons I like HIARCS is you can force the engine to play any mainline opening in the book at either full strength or to match your own play. The old Chessmaster with its' artificial opponents can be fun; play e4 against Slick and you are guaranteed a Sicilian. With HIARCS though, you can specify which Sicilian. I'm sure there are plenty of others that do similar things.
Does anyone know of a good one? My current one keeps playing the same openings and same lines so it's not very realistic to practice against it.