It is currently 30 Apr 2025, 02:19
   
Text Size

Information pending...

Moderator: CCGHQ Admins

Re: Information pending...

Postby Xander9009 » 28 May 2015, 13:57

Thanks firemind and Spirolone. Both of those versions worked for me this time. With both versions, I get two errors in 7Zip when extracting the produced files, but they still extract everything, so even with those it works. Not sure what caused the errors, though.


0 C:\Games\Magic\DATA_000.zip
1 Data error in '.METADATA\FileData.xml'. File is broken.

thefiremind wrote:EDIT 3: For those who are curious to see, I pasted the decompilable LOL contents in the 2015 section on the wiki.
I compared the file to 2014's to see what's changed and listed those changes in the talk page. Just a slightly more concentrated view of what we're most interested in.

Removed colours:
COLOUR_COLOURLESS = 0
COLOUR_X = 6
COLOUR_SNOW = 7

New characteristics:
CHARACTERISTIC_CANT_BE_BLOCKED_EXCEPT_BY_ALL_DEFENDING_CREATURES = 44
CHARACTERISTIC_CANT_BE_BLOCKED_BY_CREATURES_WITH_LESS_POWER = 45
CHARACTERISTIC_CAN_ATTACK_AS_THOUGH_DIDNT_HAVE_DEFENDER = 64
INT_CHARACTERISTIC_EXALTED = 1
PLAYER_CHARACTERISTIC_CANT_PLAY_LANDS = 7
PLAYER_CHARACTERISTIC_CANT_GAIN_LIFE = 23
PLAYER_CHARACTERISTIC_CANT_LOSE_LIFE = 24
DUEL_CHARACTERISTIC_DAMAGE_CANNOT_BE_PREVENTED

New filter constants:
FE_COUNTER = 7
FE_CAN_BE_ENCHANTED_WITH = 23
FE_IS_BEING_BLOCKED_BY = 24
FE_IS_BLOCKING_CREATURE = 25

New triggers:
TRIGGER_COUNTER_ADDED = 25
TRIGGER_STATE_TRIGGER = 86
TRIGGER_BECAME_MONSTROUS = 87
TRIGGER_EVOLVED = 88
TRIGGER_MANA_PAID = 89

New interrogation constants:
INTERROGATE_LIFE_GAINED = 1
INTERROGATE_LIFE_CHANGED = 2
INTERROGATE_BECAME_TARGET = 10
INTERROGATE_PREVIOUS_TURN = 2
Last edited by Xander9009 on 31 May 2015, 15:08, edited 1 time in total.
_______________________________
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
User avatar
Xander9009
Programmer
 
Posts: 2905
Joined: 29 Jun 2013, 07:44
Location: Indiana, United States
Has thanked: 121 times
Been thanked: 445 times

Re: Information pending...

Postby wybielacz » 29 May 2015, 11:03

thefiremind wrote:The structure of the ZED files 020, 021 and 022 seem easy enough when their only purpose is to add cards to the collection, although the necessity of repeating all the cards' code in a "booster" XML still seems like a waste to me. The question is: assuming that we can either find out how to make new ZED files ourselves (can't the process be reversed?) or bypass the signature check for WAD files, can we add an arbitrarily large number of cards then?
You don't need to repeat all the cards in the "boosters" XML, you just need put the card name and ID in a file in the CardPools directory and it will be available in the deck builder and card collection.
The limit of cards seems to be 1024, at least when i put a card with an ID higher then 1024 then the deck builder or card collection will be stuck on the loading screen.
wybielacz
 
Posts: 12
Joined: 23 May 2015, 11:07
Has thanked: 0 time
Been thanked: 2 times

Re: Information pending...

Postby thefiremind » 29 May 2015, 11:12

wybielacz wrote:The limit of cards seems to be 1024, at least when i put a card with an ID higher then 1024 then the deck builder or card collection will be stuck on the loading screen.
It seems you are way ahead... :D how did you manage to add cards? Did you build a new ZED file? A new WAD file (how did you solve the signature problem)?

1024 is quite a satisfying limit anyway, we could write a program that generates the CardPools file automatically based on the Cards folder content and then everyone is free to build their own ZED/WAD (whatever method you managed to use) with the cards they want to use, picked from a community pool we could set up together.
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Information pending...

Postby wybielacz » 29 May 2015, 11:58

thefiremind wrote:It seems you are way ahead... :D how did you manage to add cards? Did you build a new ZED file? A new WAD file (how did you solve the signature problem)?

1024 is quite a satisfying limit anyway, we could write a program that generates the CardPools file automatically based on the Cards folder content and then everyone is free to build their own ZED/WAD (whatever method you managed to use) with the cards they want to use, picked from a community pool we could set up together.
The game currently already uses IDs up to around 370 if i am correct. So there is still quite a lot left. I am not yet exactly sure why the game is stuck on the loading screen when i use an ID above 1024 but i suspect this is the limit.

I am currently using the 3DM first version of the game, where the Chinese added the possibility to load data from the "Content" directory ;) It is good for testing but nothing more :(

Building our own ZED files is practically impossible. I suspect those files are encrypted with RSA therefore without the private key we can't do nothing here. The public key, which i guess spirolone is using, allows only to decrypt those files.

The WAD signature check bypass like in the previous Magic games would definitely be the best and easiest way to load the data. And it is proven that the game loads those files just fine.
wybielacz
 
Posts: 12
Joined: 23 May 2015, 11:07
Has thanked: 0 time
Been thanked: 2 times

Re: Information pending...

Postby thefiremind » 29 May 2015, 12:40

wybielacz wrote:I am currently using the 3DM first version of the game, where the Chinese added the possibility to load data from the "Content" directory ;) It is good for testing but nothing more :(
Oh, that explains it. #-o

wybielacz wrote:The WAD signature check bypass like in the previous Magic games would definitely be the best and easiest way to load the data. And it is proven that the game loads those files just fine.
According to what Rick says here, it's a matter of patching the contents of a memory address while the game is running. Unfortunately I have no idea about how to discover which memory address is used this time (well, I have a theoretical idea but I don't know how to put it in practice) let alone make a DLL that patches it for me automatically. :(
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Information pending...

Postby wybielacz » 29 May 2015, 12:59

thefiremind wrote:According to what Rick says here, it's a matter of patching the contents of a memory address while the game is running. Unfortunately I have no idea about how to discover which memory address is used this time (well, I have a theoretical idea but I don't know how to put it in practice) let alone make a DLL that patches it for me automatically. :(
Yeah, i have already checked that out too. The memory address is different and I already spent some time looking for the address but without luck. If we would know know what the address is, making the DLL that patches the memory automatically should not be that hard. Basically the Chinese DLL is doing the same thing, it just points the game to load the data from a directory. The WAD/ZED files loading is right after the game is started so i guess we need to look somewhere there.
wybielacz
 
Posts: 12
Joined: 23 May 2015, 11:07
Has thanked: 0 time
Been thanked: 2 times

Re: Information pending...

Postby thefiremind » 29 May 2015, 13:14

By the way, did anyone have an idea about how the whole signature check thing works? In that same post, Rick said that the game hashes each WAD with SHA-256 algorithm. Once the hash of a WAD has been computed, what is it compared against? What makes a hash "good" for the check? I don't think that there's a list of "good" hashes stored inside the executable, otherwise it would mean they ported the list from DotP2014 into DotP2015 and there's no reason why they should have done that.
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Information pending...

Postby wybielacz » 29 May 2015, 13:27

thefiremind wrote:By the way, did anyone have an idea about how the whole signature check thing works? In that same post, Rick said that the game hashes each WAD with SHA-256 algorithm. Once the hash of a WAD has been computed, what is it compared against? What makes a hash "good" for the check? I don't think that there's a list of "good" hashes stored inside the executable, otherwise it would mean they ported the list from DotP2014 into DotP2015 and there's no reason why they should have done that.
I guess there must be a hash stored in the WAD file. The game then computes a new hash from the WAD file and compares it to the hash which is stored in the file.
It is probably a SHA-256 checksum. Maybe we could compute that by ourselves and put that in the WAD file?
wybielacz
 
Posts: 12
Joined: 23 May 2015, 11:07
Has thanked: 0 time
Been thanked: 2 times

Re: Information pending...

Postby thefiremind » 29 May 2015, 14:05

wybielacz wrote:I guess there must be a hash stored in the WAD file. The game then computes a new hash from the WAD file and compares it to the hash which is stored in the file.
It is probably a SHA-256 checksum. Maybe we could compute that by ourselves and put that in the WAD file?
That's what I thought. It would be strange that Rick thought it was better to bypass it rather than comply to the original format, but maybe it was faster that way given his own skills, or maybe he thought the shorter loading time was worth the effort... or both.

Here's a link where I uploaded the smallest original WAD from DotP2014, DATA_DLC_0002.WAD, for testing purposes:
Code: Select all
http://www32.zippyshare.com/v/mW1IMhjb/file.html
Theoretically, it should be possible to unpack and repack it with Gibbed Tools, then see what's different from the original. I tried to do that, and I saw that the repacked WAD is about 50 KB less (that might have nothing to do with the signature, though).
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Information pending...

Postby wybielacz » 29 May 2015, 16:12

thefiremind wrote:Here's a link where I uploaded the smallest original WAD from DotP2014, DATA_DLC_0002.WAD, for testing purposes:
Code: Select all
http://www32.zippyshare.com/v/mW1IMhjb/file.html
Theoretically, it should be possible to unpack and repack it with Gibbed Tools, then see what's different from the original. I tried to do that, and I saw that the repacked WAD is about 50 KB less (that might have nothing to do with the signature, though).
I already did that before. There is already a difference in the header where 1 byte out of the 12 doesn't match. I guess Rick has chosen to disable the signature check since it was easier and faster.
BTW, did Rick quit from this forum or why doesn't he come here anymore? I am pretty sure for him it would be a piece of cake to disable the WAD signature check again...
wybielacz
 
Posts: 12
Joined: 23 May 2015, 11:07
Has thanked: 0 time
Been thanked: 2 times

Re: Information pending...

Postby thefiremind » 29 May 2015, 18:04

wybielacz wrote:BTW, did Rick quit from this forum or why doesn't he come here anymore? I am pretty sure for him it would be a piece of cake to disable the WAD signature check again...
He didn't seem interested in DotP2015, and he should get a copy of it first in order to look at the memory addresses, which would be a waste of time if he doesn't plan on playing it. It's understandable.
This is his blog. You can notice that he has never put any of his DotP tools there... I wonder why.
< Former DotP 2012/2013/2014 modder >
Currently busy with life...
User avatar
thefiremind
Programmer
 
Posts: 3515
Joined: 07 Nov 2011, 10:55
Has thanked: 118 times
Been thanked: 722 times

Re: Information pending...

Postby sweetLu » 29 May 2015, 18:25

I sent him a note that we've (as in you guys) made some progress at modding 2015 and linked him to this thread. If he has any interest I'm sure he'll stop by. He does have a copy of 2015.

He did make an attempt in the beginning. I'm not sure what the actual road block was.
sweetLu
 
Posts: 181
Joined: 16 Jul 2014, 01:24
Has thanked: 21 times
Been thanked: 22 times

Re: Information pending...

Postby wybielacz » 30 May 2015, 23:55

Ok guys! I am happy to say that i have managed to disable the WAD signature check and i am able to load custom WADs which are packed with gibbed tools :) 2015 modding is really close now! The only thing that is missing now is to wrap it in a dynamic patcher DLL.
I still don't understand why Stainless made and is using those new encrypted ZED files but still left the possibility to load WADs in the game. In the end I guess the WADs will be our backdoor for 2015 modding :)
wybielacz
 
Posts: 12
Joined: 23 May 2015, 11:07
Has thanked: 0 time
Been thanked: 2 times

Re: Information pending...

Postby Xander9009 » 31 May 2015, 00:17

That's great to hear! :) I guess it's time I finally thought about buying the game.

With that, I think it might be time to discuss how everyone thinks we should handle modding 2015. I think it's safe to say that the Community Wad has been a success, and something similar could definitely be done for 2015. (In fact, the art wads could be used directly.) Many of the cards probably can be, as well. Is that how we want to continue, or do you guys think aspects of it need changed? It's been in use quite awhile, now, and figuring out what we'd like to see changed would be best done now, I think. I can definitely answer most questions from the modder's end of things.

If you guys think there's a better method than Google Drive, or if someone else wants the chance to take it over, please let me know. I'm more than willing to keep running it, but I know there are others with more experience that could probably handle various things better than I can. I'd love to find a different method for modder's to share the cards than Google Drive, but it seems the best available free, accessible option. I think if anyone wants to discuss it, heading to the original CW thread would be a good place for that discussion. viewtopic.php?f=99&t=14046
_______________________________
Community Wad - Community Wad Website - How to Help and Report Bugs
Discord: discord.gg/4AXvHzW
User avatar
Xander9009
Programmer
 
Posts: 2905
Joined: 29 Jun 2013, 07:44
Location: Indiana, United States
Has thanked: 121 times
Been thanked: 445 times

Re: Information pending...

Postby GrovyleXShinyCelebi » 31 May 2015, 03:31

Huh, two months before Origins is set to release and it's finally (almost) possible to mod 2015. Whelp, better late than never.

I'm all for the community WAD given the changes with 2015 from the previous games. Problem is someone posted here that there may be a hard limit of 1024 cards per WAD. If this is true wouldn't we have to end up storing the thousands of cards we're going to end up coding in different WADs and "switching" the card sets when we want to use different cards?
User avatar
GrovyleXShinyCelebi
 
Posts: 294
Joined: 12 Jun 2013, 18:23
Has thanked: 14 times
Been thanked: 37 times

PreviousNext

Return to 2015

Who is online

Users browsing this forum: No registered users and 1 guest


Who is online

In total there is 1 user online :: 0 registered, 0 hidden and 1 guest (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: No registered users and 1 guest

Login Form