i decided to make a new topic, just to keep all the info all together in the same first post or something. Nesa has already made a topic describing pretty much how stuff works this year, so i think there is no need to get into this a second time.

I am working on an Explorer for the 2K archives, which is in a capital [WIP] state, but that does not mean that there is no progress.

Quite some time now i am working on reading the game's textures and the last 2 days i managed to find some more (the rest one will stay on the other topic, i am to lazy to bring them here):D:D

I think though that i can add more fixes and tweaks on this, because of the DX10 textures that are there on some textures. There are some more things that i can implement using opengl which i haven't right now. Basically i implement things when i find that something is not working, so i need to get into a testing cycle to see which things work and which don't and make my adjustments accordingly.

Those kind of implementations allowed me to read those normal mapsl. These greenish-like normal textures are not absolutely "correct" and i have no idea if i can fix this. What is happening in fact is that the actual image is an rgb and opengl reads it as bgr. I need to find out how to work this out. Otherwise the whole texture structure is correct and i am so glad for that . The rest of the textures look good so far. It seems that this "channel-mixing" (thats how i call it) algorithm is the same for all textures, and i am also so glad for this

Except from that, all face textures (and basically most of the player textures) are 1024x1024. I start to believe that this game has THOUSANDS of textures, which in this manner of storing it is NOT easy to explore, but anyway

Oh and another thing that i almost forgot. I think i suck a bit on making comfortable gui interfaces so if anyone has a better interface concept in mind please to propose it here, and i'll be glad to implement it. If i like it of course xD

NBA2K15 Explorer allows a quick exploring of the 2K15 archives. Its interface is split into 3 sections. It offers the ability to load game archives based on user selection, and parse the contents of each again, after user interaction. For every subarchive opened there is the possibility to extract its contents to a desired location but also to preview them. Preview support for now limits to json files (on the Text Editor), OGG sound files (on the Media Player), ZIP files (on the Archive Explorer) and DDS files on the OpenGL viewer. It also offers an Information Panel, in order to provide information about the file currently open.

NBA2K15 Explorer is still under development so there is always room for improvement. There could be bugs around which i haven't yet found, or there could be files which do not still open, or give out errors on the console. For this particular reason, i have intentionally left the app run under an output console, which automatically opens when you are running the tool executable. So if anyone has noticed something wrong with the tool, grab a screenshot of the console and send it over.

How it works

DO NOT try to open anything before reading this, you will save much time and you will thank me later xD. Before opening anything, open the Preferences under the Options menu. From this preferences window you can select the archives of which file you want to explore. 1C, 1L and 1K together contain nearly 200,000 subarchives when the total of subarchives is 360,000. That means that if you still want to load those files and explore their contents, you will have to WAIT. And wait patiently, because it may take up to 7-10 minutes to load everything depending on the computer of course. I advice you to explore these files separately if you want to.

Now having your preferences set, the only thing left is to click open and select the 0A file. Thats it, after a while you will see all the archives in the treeview together with each one's subarchives listed. DO NOT try opening any other file. OPEN ONLY 0A file. This one contains all the information about all the rest files.

In order to explore a subarchive, simply double click on it. By double clicking the tool will ask you to open the file that the subarchive belongs, if its not already opened. By double clicking you will see all the subarchive contents on the down left list view.

Double clicking again on this listview will attempt to open the selected file.

NoteIf the file you seleted is a Zip file, its contents will appear on the Archive Explorer Tab. I have implemented a custom zip file parser, so you can again double click on any zip file subfile and the tool will try to preview it. For example if its a texture it will open in the OpenGL viewer, if its a json file it will open in the Text Editor.

File Exporting

IFF ContentsIn order to export subarchive contents (or in other words (mostly) IFF contents) ,on the Archive Contents listview, make your selection with the mouse, hit rightclick and click Export. A dialog will show up with saving directory options.TexturesIf you are mostly interested in textures, the best solution for exporting is via the OpenGL previewing window. After opening a DDS file, right click on the viewport and select Save Image. This will save your image in legacy dds format wherever you select to.

TODO

Add Import functions

Add 3D model preview support

Store user settings externally

Get rid of the open file dialogs and parse the file from the game directory directly

I'm really looking forward to your feedback, in order to make this tool better

gregkwaste wrote:Those kind of implementations allowed me to read those normal mapsl. These greenish-like normal textures are not absolutely "correct" and i have no idea if i can fix this. What is happening in fact is that the actual image is an rgb and opengl reads it as bgr. I need to find out how to work this out. Otherwise the whole texture structure is correct and i am so glad for that . The rest of the textures look good so far. It seems that this "channel-mixing" (thats how i call it) algorithm is the same for all textures, and i am also so glad for this

maybe read channels as BigEndian [Motorola]?rgb=bgr in BigEndian order

All men dream: but not equally.Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.This I did.

PeacemanNOT wrote:I appreciate what you guys are doing with the modding situation but it's almost been a month and I'm getting very impatient. Keep it up though I'm sure you guys will get it done.

well if i close company and kill all family and friends you could mod on game release date..we do have offline life..

wait..

All men dream: but not equally.Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.This I did.

PeacemanNOT wrote:Sorry I take you guys for some wasters sitting at a computer all day.... stop acting so defensive, I'm only joking around. I'm sorry if I offended you in any way

not defensive at all.. that was a joke...

All men dream: but not equally.Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.This I did.

Mad respect to all modders ,u guys do a phenomenal job figuring out those things ...I know ..I could not..I will wait no matter how long it takes ,it's well worth the wait ..thanks to all of u !!!!!!!!!

gregkwaste wrote:Those kind of implementations allowed me to read those normal mapsl. These greenish-like normal textures are not absolutely "correct" and i have no idea if i can fix this. What is happening in fact is that the actual image is an rgb and opengl reads it as bgr. I need to find out how to work this out. Otherwise the whole texture structure is correct and i am so glad for that . The rest of the textures look good so far. It seems that this "channel-mixing" (thats how i call it) algorithm is the same for all textures, and i am also so glad for this

maybe read channels as BigEndian [Motorola]?rgb=bgr in BigEndian order

When I read that thing It also comes to my mind that you should read it the other way around.Or make the opengl in reverse way.

You can now donate to me, to make me more motivated on patching! thank you for those who are supporting me.

gregkwaste wrote:Those kind of implementations allowed me to read those normal mapsl. These greenish-like normal textures are not absolutely "correct" and i have no idea if i can fix this. What is happening in fact is that the actual image is an rgb and opengl reads it as bgr. I need to find out how to work this out. Otherwise the whole texture structure is correct and i am so glad for that . The rest of the textures look good so far. It seems that this "channel-mixing" (thats how i call it) algorithm is the same for all textures, and i am also so glad for this

maybe read channels as BigEndian [Motorola]?rgb=bgr in BigEndian order

I only pass streams of compressed data in opengl so i need to tweak those streams in order to revert the order. I remember i had those problems before, and i think that the very same textures, with some header modification show properly in other software. I'll take a closer look on this.

yes but that prevent a lot of person from modding roster and other stuff ,imagine if the creator of 3dm and modtool have done the same , you think you will have all that great modder in the last few years modders spent their time why to ask them to spend also their money ?

Graveyard wrote:yes but that prevent a lot of person from modding roster and other stuff ,imagine if the creator of 3dm and modtool have done the same , you think you will have all that great modder in the last few years modders spent their time why to ask them to spend also their money ?

with respect Bro,

IMHO,,,

If you have the money for 2k15.....you also have the money for some quality tools for 10$...

problem here is that many guys "buy" pirated version of the game and always complain about everything; like no patch no support and bla bla blaI'm 100% sure of this

yes we have money for 2k15 but we dont want to waste money for a tool you remind me of people buying DLC for game , now every developer make an incomplete game and sell the rest in DLC , any way go buy vlad tool i will wait for nesa and greg

community is sharingi have posted tutorial about file research, posted and explained code for extracting iffs and unpacking them

focus on helping not waiting and talk about vlads money

we 3 should stop make modding posible so you wont complain about vlad-greg-me

common lets mod

All men dream: but not equally.Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.This I did.

Thats the point im not complaining about vlad he make good tool and work hard for it , and also not complaining about working together , my point was about sharing ( and not selling ) anyway that will be my last post i dont want that topic to be closed , and good luck for all of you

Who care if vlad want money for his tool. I want to mod this game very badly and is willing to spend some cash on the tool if it going to help this game. it's the only reason why i brought it for the pc this year.

Andrew wrote:A general reminder to be respectful to your fellow Forum members, and to please leave the moderating to us. Whether it's attacking Vlad because RED MC isn't free, or attacking people because they have a different point of view on the matter to you, it's not on.

We've explained the situation with RED MC being available at a price several times in the past. Our position is this: we understand where people are coming from as far as being disappointed that it's not free, because as a community, we have prided ourselves on providing free content over the years; indeed, charging for mods themselves actually does invite potential legal problems, because it would be profiting off someone else's intellectual property (the player's likeness, team trademarks, the game files, and so on). That's one of the main reasons why it's against the rules. We do make an exception for RED MC because of the time taken to develop it, and the fact that it's basically a third-party add-on, somewhat akin to a Gameshark or unofficial Smartphone accessory; it's something that Vlad has created himself from scratch, to be used in conjunction with another product.

Of course, if someone is willing and able to make a tool that does the same thing, and not charge for it, then they are certainly welcome to do that. Anyone who doesn't wish to pay for RED MC can use and support said other tool instead.

Andrew wrote:Again, I understand this is a sore point for some people, but I ask that we remain respectful and civilised when broaching it, and not let it permeate every discussion about the development of tools. If there's something that needs clarification, or you really feel we need to discuss the issue further, a separate thread in the Help & Requests section, or perhaps the NLSC Hub, would be more appropriate. As for this thread, and the other tool development threads, let's avoid any further bickering. Thanks.

Andrew wrote:A general reminder to be respectful to your fellow Forum members, and to please leave the moderating to us. Whether it's attacking Vlad because RED MC isn't free, or attacking people because they have a different point of view on the matter to you, it's not on.

We've explained the situation with RED MC being available at a price several times in the past. Our position is this: we understand where people are coming from as far as being disappointed that it's not free, because as a community, we have prided ourselves on providing free content over the years; indeed, charging for mods themselves actually does invite potential legal problems, because it would be profiting off someone else's intellectual property (the player's likeness, team trademarks, the game files, and so on). That's one of the main reasons why it's against the rules. We do make an exception for RED MC because of the time taken to develop it, and the fact that it's basically a third-party add-on, somewhat akin to a Gameshark or unofficial Smartphone accessory; it's something that Vlad has created himself from scratch, to be used in conjunction with another product.

Of course, if someone is willing and able to make a tool that does the same thing, and not charge for it, then they are certainly welcome to do that. Anyone who doesn't wish to pay for RED MC can use and support said other tool instead.

Andrew wrote:Again, I understand this is a sore point for some people, but I ask that we remain respectful and civilised when broaching it, and not let it permeate every discussion about the development of tools. If there's something that needs clarification, or you really feel we need to discuss the issue further, a separate thread in the Help & Requests section, or perhaps the NLSC Hub, would be more appropriate. As for this thread, and the other tool development threads, let's avoid any further bickering. Thanks.

I am really watching quietly what is going on with the tools available in the 2K community, and i would NEVER want to cause any trouble on anyone, but i can't stay out of the game on this one because either i like it or no, i guess i am the only one that can help vlad (and nesa of course) on textures and stuff for now, and i've already read somebody's post requesting me to help out. So here is my short and straight forward opinion and i won't return on this again.

I am really working hard on this new 2K stuff, not because i wait for something, but thats my hobby, and i learn so much stuff from this. I am currently a student so i don't have any or any -extra- income, but i would NEVER EVER EVER EVER sell any tool that i make. So i feel a bit akward on this but i don't find any meaning on giving information that i coped to find, on someone that his intention is to make money from it. I am sure vlad is an experienced fella, and he is going to find his way on everything. If he accepts giving the whole suite for free, i will help with all my heart, but i can't do anything in a situation like this.

gregkwaste wrote:I am really working hard on this new 2K stuff, not because i wait for something, but thats my hobby, and i learn so much stuff from this. I am currently a student so i don't have any or any -extra- income, but i would NEVER EVER EVER EVER sell any tool that i make.

I was thinking the same, when i was a high school/freshman college student. Anyway, keep up the good work! Maybe you'll end up in VC one day.

As for me, i don't use mods, i hardly play the game at all. So it's been 5 years since i stopped spending a lot of spare time playing video games. But there is a demand, and i have skills to satisfy this demand, that's why i charge the money (otherwise i would be doing something else to earn for a loaf of bread, and there would never be an editor).

I don't really ask for help. Would probably figure out how textures work myself at some point. But as i stated, RED MC can do pretty everything with textures (import/size-changing), and the inability to preview original textures is the only thing which is holding off the release of the tool, thus the whole modding process.So, up to you. Can help and make the modding possible as soon as tomorrow, also getting a special credit. Or wait for me to decode that myself. Or in case your tool gets released asap, i think, everyone would be grateful.

Anyway, i'm off to work now. Drop me a PM, if you decide to make the modding possible asap.

It make no sense for me, i dont understand this conversation. Im not a big fan of sell tools or mods, ofc i see small difference between mods and tools, all can edit, units can programming/decoding. Still all of us spend maaaaaany hours on mods or tools. For me the best solution is donating, free will. Like Vlad said, he can take this time and do something else, hes not doing this with love for this game and i see no problem with this. He want to earn money, no problem, its his choice, whats wrong with this guys, cmon. Greg want to do it freeware, great. But guys please dont judge them, its unfair.

edit: stop forcing those guys to work together, they will do their own way.

I was referring to vlad, not you bighort. If you're not going to provide me with a link to the thread, then why reply to me? Im 100% positive vlad read this thread as well, why make it such a big deal...

Vl@d Zola Jr. wrote:So, up to you. Can help and make the modding possible as soon as tomorrow, also getting a special credit. Or wait for me to decode that myself. Or in case your tool gets released asap, i think, everyone would be grateful

What if someone like Greg asked for help from you? That would probably speed up development of his own tool, beneficial to the community etc

Vl@d Zola Jr. wrote:So, up to you. Can help and make the modding possible as soon as tomorrow, also getting a special credit. Or wait for me to decode that myself. Or in case your tool gets released asap, i think, everyone would be grateful

What if someone like Greg asked for help from you? That would probably speed up development of his own tool, beneficial to the community etc

Vl@d Zola Jr. wrote:So, up to you. Can help and make the modding possible as soon as tomorrow, also getting a special credit. Or wait for me to decode that myself. Or in case your tool gets released asap, i think, everyone would be grateful

What if someone like Greg asked for help from you? That would probably speed up development of his own tool, beneficial to the community etc

He'd probably refuse because he would see no money from it.

Andrew was pretty clear in his request. I'm sorry you refuse to even make an attempt to consider it.

greg do what you think is best and release once readymoney/notmoney talk is endless

All men dream: but not equally.Those who dream by night in the dusty recesses of their minds wake in the day to find that it was vanity: but the dreamers of the day are dangerous men, for they may act their dreams with open eyes, to make it possible.This I did.

JBulls wrote:What if someone like Greg asked for help from you? That would probably speed up development of his own tool, beneficial to the community etc

If that happens, we'll find an answer to your question.Depends on the sort of help. But if i possess a piece of information, which i'm not looking to take any personal benefits from, i don't really see a point, why i would keep it secret.

JBulls wrote:What if someone like Greg asked for help from you? That would probably speed up development of his own tool, beneficial to the community etc

If that happens, we'll find an answer to your question.Depends on the sort of help. But if i possess a piece of information, which i'm not looking to take any personal benefits from, i don't really see a point, why i would keep it secret.

Well the only question i have atm, is how its possible to import files much bigger than the original ones, without tweaking the 0A offsets. Unless thats the way to actually do it or unless the game simply ignores the 0A, i am not sure

I can implement importers in order to import data back to the archives, but i want to find out at first how to add larger files in place of the originals. I think i have to make some tests on my own this time. Its easy to fix the local archive offsets, but i am really not sure what will happen with the rest of the archives whose addresses in 0A will not be correct.

gregkwaste wrote:I can implement importers in order to import data back to the archives, but i want to find out at first how to add larger files in place of the originals. I think i have to make some tests on my own this time. Its easy to fix the local archive offsets, but i am really not sure what will happen with the rest of the archives whose addresses in 0A will not be correct.

i'm quite finished with the first version of the app. I think it fullfills its job to easily explore all of the game files. Importers will be added in time.

I took a small break from that, and within an hour of searching i managed to parse a 3D player model, which (to be honest) was my very first intention when starting playing around with the 2K files.

I think that i'll manage to write an Importer script as well for Blender, just to let anyone play around with the models. The real deal for me are the stadiums but the player models are a good start i guess. My new trivial and skill earning goal will be to be able to preview the 3d models in the opengl viewer of the explorer. Until then Blender will do its job

Here is a quick preview of a player skeleton. No faces for now. I have already parsed some data which 99% are face triangle strips, but i need to fix my script a bit to make them work.