Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

[Released] Game Kit Controller: Engine with melee, weapons, vehicles, crafting & more! 3.75

Discussion in 'Assets and Asset Store' started by sr388, Sep 1, 2015.

?

What features/systems do you prefer to arrive sooner for next updates on GKC?

  1. AI behaviors options, able to drive vehicles and fire turret weapons

    25.6%
  2. Armor/cloth system: stats, damage resistances, etc… & character aspect customization (fallout)

    30.0%
  3. Cover System and Climb system based on Breath of the wild and Assassins Creed

    36.2%
  4. Online multiplayer (using mirror as first solution and include others later)

    42.0%
  5. VR integration including 1st/3rd person and locked views

    10.1%
  6. Full body awareness (FBA) to see player’s legs, body and arms in first person

    18.5%
  7. More types of controls, similar to Diablo, MOBA & RTS and similar genres

    10.6%
  8. More tools/creator wizards on the asset workflow (tell about them)

    13.4%
  9. Integrations with other assets (tell about them)

    16.2%
  10. More RPG/Scifi elements/mechanics (tell about them)

    12.3%
Multiple votes are allowed.
  1. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    The update sounds good. As far as UI goes, I think game devs are going to want to customize that a lot, but there should be some similar underlying mechanics.

    For me, basically I want players to either get a skill as a quest reward or buy one with credits from a vendor. The skills they get as rewards are less likely to be as desirable as the ones they save up for and buy, but they help the player progress.

    The newly acquired skill is not activated till they spend another type of credit to place a modifier on it. Display-wise, since there's three modifiers, there's three columns on screen and the skill gets placed into whichever one matches the modifier.

    After that, the skill is available to be added to the action bar of the player.

    I don't know if that helps any. To me, my design shares similarities with your examples.

    I'm thinking that a lot of different skill scenarios can probably be created by using the vendor / inventory / category features that likely already exist in the system.
     
    sr388 likes this.
  2. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    Can the system allow for switching class, with each class having it's own skill tree?

    Addendum to thing to think for level management... some room/tile can have multiple states (bustling city, occupied city destroyed city) so we need to have system to handle that (impact navigation, saving) especially state share data, and we can be inside a level while it's changing to another state (invasion, destruction...)
     
    sr388 likes this.
  3. 3DWizerd

    3DWizerd

    Joined:
    May 13, 2015
    Posts:
    38
    Would like to add custom animations to each power, is this possible or can it be done with events? Im sure it will very much accommodate skills as well
     
    sr388 likes this.
  4. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Sorry for the time to reply, notifications are working randomly (on my case) again.

    Yes, I am making the UI elements as independent as possible for this system and it is already very customizable. This time, in a different way that other systems that have a list of slots (inventory, weapons, powers, vendor, inventory bank, etc..) the slots are not "dinamically" generated/instantiated, they are configured manually, since most skill trees have different shapes and sizes. That will make everything easier and more independent for its customization.

    Yes, these systems already work like that, a killed enemy has a component which can give money, experience, skills points, inventory objects or skills to the player (this component can be used anywhere and trigger it by events), so the player can use those skill points or get abilities directly from certain actions.

    Aham, I see. Yeah that kind of options can be added in next updates. For this current version, the system will be more general, but more specific options can be added and extended later.

    The system is very flexible, is a category list (and inside of it another list by category) of options and events, so it is not dependent of nothing. Like that, you can pretty much configure any set of skills/abilities/actions to activate or improve in the player.

    Probably the best way for classes, would be to create different player prefabs and configure their own skills, according to the type of character.

    Yes, I keep having in mind that management for this kind of systems. But I am not sure the relation between the above and the level/experience/skill system (I think that you maybe just want to add more info to your previous post, I am right?).

    I think the best option for that would be to add an event option on each power and when it is activated, trigger that event.

    That event would call to a new script function to set an specific ID parameter in the animator to play an animation, with options to configure its duration and like that, pause some actions in the player (probably movement input for example).

    At least, I think that would be the way I would add that part right now. I can put this in the todo list if you want, so it could be used to configure spells and magic animations.

    Regards.
     
  5. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    Oh... I was thinking more like xenoblade x which let's you switch class, from a class tree on the fly, with class skill being freely equipable to any class, but only once the original class has been mastered and unlock a more advanced version of that class branch, which is also similar to a fez final fantasy games.

    But yeah all these addendum are because I came back to designing my open world architecture... which also had me thinking about level lod relative to level object, close chunk might have per object lod but distant chunk is a single lod for all static objects. Which is important if you have baked light data...
     
    sr388 likes this.
  6. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi everyone.

    Here the WIP for the skill system (there are some elements to add yet, but the system and the menu is totally functional), also want to place more skills in each category, with options to unlock some skills once you active a previous one. Nothing is hardcoded and it is very customizable and extensible.

    more improvements new stuff 210.gif

    Aham, I see. Yeah, the way you mention to select different class is what I have in mind. What I forgot to mention is that you could select a class (between the different prefabs) and select a character model for it at runtime. I haven't decited yet the final way for this (change model at runtime or configure different classes able to be placed in any prefab), but will think about it.

    Regards.
     
    Wetw0rx, hopeful and DrOcto like this.
  7. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi everyone.

    Here another example and more progress in the skill system:

    more improvements new stuff 211.gif

    it already allows to unlock other skills when you use skill points in others skills. These skills info is already saved/loaded too. And skill points are already a pickup, so the current amount of skill points in the player can be increased with this kind of pickups.

    Regards.
     
    Neviah, hopeful and neoshaman like this.
  8. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi everyone.

    I have been making a lot of progress in the last days, all the info of the new systems added and previous one (inventory, bank, skills, vendor, missions, stats) is already saved/loaded, I have to make a few more checks, but those systems are already complete.

    Also, related to the AI, now it moves better towards its target, taking into account the real distance (the distance of the path to follow instead of the distance without taking into account obstacles and walls for example) and looking to the proper direction (movement direction or target direction according to distance to target).

    This was the previous movement (it is a video recorded by an user that made me notice this issue):


    And this is how it looks now:




    Other element added is an option to show the full current input action list as text in the input manager inspector itself, including buttons to show only the keys configured or the keys and the name of the actions as well. This can help to see better the current input configured.

    1.PNG
    Also, it has options to filter the input actions by keyboard keys and joystick button. This will allow to see in what actions a certain key has been assigned.

    2.PNG

    For this update, along with the minor tests and similar, the only elements to do is add the change scene with an element of the scene (trigger, button, event, etc...), including auto save and auto load in the change of scene, similar to games like borderlands and its zones to change from level.

    And in my free time, I want to try the management of another character in the level which will be an humanoid AI following player's order and in any moment, the player can change the control between those two characters (2 or any number), similar to games like resident evil revelations 2, activating the AI in the other character and controlling the other through input as a regular player.

    Regards.
     
    mytecjmb, Neviah and neoshaman like this.
  9. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    Sounds good! :)
     
    sr388 likes this.
  10. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    That AI should still shot over obstacle if it has clear view, separating line of movement and line of sight is important (and technically line of action), it's equally silly for the ai to avoid an obstacle he can fire above.

    (the feet) line of movement: path the agent can take
    (the eyes) line of sight (actually a line for each sensor): what the agent can see directly
    (the hand) line of action: action the agent can take without obstruction.

    for example: tempered glass offer line of sight (can see the target) but prevent line of action (can't shoot/act through the glass), a weak wood plank can stop sight but you can still shoot through it (assuming another sensing line is activated line hearing), etc ...
     
    sr388 likes this.
  11. appfuncenter

    appfuncenter

    Joined:
    Jul 18, 2016
    Posts:
    4
    great work, i can't wait to see the cover system! hope you start working on it.
     
    sr388 likes this.
  12. westryder907

    westryder907

    Joined:
    Dec 28, 2016
    Posts:
    61
    What if the AI enemy can see, or knows the players position but can't reach the player's destination? I'm assuming things like that would be added around the time the cover system gets implemented.

    Great work!
     
    sr388 likes this.
  13. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Sorry people, the forum notifications are not working properly on me again haha.

    Thanks :)

    Yes, you are right, the AI should fire. This part was mostly to show that improvement. That kind of action for the AI will be added (it just needs a couple of checks, if the target is on sight line at certain distance, fire directly over him).

    Also, like you said, the movement and the line of sight are currently independent. The line of action will be developed in next updates too. like adding level awareness on the AI (detect corpses, take cover, avoid grenades, objects out of place, etc...).

    Thanks, glad to hear that. I haven't started to work on the cover system yet, but most of its elements are already structured on paper, so it will take little time to program it.

    Currently, if the AI can't reach a target, it won't move of position, but it will be added that if the AI sees its target but can't reach it, it will activate the attack directly (in case it has attacks at distance, like firing weapons).

    And yes, you can expect that kind of behavior for the AI on the cover system.

    @westryder907 and @neoshaman don't worry, I will add the situations that you mentioned above in the current update. It will be very quick to add and test.

    Regards.
     
  14. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    A good way to test that is to build a simpler version of yandere simulator, ie ai with routines and detection, if it can run at least 200 hundreds school students ai while the player try to kill a target and get away with it ... yeah that's basically hitman lol
     
    sr388 likes this.
  15. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi everyone.

    Between other stuff and checks, I have improved the AI, after the above elements I added the elements to manage situations like what @neoshaman and @westryder907 talked yesterday.

    So now, when the AI can't reach its target but has a clear vision of it, it will attack if it uses attacks at distance, such as fire weapons:






    And also, the AI will fire its target directly if that AI can see it even if there is an obstacle in the middle, attacking instead of moving toward the target:






    Let me know what you think.

    Hahaha, that is a quite interesting test. I will put on the todo list to make it on the update focused on the AI improvements.

    Regards.
     
  16. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    Speaking of which, once you start melee, will it have "takedown" movement?

    They are canned animation that plays when character do execution style move, they optionally have custom camera or/and potentially freeze/cancel gameplay around until the animation finish, cancelling mean enemy stop their routine to spectate the animation and return to idle in the end so that they don't interfere with the animation, they can also be hidden after the custom camera starting cut and reappear after the ending cut to not mess execution.

    Sometimes the move will teleport the action to specific spot to avoid scene collision and provide clear camera view, either through level design (move have scene elements condition), by testing against the scene collision geometry to ensure there is enough space, potentially redistributing gameobjects before or after the scene execution to avoid exit problems (see burn out's takedown).
     
    Last edited: Sep 21, 2019
    sr388 likes this.
  17. Neviah

    Neviah

    Joined:
    Dec 1, 2016
    Posts:
    235
    I see your AI loves to chase the player a lot, but does it have any other modes? For example, I would like one feature of AI to be able to choose a different destination, then fire again from that position. Then just repeat that cycle. Fires 1-3 times (random), chooses another destination within a radius we provide (say, 5), walks to that destination, then fires 1-3 times again. same cycle.

    Can you do that?
     
    sr388 likes this.
  18. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    That kind of action are planned as well. I want to take most (if not all) elements and features from most common combat systems, taking inspiration from games like dark souls, breath of the wild, sekiro, bloodborne and similar (suggestions to check out more combat systems and games are very welcome as well).

    About the takedown itself, I haven't planned exactly how will work yet, but once I start with it, I can tell more thoughts and opinions with it. And with that, more advices and feedback from you and other people for this element can be obtained and discussed :)

    Can't wait to work on this system, which will be started once the new update is complete, which will be very soon.

    @Neviah not yet, but that kind of behavior (and more) are planned to be added. There will be a dedicated update focused in the AI, to make more improvements, and more actions, options and elements for it.

    EDIT: @neoshaman there is a video (a channel better said) that studies animations and systems in videogames, one of them talking about executions in dark souls, so I think that is related to what you said, though in dark souls, executions are much simpler than what you explained. But I am not able to find that video yet xd.

    EDIT 2: here the video I said. I am not sure now if this video was already posted in this forum or not haha:



    This is the kind of things I want to study and check how other games do to work on it for the melee combat.

    Regards.
     
    Last edited: Sep 21, 2019
    neoshaman likes this.
  19. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    I was inspired to look for "takedown animation game"

    indeed people make a collection of them by game lol.
    https://www.youtube.com/results?search_query=All+Takedown+Animation

    This video have a mix of scripted takedown (happen by level design and story) vs organic (happen to any enemy at any moment).



    IT also point at something I didn't consider, qte during takedown lol, which mean there is another game to look at, heavy rain, it's only takedown lol. Which raise a question, what if there was takedown style animation outside of combat? ie basic interaction like picking up stuff in flashback or another world, which mean the system can be generalized actually to any interaction with any object (even with qte, see shenmue).


    even tuto exist

    but thinking about it and letting feature creep seeping in, why not generalize it to a mini game since that's what qte is, like in some game where we enter a close quarter boxing match, or a complex struggle lol or even a kind of rpg battle. Of course you wouldn't put the mini game in teh system, just have hooks to call it, play it like the cutscene, then exit it by replacing the surrounding optionally.
     
    sr388 likes this.
  20. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    If it should be needed, there's some free takedown animations in the UAS, here.
     
    sr388 likes this.
  21. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    I see. I will take that video list to take a look at and get ideas haha. Thanks for it.

    About the generalize way you talk, yes, I think that is mostly done in the asset, since systems like the electronic device (used to interact with objects in the level) or the change player state system (used to activate states or actions in the player, like change the camera view, enable/disable input, change movement speed, cutscenes, anything needed), it already has functions which are called in the player to pause/resume its actions, so they could be used to add this kind of minigames, like QTE or similar and activating them at any given moment.

    These systems are already used for the mission board, inventory bank, vendor system dialog, ... so they can be extended, adding new scripts to make new actions. I would like to add turn based battle system as well, since I already started to with the RPG elements, though before of that, I want to add the meele combat system, so characters can be able to use a combat system as well, making easier to trigger animations, states, use melee weapons, armor system, etc..., so it will be perfect for more strategic combats like turn based, RTS type and more (I think these kind of system are easy to achieve).

    Thanks, I have already put that asset in the todo list once I start with the melee combat and add takedown as well.

    By the way, I will work today in the addition of the character companion of the player, allowing to switch between these two (or any higher number) of characters during game, activating the AI in the rest of characters. It should be done in no time, since all elements and already present in the asset.

    Regards.
     
    neoshaman likes this.
  22. rmorph

    rmorph

    Joined:
    Apr 3, 2012
    Posts:
    87
    I am very interested in your asset and had a couple of questions:

    1. I see spaceship control on the roadmap. Do you have any idea when we might see that? Basically I would like my 3rd person character to be able to pilot a number of spaceships from very small 1 seater (arcade dogfighter with maybe cockpit view) to huge dreadnoughts (distant pan camera with extremely slow response and 6axis control).

    2. What are your thoughts for online multiplayer? I see it was on the original roadmap. Are there any toolkits that would work with it out of the box? ummorpg or something? How soon do you think we would see a proper implementation where there is a split between server and client commands? What is your confidence level that this would work well? I know a lot of multiplayer integrations work badly because there's no real optimisation or prediction.

    Thanks
     
    sr388 likes this.
  23. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi @rmorph.

    Thanks for your interest in the asset and your questions.

    1.- There will be a dedicated update focused on vehicles, to add more types, including sea boats and space ships, taking inspiration from star citizen. In those vehicles the player will be able to move inside of them, even if these vehicles are moving too. It will have also a cargo system to place any type of object, from boxes to other little vehicles.

    The space ships to add will have different scheme controls, including the one you mention, with 6 axis control, throttle control. They will also have all kind of interaction elements, like doors, elevators, security cameras, independent weapons turrets, artificial gravity (including disable it as zero gravity mode), etc...

    This update will be started after the next one (which will include the melee combat system). The current one is almost ready and the next one will be the one for the melee system. So it will be like this:
    • Update 1: current one with RPG elements
    • Update 2: melee system
    • Update 3: vehicles, space ships, star citizen elements, etc...
    All these updates will have more elements, but those are the main ones.

    2.- Online multiplayer stills on the roadmap and it will be started later this year. I want to check more info and research more about it in the meantime.

    I think there is no online solution in the asset store that will work out of the box with GKC (since I guess it will need some adaptions, no matter how general an online system is, any other asset will need some extra time to work together), but I have trust that it will work as expected once I start with ti. The current solution that I want to use is mirror.

    Let me know what you think.

    Regards.
     
    neoshaman likes this.
  24. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    online is hard ... i'm not touching that ... Timeslicing, roll back, state history, deterministic prediction, conflicy merging, redoing a github is simpler because it's not real time sensitive :eek:

    Also I hope that finally a "state transition system" editing for entering vehicle will be in that next update!

    And moving on moving stuff will be one hell, but then that's already moving platform, it's moving platform on moving platform, because a cargo ship can haz elevator. And you need to handle on and off reference frame movement, which itself need to be able to decouple all 6 axis ... and a system which has a policy for acquiring element on the fly, like people jumping from boat to land, or car jumping from land to boat, or spaceship docking into space cruiser ... good luck, I have seen unity added something like that to help rigging, I hope it's complete enough you don't have to go through that insanity ...
     
    sr388 likes this.
  25. borkbork

    borkbork

    Joined:
    Jul 5, 2014
    Posts:
    64
    Amazing how powerful GKC is and how rapidly you're developing it, kudos! Wondering if there is any plan for physical rope swinging/climbing? Or how about swimming?
     
    DrOcto and sr388 like this.
  26. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Yeah, I haven't worked never in an online system but have seen some elements on it and how it used to be managed, to sync stuff, send the variables needed, input, movement, etc...so it can have a lot of things to take into account.

    About the vehicle entering, I want to work on that as well, it is a thing of matching animation and position, though it can be tricky.

    Thanks @borkbork, very happy to hear that, I appreciate a lot that feedback :)

    About physical rope for swing and climb, it is on my todo list and probably, want to start to experiment with it during 3.0 update series. And for swim, it will be included in the next update after current upcoming one (I wanted to add it already but to avoid any delay with current one, I move it to the next update).

    Regards.
     
    MorpheusXI and DrOcto like this.
  27. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    I think the goal is just to get GKC to be "online-friendly." Having it be responsible for networking functions like rubberbanding and such would be outside its scope.

    To be online-friendly - and usable with any networking solution, like Mirror, Photon, or TNET - basically GKC needs to separate out its server code from the client code, and have the server code check for local or remote server state, so that once control is handed over to a remote server, the local server code is temporarily not run.

    And when server control is returned to the local client, once the state change occurs the local server wakes up and begins processing locally.

    AI, quests, rewards, determining hits and damage, gravity control, and stuff like that is done with server code, whether local or remote.

    Things more related to local hardware, like rendering animations, FX, audio, IK, and processing input ... these things are all client side.

    Once the client and server functions are separated, they must be connected using sync variables. These variables allow the client and server logic to communicate to each other, and can be easily synced across a network if using a remote server.

    One thing where flexibility would be good is that each type of "saving to file" needs to be designated as being either local or remote, and sometimes as the player's choice between the two. Some games will want inventory, game state, input preferences, and such always saved remotely (like fully authoritative MMOs), while games that are normally played solo and offline, but which can enable online teaming with friends, would prefer to keep their inventories, game save states, and input preferences locally. I think this can be controlled with a simple "local / remote" type flag.

    EDIT: Oh, another thing to add ... if any of the server code for GKC is currently running in Update, it shouldn't be. It should be running according to a fixed rate game clock, where NPC AI, character health regeneration stats, and things like that update predictably each tick. Network sync of the variables will also be on a fixed rate clock.
     
    Last edited: Sep 23, 2019
    sr388 and neoshaman like this.
  28. catchmani

    catchmani

    Joined:
    Feb 26, 2018
    Posts:
    40
    Hi,

    Firstly cheers for providing an amazing asset.

    Played the demo, it's too good. One request, when replaying a level, can Player and AI be spawned at different places?

    Objectives/Mission of the level will be same and yet starting point and AI will be at different places, I suppose this helps to keep the game play a little more interesting.

    Please share your thoughts, thanks!
     
    sr388 likes this.
  29. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Thanks @hopeful for the very detailed explanation. It will very useful to see this kind of elements to take into account for the implementation of the online. It is also interesting to hear about the "online-friendly" approximation.

    Would like to add more about it but seems pretty complete. I will use the meantime until the online is started to learn more about the online code, working and elements.

    Hi @catchmani.

    Thanks for your kind words about the asset, very appreciated :)

    About your question, do you mean to place them randomly on different level points or have a kind of spawn system for objects/AI?

    A spawn system for AI is planned to be added, to configure waves, random positions in any level place, etc... The spawn system will arrive soon, probably in the same update focused in the AI, which will be inside 3.0 updates series.

    If that is not what you mean, please tell me more about it.

    Regards.
     
    MorpheusXI and catchmani like this.
  30. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,676
    I'm sure that whenever you start using one of those networking solutions, the situation will become pretty clear.

    There will be variables owned by the client, which will basically represent the client's input commands to transmit to the server. And most variables will be owned by the server, showing the current position and orientation of each moveable object, the health of each damageable object, the damage dealt by each attack, etc.

    Internal clocks are another interesting subject. Most server related functions don't need to run at the highest fps, but can be run at slower rates.

    I think a game clock running at 10 ticks per second is a good granularity. I doubt any network updates - which derive from the game updates - need to be faster than this, and indeed most can be slower, like half that rate, or even less. Like, updating the player's health bar ... I doubt updating it 10x a second is needed, as most players can't see it and react to it that fast. Probably updating it 2x a second is precise enough.

    I doubt the player input clock needs to run at 10x per second. Half that is probably plenty precise. Maybe even 2x per second is fast enough.

    As for other types of clock ... I don't think an AI's perception needs to be running faster than 10x a second, and in fact that reaction time would be too fast a lot of the time. A lot of AIs not actively involved at the moment would be idling (which may involve looping animations) or full-on sleeping. Perception clock rates could also be part of how an enemy is differentiated from another one, in that dull enemies would be slow to recognize things and decide, while others would be faster. Zombies, for instance, might not even tick every second. Uhhhh. ;)

    Probably there is some sort of decision rate in the current AI, but if not, it might be something to introduce.
     
    sr388 likes this.
  31. catchmani

    catchmani

    Joined:
    Feb 26, 2018
    Posts:
    40
    Hi!

    Random spawn position for AI is good. My request is more about Player starting at different points in same level.

    Let's say, Level is a "Maze". If Player has to replay the level after Gameover, his starting position should be different than the previous one.

    Level designing is a huge task right, so if I can design only one big Level with random starting points it's always a new game to play. Hope you got my point :)

    Thanks
     
    sr388 likes this.
  32. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi everyone.

    I have been working the addition of the character companion of the player, allowing to switch between these two (or any higher number) of characters during game, activating the AI in the rest of characters. Here how it looks for now:




    Here the player changes the control between two characters in real time, setting the other as AI and adding this AI into the friend list manager, so you can give orders to it. Any number of extra companions can be configured and there is an action to change to the next characters (between all available) and in the friend list manager menu you can change the control to any specific character.

    I will make a few tweaks and maybe some kind of smooth camera transition but the system works pretty well already (all elements needed were already on the asset, just not configured out of the box).

    Very interesting indeed. Thanks for telling more information about the online. It is already making me think the needed parts, additions and modifications that will be applied for it. And yeah, those update times makes perfect sense.

    I see. Yeah, it will be very simple to add and it could be used to spawn or change an object position randomly at any given time. Will put it on the todo list.

    Regards-
     
    Wetw0rx, hopeful and catchmani like this.
  33. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    For online I would advise you to look at talk, especially gdc one, too.
    Overwatch and for honor did amazing presentation on the subject. The issues with multiplayer is mostly competitive action games.
     
    sr388 likes this.
  34. catchmani

    catchmani

    Joined:
    Feb 26, 2018
    Posts:
    40
    Yep, thanks. Will be looking forward for that. :)
     
    sr388 likes this.
  35. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,492
    I have just realize it's the exact same tech as entering in a vehicle actually! You have two thing to sync animation for, with potential exit at any point (gta, stealing a car), mini games (like struggling to remove the driver from a vehicle), cinematic camera (optionally) or seamless transition (gta).

    In fact in halo, you taking a hover bike that has an enemy is a takedown too, you get on the front of the vehicule, pummel the driver, take over if successful, exit if not. Some enemy in God of war can be "drive" once you get on top of them. Like I said it's a generic interaction system, one that focus and have influence on the scene (ie potentially freezing, masking or re arranging element before, during and after the interaction) ...
    Probably what you need is a set of pose at each state transition and animation/blending to transition. Maybe the pose itself is animated and dynamic (IK) so they can adapt to various form factor, and the transition blend seamlessly during that.

    I mostly thinking for myself, I'm planning a project right now, so I'm on overdrive.

    Which remind me also, you should try to test your demo on weak phone, think mali 400 mp (not mp2 or mp4) which has a budget of ~300 000 tris at 60fps .... The logicom one is super cheap (I'm using the L ement tab 741) being just above the 50€ mark.

    I'm trying to see how I could do an open world on that ... At 2m resolution grid I max out the visual just for terrain at sqr(300 000 / 2 for quad) x tilesize = 774m without LOD there is 83 000 theorical tri left for extra, based on theorical limit, that's 27 static characters at 3000 poly. At 400x800 the fillrate allow for 9 plain pixels overdraw, so not a lot of shader and scene complexity to have.
     
    sr388 likes this.
  36. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Yes, I have that in the see later list on youtube.

    No problem. Will be added asap on the next update ;)

    Yes, the matching animations system that will be added will be general (inside the action system), so it will include options to trigger animations and use the match target function as well, for things like that. And like you said, it will need options to make just transitions between different animations or also, blend with IK.

    Not sure but the kinematica and the improvements on unity animation system should help on this once its use is more extended.

    Yes, I have a couple of old mobile where I can make tests with GKC. Optimizations arrive in each update, including elements for mobile as well, so the demos will be also tried in these old phones too.

    Regards.
     
    neoshaman likes this.
  37. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi everyone.

    More progress in the switch of characters, with an option for a smooth transition in the camera, will also add checks to avoid move the camera through 3d meshes, making a different transition style.




    The use of powers instead of weapons has been also added to AI, so it can be used for them and for the companion characters.

    Regards.
     
    rrahim, Neviah, blacksun666 and 4 others like this.
  38. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi everyone.

    I have added a new option in the health system to configure a shield system (this option was already included, but now, it can use an extra slider on screen to show the shield state, similar to borderlands).


    it is updated when ever its value changes, so it shows its value on shield decrease or recover. For this, the health system allows to configure a custom health info panel, so you can configure the single one with only the health or include the shield if the character has a shield configured. Here an example of one with shield and one without it:




    And the same can be used on the player, even if the health and shield is shown in the hud, if you use the character companion, you can activate this health panel to show the state of those characters controlled by the AI (since in that mode, you only see the health and shield of the current character in the HUD).




    Finally, there is an option to resurrect a character/object with health when its health amount reaches 0 and stays like that for a certain amount of time. As you see in the above video, that companion gets up again after some time, instead of show the "you are dead" menu to try again, this can be used even if the game mode is just one player and no companions.


    Regards.
     
    rrahim, Neviah, ron-bohn and 3 others like this.
  39. borkbork

    borkbork

    Joined:
    Jul 5, 2014
    Posts:
    64
    Amazing all that you're accomplishing! Although I love all the features, I have some questions about stripping the system down to a simple 2.5D platfomer: 1. How can I remove the GUI (I have just muted in Unity but is there a better method)? 2. How can I re-map controls so the character can only run L / R / jump / crouch? 3. How do I set up the 2.5D camera (I have watched the preview videos but setup is not clear). Thanks, and keep up the stellar work!
     
    sr388 and iChuy like this.
  40. ron-bohn

    ron-bohn

    Joined:
    Oct 5, 2015
    Posts:
    268
    Have you looked at the demos? There are 2.5d examples covered. Remapping controls is also built into GKC and it designed in a way that you can just "turn off" what you don't need.
     
    sr388 likes this.
  41. borkbork

    borkbork

    Joined:
    Jul 5, 2014
    Posts:
    64
    Doh, I missed the 1.5D demo scene. Thanks ron, that's sorted - but I still can't figure out where to remap controls. Is that in the Input Manager component on the Player and Game Management prefab?
     
    sr388 and ron-bohn like this.
  42. ron-bohn

    ron-bohn

    Joined:
    Oct 5, 2015
    Posts:
    268
    That sounds right. I don't have it open where I am, but I think it's pretty easy to find. It's definitely part of the awesome functionality in the asset. You can assign (or disable) all the controls in the inspector. It's fairly in depth as you can adjust the controls for not just the player, but also vehicles.
     
    sr388 likes this.
  43. Mr_squiggle

    Mr_squiggle

    Joined:
    May 11, 2019
    Posts:
    34
    Hi I was wondering if there will be any 2d options for models. Like having sprites instead of 3d characters. The sprites will also continuously face the player camera similar to old doom shooter games. Here is an example
    A friend of mine is interested in working on a project with me but he isn't 3d focused. Was wondering if this is in the works in some shape or form. If not all good.
     
    Last edited: Sep 27, 2019
    sr388 likes this.
  44. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi @borkbork and thanks for your kind words, very appreciated :)

    About your doubts:

    Lile @ron-bohn said (thanks for your quicker answer), there are a few 2.5d demos where you can see its configuration. Also, recently it was added options in the player camera component to add preconfigured locked cameras to the scene with just a click button (this is the system used for 2.5d, top down, fixed camera, isometric and any other type of locked camera view you can need). Here the option:

    upload_2019-9-27_18-37-4.png

    After that, just like in the tutorial videos for the locked camera, you can configure the triggers of the camera (or start the game directly with that view active) and the camera positions and directions as well.

    1.- The HUD parts can be enabled/disabled in different places according to the element. Things like menus, are disabled directly in the component which manages (like inventory, map, player modes, objective log, etc..), these components are attached in the player controller gameObject or in its parent (Character), and these components have the option to use these menus or not in the top part of their components:

    upload_2019-9-27_18-34-40.png

    2.- The first tutorial videos of GKC also cover the input system, so you can remove or disable any new action for the player as you need.

    Here the tutorial list in case you missed it:


    And yes, it is in the input manager component in the gameObject Player and Game Management prefab.

    3.- Ops, I answered this question in the first part of this post haha.

    Let me know if you have any doubt about these answers or any element in the asset.

    There is planned to add a lot of new elements, mechanics and more in the 2.5d system and of course, any element added will be compatible in 3d mode as well (and viceversa).

    Hi @unity_yEbhN8ZbgDdgeQ.

    In fact, this is planned to be added at some point to the asset. I would say that most elements needed are already on the asset to manage spites instead of models for a kind of first person old doom style type. What would be needed to be added is a new component to manage animator states for things like the 2d enemies and the weapons as well.

    Both things are planned to be added, since the humanoid AI uses the same components as the player to work and I am going to separate the animator management of the controller itself, in order to make easier to add or configure a different animator for the player according to what you need. Once the player has that, it is already available in the humanoid AI.

    Also for weapons, animations management for first person will be added as well, for each weapon separately (same component but usable for any weapon), so that could be used as well for sprite weapons too.

    Once both elements are added, you will be able to configure 2d sprites for enemies and weapons very quickly.

    Regards.
     
    borkbork likes this.
  45. anomas

    anomas

    Joined:
    Jul 3, 2016
    Posts:
    47
    Hi i've been watching your updates for some time now and i've seen this asset grow to be one of the best. So kudos to you. One thing that kept me waiting though is that my project rely heavily on UMA, will it be supported any time soon?
     
    sr388 likes this.
  46. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Hi @anomas.

    Thanks for your interest in the asset, very glad to know it :)

    About your question, yes, UMA will be supported very soon. It was planned to arrive a couple of updates before, but due to the limit time and the way UMA works (I found the skeleton settings almost at the end haha), I had to move its addition to the next update.

    UMA full support will be added in the next update after the upcoming 3.02. In that version, melee combat, armor/cloth system and UMA integration will be added (the current update has been focused on RPG elements between other things).

    Regards.
     
    anomas likes this.
  47. anomas

    anomas

    Joined:
    Jul 3, 2016
    Posts:
    47
    Thats great to hear, you have a new customer then!
     
    sr388 likes this.
  48. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    Thanks man, very happy to hear that. I really appreciate the support.

    There will be news about UMA soon.

    Regards.
     
    anomas likes this.
  49. borkbork

    borkbork

    Joined:
    Jul 5, 2014
    Posts:
    64
    Thanks for the tips, but I'm still not sure where I change basic direction movement controls. I went through the character setup tuts again and didn't see that addressed. I tried to over-ride the Jump and Crouch keys with W and S, but this is probably incorrect (and also makes the character crouch-walk in Z, which I don't want).
     
  50. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,890
    The main basic movements are configured in the input manager component, in the player controller list element (though is just an example list, you can reconfigure this axes list at any moment):

    upload_2019-9-28_23-45-23.png

    Then in Player Input Manager (in the player controller gameobject) you can configure options for that player.

    upload_2019-9-28_23-46-44.png

    For what you said, it seems that you want to move the main movement input (WASD) to other place and use those keys.

    That is not totally configurable out of the box in the input, but you could go to the input manager of unity and change the keys used for movement for others:


    upload_2019-9-28_23-48-40.png

    So you could use WASD for other actions.

    If you don't do this and you assign actions on these WASD keys, the input will mix actions and movement, so I recommend to make the above settings or leave WASD as default movement keys.

    If you have further doubts about this, send me a PM here on the forum or to the support email, so we can see this better.

    A few days before, a new option was added and shown in the forum to show the current actions configured in the input and filter keys to show the actions assigned to those keys. This will also make easier to see if there are free keys or what actions already use a certain key. This option will be available in the upcoming update.

    Regards.
     
    Last edited: Sep 28, 2019