We here at Double Cluepon have been busy. If you follow us, you'll know this. We're readying for our Alpha of Emerald Kingdom, which is coming soon. One of the steps to get there was our version 1.0 of SWFConduit.
So, 1.0 of SWFConduit is here. It's funny how the development of Emerald Kingdom has driven the development of it since we posted our original goals for 1.0.
That said, here are the main changes you'll want to know about: * Basic server/client communication.
* Client libraries for easy development.
* Server based on Twisted and PyAMF
Client Requirements:* AMF3 (AMF0 does not support full object serialization)
* Flash clients require AS3 (AS1/2 do not support raw binary sockets)
Planned features for future releases:* Server Clusters
* Inter-server communications
* Connection negotiation (choose the least busy server to connect to)
* Swapping active sessions between servers in a cluster (each server can handle a geographic area in a game, spreading load while maintaining communications between friends)
* UDP support
* Speed at the expense of reliability
* Content Encryption
* Rich set of default events
* Windows package. (Although, if you're wanting to do serious client/server stuff, you should be using linux/fbsd. Less overhead)
Getting it: * You can visit
our page on github here. * Or you can
click this for a direct download of SWFConduit 1.0.
Using it:* One of our developers wrote up a nifty tutorial with an example usage.
You can find it here!Support: You can now get support for SWFConduit by visiting the Forum for it:
SWFConduit ForumsLicense: SWFConduit has been released under the GPL Public License. It's free to download, modify and use. If you were looking for a way to do multiplayer servers with Flash and AS3, SWFConduit will do the trick. It supports modules, so you can write modules which are tasked toward the type of server you want to do.
Comments, Questions and Answers: 1. "Sounds Complicated" -- It is, but we are also working to fix some of that. One of the future plans is a control panel (web based) for SWFConduit. We want it to be as "turn key" as possible.
2. "I went there and felt lost." -- Try not to feel lost. That said, if you want to do multiplayer flash development a basic, yet firm understanding of how the client/server model works is crucial.
3. "Why pyAMF and not AMFast?" -- We found pyAMF first, and it fit our needs.
4. "SWFConduit vs Red5?" -- No real comparison. red5 is a media server, designed to do many things, one of which is games. SWFConduit is a tiny, small server designed to do one thing: handle clients for games. It's the sole purpose, and development is driven with that in mind.
5. "Why Python, not Java?" -- There are a plethora of Java servers out there that do Flash socketing. There are some who use PHP too. But, at the end of the day python (for us) is the right tool for the job. It's leaner, less overhead, and does not suffer from the licensing issues of Java...which can lead to platform exclusion. We operate our servers from FreeBSD. Java and FreeBSD don't mix well, because of licensing issues. Java runs on Windows and MacOS X, sure. But so does Python. Without the overhead of Java being java. Ironically enough, in this instance Python is more "Write once, run anywhere" than Java is. Python is also easier to learn in our opinion. Java might be taught more, but the learning curve on Python tends to be less of an big incline. Understand, this is not a slam against Java. We don't mind Java. Just not in this instance.
SWFConduit is but one piece of our pie. StoryTeller (our MMORPG Worldbuilding tool) will be open sourced, around the time or just after
Emerald Kingdom hits beta. It's our full intention to release the tools one needs to build a multiplayer flash based MMO or persistent world. Ideally, all one would have to add is the assets (art, music, sound and dialog).