Giter Club home page Giter Club logo

rusty_ghostbox's Introduction

Disclaimer: This is just for fun and not a real Ovilus/Ghostbox.

Ovilus/Ghostbox/Spiritbox

I am learning the Rust programming language and needed a project to do.
I enjoy watching the Ghost Adventures. So, I thought it would be fun to make an Ovilus.
An Ovilus uses a word database and not recorded voices or sounds.
The Ovilus device itself speaks the chosen words (this application doesn't).

Code

I'm still learning Rust so there can be a lot of inefficient code.
Or maybe that I should use other methods/crates etc.
I also still need to write test for the code and I need to add better comments/documentation.
My first priority was to get better with Rust.

Also:
I use a Mac and I dont know if this works on Windows/other Linux systems.

How it works

I don't know how a real Ghostbox/Ovilus algorithm works or looks like.
The real Ovilus device also uses special sensors. This application does not.

So I made it very simple.

  • The program contains a file with English words.
    It gets a waiting time and then it generates a random number
    between 0 and the total number of English words (more than 450 thousand).
    It uses the random number to look up the word that is on that line number.
  • Then it gets another waiting time before generating a random number (1).
    Default between 0 and 100.
  • After that it gets another waiting time before generating a random number (2).
    Also default between 0 and 100.
  • When that's all done, it checks if both random numbers are equal.
    If they are equal then a word is found.
  • Then the loop continues

In theory a ghost/spirit uses the waiting time (in milliseconds) to search for a word
and then tries to influence the outcome of the numbers.

How it looks

It's a terminal application and it will use your terminal colors.
The colors in the image are custom colors from my terminal. Screenshot

What can you do with it?

You have some options when you run the program.

  • increase/decrease chance to find word
    If you increase the chance to much (lowest is between 0 and 10) it will find words very often.
    You shouldn't use a to low value.
    It's better when the chance to find two equally random numbers is very low.
  • increase/decrease time to search for word
    Give the ghost more or less time to search a word (in milliseconds)
  • increase/decrease time to search for random number one
    Give the ghost more or less time to find a number (in milliseconds)
  • increase/decrease time to search for random number two
    Give the ghost more or less time to find the same number (in milliseconds)
  • after you have changed the options to reset options to default
  • and of course quit the program

Used resources

Crossterm
Rand
Chrono
List with English words

rusty_ghostbox's People

Contributors

richardgrave avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

fallenangel3k

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.