Glossary of Photon Terms
Ack
A command (used internally) to make UDP reliable.
Actor
Players in a room are also called "Actor". An Actor has an ActorNumber, valid in the room.
Application
Applications contain the game logic, written in C# and run by the Photon Core. They extend the abstract class Application for this.
Binaries Folder
The binaries folders contain platform specific builds of the Photon Core. They are prefixed with "bin_" and in the "deploy" folder of the Server SDK.
Build script
A batch file or MsBuild project to compile and copy applications for their deployment. Takes care of getting a clean build for deployment.
Business logic
A game's logic, which runs on top of Photon Core. This "layer" handles operations and events.
Channel
In Photon, channels are used to split up communication into several sequences of operations and events. In a single channel, all operations and events are in order.
Command
Commands are used on the eNet protocol layer to transport your data or establish / shutdown connections. You won't write these, but we will explain them for your background knowledge.
Connect
Before clients can call operations on Photon, they need to connect and establish a connection.
Custom Operation
Any operation that is not in the client API or new to the server side (not in the Lite Application).
Dashboard
The Dashboard is a service which aggregates Dashboard Counters and generates graphs on a website to monitor them.
Deploy Folder
In the Server SDK, this folder contains everything that is needed to run Photon. Namely: the binaries-folders and compiled Applications.
Device
In general: a mobile. Or any other system to runs your client application.
Disconnect
Ends a connection between client and server. Happens when a player wants to exit the client-app or there is a timeout. Also, the server logic could disconnect players.
Event
Events are asynchronous messages sent to clients. They can be triggered by operations (as sideeffect) or raised (as main purpose of an operation) and are identified by an event code. The origin is identified as ActorNumber.
EvCode
Short for EventCode. Identifies the type of Events and which information the event carries.
Game
Depending on context this means an entire application or a round / match between a few players. The Lite Application implements the latter by rooms where you play your game as group.
Latency
Time between request and ack. Might differ on client and server.
Lite
Means the Lite application, which is a basic business logic to get you started.
Lobby
Means either the application "Lite Lobby" or a "lobby room" in it.
Lobby Room
A lobby room is a special room in the Lite Lobby application. These rooms do not send join and leave events as the other players are not of interest. Instead, all players get lists of existing games so the player can choose.
Log Files
Photon is designed to run as service and does not have extensive GUI. There are two sets of Log Files used instead: Applications write into deploy/log. Photon Core writes into deploy/bin_*/log.
Matchmaking
The process of finding a game / match. The Lite application does not have matchmaking, aside from being able to join any room by name. Lite Lobby adds listing of rooms.
NNet
The "old" name of our eNet RUDP protocol implementation. This was a mixture of "eNet" and "Neutron".
Operation
Another word for RPC functions on the Photon server side. Clients use operations to do anything on the server and even to send events to others.
OpCode
Short for Operation Code. A byte-value that's used to trigger operations on the server side. Clients get operation responses with opCodes to identify the type of action for the returned values.
Peer
In short: any client (independent of its platform) that is connected to Photon. To be exact, the Photon server is also a peer for the client-side but in all cases the only one.
Photon Core
The C++ core of Photon. It handles connections and the eNet protocol for you.
PhotonControl
This is Photon's Administration tool. Start the PhotonControl.exe to get a tray-bar menu and easily manage Photon's services.
PhotonServer.config
This is the configuration file for the Photon Core. It configures IPs, Applications and performance settings. Formerly it was called PhotonSocketServer.xml and for a short time PhotonSocketServer.config.
Policy File
The Policy Application runs on Photon to send the crossdomain.xml. Webplayer platforms like Unity Webplayer, Flash and Silverlight request authorization before they contact a server.
Reliable
Reliable commands will reach the other side or lead to a timeout disconnect. They are sequenced per channel and dispatching will stall when a reliable command is temporarily missing.
ReturnCode
Primary result of every Operation in form of a byte-value. Can be checked if an Operation was done successfully (RC_OK == 0) or which error happened.
Room
A construct to group players or peers. This can be a game or simply a chat lobby or anything you make it. Also a class in the Lite Framework.
RUDP
Reliable UDP. A protocol on top of UDP which makes sent commands reliable on demand.
Socket Server
Another name for the Photon Core.
Timeout
With eNet, client and server monitor if the other side is acknowledging reliable commands. If these ACKs are missing for a longer time, the connection is considered lost.
Unreliable
Unreliable commands are not ACKd by the other side. They are sequenced per channel but when dispatching, the sequence can have holes.