Actually, you brought a good point up.
If it were just an object type, and I used existing objects, then in AFKMud we'd have a nice bit of object value fields to use with them. One could be for priority, another for state tracking, and so on. This would also make it easier when it comes to putting programs in.
I want them to be fixtures... but I also want them to add more to the game. Take, for instance, a quest. Your quest is to go out and gather some wood for a fire. You'd walk out into the forest and there'd be a bunch of 'wood' props in the rooms. Using the keyword progs I've installed, the prop could interact with someone typing 'gather wood'. Perhaps if the branches are large, then it'd require the player to be carrying an axe or something, again using progs.
But you gave me the idea that I've been looking for on another issue. Player houses! I hadn't thought to use these in this way, but I was always curious how one could allow a player to buy a house and not have to worry about an immortal building it for them. Also, not giving them access to building commands which could be potentially dangerous.
If there were some prop objects that they could choose from for their rooms, then it'd describe them... they could customize it all, but it could still be 'controlled'.. so you wouldn't have someone with a description reading 'Yo. This is my home dog.' or something equally distasteful.
As for the state of the props and looping through... I can see how current objects could be used for this as well. The note system uses extra descriptions on note objects to display the note's text. Something similar could be done with props. All you'd have to do is write a function that loops through the room, finds an object set 'TYPE_PROP', and then grab the objval that holds the current state of the prop. Then simply loop through the object's eds for _0_ or _1_, and so on. You could even do this to include examining it... I also note the nifty objval#($o) == ## ifcheck...
The only thing left to wonder about is the number of props one area could ever need, and wether or not to find a way to make props global to reduce redundant objects.