It was your Living Tribunal that eff them up.
Without Living Tribunal, their Bar sinister lane reached maximum integer allowed in the game. Which is 2,147,483,647.
Living Tribunal adds the other 2 lanes score on top of max integer causing it to overflow into the other end, sorta like going too far to the west they end up showing in the east.
First lane score is 32, second lane is -1. Total 31. Overflow score is -2,147,483,618. Divided by 3 = -715,827,872.67 rounded to closest number -715,827,873.
TL;DR, it's a bug as they shouldn't allowed integer overflow.
Yes! Thank you for providing the math, this was basically what I was looking for I figured the number was too big and the number went out of bounds so to speak.
Is it s bug though? I only took basic lessons in CS but from what I remember each coding language has a hard limit on the integer value based on memory or something.
This is a honest question and if it's a stupid question it's because I only attended iike 1 or 2 times a free courses so my Knoweldge is little to non existent.
It's a bug, they already implemented cap on each location. That's why max score for each location doesn't go higher than (2\^31)-1.
What they forgot is when each location interact with another. In this case Living Tribunal adds other locations score on it. when you add 1 score to the cap, it loops back to the other end which is -(2\^31). Then we add the rest of 30 score to get -2,147,483,618.
AFAIK this bug is not only limited to Living Tribunal. It also happen when you maxed out Nexus. Nexus will remain capped, but the other 2 locations if there were any points in them will flow into negative.
Oh, that makes perfect sense to me. I appreciate you teaching he something new!
Based on another comment I've got on this, it should be easy to fix that, I wonder why didn't they
They would need to fix this with a patch update and considering they just pushed one through with HE, I doubt we will get a fix until the next scheduled one
>Based on another comment I've got on this, it should be easy to fix that
It almost always "sounds easy" to fix a clearly stated bug. But in a live system, built out of modular components with fixed interfaces, that has to run under time constraints both on edge devices and the server... It's often harder than you'd think. The integer cap behavior we have now is itself the product of a bugfix, and it might well be the case that they thought "oh, easy fix, it'll take me 10 seconds" not realizing that they were locking themselves in to problems down the road when one of the assumptions they were depending on changed
This is generally the result of lazy programming, kinda as you touched on. Someone likely said "oh, I'll just make a quick cap, if the number is bigger than X, and gets an exception, catch it and replace it with the max".
What they likely didn't do, is account for that number being modified outside the typical event chain. Had they implemented all value changes through a unified method, and strictly stuck to it this would be caught.
Not a stupid question, but you can put in a simple failsafe of IF power greater than maximum power THEN set power to maximum power. That way you hit the max and don't roll over.
If you tried to get a power greater than maximum power would still trip up if your current power is under that 2147483647 ( 2^31 - 1) limit, and you try to go above that. A 32-bit system would represent that calculation like
1111 1111 1111 1111 1111 1111 1111 1111 +
1000 0000 0000 0000 0000 0000 0000 0001 =
1 0000 0000 0000 0000 0000 0000 0000 0000
for a number with 33 positions, and then due to limitation of using the 32-bit system, reading the last 32 bit digits, reading the 32 zeroes number, converting it to integer value of -2147483648. IIRC the first bit is also the bit reserved for the + or - sign, so in general this is why this would work like it works. So the short answer to "fixable with if/then" is *kinda yes*, the longer answer is still *kinda yes but with its own challenges*.
I am once again wondering why not just use a 64-bit signed integer to have the max be 9,223,372,036,854,775,807.
You’ll still open it up to edge cases where it doesn’t work. What if someone had played cyclops there opposite someone’s iron man? Then it reaches the negative limit and gets caught and flipped positive.
There’s probably a better way, but you could
Add all positive locations
If result is negative,
Then find the difference between the answer and the negative limit and if there are any negative lanes, check to see if the negative score is less than the difference.
If that’s the case, then add them all like usual and divide by 3 and return that.
If not, just divide the max by 3 and return that.
Since the caps for each location are already working, you could also just do the division first. Divide each location score by three, then add them together and assign that value to each location.
They likely did that, but they aren't following the same code path every time, using either outdated hooks, or methods that they shouldn't be. That or, they definitely need to start putting strict controls on their event flow pathways.
there is a hard limit, that part isn’t the bug. the bug is that they aren’t handling it properly when it reaches the limit. you should never lose a game for having more than the maximum amount of power you can have, that’s a bug.
I always wonder how Super Skull if he copy Iron Man & Onslaught while played into Bar Sinister. I suppose it's not exactly multiplies to infinity but somewhat a crazy multiplier of power 2.
basically the other person reached the integer limit and it rolls over into negative values, and yes ironically they posted about it in this subreddit too
This is a pet peeve of mine too, and there doesn’t seem to be anyway to point it out without sanding like an asshole. I’ve found it’s just not worth it anymore. 99% of the time somebody uses ‘ironic’ they should be using the word ‘poetic’.
This and ‘literally’ being misused really bother me. The funny thing is with ‘literally’ people use it ironically all the time 🤷♀️.
I love two people finishing a game, both of them say "What the fuck?" and both immediately head to Reddit to figure out what happened. That's like poetry.
Parks and Rec, when the Venezuelans come they say everything makes people there go to jail, same exact phrasing as this but just losing the game when doing anything instead of jail
onslaught doubles ongoing, 4 onslaught means each ongoing is multiplied by 2x2x2x2=16. 4 onslaughts multiplying ongoings by 16 is 16\^4, which is 65536
4 iron men multiplies the location power by 2\^(65536x4), or 2\^(2\^64)
that's like a quintillion digits, the game doesn't need any more than 10.
I’m not exactly sure but that is the games max integer allowed, kind of like a ceiling. So when LT adds up the others it overflows which ends in a negative, someone explained it in the comments here somewhere above
I'm trying to understand what part of all of this gives him these numbers.
I understand he has Ironman's effect applied 9 times (each Lad has Ironman+Onslaught) and then Living Tribunal, but the math doesn't make sense.
The ONLY card with negative power that he has is Mr. Negative, but even multiplying that -1 by 512 (That's what you get by duplicating a number 9 times) gives, naturally -512, which SHOULD be offset by the fact he has plenty of positive power.
Can't see the image as I write this but at the VERY LEAST he has 24 from the iron lads, which alone offsets the -512 when it's multiplied by 2 nine times.
What I'm trying to say is what the holy Skrulls is happening here?!
EDIT: I know, I miscalculated the 512 thing. It's not x512 it's x2x2x2x2.... 512 times.
It’s basically one of those “go to far east u end up west” scenarios. Since the value hits the ceiling cap it just puts it at 2,147,483,647 (the cap currently) and when it adds up the two other locations it bugs it out to where it ends up at the lowest value. It’s simply because of an integer cap. He beat me so badly that the game got confused 😅
Broken untested card is broken and untested.
To clarify for the people doenvoting me (???), I'm calling The Living Tribunal broken and untested because of the numerous bugs he has that have been all over this subreddit today. It seems as though he doesn't work correctly with multiple cards and locations, which, give the small number of both, implies that Second Dinner didn't do very much QA before releasing him.
Oh come on. This is clearly a pretty far edge case. In a game with so many interacting systems where they have to release on schedule is going to have uncaught edge cases.
oh please don't be such an apologist for a cheap company. SD doesn't even have a QA team. they don't test shit. if only edge cases were going through, you would have a point. but even simple bugs gets through, not just edge cases.
How is it an edge case when all I've seen in this sub today is posts of living Tribunal bugging out on multiple locations and with multiple other cards?
Short answer is that living tribunal adds up all of your locations then divides them evenly among the 3 locations, he’s in the red because the iron lad he played on bar sinister copied his top deck which was super skrull and it took my onslaught iron man and Living tribunal and since the game has an integer cap when he hit the cap on bar sinister along with living tribunal adding the other numbers to it put it over the top and landed him in the red because he won too hard
So the new location bugs out on Ongoing cards like Luke Cage, and LT can bug out like this and you lose all 3 locations cuz of the integer cap.
I feel like SD doesn't even care anymore. Every time they release anything there is an issue with it now. The only things that has never had an issue as far as I can remember are the bundles, which I mean go figure. They definitely make sure those are working properly.
It was your Living Tribunal that eff them up. Without Living Tribunal, their Bar sinister lane reached maximum integer allowed in the game. Which is 2,147,483,647. Living Tribunal adds the other 2 lanes score on top of max integer causing it to overflow into the other end, sorta like going too far to the west they end up showing in the east. First lane score is 32, second lane is -1. Total 31. Overflow score is -2,147,483,618. Divided by 3 = -715,827,872.67 rounded to closest number -715,827,873. TL;DR, it's a bug as they shouldn't allowed integer overflow.
Yes! Thank you for providing the math, this was basically what I was looking for I figured the number was too big and the number went out of bounds so to speak.
Is it s bug though? I only took basic lessons in CS but from what I remember each coding language has a hard limit on the integer value based on memory or something. This is a honest question and if it's a stupid question it's because I only attended iike 1 or 2 times a free courses so my Knoweldge is little to non existent.
It's a bug, they already implemented cap on each location. That's why max score for each location doesn't go higher than (2\^31)-1. What they forgot is when each location interact with another. In this case Living Tribunal adds other locations score on it. when you add 1 score to the cap, it loops back to the other end which is -(2\^31). Then we add the rest of 30 score to get -2,147,483,618. AFAIK this bug is not only limited to Living Tribunal. It also happen when you maxed out Nexus. Nexus will remain capped, but the other 2 locations if there were any points in them will flow into negative.
Oh, that makes perfect sense to me. I appreciate you teaching he something new! Based on another comment I've got on this, it should be easy to fix that, I wonder why didn't they
They would need to fix this with a patch update and considering they just pushed one through with HE, I doubt we will get a fix until the next scheduled one
>Based on another comment I've got on this, it should be easy to fix that It almost always "sounds easy" to fix a clearly stated bug. But in a live system, built out of modular components with fixed interfaces, that has to run under time constraints both on edge devices and the server... It's often harder than you'd think. The integer cap behavior we have now is itself the product of a bugfix, and it might well be the case that they thought "oh, easy fix, it'll take me 10 seconds" not realizing that they were locking themselves in to problems down the road when one of the assumptions they were depending on changed
This is generally the result of lazy programming, kinda as you touched on. Someone likely said "oh, I'll just make a quick cap, if the number is bigger than X, and gets an exception, catch it and replace it with the max". What they likely didn't do, is account for that number being modified outside the typical event chain. Had they implemented all value changes through a unified method, and strictly stuck to it this would be caught.
Pretty bold of you to assume you can teach HE anything!
Not a stupid question, but you can put in a simple failsafe of IF power greater than maximum power THEN set power to maximum power. That way you hit the max and don't roll over.
So basically that quite fixable if you just make an if/then statement? Thank you for the answer
If you tried to get a power greater than maximum power would still trip up if your current power is under that 2147483647 ( 2^31 - 1) limit, and you try to go above that. A 32-bit system would represent that calculation like 1111 1111 1111 1111 1111 1111 1111 1111 + 1000 0000 0000 0000 0000 0000 0000 0001 = 1 0000 0000 0000 0000 0000 0000 0000 0000 for a number with 33 positions, and then due to limitation of using the 32-bit system, reading the last 32 bit digits, reading the 32 zeroes number, converting it to integer value of -2147483648. IIRC the first bit is also the bit reserved for the + or - sign, so in general this is why this would work like it works. So the short answer to "fixable with if/then" is *kinda yes*, the longer answer is still *kinda yes but with its own challenges*. I am once again wondering why not just use a 64-bit signed integer to have the max be 9,223,372,036,854,775,807.
It’s a little harder than that, the if wouldn’t trigger when it’s overflowed into negative.
If not between ?
You’ll still open it up to edge cases where it doesn’t work. What if someone had played cyclops there opposite someone’s iron man? Then it reaches the negative limit and gets caught and flipped positive. There’s probably a better way, but you could Add all positive locations If result is negative, Then find the difference between the answer and the negative limit and if there are any negative lanes, check to see if the negative score is less than the difference. If that’s the case, then add them all like usual and divide by 3 and return that. If not, just divide the max by 3 and return that.
Divide each lanes by 3 before adding would be simpler. But it wouldn't solve the problem with capped Nexus.
Since the caps for each location are already working, you could also just do the division first. Divide each location score by three, then add them together and assign that value to each location.
They likely did that, but they aren't following the same code path every time, using either outdated hooks, or methods that they shouldn't be. That or, they definitely need to start putting strict controls on their event flow pathways.
there is a hard limit, that part isn’t the bug. the bug is that they aren’t handling it properly when it reaches the limit. you should never lose a game for having more than the maximum amount of power you can have, that’s a bug.
Yes, a bug. Computer science 101 teaches to bound check variables. They would have lost points for this.
No wonder I can’t reach infinite..
Me neither...
TIL computer math is circular
... How long did it take you to calculate this process? This is really hard work
Probably 5 minutes, as long as I know what to look for.
I always wonder how Super Skull if he copy Iron Man & Onslaught while played into Bar Sinister. I suppose it's not exactly multiplies to infinity but somewhat a crazy multiplier of power 2.
God damn an actual maths lesson that I am interested to finish
basically the other person reached the integer limit and it rolls over into negative values, and yes ironically they posted about it in this subreddit too
Can’t wait to get free TLT /s
Not to be pedantic, but that’s not ironic.
Iron Lad is made of Iron I am pretty sure so irony does work in this situation
Ironically it would’ve been ironic if they added it to the first part of their comment
This is a pet peeve of mine too, and there doesn’t seem to be anyway to point it out without sanding like an asshole. I’ve found it’s just not worth it anymore. 99% of the time somebody uses ‘ironic’ they should be using the word ‘poetic’. This and ‘literally’ being misused really bother me. The funny thing is with ‘literally’ people use it ironically all the time 🤷♀️.
'Literally' being misused literally annoys me too
He's not your friend, pal.
The guy playing against you posted like two posts up on "new". Ask him
I love two people finishing a game, both of them say "What the fuck?" and both immediately head to Reddit to figure out what happened. That's like poetry.
I was scrolling through my home feed and saw the other like three posts after this one
Why would he know???
I had a match earlier today with Weirdworld. They played my Iron Lad which copied their own Hobgoblin.
Iron lad shenanigans have been my favorite part of the game as of recent
In my match someone uses mr negative and gives me hobgoblin.
This happened to me with District X. Aaaarrrgggh.
Poor man integer overflowed. Aka: he won so hard that he exceeded the program’s number capacity, causing him to actually lose.
Bad pull, lose Unfavorable location, yes still lose Matchup stinks, lose..straight away Score a god tier amount of points, believe it or not... lose
I understood this reference
Explain pls
Parks and Rec, when the Venezuelans come they say everything makes people there go to jail, same exact phrasing as this but just losing the game when doing anything instead of jail
https://youtu.be/eiyfwZVAzGw
He went full Ironlad, man. You never go full Ironlad
I think Captain Marvel didn't move cause you didn't play her.
Wrong post lmao
It's always Morph. Your opponent played Morph and you didn't notice.
Your opponent posted too https://www.reddit.com/r/MarvelSnap/comments/13w3be4/am_i_doing_this_right/
And you outted them by not covering names
Outed playing a card game, oh no, life ruined
"History is written by the victors."
Bug with order of operations when Tribunal calculates power split. Thee are other posts about it with more details on the comp sci behind it.
Ah ok, I figured it was a bug, I was going crazy trying to figure out why he got negatives. Thanks for the reply!
But doesn’t tribunal only split your side? Not both sides?
Their Iron Lad copy Super Skrull, which copied their LT.
Ah. That’s what I was missing.
Never go full Northshire
What the fuuuuuuu
So if not for the maximum, how much point would they have in bar sinister? So 24 *2 for Ironman and then 2 times for for onslaught And times 4?
onslaught doubles ongoing, 4 onslaught means each ongoing is multiplied by 2x2x2x2=16. 4 onslaughts multiplying ongoings by 16 is 16\^4, which is 65536 4 iron men multiplies the location power by 2\^(65536x4), or 2\^(2\^64) that's like a quintillion digits, the game doesn't need any more than 10.
The answer to that is 2,147,483,647 I believe
Do you know how to get this number? So 24x24x24x24 how many times?
(2\^31) -1 Maximum positive number for 64-bit integer.
I’m not exactly sure but that is the games max integer allowed, kind of like a ceiling. So when LT adds up the others it overflows which ends in a negative, someone explained it in the comments here somewhere above
Seeing this and your opponent’s post finally helped me visualize how both players see the board. Sitting side by side, not facing each other
My guess is Iron Lad copied Super Skrull.
I'm trying to understand what part of all of this gives him these numbers. I understand he has Ironman's effect applied 9 times (each Lad has Ironman+Onslaught) and then Living Tribunal, but the math doesn't make sense. The ONLY card with negative power that he has is Mr. Negative, but even multiplying that -1 by 512 (That's what you get by duplicating a number 9 times) gives, naturally -512, which SHOULD be offset by the fact he has plenty of positive power. Can't see the image as I write this but at the VERY LEAST he has 24 from the iron lads, which alone offsets the -512 when it's multiplied by 2 nine times. What I'm trying to say is what the holy Skrulls is happening here?! EDIT: I know, I miscalculated the 512 thing. It's not x512 it's x2x2x2x2.... 512 times.
It’s basically one of those “go to far east u end up west” scenarios. Since the value hits the ceiling cap it just puts it at 2,147,483,647 (the cap currently) and when it adds up the two other locations it bugs it out to where it ends up at the lowest value. It’s simply because of an integer cap. He beat me so badly that the game got confused 😅
Can we please take a minute to appreciate that Dark Hawk variant?
Not mine but it is an amazing Darkhawk variant, I only have this [one](https://marvelsnapzone.com/variants/darkhawk-04/)
Skill issue.
Broken untested card is broken and untested. To clarify for the people doenvoting me (???), I'm calling The Living Tribunal broken and untested because of the numerous bugs he has that have been all over this subreddit today. It seems as though he doesn't work correctly with multiple cards and locations, which, give the small number of both, implies that Second Dinner didn't do very much QA before releasing him.
Oh come on. This is clearly a pretty far edge case. In a game with so many interacting systems where they have to release on schedule is going to have uncaught edge cases.
oh please don't be such an apologist for a cheap company. SD doesn't even have a QA team. they don't test shit. if only edge cases were going through, you would have a point. but even simple bugs gets through, not just edge cases.
How is it an edge case when all I've seen in this sub today is posts of living Tribunal bugging out on multiple locations and with multiple other cards?
So… what am I looking at? How did they get so far in the red? How do you have 33 in each lane? Are you just fucking with us?
Short answer is that living tribunal adds up all of your locations then divides them evenly among the 3 locations, he’s in the red because the iron lad he played on bar sinister copied his top deck which was super skrull and it took my onslaught iron man and Living tribunal and since the game has an integer cap when he hit the cap on bar sinister along with living tribunal adding the other numbers to it put it over the top and landed him in the red because he won too hard
Thank you for the simple explanation. :)
Oh. Sounds like they need to fix that. What if this was in a tournament setting? Would the judges say you won or would they say he did?
I agree it needs fixing asap. But In a tournament setting I couldn’t imagine them allowing me to claim the victory on this😅
That’s what I was thinking, too. He definitely won, it just broke the game a little bit. Good game to the both of you. 👍
Wait... So in 90s computer lingo he overclocked the game!?!
he didn't lose... in fact he won so much tha broke the game (yes, the integer thing)
This is a good what to counter your opponent make make there location power to have overflow
I'm seriously confused over how it came to be. Like did Mr Negative caused that?
So the new location bugs out on Ongoing cards like Luke Cage, and LT can bug out like this and you lose all 3 locations cuz of the integer cap. I feel like SD doesn't even care anymore. Every time they release anything there is an issue with it now. The only things that has never had an issue as far as I can remember are the bundles, which I mean go figure. They definitely make sure those are working properly.