Ball Pythons typically want something where they feel secure, if possible, something that they can barely fit into, and would touch them on all sides. I typically use the fake rocks you can buy at petco, with one opening about 1.5in wide, but if you don't want to spend the money, anything similar will work, but I would shy away from anything pourous (like cardboard boxes), simply because of the urates will get in there and trapped, and can be very hard to clean and you will probably have to throw them away

Half logs are not ideal because they simply dont give your BP enough security, which can lead to stress, not eating, erratic behavior etc. Pet stores typically only use them to allow customers to see the animals, because otherwise they would just hide (which is pretty much what BPs do for a living, that, and own mice!)

Long story short, any enclosed hide with 1 opening is sufficient, half-logs are just a waste of $$