Giter Site home page Giter Site logo

gamevault-app's Introduction

gamevault-app

logo You can find the official Website/Documentation here

Library Technical Decision Matrix

This is probably irrelevant to you if you are not a developer. GameVault internally needs to behave different in each of the following scenarios.

Scenario 1: No paths exist
Path State
D:/GameVault/Downloads/(74) Assassin's Creed Unity/ empty or non-existent
D:/GameVault/Installations/(74) Assassin's Creed Unity/ empty or non-existent

When does this happen

  • The Game was not even downloaded yet.
  • The Game was deleted.

What needs to be done

  • Don't show the game in download or library tab (obviously).

Scenario 2: Download Path exists
Path State
D:/GameVault/Downloads/(74) Assassin's Creed Unity/ contains the (partial) game.zip
D:/GameVault/Installations/(74) Assassin's Creed Unity/ empty or non-existent

When does this happen

  • The Game is still downloading.
  • The Game was freshly downloaded but not installed.
  • The Game was installed sometime ago but then deleted but the download was never cleared (unlikely)

What needs to be done

  • Identify the game using the id
  • Show the Game as "Downloaded" in the Downloaded Tab
  • Show the Game in the library but grey out the play button, inform the user that they need to install the game into the folder D:/GameVault/Installations/(74) Assassin's Creed Unity/ to play and track it using gamevault.
  • Change Download button to play button in Library View -> Game Details, link it to the Installations -> Game entry with greyed out play button.

Scenario 3: Both paths exist
Path State
D:/GameVault/Downloads/(74) Assassin's Creed Unity/ contains the game.zip
D:/GameVault/Installations/(74) Assassin's Creed Unity/ contains game files (.exe)

When does this happen

  • The Game has been freshly installed and User has not deleted the download yet
  • User forgot to delete download files or wants to keep it for offline/archival purposes.

What needs to be done

  • Identify the game using the id
  • Make the game playable in Installations tab
  • Offer User to clear the download folder using "Clear All" button, now that the game is installed to save some space.
  • Change Download button to play button in Library View -> Game Details, link it to the Installations -> Game entry.
  • Cracktime Daemon monitors Game Folder for running exes

Scenario 4: Installations Path exists
Path State
D:/GameVault/Downloads/(74) Assassin's Creed Unity/ empty or non-existent
D:/GameVault/Installations/(74) Assassin's Creed Unity/ contains game files (.exe)

When does this happen

  • The Game has been installed and the Download deleted.

What needs to be done

  • Identify the game using the id
  • Make the game playable in Installations tab
  • Offer User to clear the download folder using "Clear All" button, now that the game is installed to save some space.
  • Change Download button to play button in Library View -> Game Details, link it to the Installations -> Game entry.
  • Cracktime Daemon monitors Game Folder for running exes

License

CC BY-NC-SA 4.0

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

CC BY-NC-SA 4.0

gamevault-app's People

Contributors

yelo420 avatar alfagun74 avatar imgbotapp avatar zallist avatar dx37 avatar kairubyte avatar pr-scheduler[bot] avatar

Stargazers

Aleksandr avatar

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.