GithubHelp home page GithubHelp logo

zeroeightysix / kami Goto Github PK

View Code? Open in Web Editor NEW
242.0 21.0 76.0 5.11 MB

Minecraft utility mod aimed at anarchy servers

License: Other

Java 28.51% Shell 0.07% Batchfile 0.02% Kotlin 71.28% GLSL 0.13%

kami's Issues

Feature: Rich Presence for Discord with server IP

Describe the solution you'd like
A rich presence for Discord that reports time played, server IP.

Describe alternatives you've considered
Adorufu, but Kami is still better.
Additional context
Something Like this:
image

A PortalLogger

The folks at The Society Project would really appreciate a module known as PortalLogger. It ideally would be toggleable and log all portals that come within the players render distance inside an easily exportable .txt file.

A module like this could allow us to measure player density, which is one of our main goals.

Plugin system

Would be really neat if we could have a plugin system which would load compiled jar artifacts.

This would also of course help slimming down the client to a very minimal client where users can easily create what they want using a plugin API, hosted on a Maven server.

We can expose things such as the feature, command and event system to the plugins so they can register features, commands and events. We should though not expose things like the (if any) account manager since the plugin shouldn't need to use it.

Another idea could be exposing through a manifest file, so the user can choose what systems are exposed to the plugin, this way you are aware that the plugin might use that system.

Fading brightness option

The brightness module should support brightness fade in/out, and the speed of the fade effect should be configurable.

Automute for spambots

A filter to detect if someone has said the same thing in X amount of seconds, then in chat type /ignore $username, and a customizable filter for words such as LowDown69 to do the same action.

Compile error from AutoTool

ItemTool#attackDamage is protected in ItemTool and can't be accessed here.

A easy way we could fix this is making an extension class for ItemTool, consider this:

public class ItemTool {
    protected float attackDamage;
}

ItemTool#attackDamage can't be accessed in instances of the class, this can easily be fixed by making an extension like this:

public class ItemToolExtension extends ItemTool {
    public float getAttackDamage() {
        return this.attackDamage;
    }
}

We would then cast our ItemTool instance too ItemToolExtention and use ItemToolExtension#getAttackDamage() to retrieve the attack damage.

Intercept chat messages

So an option to intercept your chat message, for example, warn you if it contains the word /kill.

Add in more GUI customizability.

Kami is one of the mods that are nicer graphically and that can allow the user to adjust the GUI to their needs. However, often the text goes out of the 'rectangle' that the user put the module of the GUI in. For instance, while traveling greater distances, the coords can go out of the window, which often can be a bother!

Fix sloppy features

KAMI has a few half-assed features which I'd like to see fixed. I'll be using this issue as a to-do list and it can function as inspiration for potential contributors.

  • Brightness sometimes leaves the brightness setting high after closing, enabling permanent brightness
  • The build.gradle is a horrible mess, fix it
  • Chams needs a proper implementation
  • Fix NoEntityTrace
  • Fix TpsSync
  • Nametags needs prettier item rendering + enchantments

Feel free to leave comments for feedback or to notify me if you're willing to work on something.

New configuration system

As mentioned by @zeroeightysix in the Kami discord building on top of https://github.com/lightbend/config would be nice, but also supporting multiple configs for example .config 2b2t and .config mineplex where you can have completely different configs which just a simple command.

I would also be willing to make a user-based (networked) config sharing system if the above would be implemented.

NPE Upon joining servers

Occasionally, a NullPointerException occurs when trying to join a server or joining singleplayer. The player is then disconnected before joining.

java.util.concurrent.ExecutionException: java.lang.NullPointerException
	at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[?:1.8.0_181]
	at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[?:1.8.0_181]
	at net.minecraft.util.Util.func_181617_a(SourceFile:47) [h.class:?]
	at net.minecraft.client.Minecraft.func_71411_J(Minecraft.java:1086) [bib.class:?]
	at net.minecraft.client.Minecraft.func_99999_d(Minecraft.java:397) [bib.class:?]
	at net.minecraft.client.main.Main.main(SourceFile:123) [Main.class:?]
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_181]
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_181]
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_181]
	at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_181]
	at net.minecraft.launchwrapper.Launch.launch(Launch.java:135) [launchwrapper-1.12.jar:?]
	at net.minecraft.launchwrapper.Launch.main(Launch.java:28) [launchwrapper-1.12.jar:?]
Caused by: java.lang.NullPointerException
	at net.minecraft.client.network.NetHandlerPlayClient.func_147282_a(NetHandlerPlayClient.java:298) ~[brz.class:?]
	at net.minecraft.network.play.server.SPacketJoinGame.func_148833_a(SourceFile:76) ~[jh.class:?]
	at net.minecraft.network.play.server.SPacketJoinGame.func_148833_a(SourceFile:13) ~[jh.class:?]
	at net.minecraft.network.PacketThreadUtil$1.run(PacketThreadUtil.java:20) ~[hv$1.class:?]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[?:1.8.0_181]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:1.8.0_181]
	at net.minecraft.util.Util.func_181617_a(SourceFile:46) ~[h.class:?]
	... 9 more

Autoeat interacts with blocks

Expected behavior

Eat the food and not interact with e.g shulkers when facing them.

Actual behavior

Repeatedly opens the shulker while trying to eat.

Add player log

It shows a waypoint like wapoints from JourneyMap at the location a player logged. It shows their username and the time they logged. Also, keeping this info in a file to save it when you close the game would be amazing

Markers equivalent?

The PortalTracers are currently an issue, but why not replace them with a Markers equivalent? It would allow for more customizability.

Incompability with 5zig

So after a long troubleshooting session I found out 5zig causes MC 1.12.2 to crash with Kami KAMI-master-b9-release and 5zig The 5zig Mod v3.12.5 for Minecraft 1.12.2. Crash logs:
edited out due to privacy concerns
They show what mods I was using when it crashed.

Please reply if I forgot any information.

Issue in 5zig's repo

Latest build of kami crashes with future

Steps to reproduce the problem

  1. Have Future and Kami in \.minecraft\mods\1.12.2
  2. Launch
  3. See a crash
  4. Try again without Future
  5. Game launches normally

Might be related to re-write, which is the main big change when switching versions
Or it might be related to #31

Specifications

  • Version: Latest build as of October 14th
  • Platform: Windows 10 x64

Logs

EDIT: Logs removed due to privacy concerns

Add Tab Complete

Feature

So you can press tab to autocomplete the grayed suggestion they typing commands such as .toggle shul and tab to complete typing shulkerPreview

Baritone Branch crashes with only Kami installed

Steps to reproduce the problem

  1. Delete .minecraft
  2. Launch clean install of Forge
  3. It works.
  4. Build master branch
  5. Copy it to the mods\1.12.2 folder
  6. Launch and see it works perfectly
  7. Delete .minecraft
  8. Launch clean install of Forge
  9. Build the baritone branch
  10. Copy it to the mods\1.12.2 folder
  11. Launch and see a crash

Specifications

  • Version: Latest build as of October 21st
  • Platform: Win10 x64
  • Forge: Latest as of October 21st

Logs:

Master branch build:
2018-10-21-1.log.gz
debug-1.log.gz

Baritone branch build:
debug.log
latest.log

No crash logs were produced even though the launcher detected a crash

Add autoTool

KAMI needs an autoTool feature. Make sure aura and autotool work together for selecting weapons.

Riding a donkey hides the GUI

When riding a donkey the active modules, coords, and everything else that can be visible when the main GUI isn’t open disappears while riding a donkey. iirc it does show up on horses, just not donkeys and possibly Llamas.

Enemy list?

Basically just like friends except on the tab menu they appear red, and their tracers are red?

Commands from the main menu

A way to execute commands from the main menu would be cool. Or a seperate GUI for it that can be accessed from the main menu somehow.

Kami (baritone branch) + Future autowalks for no reason.

Describe the bug
So when both are loaded, it will walk forward, unless you turn on reverse autowalk in Kami. Then, not as if its counteracting pressing W, but as if it stopped going forward it goes backward.

This only happens with the baritone branch.

To Reproduce
Steps to reproduce the behavior:

  1. Test Future and Kami separately. They both work fine.
  2. Now launch both, and open a game
  3. It walks forward even if autowalk is turned off in both Future and Kami, and no path has been set in Baritone
  4. Try setting autowalk in Kami to reverse and toggle it with a keybind.
  5. Notice it stop walking for a split second. Then it reverses the walking. This proves its something in Kami that's messing with Future.

Additional context
Please note: I had to modify the jar in order to run it with future due to #61
How I modified it:
Inside KAMI/src/main/java/me/zeroeightsix/kami/mixin/client/MixinEntity.java delete lines 30 to 34
Now build and observe that it doesn't crash with future. This is a workaround, and shall be fixed eventually.

Files
My modified jar incase people can't reproduce but they can with my jar (in which case this should be closed and I need the jar that works properly with Future):
KAMI-feature-baritone-impl-10-25-01-future-b9-release.jar.zip

My Kami settings so you can easily see what I have enabled:
Kami Settings.zip

NoHurtCam crashing

Stacktrace:

java.lang.NullPointerException: Unexpected error
        at me.zeroeightsix.kami.module.modules.render.NoHurtCam.shouldDisable(NoHurtCam.java:18

Just took a look at it, the Minecraft event will call NoHurtCam#shouldDisable before the instance is set.

When building, the gradel reverts changes (baritone branch only)

Ugh I have spent over an hour testing this trying to get baritone to work.
So, when you build, either manually or using autobuild, the MixinEntity.java file gets reverted back to this, even though it looked like this (saved, ofc) before I built it.
Edit to clarify: by reverted I mean it reverts the file to before I made changes.

Note: this only happens with the Baritone branch.
This is required for me to use Kami with Future because the change disables hooking which interferes with 5zig and Future

Add center option for visible modules

As well as align left, align right. Also, an option to move the module itself quickly to the opposite side/height would be great.

Already has the best UI out there, though!

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.