Search Unity

uMMORPG Official Thread

Discussion in 'Assets and Asset Store' started by vis2k, Dec 29, 2015.

  1. iSleepzZz

    iSleepzZz

    Joined:
    Dec 23, 2012
    Posts:
    137
    Well like anything in a networked multiplayer game, everything you do need to be told to server and then server needs to tell all clients about it.
    What exactly are you trying to accomplish? Equipping different gloves for players?
    Also, let's see how you are instating the gloves right now.
    You can always instantiate it over the NetworkServer, however to keep it tracked you can have the NetworkTransform sync the position and rotation of it, however I can almost guarantee there are better solutions for you, however I just need to know exactly what you're trying to do.
     
    JBR-games likes this.
  2. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    This is the uMMORPG thread. Please join our Mirror discord for Mirror related questions :)
     
  3. iSleepzZz

    iSleepzZz

    Joined:
    Dec 23, 2012
    Posts:
    137
    Hello vis!
    Having some issues here... I tried using discord however im very inexperienced in using discord and could not receive any help:(

    I am trying to create a piece of armor like how you have setup on your Warrior class (armor pants).
    The pants' bones are rigged so that the pants will be properly worn on the warrior.
    I have the pants and I have my character. (all from Synty Studios poly characters)
    However, I am unsure how to rig up the pants to have the same thing like you did.
    Can you please give me a quick text-tutorial or a brief description on how to do it?

    P.S. my pants mesh does not contain an avatar. And when I try to create an avatar, it says "unable to create human avatar because it has no bones."
     
  4. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    Hey. My 3D Modeling knowledge is near zero, an artist did that for me. As far as I understand, she created a character with all the equipment on, then rigged and animated it, then exported only the character and only the equipment parts as fbx models.
     
    tylerguitar75 likes this.
  5. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    V1.175 [released 2019-07-09]
    • Entity: avoid Linq for performance and to reduce GC
    • Monster: avoid Linq
    • NetworkMessages: avoid Linq
    • Npc: avoid Linq
    • Party: avoid Linq
    • Player.IsOffender/IsMurderer: reuse GetBuffIndexByName
    • Player.HasLearnedSkill: reuse HasLearnedSkillWithLevel
    • Player: avoid Linq in hot path
    • Utils: avoid Linq where possible
    • Utils.InvokeMany: remove unnecessary ToArray call
    • UIUtils: avoid Linq
     
  6. wood333

    wood333

    Joined:
    May 9, 2015
    Posts:
    632
    I own mMMORPG, but I have not worked with it yet.

    1. If I start now, what version of Unity do I want to use, 2018.4 LTS or wait for 2019 LTS?

    2. I don't have the time or resources to run my own server, so for development, what hosting service would you recommend? I can afford to pay for hosting.
     
  7. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    Use exactly 2018.3.6, newer versions have a Linux server build bug that Unity is still fixing.
    For hosting I highly recommend google cloud. That's where I do all my tests, they just work really well. It's google, after all.
     
  8. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    V1.176 pending review:
    • NetworkManagerMMO.DoServerDisconnect: don't log if no playercontroller because that happens if a player disconnects while in lobby.
    • NetworkManagerMMO.OnServerCharacterCreate: don't log invalid class/already exists/etc. on a live server
    • Entity.GetSkill/BuffIndexByName: avoid allocations
    • Entity.AddOrRefreshBuff: reuse GetBuffIndexByName to avoid allocations
    • Entity.GetInventoryIndexByName: avoid allocations
    • BuffSkillEffect: reuse GetBuffIndexByName to avoid allocations
    • Player.GetQuestIndexByName: avoid allocations
    • PetItem: fix health being assigned before level, causing spawned pets to always spawn with level 1 max health
     
  9. sabbath1989

    sabbath1989

    Joined:
    Jan 20, 2016
    Posts:
    3
    Good night, is there any way for a player to sell things to another playing without using the switch? as if he makes a store and chooses the products he wants to sell!
     
    Neviah likes this.
  10. JBR-games

    JBR-games

    Joined:
    Sep 26, 2012
    Posts:
    566
    There is 3rd party assets for a auction house.. May be worth looking into..
     
    sabbath1989, tylerguitar75 and vis2k like this.
  11. karmik

    karmik

    Joined:
    Oct 8, 2014
    Posts:
    124
    Guys I am looking for devs / studio to develop a game by customising UMMORPG. If any one is interested please pm me.
     
    JBR-games likes this.
  12. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    We also have a contract work channel in our discord, maybe ask there too!
     
  13. LiLyDarcy

    LiLyDarcy

    Joined:
    Oct 10, 2018
    Posts:
    7
    No Database.sqlite file,Where is this file?
     
  14. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    It's created above the assets folder after your start the game for the first time.
     
  15. sabbath1989

    sabbath1989

    Joined:
    Jan 20, 2016
    Posts:
    3
    Good afternoon,
    You may already have the solution to the error below, this error is generated when a player loses the connection, either by leaving the game without terminating the application in a "normal" way or by crashing the internet.

    can you help me?

    This message is in Portuguese / Brazil
    Foi forçado o cancelamento de uma conexão existente pelo host remoto. -> It was forced to cancel an existing connection by the remote host.


    Send: stream.Write exception: System.IO.IOException: Unable to write data to the transport connection: Foi forçado o cancelamento de uma conexão existente pelo host remoto.
    . ---> System.Net.Sockets.SocketException: Foi forçado o cancelamento de uma conexão existente pelo host remoto.

    at System.Net.Sockets.Socket.Send (System.Byte[] buffer, System.Int32 offset, System.Int32 size, System.Net.Sockets.SocketFlags socketFlags) [0x00016] in <3845a180c26b4889bc2d47593a665814>:0
    at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x0009b] in <3845a180c26b4889bc2d47593a665814>:0
    --- End of inner exception stack trace ---
    at System.Net.Sockets.NetworkStream.Write (System.Byte[] buffer, System.Int32 offset, System.Int32 size) [0x000e2] in <3845a180c26b4889bc2d47593a665814>:0
    at Telepathy.Common.SendMessagesBlocking (System.Net.Sockets.NetworkStream stream, System.Byte[][] messages) [0x000ab] in <315716d60db54964a869bd3aa791f4a5>:0
    UnityEngine.Debug:Log(Object)
    Telepathy.Common:SendMessagesBlocking(NetworkStream, Byte[][])
    Telepathy.Common:SendLoop(Int32, TcpClient, SafeQueue`1, ManualResetEvent)
    Telepathy.<>c__DisplayClass8_0:<Listen>b__0()
    System.Threading.ThreadHelper:ThreadStart()
     
  16. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    Is this logged as an error or a warning?
    Can you make a screenshot of the error in Unity?
    Does everything else work fine? It can happen that a write fails if a player disconnected. Server should be able to handle it though.
     
  17. sabbath1989

    sabbath1989

    Joined:
    Jan 20, 2016
    Posts:
    3

    Good night, first sorry for the delay in replying, I was traveling, this message is information, the rest is working very well, I tried to simulate the message today and fail, I had 2 codes for mobile another desktop, today did The tests on the desktop version, the error did not happen, I will gather more information if the problem continues.
     
    vis2k likes this.
  18. setauz

    setauz

    Joined:
    Jan 19, 2017
    Posts:
    5
    Hi vis2k,

    I bought UMMORPG years ago but never been able to use it cuz i dont have any networking knowledge (still the same). So i want to make a single offline RPG game with UMMORPG. I see you have URPG asset now for this but i dont want to pay another 40$ ( i already paid UMMORPG 80$ ).

    So i just want to ask, what is the easiest way to ignore networking part of the asset and make a simple RPG game with it?
     
  19. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    You could change all NetworkBehaviours to MonoBehaviour.
    uRPG is definitely easier for a single player RPG though. Mostly because it has a more action based movement and combat system.
     
  20. Neviah

    Neviah

    Joined:
    Dec 1, 2016
    Posts:
    202
    Heeyyyy ^_^

    Any news on the W-A-S-D movement front? In 3rd person? Just checking in. :3
     
  21. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    Not yet, sorry.
    Been busy with a new low level transport for Mirror.
    Afterwards uSurvival again.
    Then uMMORPG :)
     
    Neviah likes this.
  22. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    V1.178 pending review!
    • Mirror updated to latest version (authenticators, allocation free sends)
    • NetworkManagerMMO.OnStart/StopServer: remove unnecessary base calls
    • NetworkAuthenticatorMMO component added to NetworkManager. takes care of all the authentication, and unauthenticated connections can't send messages (or bypass authentication) anymore; OnServerLogin addon hook renamed to OnServerConnect.
    • Player.OnDamageDealtToPlayer calls QuestsOnKilled for self and for all party members if a player was killed. This allows for kill-player type quests.
    • NetworkNavMeshAgentRubberbanding: send position each syncInterval no matter what. should avoid cases where client positions get slightly out of sync.
     
  23. Kytestar

    Kytestar

    Joined:
    Oct 9, 2018
    Posts:
    5
    Is there anyway that I can change uMMORPG to have a lobby system like your uMOBA? I want an engine that I can host locally with 4-10 people (lobby), that is a dungeon crawler which saves character details (3rd person view).

    I have uMMORPG, which has character saving but it does not offer local hosting (as obviously its an MMO engine). I have uRPG which has character saving but no networking and I also have uMOBA which has the lobby system but no database saving. I kinda want a mix of all of these and uMMORPG seems like it would be the easiest to change.

    Could you give me some pointers how to convert uMMORPG to a lobby system pls
     
    JBR-games likes this.
  24. Lodex2002

    Lodex2002

    Joined:
    Aug 1, 2019
    Posts:
    3

    Would be nice to have all U assets cross compatible.
     
    JBR-games likes this.
  25. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    If you already have uMOBA then just try to port over the lobby. It shouldn't be too difficult.
     
  26. scumprince

    scumprince

    Joined:
    Sep 30, 2019
    Posts:
    2
    Hello there! Id like to know how to add pre created prefabs to character selection menu. Thx)
     
  27. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    Did you take a look at the documentation?
     
  28. scumprince

    scumprince

    Joined:
    Sep 30, 2019
    Posts:
    2
    Yep sorry got it. New question) Now I think my question not very silly) How 2 lock characters player could choose? Like you get to character selection window, pick your character and go on.

    vis2k, Ill send the order number tommorow)
     
    Last edited: Oct 6, 2019
  29. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    V1.179 pending review:
    • Mirror updated to latest version (websockets build bug fixed)
    • NetworkmanagerMMO.OnClientDisconnect: removed redundant StopClient call because base function already does so
    • NetworkManagerMMO: character creation code moved into separate function
    • Reimplement SQLite database for 10x performance improvements. make sure to delete your old database file when upgrading manually.
    • Item cooldowns reimplemented. Cooldown buffs aren't needed anymore, instead Player.itemCooldowns sync dictionary handles the cooldown categories now. Cooldown circle added to items in UI too.
    • NetworkManagerMMO.OnServerAddPlayer replaced with OnServerCharacterSelect and CharacterSelectMsg to avoid obsolete Mirror warnings. NetworkManagerMMO.OnServerCharacterSelect addon hook added too.
    • NetworkManagerMMO: set client ready after selecting a character. not after connecting.
    • Fixed all build warnings
    • Database: character_equipment table uses same layout as character_inventory to avoid accidental data loss in case someone makes a game where summonable items can be equipped.
    • ScriptableRecipe.Find function that is used everywhere instead of manually searching the dictionary
    • ScriptableRecipe.IngredientsNotEmpty function that avoids Linq
    • CmdCraft: pass recipe name so that the server doesn't have to search the whole recipe dict, which would potentially slow down the whole world
    • CmdCraft caches recipe so Craft() doesn't have to search for it again. Now the server never searches all recipes anymore.
    • Fixed crafting UI slots being cleared each time in host mode, while they would remain in client-only mode (as intended)
    • NetworkManagerMMO.GetNearestStartPosition: avoid Linq
    • NetworkManagerMMO.MakeCharactersAvailableMessage: avoid Linq
    • NetworkManagerMMO.GetPlayerClasses: avoid Linq
    • NetworkManagerMMO: cache player classes in Awake
    • NetworkManagerMMO.GetStartPositionFor: avoid Linq and reduce GetComponent calls

    Maybe disable the create button?
     
  30. Lodex2002

    Lodex2002

    Joined:
    Aug 1, 2019
    Posts:
    3
    Can someone explain how to implement attacking while moving? I have been all through the Player script and it seems it should be easy, but its not. I have tried several changes and I can get the skills to cast while moving but not finish and apply damage until moving stops.

    Any help would be appreciated.
     
  31. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    Check out the player state machine in Player.cs.
    It has a few IsMoving checks for skill casts and agent.Reset calls to stop moving when casting, stunned, etc.
     
  32. Lodex2002

    Lodex2002

    Joined:
    Aug 1, 2019
    Posts:
    3
    Thanks for the reply.
    I already commented out the agent.reset in Player.cs., That lets me start the cast while moving but not finish it and apply damage until moving stops.

    I think it has something to do with whats going here.

    NetworkNavMeshAgentRubberbanding: added state check to the 'rubber' (validation) part to reject movement during casting/stunned/dead etc. no matter what. The player FSM already resets it, but we would still get twitching and lookAts otherwise.

    But I'm not really sure. Any advice?
     
  33. injerto

    injerto

    Joined:
    Sep 22, 2019
    Posts:
    6
    Can I host the server on Amazon AWS Linux machine? Or do I depend on external services like UNET?
     
  34. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,265
    You can host it anywhere you want. E.g. amazon, google cloud, etc.