Eddienput
Eddienput (pronunciado "edd-input") es un controlador virtual programable destinado principalmente a mejorar el modo de entrenamiento para todos los juegos de lucha para PC.
Requisitos previos:
Instale ViGEmBusSetup_x64.msi (proporcionado con el programa)
Instrucciones de construcción:
- Nota : esta parte es principalmente para desarrolladores; los usuarios pueden obtener la última versión desde la página de versiones.
- Clonar el repositorio en alguna carpeta local
- Instalar Python 3.12
- Instalar poesía
-
cd
en el directorio raíz del repositorio clonado - Ejecutar
poetry shell
- Ejecute
./build.bat
El directorio distribuible que contiene el ejecutable de Eddienput debe encontrarse en /dist/Eddienput
Uso:
El escenario de uso más común sería definir reproducciones/mezclas en un archivo de reproducciones, cargar el archivo y reproducirlo. Puedes hacerlo siguiendo estos pasos:
- Inicie Eddienput.exe con su propio controlador ya conectado (se debe conectar un segundo controlador virtual cuando se inicia el programa)
- Defina reproducciones/mezclas en un archivo de reproducciones (formato txt) de acuerdo con la sintaxis que se describe a continuación, guárdelo y cargue el archivo de reproducciones en el programa (arrastrar y soltar)
- Ahora entra en el modo de entrenamiento de tu juego y selecciona "controlador" como acción ficticia. Si el juego te pide que presiones iniciar en el controlador P2, presiona la tecla "inicio" en tu teclado para simular presionar inicio en el controlador virtual (requerido en algunos juegos)
- Ahora puede presionar F3 en su teclado o un botón asignado en su controlador para reproducir la reproducción simulando presionar botones en el controlador P2.
También puedes compartir tus archivos de reproducción con otros jugadores de tu comunidad para compartir combos, mezclas y más. Puede encontrar algunos archivos de reproducción de ejemplo en la carpeta de reproducciones.
Teclas de acceso rápido:
- Jugador 1 Lado - F1
- Lado del jugador 2 - F2
- Secuencia de reproducción: F3 / Personalizada
- Detener secuencia - F4
- Recargar secuencia de comandos - F5
- Disminuir el número de repeticiones - F6
- Aumentar el número de repeticiones - F7
- Alternar sonido de inicio/fin de secuencia - F8
- Botón de reproducción del mapa: F9
- Presione Inicio en el controlador P2 - Tecla Inicio
- Presione Seleccionar en el controlador P2 - Tecla Finalizar
- Alternar control P2 manual (para mapeo) - Insertar clave
Las teclas Hoy se pueden suprimir alternando Suppress Hotkeys
en la ventana GUI.
Notación:
- # - Iniciar una línea de comentario
- Número W: espere un cierto número de fotogramas ( el número es un número entero positivo)
- X : toca X y suelta el siguiente fotograma.
- [ X ] - Mantenga X
- ] X [ - Liberar X
- Nota: para las direcciones, si desea cambiar directamente de la dirección mantenida a otra dirección mantenida, no suelte la dirección mantenida en el medio. Por ejemplo, si quieres ir de abajo a adelante, simplemente haz
[2] W10 [6]
en lugar de [2] W10 ]2[+[6]
- **Lo anterior no se aplica si las instrucciones están asignadas a las teclas del teclado (experimental)
- + - Agregar entrada al mismo marco
Ejemplo:
configsgg.json
# <- Indicates this line is a comment and is ignored by the parser
# The assumed game for this example is Guilty Gear XRD Rev2
# The first line (configgg.json) indicates that we use the symbols and mappings defined in that file (that fit Guilty Gear notation)
# In the next line, we tell the dummy to perform a Gunflame (Asumming Sol Badguy is selected as P2), and then wait 60 frames (one second)
2 3 6+P W60
# Now dash forward (tap forward, wait one frame, then hold forward) for 20 frames and then stop (release forward)
6 W1 [6] W20 ]6[
# Now enter IK mode
K+P+S+H
Mezclas:
- Las mezclas constan de varias opciones definidas por el usuario, una de las cuales se elige al azar en función del peso de las opciones.
- Una línea que consta de la palabra clave startmix indica el comienzo de una definición de mezcla
- Las opciones se definen con una línea que consta de la palabra clave option seguida opcionalmente de un peso (entero no negativo)
- El peso predeterminado de una opción es 1
- Las acciones en las líneas que siguen a la opción se realizarán si se elige la opción
- Cierre la definición de mezcla con una línea que consta de la palabra clave endmix
- No se admiten combinaciones anidadas
Ejemplo:
configsgg.json
# Classic Eddie high/low mixup (assuming Guilty Gear Accent Core +R)
# Fixed Mawaru setup (always performed)
2 3 6 H W4 [K] W11 ]K[ W20
# Start defining a mixup (Indentation is optional but recommended for readability)
startmix
# Now one of the following options will be performed:
# 1) dash 6K option (overhead) - 60% to be performed:
option 60
6 W1 [6] W10 K
# 2) dash 5K option (low) - 40% to be performed:
option 40
6 W1 [6] W10 ]6[ W9 K
endmix
# Can now add more actions to be performed after the initial mixup ended (including other mixups)
Bucle:
- Las acciones se pueden repetir varias veces definiendo un bucle.
- Una línea que consta de la palabra clave startloop seguida del número de repeticiones (un número entero positivo) indica el comienzo de una definición de bucle.
- Las acciones en las líneas que siguen a la definición del bucle se repetirán según el número de repeticiones definidas.
- Cierre la definición del bucle con una línea que consta de la palabra clave endloop
- Las mezclas definidas dentro de un bucle deben cerrarse antes de salir del bucle.
- Los bucles se pueden definir dentro de mezclas siempre que la mezcla no termine dentro del bucle.
- Los bucles anidados no son compatibles
Ejemplo:
configssf.json
# The assumed game for this example is Street Fighter 5 with Ken as P2
# Perform heavy tatsu 5 times waiting 180 frames (3 seconds) between each:
# Indentation is optional (recommended for readability)
loop 5
2 1 4+HK W180
endloop
# End with an ex shoryuken
6 2 3+MP+HP
Archivos de configuración:
Puede definir símbolos, reasignar símbolos a otros botones y configurar macros en un archivo de configuración JSON (consulte configsgg.json para ver un ejemplo).
La primera línea de un archivo de reproducción siempre debe ser la ruta (absoluta o relativa) al archivo de configuración que se utilizará.
Símbolos reservados:
- número W
- +
- iniciarmezcla
- opción
- mezcla final
- [
- ]
- bucle
- bucle final
Botones de controlador virtual compatibles para asignar un símbolo a:
Haga clic para expandir
- "BtnA"
- "BtnB"
- "BtnX"
- "BtnY"
- "BtnHombroR"
- "BtnHombroL"
- "BtnVolver"
- "BtnInicio"
- "DisparadorR"
- "DisparadorL"
- { "Teclado numérico": "abajo" }
- { "Control numérico": "izquierda" }
- { "Teclado numérico": "derecha" }
- { "Teclado numérico": "arriba" }
- { "Control numérico": "abajo_izquierda" }
- { "Control numérico": "down_right" }
- { "Control numérico": "arriba_izquierda" }
- { "Control numérico": "up_right" }
Botones de teclado virtual admitidos para asignar un símbolo (experimental):
Haga clic para expandir
- 'cambio'
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
- 'a'
- 'b'
- 'do'
- 'd'
- 'mi'
- 'F'
- 'gramo'
- 'h'
- 'i'
- 'j'
- 'k'
- 'yo'
- 'metro'
- 'norte'
- 'oh'
- 'pag'
- 'q'
- 'r'
- 's'
- 't'
- 'tú'
- 'v'
- 'w'
- 'incógnita'
- 'tú'
- 'z'
- 'numpad_enter'
- 'teclado numérico_1'
- 'teclado numérico_2'
- 'teclado numérico_3'
- 'teclado numérico_4'
- 'teclado numérico_5'
- 'teclado numérico_6'
- 'teclado numérico_7'
- 'numpad_8'
- 'teclado numérico_9'
- 'teclado numérico_0'
- '-'
- '+'
- 'izquierda'
- 'arriba'
- 'bien'
- 'abajo'
- 'espacio'
- 'ingresar'
Grabación:
El programa puede escuchar las entradas del controlador y generar archivos de reproducción Eddienput. Se debe conectar un controlador cuando el programa comienza a habilitar esta función.
La grabación se inicia presionando F10 en el teclado. Una vez detenido presionando el botón de selección en el controlador, las entradas grabadas se escribirán en un archivo de reproducción. El archivo json de configuración de grabación cargado determina los símbolos a los que se traducirá cada botón, que deben coincidir con los símbolos definidos en el archivo de configuración para el archivo de reproducciones generado. Si el archivo de configuración de grabación cargado no define una asignación entre un botón y un símbolo, ese botón se ignora. Consulte rec_configs/rec.json
o rec_configs/rec_bb.json
para ver ejemplos.
Otros:
Reproducir sonidos
- "beep" - Reproduce un pitido
Ejemplo:
configsgg.json
# Assuming Guilty Gear Accent Core +R with Eddie as P2, Perform Eddie's reversal super and beep right when a slashback should be inputted
6 3 2 1 4 6+H W63 beep
Para asociar un símbolo con alguna señal de audio, en el archivo de configuración agregue una asignación del símbolo a su respectivo archivo .wav
(consulte configsgg.json
para ver un ejemplo).
Archivo de configuración general
Además del archivo de configuración específico de plyaback, Eddienput también carga algunas configuraciones de un archivo de configuración general en su directorio config.json
cuando se inicia. Los ajustes que se pueden configurar son:
-
playback
: una ruta a un archivo de reproducción para cargar cuando se inicia el programa. -
playback_start_end_sound
: ya sea establecido en true
o false
, establece si se reproducirá un sonido cuando una reproducción comienza o finaliza. -
hot_reload
: ya sea establecido en true
o false
, establece si el archivo de reproducción se recargará automáticamente durante la reproducción. -
side
: Establecido en P1
o P2
, establece qué lado del reproductor usar cuando se inicia el programa. -
record_to
: establece la ubicación predeterminada para grabar. -
rec_config
: una ruta a la configuración predeterminada que se utilizará para la grabación.
Problemas conocidos:
KOF2002 MU:
- Las entradas son inconsistentes cuando los símbolos se asignan a un controlador virtual. Son más consistentes cuando se asignan a teclas del teclado (use
configskof_keyboard.json
)
Núcleo de acento de Guilty Gear +R:
- Las teclas de movimiento P2 no se reconocen cuando se asignan a teclas del teclado (use
gg.json
). Si tocas el teclado, ejecuta dos instancias del programa al mismo tiempo (o conecta un controlador real si tienes uno) para que el segundo controlador virtual sea tratado como P2.
Touhou 7.5: Suimusou - Poder inmaterial y faltante
- La asignación a las teclas de flecha del teclado no funciona. Asigne las teclas de movimiento del juego para P2 a otras teclas (consulte configsiamp_keyboard.json)
Asignación del botón de reproducción a un botón del controlador
- Solo se admite en controladores XInput. Si usa un pad de PS4, una posible solución sería usar DS4Windows
Entradas inconsistentes:
- Se recomienda desactivar la compatibilidad con el controlador Xbox de Steam, ya que eso introduce inconsistencias en las entradas (esto probablemente se aplica a los controladores XInput en general)