PacktLib: Flash Multiplayer Virtual Worlds

Flash Multiplayer Virtual Worlds

Credits

About the Author

About the Reviewers

Preface

Developing Flash Virtual World

What is a virtual world?

Background

Benefit of using Flash to build virtual world

Connecting players in a virtual world

Socket server

Available socket servers for Flash

Application architecture of a virtual world

The whole picture of virtual worlds

Common features in virtual world

Casual game design versus MMOG

Existing virtual world games

Summary

Installing the Servers

Comparing SmartFoxServer Lite, Basic, and Pro

Developing and deploying virtual world environment

Installing Java Development Kit

Downloading SmartFoxServer Pro

Installing SmartFoxServer Pro

Running the SmartFoxServer

Using embedded web server and database

Downloading third-party HTTP and database server package

Connecting SmartFoxServer and MySQL server

Configuring the server settings

Configuring MySQL server connection in SmartFoxServer

Running examples

Setting up the administration panel

Logging in to administration panel

Locating the Flash Client API

Summary

Getting Familiar with SmartFoxServer

Configuring a basic SmartFoxServer

Introducing the events of rooms

Debugging in local machine

Flash Security Sandbox

Creating a Flash document to connect to the server

Creating a cooperative drawing whiteboard

Summary

Creating Map and Ground in Isometric View

Comparing different game views

Getting an isometric projection view

Making an isometric map

Converting between screen coordination and isometric map coordination

Building a map editor

Summary

Creating Avatars

Designing an avatar

Customizing your avatar

Summary

Walking Around the World

Creating the world

Holding states of the player

Moving the avatar

Introducing path finding

Walking by mouse click

Broadcasting where you walked

Scrolling the world

Saving the position for next time

Summary

Creating Buildings and Environments in the Virtual World

Placing buildings on the map

Ordering the buildings

Designing a big virtual world

Adding sound to the virtual world

Building map editor for buildings

Summary

Creating an Inventory System

Classifying items in the virtual world

Collecting items

Displaying items in different forms

Defining the data structure of inventory items

Implementing inventory in the SmartFoxServer

Implementing the item panel

Exchanging items with other players

Introducing the economy in virtual world

Summary

Communicating with Other Players

Communicating using several methods

Chatting with public messages

Implementing the buddy list

Sending private messages

Sharing object data between players

Summary

Interacting with NPC

Running virtual world smoothly with NPCs

Placing NPC in virtual world

Advanced SmartFoxServer extension technique

Controlling NPC movement

Talking with NPC

Trading with NPC

Summary

Designing Quests

Introducing quests

Triggering quests

Setting up server environment for quests

Designing the quest panels

Running daemons for quests

Introducing achievement

Completing quests

Rewarding the players when finishing the quests

Extending the quests with mini games

Making the quest system better

Summary

Social Community

The benefit of using social network features in virtual world

The complicated data flow

Integrating Facebook platform

Authorizing a Facebook account

Getting friends list from Facebook

Update the Facebook status

Sending news feed to Facebook

Reading news feed into the virtual world

Capture a screenshot and share to a Facebook album

Integrating the Twitter platform

Choosing the right social network service

Summary

Deploying and Maintaining Flash Virtual World

Hosting the virtual world

Scaling up the virtual world

Earning money from the virtual world

Operating the virtual world

Analyzing players actions on a virtual world

Rapid development with OpenSpace

Updating and patching the virtual world

Keeping an eye on the virtual world industry

Putting our virtual world in mobile

Extending the virtual world to other platforms

Summary