Discuss Scratch

ajskateboarder
Scratcher
1000+ posts

break infinity

k7e wrote:

Even Cookie Clicker calls 10^309 infinity…
https://assets.scratch.mit.edu/get_image/.%2E/28188419f0d04afc5ebb6d37b2e8b8d0.png
10^309 is well over JavaScript's integer limit

64-bit integer support is suggested here. It would let you use numbers much higher than Scratch's current limit.
I don't really know why we'd need infinity.

Last edited by ajskateboarder (April 25, 2023 15:25:23)

yavuz61035
Scratcher
500+ posts

break infinity

BuzzedOut wrote:

sussy_baka1234567890 wrote:

it is hard to code in, this is why we need that Block!

I think most people who understand the concept of “post-infinity” could figure it out. Also, it’s pretty simple anyways:

if <[var1] > [inf]> then
change [ var2 ] by (1)
set [var1] to [0]
end

(Var1 is the variable that’d go over infinity, var2 is the amount of times infinity has been hit. If you really need to you could add var3, changing when var2 gets to infinity then you have infinite counting power!)
what if var3 reaches infinity

i am going to represent a number like {varn, …, var2, var1}

so basically
{1, 0} = 2^1024
{Infinity} = 2^1024
{1, 0, 0} = 2^2048
{Infinity, 0} = 2^2048
{1, 0, 0, 0} = 2^3072
{Infinity, 0, 0} = 2^3072

{1, 0, 0…(n zeroes), 0} = 2^(1024*n)
{Infinity, 0…(n-1 zeroes), 0} = 2^(1024*n)

and the operations are (they are 2 terms, but they can be extended)
{x, y} + {z, w} = {x+z, y+w}
{x, y} - {z, w} = {x-z, y-w}

Last edited by yavuz61035 (April 25, 2023 18:07:40)

waitwhat2288
Scratcher
100+ posts

break infinity

BuzzedOut wrote:

sussy_baka1234567890 wrote:

it is hard to code in, this is why we need that Block!

I think most people who understand the concept of “post-infinity” could figure it out. Also, it’s pretty simple anyways:

if <[var1] > [inf]> then
change [ var2 ] by (1)
set [var1] to [0]
end

(Var1 is the variable that’d go over infinity, var2 is the amount of times infinity has been hit. If you really need to you could add var3, changing when var2 gets to infinity then you have infinite counting power!)

I'm pretty sure “Infinity” is a string value on Scratch, so there would be no instance where infinity would be less than another value. Changing “>” to “=” will make this piece of code operate correctly.
medians
Scratcher
1000+ posts

break infinity

waitwhat2288 wrote:

I'm pretty sure “Infinity” is a string value on Scratch, so there would be no instance where infinity would be less than another value. Changing “>” to “=” will make this piece of code operate correctly.
And to do that, just right click the operator, and you’ll be able to swap between <, >, and = (works with the other blocks too).
INSERT-USER_NAME
Scratcher
1000+ posts

break infinity

medians wrote:

waitwhat2288 wrote:

I'm pretty sure “Infinity” is a string value on Scratch, so there would be no instance where infinity would be less than another value. Changing “>” to “=” will make this piece of code operate correctly.
And to do that, just right click the operator, and you’ll be able to swap between <, >, and = (works with the other blocks too).
They removed this in Scratch 3.0. (i think)
medians
Scratcher
1000+ posts

break infinity

INSERT-USER_NAME wrote:

medians wrote:

waitwhat2288 wrote:

I'm pretty sure “Infinity” is a string value on Scratch, so there would be no instance where infinity would be less than another value. Changing “>” to “=” will make this piece of code operate correctly.
And to do that, just right click the operator, and you’ll be able to swap between <, >, and = (works with the other blocks too).
They removed this in Scratch 3.0. (i think)
Yeah I’m going to check my extension settings (since I remembered it being in 3.0).
Edit: Anddd I see block switching at the top of my enabled settings WHY

Last edited by medians (April 25, 2023 23:40:47)

simy8
Scratcher
17 posts

break infinity

Just use a list, then you can go up to 1e20000 I think
it might be higher
or store the e in a separate variable, so then it can go up to 1e1e308
mcsquaggle
Scratcher
500+ posts

break infinity

7salad3salad wrote:

tyjinw1 wrote:

Za-Chary wrote:

tyjinw1 wrote:

Za-Chary wrote:

What would this block do?
the block will change if you can break infinity or not
And what specifically does it mean to “break infinity”?
like you can have a variable more than 1.7977e+308
so like infinity+1 and infinity+2
i think he means going past 1.7977e+308 without it being replaced with “Infinity” like most varibles.
tyjinw1
Scratcher
100+ posts

break infinity

who necroposted
mcsquaggle
Scratcher
500+ posts

break infinity

tyjinw1 wrote:

who necroposted
necroposting doesnt exist in suggestions, if it's relevant to the topic.
WindowsMeRules2000
Scratcher
500+ posts

break infinity

This is the exact same as the bignum.js extension
tyjinw1
Scratcher
100+ posts

break infinity

mcsquaggle wrote:

tyjinw1 wrote:

who necroposted
necroposting doesnt exist in suggestions, if it's relevant to the topic.
oh
tyjinw1
Scratcher
100+ posts

break infinity

simy8 wrote:

Just use a list, then you can go up to 1e20000 I think
it might be higher
or store the e in a separate variable, so then it can go up to 1e1e308
nah i want it to become big numbers like TREE (3) without it being complicated
IndexErrorException
Scratcher
500+ posts

break infinity

Bro it's not quite that simple. Big num libraries have limits too, and they are much slower and take up more more memory.

Having big number in Scratch would be interesting but niche. Plus if you really need it then you can implement it.
ajskateboarder
Scratcher
1000+ posts

break infinity

IndexErrorException wrote:

Having big number in Scratch would be interesting but niche. Plus if you really need it then you can implement it.
Exactly. Even clicker games don't need such big numbers, and there's a relatively simple workaround that should be fine for the few people who need to break infinity (somehow)

oxiti8 wrote:

Easy workaround would be to catch each time infinity occurs, then roll back the main counter to 0, effectively resulting in X*Infinity + Y
cookieclickerer33
Scratcher
1000+ posts

break infinity

Solution
(join [] [world])
I can make a way to add 2 numbers using join that bypasses infinity by making it a text string that contains numbers
windowsinfinity2k1
Scratcher
21 posts

break infinity

Support
funyp
Scratcher
98 posts

break infinity

You can do this to make a googolchime (10^1,000) stored in the starter variable “my variable”:

when green flag clicked
delete all of [vars v]
add [1] to [vars v]
add [1000] to [vars v]
set [my variable v] to ((join [(item (1) of [vars v)] (join [e] [(item [2] of [vars v)])))

I’ll be making a test of this to see if it works plus a few other things…

Help me make Battle of the Scratch Cats with PFPs - A 10 Minute Long Movie! Coming soon!

Last edited by funyp (May 18, 2024 23:03:59)

INSERT-USER_NAME
Scratcher
1000+ posts

break infinity

Pretty sure this is physically impossible
unknown2467
Scratcher
100+ posts

break infinity

No support, if you need to break the integer limit, just use a number engine that already exists on scratch.
  • Break_infinity.sb3 - e1.797e308 (10^10^308)
  • Break_eternity.sb3 - F1.797e308 (10^^10^308)
  • ExpantaNum.sb3 - K2e5 (K9.007e15 on js, 10{{1}}200,000 or 10{{1}}2^53)
I don't think we would need a block which toggles break infinity, overall, number engines in javascript are also code, which means there's no built in library.
There's also a problem with how the abbreviator would be like at tetration, there are many different systems, Arrow notation, FGH-J, PT notation, Hyper-E and way more notations which are all different. There's really no standard way to write a big number.
king page with edit
no more king because some posts deleted

Last edited by unknown2467 (March 24, 2025 11:50:06)

Powered by DjangoBB