Photon 3.4 Upgrade

In this video we take the code we have so far and make the modifications necessary to run in Photon 3.4. We cover the handler changes as well as the complex connection collection and the Player Instance class. We then take a look at the new config file for Photon control and get our server set up and ready to go. Read the rest…

In this video I had to go back and make some modifications for the World Server code. We forgot to hook up the world server in the ComplexConnectionCollection and we needed to fix a couple of things in the handlers on the Complex Server to push our data over to the world server. Towards the end of the video Visual Studio decided to cache a copy of MMO.Photon and I had to remove and re-add the reference in order for it to correct itself. Read the rest…

In this video we wrap up the last of the World Server by creating the handlers that “hide” the world server and forward messages through the world server to the region server or proxy server as necessary. We hard-code the position in this video and will clean it up after we get multiple region servers created and create the messages to pass data between servers in another series. Read the rest…

In this video we cover the code necessary to allow region servers to register with the world server. We cover the NHibernate class, mapping, and messaging to pass what area the region server covers and how to respond to the successful registration with the region info. Read the rest…

In this video we look at creating the WorldServerConnectionCollection. It is different from both the PhotonConnectionCollection and the SubServerConnectionCollection in that it behaves like both of them combined. In addition to the Connection Collection we look at creating the other code necessary to begin working with this server. Read the rest…

World Server – Initial Setup

In this video we begin with the initial project setup for our World Server. Its initial design is to work with groups and to be an invisible filter to send messages to the correct sub server without putting the burden on the proxy server. Read the rest…

Smooth Movement – Object Manager and minor fix

In this video I needed to fix a small issue from changing User to CObject. After that I decided to take the time to modify our code to use an ObjectManager rather than GameObject.Find() which will help with speed when we have a scene full of objects. Read the rest…

Smooth Movement – Client Side movement change

In this video we rearrange how the client side movement is handled in order to allow “tapping” movement as well as fixing the constant movement after movement has begun. Read the rest…

In this video we take a look at fixing up StopMove and getting our position passed to the physics module so our characters start when they logged out. After that we write in the code necessary to extrapolate a characters position from the last known position the server sent.

Now that we have wrapped up this module, we will begin looking at moving to BEPU physics. ‘Till Then! Read the rest…

In this video we get the client side set up for smooth movement. It isn’t much code but it is a pretty big request to smooth out that movement even when working with fast pings because we are only getting an update 10 times a second.

Towards the end when I test the server, I find the same problems reported in the forum with Position always starting at 0,0,0 and StopMove breaking. I will be fixing both of these in the next video along with adding in the dead reckoning code to extrapolate the client position when an update doesn’t come in fast enough. Read the rest…