Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

GromDatabase on AssetStore

Discussion in 'Assets and Asset Store' started by gromerr, Sep 9, 2015.

  1. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    logodatabase.png

    Available on Asset Store


    GromDatabase
    it's a tool through which you can easily create your own ScriptableObject database without writing any line of code.


    Main feature:

    ● Possibility of designing a database entity via an interface.
    ● Simple and friendly user interface.
    ● Database is based on ScriptableObject.
    ● Support multiple (23) types:
    ○ Basic : byte, bool, char, double, float, int, long (requires Unity 5), string.
    ○ UnityEngine: AnimationCurve, AnimationClip, AudioClip, Bounds, Color, GameObject, LayerMask, Material, Rect, Sprite, Texture, Texture2D, Vector2, Vector3, Vector4.

    ● Search item in database contains 1000 records take 0.153 ms.
    ● Using from ScriptableObject is to reduce memory usage by avoiding copies of values.
    ● Compatibility with editor version:
    ○ Works with 4.6 and Unity 5 ready.
    ○ Works with Unity Free and Pro.
    ○ Works with Windows and Mac.

    ● Autosaving entered data.
    ● Ready to use properties and methods for each database in runtime.
    ● Because database is based on ScriptableObject can be use at all platforms offered by Unity.

    Documentation
    For more information - check the documentation PDF available here.

    Screenshots:

    schema window 5.jpg

    schema window 2.jpg

    schema window 1.jpg

    schema window 3.jpg


    Video tutorials:
     
    Last edited: Sep 9, 2015
  2. debest

    debest

    Joined:
    Sep 11, 2015
    Posts:
    1
    It looks very interesting!
     
  3. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    Hi Grom,

    Think you need to launch this asset in the Unity Forums! Looks amazing.

    Some questions / ideas for future development:-

    1. Playmaker support.

    1a. Playmaker support!.

    2. When editing records within a database have the ability to add a record or delete or go to start or end from there - quicker development time..

    3. Please tell me it's its own file and NOT the player prefs file?

    4. Would be great (with a bit of editor/inspector tinkering) if you could have an icon view of textures, gameobjects, colours, and so forth. Also, would be good if you could drag and drop in things like textures, gameobjects, etc. Support for sound files too? With gameobjects, textures etc does the database simple store the reference to the texture, gameobject etc or does it serialise it and store the whole object (thinking about size in memory).

    5. Support for Android and Ios?

    6. Direct support for Lists and Arrays. This would be fantastic. So say you're sword could have say a list of buffs, with also values. And the list would be a column/field itself.

    7. Default values for fields in records?

    8. Encryption options?

    9. Export and Import for/to CSV (in the long term)?

    10. More examples in tutorial etc of making use of existing databases in games - examples.

    11. What happens if you have lots of columns for each record - when you are editing or adding a record in a database, does the window scroll and adjust to allow you to edit and add all fields in the record?
     
    Last edited: Sep 13, 2015
  4. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    Thanks debest and Duffer123 for sharing your opinion.

    1. Playmaker? can you tell me a bit more what it is?

    2. Add, delete records or switch between it can be useful and will be not hard to implement.

    3. GromDatabase store data in ScriptableObject - it is good explain in documentation http://docs.unity3d.com/Manual/class-ScriptableObject.html or in live training https://unity3d.com/learn/tutorials/modules/beginner/live-training-archive/scriptable-objects

    4. content view it's good idea

    5. It should work without problems.

    6,7 Default values, list and arrays - I was thinking about this option before and I have plan to add this.

    8. I don't use encryption. It is stored in assets files, and from what I can tell the compiler unity encrypts data during a build.

    9 Yes this is the good option to migrate database between project, but now I have no idea how to save some prefab in CSV files. I must make some research.

    10. How use it in game from code level is in my documentation, but I can make some video tutorial.

    11 windows are resized and the ability to scroll when there is a lot of data
     
    Last edited: Sep 13, 2015
  5. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @gromerr,

    Excellent. . Look forward to updates. . Look up Playmaker on asset store to see what it does... Best selling asset and if you support it you make your asset more marketable... . . ;)
     
  6. TechiTech

    TechiTech

    Joined:
    Dec 13, 2014
    Posts:
    212
    Just purchased this asset. Nice work :)

    could you make it so we can edit records without having to click edit and go to specific record view?
    For example.. I need to view all records at the same time whilst updating or adding a new record.

    Also could to make the columns width resizable?
    For a quick update could you move the edit button to the left side? so I dont have to keep scrolling.

    Overall I'm pleased with this asset.. :)
     
  7. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    Good suggestions. One echoes one of mine. The 'competitor' assets like SIMPLESQL, Datablocks and GDE all have Playmaker support so really hope that's introduced asap too...
     
  8. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    @TechiTech good to hear that you are enjoy this asset.
    I add these suggestions to my list in next patch.

    @Duffer123 I will take a look at this asset
     
  9. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    Great.

    Addition of direct support for lists and arrays would be fantastic...
     
  10. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    Small update where it was fixed compatibility with Unity 5.2 just came out
     
  11. TechiTech

    TechiTech

    Joined:
    Dec 13, 2014
    Posts:
    212
    after updating :
    Assets/GromDatabase/Editor/Core/Generator/ItemGenerator.cs(96,31): error CS0117: `GromDatabase.NodeType' does not contain a definition for `longType'

    How to fix this?
     
  12. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    @TechiTech make sure to properly update all files, especially GromDatabase\Core\Schema\NodeType.cs

    You should have a content:
    Code (CSharp):
    1. #if UNITY_5_0 || UNITY_5_1 || UNITY_5_2
    2.         longType = 6,
    3. #endif
     
  13. TechiTech

    TechiTech

    Joined:
    Dec 13, 2014
    Posts:
    212
    ok thanks.. ill check it out

    Edit:

    Yep sorry my bad. For some reason it didn't update that file.

    All sorted now
     
  14. Oxygeniium

    Oxygeniium

    Joined:
    Aug 11, 2015
    Posts:
    2
    Nice Asset! I bought it and have no regrets! Very nice interface and easy in use. Now I can create my games much faster and easier than before. Plus too for a nice and light tutorial ;).

    Thanks!
     
  15. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    @Oxygeniium thanks for your opinion, good to know that tool is useful.
     
  16. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @gromerr,

    How is it coming along and what are your thoughts re Playmaker support/integration and support/integration of Lists and Assets...?

    Something else (not quite a list, nor an array, but useful) that would set this apart is if, by row, you could have a field which was a list where each item/element also had a score or value.

    So let's say your row related to a sword and you had fields for things like name, description, texture, icon, model, other values, you might also have a field for buffs and that would be sort-of like a list... ie.

    Item/Element Value
    FireDamage 1.1
    IceDamage 2.2
    ElectricDamage 5.6

    Also, it would be cool if a field could in fact refer to another 'schema'/table as a gameobject...?
     
    Last edited: Sep 20, 2015
  17. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    Hi @Duffer123

    I watched Playmaker and integration it's a task for very long term. So currently I can't promise it will be support in future.

    Yep I know what you mean, dropdown list with defined values, something similar to the existing list LayerMask. Enum type list will be easier to do, relationship to another database entity will be harder to do but it will give more capabilities. I will add this to my development plan.

    Now I'm focus on better workflow with tool:
    - move some buttons
    - multi edit records
    - array and list
    - default values
     
  18. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    Not to worry. Maybe I can code in some Playmaker support. Still think it would add a lot to this asset...
     
  19. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @gromerr ,

    How goes it? What new stuff are you thinking about adding next?
     
  20. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    Hello, work is going well. Probably end up in next week then few days for testing and submit this to asset store.
     
  21. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    What things are you adding?
     
  22. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    - multi edit records
    - array and list
    - default values
     
  23. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @gromerr ,

    Have purchased! ;)

    My review of GromDatabase as on the Asset Store (including some suggestions for further development):-

    In early stages of development but already a gem...
    (0 of 0 found this review helpful)
    What I love about this new Asset is that it totally simplifies creation of ScriptableObject based databases and inventories and it supports so very many types.

    I'd echo what the other reviewer has said.

    The author of this Asset is now working on improving the Schema and Database Windows and adding multi-edit windows, arrays and lists and default values...

    Things on my wishlist for future development:-

    1) Improvements to the Schema Window, including:-
    - the functionality to be able to re-order the items/types within the particular
    schema; and
    - when changes or additions are made to an existing schema a prompt to save
    (generate) the schema.
    2) Improvements to the Database Window, including:-
    - the sequence of the buttons from left to right should be "Add&Edit", "Add", "Copy",
    then the "Delete All" button should be to the far right and should then have a "Are
    you Sure? Y/N?" prompt if you click it as a safety measure to check you really want
    to delete all the items in the schema.
    3) Playmaker support - so plenty of nice Playmaker actions;
    https://hutonggames.fogbugz.com/default.asp?W350
    https://hutonggames.fogbugz.com/default.asp?W351
    4) The ability to 'preview' certain Unity Types within the Database - so preview image of a
    Texture, Texture2D or Sprite etc.
    5) Default values for all Types and Unity Types items within databases.
    6) New Types would be fantastic:-
    - Arrays; (supporting all Types/Unity Types/Special Types - see below)
    (the author is already working on this);
    - Lists; (supporting all Types/Unity Types/Special Types - see below)
    (the author is already working on this);
    - A really fantastic addition would be a 'Special' Type based upon the same or another
    Schema (in effect, table) already created in GromDatabase - this would be a massive enhancement!; (relationship to another database entity you mention above)
    - Sounds (a Unity Type); [Ignore - see AudioClip already in!]
    - Enums (tricky - a dropdown - you would have to allow the user to separately create
    some defined Enums within either the particular Schema or Grom Asset generally?);
    - Dictionaries (with the Keys and the Values being of any Type, Unity Type or Special
    Type).
    7) Another massive enhancement, generally, would be to allow for items within databases
    to either be Parents or Children - so Children rows with any null fields would inherit
    their Default fields from a defined Parent row...

    Anyway, an excellent Asset already but so much promise for future potential and development. ;)
     
    Last edited: Oct 11, 2015
  24. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @gromerr ,

    How goes the development of this great asset?
     
  25. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    Hi, I would say that the update is still in the development phase. It may take more time than I thought.
    Right now i have ready - multi edit records.
     
  26. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @gromerr,

    Good stuff. Keep us posted as you develop. Naturally, I'd be happy to beta test. :)
     
  27. shiggyzz

    shiggyzz

    Joined:
    Nov 5, 2015
    Posts:
    2
    This is probably me not understanding Unity but, is it possible to Instantiate a prefab and add it to the database?
     
  28. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @gromerr ,

    How is development coming along.?
     
  29. shiggyzz

    shiggyzz

    Joined:
    Nov 5, 2015
    Posts:
    2
    @gromerr ,
    When I add data into the database at run time (player names, stats, ect) the data does not persist in the database. it lasts until i quit unity and then is zero'd out.
     
  30. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    Yes. Would be great to add permanent data from runtime but then beyond runtime.
     
  31. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @gromerr ,

    How goes development of this asset? ;)
     
  32. gromerr

    gromerr

    Joined:
    May 21, 2014
    Posts:
    15
    Hello everyone.I still working on this asset but only in free time. You can expect an update just before Christmas, not earlier.
     
  33. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    GREAT.! .Will be good timing!
     
  34. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    @ gromerr - just wondering how it's going and any more progress with implementation of collections list lists, dictionaries, arrays and also then enums? :)
     
  35. Sabathius

    Sabathius

    Joined:
    Jul 13, 2013
    Posts:
    55
    Quick question: When I pull a record from the database:

    inventory_records = player_database.Get.Where(inventory_record=>inventory_record.type==2).ToArray();

    how can I get the corresponding database ID for the records? I'll need to keep track of them in case I need to edit/delete the records later.

    Thanks in advance!
     
    Last edited: Jan 24, 2016
  36. Animatronic

    Animatronic

    Joined:
    Aug 31, 2013
    Posts:
    4
    Thanks for the great plugin!

    The following updates would make this super awesome:
    1. Possibility to edit database fields by clicking on the field and just editing the previous value instead of pressing the edit button.
    2. Resizing database column widths to save screen estate.
    3. Adding arrays and enums as supported database types.

    I was also happily surprised that you could rename a schema and when generating the new database it just updated the name of it for all the files without removing any previously assigned data. I'm not sure, though, whether renaming this caused these editor window errors when pressing play:

    "Invalid editor window (suchandsuch)... UnityEditor.EditorApplicationLayout:FinalizePlaymodeLayout()"

    ...or similar - I lost the error message already as I fixed it just by changing my layout back to one of the default ones. But yeah, you could maybe check as well whether renaming schemas cause any errors for you?

    In any case, such a great tool. Exactly what I was looking for today.
     
    Last edited: Jan 4, 2016
  37. danicrem

    danicrem

    Joined:
    Nov 9, 2014
    Posts:
    45
    I am willing to buy this asset, if it is still developed. Could anybody confirm that it is still updated?
     
  38. Duffer123

    Duffer123

    Joined:
    May 24, 2015
    Posts:
    1,215
    The developer was going to release a new version at Christmas but nothing yet. So, as things stand, I'd say no.
     
  39. gameDevi

    gameDevi

    Joined:
    Oct 14, 2015
    Posts:
    155
    nope it hasn't been updated. I thought developer would a least implement some of our suggestions. He did nothing since release.

    buy it if you're happy with it as it stands.

    That reminds me to update my review.