Spectator Mode

On the networking end, one of the stretch-goals for the project was to implement a spectator mode. Before Alpha started creeping up on the team, I decided to add the ability to join as a spectator from the game’s server browser. The process was pretty simple, actually. I’m storing a bool on each player’s custom…

UE4 Server Browser (C++)

In my previous post, I went over my implementation of a LAN server browser in UE4 using blueprints.  After completing the blueprint version, I decided to go back and attempt to write it over in C++. Additionally, I’ve made the functions BlueprintCallable to allow integration into different level blueprints and widgets. Setup: Take a look…

UE4 Server Browser (BP)

After following Unreal Engine’s multiplayer shootout demo, I have added a server browser to my original UE4 online shooter.  In this post, I’ll be going over my blueprint implementation of the browser.  In my next, I’ll go over my C++ version. Setup: First off, some things need to be tweaked to DefaultEngine.ini in the Config…

Space Dunk: Update 3/4/15

On the networked end of Space Dunk, there have been some new fixes, features, and plans for the game that I thought I’d share. Here are a few: Scoring Overhaul With the ball throws working, the score detection needed to be improved. Originally, simply throwing the ball led to round resetting, because scripts on the…

Unreal Project 1

In an attempt to diversify my programming tools, I’ve taken it upon myself to learn about how Unreal Engine 4 works. On top of that, I’ve been itching to work on another first person shooter, and found a good opportunity. I came in knowing absolutely nothing about Unreal, and spent a lot of time learning…

Networking in Photon

Recently, I posted my findings with Unreal Engine 4’s networking system.  I wanted to compare it to working with Photon Unity Networking, which I’ve grown accustomed to.  The original post can be found here, and I’ll be going over the same concepts. Setup Before players can start a game, they need to connect to Photon’s…

Networking in Unreal

I’ve spent a fair amount of time working with Unreal 4’s networking package, and would like to compare it to what I’m used to, namely Photon Unity Networking. I want to compare the two in how they handle some of the big networking concepts. Setup Bam. Done. But really, like UNET and unlike Photon, Unreal…

PUN: Sending GameObjects Over the Network

One of the biggest challenges I faced when I started learning to network in Unity was figuring out how to access a GameObject via RPC .  Since Unity’s networking package and Photon Unity Networking only support a strict list of data types as parameters for RPCs (as seen here), I needed to find a way…

Photon Network Smoothing

One of the issues that I’ve needed to tackle early on with any of my networked projects is the idea of smoothing positions.  With Space Dunk, the motion of each player and ball need to be extremely smooth for the game to be passable. So why is this necessary to perfect? Since positional data is…

Photon Ownership Transfer

One of the biggest challenges to working on Space Dunk has been adding networked features without interfering with what’s already in place.  When spawning the players online and handling team assignment, I needed to find a way to work around the code that was already in place: I had to figure out a team first,…

PUN Server Browser

My first creation for Space Dunk has been a server browser with Photon Unity Networking and the UI system introduced in Unity 4.6.  Note that the entire thing is made with template Unity UI assets and will change.   Server Creation: Right now, anyone can host their own room, with their own name.  The room’s custom…

Taking on Space Dunk

  I’ve been recently welcomed onto Space Dunk as a network programmer.  Space Dunk is a competitive multiplayer sports game inspired by Rocket League, where players must navigate a zero-gravity arena and throw a ball through their opponent’s goal. Currently, the game supports 2v2 local multiplayer: Using Photon Unity Networking, I plan on increasing that…