Download pyMeow - Python game hacking library

Hexui Undetected CSGO Cheats PUBG Accounts


Gimme food hooman.
Meme Tier VIP
Fleep Tier Donator
Apr 24, 2020
How long you been coding/hacking?
3 years / few months
Merry Christmas!

I was annoyed of using all that different libraries which are required to build up some python hacks (pygame, pymem, glfw, winapi stuff etc.) so I've decided to start this thingy. This Project is coded in Nim with a Python bridge. It's basically C Code which is callable from python. (Similar to a Cython compiled library). So it's pretty performant aswell.

It should support all python 3 versions. However I've used it with python 64bit. It could be that it's not importable with 32bit. Some feedback would be appreciated.

The library is able to read, write from/to a process, spawn a fullscreen overlay and supports almost all required drawings. Examples are on the github repo.

GitHub Repo: Sann0/PyMeow

-- Memory:
  process_by_name(name: string) -> Process
  wait_for_process(name: string) -> Process
  close(Process) -> bool
  read_string(Process, address: int) -> string
  read_int(Process, address: int) -> int
  read_ints(Process, address: int, size: int) -> int array
  read_uint(Process, address: int) -> int
  read_uints(Process, address: int, size: int) -> int array
  read_int64(Process, address: int) -> int64
  read_ints64(Process, address: int, size: int) -> int64 array
  read_float(Process, address: int) -> float
  read_floats(Process, address: int, size: int) -> float array
  read_float64(Process, address: int) -> float64
  read_floats64(Process, address: int, size: int) -> float64 array
  read_byte(Process, address: int) -> byte
  read_bytes(Process, address: int, size: int) -> byte array
  read_vec2(Process, address: int) -> vec2
  read_vec3(Process, address: int) -> vec3
  read_bool(Process, address: int) -> bool
  write_int(Process, address: int, data: int)
  write_ints(Process, address: int, data: int array)
  write_float(Process, address: int, data: float)
  write_floats(Process, address: int, data: float array)
  write_byte(Process, address: int, data: byte)
  write_bytes(Process, address: int, data: byte array)
  write_vec2(Process, address: int, data: Vec2)
  write_vec3(Process, address: int, data: Vec3)
  write_bool(Process, address: int, data: bool)
  dma_addr(Process, baseAddr: int, offsets: array) -> int
  aob_scan(Process, pattern: string, module: Process["modules"]["moduleName"]) -> int
  nop_code(Process, address: int, length: int)
  inject_dll(Process, dllPath: string)
  page_protection(Process, address: int, newProtection: int = 0x40) -> int (old protection)
-- Overlay:
  overlay_init(target: string = "Fullscreen", borderOffset: int = 25) -> Overlay
  overlay_loop(Overlay) -> bool
  overlay_set_pos(Overlay, x, y: int)
-- Drawings:
  font_init(height: int, fontName: string) -> Font
  font_print(Font, x, y: float, text: string, color: rgb array)
  box(x, y, width, height, lineWidth: float, color: rgb array)
  alpha_box(x, y, width, height: float, color, outlineColor: rgb array, alpha: float)
  line(x1, y1, x2, y2, lineWidth: float, color: rgb array)
  dashed_line(x1, y1, x2, y2, lineWidth: float, color: rgb array, factor: int = 2, pattern: string = "11111110000", alpha: float = 0.5)
  circle(x, y, radius: float, color: rgb array, filled: bool = true)
  rad_circle(x, y, radius: float, value: int, color: rgb array)
  triangle(x1, y1, x2, y2, x3, y3: float, color: rgb array, alpha: float)
-- Vectors:
  vec2(x, y: float = 0) -> Vec2
  vec2_add(a, b: Vec2) -> Vec2
  vec2_del(a, b: Vec2) -> Vec2
  vec2_mult(a, b: Vec2) -> Vec2
  vec2_div(a, b: Vec2) -> Vec2
  vec2_mag(a, b: Vec2) -> float
  vec2_magSq(a, b: Vec2) -> float
  vec2_distance(a, b: Vec2) -> float
  vec2_closest(a: Vec2, b: Vec2 array) -> Vec2
  vec3(x, y, z: float = 0) -> Vec3
  vec3_add(a, b: Vec3) -> Vec3
  vec3_sub(a, b: Vec3) -> Vec3
  vec3_mult(a, b: Vec3) -> Vec3
  vec3_div(a, b: Vec3) -> Vec3
  vec3_mag(a, b: Vec3) -> float
  vec3_magSq(a, b: Vec3) -> float
  vec3_distance(a, b: Vec3) -> float
  vec3_closest(a: Vec2, b: Vec3 array) -> Vec3
-- Misc
  key_pressed(vKey: int) -> bool
  rgb(color: string) -> float array
  wts_ogl(Overlay, matrix: float array (16), pos: Vec3) -> Vec2
  wts_dx(Overlay, matrix: float array (16), pos: Vec3) -> Vec2
  set_foreground(title: string)
  mouse_move(overlay: Overlay, x, y: float)
Last edited:


Gimme food hooman.
Meme Tier VIP
Fleep Tier Donator
Apr 24, 2020
vector, wts functions and rgb function added. Coding a esp was never easier ;D
  • Like
Reactions: Petko123
Community Mods