Well, it was so easy to allowing setting of room affections in the world files, 
that I did it.
It is very, very simple! :)
In the file db.c (where else? :), in the function parse_room(), look for 
the line
  sprintf(buf, "Format error in room #%d (expecting D/E/S)", virtual_nr);
and change it to:
  sprintf(buf, "Format error in room #%d (expecting D/E/A/S)", virtual_nr);
Then before the "case 'S':" statement, add this case statement:
		case 'A':
			if (!get_line(fl, line)) {
				fprintf(stderr, "Format error in room #%d, " \
					"expecting flag field after 'A'.\n",
					virtual_nr);
				exit(1);				
			}
			world[room_nr].room_affections = asciiflag_conv(line);
			break;
You can of course change the error message, or the letter 'A' to what 
ever you like :)
This piece of code, and the room affection code in general is tested, but 
only for a single case (room/spell). It should be general enough though.
PS. If you use the room affection code, a small note in some credits 
somewhere (like in "help credits") would be apreciated.
/ Joachim
 ---------------------------------------------------------------------
  The Arrow              Moses@PTMUD   sargasso.fukt.hk-r.se 4000
  Joachim Pileborg       Email: pt94jpi@student.hk-r.se
  Svarvarevägen 5
  37230 Ronneby          http://www.rby.hk-r.se/~pt94jpi/pt94jpi.html
  SWEDEN
---------------------------------------------------------------------
+-----------------------------------------------------------+
| Ensure that you have read the CircleMUD Mailing List FAQ: |
|   http://cspo.queensu.ca/~fletcher/Circle/list_faq.html   |
+-----------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/07/00 PST