Yakuza 28

Deneyimli
Katılım
23 Nisan 2026
Mesajlar
580
Çözümler
1
Beğeniler
532
1778856232728.webp


Ben yaptım bu programı, basit bir şey zaten; matematiğini hallettikten sonra sıkıntı yok.

Bununla yaptığım tuninglerden deli para kazanmıştım ki zaten ihtiyacım da yoktu.

Hala FH5'e ara sıra girer para ödülünü alır çıkarım.

import tkinter as tk
from tkinter import messagebox

def hesapla():
try:
kilogram = float(entry_kilogram.get())
agirlik_merkezi = float(entry_agirlik_merkezi.get())

1. Ön Süspansiyon​

on_suspansiyon = (kilogram * 2.204 * 0.5 * agirlik_merkezi * 0.95) / 5.595

2. Arka Süspansiyon​

arka_suspansiyon = (kilogram * 2.204 * 0.5 * (1 - agirlik_merkezi) * 0.95) / 5.595

3. Ön Tampon Ayarı​

on_tampon_ayari = 20 * agirlik_merkezi * 0.65

4. Arka Tampon Ayarı​

arka_tampon_ayari = 20 * (1 - agirlik_merkezi) * 0.65

5. Ön Geri Tepme​

on_geri_tepme = on_tampon_ayari * 1.6

6. Arka Geri Tepme​

arka_geri_tepme = arka_tampon_ayari * 1.6

Sonuçları ekranda göster​

label_sonuc.config(text=f"""
Front Spring: {on_suspansiyon:.2f}
Rear Spring: {arka_suspansiyon:.2f}
Front Bumper: {on_tampon_ayari:.2f}
Rear Bumper: {arka_tampon_ayari:.2f}
Front Rebound: {on_geri_tepme:.2f}
Rear Rebound: {arka_geri_tepme:.2f}
""")
except ValueError:
messagebox.showerror("Error", "Type Car Weight and Weight Distribution!")

def aero_hesapla():
try:
agirlik_merkezi = float(entry_agirlik_merkezi.get())
on_aero_kg = float(entry_on_aero_kg.get())

Aero Hesaplama​

aero = (on_aero_kg / agirlik_merkezi) * (1 - agirlik_merkezi)

Sonuçları ekranda göster​

label_sonuc.config(text=f"Rear Aero: {aero:.2f}")
except ValueError:
messagebox.showerror("Error", "Type Car Weight Distribution and Front Aero(KG)!")

Pencereyi oluştur​

pencere = tk.Tk()
pencere.title("FH5 Car Balancer")
pencere.geometry("400x500")

Pencereye ikon ekleme​

pencere.iconbitmap('D:\FH5.ico') # Buraya kendi ikon dosyanızın adını ve yolunu yazın.

Arka plan rengini siyah yapalım​

pencere.config(bg="dark grey")

Etiketler ve girişler​

label_kilogram = tk.Label(pencere, text="Car Weight (KG):", bg="dark gray")
label_kilogram.pack(pady=5)
entry_kilogram = tk.Entry(pencere)
entry_kilogram.pack(pady=5)

label_agirlik_merkezi = tk.Label(pencere, text="Weight Distribution (Between 0-1 Example: if Front %45, Type--> 0.45):", bg="dark gray")
label_agirlik_merkezi.pack(pady=5)
entry_agirlik_merkezi = tk.Entry(pencere)
entry_agirlik_merkezi.pack(pady=5)

label_on_aero_kg = tk.Label(pencere, text="Type Desired Front Aero (KG):", bg="dark gray")
label_on_aero_kg.pack(pady=5)
entry_on_aero_kg = tk.Entry(pencere)
entry_on_aero_kg.pack(pady=5)

Hesapla butonları​

buton_hesapla = tk.Button(pencere, text="Calculate Springs-Bumper-Rebound", command=hesapla)
buton_hesapla.pack(pady=10)

buton_aero_hesapla = tk.Button(pencere, text="Calculate Aero", command=aero_hesapla)
buton_aero_hesapla.pack(pady=10)

Sonuç etiketi​

label_sonuc = tk.Label(pencere, text="", justify="left", bg="dark gray", fg="black")
label_sonuc.pack(pady=10)

Döngüyü başlat​

pencere.mainloop()

Pencere'ye ikon eklemeyi kaldırabilirsiniz, o opsiyonel.

FH6 için de aynısını deniyorum, FH6 motoru gerçi Forza Motorsport ile aynı ama fena değil gibi görünüyor araç hakimiyetleri.
 
Son düzenleme: