Announcement

Collapse
No announcement yet.

Why are the 25 top scores on Swarm exactly 2147483647 for Sorcerer's Lair

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Why are the 25 top scores on Swarm exactly 2147483647 for Sorcerer's Lair

    Hey guys just started playing zen pinball and I am really impressed with the physics. Its a lot of fun, and i can see myself committing tons of hours into this game. I have only been playing the sorcerer's liar, but plan on purchasing a new table soon. Probably the Boba Fett table next week.

    I just had my first 9 figure score and decided to look at the Swarm leader boards and noticed that all of the top scores are the same. Is 2147483647 the top score possible for this table?

    Also why is the scores different on swarm compared to the in game all time score leader boards?

    I Have yet to find any friends playing this game. If you are looking for some friendly competition my name is jaykrz on Swarm.

  • #2
    Definitely not! The tables don't have a max score limit and Sorcerer's Lair top scores on the PSN (PS3/Vita) are well over 5 billion.

    It's most likely a glitch on Swarm or Swarm has a max score limit of 2147483647.

    Comment


    • #3
      Yeah that has to be the score limit on swarm. It's the high score on other tables as well. I guess I never noticed it before! Although that is a rather odd number for a score limit?!
      Proud member of the Hyna Gang! Keeping pinball alive on the Wii U!

      Comment


      • #4
        Thanks for the responses guys. Hope they fix it, kinda sucks not being able to play against legitimate scores.

        Comment


        • #5
          Originally posted by Tech101 View Post
          Yeah that has to be the score limit on swarm. It's the high score on other tables as well. I guess I never noticed it before! Although that is a rather odd number for a score limit?!
          2 ^ 31 = 2,147,483,648 -- subtract 1 so you have 0 through 2147483647...look familiar?

          Make it 2 ^ 32 for all the negative numbers, and it looks like a 32-bit number variable to me. Not at all an unusual number for a score limit, for a computer.

          They could probably double the possible high score pretty easily, but subtracting 2147483647 from all scores before saving them, and adding that value again before displaying them (so if you scored 100 points, your score would be saved as -2147483547) - but to really fix things they need to either lose significant digits or change to a larger number variable (likely increasing the storage requirements in whatever database they're using).
          Last edited by RobN; 02-22-2013, 07:01 PM.

          Comment


          • #6
            Originally posted by RobN View Post
            2 ^ 31 = 2,147,483,648 -- subtract 1 so you have 0 through 2147483647...look familiar?

            Make it 2 ^ 32 for all the negative numbers, and it looks like a 32-bit number variable to me. Not at all an unusual number for a score limit, for a computer.

            They could probably double the possible high score pretty easily, but subtracting 2147483647 from all scores before saving them, and adding that value again before displaying them (so if you scored 100 points, your score would be saved as -2147483547) - but to really fix things they need to either lose significant digits or change to a larger number variable (likely increasing the storage requirements in whatever database they're using).
            My head just exploded.

            Comment


            • #7
              Originally posted by RobN View Post
              2 ^ 31 = 2,147,483,648 -- subtract 1 so you have 0 through 2147483647...look familiar?

              Make it 2 ^ 32 for all the negative numbers, and it looks like a 32-bit number variable to me. Not at all an unusual number for a score limit, for a computer.

              They could probably double the possible high score pretty easily, but subtracting 2147483647 from all scores before saving them, and adding that value again before displaying them (so if you scored 100 points, your score would be saved as -2147483547) - but to really fix things they need to either lose significant digits or change to a larger number variable (likely increasing the storage requirements in whatever database they're using).
              Sounds likely. Since it's probably a hard-coded limit in Swarm, we could probably just start dropping the least significant digits and writing scores like 2137M at the high end.

              Comment


              • #8
                Originally posted by Solitude View Post
                Sounds likely. Since it's probably a hard-coded limit in Swarm, we could probably just start dropping the least significant digits and writing scores like 2137M at the high end.
                You can be certain that is the answer. A simpler way to say it would be that Swarm appears to be using an Integer field type for the score in their database, which I think was a poor choice on their part.

                Some reference info for SQL Server about the numeric field types is below. The same is basically true for Oracle/DB2/MSA also, just with different terminology and field types, but each have an integer type with that same limit. They're saving a little bit of space in their database size at the expense of the end user, which is something I always hate to see as a person that does database-related work for a living.

                This is bound to impact other games as well, and isn't capturing scores accurately the whole point of their service? Your solution will surely work but it might be worth at least complaining to them a little so they know you're being inconvenienced by it.


                SQL Server 2000

                bigint - Integer (whole number) data from -2^63 (-9,223,372,036,854,775,808) through 2^63-1 (9,223,372,036,854,775,807). Storage size is 8 bytes.

                int - Integer (whole number) data from -2^31 (-2,147,483,648) through 2^31 - 1 (2,147,483,647). Storage size is 4 bytes. The SQL-92 synonym for int is integer.

                smallint - Integer data from -2^15 (-32,768) through 2^15 - 1 (32,767). Storage size is 2 bytes.

                tinyint - Integer data from 0 through 255. Storage size is 1 byte.

                A better choice for the user but that takes more storage space would have been:
                decimal - Fixed precision and scale numeric data from -10^38 +1 through 10^38 –1.

                Comment


                • #9
                  Ya it seems like you are right. If you look at Swarm's API documentation it says they are using integer types to store these types of scores.

                  http://swarmconnect.com/admin/docs/leaderboard

                  Really ridiculous that there service doesn't allow you to choose some long or bigint type. I don't think space should even be an issue in this day and age. Space is so cheap now.

                  It really doesn't make sense for Zen to be using Swarm, as it seems possible to get scores well passed the 2 bil mark.

                  Comment


                  • #10
                    Nice find on that documentation. You're right, it looks like their expectation is that the applications be coded to not allow scores that large since they're very upfront about the field size (I still think its a poor choice but anyway - my opinion). Apparently there really isn't any basis for a complaint, but contacting them may still help. They could have a canned solution for this kind of problem or at least have dealt with it before.

                    I guess the question is whether Swarm will allow another bit to be passed to differentiate between scores based in single units versus scores based in number of millions. If they do then this might be an easy fix, although there could be display issues still. If there isn't Zen may be forced to make even the smallest scores appear in terms of millions, or just live with this issue.

                    Possibly another solution would be to make two separate leaderboard tables in their database per pinball table, one for little scores and one for big scores (in millions), and then let the application union them together. Of course Zen would have to patch the game to interact with the two tables properly and Swarm may charge extra.. That's probably more work and expense than this problem is worth though realistically, when you look at the number of users that would be affected.

                    Comment


                    • #11
                      Originally posted by Solitude View Post
                      Sounds likely. Since it's probably a hard-coded limit in Swarm, we could probably just start dropping the least significant digits and writing scores like 2137M at the high end.
                      I'm looking at the list right now and it looks good. All of the Sorcerer's Lair scores are in the format you mentioned, was this really fixed that fast? I never looked at the leaderboard before myself, so I never saw it the other way..

                      Comment


                      • #12
                        Originally posted by ER777 View Post
                        I'm looking at the list right now and it looks good. All of the Sorcerer's Lair scores are in the format you mentioned, was this really fixed that fast? I never looked at the leaderboard before myself, so I never saw it the other way..
                        You may not have filtered for all time scores. I think by default it shows the weeks' scores, which doesn't show the erroneous scores. There isn't any scores that have surpassed the 2 bill+ mark this week.

                        Comment


                        • #13
                          Originally posted by jaykrz View Post
                          You may not have filtered for all time scores. I think by default it shows the weeks' scores, which doesn't show the erroneous scores. There isn't any scores that have surpassed the 2 bill+ mark this week.
                          Nope, I'm looking at the all time list but through the in-game interface. Actually all 25 are over the 4B mark, the top score is 30,064M.

                          I see what you mean now though, you're looking at it through the Swarm icon. I never looked at that before, I thought that you meant the in-game list. This makes much more sense now, I was looking at the wrong application.

                          So Swarm's viewing app is where the problem is, the fact that the in-game board shows the correct scores means that they're getting captured properly and the problem is in the viewing app only.
                          Last edited by ER777; 02-26-2013, 01:29 AM.

                          Comment


                          • #14
                            ya, thats right. i guess i wont be looking at the Swarm leader boards then.

                            Comment

                            Working...
                            X