Commit Graph

154 Commits

Author SHA1 Message Date
Francois Belair 4885707145 Improved how the AI looks in Pursue VS Seek demo
They were looking kind of floaty, moving not like spaceships but like
they were on ice. Now they travel along their orientation, towards
where the player is/will be.
2020-01-29 10:04:47 -05:00
Francois Belair 9c87dcf7f0 Fix unknown mangling issue from previous commit
For some reason, github's merge destroyed a lot of newlines, which
broke GSTPath.
2020-01-29 09:26:20 -05:00
Francois Belair 62ad172767 Move class docstring to top of class
For documentation purposes, current tools expect it there.
2020-01-28 23:56:10 -05:00
Nathan Lovato 6276fc0413 Update code reference
Proof and edit docstrings in all the base types and proximity types
Remove docstring for the _init builtin callback
2020-01-27 17:31:10 -06:00
Francois Belair 2d8bdaebd7 Add documentation strings to behaviors 2020-01-27 13:24:05 -05:00
Francois Belair 5f6dd15c0e Add documentation strings for base types 2020-01-27 12:57:51 -05:00
Francois Belair e95e3bf386
Quick start and reference guides (#7)
Add quickstart guide and quickstart demo

Authored by Razoric and edited by Nathan and Johnny.
The purpose of the guide is simply to give an overview of what the
behaviors are there for, and a quick look at how to actually make use
of them in the basis of this toolkit, with some explanatory comments.
The actual user's manual will be built out of the API reference.
2020-01-27 11:39:06 -05:00
Francois Belair 8228694713 Refactor var names for consistency aka min/max 2020-01-22 11:55:49 -05:00
Francois Belair 30a1a299d7 Merge branch 'master' of github.com:GDquest/godot-steering-toolkit 2020-01-21 12:50:00 -05:00
Francois Belair 0eb4adc48c Fix bug for collision avoid direction reversed
Once the agent was close enough to a neighbor, it tried to get closer
instead of away.
2020-01-21 12:49:46 -05:00
Nathan Lovato 48d357537e
Add MIT license 2020-01-18 18:42:48 +01:00
Francois Belair fe00d231b8 Fix typo in seek instructions 2020-01-17 09:17:06 -05:00
Răzvan C. Rădulescu c7d776c2e0
Merge pull request #6 from GDQuest/features/final-toys
Add path following and collision avoid toy demos
2020-01-17 15:51:20 +02:00
Francois Belair 0a21aaf3fc Fix bug using wrong random number generator 2020-01-16 21:58:29 -05:00
Francois Belair dffec9efa6 Add avoid collisions demo 2020-01-16 17:27:04 -05:00
Francois Belair 6e6f27505c Fix init time setters and export Follow variables
The use of `not is_inside_tree()` before setting the setting class' value
meant that the starting values would always be the default. Moving the
value setting before checking for tree readiness fixes the issue.
2020-01-16 12:31:02 -05:00
Francois Belair 86cd22cfde Merge branch 'master' into features/final-toys 2020-01-16 11:08:53 -05:00
Francois Belair dde2825bde Fix divide by 0 bug in FollowPath demo 2020-01-16 11:08:23 -05:00
Răzvan C. Rădulescu 1f44bace3e Improve and review the available demos
- simplify code when possible
- add a simple info panel
- adhere to the "new" gdscript guidelines
2020-01-16 17:04:27 +02:00
Răzvan C. Rădulescu f3f40848a1 Update folder structure for FoollowPath Demo 2020-01-16 15:30:55 +02:00
Răzvan C. Rădulescu 1a37b2bee0 Update project to follow GDScript guidelines closer
Used `var variable := 0.0` as discussed in the Godot issue, instead of
`var variable: = 0.0`.

Mostly these are minor/cosmetic changes, but I've also reorganized the
folder structure (naming of folders) to reflect our guidelines, plus
made some minor changes to the demo codes. Still work in progress.
2020-01-16 10:44:44 +02:00
Francois Belair b325976139 Add path following toy demo 2020-01-15 17:15:40 -05:00
Francois Belair 0a8551e5c9 Remove GUI and export variables in demo scripts
Since we don't want to come up with a GUI maintenance system and
instead focus on the steering behaviors, all relevant variables have
been moved as exported in the main demo script for each toy.
2020-01-15 14:15:31 -05:00
Francois Belair 617b837772 Fix bug with implementation of drag in Arrive
Drag should inexorably draw towards 0, but when slow enough it could
instead cause a reverse direction.
2020-01-15 10:44:21 -05:00
Francois Belair fa91e6bca7
Merge pull request #2 from GDQuest/features/mvp-impl
Features/mvp implementation
2020-01-15 10:23:54 -05:00
Francois Belair 0e95c24c7f Add GDQuest theme to improved Pursue demo
Changed text boxes to sliders to improve usability. This also involved
adding some simple graphics, since the _draw method is not
anti-aliased and doesn't look great.
2020-01-13 16:15:44 -05:00
Francois Belair 82d92016a4 Add GDQuest theme to improved seek demo
Replaced the text boxes with sliders to improve usability.
2020-01-13 12:38:46 -05:00
Francois Belair b0442982d0 Implement demo for separation and cohesion 2020-01-12 10:25:10 -05:00
Francois Belair a01f5d5b2e Clean up and improve group behaviors' code
The first pass was somewhat obtuse and lacked a common class that
differentiated them from behaviors that didn't use Proximities.
2020-01-12 10:24:03 -05:00
Francois Belair 780e6038b8 Add FollowPath behavior 2020-01-12 10:23:51 -05:00
Francois Belair 84f0465b88 Add AvoidCollision behavior 2020-01-12 10:23:42 -05:00
Francois Belair 34b58a6bba Add Cohesion behavior and RadiusProximity caching 2020-01-12 10:23:19 -05:00
Francois Belair ac99344633 Implement Separation behavior and add Proximity 2020-01-12 10:22:54 -05:00
Nathan Lovato 8fb4f4c51a Replace multiline comments with comment blocks
The use of multiline blocks in GDSCript for comments leaves them in the
final compiled file, increasing size and potentially processing for no
end-user gain.
2020-01-12 10:21:43 -05:00
Francois Belair 9f945cbf85 Implement review suggestions to code
Razvan reviewed the code and suggested a number of changes to improve
readability and make facets of the code more explicit and consistent.
2020-01-12 10:20:06 -05:00
Francois Belair 35d9b2e1a6 Add GUI to Arrive demo 2020-01-12 10:19:59 -05:00
Francois Belair 87aef48251 Add GUI to Face demo 2020-01-12 10:19:53 -05:00
Francois Belair fc0b36ff22 Add GUI to Pursue demo 2020-01-12 10:19:40 -05:00
Francois Belair 3d50dcdb9c Add GUI controls to seek/flee demo
Being toy demos, they should be easily tweakable and modifiable by the
user to get a feel for what the parameters of the behaviors do.
2020-01-12 10:18:53 -05:00
Francois Belair 3e9ce641fb Add Blend and Priority behaviors 2020-01-12 10:18:40 -05:00
Francois Belair b32446217d Implement demo for Arrive behavior 2020-01-12 10:18:29 -05:00
Francois Belair 546d12b15b Implement demo for Face behavior 2020-01-12 10:18:16 -05:00
Francois Belair f531e835fd Implement LookWhereYouGo, and demo for Pursue 2020-01-12 10:17:53 -05:00
Francois Belair fb538b72cb Reorganize project
The GST namespace has been added to prevent class name conflicts, and
the project has been reorganized to make extensions and purpose easier.
2020-01-12 10:16:37 -05:00
Francois Belair 7520939bdd Add docstring to currently implemented code. 2020-01-12 10:15:57 -05:00
Francois Belair 9b02baaba6 Create a toy demo for Seek and Flee behaviors 2020-01-12 10:15:35 -05:00
Francois Belair c00b1242c8 Implement Face, Evade Pursue, Arrive, Flee, Seek
The MVP document goes over the main behaviors that need to be
implemented prior to having a product.
2020-01-12 10:14:18 -05:00
Francois Belair 4bc8bb372f Build the initial project 2020-01-12 10:14:03 -05:00
Nathan Lovato ae9d70e6fc
Update mvp.md 2019-12-14 19:56:34 +01:00
Francois Belair 762378965e Merge branch 'master' of github.com:GDquest/godot-steering-toolkit 2019-12-13 10:55:54 -05:00