I've used Flash Media Server to create multiplayer flash games, but the cost of deploying a FMS application seems rather high. Are there good alternatives, open source or not, that I should look into to mimic the same functionality? I'm specifically looking at using FMS for the aspect of synching game-play state between users running the same swf.
Yes you're in luck!
Commercial products:
http://www.electro-server.com/
http://www.smartfoxserver.com/
Open Source:
The Red5 is also an application/communication server and offers, for example, shared objects for flash/flex applications... this is what you need for realtime multiplayer games.
I have developed a series of multiplayer worlds using SmartFoxServer and LOVE it. My current project is using the SmartFoxServer to play the popular game called 'Battle Packs'. It is the RPG using baseball cards. It will be up beginning of 2009 at www.toppstown.com.
Don't forget about FluorineFX (LGPL) if you are a Windows/.NET developer on the server-side. From my experiences, it supports everything (and more) that FCS/FMS, Red5, Wowza, etc support: AMF Remoting/Messaging, Data Services, RTMP (video/audio/SOs), etc. Can host directly in IIS as a website or as a Windows service.
You should check out Smuck. It's a free toolkit for creating Flash multiplayer games. It's very simple to script the server using actionscript! It also includes a smart way to monetize from your games.
Available for download from http://www.spogg.com/developer
If you are looking for a hosted solution, take a look at Player.IO Here is a great tutorial for getting started with multiplayer game development and player.io http://playerio.com/documentation/tutorials/building-flash-multiplayer-games-tutorial/
I can advise you to try erlyvideo. It will be rather easy to add your functionality inside and power of Erlang will make it very easy to develop and deploy multiplayer games.