It is currently 17 Nov 2025, 01:18
   
Text Size

The "2000 limit no more" CSV

Discuss Upcoming Releases, Coding New Cards, Etc.
PLEASE DO NOT REPORT BUGS HERE!

Moderators: Aswan jaguar, gmzombie, stassy, BAgate, drool66, CCGHQ Admins

Re: The "2000 limit no more" CSV

Postby Mok » 15 Dec 2011, 17:13

Gargaroz wrote:And, just as remainder, 0x80 is already taken for "special cards".
It was always used that way. Check out Damage and following types in card_data_t. All have the card type entry set to 0x80.
Mok
Programmer
 
Posts: 163
Joined: 23 Nov 2011, 14:28
Has thanked: 1 time
Been thanked: 61 times

Re: The "2000 limit no more" CSV

Postby foolosopher » 16 Dec 2011, 08:02

Mok wrote:Subtypes is one thing, card types is a different story. card_data_t uses only a byte (so 8 possible types) and that value is used in 100s of places within the code, so it's not easy to move or expand.
Why only 8 types, is a type mapped to a specific bit and not a value? Even if that's the case, couldn't we enum them and add new code to check the type and add effects/functionality? I mean something like
if (another value) go to c code and do a switch for the other value etc.
I long for the time where one man could make a difference...
foolosopher
 
Posts: 189
Joined: 19 May 2010, 20:53
Location: Greece
Has thanked: 13 times
Been thanked: 17 times

Re: The "2000 limit no more" CSV

Postby Mok » 16 Dec 2011, 09:55

foolosopher wrote:
Mok wrote:Subtypes is one thing, card types is a different story. card_data_t uses only a byte (so 8 possible types) and that value is used in 100s of places within the code, so it's not easy to move or expand.
Why only 8 types, is a type mapped to a specific bit and not a value? Even if that's the case, couldn't we enum them and add new code to check the type and add effects/functionality? I mean something like
if (another value) go to c code and do a switch for the other value etc.
New code is not the problem, finding and changing all uses in the old code will be a major pain.
Mok
Programmer
 
Posts: 163
Joined: 23 Nov 2011, 14:28
Has thanked: 1 time
Been thanked: 61 times

Re: The "2000 limit no more" CSV

Postby Gargaroz » 16 Dec 2011, 14:12

Guys, please continue the discussion about improvements of the main engine here:

viewtopic.php?f=56&t=5945
----
- Current / medium term task: adjusting the code for making Misdirection and such usable
- Long term task: inserting all the good stuff I left out from the "Golden Years" mod
Gargaroz
Programmer
 
Posts: 7097
Joined: 06 Nov 2009, 11:11
Has thanked: 82 times
Been thanked: 595 times

Re: The "2000 limit no more" CSV

Postby Sonic » 17 Dec 2011, 14:12

I need a confirmation as to the value used for 'Artifact Creature' in the 'Card type' field - as the value has been used somewhat inconsistently over the years.

Should it be '1' (Artifact) or '7' (Creature)?
According to the earliest manalink.csv I have - the original cards used '1' (Artifact) - can this be globally applied or will it affect some of the later coding?

@Gargaroz - Will you still be using '44' (Enchant Creature) in the 'Subtype' fields to stop the 'Artifact Creatures' showing up as non-creature artifact in the Deck Builder?
Working On: Life, the Universe, and Everything.
User avatar
Sonic
Apprentice
 
Posts: 827
Joined: 27 Feb 2010, 00:37
Has thanked: 3 times
Been thanked: 161 times

Re: The "2000 limit no more" CSV

Postby Mok » 17 Dec 2011, 16:16

I believe originally subcode 44 was only "creature" (not "artifact creature" or "enchant creature"). It was indeed used to determine "enchant creature" type spells. Artifact creatures didn't have the special subtype and were checked mostly by their card type in card_data (both artifact and creature bits set), their csv subtype was indeed "artifact". But I have no idea why/how that was changed later.
Mok
Programmer
 
Posts: 163
Joined: 23 Nov 2011, 14:28
Has thanked: 1 time
Been thanked: 61 times

Re: The "2000 limit no more" CSV

Postby 0rion79 » 17 Dec 2011, 16:23

Nay. It was me who switched it: it was used by Deckbuilder to filter non-creature artifacts from artifact creatures, only to help the player to better browse among cards.
Sadly, it was interferring with creature types as "golem", since artifact creatures originally didn't have any: it caused artifact creatures of not being affected by cards as Coat of Arms or "lords": placing it in column 2 was useless for some unknown reasons. So I did experiment a while and I saw that there were no side effects in using ID 44 to mark non-creature artifacts.
User avatar
0rion79
 
Posts: 1520
Joined: 24 Feb 2009, 18:33
Location: Italy
Has thanked: 94 times
Been thanked: 61 times

Re: The "2000 limit no more" CSV

Postby 0rion79 » 17 Dec 2011, 17:01

Ok, here is the Excel file that may be saved in CSV containing all of your improvements (I hope), starting from A.Jaguar's and ending with duplicates removal.

@Gargaroz, I've removed the second duplicate string each time I could find a duplicate. This has caused some slots to become empty and I've named them with "FREE 2 Be CODED" name to preserve original cards allocation. Feel free to use them or to delete them and re-number all cards just by dragging numbers from the top: Excel will do the job.
Some of those slots where originally used by tokens: I've moved all of ours at the end of the list and preserved the ones from Microprose in their original slot.
Also, I've seen that there there are the animated versions of lands and enchantments, but they miss all values and text so I couldn't check if they are adjacent to the original card.

Also, I've checked many times about duplicates but Excel tells me that there are no more: I don't trust se program, so if you may check it would be great.

PS: there is still plenty of cards in the beije list marked as 8th edition, instead than their original printing set.

PS: sorry for double posting!
Attachments
Manalink.rar
(589.72 KiB) Downloaded 279 times
User avatar
0rion79
 
Posts: 1520
Joined: 24 Feb 2009, 18:33
Location: Italy
Has thanked: 94 times
Been thanked: 61 times

Re: The "2000 limit no more" CSV

Postby Mok » 17 Dec 2011, 18:08

0rion79 wrote:Nay. It was me who switched it: it was used by Deckbuilder to filter non-creature artifacts from artifact creatures, only to help the player to better browse among cards.
Sadly, it was interferring with creature types as "golem", since artifact creatures originally didn't have any: it caused artifact creatures of not being affected by cards as Coat of Arms or "lords": placing it in column 2 was useless for some unknown reasons. So I did experiment a while and I saw that there were no side effects in using ID 44 to mark non-creature artifacts.
The engine always treated it like a "creature" subtype. But not all parts of it are the same. Some cards are/were coded better than other. There were simply too many programmers that made the original engine and later expanded it for both expansions. Same for deckbuilder, the data in cards.dat sometimes was insufficient so they used hacks like this (a lot of data wasn't updated for deckbuilder anyway ie. db type and db abilities fields in csv aren't really 'up to date' for many new cards). It doesn't really matter now, let's hope we'll be able to change the subtype mess into something more usable after the game is at least in working merged state.
Mok
Programmer
 
Posts: 163
Joined: 23 Nov 2011, 14:28
Has thanked: 1 time
Been thanked: 61 times

Re: The "2000 limit no more" CSV

Postby Aswan jaguar » 17 Dec 2011, 18:12

Great work Orion79,thanks. =D>
Just a minor thing you removed the poison snake token(and I put it twice #-o ) as there is a snake one?Because there are 2 cards that produce snake tokens, one snake tokens (without poison) but the other specifically puts Poison snake tokens with (poison obviously).
---
Trying to squash some bugs and playtesting.
User avatar
Aswan jaguar
Super Tester Elite
 
Posts: 8142
Joined: 13 May 2010, 12:17
Has thanked: 751 times
Been thanked: 486 times

Re: The "2000 limit no more" CSV

Postby 0rion79 » 17 Dec 2011, 18:17

Yes, I think I've made them separated: one produces artifact snake tokens, the other just snake tokens... but now I wonder if I've remembered to give them a different name O_o
User avatar
0rion79
 
Posts: 1520
Joined: 24 Feb 2009, 18:33
Location: Italy
Has thanked: 94 times
Been thanked: 61 times

Re: The "2000 limit no more" CSV

Postby Gargaroz » 18 Dec 2011, 01:52

Orion, plese replace all yours "FREE 2 Be CODED" with "Empty" and convert the xls file to a old-model csv (the one we're using before, without the updated expandion colums) and submit it here, so I could use it for testing.
I won't try to do it myself, I tried and the past and did a mess, so I'll leave this work to the professionals ;)
----
- Current / medium term task: adjusting the code for making Misdirection and such usable
- Long term task: inserting all the good stuff I left out from the "Golden Years" mod
Gargaroz
Programmer
 
Posts: 7097
Joined: 06 Nov 2009, 11:11
Has thanked: 82 times
Been thanked: 595 times

Re: The "2000 limit no more" CSV

Postby Sonic » 18 Dec 2011, 05:58

I've found a number of possible issues with the file.

Spelling mistakes and duplicates:

‘Aerathi Berserker’ (556) spelt wrong – rename ‘Ærathi Berserker’
‘Horned Sliver (1383)’ duplicated with ‘Horned Sliver’ (3208)
‘Indestructable Aura (682)’ spelt wrong - duplicated with correctly spelt ‘Indestructible Aura’ (1571)
‘Lim Dull High Guard’ (1407) spelt wrong - duplicated with correctly spelt ‘Lim-Dûl's High Guard’ (1573)
‘Weatherseed Faerie’ (1408) spelt wrong - duplicated with correctly spelt ‘Weatherseed Faeries’ (1574)
‘Kongming, Sleeping Dragon’ (1593) spelt wrong – rename ‘Kongming, “Sleeping Dragon”’
‘Order/ Chaos’ spelt wrong (needs space after ‘Order’) – rename ‘Order // Chaos’
All 'Flip Cards' need to be renamed with ‘//’

Missing Cards:

‘Goblin Lyre’ - Ice Age
‘Mind Whip’ - Ice Age
‘Raging Gorilla’ – Visions
‘Goblin Vandal’ – Weatherlight
‘Lotus Vale’ – Weatherlight
‘Oppression’ - Urza's Saga
‘Vizzerdrix’ - Starter 1999
‘Blessed Wind’ – Prophecy
‘Psychic Battle’- Invasion
‘Quirion Dryad’ – Planeshift
‘Infected Vermin – Odyssey
‘Border Patrol’ – Judgment
‘Goblin Turncoat’ – Legions
‘Dragon Wings’ – Scourge
‘Duskworker’ – Mirrodin
‘Ageless Entity’ – Darksteel
‘Orochi Hatchery’ - Champions of Kamigawa
‘Orochi Leafcaller’ - Champions of Kamigawa
‘Oppressive Will’ - Saviors of Kamigawa
‘Master of Etherium’ - Shards of Alara
‘Windwright Mage’ - Shards of Alara
‘Sign in Blood’ - Magic 2010 (coded)
‘Goblin Tutor’ - Unglued (coded)
‘Maelstrom Wanderer’ (coded)

Possibly more important missing entries

‘Elspeth Emblem’ - (required for ‘Elspeth, Knight-Errant’)
‘Koth Emblem’ - (required for ‘Koth of the Hammer’)
‘Venser Emblem’ - (required for ‘Venser, the Sojourner’)

‘Orochi Eggwatcher’ - Champions of Kamigawa - (required for ‘Shidako, Broodmistress’)
‘Opal Acrolith Animated’ - (required for ‘Opal Acrolith’)
‘Opal Titan Animated’ - (required for ‘Opal Titan’)
‘Lurking Evil Animated’ - (required for ‘Lurking Evil’)
‘Hidden Guerrillas Animated’ (required for ‘Hidden Guerrillas’)

‘CoA Special Effect’ - (required for ‘Chancellor of the Annex’)
‘Evil Twin Effect’ - (required for ‘Evil Twin’)
‘Madness Effect’ - (required for ‘Madness Keyword Ability’)
‘Rain of Filth Effect’ - (required for ‘Rain of Filth’)

‘** Handicap: 3 cards’
‘** Handicap: 4 cards’
‘** Handicap: 5 cards’
‘** Handicap: 6 cards’
‘** Handicap: 7 cards’
‘** Handicap: 8 cards’

‘Worm’ - Token (required for ‘Worm Harvest’)
‘Elemental Shaman’ - Token (required for ‘Hearthcage Giant’, ‘Hostility’, ‘Rebellion of the Flamekin’)
‘Demon’ - Token - (required for ‘Promise of Power’, ‘Skirsdag High Priest’)
‘Hornet’ - Token - (required for ‘Hornet Cannon’)

Not sure on this one - I noticed the original Assembly Worker has been renamed without the '-', does this mean we can include the cast-able 'Assembly-Worker' from Time Spiral?

If we get this all sorted - I can 'inject' my manalink converted 'oracle' file - and the data from the 4600+ or so previously coded cards into the csv.

And if I can actually get an answer to my earlier post - rather than a 'who did what':
I need a confirmation as to the value used for 'Artifact Creature' in the 'Card type' field - as the value has been used somewhat inconsistently over the years.

Should it be '1' (Artifact) or '7' (Creature)?
According to the earliest manalink.csv I have - the original cards used '1' (Artifact) - can this be globally applied or will it affect some of the later coding?

@Gargaroz - Will you still be using '44' (Enchant Creature) in the 'Subtype' fields to stop the 'Artifact Creatures' showing up as non-creature artifact in the Deck Builder?
Working On: Life, the Universe, and Everything.
User avatar
Sonic
Apprentice
 
Posts: 827
Joined: 27 Feb 2010, 00:37
Has thanked: 3 times
Been thanked: 161 times

Re: The "2000 limit no more" CSV

Postby 0rion79 » 18 Dec 2011, 08:38

Thank so much, Sonic!

I've added all the missing cards, including the animated version of Opal and Hidden enchantments from Urza's.
Now, there is the need to re-add the CSV codes stored in the file "To_Be_Re-Added" and, for easy of use, I've already renamed our CSV as "ManalinkCSV": it already hosts all the cards. If you turn it into a dat file, it *SHOULD* work even if most of the cards that we already have are set as uncoded (value 0).
In order to prevent error messages while converting it to DAT, I have had to replace all set names with Astral ID (8h).

@ Sonic, how have you been able to find so many missing cards and duplicates? I mean, also the ones with wrong typing in the name. You have been really helpful!

Also, about CSV, for now leav ID 44 for artifact creatues as it is now. For the other value, if you really have to choose one, then use the oldest tag: "1".

@ Gargaroz, is there nothing that we can do to fill those unused slots? It really didstubrs me :))
Also, can we at least rename the ones that are not really empty with something else, maybe as "game effect: XYZ"?
Attachments
CSV databases.rar
(1016.11 KiB) Downloaded 263 times
User avatar
0rion79
 
Posts: 1520
Joined: 24 Feb 2009, 18:33
Location: Italy
Has thanked: 94 times
Been thanked: 61 times

Re: The "2000 limit no more" CSV

Postby Gargaroz » 18 Dec 2011, 15:10

The CSV file cannot be converted to dat : ther should be some errors.
The error message is "ERROR at offset 0x734!", which should be line 1844. I checked and found nothing strange, so I dunno.
----
- Current / medium term task: adjusting the code for making Misdirection and such usable
- Long term task: inserting all the good stuff I left out from the "Golden Years" mod
Gargaroz
Programmer
 
Posts: 7097
Joined: 06 Nov 2009, 11:11
Has thanked: 82 times
Been thanked: 595 times

PreviousNext

Return to Development

Who is online

Users browsing this forum: No registered users and 5 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 5 users online :: 0 registered, 0 hidden and 5 guests (based on users active over the past 10 minutes)
Most users ever online was 9824 on 10 Nov 2025, 04:33

Users browsing this forum: No registered users and 5 guests

Login Form