Page 1 of 2

Joe's Receiver Multiplayer Implementation

Posted: Tue Feb 18, 2014 12:49 am
by bassgojoe
Howdy! I forked the receiver git repository and added simple multiplayer. I'm not sure what the protocol is for releasing mods for receiver is, but it seems like people generally just fork the repo and make their changes, then point others to their repo. If this is incorrect, let me know.

My fork lives here:
https://github.com/joevenzon/7DFPS

To be able to build it, you'll need Unity. If you can't already build the original master repo (https://github.com/David20321/7dfps) then I can't help you, as I am a Unity noob. However, it's entirely possible I didn't check in all the files I needed to, or didn't configure my Unity project correctly, so if you can build the master David20321 project but can't build mine, let me know!

Once you have it built, run it and host a server, then have a client connect to your IP.

You can probably also run it directly inside the unity editor, by opening the splashscreen.unity scene in the splash_screen folder and hitting the play button.

Notes:
  • Clients are pretty authoritative, which means that as a client you aren't exposed to much lag but the price is that it's totally insecure against cheating
  • The player model is just the plain white physics capsule
  • You share the same game world, when you die you simply respawn, loot spawns in the same locations for each player but you each get your own loot (i.e. if I pick up bullets, there will still be bullets there for my friend to pick up), I added a "sector" indicator to the top right UI so you can communicate with other players about where you are, you all spawn in the same sector
  • When the server goes to the win screen by collecting all the tapes, all of the clients get left in a state with a zombie world; I'd love to improve this, but it didn't get in the way of my enjoyment
  • Clients don't get some of the ambient turret and hover bot sounds because I didn't bother to sync them
  • I didn't test more than 2 players, so that may not work
  • I added a new NetworkManager script, modified many of the existing scripts to handle multiplayer synchronization, and adjusted prefabs/assets to contain networking components where they didn't before
  • This is my first experience with Unity and I'm not great with javascript, so apologies for the messy code

Re: Joe's Receiver Multiplayer Implementation

Posted: Tue Feb 18, 2014 4:18 am
by Thomason1005
Image

i can only run it by loading the winscreen scene, when loading the normal scene theres an object null reference

Re: Joe's Receiver Multiplayer Implementation

Posted: Tue Feb 18, 2014 11:56 am
by bassgojoe
You need to start it using the splashscreen.unity scene in the splash_screen folder. That's the one that has the network manager and the main menu that lets you host/join or start single player*. If you start that one does it work, or do you still get a null exception? If the latter, do you have the ability to run the code in the debugger and break on the exception?

*single player may or may not work

Re: Joe's Receiver Multiplayer Implementation

Posted: Tue Feb 18, 2014 2:55 pm
by Thomason1005
Yeah now it works. Thx

Re: Joe's Receiver Multiplayer Implementation

Posted: Tue Feb 18, 2014 8:23 pm
by Aim392
This is great; Thanks for putting the time into creating something like this, I hope it doesn't die like some other multiplayer mods have, Please continue to update it!

Re: Joe's Receiver Multiplayer Implementation

Posted: Tue Feb 18, 2014 8:25 pm
by dabay55
Thank you so much for doing this! Receiver has so much potential, it's nice to see that people are still adding to it.

Re: Joe's Receiver Multiplayer Implementation

Posted: Wed Feb 19, 2014 5:39 am
by AmorphousGamer
Aim392 wrote:This is great; Thanks for putting the time into creating something like this, I hope it doesn't die like some other multiplayer mods have, Please continue to update it!
Why would it need updating? Receiver isn't being updated.

Re: Joe's Receiver Multiplayer Implementation

Posted: Wed Feb 19, 2014 10:10 am
by Thomason1005
AmorphousGamer wrote:
Aim392 wrote:This is great; Thanks for putting the time into creating something like this, I hope it doesn't die like some other multiplayer mods have, Please continue to update it!
Why would it need updating? Receiver isn't being updated.
well turret and taser bot sounds for the client would be nice

and a player model though that would mean an animation system :shock: and animations and well a model for the player

Re: Joe's Receiver Multiplayer Implementation

Posted: Tue Mar 04, 2014 3:37 am
by WMan22
Dramatization of Reciever PvP (Minus the clown masks):

http://www.youtube.com/watch?v=e8CMPB03-pw&#t=1m14s

Re: Joe's Receiver Multiplayer Implementation

Posted: Thu Mar 06, 2014 3:59 pm
by robly18
Right, uh...
How do I install this again?

Re: Joe's Receiver Multiplayer Implementation

Posted: Fri Mar 07, 2014 11:36 am
by bassgojoe
Right now there's just a github link to the unity project, so you'd have to get the source and build it yourself. I'd like to provide easy to install binaries but I'm not sure what the devs allow.

Re: Joe's Receiver Multiplayer Implementation

Posted: Fri Mar 07, 2014 11:41 am
by bassgojoe
WMan22 wrote:Dramatization of Reciever PvP
Hah! Another: http://youtu.be/E2p6c8fXuaU?t=2m14s

Re: Joe's Receiver Multiplayer Implementation

Posted: Wed Apr 16, 2014 1:09 pm
by willtell
So this looks great!
But there's one problem, The turret's lights don't show up on the walls, and that keeps getting me killed. Any way to fix that?

Re: Joe's Receiver Multiplayer Implementation

Posted: Fri May 02, 2014 5:20 pm
by AbeRavenclaw
can you make a video of how to install it?

Re: Joe's Receiver Multiplayer Implementation

Posted: Sat May 03, 2014 12:58 pm
by bassgojoe
The basic steps are to download Unity from its website, download the mod from github (https://github.com/joevenzon/7DFPS), open the Unity editor and use it to open splashscreen.unity in the splash_screen folder, then hit play (or build & run from the menus). That'd be great if someone wants to do a video detailing those steps.