{"id":18075040,"url":"https://github.com/lnsp/bench-server","last_synced_at":"2025-04-05T19:19:15.434Z","repository":{"id":18515796,"uuid":"21712951","full_name":"lnsp/bench-server","owner":"lnsp","description":"A simple patch-server for games and apps based on HTTP and file hashes.","archived":false,"fork":false,"pushed_at":"2016-08-14T23:08:53.000Z","size":303,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-11T16:43:14.252Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://lnsp.github.io/bench-server","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lnsp.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-07-10T22:49:56.000Z","updated_at":"2016-04-11T10:04:17.000Z","dependencies_parsed_at":"2022-09-25T00:02:16.863Z","dependency_job_id":null,"html_url":"https://github.com/lnsp/bench-server","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lnsp%2Fbench-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lnsp%2Fbench-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lnsp%2Fbench-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lnsp%2Fbench-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lnsp","download_url":"https://codeload.github.com/lnsp/bench-server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247386478,"owners_count":20930649,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-31T10:44:14.239Z","updated_at":"2025-04-05T19:19:15.410Z","avatar_url":"https://github.com/lnsp.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"Bench [![Build Status](https://travis-ci.org/lnsp/bench-server.svg?branch=master)](https://travis-ci.org/lnsp/bench-server)\n=================\n\nBench provides a easy-to-use patch-environment for games and apps.\n\n## How does it work?\nBench uses three main contexts for sharing data.\n\n| Context  | Description |\n| -------- |-----------------------------------------------------------------------------------------------|\n| `/hash`  | Returns a plain text listing all files and their proper MD5-checksums seperated with a dollar-sign |\n| `/files` | Represents the /files directory on the server |\n| `/package`| Returns the zip file for complete new game installations |\n\n## Using the release archives\n\n*A step by step introduction for using the release jars.*\n\n### Deploying a patch\n\n1. Create a server root folder\n2. Copy the JAR-files into the folder\n3. Copy the ZIP-file with the game files into the folder\n4. Rename the pasted ZIP-file for example to *release.zip*\n4. Open a terminal (cmd, bash or something)\n5. Enter `java -jar PatchDeployer.jar release.zip`\n6. Close the terminal if everything was successful\n\nWhen you want to use the server without the ZIP-file, you can just copy all your game files into the files folder, open a terminal and run the PatchDeployer.jar without any command line argument.\n\n### Running the server\n\n1. After the deploying the patch you have to open a new terminal\n2. Type in `java -jar PatchServer.jar`\n3. Now you should see some log messages\n4. Open your webbrowser and enter the URL `localhost/hash`\n5. When everything works fine, you should see a list of files and their attached hashes (only when the release.zip isn't empty)\n6. You can customize the server by editing the config.properties file\n\n## Building the project\n\n1. Clone the repository using `git clone https://github.com/mooxmirror/Bench.git`\n2. Run `maven package`\n3. If successful, you get a file named `bench-x.x.x-jar-with-dependencies.jar`\n4. Copy this file to the folder, where you want to run the server\n5. To use the patch deployer, enter `java -cp bench-x.x.x-jar-with-dependencies.jar io.mooxmirror.bench.deployer.PatchDeployer [archive file]`\n6. To use the patch server, enter `java -cp bench-x.x.x-jar-with-dependencies.jar io.mooxmirror.bench.system.HttpPatchServer`\n7. Continue with the steps you find above\n\n### Example configuration file\n\nHere is a example configuration file (config.properties) with fully annotated settings:\n\n```\n# Bench configuration file\n# Enable /hash context\nhash.context=true\n# Enabled /package context\npackage.context=true\n# Enable /files context\nfiles.context=true\n# Port for the listener\nserver.port=80\n# Cache lifetime in milliseconds (600000ms = 600s = 10m)\ncache.lifetime=600000\n```\nYou successfully set up a new Bench server!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flnsp%2Fbench-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flnsp%2Fbench-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flnsp%2Fbench-server/lists"}