Useful Tool: EMC Shopkeeper

Discussion in 'Marketplace Discussion' started by shavingfoam, Mar 6, 2013.

  1. Those items don't need time-bounded mappings because their old names don't match the names of any current items. For example, "Rose" doesn't refer to any item at the current time, so I can just tell EMC Shopkeeper, "Whenever you see the 'Rose' item in the transaction history, it's really referring to the 'Poppy' item". But with Smooth Sandstone, I need to time-scope it, because that item name refers to different items at different points in time.

    EMC Shopkeeper also has a feature (turned off by default) which automatically sends a report to a web server I control whenever it finds an unknown item name in the user's transaction history. I heavily rely on these reports to figure out what items names are used in EMC's rupee transaction history so that EMC Shopkeeper can parse the transaction history appropriately. :)
    607, HazardousCode and wafflecoffee like this.
  2. You got it! :D
    607 and wafflecoffee like this.
  3. Very cool, thanks for explaining more about it!
    Even professional apps are rarely this thorough, I think. :D
    FadedMartian and shavingfoam like this.
  4. It appears wider fonts make certain elements partially obscured... not that big of an issue but I thought I might mention it. :D (this was just the default font, I haven't made any changes to it myself.) Notice how the login/cancel buttons are only partially accessible, and the Highest Balance box's contents go on into a second line. There isn't a scroll bar or anything, before anyone asks :p


    (I've never even been close to this rich, someone gave me their full rupee balance for a few min for no reason :P)
    607 likes this.
  5. Uh oh. Somebody is using Linux... ;)

    They should be fixed now. Fix will be included in the next release. Thanks for reporting! :D
    607, UltiPig and wafflecoffee like this.
  6. OK Foamy,
    I finally broke down and decide to install the Shopkeeper portal. New OS (Win 10 Pro w/latest updates) and latest Java. This is a clean (from scratch install).
    I've tried the easy way by just dblclicking the emc-shopkeeper-full.jar file and nothing happens. Just a popup asking if I want to run it then a quick flash.
    Then I opened a Admin cmd prompt and got the following result:

    I also checked the directory and it does have a main.class in emc-shopkeeper-full.jar\org\apache\derby\impl\tools\sysinfo folder

    Any ideas? I really need this app to compete with the other big shop on SMP5 :)

    Thanks!
  7. Thanks for trying my app! :)

    The main class file that EMC Shopkeeper uses is actually here: emc-shopkeeper-full.jar\emcshop\EMCShopkeeper.class

    Can you add a "-jar" argument to your command and tell me what you see? Also, you don't need to use an admin command prompt, just a normal one (it's safer). :)

    "C:\Program Files\Java\jre1.8.0_271\bin\java.exe" -jar emc-shopkeeper-full.jar
  8. I ran the
    And it loaded the GUI but when I got out and tried launching the program (emc-shopkeeper.jnlp and it's associated to java.exe, not java web) a cmd console flashes and nothing loads. If I retry the install I get the following error:
    The above error occurs during the re-install has to do with the DB. I deleted the .emc-shopkeeper directory under my username then reran the installation and it loads the GUI (after creating the DB). The above error only occurs after the DB has launched.

    I pulled 2 pages from my store (when the GUI shows/launches during the install) and it works as intended. I then did a DB backup, and although it did the backup, it gave the follow error (which I sent):
    Just an FYI - My Windows USER NAME is a 2 part username (i.e. C:\Users\Bozo Clown\)

    Thanks for any help

    Update: I think I found the issue:
    error:
    My User name has a space in it:
    So taking the error and going to index 24 results in what? The space. So counting:
    jar:file:/C:/Users/Julie
    index 24 is the space.
    607, shavingfoam and UltiPig like this.
  9. Julie,

    Thanks so much for your very detailed investigation! It saved me a lot of work! :D

    You are correct, it looks like the space in your username is the cause of the issue. I was not properly sanitizing the file path when creating the database backup, so the space character was not being properly encoded. Working on a fix now.
    UltiPig and 607 like this.
  10. It's occurs when launching/opening the Shopkeeper, not just the DB
    I'm glad it help. Looking forward to the fix.
    607 and shavingfoam like this.
  11. Version 0.5.24 released! Changes include:
    • Fixed an issue where parts of the login dialog and bonus/fee table were being cut off.
    • Fixed a crash that would occur with users whose Windows username had spaces in it.
    Download it now!
    UltiPig, 607 and wafflecoffee like this.
  12. Cool! You're my hero...well at least for today :)

    Just an FYI: I can't run it with the AutoRun (emc-shopkeeper.jnlp) or dblclicking the jar. The only way I can get it to launch and work was by creating a shortcut with a target of:
    "C:\Users\<User Name>\AppData\Roaming\.minecraft\JavaRuntime\jre1.8.0_271\bin\java.exe" -jar "C:\Installed Apps Installs-Setups\EMC ShopKeeper\emc-shopkeeper-full.jar"
    It has to have the -jar switch or it will not open. If I run it with the .jnlp, dblclicking the .jar, or shortcut w /o the -jar switch it throws the error it can't find the main.class.
    UltiPig and 607 like this.
  13. It actually loaded my entire rupee log quicker than I expected! :D - I feel like it was much quicker than when I last did this many years ago, though I'm not 100% sure on that.



    I have a question: in the transactions tab, set to entire history and all stop transactions, the Gained/Lost/Net Total changes slightly between Item/Player and Date. Do you know why this happens?
    607 likes this.
  14. Ooo Does Shavingfoam use multithreading :D
  15. Survey says:

    (Red box is when it was parsing ;))
    shavingfoam and 607 like this.
  16. It makes sense that the "-jar" switch is required at the command line. That switch is required in order to execute JAR files.

    As for double-clicking the JAR file: I wonder if you have an old Java installation on your computer. It might be failing because the Java version is too old to run EMC Shopkeeper (Java 1.8 or above is required). Check your "C:\Program Files\Java" folder to see all of the Java installations on your computer.

    As for the JNLP file: I just fixed an issue with it (a dependency library was missing), but the issue you're having sounds unrelated. Again, it could be failing because you have an older Java version installed and Windows is trying to use that version instead of the latest version.

    I see that you're using the JRE that comes bundled with Minecraft! I've never tried that before with EMC Shopkeeper, but I guess it should work! :)
    607 likes this.
  17. It's possible EMC's website got faster too. I remember there being an issue a while back where the higher the rupee history page number was, the longer it took for the page to load. It got really bad once you got up into the thousands. Don't know if it's still like that now.

    Strange, that happens for me too. The Net Total is the same for me, but the Gained/Lost numbers differ by about a million rupees. I will have to look into it.
  18. Yep, I use 4 threads to download/parse the rupee history pages. :)
    ttyler333, 607 and UltiPig like this.
  19. I wasn't paying close attention, but I don't think that was the case this time - and I've since only gotten more pages, so the higher numbers have only gotten higher. I didn't bother looking for a backup from years ago, so I just made it load freshly. :p

    The Net Total also changed slightly for me, so that makes it extra interesting.

    Would it be possible for the program to allow it to use more than 4 threads (I have 8 available on my desktop, and 12 on my laptop), or is that not worth the effort?
    607 likes this.
  20. I think then he would have to detect peoples hardware cause not all people have more than 8 threads and 4 cores?