Search Unity

  1. Unity 2020.1 has been released.
    Dismiss Notice
  2. Good news ✨ We have more Unite Now videos available for you to watch on-demand! Come check them out and ask our experts any questions!
    Dismiss Notice

uMMORPG Official Thread

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

  1. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @TonanBora I second that!

    @all

    Is here anybody who is really experienced in importing assets like monsters and characters? I can provide assets with matching animations and require someone who is able to properly add them to uMMORPG with all animations/controllers re-assigned etc. etc. just like stated in the tutorials. Just beware that it is a whole bunch of them. We can talk about compensation.
     
    Last edited: Apr 13, 2017
  2. SunLeaf

    SunLeaf

    Joined:
    Feb 20, 2014
    Posts:
    64
    @Fhizban
    I'm willing to help you via skype in german if you want. I'm not a professional but maybe i can help you to show the right way :)
     
  3. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @Ronith
    yep, would be interested (and my team member as well). ps: i cannot start a private conversation with you?
     
  4. Tiny-Tree

    Tiny-Tree

    Joined:
    Dec 26, 2012
    Posts:
    1,313
    about the add on system and partial classes, we cannot for example remove fields like intellect, but can only add stuff, we cannot overrides function to re implement new logic ?
     
  5. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    I recommend waiting until I implemented skinned mesh equipping. Then you can see it in action and decide further.

    Thanks for sharing!

    The other assets don't use namespaces either then?

    You can do everything you did before. But the addon system provides a simple way to put your changes into separate files. There is no perfect addon system that allows you to modify everything though, but that's why the whole source code ships with uMMORPG. You can still modify anything from the core files.
     
  6. cioa00

    cioa00

    Joined:
    May 31, 2016
    Posts:
    203
    I made some changes on warehouse addon which should work with uMMORPG v1.68, which is also small step ahead to prepare for upcoming addon system. Next warehouse addon update will be out after when uMMORPG addon system update has arrived, which will "fix" that nasty SyncVar limit issue.

    Updated code can be found from - https://bitbucket.org/janektodoruk/ummorpg-addon-warehouse

    PS: Most likely when you try use warehouse addon at the moment with uMMORPG v1.68 you will run into UNET SyncVar limit issue
     
  7. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @cioa00 thanks, thats great!

    My next modification deals with the SyncVar limit as well. it might not be that easy to implement though.

    the player attributes (strength, intelligence) are turned into a syncList and tied to a dynamic table in the DB. this allows (virtually) unlimited attributes and the table must not be altered all the time (instead of fixed fields like "strength" the table contains "name" , "value" field pairs).

    using that system my project now handles 8 player attributes easily, while removing the two syncVars strength and intelligence
     
  8. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    298

    Locate your original database.cs and change the following two lines:

    • database {
    • database {
    into

    • database_mysqlite {
    • database_mysqlite {
    I'm not seeing this in my Database.cs
     
  9. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @arrested_games I should update the docs to be more specific. The first one is the class and the second one the constructor:

    public class Database {

    and

    static Database {

    just add _mysqlite to both of them and you can keep the original file.
     
  10. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    298
    OK - so..

    public class Database {
    and
    static Database() {

    got it.. thank you!
     
  11. TonanBora

    TonanBora

    Joined:
    Feb 4, 2013
    Posts:
    493
    They do, but because your scripts are in the global namespace, they also have access to them.
    Just as an example, Inventory Pro also has a UIWindow.cs class within its own namespace. But because you also have a UIWindow.cs class in the global namespace, Unity does not know which to use, and it causes compiler errors.

    In case you don't know, ALL scripts, no matter their namespace, use the global namespace, and unless you namespace a script, it exists in the global namespace.
    This is why it is good practice to namespace your own scripts. ;-)
     
  12. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    I see what you mean. Will put it on my ToDo list.
     
  13. st0le

    st0le

    Joined:
    Nov 24, 2015
    Posts:
    18
    Hello,

    I'm sure that someone asked it but I didnt find it in thread, sorry :(

    I added a new skill and it works well, It does the damage and everything works properly but the trouble is that my animation doesn't play.

    Basically I cloned the Attack-Hard, changed name, clone the same conditions from Attack-Hard and changed the motion.

    I tried the same with same motion and same conditions and its happening the same.

    I attached screenshoot:



    Can someone help me please?

    Cheers
     
  14. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    currentSkill has to be the index of your skill in the player's skill list. So one bigger than the biggest number that was there before.
     
  15. st0le

    st0le

    Joined:
    Nov 24, 2015
    Posts:
    18
    Hello,

    Thanks for your fast support.

    What are you meaning with "player's skil llist"?

    Is the teamplat skill? I found inside player.cs as well and I dont find anything.



    About the bigger number, what number are u talking about? CurrentSkill equal?

    Cheers
     
  16. camta005

    camta005

    Joined:
    Dec 16, 2016
    Posts:
    286
    So currentSkill should equal 4 if you want the animation to trigger from casting your Masive skill.
     
    vis2k likes this.
  17. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    FhizMod: uMMORPG Level based SpawnPoints for 1.68

    This simple script allows you to define a level range for spawn points. Players can only spawn and respawn to spawn points within the level range. You can specify a game starting spawn point with min level = 0 and max level = 0. A starter spawn point will only be used when a brand new player is spawned. Make sure to have spawn points to cover all levels, or your players cannot respawn. If multiple spawn points are available, one is chosen randomly.

    PS: Tested it, but had no time to test all circumstances!

    https://bitbucket.org/Fhizban/bb_fhizmod_spawnpointlevels
     
    CrandellWS, Buzzlebot and SunLeaf like this.
  18. KiraELL

    KiraELL

    Joined:
    Apr 6, 2017
    Posts:
    24
    When to be implement guildwar system? and guild logo
     
  19. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    FhizMod: uMMORPG SafeZone for 1.68

    This simple script allows you to create a PvP (Player-vs-Player) SafeZone. While inside a SafeZone, you are not able to use "Attack" type skills on other players. Note that players outside the SafeZone can attack you - therefore the SafeZone should be rather large and not directly adjacent to a normal zone (use a portal or teleporter).

    PS: UNTESTED. I could need a bit of help on this one, had no chance to try it with more players.

    https://bitbucket.org/Fhizban/bb_fhizmod_safezone
     
    Buzzlebot and SunLeaf like this.
  20. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Thanks for sharing!

    Again, thanks for sharing. I am sure this will be useful to a lot of people.
    Want me to add your modifications to the documentation?
    As mentioned before, I am also working on a uMMORPG website so that posting and discussing modifications will be easier. I might have to wait at least until May 1st though, for a reason that I can't discuss before May 1st yet.
     
  21. st0le

    st0le

    Joined:
    Nov 24, 2015
    Posts:
    18
    Omg, thanks so much, I understand finnaly it, for your support.

    But the skill doesn't play the animation, the damage and others is working properly, just the animation.

    The current skill and element are ok, thanks again.

    Cheers
     
  22. CrandellWS

    CrandellWS

    Joined:
    Oct 31, 2015
    Posts:
    91
    Thanks
     
  23. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @vis2k Yes, please add. No hurry with the webiste, Im just hacking away a bit with uMMORPG :)

    @all

    please report me any bugs, had not too much time to test everything, I'll update the scripts then
     
  24. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Alright, it's in the documentation now!
     
  25. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Great news! The next version with the addon system was submitted for review:

    V1.69
    • Downgraded to Unity 5.5 until UNET's OnDisconnect Timeout bug will be fixed
    • SyncVar limit workaround via [SyncVar_] custom attribute
    • Addon System implemented (see Addons/AddonExample.cs)
    • Player: converted some [SyncVar]s to [SyncVar_] to make room for Addon SyncLists
     
  26. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @vis2k A few things after testing:

    1. I have a Sphere Collider set to Trigger and it seems to disrupt the mouse cursor. I cannot navigate while the player is inside of the sphere. the targeting ring is also rendered weird while clicking on the sphere, its on its head or ontop of the sphere.

    Right now I can only move into the sphere with WASD, click funtionality seems to be bugged. the sphere should be completely transparent when set to "trigger".

    EDIT: My team-member approved this bug in a different situation. We have a snow landscape that uses several invisible trigger colliders as well to represent snow storm. We cannot move into that landscape using point-n-click, it is only possible via WASD. It is the same bug as i mentioned above. Can you please investigate this issue? Thanks!

    2. You have point-n-click pathinding? Can you make it so that I can click only once and hold down the mouse button to continously move into that direction. Not a must, but would make things much easier

    3. One of your Camera x/y variables has a false name set in the inspector. nothing fancy.
     
    Last edited: Apr 15, 2017
  27. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Progress: playing around with Wordpress today to see if that's suitable for the uMMORPG website.

    1. Take a look at the Monsters, they have a AggroArea child object that is also a sphere trigger. Do it the same way and set the layer to IgnoreRaycast.

    2. Modify Player.SelectionHandling for that. Make sure to only resend the command when the destination has actually changed though.

    3. What exactly do you mean?
     
  28. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    1-2 : got it thank you!

    3 : i have to talk to my team-member again, he said its in inspector, main Camera twice Y and it should be X/Y (dont know)
     
    vis2k likes this.
  29. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Good morning everyone! Quick progress update.

    Doing more research on wordpress + bbpress today, looks promising so far.

    I also reconsidered invision power board. Wanted to test my previous forum setup, but I can't even reactivate it. They want an extra $20 to restore it from an archive, which makes no sense for a couple of megabytes. This confirms my previous impressions.
     
  30. SkyLimitStudio

    SkyLimitStudio

    Joined:
    Oct 22, 2016
    Posts:
    14
    1. Is there a bug on the login screen when you try to log in and fail (due to some reason, trying to log in second time with the same acc or something similar) or is it something I broke. I always get - MissingReferenceException: The object of type 'NetworkManagerMMO' has been destroyed but you are still trying to access it.
    2. How about forgotten password ?
    3. Can we use your textures and 3d models for our games ? Games we might make money from.
     
    Last edited: Apr 16, 2017
  31. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Good morning everyone! I have a local wordpress setup that works pretty well for the uMMORPG website. I purchased a server as well, still waiting for Namecheap to resolve a SSL issue though.

    1. Can you tell me exactly what to do to reproduce it?
    2. You can modify it in the database
    3. I think the Asset Store shows you some kind of license agreement after purchasing. Whatever it says in there is law :)
     
  32. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
  33. luis29vm

    luis29vm

    Joined:
    Oct 25, 2016
    Posts:
    164
    perfect 1 of my friends want purchase the asset
    im go send Text msg. :)
     
  34. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    Vis2k I have a few more question. We are trying to customize the RPG system a bit further:

    1. Buffs and Status Effects are actually Skills? its all the same template type?

    2. How can I create a Skill object via code from any Skill Template from Scratch? That means, I don't want to be limited to the Skills of a Character. Example: I want to create a Skill called "PoisonEffect" - but no character has this Skill in it's SkillTemplates list.

    3. My goal is to apply the created Skill object via Code to any Entity (Monster/Player). I think it is easy once I got the Skill object created: Apply Skill to the User of an Item (Poison Potion) or apply skill to the target of a skill (fireball that sets target to "Ablaze" status effect).

    I see how you did that with the Offender Status effect, but thats only a workaround. Imagine adding the "Poison" status to each player. Ugh. and now imagine adding the "ablaze" status to each enemy...big ugh!
     
    Last edited: Apr 18, 2017
  35. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,816
    I love Wordpress websites! I have two of them and a couple of blogs and they work very well. Also easy to edit compared to Joomla. We moved from Joomla to WP. :) Good luck with your site!
     
    vis2k likes this.
  36. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Update: V1.69 [released 2017-04-18]
    • Downgraded to Unity 5.5 until UNET's OnDisconnect Timeout bug will be fixed
    • SyncVar limit workaround via [SyncVar_] custom attribute
    • Addon System implemented (see Addons/AddonExample.cs)
    • Player: converted some [SyncVar]s to [SyncVar_] to make room for Addon SyncLists
    1. Yes
    2. You need a ScriptableObject SkillTemplate for each skill at the moment. You might be able to create them at runtime, would just have to try and see if that works.
    3. In theory you could add skills to the skills list dynamically. Might require some modifications here and there. I still have this on my research list, since there are a lot of ways to do this. For example, a skills and skillEffects list etc.

    Thanks
     
    FS_Artsy likes this.
  37. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @vis2k : Idea for a simple solution that requires no re-wiring of the existing code:

    Add a list of "general skills" to the Entity. When a Player/Monster is instanciated, merge the Entities general list with the Player's list of skills.

    Now, I just need to know how to add a list of general skills to the Entitiy via code. Because its abstracht, it has no prefab and no inspector.


    Nevermind, got it to work already!
     
    Last edited: Apr 18, 2017
    vis2k likes this.
  38. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    298
    @Fhizban - by the way - thank you for sharing this stuff... it should save me a ton of time ;)

    I am getting the following, and for the life of me, I cannot locate the actual issue:

    Assets/uMMORPG/Scripts/Database_MySql.cs(12,15): error CS0260: Missing partial modifier on declaration of type `Database'. Another partial declaration of this type exists​

    and the relevant portion of the Database.cs file:

    public partial class Database_mysqlite {
    // database path: Application.dataPath is always relative to the project,
    // but we don't want it inside the Assets folder in the Editor (git etc.),
    // instead we put it above that.
    // we also use Path.Combine for platform independent paths
    // and we need persistentDataPath on android
    #if UNITY_EDITOR
    static string path = Path.Combine(Directory.GetParent(Application.dataPath).FullName, "Database.sqlite");
    #elif UNITY_ANDROID
    static string path = Path.Combine(Application.persistentDataPath, "Database.sqlite");
    #elif UNITY_IOS
    static string path = Path.Combine(Application.persistentDataPath, "Database.sqlite");
    #else
    static string path = Path.Combine(Application.dataPath, "Database.sqlite");
    #endif

    static SqliteConnection connection;

    // constructor /////////////////////////////////////////////////////////////
    static Database_mysqlite() {​
     
  39. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @arrested_games You either forgot to add "partial" to the old (default) or the new database file it has to be next to the public statement. You could also delete the mysqlite file in your case, if you are sure that it will never be used anymore.

    Don't forget to update your new database file when vis2k provides an update to the code!
     
    vis2k likes this.
  40. rickcollette

    rickcollette

    Joined:
    Mar 17, 2013
    Posts:
    298
    Yep - got it... thanks!!
     
    vis2k and FS_Artsy like this.
  41. Dennis59

    Dennis59

    Joined:
    Jan 8, 2013
    Posts:
    66
    Hello, I am using uMMORPG and am using UMA characters. I have the character system added and the characters are spawning correctly on the Server and Play option. However I have not been able to get the separate clients to generate correctly. My intent is to send the UMATextRecipe to each client and use that to generate the UMA. I had hoped that I could attach the recipe to the GameObject included as a parameter in AddPlayerForConnection but this hasn't worked. I have heard that there is an example or asset to add UMA to uMMORPG but haven't been able to find it. Does anyone know if this exists or have a suggestion on how the recipe can be sent to the clients? Thanks in advance.
     
  42. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    Week 1: Here is what we have been up to, since acquiring uMMORPG. Quite a bit actually, and its not even a real game project yet. Kudos goes to the original script authors, as not all scripts where written by myself!

    If there is enough interest, I might convert the scripts into add-ons to be used by the public. Mind you: Thats quite a bit of extra work to do, right now the features are "clamped" into our version of the code.

    COMPLETED FEATURES
    * (DONE) MySql Database Conversion
    * (DONE) Customizable Character Attributes (Strength, Intelligence, Dexterity, Vitality, etc.)
    * (DONE) Unlimited and flexible SyncList for most Attributes
    * (DONE) Level Based Spawn Points (minLevel - maxLevel)
    * (DONE) Selectable Spawn Point ("login" at a statue and respawn there after death)
    * (DONE) Safezone (prevents PvP activities while inside)
    * (DONE) Repeated Quests (Daily Quests, Every X Days etc.)
    * (DONE) Player Warehouse (store excess items in an extra inventory)
    * (DONE) Flexible & Gear Modifyable Elemental Resistances (Fire, Cold, Thunder, Poison etc.)
    * (DONE) Players and Monsters Elemental Resistances (decreased damage from that element)
    * (DONE) Players and Monsters Elemental Weakness (increased damage from that element)
    * (DONE) Globally available Buffs and Status Effects
    * (DONE) Flexible Buff System (apply Buffs via item Usage, Weapon attack, Skill etc. to Enemies or Players)

    PLANNED FEATURES
    * () Add Particle Effect to the target of a skill
    * () Teleportation System with a List for each player with saved teleporter points
    * () Add Damage over Time Buff Effect
    * () Add Heal over Time Buff Effect
    * () Add more Modifiers to Buffs in General (increase/decrease speed etc.)
    * () Chests and breakable Objects
    * () Add random modifier when dealing damage (both enemies and players)
    * () Add a Stamina system for running/attacking etc.
    * () Reduced EXP gain the longer a player is online, recovers when being offline for a while
    * (HARD) DungeonEvents System = A system to create monsters/chests under certain circumstances

    So the server must not maintain all monsters at all locations at the same time. We dont
    have to place all monsters in the editor beforehand. Monsters are placed via script when
    triggered.

    - Create up to X Enemies/Chets of Type Y[] at location Z and set boolean flag
    - Don't trigger when boolean flag is set, When triggered, reset boolean flag
    - Spawn Triggers:
    - Spawn when server starts
    - Spawn when a player enters a certain area
    - Spawn when a player accepts/finishes a quest

    - Considerations:
    ? Should those monsters be removed again when the player leaves the trigger area ?
    ? Is the respawn timer of defeated monsters in effect as well ?
    ! Still have to think about how to handle this in a multiplayer environment !
     
    Tiny-Tree, Buzzlebot and vis2k like this.
  43. cioa00

    cioa00

    Joined:
    May 31, 2016
    Posts:
    203
    Morning everyone,

    I just updated my warehouse addon to get it work with the latest uMMORPG v1.69. You can grab the code from https://bitbucket.org/janektodoruk/ummorpg-addon-warehouse.

    Just small notice - add 'partial' keyword to Scripts\_UI\UINpcDialogue.cs class so you can use warehouse button to NPC dialogue window.
     
    vis2k likes this.
  44. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Progress: website works fine so far, will add some logos / colors today.

    I think a UMA solution was posted here before, maybe try the search function. This will all be collected on the website very soon, so that will be easier.

    Great progress, thanks for sharing. The server doesn't update monsters that aren't around a player by the way, so you probably don't have to worry about that.
     
    Teila likes this.
  45. FS_Artsy

    FS_Artsy

    Joined:
    Mar 28, 2017
    Posts:
    69
    @vis2k

    Thanks for pointing that out, makes it much easier for me.

    Another Question:

    Damage over Time / Heal over Time

    A simple solution would be to alter the Recovery rate? Like set it to -2 and revert it back to +1 when the buff is gone?
     
  46. shamsfk

    shamsfk

    Joined:
    Nov 21, 2014
    Posts:
    288
    @vis2k
    Hi!

    Is there any particular reason (except for complexity) that uMMORPG doesn't use pooling for such things as spawned arrows and stuff?

    My experience with traditional games using Unity says that Instantiating such a things is a way to a disaster when those Instantiates are piled up. And they most likely will pile up with several players running around doing stuff. Instantiate/Destroy is very pricy, it can cause lags and GC spikes even on a client side and much worse on a server side.

    If there is no particular problem that I don't see, can you please suggest a better way to implement a pooling within uMMORPG so that future updates won't become a nightmare for us?
     
    Last edited: Apr 19, 2017
  47. shamsfk

    shamsfk

    Joined:
    Nov 21, 2014
    Posts:
    288
    @vis2k
    And second question.

    I've been using an old version for a while, and recently updated to the last one and started afresh. And there is a trouble I can't properly debug:

    Client won't recognize that it is logged in so char select screen stays visible and in-game UI stays invisible.
    That code always returns null on the client { var player = Utils.ClientLocalPlayer(); } even thou I can move and play normally.

    Here is a shot:
    https://drive.google.com/open?id=0B3yeBboXyl8AMVJidVpkVGs3RkE

    (Null reference error in the console is just for a minimap to not be found. It doesn't affect the bug, I've checked)
    (Client been a standalone or in-editor don't affect the bug too)
    (The only current code modifications are controls related and don't affect it too)

    What is it and what to check?
     
    Last edited: Apr 19, 2017
  48. vis2k

    vis2k

    Joined:
    Sep 4, 2015
    Posts:
    3,622
    Great news! The website was launched: https://ummorpg.net . If you created an addon, please share it on the website's forum so we can keep track and discuss all of them. The documentation was moved to ummorpg.net as well.

    Hi!
    They shouldn't pile up, the arrows are automatically destroyed. Other than that, it's mostly about complexity.

    Does it happen in a fresh project with Unity 5.5. as well?
     
    camta005 likes this.
  49. shamsfk

    shamsfk

    Joined:
    Nov 21, 2014
    Posts:
    288
    I meant that the cost of the Instantiate/Destroy calls piles up not actual objects. Those methods are quite computationally costly. Having lots of Instantiates and Destroys can easily lag even a PC game aiming to have a high fps. It's like a rule of thumb to pool everything that is instantiated frequently.

    So I wondered if there is any network related problem underneath or not.
     
  50. shamsfk

    shamsfk

    Joined:
    Nov 21, 2014
    Posts:
    288
    Not in 5.5. gonna stick with it for now then.
     
    vis2k likes this.
unityunity