Git Product home page Git Product logo

ssjshields / archetype-counter Goto Github PK

View Code? Open in Web Editor NEW
36.0 2.0 16.0 150.54 MB

PowerShell WinForm script for the online video game PokeMMO. Automatically tracks encounters (Horde, Safari, etc.) and when you receive Eggs or Fossils. Utilizes ImageMagick and OCR technology.

Batchfile 71.57% C++ 13.99% C 3.05% Roff 11.39%
pokemmo imagemagick batch-script ocr powershell-script winforms-application

archetype-counter's Introduction

mainLogo

Archetype Counter is a PowerShell WinForm script for the online video game PokeMMO.

Automatically tracks encounters (Horde, Safari, etc.) and when you receive Eggs or Fossils.

Does not hook into the PokeMMO or javaw process. Utilizes ImageMagick and OCR technology.

Useful for shiny hunting or metrics lovers. Feel like exploring? Give our client theme a try.

Requires Windows 10+

 

Features

🚀 Prompts to open the PokeMMO client if its not currently running

📝 10 hunt profiles and 3 count slots, includes 7 additional non-focused slots

🎨 Includes x2 themes (Archetype & Default) and x5 sprite sets, supports up to x3 custom themes

🗳️ Built-in backup system / manually amend counts, automatic restore if hunt profiles corrupt

 

Trackables

🍃 Regular/Horde encounters

🦥 Safari encounters

🔥 Alpha encounters

🌟 Shiny encounters

🐣 When receiving Eggs

🦣 When receiving Fossils

 

Compatibility

🖥️ Multi-monitor support

🔍 Multi-interface support

📚 Full Multi-language support (Including CJK)

 

Media

counterMode

 

Expectations

Counter must be in counting mode (ON) before receiving Eggs / Fossils or when encounters begin

Tracking occurs via battle monster nameplates, OCR will not process properly if there is anything blocking them

String ids which contain text such as "{user} recieved Eggs / Fossils" cannot be removed from the game entirely

 

Installation

1. Extract into PokeMMO\data\mods

Alternatively, clone into PokeMMO\data\mods using GitHub Desktop or Git, pull to receive updates

2. Run the Archetype Counter.lnk, pin to the taskbar if needed (After you run at least once)

Ensure you run the Archetype Counter.lnk shortcut once before pinning to taskbar or any other location

Do not pin the Counter from the taskbar while it's running, otherwise it will pin the Powershell terminal instead

 

Removal

1. From the Counter menu navigate to Settings → Uninstall Archetype Counter

All Counter files and theme modifications are subseqently removed automatically

 

Main Navigation

Right-click window title area to access the Counter menu

Right-click empty slot to manually set monster via dex number

Right-click to decrease count, left-click to increase count (Tracked Pokémon & total count)

Middle-click (scroll wheel) to manually set count

Hover over monster sprite to display dex number and name

 

Counter Menu Navigation

Options will appear "grayed out" and cannot be modified while the Counter is in counting mode (ON) or (BUSY)

Theme Selector

Choose Counter themes (Archetype, Default) + 3 Custom theme options (Create your own theme)

Sprite Selector

Choose between several different monster sprite sets (Default, 3DS, Gen 8, Home, Shuffle)

Detection Selector

Choose the amount of monsters to track at one given time (1 to 3) - In Expanded Mode

Reset selector

Clear seen monsters from specific slots, extra slots, Egg/Fossil count and current hunt profile

Counter Mode

Choose between Expanded (Encounter), Expanded (Egg), Expanded (Fossil), Collapsed (Encounter), Collapsed (Egg), or Collapsed (Fossil)

Picture Mode

Choose between two screenshot methods for the Counter to utilize, PrintWindow function (Default) and PrintScreen (Alternative)

Chinese Mode

Choose between No Override, Chinese Simplified, or Chinese Traditional to support Chinese strings ('No Override' means Chinese Mode is not utilized)

Extra Pokémon Slots

Displays the last 7 previously encountered monsters (Displays all 10 slots in collapsed mode)

Hunt Profiles

Choose between 10 hunt profiles for current hunt

Rename Hunt Profiles

Change the name of hunt profiles

Backup

Save the Counter in its current state to avoid possible lost config data, daily backup is automatic

Support

Seek assistance or report a bug

Settings

Close PokeMMO: PokeMMO will close down when you exit counter

Counter Screen Position: Allows you to lock the counters current position on screen to prevent accidental movement

Always on Top: Set whether the Counter retains priority over the PokeMMO window or not

Beep Count Sound: Set system sound effect when a pokémon is tracked by counter

Manual Pixel Search: Ability to switch to a precise mode if auto pixel searching fails (Last possible effort)

AC Uninstaller: Uninstall Archetype Counter and its dependencies

Total Current Counts

Displays the count(s) from counter and total count between all seen monsters

Debug

Open 'DEBUG' folder: Opens the general counter folder to help diagnose issues in the format of .png screenshots and a DEBUG_OCR_OUTPUT.txt file

Open 'Failed Scan' folder: Opens the debug counter folder that is specific to failed scans (This helps reduce pinpoint specific issues) - in the format of screenshots and a DEBUG_OCR_OUTPUT.txt file

Open 'Core' folder: Opens the Core folder where automatic screenshots are taken and when failing to activate the counter during battles (When fundamentally something is wrong)

Open 'Name Fix' File folder: Opens the text file that allows you the user to manipulate the OCR scanned output by correcting the bad name with the correct name

 

FAQ

How does the Counter work?

OCR and several other utilities are used to scan screenshots of monster names and compares them against a list

Monster nameplates processed using images passed through ImageMagick formula by realmadrid1809 + additional logic cleanup in PowerShell

Utilities scripted with PowerShell 5.1 by AnonymousPoke

Does the counter work on Linux, MacOS or mobile?

Unfortunately no - the Counter utilizes built in Windows OCR (OCR, Powershell, etc.) + Tesseract OCR & ImageMagick

Does this work with custom PokeMMO client themes?

Yes, it will work with all custom themes, but the monster nameplate text will be modified to be OCR compatible

Client theme.xml, font values and graphical assets (AC folder) are inserted into the currently installed theme list

How do I make custom Counter theme?

Open the counter menu and navigate to -> Theme Selector -> "Open Theme Folder" and modify the .png images accordingly

Modifying the ThemeConfig.txt file will allow you to change the font/background colors along with font sizing & types

Does the Counter track Shiny Pokémon?

Yes it does and it will also provide a prompt provided by the counter indicating a shiny is on the screen (Extra layer to prevent defeating or running from the shiny)

Does the Counter track Alpha Pokémon?

Yes, but only as a total count in the counter - will not add to the normal tracked monster count

Does the Counter track Legendary Pokémon?

Yes, but currently only the 3 legendary dogs from Johto (Raikou, Suicune, and Entei)

How are Eggs and Fossils tracked?

When the user retrieves them - by tracking the word egg & recieved for eggs / by tracking the word <FossilMonsterName> & recieved for fossils

Events / trades do not log towards count

If you are using custom strings do not completely remove receieved Egg / Fossil dialog

Does the counter track Zorua or Zoroark?

Due to this Pokémon and it's ability.. No.

Can the Counter track 2 different Pokémon in a double wild battle or horde?

Currently the counter does not support these types of battles and you may get mixes results when tracked in the counter

Can I convert data from other counters?

Yes, right-click empty slot to manually set monster via dex number, middle-click (scroll wheel) to manually set count

Manually editing profiles may cause corruption - located in Files\Counter Config Files

When I go into battle, the counter does not count or go busy. What do I do?

Go into the counter menu and change your Picture Mode from PrintWindow (Default) to PrintScreen (Alternate) - If this does not resolve issue, please report a bug

How do I fix incorrect scanned Pokémon names with the 'Name Fix' file?

When a monster is incorrectly scanned via OCR, you take the 'failed' name and place it on the left hand side of the semi-colon and then take the correct monster name and place to the right of the semi-colon

(Ex: Gastiy; Gastly)

You will need to turn the counter OFF and then back ON for these changes to take effect

How do I manually remove additional characters/symbols from the failed scan?

Open up the 'Name Fix' file from the counter menu and take the partial/incorrect text and place on the left hand side of the semi-colon and then place the word 'Blank' on the right hand side of the semi-colon

(Ex: GastE; Blank)

When a 'Blank' is provided on the right hand side of the semi-colon, this indicates the counter to completely remove that specific text - You will need to turn the counter OFF and then back ON for these changes to take effect

Does the Counter support transparency when making custom themes?

No - this is a limitation with the PowerShell WinForms GUI

How do I move the counter location to the top of the screen edge?

Move the counter as closely as possible to the top of the screen and then utilize the arrows keys to move to desired location

Can I manually add a count to the tracked Pokémon and total count in the Counter?

See Main Navigation above

Can I preset a Pokémon in the counter before being tracked?

See Main Navigation above

How can I report a bug?

Before creating a report, review this readme and the existing issues

Open the Debug folders from the Debug submenu, attach the .png and .txt files

 

Disclaimer

This software has been created purely for the purposes of academic research. It is not intended to be used to attack other systems, nor does it provide the user any unfair advantage. There are no artificial inputs or hotkeys simulated. Project maintainers are not responsible or liable for misuse of the software. Source code can be viewed in the batch files. Use responsibly.

 

Contact and Support

discord

archetype-counter's People

Contributors

anonymouspoke avatar realmadrid1809 avatar ssjshields avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

archetype-counter's Issues

Unable to scan Gloom, Bellsprout and Weepinbell

Hello, I've been using your encounter counter for a few weeks now, and I'm regularly having issues with counting Gloom (single encounter, no issue with hordes), Bellsprout and Weepinbell (both with single enc, I don't know about hordes).

Here is an example with Bellsprout
1

DEBUG_OCR_OUTPUT.txt

I tried changing the Picture mode setting, tried resizing the Battle window size (as I set mine smaller than the default setting).
Haven't tried the Name Fix thing, as I couldn't find the file, only the .png file.

Thanks for your time, and if you need Gloom and Weepinbell pictures and debug files, tell me!

EDIT: I have no other mods, no custom theme, only strings

Infinite failed scans, only on magnemite hordes

I was hunting magnemites before, and it was working for about the first 1,500 scans. then all the sudden the scanning stopped working each time i try to scan. the overall total counter was still working, but the count for the magnemite pokemon individually had completely stopped and i am getting a failed scan every time. i tried uninstalling, reinstalling, closing pokemmo and reopening, and closing the counter and reopening and resetting my theme to default, none of that fixed it.
ArchetypeScreenshot
ArchetypeScreenshotEncounter
ArchetypeScreenshotMagick
DEBUG_OCR_OUTPUT.txt

Failed Scan

ArchetypeScreenshot ArchetypeScreenshotEncounter ArchetypeScreenshotMagick ArchetypeScreenshotSetPixel [DEBUG_OCR_OUTPUT.txt](https://github.com/ssjshields/archetype-counter/files/13032138/DEBUG_OCR_OUTPUT.txt) I wonder if there is any way I can solve this problem.

Failed Scan - Golbat not sleeped

image
###################################

ARCHETYPE COUNTER OCR DEBUG

###################################


| Before Cleanup: |

Goibat Nv. 27


| After Cleanup: |

Goibat


| Horde Count: |

0


| Pixel Color Check: |

fffb00fb

################################

END OF COUNTER OCR DEBUG

################################

Failed scan for Krabby alone

So im hunting zapdos in route 10 kanto, and have the archetype counter mod on to track my encounters.

Been getting the failed to scan for Krabby alone and no other pokemons were giving me that issue and im not sure why exactly its happening to me honestly
ArchetypeScreenshot
ArchetypeScreenshotEncounter
ArchetypeScreenshotEncounterEx
ArchetypeScreenshotMagick
ArchetypeScreenshotSetPixel

and this is the text output for the failed scan if needed as well
DEBUG_OCR_OUTPUT.txt

Thank you for reading this and sorry if its a known issue but im confused how to solve the issue, and i hope i didnt take too much from your time

Swablu failed scan

ArchetypeScreenshot
ArchetypeScreenshotEncounter
ArchetypeScreenshotMagick
###################################

ARCHETYPE COUNTER OCR DEBUG

###################################


| Before Cleanup: |

Swabiu Lv. 31


| After Cleanup: |

Swabiu


| Horde Count: |

0


| Pixel Color Check: |

fffb00fb

################################

END OF COUNTER OCR DEBUG

################################

Endless Failed Scans

I thought it was an issue with my themes, but I've bounced back and forth to the default theme several times and had the same issue. It's non-stop, it'll count the encounter as 2, sometimes 3 then give this message. Sometimes starting and stopping the counter a few times gets it to chill out but it's far past being worth it at this point. Sometimes it'll work for awhile, then start back up if I tabbed out and won't seem to fix. Hoping someone can fix this, I like the counter but the errors have pissed me off lmao.
DEBUG_OCR_OUTPUT.txt
ArchetypeScreenshot

Failed Scan if Pokemon sleeping

###################################
#   ARCHETYPE COUNTER OCR DEBUG   #
###################################

-------------------
| Before Cleanup: |
-------------------

H Gloom Lv. 29

------------------
| After Cleanup: |
------------------

HGloom

----------------
| Horde Count: |
----------------

0

----------------------
| Pixel Color Check: |
----------------------

Auto

-----------------
| Picture Mode: |
-----------------

PrintWindow (Default)

-----------------
| OCR Language: |
-----------------

English

################################
#   END OF COUNTER OCR DEBUG   #
################################

ArchetypeScreenshot

ArchetypeScreenshotEncounter

ArchetypeScreenshotMagick

certain monster names may scan improperly

image
image

e.g., "Gastly" scanning as "Gastiy".

Please report failed to count errors, as these can be easily fixed, we just need the error logs.

This does not occur all the time- can vary depending if the over-world view is on and what tiles are being displayed on screen.

Unable to scan Pokemon - Counter still works

Hi, basically the general counter always works, but with certain pokemon it gives me the "Unable to scan Pokemon" error and that certain species counter wont go up.
Worked perfectly until one hour ago, nothing changed in the meantime, and i have the latest version.

I get the error with Miltank, ditto, drowzee, jigglypuff, psyduck, ekans, mareep, flaaffy
Works perfectly with Rattata, tentacool

ArchetypeScreenshot
ArchetypeScreenshotEncounter
ArchetypeScreenshotMagick
DEBUG_OCR_OUTPUT.txt

Failed Scans - l passing as i

I've been getting multiple failed scans, and I can't seem to pinpoint what causes the issue, window size, and typing don't seem to turn it consistent or fix. But it tends to happen with specific pokémons, Smeargles and Golduck hordes break it for example, while Natu seems to work perfectly. In Smeargle's case, sometimes, it does register properly! A problem with the L perhaps? I am using a completely fresh unmodified Archetype theme, with Archetype-English for language.
ArchetypeScreenshot
ArchetypeScreenshotEncounter
ArchetypeScreenshotMagick
DEBUG_OCR_OUTPUT.txt

Unable to determine many simplify chinese character.

Several characters encounter problems when converting from images to text,so far i have 毽 ,茧, 燕, even after attempting magnifications of 1.0 and 1.25. Changing characters to ones with fewer strokes resolved the issue,but that didn't solve the root problem, is there alternative methods to improve OCR accuracy in the transition from images to text.

ArchetypeScreenshot
ArchetypeScreenshotEncounter
ArchetypeScreenshotMagick
ArchetypeScreenshotSetPixel
DEBUG_OCR_OUTPUT.txt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.