Skip to main content

External Scripting Framework for developers who play League of Legends.

Project description

ScuttleBuddy | External Scripting Framework (13.23)

This framework provides developers a way to develop applications by reading the external memory of League of Legends. This is meant to be used as a training tool for developers and not intended nor created to be used in online play.

Memory reading utilizes the pyMeow library.

ScuttleBuddy Setup

  • Create python environment with the tools of your choosing
    • conda, miniconda, venv, etc.
  • Install the ScuttleBuddy Framework into your virtual environment
    • pip install scuttlebuddy
  • Install pyMeow (v1.53.36)
    • Download the zip file from the link above and place into the root directory of your project / virtual environment.
    • Run the following command to install pyMeow:
      • pip install pyMeow-1.53.36.zip

Simple Usage

This script prints all enemies who have a higher health value than the local player.

from scuttlebuddy import LeagueReader
from scuttlebuddy.Models import PlayerEntity
from typing import List

if __name__ == '__main__':
    lr: LeagueReader = LeagueReader()

    local_player: PlayerEntity = lr.local_player
    enemy_players: List[PlayerEntity] = lr.enemy_players

    lp_health: float = local_player.health
    for enemy in enemy_players:
        e_health: float = enemy.health
        if e_health > lp_health:
            print(f'THICCer Player found: {enemy.name} with {e_health} hp')

Documentation

The base class for the entire framework is the LeagueReader class. This class gives access to everything in real-time during a LoL Match.

# Import the class
from scuttlebuddy import LeagueReader

# Initialize the class
lr: LeagueReader = LeagueReader()

The LeagueReader class gives access to multiple properties relating to in-game entities.

from typing import List
from scuttlebuddy.Models import PlayerEntity, MinionEntity

local_player: PlayerEntity = lr.local_player

team_players: List[PlayerEntity] = lr.team_players
enemy_players: List[PlayerEntity] = lr.enemy_players
all_players: List[PlayerEntity] = lr.all_players

team_minions: List[MinionEntity] = lr.team_minions
enemy_minions: List[MinionEntity] = lr.enemy_minions
all_minions: List[MinionEntity] = lr.all_minions

Models

The PlayerEntity class represents a player/champion in the game. This class holds numerous properties with real-time information about the player in-game.

  • name
  • level
  • team_id
  • is_targetable
  • health
  • max_health
  • mana
  • max_mana
  • ap
  • ad
  • bonus_attack_speed_percent
  • magic_resist
  • armor
  • magic_pen_flat
  • magic_pen_percent (NOT IMPLEMENTED)
  • armor_pen_percent (NOT IMPLEMENTED)
  • lethality
  • attack_range
  • game_pos
  • screen_pos
  • is_visible
  • on_screen

Currently Used Offsets

This is here just as a small documentation for developers working on the library

LocalPlayer
HeroList

ViewProjMatrix

ObjectName
Level
Team
Targetable
Health
MaxHealth
Mana
MaxMana
AbilityPower
BaseAttackDamage
BonusAttackDamage
BonusAttackSpeed
MagicResistance
BonusMagicResistance
Armor
BonusArmor
MagicPenetration
Lethality
AttackRange
XPosition
YPosition
ZPosition
IsVisible

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scuttlebuddy-0.0.9.tar.gz (10.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scuttlebuddy-0.0.9-py3-none-any.whl (9.8 kB view details)

Uploaded Python 3

File details

Details for the file scuttlebuddy-0.0.9.tar.gz.

File metadata

  • Download URL: scuttlebuddy-0.0.9.tar.gz
  • Upload date:
  • Size: 10.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for scuttlebuddy-0.0.9.tar.gz
Algorithm Hash digest
SHA256 a434013f50e7d6b30c75164fcad58780e2d4e2a7fafbb239afaf55f078435314
MD5 ab21f9fa5ca38293a8efe49a077017a7
BLAKE2b-256 3c9b933f7003899f179b552ead507f8ee84f1447a90eb1188367939bf59e5dd7

See more details on using hashes here.

File details

Details for the file scuttlebuddy-0.0.9-py3-none-any.whl.

File metadata

  • Download URL: scuttlebuddy-0.0.9-py3-none-any.whl
  • Upload date:
  • Size: 9.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for scuttlebuddy-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 363426f22ee3f9db258259a448f4fcc7c08141c31a82b44be6cf7121d426de15
MD5 cab81f5921596b3fde67ece3a134019b
BLAKE2b-256 112dd4c6bd0e5e26cc180d8ba7ab062e33f5083a4d202e8993c1ffb5206ef6b4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page