While I do not think that matchmaking should be forced for everything, I understand the issues that not having it provides. I don't expect that Bungie would implement 100% optional matchmaking for everything, and I am not convinced that that would be the best option anyway. I have an idea that could be really beneficial to players, though it would probably be pretty difficult for Bungie to implement.
What I think would be better than either forced or optional matchmaking is [b]conditional matchmaking[/b]. The basic premise is this: You set what you are looking for and then go do whatever - patrols, tower, orbit, etc. Once the game finds a group, you receive a notification that a group has been found (actually - sends to up to 1.5x the number of people the activity is for). You then have 2 minutes or until the group is full in which to join.
[b]Player Ratings[/b]
At the end of the activity, all players involved would be listed and you would have the option to rate whether you would be willing to play with each one again (doesn't mean that you necessarily would). This would default to "Yes". This could also be added to the Strike playlist for future matchmaking. The average rating would be hidden server side. Furthermore, a person who consistently says "No" would have "No" ratings matter less than one who generally says "Yes". Positive comments would have the higher priority.
Part of the reason for that rating system is that fireteams for higher level content should have a leader. The fireteam leader would be chosen based on three criteria: Matchmaking Rating (is this person consistently regarded positively), experience (raids only), and level. However, the fireteam leader in a matchmade game could not boot on their own - it would require approval from one other person in a 3 person activity and 2 people in a 6 person activity. Booting someone would also incur a 5 minute wait period before someone can be added again and/or that added person MUST be added through matchmaking. Consistently booting players (or voting to do so) can negatively impact your own rating.
As long as you complete missions in the matchmade group while actively participating, you will almost certainly end up with a positive "Matchmaking" rating. Higher ratings will have priority in matchmaking lobbies.
[b]Matchmaking Options Screen[/b]
Here's where things get interesting. The problem with matchmaking in activities such as the raids is that the majority of people who would use it right now would be inexperienced AND would not likely be using a mic (or they'd be in party chat). This is a recipe for disaster and is part of the reason that Bungie hasn't added it. So what do we do to change it?
I'd propose a new page to the left of the existing Roster page. If you currently have any matchmaking requests, (you could set as many as you like until you join one; then the rest disappear) it would have a display of your current matchmaking requests. From here, you can click on one to edit it or choose the Add New Matchmaking Request" button that would be in the bottom-right corner. If you don't currently have any requests in progress, this page will be skipped.
The Request page would have three boxes initially - for mission type, specific mission, and difficulty - each would be populated only after the previous one is selected. (Actually, it would probably end up being 4, due to planets for story missions.) It could use similar dropdowns to what already exists when doing things like changing privacy settings. My proposed structure is this:
Story
-Daily Story Mission (also on appropriate planet)
-Earth
--Each one listed
-Moon (etc)
-The Dark Below (DLC) - missions would also appear under appropriate planet
-House of Wolves (DLC) - missions would also appear under appropriate planet
Raid (normal only - see [b]note 1[/b] below)
-Vault of Glass
-Crota's End
Strikes
-Nightfall
-Weekly Heroic
-Specific strikes
Crucible
Prison of Elders (see [b]note 1[/b] below)
There would be 3 options when finalizing your request:
(1) Wait for full fireteam
(2) Start immediately and allow Join in Progress (Setting yourself to "Public" would put you in this option without using the Matchmaking Request screen)
(3) Join in progress (would join someone who already started, whether they are by themselves, in a match, or in matchmaking and has also selected this option).
This method would also allow you to start activities without allowing matchmaking by simply starting it in the normal fashion, but would allow matchmaking options. Options 2 and 3 would speed up the process of getting started in a match.
Also, another means of adding the mission and level to your Matchmaking request would be through the regular menu selection - adding a button directly above the "Launch" button would be my recommendation.
[b]General Options[/b] (see [b]note 2[/b] below)
Level (dropdown that caps at the lower of your level or the difficulty+1)
Microphone? 3 options (4 for raids) - Party chat would be viewed as not having a microphone, as would having it turned off.
(1) Required
(2) Preferred (General Default - gives preference to those with mics)
(3) No mic necessary (Only option for those without mics)
(4) Required for <5 Raid completions (Raid only option and Raid default)
Elements (for burns and shields - see [b]note 3[/b] below):
Arc, Solar, Void - Elements that are not burns or where there are not enemies in that mission with corresponding shields are greyed out.
[b]Raid Options[/b] (if a raid is selected):
Minimum Experience Level (Can only be selected based on your experience - includes completions across all characters):
(1) Highly Experienced - 15 completions or more
(2) Experienced - At least 6 completions(Default)
(3) Inexperienced - At least 1 completion
(4) First Time - No completions required
Individuals who would fall under the "Highly Experienced" category who choose to sherpa inexperienced and first time raiders could receive additional rewards of some sort, such as hard mode drops for a normal completion (there would be a maximum completion count for the remainder of the team, just in case). Alternatively, there could be a unique emblem, shader, etc for those who would be in category 1 that choose to help out those at a lower level consistently. There could be something similar for individuals who choose a lower level than the activity requirement.
Checkboxes for Checkpoints could be included as well, based on the raid. However, you would only be able to select boxes based on your completion THAT WEEK. The others would be greyed out (or blank for those that have never finished). Thus, matchmaking would only allow you to start at your most recent location or earlier. Sorry - if you want to start at Atheon, you'll have to do it the old fashioned way. There would also be a note that selecting more boxes would help find a match more quickly.
[b]Notes:[/b]
(1) There would be a notice for raids along the lines of: Due to the degree of difficulty associated with Hard Mode Raids and the level 35 Prison of Elders content, matchmaking is unavailable for these activities. (Only appears if one of those activities are chosen)
(2) There could be an option here to allow for people to wait as long as necessary for their ideal group or an option for a "close enough" group.
(3) For burn activities, having at least two weapons of different classes in your inventory that are of the correct burn (and appropriately leveled) would have a strong priority. This would also be a popup notice near the checkboxes.
----------
The main reason I am suggesting this particular manner of matchmaking is that it alleviates the greatest concerns that I have seen. It ensures that people can participate in higher level activities while minimizing the chances that they are going to have a poor experience. It would incorporate most of the positive aspects of current lfg pages and bring those features into the game itself.
I don't think that this would work for the Hard Mode Raid and Prison of Elders activities, but there's a possibility that it could.
I'd be interested to see what comments people raise about this.