Вопрос Помогите с Entity List

  • Автор темы Автор темы godsend
  • Дата начала Дата начала
Начинающий
Начинающий
Статус
Оффлайн
Регистрация
12 Мар 2025
Сообщения
86
Реакции
8
Здраствуйте я столкнулся с проблемой при попытке прочитать сущности в entity list. Я использую Python и библиотеку Pymem.
У меня постоянно то ли адрес не валидный или происходит ошибка 299.
Python:
Expand Collapse Copy
import json

import pymem.exception

from memory.memory import MemoryManipulator

mm = MemoryManipulator("hl2.exe", "client.dll")

with open(r"C:\Users\kayim\PycharmProjects\CSSTrolling\memory\offsets.json") as f:
    offsets = json.load(f)


m_iHealth = int(offsets["C_CSPlayer"]["m_iHealth"], 16)
pos_x = int(offsets["C_CSPlayer"]["position_x"], 16)
pos_y = int(offsets["C_CSPlayer"]["position_y"], 16)
pos_z = int(offsets["C_CSPlayer"]["position_z"], 16)

def is_valid_address(addr):
    return 0x10000 < addr < 0x7FFFFFFF

def get_all_coordinates():
    max_player = 64
    step = 0x4

    entity_list_ptr_addr = int(offsets["global"]["entity_list"][1], 16)
    entity_list_ptr = mm.read(entity_list_ptr_addr, "longlong")

    for i in range(max_player):
        try:
            entity_ptr_addr = entity_list_ptr + i * step
            entity = mm.read(entity_ptr_addr, "int")

            if not is_valid_address(entity):
                print(f"[{i}] Невалидный entity ptr: {hex(entity) if entity else 'NULL'}")
                continue

            try:
                hp = mm.read(entity + m_iHealth, "int")
                x = mm.read(entity + pos_x, "float")
                y = mm.read(entity + pos_y, "float")
                z = mm.read(entity + pos_z, "float")
                print(f"[{i}] HP: {hp} | Координаты: {x}, {y}, {z}")
            except Exception as e:
                print(f"[{i}] Ошибка чтения полей: {e}")
        except pymem.exception.MemoryReadError as e:
            print(f"[{i}] Ошибка чтения entity: {e}")


get_all_coordinates()
 
во первых, что за position_x, разве не векОригин? во вторых, какая версия КСС, в третьих, было бы неплохо увидеть лист оффсетов

это гпт писал или че?
 

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.


Я хотел просто начать с малого. Просто вывод координат и здоровье текущих игроков. И я совсем новичок в этом. Я даже не уверен что нашел правильный лист.
Потому что иногда порядок C_CSPlayer не всегда одинаковый, иногда какой то C_CSPlayer может быть намного дальше от предыдущего, так же в листе есть прочие сущности и еще СBaseEntity
 
Назад
Сверху Снизу