Search Unity

  1. Unity 2018.3 is now released.
    Dismiss Notice
  2. The Unity Pro & Visual Studio Professional Bundle gives you the tools you need to develop faster & collaborate more efficiently. Learn more.
    Dismiss Notice
  3. Our response to Improbable’s blog post (and why you can keep working on your SpatialOS game). Read more here
    Dismiss Notice
  4. Want to provide direct feedback to the Unity team? Join the Unity Advisory Panel.
    Dismiss Notice
  5. Improve your Unity skills with a certified instructor in a private, interactive classroom. Watch the overview now.
    Dismiss Notice

Activation Graph System, 1.43 will be available! Mission, tech, building, skill tree solution

Discussion in 'Assets and Asset Store' started by mkgame, Sep 5, 2016.

  1. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Available in the asset store: https://www.assetstore.unity3d.com/en/#!/content/70925

    Manual:
    http://www.metadesc.com/studio/ActivationGraphSystemManual/Manual/Manual.html

    APIdocumentation:
    http://www.metadesc.com/studio/Acti...c/html/namespace_activation_graph_system.html

    In the Activation Graph System you can build up a node system for e.g. mission system, research system, build system, crafting system and much more. It can serve also as a time line editor. All these different kind of nodes in the graphs can be connected with each other, e.g. you can connect a mission task with a research task. I developed this graph system for my mission flow, but it is so powerful, that I already use it for my tech tree and build tree. The Activation Graph System does not generate any code in the background, it instantiates GameObjects with a specific node script, that can be configured.

    Full source code available.

    Open the Activation Graph System, create some tasks and conditions, connect them. Roughly, thats all.

    Features:

    - No code generation! Nearly all the nodes are static GameObject's with a script on it. You can also edit the scripts in the inspector.
    - Commented code. Documentation and API documentation is available.
    - Node editor for missions, tech trees, build trees and much more.
    - Runtime debuging. The node editor switches in debug mode.
    - UGUI dialog for the mission scene, tech tree scene, crafting scene, build tree scene.
    - Provides a good overview through the node editor.
    - Provides fast and simple changes.
    - Very very low performance needed, nearly nothing. - Thread based.
    - Undo/Redo supported.
    - Typewriter for UGUI.

    Screenshots from the upcoming version:

    For building/crafting

    bandicam 2016-11-06 16-43-18-365.jpg



    For mission system

    bandicam 2016-11-06 16-50-08-532.jpg



    For skill/tech/research trees

    bandicam 2016-11-01 01-31-45-464.jpg

     
    Last edited: Nov 18, 2016
  2. christoph_r

    christoph_r

    Joined:
    May 20, 2013
    Posts:
    412
    Any links or screenshots?
     
  3. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Hello,

    the asset is waiting for approval. This forum is connected with the asset description and will be used for it, because it is a souce code based asset. I link the Documentation and the youtube video.
     
  4. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    One in game picture (all the objects are not available in the asset):

    MQS_ingame1.jpg
     
  5. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    fernandobraz and christoph_r like this.
  6. christoph_r

    christoph_r

    Joined:
    May 20, 2013
    Posts:
    412
    Looks cool, very tempted to get it. The documentation is, at times, a bit difficult to understand: "With “Add Entry” the game objects can be added to the condition, which be defeated.", for example.

    Other than that it already looks like a good and useful foundation. I'll have to get it and tinker around with it to see what additions I'd find useful. It would especially depend on how easy and stable it is to get in custom code. This is actually what drew my attention to this, that it has less focus on the standard RPG "Go to X, do Y, get Z amount of coins." In fact, I'd like to use this for a kind of event system in a turn based game, which randomly triggers mission sequences. These sequences can trigger other sequences in turn etc. Plus those sequences have a lot of custom logic going on. So an abstract foundation is pretty important for me.
    A more abstract system could be interesting for a lot of people actually because it could also be used for tech trees, unit and building trees etc.
     
    mkgame likes this.
  7. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Hello christoph_r,

    I will read the documentation and fix such issues. The operator node could be extended with a random node, so it would not activate all outgoing connections. I did not implement methods for setting back values in an already ended mission sequence. However, I would not recommend you to put all the logic in these nodes. I would do the following in your case:

    - Create the mission sequences in the editor. Do not connect the mission sequences with each other.
    - Use the event system of the task/operator nodes to trigger your random selection method. Before, reference in this script all possible mission sequences (the first nodes). Activate the user condition on the rolled first node.

    You can still use it for tech, unit, building trees, but I have to plan an official version carefully. If I do it, the name of this asset will change later. It is not just a node system, it also has an UI part, which is mission oriented.

    How easy is the code?

    It is commented, not just the methods. The editor code is complex, but it is commented too. The nodes are not that complicated and I learned to do not write complicated code as long it is possible. I just used the singleton pattern, no factory patterns, no visitor patterns, no templates.

    Extendable?

    You can derive e.g. from the task node, and instantiate your new class in the editor (Just follow one type of node and do the same for the new node.). You can set the additional attributes in the inpector (simple way), or create new entries for your type of class in the editor code (more complex).

    How stable is it?

    I tested it a lot, the documentation is 2 month old, but it is actual. I used it in the demo scene and in my RTS game (in one scene, I don't have more yet). Both are not so complicated. In modern games you have usually simple sequences, go there and there, play video sequence and sound, actualize the mission (next task). But they also have some unique quests, like follow the car, but do not drive too close and not too far. This happens one times in Maffia 2.

    However, randomly select 'n' number of outgoing activation (weighted), is a nice feature for the next release.

    Thank you for the post!
     
  8. christoph_r

    christoph_r

    Joined:
    May 20, 2013
    Posts:
    412
    Thanks for the detailed reply! That sounds like the way I imagined it would work. I'll give it a try when I'm working on that system.
    About the UI: What are its elements and how extendable is it?
     
    mkgame likes this.
  9. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    The UI in the demo scene contains a dialog, where just Unity components were used. It is a skeleton (just color, no icons on it) for mission/quest purposes. You can scroll the quests and it has a quest description field, which will be filled, if you click on the quest in the dialog. The GUI logic is available, and it's quite simple to understand. The UI has also a notification dialog in the left/upper side of the screen (with typewriter and it fades aut after n seconds), which shows the long description of the new activated mission.It also shows in the right/upper side the short description and the name of actual quest. It is a good base to build up your custom UI on it. It is in UGUI.
     
    christoph_r likes this.
  10. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    This feature will changes from a mission system to an activation system. The Activation Graph System is capable for generating mission, tech, build, crafting trees and more!
     
    fernandobraz and christoph_r like this.
  11. christoph_r

    christoph_r

    Joined:
    May 20, 2013
    Posts:
    412
    Sweet! Looking forward to more details.
     
    mkgame likes this.
  12. wersw73

    wersw73

    Joined:
    Nov 7, 2014
    Posts:
    8
    On Mac Os Sierra is not working connection node.
    Unity 5.4.1p2
     
  13. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,522
  14. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Done.
     
    recon0303 likes this.
  15. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    I like my Unity 5.3.3f1 very much, it is a really good version. It is stable, in my case I don't have any issues, which force me again to update or downgrade.
    However, I will download the latest Unity 5.4 version and test it on it.

    Thanks for your bug report!
     
  16. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Attention!

    This asset will change from a mission system to an activation system. There will be compatibility issues (descriptions will be lost and its very possible that you have to reassigne the scripts on the node), because this update will be the base for more features. The Activation Graph System is capable for generating mission, tech, build trees and also capable to support crafting systems! In the next version (which is in Unity approval state) additionally a simple tech tree UI is included. Later I will provide for mission (already available), tech (simple version), build and crafting systems example scenes.

    The build system is different from the tech tree, because you can destroy buildings and then the nodes must be re-evaulated. That means, the first task must be restarted. For this, I dont have yet an example. (Example is not in the next release)

    The crafting system will get its own condition node, which will define, what kind of ressources are needed. After building the product, the resources must be removed from the player. For that a resource container is needed, which will be a node or a resource management class. (Not in the next release) However, you can still use this activation graph for supporting your crafting system.

    I was very happy with my mission graph system, but I also need a tech tree a build tree and a crafting system. Why not all with the same tool? To connect missions with the tech tree, or to connect tech tree with crafting system (build a tank) sounds good for me. My RTS game needs more instances of the Activation Graph System, for each player/AI player one. For this I will support an Activation Graph System Manager, where you can set how many clones you want to have at starting the game. (Not in the next release)


    In the next version:

     
    Last edited: Sep 26, 2016
    christoph_r likes this.
  17. recon0303

    recon0303

    Joined:
    Apr 20, 2014
    Posts:
    1,522

    I'm the same way I do not use new versions of Unity since they are never stable anymore...I use 5.3.5, But I agree... I would stand clear of 5.4.. if I was anyone .. for now.
     
  18. wersw73

    wersw73

    Joined:
    Nov 7, 2014
    Posts:
    8
    Sorry for my English, I can not quite correctly put .On Win 10 is not a problem in the version of Unity 5.4.0 only on Mac OS.
    Best wishes wersw73.
     
    Last edited: Sep 27, 2016
  19. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    I tested it under my Mac, left ALT and Control are preconfigured for Mac things...

    Try following (I did it and it works after.):

    - Open the the file MissionNodeEditor.cs
    - Replace the 2 KeyCode.LeftControl with KeyCode.Z
    - Replace the 2 KeyCode.LeftAlt with KeyCode.X

    If you want to connect the nodes, then type Z instead of control and type X instead of alt. In the version which is in approval, the MissionNodeEditor.cs name changed to ActivationGraphEditor.cs, there you have to do the same changes. After these versions it will be Mac compatible. I'm planning to upload a new version at Sunday or Monday and in this version the Mac issue will be fixed too. Maybe you can tell me what keys you want be mapped for control and alt on Mac.

    Thank you again for this post!
     
  20. wersw73

    wersw73

    Joined:
    Nov 7, 2014
    Posts:
    8
    Thanks it worked!
     
    mkgame likes this.
  21. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Still testing the new release, the picture shows a building and unit construction graph.

    bandicam 2016-10-02 21-04-31-650.jpg
     
    christoph_r likes this.
  22. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    The next release is one week to late, but it got a lot of more features. It will be uploaded tomorrow and probably will be available next week. This is a release, which should be a stable base for the next updates. All task connections (green and red connections) must be removed and connected again, if you update the old version. This bigger changes were needed, because this asset moved from a mission graph to a more generic graph system and now it provides tech tree, build tree and crafting additionally.

    What is new?

    - Container and Container Manager nodes added to manage the resources
    - UserCondition is now able to access the container
    - Position of the view in the GraphEditor is now stored
    - More ActivationGraphManagers can exists in the scene, the ActivationGraphEditor provides now selecting them
    - Four new scenes
    - Optimized old example
    - Source code is optimized for low CPU usage, also more threaded
    - UI controller now access the state-actualize methods by delegates
    - Task nodes can be restarted
    - User condition can now act as a trigger (it sets back the state after it triggers)
    - More internal changes to provide more freedom for creating a graph...

    Scenes included:

    - Complex scene (mission and tech)
    - Crafting scene
    - Tech Tree scene
    - Build Tree scenes
    - Mission scene

    Some new screenshots for the next release:

    bandicam 2016-10-08 20-42-59-913.jpg bandicam 2016-10-08 20-44-06-122.jpg bandicam 2016-10-08 20-45-21-331.jpg bandicam 2016-10-08 20-46-25-735.jpg bandicam 2016-10-08 21-26-47-984.jpg bandicam 2016-10-08 20-42-59-913.jpg bandicam 2016-10-08 20-44-06-122.jpg bandicam 2016-10-08 20-45-21-331.jpg bandicam 2016-10-08 20-46-25-735.jpg bandicam 2016-10-08 21-26-47-984.jpg
     
    Last edited: Oct 8, 2016
  23. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Preview for the next release, which is in Unity approval:

     
    christoph_r likes this.
  24. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Release 1.2 is available!

    Documentation and API update will be available today.
     
  25. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    I'm a game developer and I use my own assets in my game, so I have to improve this asset again. I built up a building/unit dependency/crafting graph in combination with a tech/research graph. So, I dont want to add for each crafting node two user condition nodes and I need visual differences between different typed nodes for better overview.

    For the next release:

    - Colorized node types, Tech Tree, Mission Node, Crafting and so on will have their own colors for marking them in the graph. Needed to better differentiate typed nodes. No compatibility issues, simple improvement, mostly editor work.

    - A task node for creating items will be added. New composite node, which will be a task node with a trigger user condition and cosumer user condition. This is needed to avoid adding 3 nodes for one purpose, for producing a product again and again. No compatibility issues, just a new node.

    * Maybe the periodically checking of the condition nodes will be fully event based, if something happens, then the conditions will be checked and not periodically. This change has no compatibility impact. Periodically checking in a thread the conditions, in the most complex project were I made 12 nodes, which checks periodically, has a very low impact on the performance. I got 1000 frames per second with UI and overhead.

    * Maybe copy/paste, multiselection will be a part of the next release. No compatibility issues, just editor improvement.

    At all, the version 1.2 was made with the aim to avoid compatibility issues in further releases.
     
    christoph_r likes this.
  26. christoph_r

    christoph_r

    Joined:
    May 20, 2013
    Posts:
    412
    That sounds great, especially the event based checking.
     
    mkgame likes this.
  27. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    In the next release:

    - Colorized node types, Tech Tree, Mission Node, Crafting and so on will have their own colors for marking them in the graph. Needed to better differentiate typed nodes.

    - A task node for creating items will be added. This is solved by adding user conditions inside the task. They are then not visible in the graph, but the attributes can be fully changed in the task inspector view.

    - Periodically checking the conditions will be just done, if it is necessary. E.g. timer, defeat/survive conditions need periodically checking, but the user condition doesn't (if the timer is not enabled on it). Even if the periodically checking is necessary, it will be optimized to just check things that are needed for periodically checking.

    - Containers in container manager will have attributes for priority based filling and removing items. E.g. for an RTS game, resources will be stored at first in the command building, if it is full, then in silos and then in the refinery until the refinery is full and after this it won't produce more items. For RPG games you can have more bags, and the priorities can help you to fill the first bag at first and then the another. Also removing item at first from the bags, then from the bank can be done with the priorities.

    - A function will be provided to re-align items in the containers for the container manager by priority. E.g. RTS: build a new silo and fill it by priority, so that the refinery have again enough space to produce products.

    - Performance optimization for notifying the tasks and the UI's by the condition state changes. Changes will be collected about in a frame time to decrease updates in the task nodes and in the UI's. This is needed for more complex graphs, where the same items are shared in a lot of user condition nodes. When these items are changing, the dependent nodes (which refrence this item) must be actualized to see, can the items be built or not.

    The next release should be available next week in the asset store.
     
    Last edited: Oct 22, 2016
    christoph_r likes this.
  28. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    The next release needs a bit more time. I got a lot of issues after introducing the non periodically checking for conditions.The features I described are all done, but undo/redo is not stable yet. I would like to add two new example scenes, one for skill tree and one for time based building (where building takes some time, the progress will be shown up in the UI). Hopefully the next release will be available next week in the asset store.


    This will be the state that I wanted to achive. After the next release I will fully use this activation system for my RTS game, that can lead to some updates. After this the price will rise soon to 30+-5$.
     
    christoph_r likes this.
  29. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Some new images for the new and the updated scene. (Available in the next release.)

    The new skill tree example, the building/unit example and its much more smaller graph due to the internal user conditions. Both examples are well made examples.

    The building/unit example supports build-queue, creating things needs now time and will be animated by a clockwise filled overlay. The build process can be stopped by the right button and a second right button click removes the built item and refunds the resources.

    The skill example allows distributing 1 or more skill points in skills. Distributing skills is supported by the container and the consumer user condition. In this way also the level of the player can be used to limit the skills. The level is also defined as an item in the container, but the level is set as non consumable. That means, it is a requirement but after the task is successfully, the level will not be consumed. The yellow junction means, all incommings must be in success state. The red junction means, just one of the following skills can be activated/selected. But much more logical combinations are possible!

    Additionally a generic timer manager will be available in the next release.

    Hint: If you want to use my icons, do not mention my name regarding to the icons ;)

    bandicam 2016-11-01 01-31-45-464.jpg bandicam 2016-11-01 01-29-51-321.jpg bandicam 2016-11-01 01-27-58-884.jpg
     
    Last edited: Nov 1, 2016
    christoph_r likes this.
  30. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    New release is now under Unity approval. The price will rise to 25$ with the new release, so last chance to get it for 10$!

    bandicam 2016-11-06 16-43-18-365.jpg
     
    christoph_r likes this.
  31. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    I also made three new videos to the three main examples. In the documentation I would like to describe these three examples more detailed.

    For building/crafting



    For mission system



    For skill/tech/research trees

     
    Last edited: Dec 15, 2016
  32. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    9th day in Unity approval, maybe I wrote too much code... Maybe the last day to get it for 10$. It will rise to 25$ in with next release and after polishing the editor UI to ~35$.
     
  33. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    Hi,

    Your asset looks interesting. :)
    1. I`m not a coder, so my first question is how can I use your asset in connection with Playmaker? Do I need some custom Playmaker actions? If indeed I would need some actions to link events/variables or some other components would you be willing to help users like me with such playmaker actions?
    2. Do you plan integration with some other assets? I`m thinking about some behavior trees assets.
    3. Can I use some variables in the skill tree so I can skip and/or bypass some skill tree branches or even change the path in the quest/missions having this way the possibility to have, lets say, multiple endings?
    4. What are the main difference/strenghts by comparing Activation Graph System and Quest Machine: Hand-Written and Procedurally-Generated Quests?

    I really liked the steady way this asset is progressing. And thanks for the tutorials.
    I`m really looking forward to play with Activation Graph System!;)

    P.S. - I couldn`t help myself and I bought your asset while writing this reply. :)
     
  34. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Hi,

    the core is the graph, that can be configured in the editor. The UI solutions, like mission/build/skill, are just examples for how to use the graph. These examples should be modified for your purposes. If you want to use the UI examples, then you have to code it. If you just want to use the graph, then it could work with Playmaker.
    I know Playmaker, because it was free to get in level 11. I also know that Playmaker can call methods in source code. I made a state machine for a door (for RTS), but then the complexity was too high, and that was then much more easier and shorter in c# code. But however, it is a good visual editor.

    1. I don't know, that it makes sense to connect it to Playmaker. At first I have to make a test project with Playmaker. I don't know how to make Playmaker actions yet. I cannot ensure you anything, I will give it a try at weekend.

    2. The first one would be Playmaker. This asset is pretty much standalone, but I already thought about connecting it to Playmaker;)

    3. That should be possible.

    4. The Quest Machine looks good. I dont like the automatic code generation of visual editors, that is the reason why I don't use such editors. It has also a dialog system, that I don't have, because for that the asset store already provides good solutions.
    My solution is not just a mission system, it can be used as skill/build system, and you can connect the graphs with each other. E.g. a skill can depend on a mission.
     
  35. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    mkgame, thanks for your answers.

    I just recently moved and I don't have as much time as I would like to play with AGS nor do I have yet access to my desktop. The little time I have left for Unity, I try to figure things out on my laptop. I didn't even had time to watch the video tutorials, even though I managed to read part of the documentation you provide online, hence my noob questions. :)
    By linking/connecting AGS with Playmaker via Custom Actions, will open your asset to non-coders like me. This way it`ll give me access to UI, variables and events and other assets/packages I might find useful: Dialogue System for Unity, Adventure Creator, Node Canvas, Slate, Behavior Designer, Core GameKit, etc.
    Which of course will extend the market for your product and implicit a positive effect on sales. Of course, the more integrated packages, the better. You see what I'm doing here. :)

    If I understand correctly, AGS is some sort of specialized (more or less) state machine. Because of that, performance wise, I understand is more efficient than, lets say, Playmaker. I was thinking to build the entire game logic with AGS and use Playmaker to access/use game mechanics or other functionalities/features found in other packages from the asset store. Am I right?

    One more question. Lets say my character is gathering experience points (skill points in AGS if I understand correctly) during the game. Can I have different types of experience points, something like construction experience, fighting experience, building experience? Each different type of experience will have it`s own counter (amount of points), which might be converted maybe, but without conversion they can be used for their specific purpose only. Is that possible?
    I understood is much more than a quest/mission system, but maybe I should ask, how flexible AGS is?

    Again, many thanks. I really appreciate your extensive answers!
     
  36. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    AGS is an activation graph, it is not a behavior graph or a state graph. It is maybe one of the most important and common graph type for technical purposes. I missed it in the Unity asset store.

    I don't belive that you can describe all the game logic in this graph, for thar you have Playmaker in your case. But you can make well optimized parts of the game, like the examples it shows.

    You can define in the Container all the experience points, and you can make your skills depend of them.
     
  37. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    I see. Definitely looking forward for the Playmaker connection. Thanks.
     
  38. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
  39. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    Hi, just curious if you had time to take a look at the Playmaker integration.
     
  40. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    I'm sorry, I had no time for PlayMaker last week, but I will try it this week. What I can tell you yet, the UI script part must be made in PlayMaker and that takes time.
     
  41. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    That will be great. Having all the logic (missions linked with building, skills, tech trees, etc) embedded in one compact asset like yours makes things way easier to manage. Having Playmaker integration it`s going to be a huge step forward for non coder guys like me. Thanks for that, I really appreciate your support.
     
  42. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    I cannot provide Playmaker implementation yet, because this would be too much work and too early.

    Following things must be done:

    - Rebuild the all the UI scripts in Playmaker (UI logic also contains queue for the building example, or sorting for the mission example)

    - Expose all the public methods and variables in Playmaker actions, I have lot of classes

    I'm still working on this project, I'm on the way to fully use this asset in my strategy game. This can cause some updates, if something is missing for this purpose. I also want to improve the editor itself, with copy/duplicate/multiple selection. So this would be a bad time for Playmaker support, because of the upcoming changes. I'm developing a game and provide some solutions in the asset store and this is fair, because I use it in my own game, so I test it and develop it in a real environment. I don't work on fancy promo videos, I work on my game and on my assets.

    This asset has also some similarities with Playmaker, but it does NOT GENEREATE SOURCE CODE! It just configures scripts on GameObjects's. It is a visual scripting for programmers, because there is no generated code and so the scripts can be modified. This kind of visual scripting was missing in the asset store, there are just tons of visual scripting for non programmers. This was the trigger for the Activation Graph System, I needed it for my game. However, I still want to support external assets, but not sure which assets and when.

    However, If you need help for external assets, like Playmaker, I will support you. But keep in mind, I don't have all the assets in the asset store, but about more then 200 ;)
     
    Last edited: Nov 29, 2016
  43. Mark_T

    Mark_T

    Joined:
    Apr 25, 2011
    Posts:
    303
    To be honest, in my expectations regarding Playmaker integration, I was hopping to be able to send events via AGS custom actions and also to be able to access all the variables, global and private too, this way being able to link what was happening in AGS with my own game mechanics.
    Regarding the Unity GUI, Playmaker already has a uGUI Action Pack that gives me access to the GUI elements without writing code, which can be downloaded using their Ecosystem. You can take a look the way it was implemented in this short 2 minutes video.
    Of course, a deeper integration might bring more benefits, but honestly, right now, I don't know exactly how AGS works under the hood, so I'm not able to say what these additional benefits might be. Just actions that work both ways, to send/get events and update the variables values.
    Basically, this is my main request, to be honest. All the other packages I need can be accessed via Playmaker.
    Many thanks for taking the time to see what needs to be done. I really appreciate it!
     
  44. CommunityUS

    CommunityUS

    Joined:
    Sep 2, 2011
    Posts:
    147
    I think a save example would be helpful too.
     
  45. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Hi,

    could you explain what exactly do you want to save? Maybe the graph state in running mode?
     
  46. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Next version will also have smaller nodes in the graph, where on the node the short description will be removed but the name will be still available. The short descriprion will be still available in the custom inspector window. The nodes are simply too big.

    I built in the activation graph in my RTS for creating buildings, I did't find any errors, but I added some convience methods (e.g. instantiating container dynamically in game 'e.g. building a silo instantiates a container to the graph with an item metal').
     
  47. CommunityUS

    CommunityUS

    Joined:
    Sep 2, 2011
    Posts:
    147
    as is, the examples don't save progress. when you stop and start game again you should be able to pickup where left off. save examples please. I think graph state is what would do it yes, you tell me.
     
    Last edited: Jan 6, 2017
  48. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    Serializing and de-serializing should work for the graph to save and reconstruct the current state. I will provide these functionality hopefully in the next version. Because there are a lot of possibilities how the serialized data can be stored, I will provide a data structure format (I guess it will be XML).

    The XML file format is also quite readable, so you can also adapt your saved XML, if you change the graph in Unity. At the end these data must be encrypted, because the player should not be able to modify these files.

    I could also use Unity's PlayerPrefs, or a generic serialization way, have to think about this.
     
  49. CommunityUS

    CommunityUS

    Joined:
    Sep 2, 2011
    Posts:
    147
    Great. XML would be slightly more preferred as it is less convoluted - we can easily see what is going on in the example and then take it from there. A bonus would be player pref. the bonus here is there are assets that can encrypt the prefs for you, then other assets that can make them more navigation friendly. But also, if they break on the user end, there is no way to retrieve or fix. So I always go xml first, player pref second, and usually use xml as a backup until i have time to properly set it up to a cloud.
     
  50. mkgame

    mkgame

    Joined:
    Feb 24, 2014
    Posts:
    569
    The new version will have optimal size for nodes to provide a better overview. Every missing UI mask on the nodes can be found in the node inspector window. If there is no veto, then you will have this UI node representation in the next version. This version will be also more color blind friendly.

    bandicam 2017-02-20 16-48-04-646.jpg
     
    Last edited: Feb 20, 2017