Endless runner game with fully functional Funtico SDK integration for tournaments and leaderboards.
๐ READY FOR FUNTICO SUBMISSION!
- โ Login/Authentication: Working perfectly
- โ Score Submission: Successfully submitting to Funtico leaderboard
- โ User Session Management: Auto-restore after login
- โ Global Leaderboard Access: B button works in all scenes
- โ Clean UI: No debug text or status messages
- โ Vercel Deployment: Live at https://avalanche-knight.vercel.app/
- โ Zip Package: Ready for Funtico Upload App submission
-
Clone repository:
git clone https://github.com/Modolo-oss/Avalanche-Knight.git cd avalanche-knight -
Install dependencies:
npm install
-
Build and run:
npm run build npm run dev
- Upload App: https://upload.gameloop.funtico.com/
- Password:
xxxxxxxxxxx - Package:
avalanche-knight-funtico.zip(ready for upload) - Instructions:
- Upload zip file with
index.htmlin root - Automatic hosting on Funtico infrastructure
- No manual URL updates needed
- Status: โ Ready for submission
- Upload zip file with
- Download:
avalanche-knight-funtico.zipfrom repository - Extract: Unzip to any folder
- Structure:
avalanche-knight/ โโโ index.html (main entry point) โโโ js/ (compiled JavaScript) โ โโโ main.js โ โโโ funtico-sdk.js โ โโโ game/ โโโ Icon.png (game icon) โโโ cover.png (game cover) โโโ b.png, f.png (game sprites) - Deploy: Upload to Funtico Upload App or host anywhere
- Test: Open
index.htmlin browser - Features: Login (L), Leaderboard (B), Gameplay (Arrow keys + Space)
- Live URL: https://avalanche-knight.vercel.app/
- Status: โ Fully functional
- Auto-deploy: On git push
- Can still upload to Itch.io for wider audience
- No manual URL updates needed anymore
- Arrow Keys: Move player
- L: Login to Funtico
- B: View leaderboard
- Space: Jump/Start game
- โ Funtico SDK Integration: Complete and tested
- โ OAuth2 Authentication: Working perfectly
- โ Score Submission: Successfully submitting scores
- โ User Session Auto-Restore: After login redirect
- โ Global Leaderboard Access: B button works in all scenes
- โ Clean UI: No debug text or status messages
- โ Browser-native Alerts: For login feedback and leaderboard
- โ Error Handling: Proper error messages for API issues
- โ Mobile Support: Responsive design
- โ Audio Integration: Sound effects and music
// Simplified configuration (working)
const sdk = new FunticoSDK({
authClientId: 'gl-avalanche-knight'
});- Auto-session restore: Detects existing login after redirect
- Score submission: Real-time feedback to user
- Error handling: Graceful handling of API errors
- Global access:
window.funticoManageravailable
- Local Testing: Open
index.htmlin browser - Login Test: Press L โ Should redirect to Funtico login
- Gameplay Test: Press Space โ Start game, use Arrow keys
- Leaderboard Test: Press B โ Should show popup with scores
- Score Submission: Play game โ Score auto-submitted on game over
- Authentication: Test login/logout flow
- Score Submission: Verify scores appear in leaderboard
- Session Management: Test auto-restore after redirect
- Error Handling: Test with network issues
- Cross-browser: Test on different browsers
- Load Time: Game should load within 3 seconds
- Memory Usage: Should not exceed 50MB
- Frame Rate: Should maintain 60fps on modern devices
- File Size: Zip package is 106KB (well under limits)
- Game won't start: Check browser console for errors
- Login not working: Verify Funtico SDK is loaded
- Leaderboard empty: Check Funtico API status
- Audio not playing: Enable audio in browser settings
- Controls not responding: Click on game area first
- โ Chrome: Fully supported
- โ Firefox: Fully supported
- โ Safari: Fully supported
- โ Edge: Fully supported
- โ Mobile browsers: Responsive design
- Modern browser with JavaScript enabled
- Audio support (optional)
- Internet connection for Funtico features
- No additional plugins required
- Funtico Support: gameloop@funtico.com
- Upload App: https://upload.gameloop.funtico.com/
- Documentation: https://js.demo.gameloop.funtico.com/
- Live Demo: https://avalanche-knight.vercel.app/
- GitHub Issues: Report bugs via GitHub repository
Typescript installation is mandatory. If you just want to make changes to the code, running tsc on the root is sufficient. If you want to make a zipped and "optimized" package that should fit 13kB (provided that you have up-to-date versions of all the tools), you need the following tools:
- Closure compiler
- advzip
Let us assume that you have the Closure compiler's jar file in the root and you have renamed it to closure.jar. Then you can run CLOSURE_PATH=closure.jar make dist. This should compile the Typescript, optimized the Javascript, embed the output script file to an index file and finally pack everything to a single zip file, of which size is then reduced using advzip. Note that for some reason this might fail the first time you run the command, so try running it twice.
The game has "I made my own license and saved money v. 0.1" license, which states the following:
SOURCE CODE (includes .ts, .html, .json and makefile files):
+ You are allowed to:
> Use the source code in your own personal, non-commercial projects. Giving credit to the original author of the code is not mandatory, but is recommended.
> Modify the source code in any way you want, and share the modified code. Again, giving credit to the original author is optional.
- You may not:
> Use the source code in a commercial product of any kind. This includes applications that cannot be accessed without a payment, but also applications that show ads when the application is running (for example, mobile games with ads).
> Use the source code to train an AI. Not for any particular reason, I just want to see if the AI people actually read the source code licenses - or care about them.
ASSETS (includes .png files):
+ You are allowed to:
> Use the asset files in your own non-commercial projects, but in this case you have to give a credit to the original author.
> Modify the asset files as you like. If the modified assets are no longer recognizable (that is, they are heavily modified), then there is not need to give a credit to the original author.
- You are not allowed to:
> Do anything else with them, obviously.
BOTH:
- You may not:
> Do anything related to blockchains, NFTs or this weird term "web3" that seems to mean nothing at all.
(c) 2025 Avalanche GameLoop