Search Unity

uMOBA - Create your own Dota/League of Legends Game

Discussion in 'Assets and Asset Store' started by mischa2k, May 15, 2016.

  1. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    2016-06-10.jpeg
    uMOBA - the first multiplayer MOBA project on the Asset Store!
    (Asset Store) (WebGL Demo) (Chat) (Documentation)

    About:
    The previous uMMORPG asset solved a lot of difficult networking issues. Many developers wanted to learn how to create a Dota/League of Legends style MOBA game with Unity, so we created one!

    uMOBA is developed by @vis2k and @ArtsyChen. Please post your questions and feature requests in this thread. We will keep you up to date about any changes here!

    Screenshots:
    a.png
    c.png
    f.png
    h.png

    Features:
    * Fully Unity + UNET based
    * Same Scripts for Client & Server
    * Beautiful, customizable UI
    * Huge MOBA sized map
    * Uses Unity's new UI system
    * Players, Monsters, NPCs
    * Jungle Creeps
    * Towers, Barracks, Bases
    * Fog of War & Team Proximity Checker
    * Movement via Navigation
    * Animations via Mecanim
    * Beautiful 3D Models
    * 3 Lanes
    * Team based Health Bars
    * Team, All, Whisper, Info Chat
    * Minimap
    * Levels
    * Skills & Buffs, AoE Skills, Skill Levels
    * Items & Gold
    * Hero Selection
    * NPC Trading
    * PvP
    * Death and Respawning
    * Only 2500 lines of carefully crafted C# Code
    * Secure: all Logic is simulated on the Server
    * Server can run on Linux in Headless mode
    * MOBA Camera with Zoom
    * Lobby & Matchmaking
    * Network Time Synchronization
    * Platform Independent: works where UNET works
    * Mobile Support
    * Free of Deadlocks & Race Conditions
    * Death and Respawning

    Mantra:
    All the architecture was designed with simplicity in mind. The code will be kept as short and as simple as possible - this is the only way for a indie MOBA to succeed.

    Roadmap:
    • V1.0 [released 2016-06-08]
      • First release with a whole lot of features already.
    • V1.1 [released 2016-06-14]
      • Note: please Upgrade to Unity 5.3.5!
      • Upgraded to Unity 5.3.5
      • Adjusted the rocks
      • Players can't attack themselves anymore
      • Added NetworkProximityCheckerCustom to entities
      • Inventory Hotkeys
      • Improved tower positions
      • Slightly increased monster aggro radius
      • Updated documentation
      • AoE skills
    • V1.2 [released 2016-06-16]
      • Updated Documentation
      • Heroes now have 5 Skills (1 default attack and 4 QWER skills)
      • Players can now assign one skillpoint in level 1 already
      • Projectiles rotation is now set in Start already
    • V1.3 [released 2016-06-22]
      • Note: when upgrading your custom projects, make sure to also redo all properties for you skills.
      • Skill upgrades
      • Utils.PrettyTime doesn't return an empty string for '0' anymore
      • Added a missing target null check in UpdateCasting
      • Monsters don't nervously switch between two close entities anymore. Only if one of them is 20% closer than the current target
      • Removed unused Monster.rewardSkillExp property
      • Players now gain gold and experience rewards from towers
    • V1.4 [released 2016-06-27]
      • Skills and Items are now loaded via Resources.LoadAll and were moved into the resources folder
      • Adjusted NavMesh settings so that the indicator circle isn't below the surface anymore
      • Removed unused properties: Player.account, Player.className
      • Skill.autorepeat is now skill.followupDefaultAttack. Casting an attack skill on a target won't stop the combat afterwards anymore and the hero will keep attacking with the default attack instead.
      • Renamed 'TowerEvilx' prefab to 'TowerEvil'
      • Deleted unused tower_heroic prefab
      • Adjusted health bar colors to green and brown
      • Disabled damage popups like in most MOBA games
      • Casting a skill is now canceled if the target disappeared or died
      • Simplified player skill animations. Only using 'skillCur' variable for everything now.
      • Player OnDestroy syntax improved
      • Player.LateUpdate now uses the ClientCallback attribute instead of the 'isClient' check
      • All animations now have the correct exit time, because Unity expects it to be normalized, which it wasn't before.
      • Simplified Player.CancelAction function
    • V1.5 [released 2016-07-03]
      • New Scarab minions
      • Skill system moved to Entity.cs so that Players, Monsters and Towers can all use it
      • Monsters and Players now use the 'speed' parameter for animations again. Also added a comment about why this is so important.
      • Slightly reduced the area light intensity.
    • V1.6 [released 2016-07-18]
      • Disabled fog to improve performance
      • Removed two of the four lights to improve performance
      • New deterministic finite state machine
        • Each state reacts to each event now
        • The state can now only be set via return value of the state update function
        • Fixes a few state related issues
        • Everything is much simpler and cleaner now
      • New BaseEvil and BaseGood models
        • Note: they will be used for the barracks later, but they look really cool as bases too
      • Adjusted a foliage Y position near the evil base
    • V1.7 [released 2016-07-22]
      • Tooltips for Quests, Items and Skills reimplemented.
        • The code is much simpler and the tooltip text can be set in the Inspector. The code simply replaces the variables like {DAMAGE} in the tooltip text.
        • Not all items have to have the same tooltip now. Health potions can simply contain the amount healed, they don't need to show that they do 0 damage etc.
        • All tooltip code was moved out of SkillTemplate/ItemTemplate and into Skill/Item for consistency.
      • Player automatically respawns after a certain time now.
      • Removed target window.
      • Removed duplicate EntityTargetSync component from Orc.
      • Added missing NetworkNavMeshAgent component to Orc.
      • Added CannonBalls and Scarabs to LobbyManager registered spawnable prefabs list to avoid UNET bugs in clients.
      • Skill constructor time code syntax improved.
      • Extensions import syntax improved.
      • ConsoleGUI syntax improved by moving the #if #endif macro around Awake.
      • Entity doesn't require an animator component anymore. Players and monsters do now. This is for cases where Entities don't have animations (towers, dummies, etc.).
      • Entity doesn't cache transform component as 'tr' anymore for easier readability and shorter code.
      • Entity.IsMoving syntax improved.
      • Entity.OnAggro syntax improved.
      • Entity.CastCheckTarget syntax improved.
    • V1.8 [released 2016-07-26]
      • Barracks now have a death animation
      • Renamed Foliage5 to Foliage for consistency
      • Players now lose gold on death too
      • Entities can now be invincible as long as all entities in a certain list are still alive. For example, the base is now invincible while all towers are alive.
      • Moved Editor folder into Standard Assets folder.
      • Implemented NetworkProximityCheckerTeam. Players now get updates in visRange of themselves AND in visRange of every team member.
      • All entities use the same visRange now.
      • Renamed skill file to 123Skill.cs to work around a UNET bug.
      • Tower.UpdateServer_CASTING doesn't use agent.ResetPath anymore.
    • V1.9 [released 2016-08-01]
      • Fog of War
      • NetworkProximityCheckerTeam improvements
      • Trees now use the Cutout shader
      • Bases and Towers now have a Proximity Checker
    • V1.10 [released 2016-08-08]
      • Upgraded to Unity 5.3.6
      • Camera scrolling
      • Right click is now for movement and normal attack; left click for selections
      • Skill casting mechanic redesigned. Players can now click on a skill and then select the target to cast it on.
      • CmdUseSkill is only sent when the skill is ready
      • Orc hero now has 6 levels of experience, mana, health so that he can actually learn the ultimate ability
    • V1.11 [released 2016-08-09]
      • Unlearned skills tooltip now includes 'required level'
      • NPC Trading window can now be opened properly again with the new skill system
      • Improved NPCGood position for easier targeting
      • Mouseover Outline effect for all entities
    • V1.12 [released 2016-08-15]
      • MouseoverOutline has a material parameter check now to avoid access errors
      • Simplified MouseoverOutline visibility by using the outline color's alpha channel
    • V1.13 [released 2016-08-24]
      • Removed unused imports in MouseoverOutline
      • Downgrade to Unity 5.3.5 to avoid destroy canvas crash bug
      • Monster.EventRespawn only fires if respawn is also true
      • UI split from UIRefresh into several smaller components that are all attached to their corresponding canvas elements now
      • UI Shortcuts, Skills, NPC Trading windows automatically adjust to the amount of slots
      • Changed more texture types to Truecolor to avoid WebGL black textures bug
      • Removed unused Player GetIndexByName functions because they weren't used anymore
      • Updated documentation
    • V1.14 [released 2016-09-07]
      • Upgrade to Unity 5.4. Please make sure to use it as well.
      • Fixed <= usage for skillIndex <= skills.Count instead of < skills.Count
      • Only update Npc Trading while the panel is active
      • CastCheckTarget now sets target to self first if needed for a heal, buff, etc.
      • Updated NetworkLobby asset to latest version. Works with Unity 5.4 now.
        • Note: don't rename the lobby scene to anything with a capital letter, because there is a bug that prevents us from dragging it into the scene slot in the LobbyManager.
      • Fixed respawn time on clients. It uses the NetworkTime.offset now.
      • Removed damage popup prefab since it's not being used at the moment
      • UI Quit button has a tooltip now
      • Utils.IsCursorOverUserInterface function that checks UI and OnGUI now
      • Entity .hp and .mp never return anything bigger than hpMax/mpMax now to avoid cases where HpPercentage would be bigger than one.
      • Fixed PlayerDndHandling split and merge comments which were the wrong way around
      • PlayerDndHandling is not a NetworkBehaviour anymore
      • Moved all UI scripts into a UI folder
      • Moved all OnGUI scripts into a OnGUI folder
      • Moved BalancePrefabs to UIUtils
      • Renamed ConsoleGUI to GUIConsole for consistency
    • V1.15 [released 2016-09-14]
      • New Map with more towers on each lane
      • Barracks
      • Removed unecessary NetworkStartPosition component from monster spawners
      • Damage Popups via TextMesh to avoid UI crash bug and memory leaks
      • RPCShowDamagePopup sets TextMesh instead of Text now
      • Properly deselect chat to avoid reactivating/scrolling when doing WSAD movement afterward using the chat
      • Increase NetworkProximityChecker visRange to be able to see more on the new map
      • Added 'Ignored by Minimap' layer; Foliage, Trees, River aren't drawn on the minimap to save a lot of computations
      • Monster goal logic improved. They walk to one tower after another now instead of walking to the first enemy tower directly
      • Tower aggro area increased to 13
      • Using NetworkProximity Team checker again to see all team member's proximity too
      • Proper workaround for critical UNET readstring/readbytes out of range bug to avoid it once and for all
      • Items and Skills can now be created via right click -> Create menu directly
      • Adjusted camera angle to 55 degree
      • Monsters, Towers, Barracks return a fixed amount of reward gold now
      • Entity UI health bars replaced with TextMesh healthbars to avoid Unity's Canvas Destroy crash bug
      • Win/Lose UI performance improved greatly
      • Entity.teams HashSet to cache evil and good team members instead of using Player.FindEnemies/FindTeam with FindObjectsOfType. This is a huge performance boost.
      • Camera scrolling speed is FPS independent via Time.deltaTime now
      • Android and WebGL default quality set to Fast with shadow distance of 40 now
      • Player name ingame is now set to the player name that was entered in the lobby
      • Moba like small, orange experience bar
      • Barracks are now destroyed when they die
    • V1.16 [released 2016-09-19]
      • Gold Popups
      • Gold and damage RPCs are now sent to the attack to avoid cases where the target dies and the RPC doesn't reach it in time
      • Tooltips background color changed to a transparent navy blue for better readability
      • Renamed entity backdoor protection variable to invincibleWhileAllAlife for clarity
      • Fixed base tower backdoor protection
      • Towers and barracks use NavMeshObstacles with Carving now instead of being static, so that the paths are freed after they die
      • Updated documentation quick start guide
      • Updated documentation required Unity version
      • Updated documentation logo
      • Skills and Item hotkeys only work while not typing in any input now
      • MouseoverOutline script now sets parameters for all materials, not just for the first one
      • New OutlineOnly shader that can be used with a second material, so that the main one can use Unity's standard shader (for self shadows, standing in water, etc.)
      • Bases are not static anymore and use NavMeshObstacles as well
      • NavMesh Areas for bottom, middle and top lane. Monsters now prefer them instead of walking directly to their goal. This greatly improves the monster AI.
      • NetworkNavMeshAgent synchronizes the NavMesh Area costs to the client
    • V1.17 [released 2016-09-28]
      • Upgraded to Unity 5.4.1p2 for important bug fixes.
      • Camera scrolling now only works while the window is focused
      • Player Mesh is now shown again after respawning
      • Adjusted some environment stone positions
      • Implemented forest monsters (skeleton)
        • Added 'Neutral' team to team enum
      • Fixed health bar visibility interfering with NetworkProximityChecker's visibility code
      • Greatly reduced NavMesh size from 2.5mb to 700kb. This reduces build size and speeds up monster pathfinding greatly.
      • Minimap only renders every half second instead of every frame. This greatly increases the FPS.
    • V1.18 [released 2016-10-06]
      • Completely new UI with a new transparent (and fading) Chat
      • Camera focuses on the player after respawning
      • Left click on Minimap to focus camera on that point
      • Right click on Minimap to move the player to that point
      • Space bar to refocus the camera on the player
      • CameraScrolling.FocusOn decreasing height issue fixed
      • Player.SetIndicatorViaParent, SetIndicatorViaPosition, CmdNavigateTo made public
      • Removed Animator components from all foliage
      • Adjusted Tower emission maps and colors
      • Player base damage and base defense are now publicly accessible
    • V1.19 [released 2016-10-13]
      • Entity.DealDamageAt now calls OnAggro by default instead of only doing it in Player.DealDamageAt
      • Scarab aggro range increased so that they attack the middle tower properly
      • Player: level based stats that are all stored in one array instead of all over the place. Damage and Defense are now level based too.
      • Fixed experience gaining bug where exp was set to gained amount instead of increased by gained amount.
      • Fixed UI Buffs position so that it can be seen again
      • SkillTemplate uses [Header] now for easier usage
      • ItemTemplate uses [Header] now for easier usage
    • V1.20 [released 2016-10-25]
      • PlayerChat.CmdWhisper syntax: added missing space in foreach loop
      • NavMeshAgent SendInterval changed from 0 to 9999 for clarity
      • Removed unnecessary [Server] tag from Entity.OnStartServer
      • Removed unnecessary [Server] tag from Monster.OnStartServer
      • Removed unnecessary [Server] tag from Npc.OnStartServer
      • Removed unnecessary [Server] tag from Barrack.OnStartServer
      • Removed unnecessary [Server] tag from Base.OnStartServer
      • Removed unnecessary [Server] tag from Tower.OnStartServer
      • UIUtils is just a default class now and doesn't inherit from MonoBehaviour anymore
    • V1.21 [released 2016-11-16]
      • Upgraded to Unity 5.4.2p3 for the UNET OnDisconnectError bug fix
      • Hero Selection
      • UIUtils.AnyInputActive performance improved. Doesn't use FindObjectOfType anymore.
      • Entity.OnNetworkDestroy removes entity from Entity.teams too. Fixes a NullReferenceException bug after a client disconnects.
    • V1.22 [released 2016-11-28]
      • DestroyAfter.cs comment typo fixed
      • TargetRpc attribute is now used for all chat messages
      • Removed NetworkMessages script because it's not needed anymore
      • Each hero can have a different portrait now: just drag it into the Player script's Portrait slot
      • Added a video to the Asset Store page
    • V1.23 [released 2016-12-07]
      • Upgraded to Unity 5.4.3p1 for a UNET WebGL fix. Also make sure to drag each monster and tower into their child AggroArea object's owner slot once. Also make sure to drag the DamagePopup and GoldPopup prefab's main TextMesh into the child Shadow TextMeshCopyText source slot.
      • Block rate implemented
      • Critical rate implemented
      • Player.OnDestroy isLocalPlayer UNET bug workaround
      • Items and Skills now have a .template property in case we need it
      • Monster syntax improved
      • Player.CmdNpcBuyItem simplified
      • AggroArea uses serialized owner now
      • SkillTemplate lambda: item renamed to skill
      • ItemTemplate and SkillTemplate use ?? for easier cache initialization now
      • NetworkTime.time added for easier server time access
      • Skill syntax improved
      • EntityTargetSync simplified via ternary operator
      • Extensions.FindRecursively simplified via Array.Find
      • NetworkNavMeshAgent indentation improved
      • PlayerChat syntax simplified
      • Projectile syntax simplified
      • TextMeshCopyText target renamed to source for consistency
      • Utils.AnyKeyUp and Utils.AnyKeyDown use Linq.Any extension now
      • Utils.ClosestDistance simplified
      • Utils.GetAxisRawScrollUniversal syntax improved
      • GUIConsole if #UNITY_EDITOR contains the whole class now, not just the Awake function
      • Player lootRange removed
      • Player cmdEvents is now properly initialized as string instead of String
      • UIDragAndDropable syntax improved
      • DamagePopup and GoldPopup shadow Z coordinate changed to 0.02 to fix a rare issue where the shadow would be in front of the main text
      • Entity caches animator component now so that Player and Monster don't have to call GetComponent<Animator> anymore
    • V1.24 [released 2016-12-20]
      • Make sure to adjust all the animation controllers to the latest version and import all attack animations with 'loop time' enabled.
      • States are now passed directly to the Animator to fix several animation glitches.
      • UIChat.AutoScroll is much faster now
      • UIChat.keepHistory to only keep a maximum amount of messages
      • 'var' is not used for simple types like int, string, float anymore to prepare for bandwidth improvements
      • Improved Monster and Tower OnAggro distance comparison
      • UIChat.AddMessage GameObject 'g' renamed to 'go' for consistency
      • Skill.buffsHp/MpPerSecond is now consistently a value like 0.1 = 10% instead of 10 = 10%
      • Removed Utils.Clamp because it's not needed anymore
      • System.Math.Min/Max is now used instead of Utils.MinLong/MaxLong
      • Entity.Update clears hidden targets
      • Entity now uses a SyncVar for the target. EntityTargetSync script removed.
      • Entity.state, target, hp, mp are not explicitly 'private' anymore since the default accessibility is fine
    • V1.25 [released 2016-12-29]
      • Upgraded to Unity 5.5.0p1 for important bug fixes.
      • Color.ToHexString replaced with ColorUtility.ToHtmlStringRGBA
      • 123Skill script renamed to Skill because SyncList name bug was finally fixed by Unity
      • UIDragAndDropable small syntax improvement
      • NetworkName, NetworkNavmeshAgents use Channels.DefaultUnreliable instead of '1' now
      • Network configuration improved for MOBAs
      • UINpcTrading sell slot tooltip is now hidden by default
      • Player Drag And Drop OnDragAndClear for NpcSellSlot added
    • V1.26 [released 2017-01-03]
      • Player.SkillPointsSpendable now includes the skill level in the calculation
      • Base death animation is played now
      • RpcShowGoldPopup moved from Entity to Player because it's only ever needed by Players
      • ShowGoldPopup is now a TargetRPC and only shown for the player that gained the gold
      • All commands (except CmdSetTarget) now use the unreliable channel for better networking performance
      • PlayerChat TargetRPCs use the unreliable channel now
      • Entity and Player RPCs use the unreliable channel now
      • Lobby Network Manager OnValidate channel check added
      • Removed some UI Chat comments
      • '#ifdef 5.5 or newer' used for 'using UnityEngine.AI' for downwards compatibility
      • All textures use normal compression instead of uncompressed mode now. Reduces WebGL size from 48 to 30MB and OSX build size from 223 to 141 MB.
      • Player moving state casting cancel return "IDLE" changed to "MOVING" to fix a bug where the player would slide to a dead monster
    • V1.27 [released 2017-02-22]
      • Upgrade info: make sure to adjust your animation controllers for all entities like they are in the new version.
      • New Base model
      • Player.SelectionHandling uses CanAttackType now
      • Replaced .tga textures with .png
      • Player.SelectionHandling click movement uses a new NavMeshAgent.NearestValidDestination now to avoid glitches when trying to walk into unreachable areas
      • Entity Animation controllers and scripts don't have an IDLE state anymore. Instead they go to IDLE if all others are false
      • Player and Monster only play the MOVING animation if agent.velocity != Vector3.zero now
      • NavMeshAgent warp detection improved
      • Utils.IsNullOrWhitespace typo fixed
      • Utils.RandVec3XYZ removed
      • Player.OnDestroy isLocalPlayer workaround removed because the bug was fixed by Unity
      • Utils.PrettyTime uses milliseconds now if needed
      • Terrain metallic settings adjusted
    • V1.28 [released 2017-02-27]
      • Player.SelectionHandling: Npc talk fixed
    • V1.29 [released 2017-03-16]
      • Upgrade Info: a lot of variable names have been change to something more literal, like 'health' instead of 'hp'. Make sure to rename them in your custom projects too. It may take a few minutes, but it's worth it.
      • Added outline shader to new base model
      • NetworkNavMeshAgent synchronizes the area costs again
      • NetworkNavMeshAgent OnDeserialize try-catch block to avoid packet corruption
      • Extensions syntax improved
      • PlayerChat, Skills, Items, Entities: many variables renamed to something more literal
    • V1.30 [released 2017-04-26]
      • Removed all FormerlySerializedAs attributes again
      • PlayerChat OnStartLocalPlayer: removed unnecessary [Client] tag
      • Player.talkRange renamed to interactionRange to prepare for addon system
      • PlayerChat renamed to Chat to prepare for addon system
      • Player.experience property recursion removed
      • PlayerDndHandling moved into Player script to prepare for addon system
      • Player.OnDragAndClear uses SendMessage to prepare for addon system
      • Skill.ToolTip and Item.ToolTip use StringBuilders for performance and to prepare for addon system
    • V1.31 [released 2017-06-15]
      • Upgraded to Unity 5.6.1p1! Make sure to use exactly that version, it works great.
      • New Skill Effect System (cast Blessing or Hard Shell to see it)
      • Orc Animation Controller: renamed states to skill names
      • Orc Animation Controller: added states for blessing, hard shell to avoid situations where the orc would keep playing the run animation when casting a skill while running
      • Orc, Skeleton, Scarab: enabled 'loop pose' for idle and run animations to fix a small twitching
      • health/manaRecoveryRate are now calculated with base + buffs in Entity. Removed Player.Recover function.
      • Entity healthRecovery, manaRecovery made public
      • Entity health/mana recovery + rates are not SycnVars anymore. Saves bandwidth and keeps more space for UNET's 32 SyncVar limit
      • Entity OnStartServer health==0 check: updated outdated comment
      • Changed [SerializeField] to public (almost) everywhere for easier usage
      • Entity are now all public and assigned in the Inspector. Keep that in mind when upgrading.
      • Drag and Drop / Clear messages are now sent from UIDragAndDropable instead of Player. This way UIDragAndDropable doesn't need to know the Player class at all.
      • Adjusted lights to Unity 5.6.1p1
    • V1.32 [released 2017-06-20]
      • UNET GlobalConfig: ThreadPoolSize increased from 1 to 3
      • UNET ConnectionConfig optimized for MOBAs
      • New Fog of War. Cutout calculations are now done on the GPU instead of the CPU, which gives a huge performance boost.
      • Camera max zoom increased by one because it feels better
      • Removed the blue reflective light for additional FPS
      • Player.SelectionHandling improved for touch (mobile) controls
      • Camera automatically follows the player on mobile now
      • Android uses fastest graphics setting by default
      • Utils.IsCursorOverUserInterface touch check added so that the UI blocks touches on mobile devices too
      • Removed SSAO effect from Camera to avoid huge performance issues on mobile devices
    • V1.33 [released 2017-08-22]
      • Upgraded to Unity 2017.1.0p1
      • FogOfWarMask NullReferenceException on server fixed
      • Entity, SkillEffectProjectile: replaced GetComponentInChildren<Collider> with .collider
      • NetworknavMeshAgent is now assigned in the Inspector to improve performance. Make sure to reassign it for all entities when updating.
      • NetworkNavMeshAgent pos renamed to position
      • Extensions: XML extensions removed because they aren't used anymore
      • Chat: ParseGeneral simplified
      • Player: InventorySlotsFree .Where.Count changed to .Count
      • Player: CanAttackType syntax simplified
      • Utils: IsNullOrWhitespace simplified
      • FaceCamera: only enabled while visible for performance improvements
      • NetworkProximityCheckerCustom: only checks player layernow. Make sure to reassign it to the Player layer for the Skeleton prefab when updating.
      • Physics Collision Matrix: IgnoreRayCast layer only colliders with player layer now to speed up AggroArea computations
      • UIShowTooltip: always updates tooltip text now to make sure that swapped out items are being refreshed immediately
    • V1.34 [released 2017-09-30]
      • Upgraded to Unity 2017.1.1p3
      • Updated documentation
      • SetNavMeshPathfindingIterationsPerFrame script renamed to NavMeshPathfindignIterationsPerFrame
      • Player: chat component is now assigned in the Inspector
      • Chat: player component is now assigned in the Inspector
      • MonsterSpawner: workaround for NavMeshAgent spawn bug added
      • Monster.OnDeath resets agent.path now to avoid sliding after death
    • V1.35 [released 2018-01-31]
      • Upgraded to Unity 2017.1.2p3
      • UIChat AddMessage keepHistory check deletes half the history each time to avoid lags
      • Entity.CanAttackType is now CanAttack
      • Entity.RpcShowDamagePopup improved: sends GameObject instead of Position (4 instead of 12 bytes) and uses the prefab of the object that was attacked
      • Player.TargetShowGoldPopup improved: sends GameObject instead of Position
      • NetworkTime: fixed a bug where a client's Network Time would get out of sync if the server lags
      • Quit button now stops the editor too
      • UnityVersionCheck component added so that people know which uMOBA version is the recommended one
      • Monsters cycle through the skill list now (if they have more than one)
      • Indicator via Projector instead of Plane. Now aligns perfectly to the underground.
      • Player.localPlayerClickThrough option
      • Player.OnDragAndDrop_InventorySlot_InventorySlot uses configurable keys now; Utils.AnyKeyPressed added
      • Monster.onAggro distance comparison doesn't happen for the same target anymore to save a lot of computations
      • Player.nextTarget is cleared after UpdateServer_CASTING in any case now
      • Entity has .effectMount now to avoid transform.FindRecursively call when spawning projectiles. Make sure to assign it to the entity's transform or to the right hand when updating.
      • Animation controllers: currentSkill index replaced with skill name boolean paramters for simplicity. Make sure to use the new controllers when updating.
      • Entity.DealDamageAt: AoE functionality removed to prepare for new skill system
    • V1.36 [released 2018-02-06]
      • Important: this update will overwrite all old skills. Make backups before updating and then create your skills again.
      • Scriptable Skills
      • Entity uses LevelBasedValues for health, mana, damage etc.
    • V1.37 [released 2018-03-09]
      • Fog of War plane Y coordinate increased from 1 to 2 so that evil players don't see good base
      • Added empty Animator component to Tower Prefabs to fix NullReferenceException on dedicated server mode
      • Replaced Unity's Network Lobby asset with a custom lobby to fix all the bugs
    • V1.38 [released 2018-10-19]
      • Shiori Hero added
    • V1.39 [released 2019-05-20]
      • Upgraded to Unity 2018.4.0 LTS
      • Pixel perfect Canvas
      • Switched UNET to Mirror. When upgrading manually, make sure to apply all the code changes and replace every prefab's NetworkIdentity component with the Mirror NetworkIdentity component from the uMOBA/Plugins/Mirror folder.

    FAQ:
    • Who are you? I am the guy who made https://noobtuts.com, which has many Unity tutorials that some of you may already know.
     
    Last edited: Mar 24, 2020
  2. ArtsyChen

    ArtsyChen

    Joined:
    May 14, 2016
    Posts:
    23
    We'll be around for any questions/ comments!
     
  3. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    sounds great. Any demo video available?
     
  4. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Yes, but it looks weird because we are still missing the animations. Will have a decent demo out soon!
     
  5. b4c5p4c3

    b4c5p4c3

    Joined:
    Jan 4, 2013
    Posts:
    537
    Subscribing to this.
     
    ArtsyChen and mischa2k like this.
  6. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    bookmarked !!!
     
    ArtsyChen and mischa2k like this.
  7. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Here is another screenshot of our hero:
    Screenshot at May 13 10-43-09 copy.png
     

    Attached Files:

  8. francisfu

    francisfu

    Joined:
    May 6, 2016
    Posts:
    7
    The Fog of War and wards system should be necessary...
     
  9. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Added it to the roadmap. The effect where players don't see other players that are too far away is rather easy, all we have to do is use UNET's NetworkProximityChecker. The actual 'fog' effect is another story.
     
  10. Gekigengar

    Gekigengar

    Joined:
    Jan 20, 2013
    Posts:
    738
    Any handling for player reconnection?
     
  11. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    It's on the roadmap now! Just letting them reconnect is easy. The challenge is to save their hero, gold, items etc. and then assign them to the correct person. If multiple people reconnect at once, that could be difficult. Will see what we can do.
     
  12. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    Subscribed! Very interesting!!!
     
    ArtsyChen and mischa2k like this.
  13. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    Can this Spawn pets/minions at player position or somewhere in the map? And skills for pets/minions?
     
  14. francisfu

    francisfu

    Joined:
    May 6, 2016
    Posts:
    7
    Well I don't think the pet system is major in a moba style game...It's a little bit...strange...lol.
     
  15. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    You can spawn anything via UNET's NetworkServer.Spawn easily. Minions will have a default attack in V1.0.
     
  16. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    How is it going? please update some screenshots! Can't wait for this!
     
    mischa2k likes this.
  17. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    It's going great! I am currently testing the code to find any remaining issues. Found one yesterday that I will work on today, will be an easy fix though.

    The animation issues that we talked about are mostly solved too. We will put the art and the code together soon, then we will have a playable WebGL demo for everyone.

    We will submit V1.0 to the store very soon. Probably in less than 2 weeks!
     
  18. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    Sound great! Is there any way to preorder then being beta tester during your development? or hand on it once you submit to AssetStore? Waiting for approval on it is really painful :D
     
  19. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    There is no way to preorder, we want to do it all over the Asset Store. Setting up a preorder page would consume time, which is better spent working on the project.

    But we will make the WebGL demo available when submitting to the store, so that everyone can test it already while it's still under review!

    Here is another screenshot of our hero ingame, with his weapon and in the idle position:
    Screenshot at May 22 13-45-38.png

    And the Lobby, which is based on Unity's Network Lobby asset from the Asset Store:
    Screenshot at May 22 13-49-08.png
     
    francisfu likes this.
  20. pushingpandas

    pushingpandas

    Joined:
    Jan 12, 2013
    Posts:
    1,419
    Will the game contain singleplayer AI? or a trainings mode?
     
  21. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    You can play it alone by selecting 'PLAY AND HOST', but without any enemy heroes. Singleplayer AI isn't really planned yet, we will consider it if more people request it.
     
  22. francisfu

    francisfu

    Joined:
    May 6, 2016
    Posts:
    7
    I'd prefer a simple AI script, while a more complex one should be customed by user themselves.
     
    Gunhi and pushingpandas like this.
  23. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    For sure, AI is also very useful for new game title as well! and simple AI script is enough for getting started!
     
  24. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    I added 'AI' to the roadmap in the first post!
    Note that it probably won't be in the first few game versions, because we want to get the core perfectly smooth first.
     
    Gunhi and pushingpandas like this.
  25. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    Any good news since the last post? Please keep me up-to-date ^_^
     
    Last edited: Jun 1, 2016
  26. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    We submitted it to the Asset Store a few days ago. The review process takes 5-10 business days, so it should be live soon!
     
  27. wahyuway

    wahyuway

    Joined:
    Oct 7, 2013
    Posts:
    84
    Wow.. nice. I am also one of your uMMORPG user. Cant wait to buy this asset, You should make more screenshot while we waiting available in asset store :d..
    hope there will be an introductory price :)
     
  28. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Glad to hear that.

    Here is one of the screenshots that will be on the Asset Store page. Let us know what you think!
    2016-05-27f copy.jpg
     
  29. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    Waiting for approval would be really painful. Sometime it take 3 days, sometime 3 weeks or more.. o_O
     
  30. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    I am sure it will be released within the next 7 days. Usually the Asset Store team is pretty fast and the Madness Sale is over soon too.
     
  31. ArtsyChen

    ArtsyChen

    Joined:
    May 14, 2016
    Posts:
    23


    Here's a sneak peak at what I'm been working on for uMOBA: themed units and bases! They will be part of future updates as I finish each asset, look forward to it!
     
  32. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
    Look like 7-days is going pass soon :D
     
  33. LoDx

    LoDx

    Joined:
    Feb 13, 2013
    Posts:
    67
    Looks interesting.
    Question :- Does it comes with Mobile Control/Pad ?

    Thanks
     
  34. francisfu

    francisfu

    Joined:
    May 6, 2016
    Posts:
    7
    already on the store...
     
  35. Gunhi

    Gunhi

    Joined:
    Apr 18, 2012
    Posts:
    300
  36. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Good news: as others mentioned, it's finally accepted and can be found on the asset store (see the link in the first post). We are here for all of your issues and questions. The next version will be submitted very soon too!

    For everyone that purchased it: you can open the NetworkLobby scene and press "Play and Host" to actually play the game. And you can open the World scene to see the game world.

    What do you mean with that?
     
    Last edited: Jun 8, 2016
  37. JessieK

    JessieK

    Joined:
    Feb 4, 2014
    Posts:
    148
    This is awesome something I've wanted to see on the store for a while but it is missing some essential MOBA features that are required for any MOBA to really function

    Character selection pre-game - Right now you just get dropped in to the game as an Orc and sent away, all mobas for all time make you select a character in the lobby before the game starts, most force you to wait until its a full game before the game starts too.

    A Click - Attack click is vital for a MOBA game to function properly it's not an MMO where slow combat is the norm, players need to be able to move around fast to farm (A click is where you press A for attack and click on the ground you then move to that spot and attack any/the first enemy you hit)

    Items/Item shop - Right now seems like you can't buy any items at least from what I can tell, this again is vital. Whilst I see the shops you can visit, in a MOBA you normally just press a key and it opens the window rather than having to talk to someone like an RPG

    Leveling - Again levelling here seems to be handled like an MMO, you gain a level and can only get the next move, rather than the move you want/upgrading a move, the player at level one should start with one move of there choice, and then as they level be able to select Q, W, E moves to collect or upgrade, and at what ever level the creator decides allow them to upgrade there R/Ultimate move.

    I loved you MMORPG kit, but this kit just feels like its missing a lot of MOBA features. I could be wrong of course, but from playing the demo game I am going to wait to see how this kit develops even if it cost a bit more, right now it's just missing a lot of vital stuff that MOBA games require. I can't wait to see it develop though, I trust vis due to his experience with the UMMORPG kit, so I hope this kit develops just as much as that one did!

    Edit: The documentation talks about an MMO not a MOBA game so it feels like that documentation isn't done for this kit yet, as this is the documentation linked on the store page, again it could just be that you're referring to MMOs as an example might be a good idea to just change these to "moba" games to avoid confusion

    Quote "The player's health and mana are also level dependent in most MMORPGs, hence why there are hpMax and mpMax arrays too. We can find out a players's max health in level 1 by using hpMax[0] and so on."
    And
    "A lot of MMORPGs have problems with gravity, falling through the level or walking through thin walls."
     
    Last edited: Jun 8, 2016
    mischa2k and ArtsyChen like this.
  38. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Progress Info: V1.1 was submitted for review. Changes can be seen in the first post!

    Thanks for your feedback.
    • Character Selection: added it to the roadmap. Will come soon, no doubt.
    • Click attack: makes sense too. See roadmap.
    • Item shop: in most MOBAs you still have to walk to the base and talk to the NPC in order to buy things. We could easily add the option to show the sales window with a hotkey from anywhere though.
    • Leveling: good point too, and already possible. This is as simple as setting the default attack skill to 'learndefault = false'. Will probably do that by default in the next version too.
    • About more features: you are completely right. What you may or may not know is that the asset store team decides if your asset gets onto the store or not. So spending one year of time on a fully featured MOBA asset just to have it declined would be a nightmare. This is why developers usually try to submit V1.0 as soon as possible, to see if it will be accepted or not. Afterwards we can spend more time on features without risking so much. Also note that this is a networking game, so being stable is one of the biggest feature already.
    • About the documentation: thanks, we must have missed that. Changed it in the online documentation already.
     
    Last edited: Jun 8, 2016
  39. JessieK

    JessieK

    Joined:
    Feb 4, 2014
    Posts:
    148
    I didn;t know that about the asset store so it makes a lot of sense that you'd submit a less featured build than the one you intend to end with, I happily await the updates then, as I said I am a big fan of your MMO kit so I have no doubts you will do the MOBA genre justice too
     
  40. mahdijj

    mahdijj

    Joined:
    Sep 24, 2015
    Posts:
    31
    hi
    good work
    is it compatible with mobile?
    in your updats pls work on more compability with mobile
     
  41. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Should work fine. Unity's UI works on mobile by default. So all that's left is movement, and that works on mobile too.
     
  42. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Progress Info: looking into a UNET bug related to NetworkStartPosition today. It's nothing to worry about because uMOBA uses a workaround, but it would be nice if we get it resolved. We are also working on the monster art, will have some more screenshots soon!
     
  43. bullardo

    bullardo

    Joined:
    Jan 5, 2013
    Posts:
    46
    Any chance to get wasd movement in here also?
     
  44. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    That would be easy to implement. But it would also break the QWER style skill system, so we are a bit hesitant to implement that. Maybe if more people request it, or maybe in form of a how-to in the documentation.
     
  45. bullardo

    bullardo

    Joined:
    Jan 5, 2013
    Posts:
    46
    I own ummo also so I guess I can just move it over easily. I have a good reason to want different movement options. Ill probably give users the ability to toggle it on and off in options.
     
  46. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Yes, you could move it over easily, it won't break anything (except the skill hotkeys, but you can change them easily).
     
  47. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Update: V1.1 is now on the Asset Store! Changes can be seen in the first post.

    And V1.2 was submitted for review!
     
    Last edited: Jun 14, 2016
  48. JessieK

    JessieK

    Joined:
    Feb 4, 2014
    Posts:
    148
    Version 1.2 fixes the exact issue I was going to come here about so that's awesome! (The skill system QWER and an auto attack) Cannot wait, the amount of quick updates is so cool to see.
     
  49. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Thanks again for pointing that out. Please let us know about any bugs/issues that you can find!
     
  50. mischa2k

    mischa2k

    Joined:
    Sep 4, 2015
    Posts:
    4,347
    Update: V1.2 is now on the Asset Store! Changes can be seen in the first post.