A | B | C | D | E | F | |
---|---|---|---|---|---|---|
1 | Neora Offset | Array Offsets | Size | Free | Usage | Description |
2 | 0 | d | move counter | something to do with walking and running animation | ||
3 | 4 | d | run counter | records first button press of run (<0 for left, >0 for right) | ||
4 | 8 | d | Invincible | value = time (value>0 will flash, value<0 will be invisible) | ||
5 | C | d | ||||
6 | 10 | d | x position | Округленная целочисленная версия X | ||
7 | 14 | d | y position | Округленная целочисленная версия Y | ||
8 | 18 | d | z position | Округленная целочисленная версия Z | ||
9 | 1C | d | сдвиг спрайтов по x (?) 0040E050 MOV EAX,DWORD PTR DS:[ESI+1C] вроде гдето в отрисовке используется. еще в процессе понимания | |||
10 | 20 | d | times of attack | Когда объект атакован, у него появляется в этом поле 1 | ||
11 | 24 | d | ✓ | unused | Не используется | |
12 | 28 | d | Pic. x gain | |||
13 | 2C | float d | x accl. | |||
14 | 30 | float d | y accl. | |||
15 | 38 | float d | z accl. | |||
16 | 40 | float q | x velocity | |||
17 | 48 | float q | y velocity | |||
18 | 50 | float q | z velocity | |||
19 | 58 | float q | x position | Плавающее значение X | ||
20 | 60 | float q | y position | Плавающее значение Y | ||
21 | 68 | float q | z position | Плавающее значение Z | ||
22 | 70 | d | Frame no. | Текущий кадр | ||
23 | 74 | d | Frame no. | Следующий кадр (если весь цикл wait выполнен) | ||
24 | 78 | d | Frame no. | адрес памяти с mpoint | ||
25 | 7C | d | Frame no. | |||
26 | 80 | b | Facing | 0 - повернут вправо, 1 - влево | ||
27 | 81 | b | ✓ | unused | Не используется | |
28 | 82 | b | ★ | unused | Зарезервировано в Neora 2.00+ для преобразований уже существующих float стандарта IEEE 754 в double | |
29 | 83 | b | ★ | unused | ||
30 | 84 | d | ||||
31 | 88 | d | wait counter | counts up from 0 until current frame's wait | ||
32 | 8C | d | cpoint catcher | the one being caught | ||
33 | 90 | d | cpoint timer | the one catch self | ||
34 | 94 | d | ? | Запись 0 на загрузке. В бою не активно. Не используется? Картер пометил эту часть как счетчик Arest | ||
35 | 98 | d | weapon type | Hover to see More | ||
36 | 9C | d | object no. weapon held | |||
37 | A0 | d | object no. holding self | |||
38 | A4 | d | ? | Запись 0 на загрузке. В бою не активно. Не используется? | ||
39 | A8 | d | ? | Запись 0 на загрузке. В бою не активно. Не используется? | ||
40 | AC | d | ? | Запись 0 на загрузке. В бою не активно. Не используется? | ||
41 | B0 | d | Fall point | |||
42 | B4 | d | Shaking | 0 = тряски нет value > 0 для атакующего value < 0 для жертвы если выставить вручную значение больше 0 - будет что-то вроде заморозки для объекта | ||
43 | B8 | d | Defend point | Картер: bdefend & armor | ||
44 | BC | b | ? | Запись 0 на загрузке. В бою не активно. Не используется? | ||
45 | BD | b | ✓ | Не используется | ||
46 | BE | b | Счетчик от нажатия A | При нажатии одной их клавиш управления байт заполняется 5, а после начинает потактово уменьшаться обратно до 0. Почему-то блок занимает два байта, причем отдельно работающих. Первый из них имеет типичный счетчик от 5. Во второй (C1) пишется следующее: mov byte ptr [esi+000000C1],03 Второй байт даёт Wait 3 задержку, прежде чем вы снова можете нажать блок. Именно по этой причине игрок не может удерживать блок постоянно и всё равно иногда открывается. | ||
47 | BF | b | Счетчик от нажатия J | |||
48 | C0 | b | Счетчик от нажатия D | |||
49 | C1 | b | Счетчик от нажатия D | |||
50 | C2 | b | Счетчик от нажатия > | |||
51 | C3 | b | Счетчик от нажатия < | |||
52 | C4 | b | Счетчик от нажатия ^ | |||
53 | C5 | b | Счетчик от нажатия v | |||
54 | C6 | b | Удержание ^ | 0 - не удерживается | 1 - удерживается Фактических отличий в байт-коде от нажатий нет | ||
55 | C7 | b | Удержание v | |||
56 | C8 | b | Удержание < | |||
57 | C9 | b | Удержание > | |||
58 | CA | b | Удержание A | |||
59 | CB | b | Удержание J | |||
60 | CC | b | Удержание D | |||
61 | CD | b | ^ | 0 - не нажимается | 1 - нажимается Фактических отличий в байт-коде от удерживаний нет | ||
62 | CE | b | v | |||
63 | CF | b | < | |||
64 | D0 | b | > | |||
65 | D1 | b | A | |||
66 | D2 | b | J | |||
67 | D3 | b | D | |||
68 | D4 | b | D (Блок) нажат Все байты принимают "01" означая готовность считать приём. | < \ > нажато Все байты принимают "02" при > Все байты принимают "03" при < остальные ветки 00 | A нажато Байт принимает значение "04" при > Байт принимает значение "05" при < | |
69 | D5 | b | J нажато Байт принимает значение "04" при > Байт принимает значение "05" при < | |||
70 | D6 | b | ^ нажато Все байты принимают "02", остальные ветки 00 | A нажато Байт принимает значение "03", остальные ветки 00 | ||
71 | D7 | b | J нажато Байт принимает значение "03", остальные ветки 00 | |||
72 | D8 | b | V нажато Все байты принимают "02", остальные ветки 00 | A нажато Байт принимает значение "03", остальные ветки 00 | ||
73 | D9 | b | J нажато Байт принимает значение "03", остальные ветки 00 | |||
74 | DA | D+A+J | 1 - сработало, 0 - не сработало | |||
75 | DB | D+A+A | ||||
76 | DC | D+J+A | ||||
77 | DD | D+J+J | ||||
78 | DE | ? | Запись 0 на загрузке. В бою не активно. Не используется? | |||
79 | DF | ? | Запись 0 на загрузке. В бою не активно. Не используется? | |||
80 | E0 | d | curing hp | Значение равное (лечение хп) + 1000. Если там значение меньше 1000, то "высасывание" здоровья из значения даже не начнется. Можно придумывать механику бонусных подлечиваний по стакам! :) | ||
81 | E4 | d | curing flag for HP bar | ячейка для определения и записи информации о подхиле | ||
82 | E8 | b | ||||
83 | E9 | b | ||||
84 | EA | b | Finisher Flag Check | Если перед противником находится кто-то с Kind 6 (состояние в ТБ), то атакующий будет получать значение 3 в данную ячейку, пока перед ним находится подобная цель. Значение обновляется постоянно. Как только цель вышла из кадра ТБ - происходит отсчет по Wait-1 Значение 3 записывается в следующей строке: mov byte ptr [edi+000000EA],3 Если перезаписать на другое число - персонаж сможет атаковать супер атакой куда более продолжительное время, после того как ввел кого-то в ТБ. Хорошо для механики Power-UP | ||
85 | EB | b | Что-то связано с переопределением хозяина снаряда? Или таймер? | |||
86 | EC | d | arest | Счетчик wait 5 по умолчанию, если значение отсутствует. Ежесекундная перезапись значения в 0 при неиспользовании. | ||
87 | F0 | b | object no.1 vrest | Картер: 跳台平面 \ Jumping plane | ||
88 | F1 | b | object no.2 vrest | |||
89 | F2 | b | object no.3 vrest | |||
90 | F3 | b | object no.4 vrest | |||
91 | F4 | d | Картер: 所屬跳台 \ belongs jumping | |||
92 | F8 | d | ||||
93 | FC | b | ||||
94 | FD | b | ||||
95 | FE | b | ||||
96 | FF | b | Картер: 1=防禦有效,2=盔甲防禦有效 \ 1 = defense effective, 2 = armor defense effective Не выглядит соответствующим. | |||
97 | 100 | d | Положение по X координате | |||
98 | 104 | d | Положение по Y координате | |||
99 | 108 | d | Положение по Z координате | |||
100 | 10C | d | Картер: 影子所在平面 \ the shadow of the plane |