Kotlin utility mod for Minecraft

Overview

GitHub All Releases CodeFactor build Discord Mine minecraft Code size GitHub repo size Lines of Code

Lambda is a free, open-source, Minecraft 1.12.2 utility mod providing a visionary system for plugins that allow customizing the clients features thanks to an ingame plugin store.

lambda-2.07.01.jar - July 1, 2021 - 12.0 Mb

Contributing

Clone Repository

Clone the repository to your local machine. Use the link of either your fork or the main repository.

git clone https://github.com/lambda-client/lambda

Run scripts/setupWorkspace.sh to initialize the environment. With terminal on Linux or Git Bash for Windows

./setupWorkspace.sh

Setup IDE

In this guide we will use IntelliJ IDEA as IDE.

  1. Open the project from File > Open...
  2. Let the IDE collect dependencies and index the code.
  3. Goto File > Project Structure... > SDKs and make sure an SDK for Java 8 is installed and selected, if not download it here

Gradle build

Test if the environment is set up correctly by building the client and run it inside IDE using the Gradle tab on the right side of the IDE.

  1. Go to lambda > Tasks > build > runClient in the Gradle tab and run the client or create a native run using lambda > Tasks > fg_runs > genIntelliJRuns.
  2. To build the client as a jar run lambda > Tasks > build > build. IntelliJ will create a new directory called build. The final built jar will be in build/libs

Thanks to

zeroeightysix for the original KAMI

the Kami Blue team for the continuation of KAMI

ronmamo for Reflections

The Minecraft Forge team for Forge

All the contributors, including the ones who will be remembered in comments and in our hearts. This has been a huge community effort, and we would not be here without you.

Stargazers

Stargazers

Issues
  • Add a way to completely remove Lambda client

    Add a way to completely remove Lambda client

    So it will remove all the folders and stuff, for people that aren't sure what is a part of lambda client and what is just Minecraft stuff they remove. Have in some kind of a commend that u need to press a few times to ensure u want to remove it.

    new 
    opened by Natan515 12
  • DiscordNotifs Module won't work

    DiscordNotifs Module won't work

    Describe the bug Whenever i try to turn on DiscordNotifs Module, it tells me set up the webhook url, avatar, and ID with ;discordnotifs command. But whenever i try to set it up with the command, it says no such command found.

    To Reproduce Fix ;discordnotifs command

    Expected behavior It should work and accept the webhook url, avatar url and id.

    Debug info image

    Additional context / media

    Check this video : https://user-images.githubusercontent.com/83440724/120059022-634e2a00-c06c-11eb-9c50-0e2569385d7d.mp4

    bug 
    opened by fudge92 10
  • Don't force-show the watermark

    Don't force-show the watermark

    fix #24

    opened by Natan515 8
  • Add fly path finding

    Add fly path finding

    Like in https://github.com/bebeli555/ElytraBot so people won't have to use anything else than kami blue and we can make it better and fit any elytra fly hack exploit.

    new plugin 
    opened by Natan515 8
  • HighwayTools

    HighwayTools

    Description

    Adding fully automated highway building as module to KAMI Blue. The tool places building material and destroys wrong blocks in high frequency using well timed packets. The module can build autonomously highways in all 8 directions while its pathfinder keeps you at the desired position and takes care of any possible dangerours situation. It is highly customizable and allows deep changes in system using configurations. It is fully compatible with most modules of KAMI blue like AutoObsidian, LagNotifier etc and also is confirmed to work with Rusherhack Future Impact etc.

    Features

    • [x] Digs tunnel and paves Obsidian floor at the same time
    • [x] Faster block breaking and placing then any other solution
      • Reaches 30+ blocks per second mining interactions on 2b2t
      • Reaches 7+ blocks per second placing interactions on 2b2t
      • Confirmed over 300% faster then previous cutting edge digging solutions (source: MEG
    • [x] Intelligent liquid handling
      • Reacts on liquid pockets using cutting edge placing exploits to patch lava pockets before even opening them
      • Reacts on complex flow strucutres and cleans up
    • [x] Diagonal highway mode
    • [x] Intelligent repair mode
    • [x] The built in Anti-Anti-Cheat works with 2b2t's anti-cheat and NoCheatPlus
    • [x] Pauses on lag to avoid kick (enable LagNotifier for this feature)
    • [x] Ignore Blocks: Signs, Portals, Banners, Bedrock and more
    • [x] Choose custom building materials
    • [x] Auto clipping to starting coordinates
    • [x] Commands:
      • ;highwaytools - alias: ;ht
      • ;ht ignore add <block> Adds block to ignore list
      • ;ht ignore del <block> Removes block from ignore list
      • ;ht material <block> Choose an alternative building block (default: Obsidian)
      • ;ht filler <block> Choose an alternative filler block to fill liquids (default: Netherrack)
      • ;ht settings or ;ht Shows detailed settings of the module
      • ;ht west 0 for starting the bot with direction west clipped at the coordinate 0 (Planned)
    • [x] Compatible with:
      • LagNotifier (Baritone mode) To stop while lagging to not get kicked
      • AutoObsidian to automatically get new Obsidian from Ender Chests even from shulker boxes
      • AutoEat set PauseBaritone on false and below health 19.0 and u are safe from lava and other threads having gapples in inventory
      • InventoryManager (Support pending) to refill the Hotbar and get rid of overburden (mostly Netherrack)
      • AutoLog to logout on any given danger
      • AutoReconnect (Support pending) to get back on server after waiting (for example a player comes in range)
      • AntiHunger slows food level decrease but makes block breaking slower
    • [x] Highly dynamical generated blueprints
      • Three Modes: Highway (for full highways), Tunnel (optimized for digging), Flat (for repair obsidian sky)
      • ClearSpace: Choose to break wrong blocks and tunneling
      • ClearHeight: Choose the height of tunnel
      • BuildWidth: Choose the width of the highway
      • Railing: Choose if the highway has rims/guardrails
      • RailingHeight: Choose height of the rims/guardrails
      • CornerBlock: Choose if u want to have a corner block or not

    Pending for update v9.9 Last stable version before merge

    • [x] Fix diagonal default blueprint tunnel floor
    • [x] Fix adding break tasks for ignore blocks
    • [x] Fix wrong hardness calculation when fast switching slot
    • [x] Refactor Place Deep Search > Return list of shortest path to position
    • [x] Fix mining portal blocks inside the structure
    • [x] Click slot when stuck
    • [ ] Stop bot after x distance / change direction
    • [ ] Priorize container position on same Y as player
    • [ ] Fix item drop finder to get only correct drops
    • [ ] Fix cleanfloor on narrow tunnels
    • [ ] Fix CornerBlock option
    • [x] Fix onStuck on new states
    • [ ] Get deep place working
    • [ ] AntiHunger activation for idle walking
    • [ ] AnfiAFK by cycling a place break
    • [ ] Fix inventory desync when placing more blocks then blocks are in inv
    • [ ] Optimize placements for no anticheat servers
    • [ ] Maybe change origin of total blocks broken placed
    • [ ] Make pending task check packets for other not pending tasks
    • [ ] Read NCP Code
    • [x] Fix random place freeze
    • [x] Check if hard limit for mining is needed

    Pending for update v11 post merge Features:

    • [x] Smart back fill: Saves block states and remembers where to place the blocks
    • [x] Long term inventory management: InventoryProcessor
      • Burn overburden with Lava
      • If inventory is empty get all mats from shulker or from enderchest
      • Priority: Inventory, Shulker in Inventory, E-Chest, Shulker in E-Chest
      • Cache shulker storage
      • Easy way to select shulker for usage
    • [x] Skynet
      • Make bots communicate over whisper
      • Use different lanes
      • Assign jobs: Miner, Scaffolder, Restock etc
    • [x] MovementProcessor
      • [x] LiquidHandler > Move to liquids source when out of reach
      • [x] Make any width possible
      • [x] Commands to force specific mode, position and direction

    AutoObsidian:

    • [x] Fix that the player places last e chest but never breaks it
    • [x] Fix when in placing state and no e chest check for shulker again
    • [x] Fix when switching position to leave a chest
    • [x] Fix using the last echest in inventory

    Planned

    • [x] Maybe add setting for placing enderchests or portals all x blocks (auto milestones)\r\n- [x] With new settings and config module:
      • Save stats with server etc hashed
    • [x] Keep maparts at walls with prio at the block behind it
    • [x] Create costum blueprints to get something like buildrepeat
    • [x] Fix NCP internal catches
    • [x] Algorithm for dynamic fillerblock generation for support structures and liquid handling > liquid handler refactor

    Known issues

    • [x] AutoLog is not compatible with AutoReconnect > Should

    Troubleshooting

    • [x] Deactivate AntiHunger for faster block breaking
    • [x] If stuck check if AutoCenter is on MOTION to get moved to middle of the block (Baritone cant move exactly to block center)
    • [x] If placed block disappear increase the TickDelayPlace until it works
    • [x] Deactivate IllegalPlacements if the server requires (like 2b2t)
    • [x] Check if the Baritone process KAMI Blue Pauser is active in GUI. Sometimes it does not stop correctly

    Testing Server | Status ------------ | ------------- 2b2t.org | Working 0b0t.org | Working 8b8t.xyz | Working oldfag.org | Test pending 5b5t.org | Test pending 9b9t.com | Test pending

    enhancement new 
    opened by Avanatiker 7
  • Setting option for each server

    Setting option for each server

    For example when u log in to 2b2t the cpvp settings of rage will be the most u can get in 2b2t. And in another server like ec.me it will change to the max settings u can have at this server

    new 
    opened by Natan515 7
  • Add coal ore and lava to default XRay list

    Add coal ore and lava to default XRay list

    Adds coal ore and liquids to help poor players.

    opened by ZimnyCat 7
  • Allow people to pull req changes to the wiki

    Allow people to pull req changes to the wiki

    To the GitHub, and a link with a commend .wiki or .help. Where we can explain stuff to noobs like me

    new 
    opened by Natan515 6
  • Add checksum generation to the workflow

    Add checksum generation to the workflow

    There were no checksum generation actions, so I had to write an action for that. I can say firsthand, github actions are a pain.

    Source of action

    opened by ToxicAven 6
  • Elytra fly hack that works on 2b2t

    Elytra fly hack that works on 2b2t

    Fix elytra closing with Boost mode

    new 
    opened by Natan515 6
  • the highwaytools plugin

    the highwaytools plugin

    the highwaytools is very bugged due to it trying to place a block throw a block and it just brakes and gets stuck add a setting to tern this off or something idk

    bug 
    opened by luxuwu 2
  • Pluginify bookbot and add a file option

    Pluginify bookbot and add a file option

    Is your feature request related to a problem? Please describe. Not a problem, a suggestion from scorbett123#5313 (668115361257881600)

    Describe the solution you'd like For the plugin at NepNep21/BookBot to be transferred to the plugin organization, and the bookbot command be removed from the base mod

    Describe alternatives you've considered Making a PR to add a file mode to the base mod Making a plugin to add a file mode as a separate command

    Additional context There is a known issue with my implementation of file mode, pages are usually not filled as much as they could be, i couldn't find a way to fix that yet

    enhancement 
    opened by NepNep21 0
  • ClickGui drops FPS by a factor of 10

    ClickGui drops FPS by a factor of 10

    Describe the bug ClickGui drops FPS by a factor of 10

    To Reproduce Open ClickGui

    Expected behavior Have little to no noticeable performance impact

    Debug info Not relevant persistent across multiple machines

    Additional context / media https://i.ibb.co/M1VsxwK/2021-07-13-16-24-35.png https://i.ibb.co/cwxwSnc/2021-07-13-16-25-33.png

    bug 
    opened by B2H990 1
  • Scripting stuff

    Scripting stuff

    Is your feature request related to a problem? Please describe. It would be easier to automate tasks and create simple modules (similar to source games like TF2 scripts)

    Describe the solution you'd like ;Echo command to print a message to chat client side

    ;Wait command to pause a script for x ticks (would be affected by timer)

    Ability to load scripts from files (essentially just macros but would be ;bindable, with more work would show up in clickgui under seperate list with maybe settings like `%block wait 1 5 20%)

    Syntax: &[colour code], // and /* */, %[varName],[min],[default],[max]%

    Describe alternatives you've considered plugin system (harder to use for code illiterate to use)

    Additional context Potential instantburrow script using packetcanceler CPacketPlayer to glitch down (tested concept on .cc): image

    new 
    opened by Doogie13 2
  • Render distance loger

    Render distance loger

    Suggestion for making a module that logs everyone that is coming in your render distance when: they enter render distance + time when they leave render distance + time in a text file

    new 
    opened by SavexG 2
  • HoleSnap stopOnJump

    HoleSnap stopOnJump

    Is your feature request related to a problem? Please describe. holeSnap gets stuck when trying to go to a filled hole

    Describe the solution you'd like disable on jump mode to disable holesnap on jump

    Describe alternatives you've considered anchor, skill

    Additional context bottom text

    enhancement 
    opened by Doogie13 0
  • Itemsaver drops tools on the ground

    Itemsaver drops tools on the ground

    Describe the bug In the InventoryManager I enable ItemSaver. I build nether tunnels and have 5 pickaxes in my toolbar and would like to preserve them (not let them break). While digging, my inventory gets full of netherrack. When the tool reaches its durability limit, Lamba Client drops the tool on the ground, switches to another tool and keeps digging (yes, I use Lambda in combination with HighwayTools plugin).

    To Reproduce Exactly as described above

    1. Place 2 or more pickaxes in the hotbar
    2. Fill all of the inventory with Netherrack and free hotbar slots
    3. Activate item saver with whatever durability setting
    4. Activate HightwayTools to start using the items.
    5. When the first pickaxe reaches it's durability, it's dropped on the ground. It can't be picked up because inventory is full.

    Expected behavior Swap to another tool of the same type in the hotbar, or swap to another tool of the same type in your inventory. Don't drop the tool on the ground.

    Debug info n/a

    Additional context / media n/a

    bug 
    opened by graemeg 1
  • "Leave no Trace" mod

    Is your feature request related to a problem? Please describe. Right now, baritone leaves traces of player activity when using the ;b goto command or the ;b tunnel command. It walks away from drops before they can be picked up by the player. It places out of dimension blocks and out of structure blocks. It creates a lot of pillars and scaffolds. ;b backfill does backfill 2x1 tunnels most of the time. Future travel automation mods are likely to leave traces also.

    Even HighwayTools sometimes leaves drops behind, like shulkers, echests, obsidian and netherrack -- the netherrack is not valuable, but leaving the others is not optimal. "Leave no Trace" would automatically leave a cleaner worksite.

    Describe the solution you'd like We cannot cure all the problems with baritone, or its successors, but we can deal with a lot of common things to leave the traces left far more rare and harder to follow.

    This is a battery of measures, each one to reduce the player's footprint as they travel.

    • detect when the player causes new drops to form it its immediate vicinity and make sure to pause Baritone to pick them up.
    • when in a dimension or biome, immediately move all out-of-biome or out-of-dimension blocks off the hot bar so that they are not available to baritone to use as fillers. i.e. when stepping through a nether portal into the overworld, all netherrack is moved off the hotbar and overworld blocks are moved in.
    • move the axe off the hotbar so baritone will stop chopping trees and will simply go around them.
    • automatically destroy scaffolds behind you
    • automatically switch on backfill when it appears we are making a 2x1 tunnel with ;b tunnel.
    • automatically burn excess drops
    • in the overworld, move the silk touch pickaxe to the hotbar if one is available, and move others off the hotbar.

    Describe alternatives you've considered Current and future automatic travel and other automated tools are likely to leave traces. There is no alternative to this mod, it is a new invention.

    Additional context A good traveler leaves no tracks. -- Lao Tzu

    new 
    opened by HoratioGamer 0
  • Detect, Highlight, Log Traces to Support Tracking

    Detect, Highlight, Log Traces to Support Tracking

    Is your feature request related to a problem? Please describe. The problem is, 1.16 is coming, and with it, NewChunks will not work any more. Tracing 1.12.2 chunks in 1.16 will be easy in the nether, or over oceans, but new player activity after 1.16 will be impossible to track on the chunk level. There is other player activity that can be tracked in 1.12.2. The purpose would be stash hunting.

    Describe the solution you'd like

    Lets define the following as TRACES of player activity:

    • drops
    • out of biome / dimension blocks
    • defects in construction of structures -- like netherrack in a nether brick construction
    • the presence of 2x1 tunnels
    • the presence of pillars or scaffolds
    • the presence of cobblestone not related to lava and water.

    Yes, people can see some of these things, but Lambda can detect it over the horizon, beyond the trees -- by making it an ESP-like highlight of traces, tracking players gets a lot easier.

    If one had the ability to log the observation of traces and their coordinates, it would make possible the collection and compilation of player-activity traces that might be processed by an external program or correlated between players into an external database.

    It would then be possible to back-process patterns of traces into waypoint.json files, ideally for something like JourneyMap, or its 1.16 replacement.

    Describe alternatives you've considered At present there is no software that exports the coordinates of traces.

    Additional context This could be the start of a beautiful friendship.

    new 
    opened by HoratioGamer 0
  • Log Data to Latest.log

    Log Data to Latest.log

    Is your feature request related to a problem? Please describe. The problem is, data related to the state of a player account is inside Minecraft, and if one wants to automate things outside of minecraft, one must export data.

    Describe the solution you'd like A module called "LogData" with checkboxes for various data -- current player coordinates, current player speed, etc. I would like the ability to report telemetry to the latest.log file.

    Describe alternatives you've considered I have written programs to track the data coming out of Latest.log, however little of it relates to current in game player state so there are limited things that one can do.

    Additional context I have written many programs in the past that send a text message to my phone under certain circumstances. I generally use TCL to read data from files, and under certain conditions send messages.

    I wrote an extensive program to track my position in Q while in non-prio Q, make predictions, detect restarts, etc, and send notifications to my cell phone. I could literally be away from the keyboard, and I would get data that would allow me to plan daily activities without running back to my computer to check what position I was in Q.

    Right now, one of my accounts is on a long walk and I am forced to use a slower travel method than I am used to but, it slips out of a groove and travels even slower from time to time, or can be stopped by grief. It would be an option to write a minder program that alerts me when my player stops moving, or when its speed is reduced, so I can return to my computer and get it back on track.

    There are means to log death coordinates, however, a log of live coordinates leading to the death would sometimes be useful.

    The VisualRange detections are far more interesting to read in the logs in hindsight, if one can look up the coordinates where the player was when these alerts were made.

    new 
    opened by HoratioGamer 2
Releases(2.07.01)
Owner
Lambda
A Minecraft utility mod for anarchy servers
Lambda
Kotlin utility mod for Minecraft

Lambda is a free, open-source, Minecraft 1.12.2 utility mod providing a visionary system for plugins that allow customizing the clients features thank

Lambda 82 Aug 2, 2021
Gestor is an innovative open-source application for universal Minecraft mod management.

Gestor Gestor is an innovative open-source application for universal Minecraft mod management. About It combines three types of tools into a single ap

GestorMC 11 Jul 22, 2021
An under development minecraft plugin (1.8.8) to learning Kotlin language

CorePlus CorePlus is a minecraft plugin coded with Kotlin language. Still under development CorePlus will be an essential for each minecraft servers !

Gonz 3 Jun 16, 2021
Gradle plugin adding a task to run a Paper Minecraft server

Run Paper Run Paper is a Gradle plugin which adds a task to automatically download and run a Paper Minecraft server along with your plugin built by Gr

Jason 11 Jul 28, 2021
Minecraft NBT support for kotlinx.serialization

knbt An implementation of Minecraft's NBT format for kotlinx.serialization. Technical information about NBT can be found here. Using the same version

Ben Woodworth 11 Jul 1, 2021
YouTube Player library for Android and Chromecast, stable and customizable.

android-youtube-player android-youtube-player is a stable and customizable open source YouTube player for Android. It provides a simple View that can

Pierfrancesco Soffritti 2.4k Aug 4, 2021
Design Patterns implemented in Kotlin

Design Patterns In Kotlin ⚠️ New article about testing: Unit Testing with Mockito 2 Project maintained by @dbacinski (Dariusz Baciński) Inspired by De

Dariusz Baciński 4.8k Jul 28, 2021
Generic AST parsing library for kotlin multiplatform

kotlinx.ast kotlinx.ast is a generic AST (Abstract Syntax Tree) parsing library, Kotlin is currently the only supported language. The library is desig

null 140 Jul 27, 2021
Koi, a lightweight kotlin library for Android Development.

Koi - A lightweight Kotlin library for Android Koi include many useful extensions and functions, they can help reducing the boilerplate code in Androi

Hello World 507 Jul 11, 2021
BuildConfig for Kotlin Multiplatform Project

BuildKonfig BuildConfig for Kotlin Multiplatform Project. It currently supports embedding values from gradle file. Table Of Contents Motivation Usage

Yasuhiro SHIMIZU 187 Jul 28, 2021
The most complete and powerful data-binding library and persistence infra for Kotlin 1.3, Android & Splitties Views DSL, JavaFX & TornadoFX, JSON, JDBC & SQLite, SharedPreferences.

Lychee (ex. reactive-properties) Lychee is a library to rule all the data. ToC Approach to declaring data Properties Other data-binding libraries Prop

Mike 104 May 28, 2021
An example for who are all going to start learning Kotlin programming language to develop Android application.

Kotlin Example Here is an example for who are all going to start learning Kotlin programming language to develop Android application. First check this

Prabhakar Thota 54 May 31, 2021
StaticLog - super lightweight static logging for Kotlin, Java and Android

StaticLog StaticLog is a super lightweight logging library implemented in pure Kotlin (https://kotlinlang.org). It is designed to be used in Kotlin, J

Julian Pfeifer 27 Apr 10, 2021
A collection of small utility functions to make it easier to deal with some otherwise nullable APIs on Android.

requireKTX requireKTX is a collection of small utility functions to make it easier to deal with some otherwise nullable APIs on Android, using the sam

Márton Braun 67 Jul 20, 2021