HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1631  
Старый 28.05.2017, 22:06
Jack_Savage
Участник форума
Регистрация: 06.11.2016
Сообщений: 150
С нами: 5008255

Репутация: 18
По умолчанию

Цитата:
Сообщение от Снежок  

ты уверен что там всё правильно?
у меня так бывало, когда я ошибался с адресом на пару байт. и считывал по кускам два значения, которые в итоге выдавали какую-то ересь
float *position = (*(DWORD *)0xB6F5F0) ? (float *)(*(DWORD *)(*(DWORD *)0xB6F5F0 + 0x14) + 0x30) : NULL;

Если ты про это то оно работает и если на клиенте выводить его значение то все нормально
 
Ответить с цитированием

  #1632  
Старый 28.05.2017, 22:08
ishi
Постоянный
Регистрация: 17.01.2014
Сообщений: 493
С нами: 6483143

Репутация: 93
По умолчанию

Цитата:
Сообщение от Jack_Savage  

float *position = (*(DWORD *)0xB6F5F0) ? (float *)(*(DWORD *)(*(DWORD *)0xB6F5F0 + 0x14) + 0x30) : NULL;
Если ты про это то оно работает и если на клиенте выводить его значение то все нормально
не могу ничем помочь, отбой. :scratch:
 
Ответить с цитированием

  #1633  
Старый 28.05.2017, 22:17
SR_team
Флудер
Регистрация: 26.10.2013
Сообщений: 4,924
С нами: 6603505

Репутация: 183


По умолчанию

Цитата:
Сообщение от Jack_Savage  

float *position = (*(DWORD *)0xB6F5F0) ? (float *)(*(DWORD *)(*(DWORD *)0xB6F5F0 + 0x14) + 0x30) : NULL;
это чтение данных из памяти, ты использщуешь адреса для игры. В RakNet другие адреса. Да и вообще в RakNet они не нужны
 
Ответить с цитированием

  #1634  
Старый 28.05.2017, 22:21
Jack_Savage
Участник форума
Регистрация: 06.11.2016
Сообщений: 150
С нами: 5008255

Репутация: 18
По умолчанию

Цитата:
Сообщение от SR_team  

это чтение данных из памяти, ты использщуешь адреса для игры. В RakNet другие адреса. Да и вообще в RakNet они не нужны
Я это приложыл чтобы ясно было что за position...

Мне координаты из воздуха брать что ли...

Я отправляю float, принимаю float уже какой то не такой как надо...
 
Ответить с цитированием

  #1635  
Старый 28.05.2017, 22:25
itsLegend
Флудер
Регистрация: 23.03.2013
Сообщений: 2,696
С нами: 6915558

Репутация: 183


По умолчанию

Ты уверен, что в packet->data хранится только 12 байт, а не 13?
 
Ответить с цитированием

  #1636  
Старый 28.05.2017, 22:33
Jack_Savage
Участник форума
Регистрация: 06.11.2016
Сообщений: 150
С нами: 5008255

Репутация: 18
По умолчанию

Цитата:
Сообщение от legend2360  

Ты уверен, что в packet->data хранится только 12 байт, а не 13?
А это при чем тут?
 
Ответить с цитированием

  #1637  
Старый 28.05.2017, 22:43
san0
Постоянный
Регистрация: 15.12.2013
Сообщений: 412
С нами: 6530249

Репутация: 133
По умолчанию

Цитата:
Сообщение от Jack_Savage  

А это при чем тут?
К тому, что первый байт, возможно, есть ID пакета.
 
Ответить с цитированием

  #1638  
Старый 28.05.2017, 23:09
Jack_Savage
Участник форума
Регистрация: 06.11.2016
Сообщений: 150
С нами: 5008255

Репутация: 18
По умолчанию

Цитата:
Сообщение от san0  

К тому, что первый байт, возможно, есть ID пакета.
bsIn.IgnoreBytes(sizeof(RakNet::MessageID));

Исправил. Спасибо большое :3
 
Ответить с цитированием

  #1639  
Старый 29.05.2017, 15:43
ishi
Постоянный
Регистрация: 17.01.2014
Сообщений: 493
С нами: 6483143

Репутация: 93
По умолчанию

Можно как-нибудь выполнить объявление переменной для конкретной функции, не переобъявляя с каждой итерацией функции, и не делая глобальной? (и если кто будет отвечать, то заодно напишите, пожалуйста, окажет ли подобная "подгонка" положительное влияние на производительность, или это лишь усложнит задачу компу)

И ещё один вопрос назрел, пока писал. Я вот так "упрощаю" работу процессору (наверное, так выполнение должно быть быстрее)

C++:





Код:
char
*
PTS
;
char
*
ppts
=
new
char
(
sstring
[
144
]
)
;
unsigned
__int16 nocis
,
scrx1
,
screex
=
0
;
unsigned
char
red
,
green
,
blue
=
rand
(
)
;


и вот когда я пытаюсь так же объединить указатели на символьные массивы, как обычные переменные - мне выдаёт ошибку. Можно как-нибудь "упростить" объявление указателей, сгруппировать что ли для пущей производительности?
 
Ответить с цитированием

  #1640  
Старый 29.05.2017, 15:51
return
Участник форума
Регистрация: 23.10.2010
Сообщений: 125
С нами: 8186006

Репутация: 1
По умолчанию

Цитата:
Сообщение от Снежок  

Можно как-нибудь выполнить объявление переменной для конкретной функции, не переобъявляя с каждой итерацией функции, и не делая глобальной?
Один вопрос, для чего?

Читаю твои сообщения и не понимаю тебя... Зачем изобретать какую то дичь, если до тебя уже всё придумали?
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.