Compare commits

...

11 Commits

Author SHA1 Message Date
8740c41a63
update readme idk if this will work
All checks were successful
Rust / build (push) Successful in 1m28s
2024-08-29 15:45:19 -04:00
f057283998
Let's try building for windows using the action
All checks were successful
Rust / build (push) Successful in 1m17s
2024-08-29 15:03:27 -04:00
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
dd2d5a58b1
small tweak + formatting 2024-08-26 08:48:53 -04:00
b3a6fda4fb
I just felt like doing something
Some checks failed
Rust / build (push) Has been cancelled
2024-08-21 22:29:31 -04:00
tommy
bf8fee18b0
Merge pull request #1 from dowoge/use-fflag-to-remove-hard-240-fps-cap
new fflags
2024-07-31 16:49:16 -04:00
tommy
748b99f884
new fflags 2024-07-31 16:47:41 -04:00
b1dca41cad get rid of new ugly and useless menu + actually give a chance to the user to read what happened 2024-07-11 16:41:56 -04:00
tommy
9bd6ec348c
Create README.md 2023-06-14 22:24:56 -04:00
tommy
f873c38d61
Create rust.yml 2023-05-31 23:24:10 -04:00
4 changed files with 71 additions and 19 deletions

32
.gitea/workflows/rust.yml Normal file
View File

@ -0,0 +1,32 @@
name: Rust
on:
push:
branches: ["master"]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Install rust
uses: dtolnay/rust-toolchain@stable
with:
targets: "x86_64-pc-windows-gnu"
- name: Install cross compilation tools
run: sudo apt-get update && sudo apt-get install mingw-w64 -y
- name: Setup Cache
uses: Swatinem/rust-cache@v2
- name: Build release
run: cargo build --verbose --locked --release --target x86_64-pc-windows-gnu
- name: Archive build
uses: actions/upload-artifact@v3
with:
name: alt_enter_fix
path: target/x86_64-pc-windows-gnu/release/alt_enter_fix.exe

View File

@ -5,4 +5,5 @@ edition = "2021"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies] [target.x86_64-pc-windows-gnu]
linker = "x86_64-w64-mingw32-gcc"

5
README.md Normal file
View File

@ -0,0 +1,5 @@
# alt_enter_fix
[![Rust](https://git.tommyy.dev/tommy/alt_enter_fix/actions/workflows/rust.yml/badge.svg)](https://git.tommyy.dev/tommy/alt_enter_fix/actions/workflows/rust.yml)
fire program

View File

@ -1,46 +1,60 @@
use std::env; use std::{env, fs, io::{self, stdin, Read, Write}, path::Path};
use std::path::Path;
use std::fs;
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() {
let temprbx_lad = format!("{}\\Roblox",lad); let temprbx_lad = format!("{}\\Roblox", lad);
if Path::new(&temprbx_lad).is_dir() { if Path::new(&temprbx_lad).is_dir() {
rblxpath = temprbx_lad; rblxpath = temprbx_lad;
} }
} else if let Some(pfx86) = env::var("ProgramFiles(x86)").ok() { } else if let Some(pfx86) = env::var("ProgramFiles(x86)").ok() {
let temprbx_pfx86 = format!("{}\\Roblox",pfx86); let temprbx_pfx86 = format!("{}\\Roblox", pfx86);
if Path::new(&temprbx_pfx86).is_dir() { if Path::new(&temprbx_pfx86).is_dir() {
rblxpath = temprbx_pfx86; rblxpath = temprbx_pfx86;
} }
} }
if rblxpath != "" { if rblxpath != "" {
println!("Found path: {}",rblxpath); println!("Found path: {}", rblxpath);
} else { } else {
println!("Roblox not found (Die)"); println!("Roblox not found (Die)");
return; return;
} }
let versions = format!("{}\\Versions\\",rblxpath); 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);
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();
if cur_folder.to_lowercase().contains("version") { if cur_folder.to_lowercase().contains("version") {
let executable = format!("{}\\RobloxPlayerBeta.exe",cur_folder); let executable = format!("{}\\RobloxPlayerBeta.exe", cur_folder);
if Path::new(&executable).is_file() { if Path::new(&executable).is_file() {
let cs_folder = format!("{}\\ClientSettings",cur_folder); let cs_folder = format!("{}\\ClientSettings", cur_folder);
if !Path::new(&cs_folder).is_dir() { if !Path::new(&cs_folder).is_dir() {
fs::create_dir(&cs_folder).ok(); fs::create_dir(&cs_folder).ok();
println!("Created ClientSettings folder in {}",cur_folder); println!("Created ClientSettings folder in {}", cur_folder);
} else { } else {
println!("ClientSettings folder already exists in {}",cur_folder); println!("ClientSettings folder already exists in {}", cur_folder);
}
let cas_json = format!("{}\\ClientAppSettings.json",cs_folder);
if !Path::new(&cas_json).is_file() {
fs::write(cas_json, "{\"FFlagHandleAltEnterFullscreenManually\":\"False\",\"DFIntTaskSchedulerTargetFps\":5588562}").ok();
println!("Wrote ClientAppSettings.json to {}",cur_folder)
} else {
println!("ClientAppSettings.json already exists in {}",cur_folder)
} }
let cas_json = format!("{}\\ClientAppSettings.json", cs_folder);
fs::write(cas_json, fflag_contents).ok();
println!("Wrote ClientAppSettings.json to {}", cur_folder)
} }
} }
} }
println!("Press enter to exit");
let _ = io::stdin().read(&mut [0u8]).unwrap();
} }