I would have originally agreed with you until I started playing around with Unity and Unreal which in the engine it really requires you to write code for every asset the player interacts with even if its really just a wrapper that inherited its properties from the parent class.