In principle you are right
However you must distinguish between a weather system and a character

The former is stand alone the latter must interact with other entities
This is the weak point of components based system
The code gets ugly and consequentely also the game logic sucks ,in my opinion

The (supposed) advantage of components is flexibiliy thanks to aggregation
Pre made classes can lack some methods and / or be redundant

Getting back ( once again ) to UE4
It seems that the engine comes with pre made classes but the developer can customize them and/or create his own classes
Am I right ?
If so , it would be the ideal compromise