Problemon is a Calculus Pokemon-like educational game built with React Native/Expo for the frontend and NodeJs for the Backend. Problemon was a Game Jam project built in 24hrs. Players take the role of the function F(x) and are tasked with defeating the opponent function, G(x).
Web 🌐 https://redseb.github.io/Problemon/ Android 📱 https://play.google.com/store/apps/details?id=problemon.mma.pjatk&gl=PL
- The player wins either when G(x) = 0 or when G(x)'s health drops to 0
- The player loses either when F(x) = 0 or when their health drops to 0
Each turn the player rolls a dice to determine what type of problem to answer:
Enter the derivative of G(x)
- If you answer correctly: G(x) gets derived
- If you answer incorrectly: F(x) gets derived
Enter the integral of F(x)
- If you answer correctly: F(x) gets integrated
- If you answer incorrectly: G(x) gets integrated
An additional dice rolls determining what value to substitute x with Enter the value of F(x) where x is substituted with the number the player rolled
- If you answer correctly: G(x) loses health equal to the calculation
- If you answer incorrectly: F(x) loses health equal to the calculation
Make sure you have expo-cli installed globally
// npm
npm install -g expo-cli
// yarn
yarn global add expo-cli
Install dependencies
npm install
Start Expo Development Console [Will automatically open in browser window]
expo start
- Download the expo app onto your device: https://play.google.com/store/apps/details?id=host.exp.exponent&hl=en
- Open the Expo App
- Scan the QR code on the browser Development Console
Be sure to increment the version codes in app.json
Run expo build:android -t app-bundle
In the browser Development Console press the "Publish / Republish Project"
- When starting development run
expo start -winstead of the normal command [-wdenotes web]
OR
- In the browser Development Console press the "Run in Web Browser" button
Build: expo build:web
Upload to Github Pages: npx gh-pages -d web-build
Note: Github Pages may take around 10 minutes to update - also clear cache when refreshing page