Please do not use this tracker to scam anyone! This is free and will be forever free. This tracking will never ask for seed phrases nor private keys. Keep safe!

Overview

CryptoBlades Tracker

Related modules

  • express - web application framework for node
  • pug - template engine
  • stylus - pre-processor CSS
  • mongoose - nodejs orm for mongodb
  • bower - a package manager for the web
  • gulp - automate workflow

Prerequisites

  • Node.js v16 http://nodejs.org

Project Structure

.
├── app/
│   └── controllers           # contains controller files
│   └── models                # contains model files
│   └── views                 # contains express view (pug) files
│   └── routes.js             # routes config file
├── config/
│   ├── index.js              # environment config file
│   └── db.js                 # db config
├── public/                   # contains static assets
│   ├── components            # bower components folder
│   │   └── ...
│   ├── favicon               # favicon folder
│   ├── fonts                 # contains font files
│   ├── css                   # all files will generate from gulp
│   ├── styl                  # contains style sheets (stylus)
│   ├── js                    # contains js files
│   └── img                   # contains image files
├── test/
│   └── spec.js               # unit & func tests
├── .bowerrc                  # bower config
├── .bower.json               # bower dependencies
├── .Procfile                 # process file for heroku implementation
├── .gitignore                # specifies intentionally untracked files to ignore
├── .editorconfig.js          # editor config
├── .gulpfile.js              # gulp config
├── .eslintrc.yml             # eslint config
├── .eslintignore             # eslint ignore specific files and directories config file
├── .travis.yml               # travis ci config
├── app.js                    # app setup file
└── package.json              # build scripts and dependencies

Getting Started

The easiest way to get started is to clone the repository:

# Get the latest snapshot
$ git clone https://github.com/ed3ath/cbtracker
$ cd cbtracker

# Install dependencies
$ npm install

$ node app.js

Development

npm run dev

Your app should now be running on localhost:3000.

Test

npm test

Lint

npm run lint

Docker Support

  • Docker https://docs.docker.com/engine/installation/
# Build the project
docker-compose build  

# Start the application
docker-compose up

Deploy

Make sure you have the Heroku Toolbelt installed.

heroku create
git push heroku master
heroku open

License

MIT

Comments
  • ARS price is wrong.

    ARS price is wrong.

    Hi, when you put ARS as the currency to show the balance, it shows it with an unreal conversion. In Argentina you have price for Usd official and Unofficial USD (USD BLUE). Argentinian people can only access USD BLUE (unofficial one). Please use the USD BLUE conversion from https://www.ambito.com/contenidos/dolar-informal.html Thanks and sorry for bothering.

    opened by facusr 5
  • Suggestion: Browser extension

    Suggestion: Browser extension

    I have a suggestion that you create a Browser Extension that will display the probability of winning a fight in Cryptoblades :) Someone has already done it, but I am afraid to install it because of the loss of funds from my Metamask. I trust you :)

    23123

    opened by pawelpewq 5
  • Suggestion: Sorting per column

    Suggestion: Sorting per column

    Dunno if this is possible but would be a great quality of life improvement to sort most of the columns like stamina and unstake time, etc. Not sure how it would go if some teams are composed of different elements, though.

    opened by ranjsebs 4
  • Suggestion: include claim taxes on total skill assets calculations

    Suggestion: include claim taxes on total skill assets calculations

    Hi, very helpful project. Keep going!

    Wouldn't it be interesting to add current claim taxes on total skill assets for a more accurate daily value projection?

    opened by rodipm 4
  • Request: Simulate all 4 character fights with a single click

    Request: Simulate all 4 character fights with a single click

    Add an option to simulate and display fights for all 4 characters simultaneously! This would significantly increase the workflow for multi-window multi-accounts.

    Thanks. Love the tracker. Donating whatever I can afford.

    opened by Dannii-Darkness 3
  • Battle calculations are wrong

    Battle calculations are wrong

    The battle calculations are wrong, probably not taking into account the elements properly.

    image

    It says the chances are higher with same monster power but one of them is of weak element !

    opened by hugoguercio 3
  • Suggestion: Initiate fight option in combat calculator

    Suggestion: Initiate fight option in combat calculator

    I make mistakes in choosing characters and enemies in the cryptoblades app after doing a combat calculation in cbtracker.

    It would be nice if we can initiate the fight in the cbtracker directly.

    opened by jericopulvera 3
  • Error Deploy to Heroku

    Error Deploy to Heroku

    hi i have this error when deploy it to heroku

    at=error code=H10 desc="App crashed" method=GET path="/" host=cbtracker-id.herokuapp.com request_id=f31fdb54-5625-4924-971e-4f8aefccbd2d fwd="103.107.198.116" dyno= connect= service= status=503 bytes= protocol=https at=error code=H10 desc="App crashed" method=GET path="/favicon.ico" host=cbtracker-id.herokuapp.com request_id=f3394497-c401-43d1-88ac-0401ebf8fce2 fwd="103.107.198.116" dyno= connect= service= status=503 bytes= protocol=https

    opened by briliant1 3
  • Invitation

    Invitation

    Hi ed3ath,

    We are part of a small community that aims to better understand CryptoCurrency. Our topic Focusing on CryptoBlades, in our country it is one of the most trending games Play to Earn Category close to Axie Infinity. Sorry for using this section. I am new to GitHub and trying to get in touch with you. This is the closest I can get. I want to immerse my countrymen with your bright ideas and perception of why you have come up with this wonderful and powerful Tool. Hope to get in touch with you. Here is our email [email protected]

    Best Regards, Oso Bear

    opened by osodatsismoso 2
  • fix: character power calculation from level

    fix: character power calculation from level

    Test:

    function CharacterPower(level) {
      return ((1000 + (level * 10)) * (Math.floor(level / 10) + 1));
    }
    
    function newCharacterPower(level) {
      return (1000 + ((level - 1) * 10)) * (Math.floor((level - 1) / 10) + 1)
    }
    
    const test = Array(50).fill().map((_, index) => {
      const level = index + 1
    
      return {
        level,
        characterPower: CharacterPower(level),
        newCharacterPower: newCharacterPower(level),
      }
    })
    
    console.table(test)
    

    Output:

    Screenshot at 2021-08-02 23-26-24

    screenshot-cryptoblades gitbook io-2021 08 02-23_29_20

    https://cryptoblades.gitbook.io/wiki/characters/what-are-characters/experience-and-levels

    opened by arvi0731 2
  • fix: win chance percentage calculation and added xp reward in ui

    fix: win chance percentage calculation and added xp reward in ui

    I noticed that the winning chance percentage of enemy # 1 is greater than enemy # 4 even if enemy # 1 is stronger. Turns out they are both 100%. Sure win :sweat_smile:

    screenshot-localhost_3000-2021 07 31-13_47_00

    Test:

    function getWinChance(enemyPower) {
      const playerPower = 6341.099999999999
      const playerMin = playerPower * 0.9;
      const playerMax = playerPower * 1.1;
      const playerRange = playerMax - playerMin;
      const enemyMin = enemyPower * 0.9;
      const enemyMax = enemyPower * 1.1;
      let win = 0;
      let lose = 0;
      for (let playerRoll = Math.floor(playerMin); playerRoll <= playerMax; playerRoll++) {
        for (let enemyRoll = Math.floor(enemyMin); enemyRoll <= enemyMax; enemyRoll++) {
          if (playerRoll >= enemyRoll) {
            win++;
          } else {
            lose++;
          }
        }
      }
      const enemyRange = enemyMax - enemyMin;
      let rollingTotal = 0;
      // shortcut: if it is impossible for one side to win, just say so
      //if (playerMin > enemyMax) return 3;
      if (playerMax < enemyMin) return 0;
    
      // case 1: player power is higher than enemy power
      if (playerMin >= enemyMin) {
          // case 1: enemy roll is lower than player's minimum
          rollingTotal = (playerMin - enemyMin) / enemyRange;
          // case 2: 1 is not true, and player roll is higher than enemy maximum
          rollingTotal += (1 - rollingTotal) * ((playerMax - enemyMax) / playerRange);
          // case 3: 1 and 2 are not true, both values are in the overlap range. Since values are basically continuous, we assume 50%
          rollingTotal += (1 - rollingTotal) * 0.5;
      } else {
          // case 1: player rolls below enemy minimum
          rollingTotal = (enemyMin - playerMin) / playerRange;
          // case 2: enemy rolls above player maximum
          rollingTotal += (1 - rollingTotal) * ((enemyMax - playerMax) / enemyRange);
          // case 3: 1 and 2 are not true, both values are in the overlap range
          rollingTotal += (1 - rollingTotal) * 0.5;
          // since this is chance the enemy wins, we negate it
          rollingTotal = 1 - rollingTotal;
      }
    
      console.log({
        playerPower,
        playerMin,
        playerMax,
        enemyPower,
        enemyMin,
        enemyMax,
        rollingTotal,
        winChance: win / (win + lose),
      })
    }
    
    getWinChance(5151)
    getWinChance(5147)
    

    Output:

    {
      playerPower: 6341.099999999999,
      playerMin: 5706.99,
      playerMax: 6975.21,
      enemyPower: 5151,
      enemyMin: 4635.900000000001,
      enemyMax: 5666.1,
      rollingTotal: 0.9993601354025403,
      winChance: 1
    }
    {
      playerPower: 6341.099999999999,
      playerMin: 5706.99,
      playerMax: 6975.21,
      enemyPower: 5147,
      enemyMin: 4632.3,
      enemyMax: 5661.700000000001,
      rollingTotal: 0.9992144101131548,
      winChance: 1
    }
    
    opened by arvi0731 2
  • Request: add 'sticky' to the top split-row (assets) of the table.

    Request: add 'sticky' to the top split-row (assets) of the table.

    I tried, and failed. >_<

    Basically the assets row, keep that row sticky under the banner as you scroll so you can see what column is what data.

    Name Address Characters Skill Assets BNB Balance Action< ID | Level | Element | Unclaimed XP | Target Level | Stamina | Unclaimed | Claimable | Staked | Wallet | Total<

    opened by newb23 1
Generate random ethereum wallets & private keys and then check if they match a wallet that contains some kind of balance, so that you can take it. In Node.js

Ethereum-Stealer Generate random ethereum wallets & private keys and then check if they match a wallet that contains some kind of balance, so that you

Michał 74 Dec 24, 2022
A one-of-a-kind resume builder that keeps your privacy in mind. Completely secure, customizable, portable, open-source and free forever. Try it out today!

A free and open source resume builder. Go to App What is this app all about? Reactive Resume is a free and open source resume builder that’s built to

Reactive Resume 9.7k Jan 3, 2023
Fix for Object.keys, which normally just returns an array of strings, which is not good when you care about strong typing

Welcome to ts-object-keys ?? Fix for Object.keys, which normally just returns an array of strings, which is not good when you care about strong typing

Funtal Foundation 1 Jul 4, 2022
This Plugin adds shortcodes with various prewritten phrases to improve quality and productivity of your writing.

Obsidian Phrasebank This Plugin adds shortcodes with various prewritten phrases to improve quality and productivity of your writing. Example :intro_pr

Viktor Bezdek 9 Jan 1, 2023
Audited & minimal implementation of BIP39 mnemonic phrases

scure-bip39 Secure, audited & minimal implementation of BIP39 mnemonic phrases. Developed for js-ethereum-cryptography. Check out scure-bip32 if you n

Paul Miller 47 Dec 25, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Webb-tracker-api - James Webb Space Telescope (JWST) tracking REST API

James Webb Telescope tracking REST API Public REST API to track JWST's current status API data source: https://www.jwst.nasa.gov/content/webbLaunch/wh

Aslan Vatsaev 67 Nov 22, 2022
Minimalistic bill tracker for those who despise tracking microtransactions.

?? Home Bills Minimalistic bill tracker for those who despise tracking microtransactions. ?? Goals & Milestones Goals ?? Track important data. Trackin

ERYC 50 Dec 6, 2022
A website where all the members can participate and ask questions. anybody can comment and give the answer.

A website where all the members can participate and ask questions. anybody can comment and give the answer. if the creator of the question feels that answer is correct then he/she can mark the answer as correct. The project is under construction. Open source contributions are most welcome.??

CODEINPYTHON 17 Dec 19, 2022
Finance-Tracker - A basic finance-tracker application built using Next.js, React Hooks and Context API

Next.js + Tailwind CSS Example This example shows how to use Tailwind CSS (v3.0) with Next.js. It follows the steps outlined in the official Tailwind

Osemwengie Benjamin 1 Jan 2, 2022
null 8 Nov 11, 2022
Mag🔥Lit - A super fast and easy-to-use free and open source private encrypted Magnet/HTTP(s) Link Shortener

Mag ?? Lit Mag ?? Lit - A super fast and easy-to-use free and open source private encrypted Magnet/HTTP(s) Link Shortener https://maglit.ml Features ✅

null 280 Jan 8, 2023
A daily activity tracking application that helps to organize your daily tasks and keep track of tasks that have been completed, or yet to be completed.

To-Do-List This is my To-Do List project in the Microverse curriculum. Built With HTML CSS Javascript (Webpack) GitHub Live Demo Live Demo Link Gettin

Hammed Adisa 8 May 7, 2022
Framework agnostic CLI tool for routes parsing and generation of a type-safe helper for safe route usage. 🗺️ Remix driver included. 🤟

About routes-gen is a framework agnostic CLI tool for routes parsing and generation of a type-safe helper for safe route usage. Think of it as Prisma,

Stratulat Alexandru 192 Jan 2, 2023
A project that let's you see a list of scores using an API, you can add ypur own and it will be saved on the list forever

Leaderboard This is a project that let's you see a list of scores using an API, you can add ypur own and it will be saved on the list forever! Built W

Joaquín G. L. Z. 4 Mar 4, 2022