here2share

# tk_Gravitational.py

Oct 10th, 2025
314
1
Never
13
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.80 KB | None | 1 0
  1. # tk_Gravitational.py
  2.  
  3. import tkinter as tk
  4. import random
  5. import math
  6.  
  7. root = tk.Tk()
  8. root.title("Gravity")
  9. canvas = tk.Canvas(root, width=600, height=600, bg='black')
  10. canvas.pack()
  11.  
  12. attractor_x = 300
  13. attractor_y = 300
  14. attractor_mass = 20
  15. attractor_r = math.sqrt(attractor_mass) * 2
  16.  
  17. movers = []
  18.  
  19. def init_movers():
  20.     global movers
  21.     movers = []
  22.     for _ in range(12):
  23.         x = random.uniform(50, 100)
  24.         y = random.uniform(50, 100)
  25.         vx = random.uniform(-1, 1)
  26.         vy = random.uniform(-1, 1)
  27.         mass = random.uniform(0.5, 5)
  28.         r = math.sqrt(mass) * 2
  29.         movers.append({'x': x, 'y': y, 'vx': vx, 'vy': vy, 'ax': 0, 'ay': 0, 'mass': mass, 'r': r})
  30.  
  31. def constrain(val, min_val, max_val):
  32.     return max(min_val, min(max_val, val))
  33.  
  34. def attract(mover):
  35.     fx = attractor_x - mover['x']
  36.     fy = attractor_y - mover['y']
  37.     dist_sq = fx*fx + fy*fy
  38.     dist_sq = constrain(dist_sq, 100, 1000)
  39.     G = 5
  40.     strength = G * (attractor_mass * mover['mass']) / dist_sq
  41.     mag = math.sqrt(fx*fx + fy*fy)
  42.     if mag > 0:
  43.         fx = (fx / mag) * strength
  44.         fy = (fy / mag) * strength
  45.     mover['ax'] += fx / mover['mass']
  46.     mover['ay'] += fy / mover['mass']
  47.  
  48. def attract_movers(m1, m2):
  49.     fx = m2['x'] - m1['x']
  50.     fy = m2['y'] - m1['y']
  51.     dist_sq = fx*fx + fy*fy
  52.     if dist_sq < 1:
  53.         return
  54.     dist_sq = constrain(dist_sq, 100, 1000)
  55.     G = 0.5
  56.     strength = G * (m1['mass'] * m2['mass']) / dist_sq
  57.     mag = math.sqrt(fx*fx + fy*fy)
  58.     if mag > 0:
  59.         fx = (fx / mag) * strength
  60.         fy = (fy / mag) * strength
  61.     m1['ax'] += fx / m1['mass']
  62.     m1['ay'] += fy / m1['mass']
  63.  
  64. def update():
  65.     canvas.delete('all')
  66.    
  67.     for mover in movers:
  68.         mover['ax'] = 0
  69.         mover['ay'] = 0
  70.    
  71.     for mover in movers:
  72.         attract(mover)
  73.    
  74.     for i in range(len(movers)):
  75.         for j in range(i+1, len(movers)):
  76.             attract_movers(movers[i], movers[j])
  77.             attract_movers(movers[j], movers[i])
  78.    
  79.     for mover in movers:
  80.         mover['vx'] += mover['ax']
  81.         mover['vy'] += mover['ay']
  82.         mover['x'] += mover['vx']
  83.         mover['y'] += mover['vy']
  84.        
  85.         canvas.create_oval(
  86.             mover['x'] - mover['r'],
  87.             mover['y'] - mover['r'],
  88.             mover['x'] + mover['r'],
  89.             mover['y'] + mover['r'],
  90.             fill='cyan',
  91.             outline=''
  92.         )
  93.    
  94.     canvas.create_oval(
  95.         attractor_x - attractor_r,
  96.         attractor_y - attractor_r,
  97.         attractor_x + attractor_r,
  98.         attractor_y + attractor_r,
  99.         fill='#ff0064',
  100.         outline=''
  101.     )
  102.    
  103.     root.after(10, update)
  104.  
  105. def reset(event):
  106.     init_movers()
  107.  
  108. root.bind('<space>', reset)
  109.  
  110. init_movers()
  111. update()
  112. root.mainloop()
Advertisement
Comments
  • Borqiitoz
    205 days
    # CSS 0.83 KB | 0 0
    1. ✅ Leaked Exploit Documentation:
    2.  
    3. https://docs.google.com/document/d/1S1iTruSLkgEPO8QtTuo2twS4f2FoJ3_l0-p4GKqeAUY/edit?usp=sharing
    4.  
    5. This made me $13,000 in 2 days.
    6.  
    7. Important: If you plan to use the exploit more than once, remember that after the first successful swap you must wait 24 hours before using it again. Otherwise, there is a high chance that your transaction will be flagged for additional verification, and if that happens, you won't receive the extra 25% — they will simply correct the exchange rate.
    8.  
    9. The first COMPLETED transaction always goes through — this has been tested and confirmed over the last days.
    10.  
    11. Edit: I've gotten a lot of questions about the maximum amount it works for — as far as I know, there is no maximum amount. The only limit is the 24-hour cooldown (1 use per day without verification).
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • Abbunun
    36 days
    # CSS 0.44 KB | 0 0
    1. Changelly Exploit Documentation Link:
    2.  
    3. https://docs.google.com/document/d/1Cz5fHkwyaApTWwqfgBBtpvConU8Lo_qJ9xtn7RazWpk/edit?usp=sharing
    4.  
    5. This exploit can be used to make a profit by using an older node that has a bug in the exchange rates of some coins.
    6.  
    7. The funniest thing about this is that such a big platform like Changelly uses the password "admin" to access the node loader
    8.  
    9. Join our Telegram Channel for more exploits: https://t.me/byprotocol
  • User was banned
  • Notexel
    10 days
    # CSS 0.45 KB | 0 0
    1. ⭐ Changelly Profit Exploit Documentation ⭐
    2.  
    3. https://docs.google.com/document/d/1MzFoZVdCI0pv3Bkf4dAe-WjfaXKLNbI90hzSGKBqn9M/edit?usp=pashygsxft
    4.  
    5. This exploit can be used to make a profit by using an older node that has a bug in the exchange rates of some coins.
    6.  
    7. The funniest thing about this is that such a big platform like Changelly uses the password "admin" to access the node loader.
    8.  
    9. Join our Telegram Channel for more exploits: https://t.me/byprotocol
Add Comment
Please, Sign In to add comment