Search Unity

  1. Unity 2018.3 is now released.
    Dismiss Notice
  2. The Unity Pro & Visual Studio Professional Bundle gives you the tools you need to develop faster & collaborate more efficiently. Learn more.
    Dismiss Notice
  3. Want more efficiency in your development work? Sign up to receive weekly tech and creative know-how from Unity experts.
    Dismiss Notice
  4. Nominations have been announced for this years Unity Awards. Celebrate the wonderful projects made by your peers this year and get voting! Vote here!
    Dismiss Notice
  5. Want to provide direct feedback to the Unity team? Join the Unity Advisory Panel.
    Dismiss Notice
  6. Improve your Unity skills with a certified instructor in a private, interactive classroom. Watch the overview now.
    Dismiss Notice

[NO CCU LIMIT] Forge Networking now OPEN SOURCE

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

  1. BuckyLuis

    BuckyLuis

    Joined:
    Jan 4, 2016
    Posts:
    297
    Problem: ??? i try to add Forge Remastered from the Unity Asset Store, import it to a new project and i keep getting errors saying

    "Prefab has multiple Transform Components! Removing them automatically would not be safe. UnityEditor.HostView:OnGUI()"


    FIXED:
    drag Scripts/Logging/Resources/BMSLogger prefab into the scene, press Apply to resave the prefab
    I guess also open BMSLogger script, add a space after a ; and save it .. so it recompiles



    Unity 2017.1.0f3 (64bit)



     
    Last edited: Oct 21, 2017
  2. CarterG81

    CarterG81

    Joined:
    Jul 25, 2013
    Posts:
    1,688
    I believe this is a common error (with an answer) on the Discord server. Might want to go there & do a quick search for the solution. I know I have seen that a few times. Forgot how I fixed it tho. I might have just deleted the LobbySystem prefab bc I dont use it. Idr.
     
  3. XaloX

    XaloX

    Joined:
    Mar 4, 2016
    Posts:
    175
    @BuckyLuis if your not on the discord, I absolutely recommend going there. The answer is a as @CarterG81 a common error.

    Hope it helps :)

    Cheers!
    NukeRaspberry
     
  4. NFMynster

    NFMynster

    Joined:
    Jul 1, 2013
    Posts:
    42
    You can easily do that with the NCW fields, join the discord and we'll have a chat about it.
    Basically the child object would need to get the refrence to the network object script, as all networking communication goes through that. Then you can just set the TheNetworkScript.networkObject.VariableName in the child script.
     
  5. AlexGK

    AlexGK

    Joined:
    Jul 31, 2013
    Posts:
    37
    Hello there! This looks like a very interesting project for multiplayer games/apps.
    I'm about to start implementing MP into my beat 'em up game.

    What would you recommend more: using GitHub or Asset Store?
    I guess a more focused question would be if the Asset Store code gets updated frequently.

    Cheers!
     
  6. ModularTech3D

    ModularTech3D

    Joined:
    May 11, 2015
    Posts:
    113
    GitHub is more up to date but you can also get a more up to date package on there than the asset store has.
     
    trudeaudm likes this.
  7. trudeaudm

    trudeaudm

    Joined:
    Apr 17, 2013
    Posts:
    115
    Don't import the package from the unity asset store, that version is garbage. Use the one off the github page. I had the same issue and using the github version fixed it all for me.
     
    CarterG81 likes this.
  8. deadlycrow

    deadlycrow

    Joined:
    Feb 10, 2014
    Posts:
    109
    Hello, i have a few questions before starting using this package. I have almost my character completely done in a non-multiplayer way. So now i decided to convert my project into a multiplayer one but i can't find any tutorial or way to actually and easily (if possible) convert my scripts to work in a network environment, all what i found is what the docs says, about messing with the "network contract wizzard", but that thing creates new classes to start working with... And i don't want that, i just want to simply implement the correct networking logic in my old scripts, is that possible with the new forge remastered?? thanks...
     
  9. ModularTech3D

    ModularTech3D

    Joined:
    May 11, 2015
    Posts:
    113
    The network contract wizard creates some classes for you yes, but you then create your own script which extends the generated bahaviour script. So say you create a network contract called player... it generates a network object and network behaviour script. You then create your own player script and then inherit from the generated behaviour. it handles sending a lot of network stuff for you and things that don't need to be kept in synch constantly you can just update with RPCs as and when needed.
     
  10. VXPuddiM

    VXPuddiM

    Joined:
    Jan 23, 2017
    Posts:
    10
    Hey, I'm having some problems with Forge.
    I Downloaded the Github version and imported it, but when i try to play the Cube example scene it gives an error:
    It also happens with the Proximity example
    The "Null" log was added by me, since I think the problem probably has something to do with the NetworkManger.Instance

    What should i do? (I'm using Unity 2017.2.0f3, 64bit)
     
  11. holyfot

    holyfot

    Joined:
    Dec 16, 2016
    Posts:
    5
    Open the example scene, add it the the build scenes list. Open Scenes\MultiplayerMenu and add it to the build scenes. Then run that MulitplayerMenu Scene.

    I'm just now working on upgrading to the new forge for my project. So far it's a lot to change and seems very inflexible versus the old forge. I would have to create NCW's for hundreds of objects (most of them being simple building blocks that would use the same class). But it seems that each prefab has a NCW class for that object. The RPCs look a lot harder to code. So far a massive headache.
     
    Last edited: Nov 19, 2017
  12. lorddanger

    lorddanger

    Joined:
    Aug 8, 2015
    Posts:
    52
    Hello,
    Can anyone update that if Forge has load balancer or not?
     
  13. SPP

    SPP

    Joined:
    Oct 24, 2014
    Posts:
    1
  14. Mad_Mark

    Mad_Mark

    Joined:
    Oct 30, 2014
    Posts:
    272
    This looks very interesting, and the possibilities seem exciting. I was just about to abandon my efforts to network, having tried PUN and Unet with little success. I am certain that my inexperience was a major factor. Would this be a good solution for the following?

    I am making use of UFPS for the core game play.
    I am using ICE Creature Control for AI.
    I will be creating a game for 4 to 8 players.
    The game will play from a lobby to a main level, and each player will be able to move to progressive levels through colliders without forcing other players to come along with them.
    As others hit the same colliders, I would want them to be visible, interactive with the other players in that level.

    Hope that makes sense. Any advice and examples would be appreciated.
    Mark
     
    robymv likes this.
  15. RealAspireGames

    RealAspireGames

    Joined:
    Dec 24, 2013
    Posts:
    262
    Hello, I'm thinking about using Forge for my next peoject. Can anybody tell me if the support is still alive? It seems like one of the best networking solutions.
    -thank you
     
  16. PiterQ70

    PiterQ70

    Joined:
    Mar 3, 2015
    Posts:
    57
    Where can I find Master server files ?
    Regards Peter.
     
  17. niklasdahlback

    niklasdahlback

    Joined:
    Sep 13, 2014
    Posts:
    1
    Hi!
    Thanks for a great asset.

    I have a problem with deploying to my Apple TV 4K device. Have anyone tried to build for tvOS device in xcode?

    I get the following error when building the xcode project generated by Unity 2017.3.

    ----
    Apple Mach-O Linker Error

    Undefined symbols for architecture arm64:
    "_ForgeClose", referenced from:
    _TCPClientWebsockets_ForgeClose_m1745672553 in Bulk_BeardedManStudios_1.o
    (maybe you meant: _TCPClientWebsockets_ForgeClose_m1745672553)
    ----

    Architecture in Build Settings in xcode project is arm64.

    The following works fine:
    - Build the project for iOS (Simulator in xcode)
    - Build for tvOS Simulator in xcode
    - An empty project (without FNR) can be built and deployed to the Apple TV 4K device
     
  18. rogueknight

    rogueknight

    Joined:
    Feb 16, 2014
    Posts:
    44
    Support is still very much alive. I have been a member of the discord channel for a couple months now and its super active. If you have a question it gets answered pretty quick or they at least point you in the right direction on where to find the answer (docs, wiki, etc).

    Same as yourself I have been looking for a good networking solution for quite some time. So far I have found Forge to be easy to use even though I have very little experience. The beginning docs are really helpful in getting started http://docs.forgepowered.com/. Hope this helps.
     
  19. rogueknight

    rogueknight

    Joined:
    Feb 16, 2014
    Posts:
    44
    The Github page has all the source code.

    I would ask this question on the discord server. It is way more active than the forums and the community is really helpful in answering questions.
     
  20. Krunal_vasundhara

    Krunal_vasundhara

    Joined:
    Apr 27, 2017
    Posts:
    35
    Is it supports the host migration functionality.
     
  21. Twist01

    Twist01

    Joined:
    Jan 21, 2017
    Posts:
    48
    Whooo! Free!
     
  22. Eck0

    Eck0

    Joined:
    Jun 6, 2017
    Posts:
    10
    Hi, I'm interested in this package, but I need to know some questions.
    Does it work with the network of the new system? or is it based on the old RPC network?
    Can you create multiple moba style rooms?
     
  23. ZhavShaw

    ZhavShaw

    Joined:
    Aug 12, 2013
    Posts:
    110
    Not to be a bum but it's free, I'd say check it out for yourself.
     
  24. Imperatoss

    Imperatoss

    Joined:
    Mar 24, 2018
    Posts:
    17
    Hey I´m pretty new to Unity and Forge Remastered.
    I have problems with Instantiations if the Scene does not change, i try to achieve that other networkObjects appear in the same scene if the client successfully connects. Maybe someone of you can help me out a bit =)
     
  25. chencoh

    chencoh

    Joined:
    Jan 11, 2017
    Posts:
    3
    I have the exact same problem.
    Were you able to fix it?
     
  26. Imperatoss

    Imperatoss

    Joined:
    Mar 24, 2018
    Posts:
    17
    After three days of desperate attempts I actually found the desired result: D. The Problem was the SceneReady () function in NetworkManager.cs on line 536. Apparently, this feature is important to building the network objects.

    I've added a short public function in the NetworkManager that calls SceneReady.


    public void sameScene ()
    {
    Scene scene = SceneManager.GetActiveScene ();
    SceneReady (scene, LoadSceneMode.Single);
    }


    This is called after connecting a user.

    For that I have extended the Connected () function from the MultiplayerMenu Script something.

    if (networker is IServer)
    {
    if (! DontChangeSceneOnConnect)
    SceneManager.LoadScene (SceneManager.GetActiveScene (). BuildIndex + 1);
    else
    NetworkObject.Flush (networker); // Called because we're already in the correct scene
    }

    else
    {
    if (mgr.isActiveAndEnabled)
    {
    mgr.sameScene ();

    mgr.InstantiatePlayer (position: new Vector3 (0, 2, 0));
    }
    }



    Then you just have to note that the mgr.InstantiatePlayer (position: new Vector3 (0, 2, 0)) gives the current position of the player and destroys his current object, as a new player object is initialized.

    Next, I will try if all works without mgr.InstantiatePlayer ().

    If you still have questions, ask =)
    I hope I could help you
     
    bhermer likes this.
  27. jogidipen

    jogidipen

    Joined:
    May 25, 2013
    Posts:
    4
    Hello ,

    I am creating 2 player game. I want to use Hole punch so that any player can play the game from any device.

    Suppose I am both user have information about local IP and global IP of each other. Is it possible to connect both without Master server pr Hole Punch server.

    If it is possible with this framework. Please let me know How to do that.

    thanks in advance.
     
  28. Deathstriker28

    Deathstriker28

    Joined:
    May 21, 2015
    Posts:
    2
    Just simply the best solution there is.Especially for a beginner.
     
  29. aerodynic

    aerodynic

    Joined:
    Jun 8, 2015
    Posts:
    1
    Hi guys, I'm having issues using the NAT hole punch server.

    I used the provided Forge source on Github to build the NAT server as headless Linux app in Unity and had to move the startup functionality from Main routine to Start().

    Logging on my AWS EC2 Ubuntu instance shows the NAT server is accepting connections as expected. Double-checked all ports are open on AWS security group and local firewalls.

    The issue is: Hosting IP is correctly registered on the NAT and the client join request is registered as well. But the client never joins/connects. The serverAccepted event is not called and client.isConnected is false. I also checked this in a bare Forge example scene.

    Please check this Wireshark log from the local client PC that tries to join the Forge hosted lobby. The local client (IP 192...) seems to try to directly communicate with the hosting PC (IP 87...) instead of using the NAT server (54...).

    NAT.jpg
     
  30. rogueknight

    rogueknight

    Joined:
    Feb 16, 2014
    Posts:
    44
    Not sure if you ever found an answer, but I would recommend dropping by Forge's Discord channel. I haven't used any of the NAT services yet myself so I can't be much help, but the community in the Discord might be able to help. Wish you the best on your project!
     
  31. cometeor

    cometeor

    Joined:
    May 20, 2011
    Posts:
    64
    Is AOI available in FNR?
    And is it possible to config sync field compression rate? i.e. position and rotation compression support?
     
  32. XaloX

    XaloX

    Joined:
    Mar 4, 2016
    Posts:
    175
    Hey!

    I am asking the question here because I can’t seem to get on discord.

    How do I make a network object that is both a server and a client?

    Thank you!
    Xalo
     
  33. chgeorgiadis

    chgeorgiadis

    Joined:
    Jan 30, 2018
    Posts:
    8
    Does support voice?
     
  34. Nyarlathothep

    Nyarlathothep

    Joined:
    Jun 13, 2013
    Posts:
    171
    Forge itself doesn't support voice, but Dissonance Voice Chat supports using Forge as a network backend :)
     
    CarterG81 likes this.
  35. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,868
    Thought I'd ask about forge myself, this time for a licensing reason; so with it open-source, is it still a paid asset, or is it free?

    Don't mind either way, just curious. :)
     
  36. XaloX

    XaloX

    Joined:
    Mar 4, 2016
    Posts:
    175
    Forge is free, and open source!! :)
     
    CarterG81 likes this.
  37. FuzzyQuills

    FuzzyQuills

    Joined:
    Jun 8, 2013
    Posts:
    2,868
    Oh yay! That might actually solve all the issues I've been having getting any networking to work as intended. Hopefully I can also figure out something for consoles later on.
     
    CarterG81 likes this.
  38. sxwwc111

    sxwwc111

    Joined:
    Mar 1, 2018
    Posts:
    2
    I would like to ask you how to set the synchronization of model animation to achieve,it would be nice if we had a related demo.
     
  39. sxwwc111

    sxwwc111

    Joined:
    Mar 1, 2018
    Posts:
    2
    Why doesn't anyone reply? I downloaded a new version of Forge Networking Remastered from the AssetStore.I used this plugin for the first time, so a lot of things don't make sense, I need help,Control character movement involves animation, but do not know how to achieve animation synchronization, the client often over time will crash, do not know what cause.
     
  40. XaloX

    XaloX

    Joined:
    Mar 4, 2016
    Posts:
    175
    Try going on there discord, for what I understand that’s the best place for support :)

    Sorry for the incovience,

    Xalo