2 Commits

Author SHA1 Message Date
52359bfeeb dynamic fps cap! (dewb)
All checks were successful
Rust / build (push) Successful in 1m55s
2024-08-29 17:55:40 -04:00
8c19ed0208 Rename folder .github -> .gitea + rewrite
All checks were successful
Rust / build (push) Successful in 1m40s
2024-08-26 13:52:34 -04:00
2 changed files with 30 additions and 40 deletions

View File

@ -6,45 +6,21 @@ on:
jobs: jobs:
build: build:
runs-on: windows-latest runs-on: ubuntu-latest
steps: steps:
- uses: actions/checkout@v3 - uses: actions/checkout@v3
- name: Build release - name: Install rust
uses: actions-rs/cargo@v1 uses: actions-rs/toolchain@v1
with: with:
command: build toolchain: stable
args: --release
- name: Build release
run: cargo build --release
- name: Archive build - name: Archive build
uses: actions/upload-artifact@v4 uses: actions/upload-artifact@v3
with: with:
name: alt_enter_fix name: alt_enter_fix
path: target/release/alt_enter_fix.exe path: target/release/*
release:
needs: build
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Download release artifact
uses: actions/download-artifact@v4
with:
name: alt_enter_fix-release
path: alt_enter_fix-release
- name: Get the current date
id: date
run: echo "CURRENT_DATE=$(date +'%Y%m%d')" >> $GITEA_ENV
- name: Upload release build artifact to GitHub Release
uses: softprops/action-gh-release@v2
with:
name: ${{ env.CURRENT_DATE }}
tag_name: ${{ env.CURRENT_DATE }}
draft: false
make_latest: true
files: alt_enter_fix-release/*

View File

@ -1,4 +1,4 @@
use std::{env, fs, io, io::Read, path::Path}; use std::{env, fs, io::{self, stdin, Read, Write}, path::Path};
fn main() { fn main() {
let mut rblxpath = String::new(); let mut rblxpath = String::new();
if let Some(lad) = env::var("LOCALAPPDATA").ok() { if let Some(lad) = env::var("LOCALAPPDATA").ok() {
@ -18,6 +18,24 @@ fn main() {
println!("Roblox not found (Die)"); println!("Roblox not found (Die)");
return; return;
} }
println!("What FPS would you like to cap the fps to? (0 for no cap at all)");
let _ = io::stdout().flush();
let mut input = String::new();
stdin().read_line(&mut input).expect("invalid input, try again");
if let Some('\n')=input.chars().next_back() {
input.pop();
}
if let Some('\r')=input.chars().next_back() {
input.pop();
}
let fps = input.parse::<i32>().unwrap();
let desired_fps = match fps {
0 => 5588562,
_ => fps
};
println!("fps cap will be set to {desired_fps}");
let just_make_this_work = format!("{{\"FFlagHandleAltEnterFullscreenManually\":\"False\",\"DFIntTaskSchedulerTargetFps\":{desired_fps},\"FFlagEnableInGameMenuChromeABTest3\":\"False\",\"FFlagGameBasicSettingsFramerateCap5\":\"False\",\"FFlagTaskSchedulerLimitTargetFpsTo2402\":\"False\"}}");
let fflag_contents = just_make_this_work.as_str();
let versions = format!("{}\\Versions\\", rblxpath); let versions = format!("{}\\Versions\\", rblxpath);
for folder in fs::read_dir(versions).unwrap() { for folder in fs::read_dir(versions).unwrap() {
let cur_folder = folder.unwrap().path().display().to_string(); let cur_folder = folder.unwrap().path().display().to_string();
@ -32,12 +50,8 @@ fn main() {
println!("ClientSettings folder already exists in {}", cur_folder); println!("ClientSettings folder already exists in {}", cur_folder);
} }
let cas_json = format!("{}\\ClientAppSettings.json", cs_folder); let cas_json = format!("{}\\ClientAppSettings.json", cs_folder);
if !Path::new(&cas_json).is_file() { fs::write(cas_json, fflag_contents).ok();
fs::write(cas_json, "{\"FFlagHandleAltEnterFullscreenManually\":\"False\",\"DFIntTaskSchedulerTargetFps\":5588562,\"FFlagEnableInGameMenuChromeABTest3\":\"False\",\"FFlagGameBasicSettingsFramerateCap5\":\"False\",\"FFlagTaskSchedulerLimitTargetFpsTo2402\":\"False\"}").ok(); println!("Wrote ClientAppSettings.json to {}", cur_folder)
println!("Wrote ClientAppSettings.json to {}", cur_folder)
} else {
println!("ClientAppSettings.json already exists in {}", cur_folder)
}
} }
} }
} }