I have a number of doors in different situations where opening the door fully will hit various things, in all cases I don't have a wall behind the door to fix a normal stop to.
The only solution I can currently think of are the stops you screw in the floor, but they would be a trip hazard. I assume using those floor stops near the hinge would be a bad idea because it would wrench the hinges?
What other options are there for preventing a door opening too far?
For what it's worth these are the different situations:
Door corner collides with sloping ceiling when open 135deg
Door face collides with kitchen cupboard knob at 90 deg
Door edge collides with bookcase at 150 deg