NOTICE:
the bidentify filestructure including the files is available via :
https://ftp.armedassault.info/armaholic/
bIdentify ( Pronounced: Bee-Eye-dentify )
A file identification utility-suite for detecting, finding and archiving usergenerated content for Bohemia Interactive games.
The bIdentify-client is a commandline tool to scan, detect & identify Addons and Missions archives, folders or .pbo's
The bIdentify-server is the database/web-backend for use with the bidentify-client,bidentify-node,bidentify-vault.
The bIdentify-node is a Torrent based file-archive that seeds files ( limited to specific size) which are listed in the Bidentify server of your choice.
The bIdentify-vault is a Torrent based file-archive that archives and seeds (ALL!) files which are listed in the Bidentify-server. This package is for dedicated librarians who want to preserve and longterm seed all data on the Bidentify server of your choice.
Why?
Because after 20 years, stuff tends to get lost in many ways. With the recent demise of A-holic it became clear to me that there must be a better and more permanent way of archiving old game-content. Hosting this gamecontent permanently is done by a few site-owners, clans or archivers - like me. But these resources are not eternal, and even i am aware that im not immortal. this project is sole purpose is enabling the community to preserve files with no (or minimal) obligations to any-one. Anyone can host to preserve data, even on very old hardware or slow connections.
Inspired by the structure ( and a lot of addon-data ) that i scraped from armaholic, i decided to whip up a 'missing in action' list based on the files i was unable to fetch from armaholic.
The script worked, but wasnt very intelligent. it indexed your local directories, and looked for a match on the armaholic mia list - and that's that.
What?
Once my initial script was used by forummembers, i realised that a text-only database of all addons etc would be a better approach to get as much missing content back, as well as adding new content that wasnt listed on a-holic. But what use is a text-only index of files, if dont have the files, or dont know where to get it? For Arma2 and below, you need to download files from sites, or ftp's. And since the ftp support has been dropped from major browsers, i realised a alternative download protocol is the best way to go if you want to distribute lots & old data. If there was one master-list of all files and its hashes & magnet links, everybody could host (a portion of ) all addons using torrent.
In a nutshell, using the client - or hosting a node, vault or server on your old harddisk connected to that 25$ singleboard computer ( a raspberrypi is about 50$) equals supporting the (few) arma-librarians that are left. If you still dont know what you can do? below i try to explain that a bit further.
bIdentify-client (Windows .exe/python) (git-repo)
Anyone can use the bIdentify-client if they want to clean up their old harddrives - but is not sure if all his old arma-content can be re-downloaded via resources like armaholic. The commandline client is merely a smart indexer, that allows submission of addon-content to the bIdentify network
bIdentify-node ( docker/linux ) (git)
A clan or enthousiast could be a bIdentify-node, this means hosting (with traffic-caps or timeslots) a portion of the torrents from the masterlist. these node's are volatile.
bIdentify-vault ( docker/linux )
A archiver, like myself -or anyone-else would be a bIdentify-vault. this means that ALL data will be hosted via torrent, and is intented to be available 24/7 (with traffic-caps or timeslots)
bIdentify-server ( docker/linux ) (git-repo)
At least 1 bIdentify-server is needed *( and is hosted by me for now) This is the API backend for the bIdentify-client and can function as a json backend for any website that would like to offer the files in form of magnet-links to the public. it is possible to run multiple bIdentify-server servers, as they all sync with eachother.
bIdentify-definitions (git-repo)
This is a github-hosted repository which contain the master-and server lists.
The master list where all of the bIdentify applications get their serverlists from, are hosted on github, as well as the code. Periodically, the master-index of all files will be uploaded to the github-repository on a yearly basis. the bIdentify-node's will sync content with the available bIdentify-vaults. Vaults and Nodes are the most vital to keep the old file archive preserved. at least 2 bIdentify-vault's and 1 bIdentiy-servers are required to redundantly keep the old-file archives alive.
Whats the status?
Currently the project is in the start of its development, yet the bIdentify-client is near completion and will be released shortly.
04/6/2021 - started in python, added initial indexing functionality
09/6/2021 - added addon parsing config.cpp, prerelease executable tested.
10/6/2021 - added mission detection, zipped-mission detection and pbo-mission detection
12/6/2021 - initial torrent generation & seeding implemented. the first bidentify-vault is up and running!
13/6/2021 - initial minimalistic web gui in progress (**)
14/6/2021 - missing files added in catalog (**)
15/6/2021 - client-upload is done, server upload facility & torrent generation is almost finished.
24/6/2021 - silent release of the client. (Download here)
05/7/2021 - added pbo inspection to bidentify-node thanks to Mikero
ToDo:
- Add date & author to files.
- Size & file totals per section
- simple usage instructions.
Where can i download....
Old Armaholic content?!
http://bidentify.jerryhopper.com
The Bidentify-client?!
https://github.com/jerryhopper/bidentify-client/releases
Usage :
- Download & unpack the zipfile.
- open a commandprompt, and navigate to the folder where you unpacked the zip.
- type : bidentify.exe -d "D:\directoryToScan"
"The past is on your harddisks, the future is in your hands"
Hardware
A typical bidentify-node or bidentify-vault. this setup costs ~ $50 without the harddisk. ( ~$26 ~$44 )
Obviously, any other singleboard computer can be used, like the RaspberryPi - or any other board with 512MB or more.