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. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice
  3. Join us on November 16th, 2023, between 1 pm and 9 pm CET for Ask the Experts Online on Discord and on Unity Discussions.
    Dismiss Notice
  4. Dismiss Notice

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

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.8%
  2. Armor/cloth system: stats, damage resistances, etc… & character aspect customization (fallout)

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

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

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

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

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

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

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

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

    13.0%
Multiple votes are allowed.
  1. EvilGremlin

    EvilGremlin

    Joined:
    Aug 12, 2016
    Posts:
    231
    Oh, I thought energy was for the shield that goes off when the laser hits you. My mistake there. Sorry about that.

    Good to hear. I just figured you may as well add the options to make adjustments because some characters have different proportions. It's largely cut and paste code anyway. No creating a bunch of new code since you have it on the weapons. Figuring that stuff out initial code is the hard part.
     
    sr388 likes this.
  2. Mark_01

    Mark_01

    Joined:
    Mar 31, 2016
    Posts:
    608
    Mana usually = magic, I am not sure if the energy bar is the same thing ? In other assets energy refers to a
    bust of energy like " run faster " for a short period of time, or maybe a higher jump ?

    Mana bar would be more like a health bar... I would think, would be most peoples idea
     
  3. EvilGremlin

    EvilGremlin

    Joined:
    Aug 12, 2016
    Posts:
    231
    Any energy pool is the same thing in game terms, what it is called isn't that important. It was my misunderstanding though. I thought energy was just for the shield.
     
  4. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Yeah, it is also used for it and for most elements of the powers elements as the enery to use.

    Of course, once the logic is made, it can be applied to any other similar element, in this case, from weapons to powers. The most important thing is to avoid to repeat code when it is possible, making the functions and systems as general as possible, so when a change or improvement is made, it is applied for everything. Though there are always situations that can't avoid this, but I try to minimize this as much as possible.

    Also, not everything can be predicted, so it is possible that an element not taken into account or not added before needs a part of the code to be modified to include it. Or could happen that the first solution made or found for an element is not the best. But it is the good part of updates and new versions, previous elements can be improved, code can be simplified or make it more general, etc...

    Yeah, maybe the word energy is not the best definition. Another could be used, like charge, vigor, current,.... even mana, according to the type of game.

    I want to add an stamina bar too, which would be used for every action of the player according to the configuration, like run, jump, grab objects and move them, climb surfaces (in the udpate where it is added), use melee weapons, melee combat (when it is included), etc... every action could be configure to use or not stamina and the use rate.

    It could be done similar to breath of the wild, with a round icon on the screen which is depleted according to the remaining stamina. That icon would be only shown when the player is using it, to avoid more elements on the hud, though an option could allow to show it as a permanent bar on the hud too.

    Regards.
     
    Mark_01, neodotca and EvilGremlin like this.
  5. EvilGremlin

    EvilGremlin

    Joined:
    Aug 12, 2016
    Posts:
    231
    @sr388

    Calling it energy is perfect. I didn't mean to say there was anything wrong with it. It was just my misunderstanding. I thought it meant shield energy, like in Halo or something. It's not important enough to bother changing it. It was just my mistake.
     
    hopeful and sr388 like this.
  6. tgamorris76

    tgamorris76

    Joined:
    Apr 24, 2013
    Posts:
    292
    Hi sr388, was thinking about the AI and someone mentioned something similar earlier, but working on small conquest play about as a side project also using GKC and wondered about a way to create spawn groups with say a designated leader. So when you the player walks up to him you take command of a unit but give orders to one character that registers on your Friends list... so for example you have four names on the list but each is a squad leader with 4 men.

    Going to try and see if i can get it to work with Emerald AI enemies and friend NPC's following GKC NPC's.
     
    Mark_01 likes this.
  7. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    That could be done (give orders to the commander of every little group) with the range option for the AI from above posts.

    That way, every AI will have a range and the player friends manager could have an option to configure if he has found a regular soldier or a higher range character, so the player will give orders him and he will give orders to the regular soldier of his squad.

    The commander will be just as the other characters of the squad, but he would have access to the component which manages the group of AI, so he would know what is happening in the level and assign orders to the squad according to that.

    There could be options to for example, if the commander dies, the highest range of the squad becommes the new commander.

    I couldn't tell you much more, due to I haven't thought the best way to make the AI manager to recognize the current situation in the scene (how many targets are, their positions, what are they doing, if they are hidden or not, if he is armed or not, etc.....) along with system to check the objects in the scene (check corpses, detect grenades to run away from them, dangerous enviroments, etc....

    First, you will need to add the range system for the AI, and then in friend list manager, the code to configure that the player only give orders for the highest range characters found.

    Then, the code in the range system to make that AI to give orders to his squad. Finally, you would need the AI manager to store every squad and his leader and give orders to them according to the situation.

    As soon as I start this AI system, I will tell more about how it works.

    Regards.
     
    tgamorris76 and Mark_01 like this.
  8. sr388

    sr388

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

    Quick progress update.

    I have added option in character’s ragdolls and health managers to receive damage on collisions when the ragdoll is active but the character is not dead yet.

    This allows to configure min velocity of the impact to receive damage, damage multipier from the damage that will be applied to the character multiply by the impact velocity, min time to receive damage again from another impact (to avoid that the same collision apply damage to every collider in the ragdoll, so it is just applied once at a time).

    Like this, a character who falls from a very high place but is not dead will receive damage when he falls on the ground again and very probably, he will die (according to the velocity of the impact).

    Except in the gif of the middle, in the others, the AI character dies when he hits the ground.
    ragdoll impact.gif

    ragdoll impact2.gif

    ragdoll impact3.gif

    Also, there is a new option on vehicles camera to set camera rotation to zero, so the camera rotation is fixed. Like this you can configure for example, a top down view similar to gta games.

    top down vehicles2.gif

    Along with this, there is an option on vehicle weapons to allow to rotate the weapons turret towards the position of the hud cursor when the camera on vehicle is not used. So in a similar way to aim with weapons on the locked camera, the mouse input moves the cursor of the weapon, setting that as the position and direction to shoot.

    Like this and a fixed camera position, like top down view, the weapon can aim very accurately to any target and position, so you can configure a top down vehicle too for a type of game or a specific moment (or just allow the option to have this view), which like the rest of camera views, it can be changed ingame or configured as the only to use in the inspector (maybe the gif below is not too much clear, you can see how the scorchs are placed where you shoot at the wall).

    top down vehicles4.gif

    Regards.
     
    Last edited: Aug 8, 2018
    hopeful, Mark_01, ron-bohn and 5 others like this.
  9. tgamorris76

    tgamorris76

    Joined:
    Apr 24, 2013
    Posts:
    292
    Any ETA on 2.4d?
     
  10. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Before the end of the month. The update is reaching almost three months since the last one and I don't like that. I want to minimize these times to 1-2 months as maximum. There are some elements yet to finish, but everything is going pretty good so far

    But you can be sure the wait will worth it, probably the second biggest update on the asset yet. Also, you can expect the video of the possession system this week (it is funny because the system was made some time ago but I haven't found the time to show it xd).

    Regards.
     
    neodotca, danreid70, Mark_01 and 5 others like this.
  11. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,627
    If it's not much trouble, could we have a checkbox on this where falls will only cause damage down to the last hit point? (Or maybe a editor defined number.) That's because it would be silly for a player to jump a distance and get down to like 2 hp, and then drop down another 4 feet or something and then die. That kind of thing.

    I played a game once where they had instituted this type of protection, but then the game would also give you damage if you were sliding on a slope. So if you fell onto a slope, you'd go down to 1 hp, but then sliding 10 ft down the sand would kill you. ;)
     
    tgamorris76 and sr388 like this.
  12. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    I am not sure if you mean damage from any fall while you playing (or any other humanoid characters) moves nd is controllable by input. But the above damage of the gif is only applied on ragdoll mode.

    There is another option to apply damage to a character from long falls, but while he is in regular mode (while you control it), setting the amount of time from the last time when he was on the ground.

    These new options are only for ragdoll state. Like in the last gif, the player grabs a box and launch it against an enemy. The damage received is 21 and the health of that character has enabled the option to activate the ragdoll if the damage received at once is higher than 20.

    Than activates the ragdoll, and with it, it applies velocity towards the same direction of the impact (from the box). This makes the ragdoll to fall to the ground and that impact is the one that applies damage again, taking the remaining 79 units of life (from a default value of 100). That damage is only applied on ragdoll state.

    The system has options to configure the min amount of time between collisions, the min speed of the collision to apply damage (it he impact speed is lower than x, the character won't be hurt) and also, apply damage only once for collision (the ragdoll has many colliders and every collider has a damage receiver, so on impact, most of this colliders impact on the surface. The system checks that to avoid to apply damage on every receiver, so it is only applied once instead. This could be tested with the character falling from a big mountain or inclined surface). This avoids to have inmortal ragdolls when they fall from a big height or they are beaten by a vehicle for example.

    This is similar to breath of the wild. If link receives damage and enters in ragdoll mode, if the keeps falling, he keeps receiving damage every x time from a big collision until his velocity reaches a lower value and he can get up (if case he stills alive).

    Animation3.gif

    Is this the option and checkingss that you were talking? In other case, please tell me more about it (it is possible that I just didn't explain the system properly).

    Regards.
     
  13. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,627
    I may not be grasping everything you are saying. But whether it is ragdoll or not, I would think in some games it is not always desirable for the player to die from a fall, and maybe when leading a hostage or other NPC you might want to have the impediment of losing health, and perhaps having to pause to regain it through regeneration, but maybe not have actual death from falls.

    Of course, the game developer can choose to not use the code you are providing or change it, so it's not that big of a deal. But I think wanting to avoid death from falling might be common enough to put a checkbox in, so that in some situations controlled by the game designer, you can indeed have immortal ragdolls when desired. They may just be slow to get up.

    When you have NPC enemy death from ragdoll, it is fun - wait, I mean it is strategic - to push NPCs off of high ledges ... and even more fun (strategic) if you can punch or kick them off the ledge with a lot of knockback. ;)
     
    sr388 likes this.
  14. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Of course, every option added can be used or not, they all have checkboxes to enable or disabled them, and this damage on ragdoll collision has it as well, along with the damage from long falls in regular mode. Sorry if this wasn't clear.

    One of the main objectives of this asset is customization via inspectors (though you can access to the code too), so you can be sure that every new system, feature and option added can be used or not according to the developer needs, by just setting to true or false its checkbox field.

    Regards.
     
    tgamorris76 and neodotca like this.
  15. tgamorris76

    tgamorris76

    Joined:
    Apr 24, 2013
    Posts:
    292
    Hi sr388, just curious if there is a way to use mesh colliders on aitcraft without making them kinematic/convex
     
  16. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    The convex option in mesh collider is something that I still don't have totally clear. It is something related to unity, as sometimes it shows a message to set the convex option in a certain collider and sometimes don't (it is not related to GKC itself).

    Maybe it could be something about the shape of the mesh. Does anyone know more about this?

    Other solution could be to use primitive colliders, like boxes, placing them into the proper positions to make the shape that you need.

    Regards.
     
    tgamorris76 likes this.
  17. tgamorris76

    tgamorris76

    Joined:
    Apr 24, 2013
    Posts:
    292
    I already use the primitive colliders, but would have so loved to use mesh collider cos it wraps itself to the shape of the mesh. when marked as kinematic/convex it streches itself across the model like a shrink wrap. A pity really :) box colliders can be a bit of a chore if your models aren't boxy.
     
  18. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Yeah, it is not the same to have to use box colliders instead of mesh collider. I will check more info about this to see if there is some way to use them properly.

    Btw, I have been working on improve the first person movement when the option to use animator on that view is disabled, with options to configure walk, run, strafe and crouch speeds and same for these backward values.

    Also, for weapons, there are options to configure the player movement speed when he is carrying and aiming that weapon, so for example, carrying that weapon make him slower or faster and when he is aiming, the speed can be modified too, to move slower on that state (these new speed values are multipliers, to avoid to have a lot of speeds values in every weapon). Also there are options to configure if the player can run or not while he is carrying and aiming.

    Finally I am finishing a modification on the map system to allow to make "buildings" or new map zones, instead of the current system which only has one "building" to configure.

    This allows to configure different map zones in the same level, for example a small city where the map window shows that city and if the player enters into a building, the map will change to show the floors of that building having different maps for interior and exterrior.

    Regards.
     
  19. tgamorris76

    tgamorris76

    Joined:
    Apr 24, 2013
    Posts:
    292
    Love the love your giving the Map system, game i'm working on is kinda open world so would be invaluable. Quick question, will you be doing a isometric point and click interface like with rpg games baldurs gate or neverwinter nights? I ask cos you have added 2.5d and a lot of the roadmap would be usefull for a rpg type game.
     
    sr388 likes this.
  20. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Thanks, I really like the map system and due to the way its code is made, it is easy to add new options and elements to use. Also, this new option to being able to set different buildings and open zones is always very useful.

    About the isometric point and click, of course, in fact, for update 2.4d, there is already added a point & click system, to being able to control the player like that, even allowing to use all the elements in the asset, like weapons, devices, etc...., so if you press one of the elements to interact, the player, using navmesh, will move to that the element position and once the element is inside the interaction range, it will be activated.

    So it would be easy to setup an isometric view (just adjusting the position and rotation of the locked camera following him), for this type of control (or even for the top down view, which could use the same player control but with the camera facing any direction) and adding some other controls to that type of view.

    In fact, along with the new play modes added in 2.4d (point & click, top down, 2.5d and semifree 2.5d), a control scheme for rpg diablo style will be added too, with free camera movements and actions using the mouse, so you can move throught the map like you need while the player stills in his position. Along with this, a strategic control style will be added, to manage troops, with option to select different groups amoung them to give them different orders, like move there, wait here, attack to those targets, etc...

    Though, both diablo and strategic controls will be added in another update, to finish and add other elements first. But more and more control styles will keep coming, until most of styles (at least the most used and known first) are included.

    Btw, the new map system is almost ready, so it will be show in a video soon.

    Regards.
     
    jeffro02, neodotca, danreid70 and 2 others like this.
  21. AlexanderElert

    AlexanderElert

    Joined:
    May 31, 2017
    Posts:
    37
    Santi, I have a question about the axis list of the controller:
    If I want to change the name of an action for example the "Inventory" change it to "Menu" the action stops working, if I put the name of "Inventory" it works again, what and how should I modify this to work correctly?
    Input Manager -> Input List -> "Name" field
    name.jpg
    Regards.
     
  22. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Hi @AlexanderElert.

    Sorry for the time to reply (I have weird schedules and was sleeping), I saw your PM and was going to answer to you right now, but I have just seen your question in the forum, so I will answer here.

    This is due to the script which uses that action, in this case the inventory manager, is searching for input from an action string called "Inventory", so if you change the name of the action or remove it or add a new one, you will need to change the string used in that script.

    It works like this, you have an action called "Inventory", and then in the script you have this code to check if the action is called:

    if (input.checkInputButton ("Inventory", inputManager.buttonType.getKeyDown)) {
    openOrCloseInventory (!inventoryOpened);
    }

    The second parameter is used to know if the action is called only on press key down, up or while it is being held.

    This is done like this to being more flexible and customizable if you works with new scripts or if you modify them (you can find more info about this on the doc). But I want to improve this system, so these actions checks in the scripts can be customized from the inspector, without need to modify code if you change any action name, by using a class which will trigger any event you need (like call the function to open inventory, open map, aim a weapon, use a device, etc....).

    Along with this, a multiple list of axes will be added to the input manager (currently there is only one list of axes), so you can configure separated axes list for different controls in the game, like regular movements, use of weapons, powers, devices, vehicles, menus, etc....

    With these two elements (and a couple more which come together), the input manager will be a lot more powerful and configurable, for anyone who prefer use only inspectors or coding as well. This will be added for update 2.4e.

    Regards.
     
    Last edited: Aug 12, 2018
  23. neodotca

    neodotca

    Joined:
    Feb 20, 2016
    Posts:
    121
    You can try a small demo of my game made with GKC, let me know your feedback, thanks!

    METATRON CUBE demo >> https://neoca6.wixsite.com/neoca/game
    (for now only available for Windows PC).
     
    sr388, tgamorris76 and AlexanderElert like this.
  24. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Cool, thanks for posting it. I will give a try and tell you about it.

    Regards.
     
    neodotca likes this.
  25. sr388

    sr388

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

    Quick update progress.

    The new map system is almost finished, mostly polish some elements. I have been adding more map zones to the mansion demo, to include more zones from resident evil to show an example of how the new systems works and looks.

    There are two new arrows in the map menu to change between map zones, so you can see every builing/zone in the level and every floor inside everyone of these zones. Along with it, a text shows the current name of the map zone and the floor inside of it.

    Here a sneak peak of the map (there are icons to add yet):

    mapa mejorado1.gif
    I have also added a map cursor to be shown in the center of the map and any icon below that cursor (with a maximum distance from it), will show information about that icon in the map window (this cursor has an option to show it or not and to show info from the icon below or not).

    mapa mejorado2.gif
    Regards.

     
  26. AlexanderElert

    AlexanderElert

    Joined:
    May 31, 2017
    Posts:
    37

    Totally love it
     
    Mark_01, danreid70 and sr388 like this.
  27. sr388

    sr388

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

    Quick progress update.

    The modification on the map system to allow to configure buildings/map zones and all the elements related to it are already finished.

    Now, I am adding the noise detection system , to allow that any object could trigger the function to alert enemies (or any faction group enemy of the noise owner), like foot steps, shoots (if the weapon is not using a suppressor), projectile impacts, throw stones or any other object, etc.... with a radius of action.

    The reason to add this system now is because it contains elements used on the map, in this case, the classic expanding circles.

    Along with this, there will be field of view meshes for enemies in the minimap too.

    Along with the noise detection, I have improved the footstep system to allow to configure differnet states according to the player movement, so if he is walking, running, crouching, landing from air or jump, etc....every state has a configurable foot step volume, noise detection options, like range and the expand velocity of the circle on the map, etc....

    Here some WIP:

    enemy range.gif

    enemy range2.gif

    In the below gifs, notice the minimap circles, with a size according to the noise amount.
    noise system5.gif

    noise system6.gif

    noise system3.gif


    It should take 1-2 days more to finish it.

    Regards.
     
  28. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,627
    "Yer a wizard, Harry!" :)

    Is this something that can be used for all sound emitting objects, like a thrown grenade?
     
    sr388 likes this.
  29. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Indeed.

    Yeah, basically, anything that can collide or explode or impact (projectiles, steps, vehicles, drag rigidbodies on the ground, etc....even elements in the level, like doors) will have an option to configure these visible circles on the map and alert to any AI inside a radius. Both will be able to be used and the same time, none or only one enabled, for example, footsteps while crouching can show circles on the map, but not alert to any enemy.

    Regards.
     
    EvilGremlin, Mark_01 and hopeful like this.
  30. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,469
    It's off topic but I think you might be interested:
    I think we can add a exp() somewhere to give the curve more personality. Parts aren't "parented", but they are "anchored" by copying the position only. The movement is entirely made by offset, amplitude and phases shift.

    I'm also looking to make basic two bones (trigonometric) IK directly on GPU for mobile open gl 2.0, not sure if I will succeed, but it will be a fun experiment. Both would only work with single weight per vertex though. This will open entire complex animation run on gpu only, totally procedural.
     
    EvilGremlin, hopeful and sr388 like this.
  31. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Mmmm that looks nice. Could be it used for example to make elements like robotic arms made out just transforms to use a custom IK? And for humanoid models? What configuration would need to make other kind of movements, lets say, throw a grenade?

    It reminds me to this person who is working on a procedural system for animations mostly for monsters and bosses (twitter links can be pasted on this forum, right?):

    https://twitter.com/Makan_Gilani/status/1026856084328177666

    It looks amazing, and he explained a little how the system works (I would like some more detailed explanations, because, even though I understand the logic, I wouldn't know how to start with that kind of system xd):

    https://80.lv/articles/animating-beasts-using-the-procedural-way-in-unity/

    Regards.
     
    EvilGremlin and neodotca like this.
  32. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Btw, I have added an option in the head track system to follow the camera rotation with separated rotation ranges from regular head track targets.

    Also, if the player is looking to a head track target, he ignores the camera rotation to focus on the current target, of course, with smooth transitions between looking at the camera direction and the target. This allows to give a better aspect to the movements.

    head track improved3.gif

    head track improved4.gif

    head track improved7.gif
    It is possible that I will add another option for this update to make the player look always at the camera direction (his full body), so you can use that kind of control if you prefer.

    Regards
     
  33. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,469
    I'm a bit confuse at the first part lol! I mentioned IK but also told it's a simple one, it only works with two bones. Basically imagine:
    - a hip-knee-feet IK,
    - [hip to knee] and [knee to feet] segment must be the same size.
    - Then you have a triangle where only the base of the triangle is variable (knee-feet), that is the distance of the starting and end of the small IK chain
    - in order to find where is the position of the knee, you separate the hip-knee-feet triangle by a median that goes through knee and is perpendicular to the base
    - so if we simplify and let the base be vertical (as in most game with a character) we know the knee is on the horizontal axis
    - it's a simple matter to find the size of the median over the height of the base, which is basic trigonometry, when the base increase the median decrease, and vice versa, with median = 0 when both segment are fully extended (base = segment hip knee + knee feet, ie segment *2 since they are the same size, and are colinear), and base = 0 and median = segment (fully retracted).

    Once we have the position of every joints, we can infer the rotation, and thus the vertices positions.
    Given that a simplified human and quadruped meshes barely need more than 2 joints to work (and feet in game only move up and down vertically) it's enough if we exclude complex spine movement, wrist, finger and ankle (or more likely to restart the chain at their level, hasn't tested yet).
    For any movement, it's generally a matter of moving a single point, aka the target, which is easy to do (that's what you just did with look at).

    The walking motion I did was simply using a single sin() (ie it's simply rocking back and forth and different phase) operation, and just move around parameter, often complex movement is just a composition of simple movement, if you can bog down the complexity to the primitive, you get a lot of power and reproducing them become simple.

    I mean this is the entire source code of the walking pcg:
    Code (CSharp):
    1. public GameObject anchored;
    2.    
    3.     // Update is called once per frame
    4.     void Update () {
    5.         this.transform.position = anchored.transform.position;
    6.     }
    7. //----------------------------------------------------------
    8. Transform go;
    9.     float move = 0;
    10.     public float
    11.         amplitudeX = 10,
    12.         amplitudeY = 10,
    13.         amplitudeZ = 10,
    14.         speedX = 0,
    15.         speedY = 0,
    16.         speedZ = 0,
    17.         offsetX = 0,
    18.         offsetY = 0,
    19.         offsetZ = 0;
    20.    
    21.     void Start () {
    22.         go = this.gameObject.transform;
    23.     }
    24.    
    25.     // Update is called once per frame
    26.     void Update () {
    27.         move += Time.deltaTime;// Mathf.Deg2Rad * Mathf.Lerp(0, 360, Time.deltaTime);
    28.         go.position = new Vector3(
    29.             Mathf.Sin(offsetX*Mathf.PI + move*speedX)*amplitudeX,
    30.             Mathf.Sin(offsetY*Mathf.PI + move*speedY)*amplitudeY,
    31.             Mathf.Sin(offsetZ*Mathf.PI + move*speedZ)*amplitudeZ);
    32.         //go.Rotate(new Vector3(0,0,amplitude)*Time.deltaTime, Space.Self);
    33.     }
    34. //---------------------------------------------------------------------------
    35.  
    36. void Update () {
    37.         move += Time.deltaTime;// Mathf.Deg2Rad * Mathf.Lerp(0, 360, Time.deltaTime);
    38.         go.eulerAngles = new Vector3(
    39.             angleOffsetX + Mathf.Sin(offsetX*Mathf.PI + move*speedX)*amplitudeX,
    40.             angleOffsetY + Mathf.Sin(offsetY*Mathf.PI + move*speedY)*amplitudeY,
    41.             angleOffsetZ + Mathf.Sin(offsetZ*Mathf.PI + move*speedZ)*amplitudeZ);
    42.         //go.Rotate(new Vector3(0,0,amplitude)*Time.deltaTime, Space.Self);
    43.     }
    44. //--------------------------------------------------------
    45.  
    46.  
    There is no magic really
     
    EvilGremlin, sr388 and Mark_01 like this.
  34. neodotca

    neodotca

    Joined:
    Feb 20, 2016
    Posts:
    121
    It's impressive, he should put that system in the asset store.
     
    EvilGremlin likes this.
  35. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Oh, I see. It is a interesting solution. I asked to know the possibilites of your system and the options that could achieve.

    By his interview, maybe he has planned that or maybe use it for a game. Time will say.

    Regards.
     
    EvilGremlin likes this.
  36. hopeful

    hopeful

    Joined:
    Nov 20, 2013
    Posts:
    5,627
    It helps that he's very imaginative. :)
     
    neodotca likes this.
  37. sr388

    sr388

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

    Progress update (there has been a lot this weekend).

    There is a new option in the gravity system to start the game with a modified gravity direction, using a normal value, of the current player’s rotation directly, with option to check the surface below to adjust the gravity in that direction.

    On the use inventory object system (the component to configure what inventory objects needs to be used on another object to trigger an event) there is an option to show the name of the object to use and the amount needed in every different object where use inventory objects.

    Also, the code to solve an use inventory object component (call the event when all the necessary objects are used) is now separated in a function, so this allows to call this function directly from another event. For example, a simple padlock in a door with a health component and an use inventory object component could be opened by using a key, or by damaging the padlock which will call the death event (in this case, this event will call the solve function of the inventory object and trigger the next event).

    linked map object information8.gif

    Finally, I have been finishing the last improvements in the map system.

    For example, the visible field of view mesh to AI on the map window has options to use raycast to cut that its mesh in the places where finds a surface. Also, it has options to change its color according to if the enemy detects a target to attack (like red) or none targets are detected (like white). This is made by events.

    Also, working on these field of views to make them visible in the map, I realized that it was neccessary to hide them if the enemy who uses it is not in the current floor which shows the map system, but these fields are not in the map window, but in the 3d world.

    So for this, I have added a new option on map object information (the component used to assign a building and a floor to an object to set an icon on the map window to follow that object) to link its information with the icon which follows it on the map system, so both elements can share and update their states according to the situation, so for example, the icons on the map can change the building and floor where they are shown.

    This means that for example, if an enemy follows the player inside a building, the icon of that enemy on the map will change from the outside map to the inside map, including any floor inside, allowing to the player to know his position in every moment. The change of floors and buildings for these dynamic objects only needs triggers which are managed/configured on the map creator inspector.

    Along with this, a new option has been added on map object information component to call an event when the object associated to that map object changes to a different floor or building, with options to call separated events when its floor and building are the same show in the player’s map. This allows for example to show or hide the AI field of view mesh if they are in the current floor and building than the player, or disable in the other case.

    Here the enemy enters inside the mansion, changing his map icon to that map zone and the same floor that the player.
    linked map object information1.gif

    And here the exits.
    linked map object information3.gif

    Here you can see how the icon of the enemy moves from one building to another and different floors in the mansion. Also, his field of view is disabled according to if the map is looking at the same floor where that enemy is.
    linked map object information4.gif

    Notice how changing the floor and building in the map, enable and disable the enemy field of view mesh, using events.
    linked map object information9.gif

    This was much easier than I thought (I had planned to add it on the next update), and it took just a couple of hours to have it ready.

    Once I finish the noise system (only need to add it to collision on rigidbodies thrown by the player), I will make a quick video showing the whole new map system.

    I need some sleep xd.

    Regards.
     
  38. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Greetings.

    Another update progress, this time quicker.

    I have added an option to use the zero gravity control mode, similar to an astronaut, or to dead space 2 (I have taken most of inpiration from this game), in any view and any moment in the game.

    This allows to move freely in the scene, making the player to face the camera direction which on this mode, can rotate freely without loosing the local direction, so the camera movement is very intuitive on this mode. Of course, this mode doesn't affect the physics gravity on the scene, so you can leave it with its value or modified as you need.

    zero gravity mode3.gif

    zero gravity mode4.gif

    zero gravity mode5.gif

    While the player walks on the ground (or any other surface), he is adhered to that surface. If he player jumps, then he can start move freely in the air.

    The zero gravity mode can be enabled/disable by triggers, with the system that was added to set any state of the player, like make him to change from view, draw a weapon, lock his movement, etc.... so you can use this trigger to move from regular gravity zones to vaccum for example (there will be more systems to allow to create more types of scenearios like spatial stations, making objects to float or to activate its gravity according to the level part where they are).

    On this mode, you can reset the player's rotation and also, adhere to any surface in front of the player if he is close enough to it This surface adjustment can be also achieve just by getting close enough to the surface (all of this can be very customized in the inspector).

    Maybe the distance to the surface was to high here (the value here is 10)
    zero gravity mode6.gif

    And finally, on this zero gravity mode, the player is able to draw and use his weapons and powers as well and can aim as well.

    The best part is that has barely needed to add some modifications, some to the gravity system and others to the player controller components and is a control that I have always wanted to add to this asset.

    zero gravity mode8.gif

    Regards.
     
  39. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    And here a couple more of gifs (the limit by post is 5 files).

    zero gravity mode9.gif

    zero gravity mode10.gif
    Regards.
     
    EvilGremlin, neodotca and danreid70 like this.
  40. tgamorris76

    tgamorris76

    Joined:
    Apr 24, 2013
    Posts:
    292
    Been looking forward to this, this will expand the gameplay in my game by quite a bit. Kudo's sr388
     
    sr388 likes this.
  41. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,013
    Looks promising, but I had a lot of problems with it.

    When I tried to run in full screen mode it just went to a full screen black screen and locked my entire computer. The game never started and I couldn't alt-tab out of it or ctrl-alt-del, or F4 or anything. I had to do a hard reboot. So I ran in Windowed mode. But the cursor sometimes refused to remain locked so the cursor would drift outside the window and make it hard to play the game.

    I was able to switch to the bigger gun in the lobby area, but when I went to area 1 it refused to let me use anything but the pistol. However, once in area 2 it let me switch.

    In the second area I found a vehicle to drive, but when I ran into a wall I was stuck and couldn't drive in reverse. Nor could I find a way to exit the vehicle.

    Overall it looks interesting, but there was no sense of direction or goal. I quickly began to get bored because I didn't have any idea what I was supposed to be doing. There needs to be some well-defined goals so that I can feel a sense of accomplishment as I achieve each goal.

    It was also ambiguous why some robots wanted to kill me and others didn't. The strange female robot who called me a perve was also completely unnecessary.

    I liked the music and the overall look was quite nice. It could be a really good game with further development and polishing.
     
    neodotca likes this.
  42. neodotca

    neodotca

    Joined:
    Feb 20, 2016
    Posts:
    121
    First of all, thanks so much for trying it, means a lot to me.

    About the full screen mode, alt-tab, ctrl-alt-del is working for me, but not F4. Really sorry about the hard reboot. I tested my demo many times (including this morning) and it never froze, in full screen or not. If other people can try the demo, i will be able to learn more about this problem.

    Not being able to use the second weapon in the first level is intentional, because there is only one enemy in that level.

    Vehicles are working fine for me, is reverse not working at all or just when stuck in the wall?, that particular wall could be a bug, if you can tell where it is. BTW, you can drive the futuristic F1 and the motorbike.

    About direction or goal, in the lobby, there's a panel on the wall and in the pause menu > control button, you can read "touch the droid for help" that little droid will give you the info to know what to do. I will make that more clear. For every level, it's the same, you have to find the little yellow key card to go to the next level.

    About the characters in downtown city, the game is for adult and there will be some pretty weird, funny and nasty comment coming from them. That female android think you are a perv because she think that you want sexual services from a robot while you are human, not everybody will find that funny lol!

    Thank you magique for your feedback, very useful for me. I really need to know more about that full screen mode issue, so i beg other people on this forum to try the demo. It's not only important for me, but also for the asset, it's not because it's working in the editor that it will work fine when exported.
     
  43. magique

    magique

    Joined:
    May 2, 2014
    Posts:
    4,013
    It was the F1 and I basically just drove straight forward and ran into the wall at the end of the street.

    Yeah, I saw that, but I couldn't figure out how to touch the droid. It just kept moving away from me.

    Yeah, so to me adult content is mature and this sort of thing is grossly immature. I'm one of the few that believes what culture considers "mature" is the exact opposite.

    I get that you want this kind of content and that's sad, but it still doesn't make sense. I simply stood next to the robot and it accused me. Kind of strange considering there was no interaction of any kind.
     
    neodotca likes this.
  44. neodotca

    neodotca

    Joined:
    Feb 20, 2016
    Posts:
    121
    Thanks for the info on the F1 and about the small droid, yes you have to run fast on him or squeeze him in a corner, i will fix that by increasing the collider radius, i might use the GKC A.I friend at some point.
     
  45. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Thanks men, I will finish the system today (adding the rest of elements and some polish here and there), but with this, one more mechanic from dead space added in the done list haha (or from star citizen if you prefer).

    I have also planned to add more mechanics (the demo video from doom eternal has some pretty good ideas and the gamescom trailers are an excellent source too), including more related to space, and others, like the grappling hook, but this will be made for the next update, the current one needs to finish all the remaning stuff first. One of the reasons to add others elements, like the zero gravity mode, was due to I had very clear how to do them in a short amount of time, avoiding any delay.

    @neodotca, I have already tried the demo of your game.

    The level is nice put together. The background of the game seems interesting (including the dead woman in the bed or your appartment, maybe?).

    But yeah, at some point in the city level, I didn't know what to do exactly, I saw the blocked door, so I deduced that another key was necessary, but I didn't found in that level. One thing that could be done is that if the player doesn't reach the objective in x time, have an option to enable his objective, showing it in the screen (but some players find that help too much), so the key is to find balance.

    Happened the same with the little droid, he seems to run away.

    More works is needed, but it is a good start, setting the bases for the game itself. The sound effects are also nice.

    A funny thing is that the armored vehicle moves with the input but can't be driving, I suppose that vehicle is reading directly the input of unity using its own vehicle script maybe?.

    A good thing is that the first person movement has been improved for the version 2.4e, being much more responsive and not use the animator movement on that view, having a physics based control instead, but very precise. This and the new movement for the weapons will improve the movement feeling in the game.

    Regards.
     
    neodotca and danreid70 like this.
  46. sr388

    sr388

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

    Here a video for the zero gravity/astronaut mode. There are already triggers to change between regular and zero gravity mode, to simulate the interior and exterior of a spatial ship or station.



    Regards.
     
  47. EvilGremlin

    EvilGremlin

    Joined:
    Aug 12, 2016
    Posts:
    231
    @sr388

    Damn, do you ever sleep?
     
    eaque, Mark_01, sr388 and 1 other person like this.
  48. sr388

    sr388

    Joined:
    Jul 22, 2014
    Posts:
    2,815
    Sleep is for the weak, but don't worry, my mental health is perfect, I can already smell the colors .....

    The last weeks I have been working practically every day (I have been very inspired to code, something I like to exploit), plus it is summer now on my country and I just can sleep for a while (or barely nothing) until I melt on the bed and get up, so yeah, I am used to not sleep too much (maybe some day I sleep more hours in a row to recover sleep time).

    I prefer fall and winter and even work better with them.

    Regards.
     
    neodotca, Zebbi, jeffro02 and 6 others like this.
  49. Zebbi

    Zebbi

    Joined:
    Jan 17, 2017
    Posts:
    521
    Curious, will this next big update include character controller (non-physics) versions of 1st/3rd person movements? (Also hoping for the weapon sway curves! :D)
     
    neodotca and sr388 like this.
  50. AlexanderElert

    AlexanderElert

    Joined:
    May 31, 2017
    Posts:
    37
    Same here :rolleyes:
     
    sr388 likes this.