Page 1 of 1

Community Wad - How you can help

PostPosted: 18 Aug 2016, 00:17
by Xander9009
The Community Wad was never meant to be a one-man show, and thanks to lots of people helping, and a large base of mods that others users let me incorporate, it never was a one-man show. All of those people helped out, and if you're interested, you can, too. Below, I'll describe some of the things that always need to be done for the CW and how to do them. Some of them will require coding, but not all. Most of them can be done by anyone with just a basic understanding of the modding process.

1: Translations
Cards are often in need of translations. To translate a card, simply open it in a text editor like Notepad++, edit the language you're translating, and save it. Then, submit it like any other work.
Translating | Open
The cards in DotP use the following structure for translatable text.
Code: Select all
<LOCALISED_TEXT LanguageCode="en-US"><![CDATA[Intimidate]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="fr-FR"><![CDATA[Intimidation]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="es-ES"><![CDATA[Intimidar.]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="de-DE"><![CDATA[Einschüchtern]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="it-IT"><![CDATA[Intimidire]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="jp-JA"><![CDATA[威嚇]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ko-KR"><![CDATA[위협]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="ru-RU"><![CDATA[Устрашение]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="pt-BR"><![CDATA[Intimidar]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-CN"><![CDATA[威吓]]></LOCALISED_TEXT>
<LOCALISED_TEXT LanguageCode="zh-HK"><![CDATA[威嚇]]></LOCALISED_TEXT>
"<LOCALISED_TEXT" says this is translatable text. "LanguageCode="fr-FR"" tells you which language it's for. And everything between the brackets [] in the CDATA section is the text to be translated. Simply correct the text there and save.

The language codes are:
  • en-US: English - US
  • fr-FR: French - France
  • es-ES: Spanish - Spain
  • de-DE: German - Germany
  • it-IT: Italian - Italy
  • jp-JA: Japanese - Japan
  • ko-KR: Korean - Korea
  • ru-RU: Russian - Russia
  • pt-BR: Portuguese - Brazil
  • zh-CN: Simplified Chinese - China
  • zh-HK: Traditional Chinese - Hong Kong

Notes:
Please be careful when editing card files in Notepad (Notepad++ should never cause problems unless you've set it to ANSI manually). If you save the file as ANSI (an option in the save dialogue box), then any special characters (Chinese, Korean, Russian, and Japanese) will be corrupted.

If the language you're translating isn't present in the list of localized text, simply copy one the other languages, replace the "LanguageCode" with yours, and then continue from there. They should be kept in order of the language list above.

I'll discuss how to get the files to work with down below.


2: Adding New Art
Whether art is missing, messed up, or just low quality, finding and supplying new art is a visual improvement many will appreciate.
Art | Open
In order to add new art, you do NOT need the loose files like for translating or bug fixing. All you need is Gibbed Tools and the name of the art. To get Gibbed Tools, check the section below about Getting Started. To get the name of the art, right-click the card in RiiakShiNal's Deck Builder and choose "View Card". It'll open the card's code. In the bottom left corner, there's a tree of the XML data in the card. Click the tag "ARTID". The right side of the screen will narrow down to only show the ARTID tag. Everything in parentheses is the name of the art.

Next up, find and download the art you're going to submit. It should be either a PNG or a JPG file.

If you are planning to do a bunch of these, let me know. I've got an experimental program which can make it a lot easier. Otherwise, just use the below.

Paint is the only program really needed for editing the art. You're unlikely to do much with it besides cropping, which is just as easily done in Paint as any other program (more or less). Right-click the file and choose Edit and it'll open in Paint (assuming you're on Windows). Different types of art require different sizes.

The size for normal cards: 512x376 pixels
The size for colorless non-artifacts (like colorless Eldrazi such as Emrakul, the Aeons Torn): 356x512 pixels

In Paint, you can see the image's current pixel dimensions in the status bar at the bottom. First, drag the right and bottom to eliminate any whitespace or borders. If there are borders or whitespace on the left or top, then choose "Rotate->180" on the toolbar and get rid of that.
Next up, click "Resize" on the toolbar, and then click Pixels. Make sure "Maintain aspect ratio" is checked.

Set the top box to 512 (for normal images) or 356 (for full card art like eldrazi). If the bottom bar becomes LESS than 376 (for normal cards) or 512 (for eldrazi), then set the bottom box to 356 or 512. Click OK.

Now either the height or the width can be too large, but not both. Crop off the right or bottom by dragging in the sides until the image has the right dimensions. Rotate the image 180 degrees in order to try and keep the art subject centered if needed.

Once it's all done and the art is the right size (and is the right way up), save it.

Finally, open up your Gibbed Tools folder. Drag and drop the art file onto either "Tdx Convert Compressed.bat" or "Universal Gibbed Converter.exe". It'll produce a TDX file. Rename this to the ARTID you got earlier from the card. Submit this TDX file.

Notes:
If the card itself doesn't actually exist yet, but you know it's going to and want to submit the art for it, the ARTID will always be the card's name in all capital letters with spaces replaced with underscores. Ignore any punctuation. Treat accented characters like their non-accented counterparts.

Giant Growth -> GIANT_GROWTH
Æther Rift -> AETHER_RIFT
Dandân -> DANDAN
Déjà Vu -> DEJA_VU


3: Test New Cards
When a new set is released or in the process of being released, there are a lot of cards to code and test. Testing those cards usually results in them working fine, and all of that time testing could be better spent by those who code the cards actually fixing the (relatively) few cards that are actually bugged.
Testing | Open
In order to test cards, you'll need the newly coded card. If it's been added to the CW, then just wait for it to update and make sure you have the newest update. If it hasn't been added to the update, they should provide the card's XML somehow. Place that XML in your game folder (explained below). In either case, add it to a deck and test it out in-game.

For testing, I'd also suggest adding my testing card. Its name is Favor of the Gods. It doesn't show much in the way of abilities in the Deck Builder, but in-game, it'll have many more. It'll allow you to produce mana, produce tokens, populate, proliferate, grant basic abilities like haste, deal damage, add counters, draw cards, search your library, play cards, force creatures to block or attack, and even prevent the AI from doing anything except play lands. There are many other abilities, and they can be extremely helpful for getting the game into a state where any card can be tested without having to try and manage it through normal means.

If a card seems to work, try and imagine cases where it's ability might not work as they should and see if you can test that. Walk the Aeons, for example. Make sure your opponent has islands, too. This will let you make sure you can't return your opponent's lands to their hand for the buyback ability. Try playing it multiple times during the same turn and make sure you get all of the turns you should.

If something doesn't work, let whoever is coding the cards know specifically what didn't work about the card. Also, mention what did work about the card if it has a complicated ability or multiple abilities.

If you're unsure exactly how a card is supposed to work, so you're not sure if a card is working how it should, look it up on Gatherer.com. At the bottom of a card's page, it usually has rulings for how it's supposed to work in various circumstances.

Finally, for using XML files, you need a loose files directory in your MTG folder. The simplest way to get this is to open the deck builder, click "Tools->Setup Custom Data Folder". In your game folder, you'll now have a folder name "DATA_DLC_DECK_BUILDER_CUSTOM". If you go into that folder, you'll find a folder named "CARDS" a few levels in. Put the XMLs in that "CARDS" folder. Note that after adding cards to this folder, you'll need to click "Tools->Refresh Data" in the deck builder before it will be available in there.


4: Reporting Bugs
You can also help just by reporting bugs as you find them.
Bugs | Open
In order to report bugs, you'll need to either post in the Community Wad thread about it, or else submit a bug report form here. The form is my preference since it means that if I don't get around to it soon, it won't just get buried in the thread. That said, I tend to respond to thread-reported bugs faster (since they end up buried otherwise). Feel free to report it both ways if you want.

When reporting a bug, unless it's a very simple one, it'll important to know the context in which the bug was experienced. If you can, please provide some background. information if you think it might be relevant. For instance, if you playing against a custom deck instead of a vanilla deck, and the bug never happens against vanilla decks, then say so.

Providing too much information means I have to read a little more. Providing too little means the bug doesn't get fixed. If you don't mind, then please leave you name if you use the form. It's certainly not required, but if I have any questions, then I'll know who to ask about it.


5: Coding Cards
Finally, you can also code new cards yourself. This is most helpful when there are new sets released, but there are always more to code. We now have literally the majority of all cards coded, but there are still thousands to go.
Coding | Open
This will be the most difficult and complicated things you can do to help with the Community Wad. If you're up for giving it a shot, have a look at the tutorial. It's a bit dense, but I do promise you this: it's far simpler than the tutorial makes it seem. Most of what it goes over is stuff you could learn just by picking some cards and trying to code them or picking some that are already coded and examining them for a few days. It does, however, have some resources for things that are otherwise difficult to find, such as the list of XML tags and their possible attributes.

If you have questions about the tutorial, please direct those to this thread.


Getting Started | Open
In order to work with translations, you'll need the actual code. You can get this for any single card through the deck builder by right clicking a card and choosing View Card. Copy everything in the code section on the right and paste it into Notepad++ or another editor.

However, you can also just unpack the wad file and have a folder to browse through. In order to unpack the wad, you'll need Gibbed Tools. Gibbed Tools is a small group of files used for packing and unpacking wads and also for converting between PNG\JPG and TDX art files. You can get Gibbed Tools in the public tools Google Drive folder.

It's there in both a folder and a zip file. Just grab the zip file and unzip it wherever you want it. To unpack a wad file, just drop it onto the "Universal Gibbed Converter.exe" file. It'll take awhile for it to finish, but it'll make a folder with the wad's name which you can browse.


Submitting | Open
In order to submit your contributions to the CW, you'll need access to the Auto Upload folder. Go there and request access. Once I've granted you access, you can upload any XML, LOL, or TDX files there, and they'll be automatically added to the Community Wad the next time it repacks. Please note that after uploading a file, a program which is always running on my computer will quickly remove it from the folder and put it where it needs to go. If it shows it uploads and then quickly disappears, nothing went wrong. That's what's supposed to happen.

Re: Community Wad - How you can help

PostPosted: 15 May 2019, 09:45
by LexilconCondran
quite a ton of stuff to read, but it is helpful, i wanna bump this up
so others could see it



---I have my XML file and my TDX art file
how do i merge them into a useable card?

and is there anyway to merge all my custom decks and wads in my 2014 folder into 1 wad, its so cluttered with all the wads and mods and decks

Re: Community Wad - How you can help

PostPosted: 15 May 2019, 11:43
by LexilconCondran
Finally, for using XML files, you need a loose files directory in your MTG folder. The simplest way to get this is to open the deck builder, click "Tools->Setup Custom Data Folder". In your game folder, you'll now have a folder name "DATA_DLC_DECK_BUILDER_CUSTOM".


when i click Tools, that option is greyed out, i cant create a custom data folder

Re: Community Wad - How you can help

PostPosted: 15 May 2019, 16:42
by Xander9009
You can manually unpack all of the wads using Gibbed Tools Unpack, merge the subfolders, and then repack the folder. That's about the only way to go for merging mods. That's what already happened for the CW, it was all existing mods at the time merged into one. So, the other mods you have are likely redundant, but not necessarily. If you can point out any (official) cards in other mods that don't exist in the CW (and which mod they came from), I can get them added to the CW.

As for that option being grayed out, it disables itself if it detects the folder already existing. Does it already exist in your game folder?

Re: Community Wad - How you can help

PostPosted: 15 May 2019, 17:37
by LexilconCondran
Xander9009 wrote:You can manually unpack all of the wads using Gibbed Tools Unpack, merge the subfolders, and then repack the folder. That's about the only way to go for merging mods. That's what already happened for the CW, it was all existing mods at the time merged into one. So, the other mods you have are likely redundant, but not necessarily. If you can point out any (official) cards in other mods that don't exist in the CW (and which mod they came from), I can get them added to the CW.

As for that option being grayed out, it disables itself if it detects the folder already existing. Does it already exist in your game folder?
oh yeah, i had already had the custom folder, so i couldn't make another
but i began decompiling all wads and packing them into it
iam gonna fix all text errors and missing art across the board
that could help a bit, but so far its been interesting, i tried my hand at making some cards to

-the compiling fails to launch the game, once i made it a wad, it just crashed magic
-but works if its just a folder
-something is up there i guess

Re: Community Wad - How you can help

PostPosted: 25 May 2019, 09:38
by LexilconCondran
-i keep having a script log error ran in CW_NAMESET.lol
line 84

return t[sNameset:upper()][iIndex] <--- i tried this
return t[sNameset:upper()](iIndex)[index] <--- and this
i tried messing with it a few times to try and figure it out, but it usually says something is wrong with line 84, index


-i really like coding, and running tests in scripts, but i have been seeing a ton of busted cards
-me and my friend play magic alot, but everytime we run into crashes, freezes and script errors

Re: Community Wad - How you can help

PostPosted: 25 May 2019, 10:58
by LexilconCondran
[lua] [string "Content\Functions\CW_NAMESET.LOL"]:84: attempt to call field '?' (a nil value)

[lua] [string "NATURES_KISS_CW_4524_TITLE (CONTINUOUS_ACTION)~0x00000d58"]:2: attempt to index a nil value

--something is up with Molder
it destroys every card, not just enchantments or artifacts.


--migookman a ton of the cards uploaded by migookman are broken and do not function
like every card that has popped up in my script error log every time i close magic is his cards
=[

Re: Community Wad - How you can help

PostPosted: 26 May 2019, 16:33
by Xander9009
Call out cards, not modders.

----

As mentioned in the OP, the place to put bug reports is either the CW thread or by using the bug report form. This thread is more for how users can go about helping. Bug reports would take up the whole thread if they're put in here. Not a big deal, just trying to keep them consolidated to as few places as possible.

I haven't had a chance to look into these issues, yet. I've been working on implementing a new feature for the Deck Builder. Once that's done, I'll see about the issues fixed.