Can Blueprint do everything C++ can do ?

For the most part you can, but there are a few cases where using C++ is required (so far). The only one I can think of off the top of my head is using Object Libraries these store metadata about assets that can be searched and called. They are essential in things that need to find all classes matching a certain criteria, and hence are needed for things like Inventory lists and Map lists (if you need to have the list update dynamically without having to edit some master list of possible maps or inventory items every time a developer adds one).

So if you want your game to have any sort of user-made content, you’ll need C++ (for now).