Giter VIP home page Giter VIP logo

armoredcore6's Introduction

Armored Core 6

SQLite database for Armored Core 6 parts & stats. I've always wanted to write a build creator or randomizer as a side project, so I'm starting with the database. This is a work in progress.

This repo is archived

Wikidot is not kept up-to-date with the latest patch changes so this scraper does not have complete and accurate data with the latest changes and future upcoming patches.

An updated spreadsheet can be found here which is the most comprehensive set of tables for AC6 parts data. Courtesy of Armored Core Discord.

A handy web site is also available to view all AC6 data.

Why not just use a spreadsheet?

I'm a lazy developer and would rather write a scraper than manually copy-paste data. Also, I wanted to learn F# and this seemed like a good project to do that with.

GitHub Copilot is also writing most of this README for me, so that's pretty cool.

Credits

Information stored in the database is sourced from the Armored Core 6 Wikidot as well as the AC-3000 WRECKER arms page from Fandom. All credit to the original authors & editors on those pages for providing the data used here.

Usage

Running the scraper (requires .NET 7+):

$ dotnet run --project WikidotScraper/WikidotScraper.fsproj

The database is stored in data/ArmoredCore6.db and is inserted to from the scraper. It can be queried using any SQLite client, or the command line tool sqlite3.

To re-initialize the database, run ./manage-db.sh clean or delete the file then run ./manage-db.sh schema. This creates the tables & regenerates the SqlHydra types.

TODO

  • Create the database and tables
  • Scrape the wikidot pages for the data and store in memory
    • All frame parts (head, core, arms, legs)
    • All internal parts (FCS, generator, booster)
    • All weapons
    • Core expansions
  • Write the data to the database
  • Expand columns to include all stats
  • Create a simple web interface to query the database
  • Create a build randomizer that will pick a valid build using the stats in the database

armoredcore6's People

Contributors

coopernetes avatar

Stargazers

 avatar  avatar

Watchers

 avatar

armoredcore6's Issues

Investigate using the PC version as a data source

Spelunk through AC6 on PC and see if I can dump the game data directly. If so, generate the database directly from the game instead of the wikis. There's a few bits of missing data that has to be manually patched or mitigated.

Build randomizer

Ideas:

  • Randomize a complete run through the game, taking into account when parts become available
  • Choose between "themes" such as a random melee focused build or other combinations with synergies
  • Randomize the colours or decals

missing weapons data

The two weapons have incomplete data on wikidot. These will have to be manually inserted into the database.

http://armoredcore6.wikidot.com/weapon:hml-g2
http://armoredcore6.wikidot.com/weapon:44-091-jvln-beta

There is also a selection of columns that are missing from the tabular view. Some of this may be available in individual weapon pages so those will need to be scraped separately.

Example:

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.