Help regarding .proto files |
Здравствуйте, гость ( Вход | Регистрация )
Help regarding .proto files |
Shark |
17.5.2022, 0:24
Сообщение
#1
|
Прохожий
Группа: ПрохожиеСообщений: 8 Регистрация: 5.5.2022 Пользователь №: 7 312 |
So, while trying to merge some of the Positiff's weapon changes with the UAP2.0.2 changes, one weapon in particular is giving me problems.
Pyro Bow. I want to have it visually looking like in UAP2.0.2 - shoots a flaming arrow, with an explosion when it hits. I want to have it functioning like in ATR - so that bonus flame damage depends on spending fuel. For now, i got kinda close: - shoots a normal arrow, plays explosion when it hits, spends fuel When i try to get that last "missing stuff" by comparing 006166.proto, i either break the .proto, or the game refuses to load. By "breaking the proto" i mean, the game no longer shows the item as part of my test background, but the game loads and works fine. "Game refusing to load" is simply the game crashing due to a malformed .proto file. I have pinpointed some critical portions of it, that seems to control some "flags", whether the item has a WeaponEyeCandy or a script attached, as well as which script triggers. 01CD is the two byte, little endian, hex of the script to invoke. 1609 seems to be important, because ATR's version has 24 there. UAP's has 08. There is alot of room (between 160E-2400) where UAP's version has non-zero values, but ATR's has just 00s. So, i'm kinda trying out to either just use UAP's values and keeping the important/critical sections with ATR values, or somehow superimpose the values (if they're a bitmask/flags, i essentially just OR them.) and that's what got me this close. However, i'm trying to get the *ideal* case. The explosion-on-hit is declared in WeaponEyeCandy. The script is in the proto file. The projectile also seems to be in the proto file. Currently, i'm just missing the projectile, which i suspect is somewhere in the 1609-160D range. example; - using 08 on 1609 and 00 on 160D gives me the flaming projectile, but doesn't invoke the script. - using 24 on 1609 and 6C on 160D gives me a normal projectile, but does invoke the script. The stuff in between - i don't know what those are, so they might be less important for now. Just blindly copying them over from UAP's proto can work, but proto breaks as soon as I make an illegal combo on these two important addresses/offsets. So, I can post some images / hex comparisons of ATR vs UAP proto file. But, to make this less of a X/Y problem (where I think the problem is X when it's really Y) - is there any good document on .proto files, on what each byte means, and what the values on those positions mean? I'm looking more for a "file specification" kind of thing, and less for a "I did this, here's a tutorial on how i did it where I explain just a few necessities which I had to change" like the ones i found so far. EDIT: I found Krupp's stuff, lets see where that gets me in the following days Image, of the stuff that currently works, My changed version of ATR's 006166.proto on the left, the UAP2.0.2+pyro visuals on the right. https://ibb.co/41PTXBC Сообщение отредактировал Shark - 17.5.2022, 0:48 |
Текстовая версия | Сейчас: 22.12.2024, 6:05 |