I have eagerly waited since Saturday (8/26) for Steam to review my build. It says it typically only takes 2-3 days but up to 5 business days if they need to give feedback. I was starting to worry and I was right.
It was rejected due to the application not starting if Java is not on the system (since this is a Java app.) I realize this was my mistake; no doubt about it. Steam doesn’t allow unresolved dependencies in their games. This makes things super convenient for players so they can just install, hit play, and BOOM!…it works. This is what makes Steam a great platform and I made a rookie mistake (I have never released on Steam before.)
At first I freaked out because their support mentioned writing an install script and all of this stuff I had never done before. Thankfully, there was an easy solution. I use launch4j, a fantastic freeware program for converting executable jar files to Windows .EXE files. This wonderful and life saving program has the option to run the build from a private JRE bundle from within the EXE directory. This is fantastic! It means I can always ensure that a player is using the exact version that I developed the game for. Even if a person already has Java on their system (seriously, who doesnt these days?), it will always use only the version in the directory.
I tested, and confirmed that this indeed fixes the problem. I had to strip my whole system of every JRE and JDK to first replicate the Steam error, and then to fix it and confirm it was fixed. It is…I resubmitted and now get to wait on Valve but *hopefully* this time there will be no more problems.
If this game takes off, I need to donate a hefty sum to the devs behind launch4j because they really saved my ass on this one.