Tushkan wrote: ↑Tue Feb 23, 2021 12:25 am
If someone has time and enthusiasm for it, he\she could grab R6S test server client and try ripping something from it using same scripts. If it works then chances are they are going to rewrite textures later this year. If scripts fail, that means reversing is to be done from scratch on those types of data.
so far everything seems to be working with Y6S1 test server day 2 files just like it did on live servers (Y5S4)
Flores UIDs (please note that high resolution normal and pbr textures are not yet available because the test server doesn't have a UHD texture pack DLC):
314015829770 - hat, facial hair, glasses model etc.
314015829782 - head model
317523773718 - body model
315244481482 - his drone controller model
318852118757 - RCE ratero drone model
kali hands 282404947161
kali legs 282404947170
kali upper 282404947185
I vaguely remember something about LODs being all included in the same mesh file, there's probably a part in Tushkan's script that assumes the highest and sorts it out. I found some different body mesh parts also for Aruni and didn't know what to make of it, but now I'm thinking those sound like the parts needed for first-person view.
Custard
Yeah, i think it for first person presentation hand, body and arms when get something special pose, lie down, sit etc. And it look bad sometime, in-game legs and arms are less than your teammate legs, arms who are lie down too.
darthme yes, I'll be glad if you help me setting up a github repo. I have some experience with git itself, but never tried to publish any repos. You can ping me in discord (Ulibos#3846) so we can make it in realtime.
yyred123 no, not yet. I'm reversing the file in an inefficent way. To do it well I have to dig up the actual game code and reverse that one to retrieve all the structures. For that I have to find a way to break in the middle of a serializer execution and dig my way up the stack. The fact that code is vm protected complicates things. If someone could help me with that, things would go faster. But I haven't found anyone ho has knowledge and time to guide me through an optimal workflow (although there are people who gave valuable hints). Until I get my hands on actual serializer, I doubt maps data will be available.
Custard, sorry for not dropping shaders dump, can't find time, but I do remember about it. And yes, LODs are embedded in same mesh file. It has 1 array of verts and 3 to 5 poly arrays that all point to those verts. Each such poly array is a LOD. This way they don't have to save exclusive set of verts along with UVs and skin weights per LOD.
Custard, I've updated the archive. dump_assets.py now also creates a 'shaders' folder and dumps shaders there. Each shader entry has vertex shader, fragment shader and a linkage table. I dump shaders code in separate txt files and I aslo dump linkage table as a raw data. I don't want to waste time guestimating it's tructures. In case you want to dig through it for more data (it has mask linkages at least), then search for:
## ## ## F8 00 00 00 00 // ## ## ## is a growing uint (01 00 00, 02 00 00, etc). It's a local UID reference
uint32 magic // local structure magic
uint32 name_length
char[name_length] name
char[] tail // this one is different depending on magic (both length and data types)
There is currently no way to automatically identify which models rely on each shader so you'll have to guestimate. I also named vert and frag shader based on an educated guess. I might have chosen a wrong order, keep that in mind.
Excellent! I am returning from a trip and will explore that soon.
Do you think there is a next step to take regarding the normals malformation issue? I was dismissive of it earlier in error, as it turns out some situations hide it's presence effectively. In particular, lighting the scene with only a relatively uniform HDRI with no harshness masks it (All I was used early on). Eevee also hides it better than Cycles. Adding contrast — attempting lighting in depth — makes the problem leap out.
Untitled-1.jpg
You do not have the required permissions to view the files attached to this post.
Custard wrote: ↑Thu Mar 11, 2021 10:46 am
lighting the scene with only a relatively uniform HDRI with no harshness masks it (All I was used early on). Eevee also hides it better than Cycles. Adding contrast — attempting lighting in depth — makes the problem leap out.
Tachanka's elite headgear is completely broken tho no matter what
Custard, unless someone provides an info on how game normals are packed in general (or, better yet, for Anvil Next in particular) I see now way of fixing it. All I can do right now is guesstimate which isn't very efficent.
About that shadow bug - what you see is also known as a shadow terminator issue that is pretty pronounced in Cycles ( https://developer.blender.org/T68920 ). Make a perfectly round sphere with not much poly loops, cast a backlight - and you will see same effect. There is a setting (in object tab iirc) that allows to adjust it. I'd rather play with that than try to finesse those normals =)