-
Notifications
You must be signed in to change notification settings - Fork 5
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[LUA CODE] Complex Actions TODOs #3
Comments
I had pulling and double-pulling in my bot. Ill try and implement them here. Might be better to code stacking first as will be some code overlap (you attack creeps then run away) |
For some of these complex_actions. i.e for stacking/pulling:
I think implementation could be a lot simpler if it's left to the backend. EDIT; I can see that have actually come quite far with sending world-state to the backend. has Neutral creep info, and allied lane creep. so Ill try and get myWorlD.decision() to tell bot to do what I described above |
I don't think we will want to "stitch" simple_actions on backend server. I anticipated the backend server just giving directives to front-end about what to do at the high-level and the front-end being able to interpret that through complex action definitions and maneuvers. |
kk, Im not sure I agree, but it's hard to predict best way without trying. So as the project is still at an earlyish stage... Im going to prototype both implementations on 2 separate branches
so can compare having actual code |
Great. I am not opposed to it, I just worry about speed. Backend only communicates every 0.25 sec to front end. Test will tell. The hard part is seeing it work as currently the bots don't do anything yet. |
I completely overlooked that. Great point. I've written the stacking lua function, I just need to test calling it. Took the jungle parts from constants.lua in your full-override. made a jungle.lua inside /constants. So far my implementation assumes Stack() will not just be called once, it will have to be called by each successive think until the stack is 'done'. because when you first call stack, you do not have all the information necessary to queue all the needed actions. |
tested and fixed my stacking. can be tested by overriding X.HeroThink with
still to do:
|
Implemented a generic complex action. Instead of having to copy/paste multiple variants of basically the same thing for things like "go here and place ward", "go here and get rune", "go here and buy item", "go here and attack unit", "go here and cast spell on this loc", etc. I wanted to create a flexible template function which will just take the action to perform when at location. We still will have to create specific implementations of all the above, but it will just call the "approach_and_execute_action_on_location" implementations with the final argument being "Action_UseAbilityOnLocation( hWard, vLoc) for warding for example. |
just an update. I had asked for a small addition to API in a june update thread, which would make implementation of pulling/stacking a lot more reliable. hasnt been added so im going to repost in api request thread. I also had some offlaner/hero-zoning stuff in my bot. |
Sure, just use basic actions to do those (if any missing let me know) |
They are enumerated here:
https://github.com/Nostrademous/Dota2-WebAI/blob/master/actions/complex_actions/TODO_complex_actions.md
The text was updated successfully, but these errors were encountered: