Coder Social home page Coder Social logo

nirgoren / eddienput Goto Github PK

View Code? Open in Web Editor NEW
117.0 117.0 14.0 2.72 MB

Eddienput is a programmable virtual controller mainly aimed at enhancing training mode for all fighting games on PC.

License: MIT License

Python 96.81% Batchfile 0.47% C++ 2.73%

eddienput's People

Contributors

nirgoren avatar nirgorentau avatar shiburizu avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

eddienput's Issues

[Request] Buttons next to bind listings to allow control per instance

Hi,

I've been making great use of this tool you've created for tool-assisting certain situations in Tekken 7.

However, I've found the need to use two instances in order to strictly control the inputs of both characters. But it doesn't seem possible to bind several Eddienputs to P1 and P2 without significant hassle, if at all.

For example, in Tekken 7 practice mode:
1.) Open menu, select cpu action controller:
2.) Open Eddienput 1, press Home to bind p1
3.) Open Eddienput 2, Press Home again
4.) Result: Game goes back to menu and undoes the bind attempt.

This seems to happen because I cannot individually press home on an individual eddienput, as the hotkey will control both simultaneously. This is fine and actually what I need for the other binds, but not for pressing start/select.

If each bind in the listing were to have a UI button so that I could manually activate only for the one instance, it would work easily (Tekken 7 does not require focus w/ mouse click for controller inputs to work).
Another nice feature would be a single bind for Reload Script and Play (or reload script before play when bound to F5), rather than always needing to press the two sequentially for editing and testing.

Hope you get around to implementing my suggestion, this is an amazing tool!

Inserting Beeps Into A Script Causes The Script To Break

I started playing around with this software today and was excited to try out using the beep feature to better understand execution timing for button presses in combos. I made the following script for Millia Rage in GGXAC+R:

configs\gg.json
[2] S W10 H ]2[ W20 9 W18 S W12 H W16 [6] ]6[ W5 [6] ]6[ W15 [2] [H] W60 ]2[ ]H[
S W12 [2] H ]2[ W20 9 W12 S W10 H W16 [6] ]6[ W5 [6] ]6[ W15 [2] [H] W50 ]2[ ]H[
S W12 [2] H ]2[ W20 9 W12 S W10 H W16 [6] ]6[ W5 [6] ]6[ W15 [2] [H] W60 ]2[ ]H[
2 3 6 H

And after some troubleshooting, it works great! In order to better understand what the timing would be to hit buttons on an actual controller, I inserted beep sounds into the script to see if I could get audio queues for when to press the buttons for execution:

configs\gg.json
[2] S beep W10 H ]2[ W20 beep 9 W18 beep S W12 beep H W16 beep [6] ]6[ W5 [6] ]6[ W15 beep [2] [H] W60 beep ]2[ ]H[
S W12 beep [2] H ]2[ W20 beep 9 W12 beep S W10 beep H W16 beep [6] ]6[ W5 [6] ]6[ W15 beep [2] [H] W50 beep ]2[ ]H[
S beep W12 [2] H beep ]2[ W20 9 beep W12 S beep W10 H beep W16 [6] ]6[ W5 [6] ]6[ W15 beep [2] [H] W60 beep ]2[ ]H[
beep 2 3 6 H

This immediately resulted in the combo breaking seemingly because the timings were thrown off as if the beeps were button presses themselves taking up space in the timeline.

It would be amazing if there was an easy way to play a beep on button press without it messing up the timings of the combos AND/OR beeps themselves do not affect the script and simply play audio at the designated time.

(PS Great work I'm subscribing to the Patreon)

New build &/ build instructions?

Hey! I'd like to use Eddienput's recording features, but they're newer than the newest release (1.2). I fell down the rabbit hole trying to get it to build locally, but have yet to get a (working) build. Would it be possible to cut a new release from the current state of the project?

Here's my Skullgirls config file (sg.json) and test script (SG_test.txt). The config file adds the six core buttons and macros for the assist, tag, and throw button combinations.

Here's my Skullgirls config file (sg.json) and test script (SG_test.txt). The config file adds the six core buttons and macros for the assist, tag, and throw button combinations.
https://github.com/DesChamos/Eddienput/blob/main/configs/sg.json
https://github.com/DesChamos/Eddienput/blob/main/recordings/SG_test.txt

Originally posted by @DesChamos in #4

Trying to make a database, not an issue but please read.

Ok I wasn't sure how to reach you so here am. I'm wanted to make a databank of sorts for this project where people could upload and share scripts for easy community access. https://drive.google.com/drive/folders/19mDfjmVRLwYUjt31pHtGNoYta1KLjhPf?usp=sharing
This is the link, it is currently unfinished cause its late where I live at the time of posting this but I'll get it fully up and running tommorow. When finished it'll be organized game>character>combo/tech/mixup. If you like this idea please post it somewhere, preferably on this project itself so we can start populating it and making everyone's life easier by having scripts all ready for them, and if it doesn't exist they can make it themselves and add to this folder for the next person. Thank you for reading!

Delay after pressing the playback key.

I've tried to find something about this, is there a way to just have the dummy act immediately after pressing the playback key? It seems to take a good second or so before doing anything. Not a big deal either way, thanks.

Rarely, enabling manual input freezes Eddienput

I'm running on Windows using Python 3.8.10 and whatever the latest versions of PyQt5 that pip will give me. I'm just directly running py.gui from a cloned repo and not using the release.

It seems like sometimes hitting my button to turn on manual mode freezes Eddienput. The UI stops working (the panel/image for manual input doesn't appear, but the message about starting manual mode does) and it stops responding to keybinds. If I click on the window, then Windows says it's not responding. Leaving it sitting for several minutes didn't have any affect. According to task manager, it's not really using any CPU while stuck. I don't seem to be able to do anything but kill Eddienput. When this happens, if I restart Eddienput, then it will always freeze in the same way if I enable manual mode until I reboot, as far as I can tell.

I can't figure out if I'm doing something different that causes it to happen. I'd guess it happens maybe once a month at most with me using Eddienput maybe 2-3 times a week.

If I comment out w.controller_image.hide() and w.controller_image.show(), then it works, even if it had previously frozen and I hadn't rebooted. I don't really know anything about Qt and I don't really use Python, but maybe the UI thread is somehow busy/waiting on something else and it's just blocking forever?

Please let me know if you have any ideas or if I can provide additional info.

Tekken notations

Hi, I am using this for Tekken and I think the tekken.json config could be updated to better reflect how inputs are written for that game.

Tekken notation does not use numpad notation, numbers in Tekken represent the limbs (1 is LP, 2 is RP, 3 is LK, 4 is RK). I was able to quickly add them myself in the JSON as well as fix the motion input macros and it seems to work great.

The "RA" button can also be removed because generally people don't use that macro, every character has a normal input like d1+2 to do their rage art.

I have my modified tekken.json in this pastebin with the changes I mentioned if you want to take a look at it and possibly commit it. This project would really benefit Tekken players if it took off since this game has so many moves and matchups to play against. Thanks for this!

https://pastebin.com/QXPKtzyq

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.