Search Unity

[DOWNLOAD NOW] Forge Networking FREE

Discussion in 'Assets and Asset Store' started by Brent_Farris, Nov 3, 2015.

  1. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Update 3/25/2017!
    The free version of Forge will be taken down for the time being as it does not accurately reflect the newest Remastered version of Forge Networking. We will update this thread with more information as we move towards a trial version for Forge Networking Remastered. Currently our focus is on supporting our current community so we do not have a set date for a trial. Thank you for your patience and understanding. Please feel free to send an email to us at support@beardedmangames.com with any questions that you may have.

    Announcement!


    You've asked for it and so we are delivering. We are going to be publishing a FREE evaluation version of Forge Networking. This will be the full power of Forge Networking with a few small limitations.
    1. You can only host servers within the Unity Editor for testing (builds can not run servers)
    2. You will have text in your game "Forge Networking Evaluation Copy" or something similar
    3. You can not publish or make money using the free version of Forge Networking
    4. Obfuscated closed source .dll files (no source code) **(1)
    5. You will not be invited to the live slack chat
    Other than these five limitations, you will have the full power of Forge Networking to evaluate, test, and even create your complete game before purchasing the main plugin..

    **(1) = iOS may have issues with obfuscation, if so it will not be a testable platform, iOS is fully supported with IL2CPP on the full Forge Networking plugin. Other platforms may as well, ANY platform that supports .NET sockets will work with Forge Networking :)

    Can we use this in our classroom?
    Yes! You may use this in any class setting, you may also have your students ask questions on our Epic on EpicJoin (see links below).

    Can I develop my game on this then buy the full version when I complete it?
    Yes, develop to your heart's content. Make the whole game if you would like! We will support you along the way :) We would recommend that you buy the full product when you can so that you can get faster updates, access the addons, get full source code, and be a part of the live chat with our community though! :) (Of course you can not publish your game without purchasing)

    Can I use this for a class project?
    Yes, one of us in the studio has actually been a professor in Computer Science so we know how important it is to be able to use plugins and third party software (even trial version) to complete a task or project.

    Do I have a CCU or connection limitation?
    Nope, full power is full power, no limitations other than the 5 listed above :). So go ahead, connect 1,000 clients to your Unity Editor server :D

    Can I get support for Forge Networking Free?
    You CAN get support for the free version of Forge Networking through the forums here on Unity just put "[FORGE]" in your thread title and we'll be searching for them :)

    If you have not heard of Forge Networking, please see this thread.

    We will be releasing this to the Asset Store in a couple of days, which means it should be up a few days after that :)

    Let us know what you think below :)
     
    Last edited: Mar 25, 2017
  2. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    This is awesome! I'm not a big fan of DLL releases, but in this case I think it definitely works. Besides the whole being strapped for cash right now, I'm also in that once bit, twice shy mode. After having purchased Bolt, MassiveNet, and others only to find out that they either don't work well for me or to have the developer give up and open source the project, I've been really hesitant to try Forge even after having developer friends rave about it. Being able to work it into my development pipeline before actually committing to a purchase and being able to make sure it is a good fit is BRILLIANT!

    It is probably going to be a couple of weeks before I can do anything with it, but will definitely pick it up to give you guys a try. :)
     
    theANMATOR2b likes this.
  3. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Thanks! We deliberated on this topic in deciding how we can show people the power of Forge Networking for the vary reasons you are stating. We also have had a lot of private requests from students and teachers to use Forge Networking for their classes. We do want to give access to everyone to truly evaluate the product as far as they want before they decide that Forge is for them.

    We have noticed that after the "fall" of one system, the limitations of the other, and the lack of flexibility of the others that people are not willing to throw out their hard earned money to try another system. We are so confident in Forge. Our support has spoken for itself, our flexibility has proven its worth, our ease of use has been spread to many listeners, and our development cycles have left others to re-evaluate how they do updates. We do not wish to limit anyone when it comes to developing networking games, we want nothing more than to make our system better and to build a strong community of multiplayer game and application makers! :D

    Thank you for your feedback and I can't wait for you to try out Forge and join the community :D. It'll be a blast!
     
    BackwoodsGaming likes this.
  4. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Update

    The package has been submitted to the Asset Store. Look for it to appear within the next few business days! :D
     
  5. blueagardq13

    blueagardq13

    Joined:
    Nov 6, 2012
    Posts:
    9
    Will it be possible for others to connect to the server hosted from the Editor? (Testing Purposes)
     
  6. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Yes :)

    If you are connecting via LAN then it will be ready to go once they get your LAN IP address.

    If you are connecting from the internet (WAN) then you will need to make sure that you have forwarded the specified port on your machine on your router firewall. This would be done the same way you would do any kind of port forwarding for a game or any other networked application when hosting a server :)
     
  7. OMGWare

    OMGWare

    Joined:
    Mar 4, 2014
    Posts:
    24
    Hey there, I'm considering moving from Bolt to Forge, this free version would be great for testing it out!
    I understand not having access to the live chat, but will we have access to the wiki since all updated tutorials seem to be only available there?
     
    BackwoodsGaming likes this.
  8. blueagardq13

    blueagardq13

    Joined:
    Nov 6, 2012
    Posts:
    9
    I doubt it since its a free version, but you still get the full power.
     
  9. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Full power doesn't really do much good though if you don't have access to all the tutorials and wiki in order to figure out how to do things. I can understand not offering live support to free users, but you kinda still want them to know how to do things. Successful free users convert to paid users if they are able to do everything they need to with Forge to get their games ready to publish.. ;)
     
    nxrighthere likes this.
  10. OMGWare

    OMGWare

    Joined:
    Mar 4, 2014
    Posts:
    24
    I completely agree with Shawn67, full power doesn't mean a lot without full knowledge too.
    I highly suggest Bearded Man Studios to open up their wiki pages now that free version is on the way, in order to have the most interest in people that want to try their product.
    I would most likely be willing to upgrade to paid but only after I understood the whole potential of the framework, which I wouldn't without all the available tutorials.
    In fact having access to tutorials doesn't mean you can get away with the free version because you can't go into production without live support and the permission to publish your game, and that should suffice as far as free-paid conversion go in my opinion.
     
    Last edited: Nov 7, 2015
  11. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    I would be very surprised if they didn't give you access to the documentation and tutorials. Did you try their EpicJoin as they suggested above? I think they may be moving information there.
     
  12. BackwoodsGaming

    BackwoodsGaming

    Joined:
    Jan 2, 2014
    Posts:
    2,229
    Not yet, since it isn't available yet. I was just responding to another @blueagardq13's response while we wait for an official Forge response. Definitely would be nice if that is the case though. :)
     
  13. blueagardq13

    blueagardq13

    Joined:
    Nov 6, 2012
    Posts:
    9
  14. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    We will not have access to the wiki since it is tightly coupled with purchase usernames at the moment. All of our official (non-user based) documentation will always be publicly available on the main site and on our EpicJoin docs :).

    Since users share more code that is relative to the main libraries in the Wiki, we want to keep their submissions private to others who have purchased and have the source so they can emulate the modifications.
     
  15. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    You betcha! We have not taken out any systems for Forge Networking Free. We have simply limited where you can host a server and the fact that you will need the full version to publish.
     
  16. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    We completely agree and have devoted the entire month of November to making tutorials and documentation on every inch of Forge Networking. All of the tutorials and samples that the Forge team produces will always be publicly available in the above mentioned links :)
     
    Teila, OMGWare and BackwoodsGaming like this.
  17. OMGWare

    OMGWare

    Joined:
    Mar 4, 2014
    Posts:
    24
    Seems absolutely fair, thanks for the explanation, looking forward to try it :)
     
    Teila likes this.
  18. JohanRosn

    JohanRosn

    Joined:
    Dec 3, 2013
    Posts:
    2
    Do you have an update on when the free version will appear on the asset store? I'm right about to start working on networking for a prototype game I have been developing, and it seems like the perfect time to evaluate forge. I was just about to start implementing unet but I would rather work with a product that fits my requirements for the production version :)
     
  19. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Unity has spent 2 weeks (even though they clam 3-5 business days) reviewing Forge Networking Free. We are now going to release the asset on our website, watch this thread and we will announce the release publically here :)
     
    BackwoodsGaming and zoid25 like this.
  20. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Forge Networking Free is now LIVE on the website! Go to http://developers.forgepowered.com/ to get started :D

    To download Forge Networking Free, you are going to have to register your account if you haven't already and once you have you will find the download ready to go in your developer profile! :D

    Unity has taken over 2 weeks to review the asset so we decided it was time to push it to our website. Please feel free to give it a go and let me know what you think! We are eager to hear if there are any bugs in the port from the core to free.

    Thank you so much for being a part of this process and participating in the community. We can't wait to hear all of your great feedback! :D

     
    Last edited: Nov 19, 2015
  21. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    @Sonnenspeer in relation to your question

    If any demo scripts are missing we will add them asap! You didn't have the "ForgeExample_Move.cs"? It has been renamed over time, we need to update the document for this. If you want the latest documentation for it, check out the website :D

    Also in relation to "NetworkedMonoBehavior" we have gotten some heat already for spelling it in the American English way. We will probably be adding a "dummy wrapper" that will be spelled with a "u" for this :)
     
    Sonnenspeer likes this.
  22. Sonnenspeer

    Sonnenspeer

    Joined:
    Sep 9, 2015
    Posts:
    21
    Thank you! The "ForgeExample_Move.cs" script is within the package.
     
  23. KHRZ

    KHRZ

    Joined:
    Mar 2, 2013
    Posts:
    56
    Thanks for the free version. There seems to be some discrepancy in the "Forge Networking.pdf" tutorial and the code (names not matching, e.g. it says to run "ForgeQuickStart" but the closest I found was "ForgeQuickStartMenu", and it doesn't contain a "start client" option. (I get "Exception: You are not allowed to connect to a host in the editor" when I try the other options). I am assuming this is for paid version and I must run it opposite, but if I host the server in the editor, I get the error "Scene 'ForgeZombies' (-1) couldn't be loaded because it has not been added to the build settings".

    I am hoping to write a mostly message based system, where the server gets a message from each user (where they serialize whatever I want) and the server regularly sends messages to all users, I am looking at the write custom/raw examples, but at this point is too unclear to me how I will do this, e.g. do I need to use a stream instead of some onMessageRecieved function for the write custom? Or must I use write raw, and handle all with BMSByte? Which is the best one of custom/raw? Also, not sure if there's a specific class to use when writing the server.

    I've heard it's possible and works well, but I'd like to make sure I do it in the simplest way and don't end up making something unnecessarily convoluted...
     
    Last edited: Nov 20, 2015
  24. JijiB

    JijiB

    Joined:
    Apr 13, 2015
    Posts:
    5
    Found a bug:

    Code (CSharp):
    1.     public NetWorker(int maxConnections, bool usingUnityEngine)
    2.         {
    3.             MaxConnections = MaxConnections;
     
  25. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    This bug is fixed in the latest full version of Forge Networking and is not found within the Free version, you are in the free thread, the main Forge Networking thread is here.
     
  26. Brent_Farris

    Brent_Farris

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

    Yes, I am sorry about this, we had a V2 pdf in the package. You can find the latest documentation on the website here :). We have updated that segment of the PDF and have uploaded a new version.

    Yes, in the free version the editor acts as a host and a build will act as the connecting client.

    This is because you need to add the "ForgeZombies" scene to your build settings within Unity. Just open up the build settings and drag/drop the ForgeZombies scene into this window under the scenes area. :)

    You are probably going to want to use the WriteCustom and RPC systems within Forge for this. We have various tutorials on RPC on the website listed above as well :)
     
  27. bug5532

    bug5532

    Joined:
    Aug 16, 2011
    Posts:
    307
    Hi,
    Is it possible to get the gameobject or networkedMonoBehaviour from an objects networkedID?
    I want to apply some settings when spawning an object, speed,color ect. Normaly instantiate would return the gameobject and then I could modify it.
    I'm guessing the best way would be to call an RPC from the System.Action<GameObject> callback.
    Or should I just set these on the server side and then send a network initiated from the new networkedMonoBehaviour?
    Any ideas on how to achieve this?
     
  28. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Yes, you can use the static SimpleNetworkedMonoBehavior.Locate method

    The networking system is fully mutli-threaded so it does not stop the main Unity thread to create objects on the network, because of this we have added a callback that will allow you to access the object once it is created - see this tutorial (note that GameObject has been replaced with SimpleNetworkedMonoBehavior) and this tutorial may help you with network specific objects (scripts) that are created

    Indeed, I should have read this part before I responded on the last one

    You can also call an RPC when the object has been setup on the network to initialize any variables that need to be changed that are not set on the prefab.

    Let us know if you need any further help with this :)
     
  29. bug5532

    bug5532

    Joined:
    Aug 16, 2011
    Posts:
    307
    That's what I was looking for! Don't know how I missed that!

    Ok next problem I've hit is I want to send a custom class which is [System.Serilizable] through an RPC. I've seen there's a [NetworkSerialized] flag, but not sure how to use this or if it will even help? How would I go about doing this?

    Thanks!

    EDIT:
    So I found the list of accepted Object Types, and I can convert my class into a byte[] so that works. Is there a better solution than that?
     
    Last edited: Dec 1, 2015
  30. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Nice! Well this is the way you will want to do it to have full control. You can add and remove fields as you wish. You can use any serialization libraries you wish in order to serialize to bytes as you can send an arbitrary byte[] across the network and then deserialize it on the other side. :)
     
  31. 20100

    20100

    Joined:
    Feb 20, 2014
    Posts:
    3
    Hello, I was wondering if it's possible to test out the MasterServer with Forge Free. It seems that when I load the MasterServer scene as mentioned in the online documentation, the script is missing on the gameobject. The features I'd like to test out involve playing with metadata during matchmaking mostly.
     
  32. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Hi there, what version of Unity are you using? We will need to add this to our bug reports.
     
  33. 20100

    20100

    Joined:
    Feb 20, 2014
    Posts:
    3
    Hi! It's (I believe) the latest and greatest free version, 5.3.1f1.
    Screenshot included.
     

    Attached Files:

  34. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Thanks for the screenshot, that clears up a lot. I'll put in a bug report and link this forum post. The script you can put in that place is just the "ForgeMasterServer" (/Assets/Bearded Man Studios Inc/Forge Networking/MainScripts/MasterServer/ForgeMasterServer.cs) script on there.
     
    20100 likes this.
  35. Cranick

    Cranick

    Joined:
    Nov 20, 2011
    Posts:
    310
    Interesting, will make sure this is working correctly in 5.3+
     
  36. Slawo

    Slawo

    Joined:
    Jan 29, 2014
    Posts:
    11
    I can't find Forge Networking Free in the asset store.
     
  37. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    Forge Free can be downloaded from the website. Just go to http://developers.forgepowered.com and register an account. After you do that, visit the "Profile" page and scroll to the bottom where Forge Free is :)
     
  38. nproject

    nproject

    Joined:
    Jan 16, 2015
    Posts:
    68
    Hi farrisarts,

    I want to make online multiplayer game. Sort of like a co-op / battle arena map like Hell divers/Warframe/WorldofTanks
    I need a matchmaking and local. player 1 creates game. Player 2, 3, looks at a list of created games and finds player 1s game and joins, player 1, 2, 3 plays together. or maybe auto matchmaking.

    1. If I buy Forge, do I need setup something else? like I have to rent dedicated server / VPS, server scripting?
    2. Can use this for MMORPG ? and store player info, inventory, etc.?
    3. Is it really no CCU or MAU ?
    4. 1 purchase for 1 game or many games?
    5. "Can I develop my game on this then buy the full version when I complete it?" After I buy full version, I just need to import the full version in asset store?
    Thanks in advance.
     
  39. yoash

    yoash

    Joined:
    Sep 3, 2013
    Posts:
    36
    Hey, I'm interested in getting this, just had a couple of questions about collisions.

    Do you guys have any tutorials on collisions?

    I want to buy this for a project where I need to detect when players collide with each other or a certain other object. For example if there is a health potion that floats around the level (synced on all client's screens) and player 2 touches it before anyone else does- How can I let every other client know to destroy the potion and and that player 2's health just went up 10pts?

    Also if player 1 and player 2 collide, can I send a message to all clients letting them know that it happened?

    Thanks
     
  40. Cranick

    Cranick

    Joined:
    Nov 20, 2011
    Posts:
    310
    1) You would need to have a dedicated host IP or have a matchmaking server hosted somewhere.
    2) Yes
    3) Yes
    4) 1 Purchase = Per Developer, unlimited games you make with it
    5) You can do just that, that is what made us make the Free version available. Although I will say that the latest version of Forge will always be updated for those who paid and will later get updated to the Free. So keep in mind that the Free version will always be a couple versions behind the paid one.
    Hope this helps!
     
  41. Cranick

    Cranick

    Joined:
    Nov 20, 2011
    Posts:
    310
    At the moment we do not, but collisions are handled by unity physics, we simply just add the networking layer to sync the positons/rotations/scale from one client to another.

    You can send a simple RPC to the other client to let him know you have gained 10 points and such. Having a dedicated server rely the information to the other clients is what is preferred but you can make a peer to peer matching as well.

    Yes, just send the message to the server doing a RPC and have the server delegate that rpc to the other clients or have it so that each player just reports that information to everyone, or just have it so the server is always the one who would report such a collision whereas the client doesn't handle that information locally.

    Hope this helps. :)
     
  42. djgriff

    djgriff

    Joined:
    May 29, 2014
    Posts:
    279
    Hi i am about to dive into multiplayer and a complete novice.
    I have purchased PUN+ on sale and also been looking at UNET, However Forge has been catching my eye in many discussions regarding multiplayer. However i have been unable to find a way to contact support and there is no reference to an email address on your website or the asset store which is kinda putting me off tbh. Apart from that there was a very negative post by someone about an issue recently with Forge and he could not get any kinda reply from you guys or to acknowledge it was an issue.. and he klinda states to stay away in many words ( can be found here : http://forum.unity3d.com/threads/mu...link-darkrift-forge-and-playfab.294852/page-4 ).

    I kinda wondering if this has been resolved and if you guys are actively supporting your product?
    Looking for some reassurance its active.

    Personally im not too sure CCU is the way to go even though i bought PUN+

    If i am to spend the time learning it i would prefer to stick with it , if that makes sense.

    Any way look forward to hearing back.

    Cheers
     
  43. Cranick

    Cranick

    Joined:
    Nov 20, 2011
    Posts:
    310
    Hello Djgriff!

    I totally understand where you are coming from and being completely new to the world of making networked games. There are so many options to choose from and overall I felt that it was just too complex to handle/do with what my vision was in mind. We have written Forge in a way so that even the people who have abstract ideas can flourish and make their dreams become a reality. Our support email has always been support@beardedmangames.com (Some reason there is a bug on the asset store page not displaying this information and we don't know why but could be a issue on unity's end possibly).

    The issue that Carter was mentioning has been in contact with one of our developers (Mark) and he has been actively working with Carter to figure out the issue that has been going on. We are currently expanding our feature set to support more wide testing of our networking solution so that in the future these issues can be thoroughly examined moving forward.

    We have been extremely busy this past month trying to hit a hard deadline by the end of this month and pushing out a MAJOR update. There will be support for WebSockets coming shortly as well as more roadmap features. We do believe in a non CCU model and we plan to stick by this.

    On this note we have also updated our documentation for the entire Forge Networking solution in ForgeNetworking_Documentation.pdf that comes inside the current asset store release.

    Please understand that we have high volume when it comes to emails and only 2 active developers. We personally respond quicker to those on our Slack and consider doing emails over the weekend.

    Hope this helps and that you will find the right solution for your needs.
     
  44. djgriff

    djgriff

    Joined:
    May 29, 2014
    Posts:
    279
    Awesome thanks for the detailed reply

    Best

    Daniel
     
  45. Who-am-I

    Who-am-I

    Joined:
    Mar 29, 2014
    Posts:
    73
    Sorry for my bad english

    I have downloaded the free version of Forge multiplayer plugin.
    It is really nice and fast.

    But I am facing one issue, I sync a int variable using by [NetSync] Tag.
    OnPress Down space key i am increasing the number of this int variable.
    I run server in editor and run a build as client
    when press down the space key on server it working fine But
    when I press space key on client its not increasing the number

    Code (CSharp):
    1. using UnityEngine;
    2. using BeardedManStudios.Network;
    3.  
    4. public class ClickOnCube : NetworkedMonoBehavior
    5. {
    6.  
    7.     [NetSync("PrintInText", NetworkCallers.Everyone)]
    8.     public int indexNumber = 0;
    9.  
    10.     public TextMesh label;
    11.  
    12.     public void PrintInText()
    13.     {
    14.         label.text = indexNumber.ToString();
    15.     }
    16.  
    17.     public void Update()
    18.     {
    19.         if(Input.GetKeyDown(KeyCode.Space))
    20.         {
    21.             indexNumber++;
    22.         }
    23.     }
    24. }
     
  46. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    This is because the server is the owner of that NetSync object. Only the owner can control the values of the object. This prevents random clients from being able to take over other players objects.
     
    Who-am-I likes this.
  47. Who-am-I

    Who-am-I

    Joined:
    Mar 29, 2014
    Posts:
    73


    In this video tutorial, client is changing value of number
     
  48. Deleted User

    Deleted User

    Guest

    What is Forge Networking business email? I've looked at their site but could not find any emails.
     
  49. Brent_Farris

    Brent_Farris

    Joined:
    Jul 13, 2012
    Posts:
    881
    support@beardedmangames.com
     
  50. HaimBendanan

    HaimBendanan

    Joined:
    May 10, 2016
    Posts:
    28
    I am looking into buying forge remastered, but I am a bit hesitant since I couldnt find any tutorials or video showing the process of making stuff with it.
    Does it come with examples? is there a free version to test it a bit?