Can you recommend a plugin to create custom posts?

I am using BuddyPress with the WPMUDev Social Theme.

I have created a site that uses categories and tags to define what should be displayed when and to whom.

This relies on the user entering the correct category and tags when creating a post.

To make this more reliable I am considering replacing my use of categories with Custom Post types. Each Custom Post type would have different mandatory fields and ideally the user would be required to choose the appropriate tags.

* Please recommend one or more plugins for these requirements