Reprogramming TASmod Experiment

Overview

TASmod-Experiments

An experimental rewrite of TASmod

Lets you record and play back tickperfect inputs.

This mod is currently only for Forge 1.12.2 and will update/downgrade once 1.12.2 works properly

Credits

...

Development

Setup

In order to help you will need ForgeNoGradle and Eclipse. Please note that before updating you also need to close the project!

Launch game in dev environment

  • Run either the TASmod-Experiments.launch to start the client or TASmod-Experiments-server.launch to start the server.

Building

  • At the top bar, go to Project->Clean. If you don't have Project->Build Automatically enabled, you need to run Project->Build All
  • Run TASmod-Experiments-export.launch
  • You can find the jar in TASmod-Experiments/build/, where export-reobf-mixin.jar is the correct jar.
Comments
  • Implement the virtual input system

    Implement the virtual input system

    This will be the virtual input system for both the keyboard and the mouse. German: https://1drv.ms/p/s!Av_ysXerhm5Cphi9RMqnIbvI5Dkv?e=9zfB3C English: https://1drv.ms/p/s!Av_ysXerhm5CphxfXLbbOwTL-sJo?e=3M5RdS

    feature Core 
    opened by MCPfannkuchenYT 4
  • Implement tick sync

    Implement tick sync

    Implementing what was discussed to circumvent parallel ticking desync issues. German: https://1drv.ms/p/s!Av_ysXerhm5CphLvLvguvL5QYe1A?e=MHPldP English: https://1drv.ms/p/s!Av_ysXerhm5Cpha7Qq2tiVebd4DY?e=pzxOva

    feature Core 
    opened by MCPfannkuchenYT 4
  • Add a custom tasmod server managing tasmod packets

    Add a custom tasmod server managing tasmod packets

    A non-blocking tick-independent separate server used for all TASmod packets.

    What does it do

    • Transfering packets between server and client without ... blocking the main thread
    • ... being dependent to the tick cycle
    • ... waiting for minecraft packets to process beforehand

    Why is it needed

    • It is non-blocking
    • It is tick-independant
    • Less packet loss (possibly?)
    feature Core 
    opened by MCPfannkuchenYT 4
  • Implement an input visualizer

    Implement an input visualizer

    Input visualizer is useful for debugging keypresses and has a general use in the form of TASing with tickrate 0 (and possibly piano roll?). This draft pull request will implement this for the keyboard and mouse.

    feature Tools 
    opened by MCPfannkuchenYT 3
  • Fix a freeze when closing minecraft without closing the server

    Fix a freeze when closing minecraft without closing the server

    Problem

    When in a world, closing the minecraft client will freeze the game. Reason is that the TASmod Client didn't shut down properly, since it only shuts down when closing the integrated server.

    Solution

    Added a hook to Minecraft.shutdownMinecraftApplet() and implementation in ClientTASmod#onClientShutdown(). Basically a copy of ClientTAsmod#onClientDisconnect() where the TASmodClient is normally shut down

    Additional changes

    To avoid spammy debug level log messages, I changed some log messages to trace. This can easily be reverted.

    bugfix Core 
    opened by ScribbleLP 0
  • Added more infos to readme

    Added more infos to readme

    • Fixed Title
    • Added link to TASmod
    • Added Setup, launch and building...

    You can find the preview markdown here https://github.com/ScribbleLP/TASmod-Experiments/tree/enhancement/readmefix

    other Core 
    opened by ScribbleLP 0
  • Correct the logger message in two places

    Correct the logger message in two places

    • The preinit phase incorrectly said 'Common TASmod Init Phase'.
    • The server tick handler messages was changed to 'Server Tick' so it fits with the client one.
    other Core 
    opened by MCPfannkuchenYT 0
Owner
Minecraft TAS
Creating TAS tools for Minecraft
Minecraft TAS
An experiment in artificial life, artificial neural nets, artificial sentience, simulated evolution, simulated consciousness, and genetic programming

bots An experiment in artificial life, artificial neural nets, artificial sentience, simulated evolution, simulated consciousness, and genetic program

Jason Resch 7 Oct 18, 2022