Coder Social home page Coder Social logo

fabxx / gsg Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 158 KB

GSG Is a game script generator. Allows you to automatically create sh files to run games.

License: GNU General Public License v3.0

Shell 54.60% PowerShell 45.40%

gsg's Introduction

gsg's People

Contributors

fabxx avatar

Stargazers

 avatar

Watchers

 avatar  avatar

gsg's Issues

Automate prefix creation process

-Gather the data from the user via CLI instead of forcing the user to manually edit the script

-Allow the user to choose the path of destination of the prefix folder

-Check if the filesystem is EXT4, if not allow the user to choose again.

-Automatically install required winetricks packages based on the game chose by the user, for this the games will be organized in categories:

             Generic Prefix
             Specific Prefix

             each game containing ID and name, user will choose game by ID, and by parsing the game string winetricks
             will determine which packages to add in the prefix.

-Check if the user tries to use the generic prefix for a specific prefix game to avoid conflicts in the setup that might cause game
crashes. A specific prefix MUST be a separate folder from the generic prefix.

-Automatically insert the prefix path in the script

-Get game path from CLI

Simplify file structure

gather all the scripts in one unique script, with separators for each platform selected with their respective parse functions

Add autorename before auto sorting

If you have multiple files with the same name, but one file name has double extension, the auto sort can make all the folders for the names but it can get stuck during the move operation, resulting in a deadlock.

To ensure this doesn't happen, get the first filename, then rename the others that follow in order with the same name, but keep the extension.

This happened in my case where the HDD had multiple files with big size, and the indexing was slow. THe issue might be also related to the HDD itself and not the program, because the script does continue to scroll into folders and move files.

Implement folder sorting

  • make sure that there's enough disk space to create the folders

  • Parse all single rom files with their extension

  • Create folders with the respective name of the parsed rom files without the extension

  • Move the rom files into the matching folders

  • Generate the start.sh scripts into the generated folders.

This mechanism will automatically put the roms into their folders for the user if they accept the prompt to do so. So if the user already sorted its folders the script won't try to do it.

Does not support extracted rom files (xenia .xex format, cxbx-r .xbe format and such) since they will already have their own folders containing the file to run.

supports:

  • files that contain the game in a single file where can boot

  • multiple files with the same name but different extensions, and still boot from one single file
    (example ps1 games use .bin and .cue, the parser will move both bin and cue if they have the same name, and the parser will parse only for the .cue to boot)

    Extra

  • Add support for image extensions, so steam rom manager will auto detect the start.sh and the cover.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.