Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

[NO CCU LIMIT] Forge Networking now OPEN SOURCE

Discussion in 'Assets and Asset Store' started by Brent_Farris, Dec 22, 2014.

  1. FisherM

    FisherM

    Joined:
    Dec 28, 2013
    Posts:
    366
    The functionality you are describing isn't really plausible in unity. Because the server would always see both objects in both rooms, they would be able to collide with each other. It is much better to run two server instances and accomplishes what you want.
     
  2. CarterG81

    CarterG81

    Joined:
    Jul 25, 2013
    Posts:
    1,773
    It may not be plausible, but if required for some reason, this could be done by sending messages only to groups based on who is in each room, and with the server handling everything by layer/group (room) (ex. custom physics if required, unless Unity has physics layers, which I dont think it does.)

    It would require alot of extra work, and is entirely Unity / Net engineering, nothing to do with Forge, so I strongly encourage doing what FisherM suggested.

    Unless some kind of unique niche for gameplay, like having invisible enemies in multiplayer, just have multiple server instances.

    Either that, or never allow what's in the room outside of it, and use MessageGroup RPC's or have the server send specific RPC's to very specific clients.
     
  3. LostPanda

    LostPanda

    Joined:
    Apr 5, 2013
    Posts:
    173
    Thanks . i have find it!
     
    Last edited: Oct 6, 2016
  4. zhuchun

    zhuchun

    Joined:
    Aug 11, 2012
    Posts:
    433
    I'm implementing a server auth multiplayer game but my rigidbody based character controller is a dragon. Can FN deal with it? Say movement correction for rigidbody and clients can intereact with eachother etc.
     
    wahyuway likes this.
  5. FisherM

    FisherM

    Joined:
    Dec 28, 2013
    Posts:
    366
    Forge Networking provides functionality out of the box for authoritative movement and client side prediction. But I'd suggest you take a look at our FAQ to refer to authoritative physics issues.

    https://forum.unity3d.com/threads/forge-networking-faq.436223/
     
    zhuchun likes this.
  6. MrGky93

    MrGky93

    Joined:
    Feb 27, 2014
    Posts:
    281
    have somone a tut how i can synchron 2 player all working with meacnim ??
    Because i can only play with them but all animation dont showing from the other player.
    And when say he tut are there is no tut how to synchron them and support is not really good they dont really helping for newbie .
     
  7. MrGky93

    MrGky93

    Joined:
    Feb 27, 2014
    Posts:
    281
    He does someone now i do create more server Forge Networking Headless Linux Server on a linux server?
    Or i need more linux server ??
    For more hots do i need more servers?
    Want to make 100 hots and all hots have a limit of 32 players.
     
  8. FisherM

    FisherM

    Joined:
    Dec 28, 2013
    Posts:
    366
    Hey again Rayleigh, it's always best to drop us a message on slack for quick response times and more in depth support where we can talk through the issue more clearly.
     
    Last edited: Oct 25, 2016
  9. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Please see Mechanim Package on our developer website, in your profile: http://developers.forgepowered.com/Profile

    Please see our tutorial on Headless Linux servers: http://wiki.forgepowered.com/index.php/Tutorial:Home_Headless_Linux_Server

    You can run multiple hosts on one machine, you will just need to use different port numbers

    This is fine, you can have virtually unlimited clients on a server, however this technically is limited by your server hardware and network bandwidth.
     
  10. Inx51

    Inx51

    Joined:
    Jan 14, 2014
    Posts:
    5
    Hi!
    I purchased this asset yesterday and Im currently in a R&D-phase for a upcoming project.
    However.. Im currently having some issues with a collider(or two)..
    The basic idea is to use forge to do multiplayer in VR.
    In my R&D-project we have two HTC Vives setup and we want to spawn to players that see each others head and "hands"/controllers, and this works very well!

    However.. we also want to "spawn" a ball in the middle of the room, this ball has a rigidbody and we would like for R&D-purpose to be able to "push" the ball between each other.

    Since both the players show up in the hosting-game and the all controllers(all four in this case) are basically just spheres with a collider, we thought that maybe we could just spawn a ball in the center of the room and add a networked mono behaviour component to the balls and this should be setup and ready.
    So once one of the players pushes the ball, the ball starts rolling.. however.. this is not the case..
    For some reason the physics-engine or Forge does not detect the collision between the controller(s) and the ball.. the thing that happens is that the controller(s) goes through the ball, and then if you "juggle-around" abit with the controller beeing inside the ball, then after a few seconds the collision is detected and the balls starts rolling..
    The most strange part thing about this is that once the "initial-collision" has happened, then there is no problem further with the collision..

    Any ideas?

    @farrisarts , I guess I could upload a video of this behaviour to my dropbox for you if that would be easier for you to understand the problem..
     
  11. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Hi there! I would highly recommend you use Forge Networking Remastered (FNR) this is where most of our development and support effort is. Version 13 is going out very soon and that will be the Release Candidate for the system. If you are on slack, feel free to send me a message (brentfarris) and we can get you going on FNR. FNR is free to anyone who purchases Forge Networking before it's release. That being said, I would like to answer this question as it relates to Forge Networking Classic (FNC).

    A video for the behavior you are seeing will be helpful to fully understand what is going on a bit better. It seems very odd that you have to move around in the ball for the collision to be detected. Who owns the ball in this case? The server? Could you also print some logs in the video during collision to see when the collision happens and also see what the target player's position is (the one going to try to move the ball).
     
  12. MrGky93

    MrGky93

    Joined:
    Feb 27, 2014
    Posts:
    281
    so how i can hosts more hosts on a server?
    Like the video only different ports ?
     
  13. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Yes, you would just do the same thing in the video, except the host will just bind to different unique ports :)
     
    MrGky93 likes this.
  14. MrGky93

    MrGky93

    Joined:
    Feb 27, 2014
    Posts:
    281
    come a tut for amazon servers ?? in future?
     
  15. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    I know I answered this through email but I thought I'd paste what I replied with here so that others with the same question will have an answer :)


    We are currently working on tutorials for 3rd parties however one of our users has made a wiki entry with how to setup with AWS :)
    http://wiki.forgepowered.com/index.php/Tutorial:Cloud_Headless_Windows_Server
     
    ramand likes this.
  16. Inx51

    Inx51

    Joined:
    Jan 14, 2014
    Posts:
    5
    Hi again!
    Ah, I see, I will try to create a new fresh project and using Forge Networking Remastered instead..
    Where do I find Forge Networking Remastered? Couldnt find it in the asset store, and when I try to register my invoice over at my profile it just keeps telling me that it cant find any invoice with the specified number.. (its the order number from the Unity asset store receipt that is the invoice, am I right?)

    I will also try to re-create a simple scene in Unity without the Vive and see if I still have the same issue with the physics/colliders.. if I do, I might simply share that scene with you :).. I might not be able to do this today, but as soon as I got some time I will get to it.
     
  17. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Awesome! :D

    When you join Slack (after you successfully register your invoice) you can just send a message in general chat asking to join.

    It's not a published package yet

    Yes, it should be the order number from the emailed receipt. You could also send us an email with your invoice so we can do a manual lookup and add you if it isn't letting you do it.

    I would also suggest (if you are using character controller) to add in colliders (like a sphere collider). I have found that character collider collisions with the OnCollisionEnter has a lot of problems without an extra collider to help it along.
     
  18. MrGky93

    MrGky93

    Joined:
    Feb 27, 2014
    Posts:
    281
    hi
    where i can join the chat ?
    Slack?
    after you successfully register your invoice??
     
  19. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
  20. MrGky93

    MrGky93

    Joined:
    Feb 27, 2014
    Posts:
    281
    Last edited: Oct 30, 2016
  21. MrGky93

    MrGky93

    Joined:
    Feb 27, 2014
    Posts:
    281
    can someone help me pls how i can use the locomotion system?
     
  22. Neo-Gamefactory

    Neo-Gamefactory

    Joined:
    Oct 18, 2012
    Posts:
    145
    Not Found
    The requested URL /SlackHistory was not found on this server.
    ....

    From Germany
     
  23. NFMynster

    NFMynster

    Joined:
    Jul 1, 2013
    Posts:
    69
    Hello!
    (I've sent you an email btw, support@beardedman)
    Do you guys know what you are gonna price the remastered version?
    Just started looking into Forge and wondering if an investment is needed now haha.
     
  24. ScrollWork

    ScrollWork

    Joined:
    Nov 27, 2014
    Posts:
    2
    I just bought this network suite to start converting my game to COOP and man have i got to say this is better then PHOTON and BOLT. Smartfox was something i looked into but opted out of because of server side logic failures. I have found a work around for this with Forge and am a very happy customer so far
     
  25. Leonid

    Leonid

    Joined:
    Aug 20, 2013
    Posts:
    90
    Not Found
    The requested URL /SlackHistory was not found on this server.

    Russia
     
  26. Leonid

    Leonid

    Joined:
    Aug 20, 2013
    Posts:
    90
    Hi!
    Networking.ChangeClientScene doesn't work.
    v20, v19.
    Errors:
    "NullReferenceException: Object reference not set to an instance of an object" - on SceneController's "Networking.ChangeClientScene(player.PlayerObject.OwningNetWorker, sceneName);" row,
    and
    "IndexOutOfRangeException: Array index is out of range.
    BeardedManStudios.Network.NetworkingStream.Read (Int32 count) (at Assets/Bearded Man Studios Inc/Forge Networking/MainScripts/Core/NetworkingStream.cs:454)"


    code:
    using UnityEngine;
    using BeardedManStudios.Network;
    using UnityEngine.SceneManagement;
    using System.Collections;

    public class SceneController : SimpleNetworkedMonoBehavior
    {
    string sceneName = "DefaultSceneName";

    protected override void NetworkStart()
    {
    base.NetworkStart();
    if (Networking.PrimarySocket.IsServer)
    {
    Networking.PrimarySocket.playerConnected += PlayerConnected;
    }
    }

    void PlayerConnected(NetworkingPlayer player)
    {
    sceneName = SceneManager.GetActiveScene().name;
    ChangePlayerScene(player);
    }

    void ChangePlayerScene(NetworkingPlayer player, string sceneName = null)
    {
    if (string.IsNullOrEmpty(sceneName))
    sceneName = this.sceneName;

    Networking.ChangeClientScene(player.PlayerObject.OwningNetWorker, sceneName);
    }

    void OnDisable()
    {
    Networking.PrimarySocket.playerConnected -= PlayerConnected;
    StopAllCoroutines();
    }
    }
     
  27. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Thank you for the heads up! I'll have to see what happened with the Slack history search.
     
  28. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    The price for Remastered may go up because it will be supporting much more than the current Forge Networking will. I assume that the price won't jump immediately, but that is up for discussion with the team. We currently have no plans on the exact pricing model for FNR. If you jump onto FN now then you can immediately start using FNR (distributed through slack). FNR is currently in RC3.

    PS: Sorry for the late reply, a lot of my time personally has been invested in FNR and supporting developers on FNR on Slack.
     
  29. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Haha, thanks! I am curious if you have tried out FNR (Forge Networking Remastered) yet? Most of the developers who have worked with FN Classic are staying that they are loving the new FNR setup. Since you bought FN now, you have free access to FNR through Slack :). Drop me a message (@brentfarris) in Slack and we can get you added to FNR! :D
     
  30. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Thanks for the update, will be debugging this asap

    Hey I responded to you on the other thread for this, you can just put your reply here so that we can continue on one thread :)

    Here is the message forward for those who are curious about what my response was:

    Hello :)
    We have been putting a lot of our effort into FNR which has much greater scene support with the new design. We are giving FNR out for free to people who own Forge Networking at the moment. I would highly suggest the migration to FNR to anyone currently on FN (classic). Are you on Slack? If so what is your username and I can get you added to the FNR group if you would like. If your project is really deep into the FN process, please send me a message on Slack (@brentfarris) and we can see what we can do :)
     
  31. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Announcement

    Hello all! We've been vigorously working on Forge Networking Remastered (FNR) and we will be releasing RC4 tonight on Slack! I would highly suggest for all users of Forge Networking (dubbed FNC or Forge Networking Classic) to migrate to FNR if your timeline will allow it. The benefits are immense and it works off everything we have learned from FNC. We have an active community on FNR which is great because they have been driving so many new features and finding some of the most edge case bugs for us to fix :). Let's get this guy out the door! ;) The more feedback we get, the faster it comes out; and trust me, this update is going to be awesome! Some notes about some things you will find in the final release for FNR:

    • No reflection
    • Non intrusive code
    • Better abstraction from Unity
    • Rewinding capabilities
    • NAT hole punching support
    • More cross compatible TCP and UDP code
    • Updated Master Server
    • Matchmaking
    • VOIP-like syndication support
    • Out of the box chat system
    • Out of the box lobby system
     
  32. gumboots

    gumboots

    Joined:
    May 24, 2011
    Posts:
    298
    Heya!

    Apologies if these are answered, I can't seem to find information about it:

    - Does FNR support cross-platform networking? e.g. Xbox One and Steam/DRM free?
    - Does FNR have listen servers? e.g. Can we simply host a master server that acts as a way for people to find each other, then all the hosting is done on the users' computers?
    - Does FNR support direct IP connect?

    Thanks!
     
  33. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    FNR is cross platform, If Xbox One supports standard Unity sockets then it will work on Xbox. We are willing to work with anyone to confirm this. We have a few people in the community who use Steam with FNR as well; though one of them may be moving over to use the FNR matchmaking and lobby services, they may be willing to help with information about this.

    Yes, this is a standard :)

    Yes, you can connect directly to an IP or host name

    No problem! :D
     
    Inspeinre likes this.
  34. gumboots

    gumboots

    Joined:
    May 24, 2011
    Posts:
    298
    Awesome! Thanks for the responses!

    Also does FNR have LAN support? (As in, no internet connection, just finding each other through the router.)
     
  35. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    No problem :D

    Yes. I am developing a game on my free time that is a LAN only game with it actually :)
     
    Neo-Gamefactory likes this.
  36. Deleted User

    Deleted User

    Guest

    What is the pricing for Forge? I can't find any info except the "one-time plugin"?
     
  37. robinlancee

    robinlancee

    Joined:
    Feb 7, 2013
    Posts:
    20
    When will the release coming?
     
  38. Happy_Jingle

    Happy_Jingle

    Joined:
    Mar 9, 2014
    Posts:
    103
    Hey Forge developers, I desperately need your help. I've recently found out that some people aren't able to connect to either my vps or my computer when using just the barebones StartGame script. I've tried port forwarding etc, I'm willing to pay a significant amount of money for some help with this issue, please get back to me asap

    PS. Note that 60% or so of people are able to make a connection, I don't know if that helps, thanks in advance.
     
  39. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    It is a 1 time purchase of $74.99 :). There are addons and other extensions (that are not required) that you can purchase to extend the system as well.
     
  40. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    We are hoping by the end of December :)
     
  41. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Are you using Forge Networking Remastered or are you using Forge Networking Classic. Also we can help you faster via Slack. Have you received the Slack invite (which is automatically sent when you register your invoice)
     
  42. Deleted User

    Deleted User

    Guest

    I mean what about servers and CCU and all that?
     
  43. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    You can host your game server on whatever server provider you would like, we do not charge any monthly fee. Though in the future we might provide a monthly service to host your games, but it will be based on what you use and not based on CCU.
     
  44. unicoea

    unicoea

    Joined:
    Feb 18, 2013
    Posts:
    60
    Where is The Forge DB addon? I see the doucument
     
  45. unicoea

    unicoea

    Joined:
    Feb 18, 2013
    Posts:
    60
    Where is The Forge DB addon? I see the doucument, but i can't find forge db class in package.
     
  46. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Could you send me a link to the DB addon you are mentioning? All of our addons are found in the developer profile :)
     
  47. unicoea

    unicoea

    Joined:
    Feb 18, 2013
    Posts:
    60
    Thank you ,i get it, i will input Invoice to download it.
     
    Brent_Farris likes this.
  48. unicoea

    unicoea

    Joined:
    Feb 18, 2013
    Posts:
    60
    This one can't be found.

    What is Forge DB?
    The Forge DB addon allows for multi-threaded (Async) access to a MySQL database. This documentation is a part of the addon the documentation explains an easy method for securing your connection string from being distributed to clients which is very important to the security of your database.

    Once you have a user and database ready, open the Forge DB class in Visual Studio or MonoDevelop, you will see a parameter near the top (line 32 at the time I am writing this) called ‘connection_str’. You will see a temp string con_str is created, then assigned then the value is returned. You are going to want to edit the string con_str is set to with the following format:
    "Server=<ip of your mysql server>;Uid=<username of your sql user>;Pwd=<password of your sql user>;Database=<the database you will be accessing>;"
    Replacing each of the values in between the < > brackets with your own settings. Please understand it is not safe to give out this information as it freely allows control of the database, see security concerns section and the disclaimer above.
     
  49. david55527

    david55527

    Joined:
    Mar 24, 2013
    Posts:
    58
    @farrisarts @FisherM have these issues been fixed in Remastered? Also, do proximity based updates work correctly now? From what I remember, they were completely broken in the evaluation version - it seemed to me that only the proximity to the host was taken into account, rather than the proximity between each client. Also, I remember proximity RPCs ignoring proximity completely and being sent regardless. Overall, it seemed like a half-broken product back then but I'm hoping Remastered is better.

    If either of you can confirm that these issues are fixed, I'll be purchasing soon :)
     
  50. loliconest

    loliconest

    Joined:
    Sep 21, 2015
    Posts:
    31
    Hi, I have two questions:

    1. Since I am a network newbie, I decided to use PUN for the prototype. I want to know that is it easy to port the project over to Forge?

    2. If I purchase Forge on Asset Store for $75 now, will I still get Forge Networking Remastered for free? And, is there any difference between using it for one developer or for a whole team? Like, is there anything like team license which is going to cost more?