Search Unity

  1. Unity 2019.2 is now released.
    Dismiss Notice

uSurvival Official Thread - Unity Multiplayer Survival Asset

Discussion in 'Assets and Asset Store' started by vis2k, May 14, 2018.

  1. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Zombies already use the built in Navigation system (which uses A*)
     
  2. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Update:
    V1.6 [released 2018-06-26]
    • NetworkTransformRubberbanding: start, goal, previousPosition are now public in case other components need it
    • PlayerMovement: MoveState enum type changed to byte instead of default int to save 3 bytes for each Cmd/SyncVar
    • IKHandling: only call CmdSetLookAt if lookAt position changed
    • PlayerMovement.CmdSetAnimData doesn't send velocity and jumpLeg anymore. PlayerAnimation guesses it based on NetworkTransform to save a lot of bandwidth
    • NetworkTransformRubberbanding sync rotation X/Y/Z component flags to save bandwidth. Volund only syncs Y rotation now.
    • PlayerMovement.Update: CmdSetAnimData is called while dead too now
    • Reverted usage of StateUpdate channel everywhere and removed it from NetworkManager channels. Caused bugs where other clients would be left in the air because clients wouldn't alwasy receive new SyncVar values
    • Disabled item use while free looking, so people don't fire into free look direction when clicking the mouse button while free looking
    • PlayerMovement: fixed NullReferenceException on server if client started climbing because server tried to initialize free look too
     
    umcherrel likes this.
  3. Tegleg

    Tegleg

    Joined:
    Jun 10, 2013
    Posts:
    58
    just got this, everything seems to work ok, thanks.

    if i may make some suggestions for future updates
    • Hats! or a way of attaching things to the player, be it armour or something purely aesthetic.
    • +1 for vehicles. some kind of generic enter/exit script. so you could apply it to cars, horses, planes, boats, tanks, or anything you can control
     
    SirTwistedStorm and vis2k like this.
  4. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Thanks for buying!

    Things can already be attached to the player, because I copied that code over from uMMORPG (where this is already possible). I just don't have any extra 3D models for that yet - stuff like pants needs to be rigged and animated, this is a bit tedious.

    Vehicles would be cool, will see :)
     
    tylerguitar75 likes this.
  5. kaustek

    kaustek

    Joined:
    Oct 5, 2013
    Posts:
    7
    I've spent the last few months trying to make UMMORPG do exactly this, but I've been so thrilled with the quality and support of UMMORPG I went ahead and purchased this asset. Never been so happy to "start over".
     
    vis2k and ICGames like this.
  6. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Good to hear, good luck!
     
  7. johny256

    johny256

    Joined:
    Mar 3, 2015
    Posts:
    186
    Add first persin animation...Run,Walk, Weapon Throwing.Swiming.etc...
    COMPATIBLE and asset Animated Fps Weapon??
     
  8. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    You can already do first person if you use your mouse scroll wheel to zoom in.

    Swimming etc. maybe later yea. Focus is on bug fixes and stability first.

    Not sure what you mean with animated fps weapon. You can animate your weapon if you want.
     
  9. Template974

    Template974

    Joined:
    Nov 21, 2014
    Posts:
    3
    Hello, UMA is easy to integrate ?

    Thank's
     
  10. johny256

    johny256

    Joined:
    Mar 3, 2015
    Posts:
    186
  11. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Haven't tried it yet. People did manage to do that for my other uMMORPG asset, so it should be possible somehow.

    If it's just weapon mdoels, then sure.
     
  12. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Progress: V1.10 released, and a few others before that.

    Still working on getting the core features perfect. Worked on LookAt sync bandwidth optimizations today: it now takes 2(!) instead of 12 bytes.

    Previously the Cmd took 120 bytes/s. The SyncVar took 120 bytes/s per observer.
    => So for our previous 5 people WebGL test it took 1200 bytes per player.

    The Cmd takes 20 bytes/s. The SyncVar takes 20 bytes/s per observer.
    => So for our 5 people WebGL test it takes 120 bytes/s per player.

    This is not all. It uses a direction instead of a position now, so it doesn't sync if we move without moving the mouse.
    This is still not all. The direction is quantized, so it only syncs if we changed it quite a bit, not for every millimeter.

    In other words, lookAt now uses 1/10th of the bandwidth at max, probably 1/20x on average. So a 10-20x improvement.

    Next WebGL test coming soon..
     
    pixelsteam, ICGames and Neviah like this.
  13. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,601
    Hi, a few questions if I may. Does this support, Android, or IOS? Is there any plans for networked harvesting, example. Harvesting is fairly easy, itself is easy . So for example something like Vegetation Studio.. is there plans for any examples networked. ? Thanks I'm not an ace at networking, but I been programming a long time, so looking for something, for learning networking. and expanding my networking experience. Do you recommend your tool for something like this?


    Last, can you tell me the difference with your two assets. U survival and UMMORPG. If you already own say UMMORPG, what is the difference between the two? Just wondering.

    Is all Source Code included? are there any DLL's?

    Thanks!! for any information. I wanted to know before I thought about buying .
     
  14. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Hi. It runs on any platform that Unity supports, but you'd need to add mobile controls on Android/iOS. Unity has some assets for that in the standard assets package already.

    Harvesting is planned for later yes.

    uSurvival is more action / fast paced with character controller player movement, firing weapons, etc. uMMORPG is on the Navmesh, no jumping etc.

    If you want a game like DayZ, then go with uSurvival. If you want a game like World of Warcraft, go with uMMORPG.
     
    recon0303 and Neviah like this.
  15. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Update: V1.11 released. Here is the changelog, including the updates from the last couple of days:

    • V1.8 [released 2018-07-02]
      • NetworkManager UnityVersionCheck version updated to 2017.4.6 too
      • UI Hotbar moved to foreground so items can be dragged from main UI to hotbar again
    • V1.9 [released 2018-07-04]
      • Item Use (Firing) Prediction
      • UsableItem.CanUse now returns Usability.Usable/Cooldown/Empty/Never instead of a simple bool. This way we can play the weapon's empty clicking sound only if it's really empty, not while only on cooldown etc.
      • AlsoSprachZarathrustra isn't played by default anymore
      • UsableItem.cooldown added and reused by weapon items instead of attackInterval in WeaponItem
      • Cooldown added to axe/stg44/beretta tooltips (as attack interval)
      • Damage added to axe tooltip
      • PlayerHotbar.CmdUseItem resets cooldown for all usable items now, instead of MeleeWeaponItem/RangedWeaponItem Use() resetting it themselves
      • PlayerHotbar.usageEndTime is not a SyncVar anymore and is set on server after usage and on client in RpcUsed call instead. Saves 4 bytes bandwidth each time and allows us to set it directly for local player in TryUseItem, which fixes issues where clients couldn't shoot as fast as the fire interval because the useEndTime took too long to be synced to the client. Also added a server message if usage was rejected, which might still happen if two usage packets arrive at the same time on the server, etc.
    • V1.10 [released 2018-07-05]
      • Fixed upper body climbing animation when climbing while holding a weapon
      • Axe zombie hit sound improved
      • Hydration increased to 2000 to make it less stressful
      • Fixed ground flickering where floor and ground overlapped
      • Item drops don't drop through walls anymore
      • Camera view block check only happens in third person now to save computations
      • Fixed Camera going through walls in third person when looking downwards
      • Added 'Doors' layer to camera view block layers so it doesn't go through doors in third person
    • V1.11 [released 2018-07-06]
      • PlayerLook component contains all camera logic now and syncs the lookDirection instead of IKHandling syncing the lookPosition. Saves bandwidth and greatly reduces complexity.
      • PlayerLook synced look direction is compressed from 12 into 2 bytes by converting it to a rotation and then compressing the X and Y angles into bytes
      • Utils.PackTwoFloatsIntoByte and unpack added
      • PlayerLook syncs free look state over the network, so that other player's arms don't follow the look direction while they are free looking
      • MeleeWeapon.SphereCastToLookAt: behindOrigin is now really behind us, not just in the opposite look direction, which caused bugs where we would try to cast the sphere from our feet when looking upwards, then the sphere would ignore the wall in front of us and we could hit zombies behind the wall
      • PlayerLook.LateUpdate: removed unnecessary 'newPosition' variables
      • PlayerLook.LateUpdate first person code simplified
      • PlayerLook offsets changed to Vector2. Z offsets shouldn't be allowed, otherwise people can look through walls by tilting their head forward (from looking downwards). Avoiding this in camera logic is way too complex otherwise. Also changed volund third person X offset so that the crosshair is slightly next to his head, to allow easier item pick up. This also allows for way easier view block raycast logic and fixes all kinds of weird issues like the camera sometimes going through the ceiling, etc. View blocking now always uses the exact line to the crosshair position, which feels perfect.
      • ZombieFSM.IsReachable moved to Utils
      • Interaction uses IsReachable, so that items can't be picked up through walls anymore. Checks happen on client(so that the interaction text isn't shown through walls) and on server, so that hackers can't pick items through walls without entering the building, etc.
     
  16. johny256

    johny256

    Joined:
    Mar 3, 2015
    Posts:
    186
  17. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,601

    Ya I know how to program for mobile, as far as everything, Networking is my weak point. But I been a UX.UI programmer, Designer, artist for 20 years. So i'm good to go there. Harvesting itself is easy to program but networking there is a bit more to it. So i'm not an ace at networking, as I'm learning that end of it, so a pack like this would be great for learning. by the sounds of it. I have used Bolt, Pun, Unet and a few others.


    Thanks for the information ! on everything else. appreciate it.
     
    vis2k likes this.
  18. crimsonmortis

    crimsonmortis

    Joined:
    Feb 21, 2016
    Posts:
    60
    Love this so far great work!!!

    I have both Enviro and Unistorm. I know very little coding and have been only able to get Enviro working properly. I wish to use Unistorm since it all ready has a temperature system in it.

    The Unistorm weather seems stuck where the player spawns in at though I suspect if I attach a script I saw to follow the players location that will fix that. The camera and sound issue is stumping me though. Unistorm seems to be working fine but it seems to add in a unistorm character controller which spawns when I start the game, then when I log in I fall and spawn the Usurvival character who takes damage but can not inflict it and has no gun sounds. I wish it had a Unet auto set up script in the wizard options!!

    Anyways having a blast with it so far and the issues I do have are from all the add ons I keep stuffing into it!!!
     
    vis2k likes this.
  19. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Thanks. Never tried Unistorm myself, sorry.
     
  20. Ullukai

    Ullukai

    Joined:
    Aug 24, 2010
    Posts:
    737
    Awesome asset ! Thanks ! I just got it a couple days ago...

    I got EBS 4.0 working in it now but it won't keep the base that I made and ...

    I have terrain there ingame but after I modify it by digging it does not keep the dig dugged part .. you dig what I'm saying ?

    How to get it so it keeps the digging that was dug you dig ?

    How do you save the base buldings and terrain modifications to show up again after restarting the game ? How do I keep them insync across networks in a multiplayer game ?


     
  21. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    I never used EBS, sorry. If there's a bug in a third party addon / asset then you should probably ask the developer that made it.
     
  22. Ullukai

    Ullukai

    Joined:
    Aug 24, 2010
    Posts:
    737
    Okay but I'm sure everyone would want to add terrain to their uSurvival game. So how is it done ? That goes for the multiplayer part too. Terrain is not third party is it ?

    What about the buildings ingame in the uSurvival demo then ? How do we add environments so that they show up in a networked game and how are they saved ?
     
    Last edited: Jul 14, 2018
  23. crimsonmortis

    crimsonmortis

    Joined:
    Feb 21, 2016
    Posts:
    60

    Is it you need to serialize the scene information and save that? By default I would not expect it to save the scene information but revert it to the pre-run time state saving scene information is not a "simple by default" thing.
     
  24. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Add the terrain, add a terrain collider, rebake the navmesh, done.

    If you want to add a house or a tree or similar, simply drag it into your scene, add a collider, rebake the navmesh.
     
  25. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Progress: V1.17 submitted for review. Fixes, improvements, dark UI:

    upload_2018-7-23_21-17-7.png




    V1.17
    • Energy send interval changed from 100ms to 500ms because it usually only changes once per second anyway, 500ms is still enough in case of damage etc.
    • PlayerRespawning send interval changed from 100ms to 1s because respawn time just doesn't change that often
    • NetworkTransformRubberbanding, PlayerLook, PlayerMovement send intervals changed from 50ms to 100ms because that's enough
    • UILogin.registerButton not interactable while connecting anymore
    • NetworkManagerSurvival.state added so that Login/CharacterCreation/CharacterSelection UIs know when to be visible. Fixes a bug where character selection would be shown while server closed and disconnect wasn't detected yet.
    • UILogin status shows 'Handshake' now too
    • UILogin status text position fixed
    • Dark UI
    • Energy icons
    • UI Hud is not shown during login anymore
    • PlayerLook.OnNetworkDestroy releases camera to fix a bug where there would be no more camera after the server died and the client's player was destroyed
    • PlayerLook.LateUpdate: don't zoom while cursor over a UI
    • UI temperature decimal digits configurable (reduced from 2 to 1 so that they don't overlap with the status panel temperature icon)
     
  26. Dareheim

    Dareheim

    Joined:
    Oct 12, 2013
    Posts:
    7
    How to enable the GM console? ;)
     
  27. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    There is no GM console (yet) :)

    That tool is just sitting on my hard drive waiting to be finished. I only hacked this together for the uMMORPG and uSurvival stress tests, it's far from finished.

    Will probably make it a real asset at some point though, a lot of people seem to want that too!
     
  28. JMyerscough

    JMyerscough

    Joined:
    Jul 12, 2012
    Posts:
    110
    Do you plan on making the character controller more advanced? Sprinting, aiming down sights, etc?
     
    SirTwistedStorm likes this.
  29. SirTwistedStorm

    SirTwistedStorm

    Joined:
    Sep 20, 2015
    Posts:
    182
    Honestly I'd say not any time soon, this is first and foremost a multiplayer frame work.
     
  30. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Sprinting is already implemented.
    What do you mean with aiming down sights? You mean like sniper rifle zoom?
     
  31. TonyFil

    TonyFil

    Joined:
    Aug 9, 2017
    Posts:
    10
    Good Asset
    But I would like to share my suggestions
    1) Need a detailed instuction with an example of how to change the Player
    2) Also need a detailed instruction how to add equipment
    3) I would like to see a sight for all weapons (right mouse)
    Thank You
     
  32. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Thanks.
    I agree on all 3.
    Equipment tutorial will follow as soon as I have equipment meshes. Waiting on an artist for that.
     
    SirTwistedStorm likes this.
  33. Cybit

    Cybit

    Joined:
    Sep 17, 2016
    Posts:
    15
    I have a question about the animation system you use for the player character. How easy/difficult is it to add custom animations to the player character. So, as an example, I could have the player character interact with a door knob or other object? Is the player character using a ragdoll/IK system?
     
  34. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Should be rather easy. It's just the usual Mecanim animation controller and you can modify it any way you like.
    Player uses IK to put hands on weapons yes.
     
  35. Cybit

    Cybit

    Joined:
    Sep 17, 2016
    Posts:
    15
    Thanks for the quick reply vis2K, adding actions like wood chopping, mining, sitting in chairs, sleeping and basic space flight are what I'm looking at adding. Just to mention a few. I'm already in a closed Alpha testing state and am looking at adding your net code to my project. I may have other questions after our group meeting today.
     
  36. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Good luck! Make sure to join our discord, see my signature.
     
  37. Fanimation

    Fanimation

    Joined:
    Aug 22, 2017
    Posts:
    2
    So just bought this asset today and I am already in love with it!! I've seen your work with UMMORPG and you seem to be one of the hardest working developers here, so I didn't even give it a second thought when buying this.I'll be up for hours on end now making some neat additions and bugging my friends to help test it. If i can add some suggestions,

    - NPC/QUEST System , I know you didn't have it planned, but I think it would be cool to have a NPC Survivor Rescue / Item fetch system, similar to the Alchemist on uMMORPG
    - NPC Ally / Pet System, as you have in uMMORPG, could be tied in to the Quest system, everyone loves NPC allies!

    I'm not sure if those would be hard to add in, but I think it would add a great Dynamic that would definately seperate itself from all other survival type assets.

    Again thanks alot for all the hard work, I look forward to the future updates!
     
    vis2k likes this.
  38. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Thank you!
    To be honest, NPCs really don't have a high priority because I am going more into that DayZ direction.
    But maybe you could make an addon for the community?
     
  39. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Progress: next uSurvival update is pending review. It fixes several bugs and prepares for a huge networking update with HLAPI_CE:

    • V1.18 [released 2018-08-24]
    • Login UI quit button now calls NetworkManagerSurvival.Quit so it works in the editor too
    • PlayerMeta.nextRiskyActionTime [SyncVar] removed because it wasn't used anymore
    • UIDragAndDropable: added origin.dragable check to fix a bug where undragable items could still be dragged to the Hotbar because Unity called OnDrop even if our object's dragable was set to false
    • NetworkNavMeshAgent send interval changed from 0 to 100ms so it doesn't ddos the server with the latest HLAPI CE fixes where sendInterval actually works
    • NetworkNavMeshAgent reimplemented: huge bandwidth reduction because click movement only syncs when destination changed now, not while velocity changes (all the time previously). Also fixes several twitches for wasd moving clients. Added perfect warp detection + Rpc now too.
    • Removed channel tags to prepare for new networking. Removed unreliable channel from NetworkManager so it only uses one ReliableFragmented channel for everything now.
    • NetworkTransformRubberbanding: interpolation points are reset after a force position change. Fixes a bug where other clients would slide to the respawn position after respawning
     
    DocQ likes this.
  40. DocQ

    DocQ

    Joined:
    May 30, 2013
    Posts:
    11
    If you are using the older version of Unistorm, update to 3.0, its working great so far, but enviro is a good option also
     
  41. DocQ

    DocQ

    Joined:
    May 30, 2013
    Posts:
    11
    I spoke with Pixel Crushers and he said he would get it implemented for Usurvival, he said it shouldn't be too difficult since it already works with Ummorpg
     
    TonyLi and vis2k like this.
  42. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    9,763
    I'll be working on a Quest Machine addon for uSurvival starting on Monday.
     
  43. Hitch42

    Hitch42

    Joined:
    May 12, 2015
    Posts:
    97
    That's great. uSurvival's functionality, combined with questing is exactly what I'm looking for. I still maintain that combining the features of uMMORPG and uSurvival would be an incredible asset.
     
    CrandellWS and SirTwistedStorm like this.
  44. Cascadex

    Cascadex

    Joined:
    Oct 5, 2014
    Posts:
    68
    Will it ever be possible to add modular base building and vehicles? like a vehicle player controller script that controls all of the basics how about harvesting resources??
     
  45. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    All those features would be cool. This takes a lot of development time and research though, it won't happen by tomorrow. Especially vehicles.

    The first one to be implemented from the ones you mentioned will be base building.
     
  46. Ocodo2020

    Ocodo2020

    Joined:
    Aug 26, 2018
    Posts:
    4
    I was thinking of picking this up, but not sure on if there is a loot storage system. Checked the demo out and didn't see it there. Will that be added anytime soon?
     
  47. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Do you mean something like putting loot into tents?
    That's not there yet no.
    Might happen, not sure yet. Right now I am focused on the core features to get this 100% perfect first!
     
  48. Ocodo2020

    Ocodo2020

    Joined:
    Aug 26, 2018
    Posts:
    4
    such as putting loot into a box or some sort of storage. Like what most survival games have, which is why it should be a core feature. You said you're taking this more into a Dayz direction, and it had loot storage

    There is a survival game called Miscreated that failed because the game lacked storage containers.


    Just my two cent. I'm sure other consumers would want this too
     
    SirTwistedStorm likes this.
  49. SirTwistedStorm

    SirTwistedStorm

    Joined:
    Sep 20, 2015
    Posts:
    182
    Will we have ownership of the buildings that can be built? Like if player Frank builds a house player Robert can't just add on to it without permission but he could destroy it with enough resources? Also player storage seems 100% necessary and is one of the most requested features that I've seen.
     
  50. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,276
    Not sure yet. First step will be building simple structures that can be destroyed.
     
    SirTwistedStorm likes this.