Forums Tyrant

Automatic deck optimization page 15

1333 posts

Flag Post

Hi guys,

I need help in using this system.
When i downloaded my card list into the system and ran it… it said

error in file ownedcards.txt, the card “Pip, the epic arbiter” does not seem to be a valid card.

I presume its due to the card list being outdated. Is there any updates for this system that I could download? Or no updates and I have to change the system used?

 
Flag Post

I read Kevin’s reply but Lefty’s system seems different?
Im not a techie btw ..

 
Flag Post
Originally posted by jinraidx:

I read Kevin’s reply but Lefty’s system seems different?
Im not a techie btw ..

Please post in lefty’s thread. There are solutions to the issue there. http://www.kongregate.com/forums/65-tyrant/topics/313937-automatic-deck-optimization-leftylinks-thread

 
Flag Post

Upon arrival of new missions updated mission.xml / cards.xml but getting the necrogeddon conflict now. Win xp. I hear its an old issue.

 
Flag Post
Originally posted by Acrat:

Upon arrival of new missions updated mission.xml / cards.xml but getting the necrogeddon conflict now. Win xp. I hear its an old issue.

open cards.xml with wordpad
find string

<!-- <replace>862</replace> -->

replace with
862

save.

I have a request .. is possible to implement something that print current optimized deck when stopping with control-c ?? this to avoid long calculations when deck is already good enought.

 
Flag Post

After fixing the necro error, another appears…

While trying to find the card with id 0: no such key in the cards_by_id map.

Edit:

I grabbed my old copy of cards.xml and copied and pasted the 0 card into the new cards.xml…

0 Infantryy basicinfantry.jpg 1 2 0 2 1 200 1 1000

This fixed the issue.

Also, if you take the comma out of Pip’s name here in the cards.xml (and others with a comma like Kogath) then you can add it to custom.txt without the comma but you also have to make sure that ownedcards.txt is comma free too. This works good.

 
Flag Post

Fix for the upgraded cards & alt necrogeddon:

1. Fansite starts outputting the list of cards with their ids: [61](3)
2. The sim identifies name collisions and adds a suffix for the cards with a higher id (like *, **, ***, etc).
3. Users can now use Malgoth* for the upgraded card

Challenges:
- None for the fansite, this is a trivial change
- Sim needs:
1. Small parsing change for ownedcards.txt, fairly trivial
2. To identify the conflicting names when ‘organizing’ the cards. This is fairly trivial when we assume only 2 conflicting cards, with more it gets a little more complicated. The card with the higher id gets the *.
3. There is no step 3

 
Flag Post

Some of my friends prefer:
- Change ownedcards.txt to make something like “Vigil2(2)”.
- Change cards.xml and rename upgraded cards like “Vigil2”.
Then rock.

 
Flag Post

I saw that leftylink closed his (her?) thread, so I feel that I should post something here. I have made a few changes to the code, so that it will work for the upgraded cards. They now show with an * following their name. For example, upgraded Xeno Interceptor is Xeno Interceptor*.

I also fixed the Necrogeddon issue that has been coming from the cards.xml file. Instead of exiting the program, the program will now print an error message and continue (while ignoring that particular card). In the future, this should probably be improved so that it reads as card[alt_id]. Though this will be a tad more confusing for those who don’t know what a card id is, I feel that it is the best way to prevent such name collisions from happening in the future.

I also added a “sim” option so that you can run decks without having to optimize them.

I don’t know exactly what to do with the code, so below, you will find patch files.

Cards.cpp patch: http://pastebin.com/W0z2ns73
Tyrant_optimize.cpp patch: http://pastebin.com/5jf7XRXz
Xml.cpp patch: http://pastebin.com/cfz5YrBd

Hopefully, someone finds this useful. Also, note that I used andor’s git repository for these patches.

 
Flag Post
Originally posted by akumaxx_ws:

Some of my friends prefer:
- Change ownedcards.txt to make something like “Vigil2(2)”.
- Change cards.xml and rename upgraded cards like “Vigil2”.
Then rock.

That would require cooperation from Synapticon. Can’t see that happening.

 
Flag Post
Originally posted by Aapje:
Originally posted by akumaxx_ws:

Some of my friends prefer:
- Change ownedcards.txt to make something like “Vigil2(2)”.
- Change cards.xml and rename upgraded cards like “Vigil2”.
Then rock.

That would require cooperation from Synapticon. Can’t see that happening.

No, he was referring to manually changing your ownedcards.txt file and manually editing your local copy of cards.xml

This has nothing to do with Synapticon… This workaround is just so you can use the simulator easier.

 
Flag Post
Originally posted by Moraku:
Originally posted by Aapje:
Originally posted by akumaxx_ws:

Some of my friends prefer:
- Change ownedcards.txt to make something like “Vigil2(2)”.
- Change cards.xml and rename upgraded cards like “Vigil2”.
Then rock.

That would require cooperation from Synapticon. Can’t see that happening.

No, he was referring to manually changing your ownedcards.txt file and manually editing your local copy of cards.xml

This has nothing to do with Synapticon… This workaround is just so you can use the simulator easier.

For the code I wrote, all you would need to do is add a * next to the card. I suppose most of the 3 party devs should talk about how best to handle these upgraded cards, but I wouldn’t include myself in those discussions.

 
Flag Post
Originally posted by Kyrossian:
Originally posted by Moraku:
Originally posted by Aapje:
Originally posted by akumaxx_ws:

Some of my friends prefer:
- Change ownedcards.txt to make something like “Vigil2(2)”.
- Change cards.xml and rename upgraded cards like “Vigil2”.
Then rock.

That would require cooperation from Synapticon. Can’t see that happening.

No, he was referring to manually changing your ownedcards.txt file and manually editing your local copy of cards.xml

This has nothing to do with Synapticon… This workaround is just so you can use the simulator easier.

For the code I wrote, all you would need to do is add a * next to the card. I suppose most of the 3 party devs should talk about how best to handle these upgraded cards, but I wouldn’t include myself in those discussions.

I like using * because people are already using it in forums and chat to describe upgraded cards.

 
Flag Post

Is there a compiled working version somewhere?

 
Flag Post

Now all we need is to implement achievements too, it shouldn’t be impossible, they are basically all counter-based, like count how many times the skill x was used, count how many of card x was used or count how many card x got destroyed. And the rest is just -turnlimit.

 
Flag Post

Well one of my friends gives this joke:

Dracorex99: Oops, I cannot hold this Vigil127 back.
Longshot333: My 300 Health can stop him.


For Card Image Generator, I need these at least:
Upgraded Set Icon, Level 1 indicator, Level 2 indicator.
Then, by adding 2 parameters, something like “level_icon, vis_level_icon” to CSV, and modify the master template, it can be done.

 
Flag Post
Originally posted by Kyrossian:

I don’t know exactly what to do with the code, so below, you will find patch files.

Cards.cpp patch: http://pastebin.com/W0z2ns73
Tyrant_optimize.cpp patch: http://pastebin.com/5jf7XRXz
Xml.cpp patch: http://pastebin.com/cfz5YrBd

Hopefully, someone finds this useful. Also, note that I used andor’s git repository for these patches.

Hello

Could you post some instructions how to apply this patch? Or place patched files somewhere?

Thanks in advance

 
Flag Post
Originally posted by planczl:
Originally posted by Kyrossian:

I don’t know exactly what to do with the code, so below, you will find patch files.

Cards.cpp patch: http://pastebin.com/W0z2ns73
Tyrant_optimize.cpp patch: http://pastebin.com/5jf7XRXz
Xml.cpp patch: http://pastebin.com/cfz5YrBd

Hopefully, someone finds this useful. Also, note that I used andor’s git repository for these patches.

Hello

Could you post some instructions how to apply this patch? Or place patched files somewhere?

Thanks in advance

http://www.kongregate.com/forums/65/topics/313937?page=9#posts-6777455
Thanks Kyrossian. Updated the repository.

  • Speed up for raids.
  • Remove top commanders, that is, all commanders are top. Add them back by your own as you wish. :)
  • Ignore the particular duplicated Necrogeddon card.
  • Ignore commas (,) in card names. (Pip Epic Arbiter et al.)
  • Use star (*) suffix for upgraded cards.

No need manually update cards.xml for Necrogeddon/Pip/upgraded.
But you need manually update ownedcards.txt to add * for upgraded cards (until the Fansite does the favor for us :).

 
Flag Post
Originally posted by andor9:

http://www.kongregate.com/forums/65/topics/313937?page=9#posts-6777455
Thanks Kyrossian. Updated the repository.

  • Speed up for raids.
  • Remove top commanders, that is, all commanders are top. Add them back by your own as you wish. :)
  • Ignore the particular duplicated Necrogeddon card.
  • Ignore commas (,) in card names. (Pip Epic Arbiter et al.)
  • Use star (*) suffix for upgraded cards.

No need manually update cards.xml for Necrogeddon/Pip/upgraded.
But you need manually update ownedcards.txt to add * for upgraded cards (until the Fansite does the favor for us :).

Who runs the fansite, so that we can talk to him/her?

And that’s some awesome work!

 
Flag Post

Hmm, I’ll see if I can create a bookmarklet that can efficiently export a better ownedcards.txt.

Hopefully this will generate enough Karma to get me an achievement supporting build in a near future. ;)

Lo and behold, here it is http://paste2.org/p/2804974
No clue how to bookmarklet it but if you can run stuff from any dev console, this works.

 
Flag Post

How to compile andor9’s Tyrant Optimize:

1) Download and install MinGW: http://nuwen.net/files/mingw/mingw-9.6.exe.

2) Explore the root folder of MinGW and execute the file set_distro_paths.bat, a command prompt window will appear.

3) Insert this commands:
git clone git://github.com/andor9/tyrant_optimize
cd tyrant_optimize
git checkout andor-integration
mkdir obj
make

4) Now you need to download the XML files of the game, you can do it directly with MinGW, insert this commands:
wget -O cards.xml http://kg.tyrantonline.com/assets/cards.xml
wget -O raids.xml http://kg.tyrantonline.com/assets/raids.xml
wget -O missions.xml http://kg.tyrantonline.com/assets/missions.xml
wget -O quests.xml http://kg.tyrantonline.com/assets/quests.xml
wget -O achievements.xml http://kg.tyrantonline.com/assets/achievements.xml

5) READY, close the command prompt window and in the root folder of MinGW you will see a new folder called “tyrant_optimize”, explore it and delete everything except tyrant_optimize.exe and the XML files.



Thanks to catepillar, he made this guide, I just took it and simplified it:
http://www.kongregate.com/forums/65/topics/313937?page=1#posts-6629559

 
Flag Post

Andor’s version, compiled on Win Home 7 Pro. No idea if it will work on your computer.I think I modified the cards.xml file so I can run sims with upgraded cards. download fresh files if you want.

http://www.hunterthinks.com/solo/games/T_O_Andor_2013_1_21_Win_Compiled.zip

 
Flag Post
Originally posted by Kyrossian:

I saw that leftylink closed his (her?) thread, so I feel that I should post something here. I have made a few changes to the code, so that it will work for the upgraded cards. They now show with an * following their name. For example, upgraded Xeno Interceptor is Xeno Interceptor*.

I also fixed the Necrogeddon issue that has been coming from the cards.xml file. Instead of exiting the program, the program will now print an error message and continue (while ignoring that particular card). In the future, this should probably be improved so that it reads as card[alt_id]. Though this will be a tad more confusing for those who don’t know what a card id is, I feel that it is the best way to prevent such name collisions from happening in the future.

I also added a “sim” option so that you can run decks without having to optimize them.

I don’t know exactly what to do with the code, so below, you will find patch files.

Cards.cpp patch: http://pastebin.com/W0z2ns73
Tyrant_optimize.cpp patch: http://pastebin.com/5jf7XRXz
Xml.cpp patch: http://pastebin.com/cfz5YrBd

Hopefully, someone finds this useful. Also, note that I used andor’s git repository for these patches.

Are these patches to leftlylink’s code or Andor’s code?

 
Flag Post

Tyrant Optimize already compiled:
tyrant_optimize (28 JAN 2013).zip

The zip contains:
tyrant_optimize.exe
cards.xml
raids.xml
missions.xml
quests.xml
tyrant_optimize BAT.bat (my batch file for testing decks, you can delete it).


 
Flag Post
Originally posted by hunterhogan:
Originally posted by Kyrossian:

I saw that leftylink closed his (her?) thread, so I feel that I should post something here. I have made a few changes to the code, so that it will work for the upgraded cards. They now show with an * following their name. For example, upgraded Xeno Interceptor is Xeno Interceptor*.

I also fixed the Necrogeddon issue that has been coming from the cards.xml file. Instead of exiting the program, the program will now print an error message and continue (while ignoring that particular card). In the future, this should probably be improved so that it reads as card[alt_id]. Though this will be a tad more confusing for those who don’t know what a card id is, I feel that it is the best way to prevent such name collisions from happening in the future.

I also added a “sim” option so that you can run decks without having to optimize them.

I don’t know exactly what to do with the code, so below, you will find patch files.

Cards.cpp patch: http://pastebin.com/W0z2ns73
Tyrant_optimize.cpp patch: http://pastebin.com/5jf7XRXz
Xml.cpp patch: http://pastebin.com/cfz5YrBd

Hopefully, someone finds this useful. Also, note that I used andor’s git repository for these patches.

Are these patches to leftlylink’s code or Andor’s code?

Sorry. Stupid question. I haven’t been watching this thread that much. If I read things correctly, Kyrossian made some patches, then Andor made pull request. So the pull request that has Andor’s name it includes Kyrossian’s updates.