Jump into the future of gaming! Rise Dash combines the thrill of endless runner gameplay with the power of blockchain technology. Dodge sushi, shoot rice rockets, and compete on the decentralized leaderboard in this addictive Web3 adventure!
Rise Dash is a revolutionary Web3-powered endless runner that brings together:
- Addictive 2D gameplay with smooth 60fps animations
- Blockchain integration for true ownership and rewards
- Decentralized leaderboards with verified scores
- RICE token economy for in-game rewards and upgrades
- Beautiful Japanese aesthetic with Torii gates and sushi enemies
The Concept: You're a brave warrior running through a mystical Japanese landscape, dodging sushi enemies and shooting rice rockets. Your mission? Travel as far as possible while earning RICE tokens and climbing the global leaderboard!
- Smooth 60fps Canvas Rendering - Buttery smooth animations that feel incredible
- Realistic Physics System - Gravity, momentum, and collision detection that feels natural
- Endless Runner Mechanics - Increasing difficulty keeps you on the edge of your seat
- Rice Rocket Combat - Shoot enemies with rice rockets for points and survival
- Dynamic Collision Detection - Pixel-perfect hit detection for fair gameplay
- Real-time Scoring - Watch your score climb as you survive longer
- Earn RICE Tokens - Complete daily challenges and achieve high scores
- Power-Up Shop - Spend RICE to upgrade your abilities
- Daily Reveals - Claim daily rewards with randomized card reveals
- Blockchain Storage - All rewards stored securely on the RISE blockchain
- Signature Verification - Secure, tamper-proof reward distribution
- Card Reveal Mechanics - Exciting card-flipping animations
- 24-Hour Cooldown - Come back daily for fresh rewards
- Randomized Rewards - Different RICE amounts each day
- Mobile-Friendly - Perfect for quick daily check-ins
- Blockchain Verification - Secure, tamper-proof daily claims
- ๐ก๏ธ Shield Protection - Invincibility against enemy collisions
- โพ๏ธ Infinite Ammo - Unlimited rice rocket shots
- ๐ฆ Jump Boost - Higher jumps to avoid obstacles
- โฐ Slow Motion - Slow down enemies for easier targeting
- ๐ฏ Multi-Shot - Fire multiple projectiles simultaneously
- ๐ 10-Level Progression - Each power-up has 10 upgrade levels
- ๐ฐ RICE-Based Upgrades - Spend tokens to enhance your abilities
- Interactive Shop Interface - Beautiful, intuitive upgrade system
- Dynamic Pricing - Costs increase with each level
- Progress Tracking - See your upgrade progression
- Instant Upgrades - Immediate effect after purchase
- Strategic Choices - Choose which power-ups to prioritize
- Auto-Show Tutorial - Automatically appears for new players
- Comprehensive Guide - Covers all game mechanics
- Step-by-Step Instructions - Easy to follow learning path
- Beautiful UI - Engaging tutorial interface
- Manual Access - Replay tutorial anytime
- Global Rankings - Compete with players worldwide
- Real-time Updates - Live leaderboard updates
- Player Profiles - View detailed player statistics
- Score Verification - Blockchain-verified scores only
- Pagination - Browse through all players easily
- Game Statistics - Track your best scores and averages
- Game History - Review all your past games
- Achievements - Unlock achievements as you play
- Performance Analytics - Detailed performance metrics
- Personal Leaderboard - Your ranking and progress
- Wallet Connection - Connect with MetaMask, RainbowKit, and more
- Sign-In with Ethereum - Secure, decentralized authentication
- Blockchain Verification - All scores verified on-chain
- RISE Testnet Integration - Built on the RISE blockchain
- Smart Contract Security - Audited, secure smart contracts
- Dark Theme - Easy on the eyes with gradient backgrounds
- Multi-Language Support - English, Spanish, and French
- Responsive Design - Works perfectly on desktop and mobile
- Accessibility Features - Keyboard navigation and screen reader support
- Smooth Animations - Polished, professional feel
- Node.js 18.0 or higher
- npm or yarn package manager
- MetaMask or any Web3 wallet
- RISE Testnet configured in your wallet
# Clone the repository
git clone <repository-url>
cd rise-dash
# Install dependencies
npm install
# Set up environment variables
cp .env.example .env.local
# Edit .env.local with your configuration
# Start development server
npm run devOpen http://localhost:3000 and start your adventure!
Create a .env.local file in the root directory:
# NextAuth Configuration
NEXTAUTH_URL=http://localhost:3000
NEXTAUTH_SECRET=your-secret-key-here
# Blockchain Configuration
NEXT_PUBLIC_RISE_TESTNET_RPC=https://rpc.testnet.rise.xyz
NEXT_PUBLIC_CONTRACT_ADDRESS=your-contract-address- Connect Wallet - Click "Connect Wallet" and sign in with your Web3 wallet
- Authenticate - Sign the SIWE message to verify your wallet ownership
- Start Game - Press
ARROW UPorSPACEBARto begin your adventure!
- Jump: Press
ARROW UPto leap over sushi obstacles - Shoot: Press
SPACEBARto fire rice rockets at enemies - Pause: Press
ESCto pause the game - Restart: Press
ARROW UPorSPACEBARafter game over
- Survive: Travel as far as possible to increase your distance score
- Destroy Enemies: Use rice rockets to eliminate obstacles and earn points
- Use Power-Ups: Collect and activate power-ups for temporary advantages
- Compete: Submit your score to the blockchain leaderboard
- Earn RICE: Complete daily challenges and achieve high scores
- Daily Reveal: Claim your daily reward with exciting card reveals
- 24-Hour Cooldown: Return daily for fresh rewards
- Randomized Rewards: Different RICE amounts each day
- Secure Claims: All rewards verified on the blockchain
- ๐ก๏ธ Shield: Perfect for beginners - protects against collisions
- โพ๏ธ Infinite Ammo: Great for aggressive players who love shooting
- ๐ฆ Jump Boost: Essential for avoiding difficult obstacles
- โฐ Slow Motion: Tactical advantage for precise targeting
- ๐ฏ Multi-Shot: Advanced players can eliminate multiple enemies
- Budget Wisely: RICE is earned through gameplay - spend strategically
- Focus on Favorites: Upgrade your preferred power-ups first
- Balance: Don't neglect any power-up - they all have their uses
- Immediate Impact: Upgrades take effect instantly
src/
โโโ app/ # Next.js App Router
โ โโโ layout.tsx # Root layout with providers
โ โโโ page.tsx # Home page with game
โ โโโ api/ # API routes for blockchain integration
โโโ features/ # Feature-based organization
โ โโโ game/ # Core game components
โ โโโ daily-reveal/ # Daily reward system
โ โโโ shop/ # Power-up shop interface
โ โโโ tutorial/ # Interactive tutorial
โ โโโ leaderboard/ # Global leaderboard
โ โโโ profile/ # Player profiles
โ โโโ auth/ # Web3 authentication
โโโ shared/ # Shared utilities and components
โ โโโ hooks/ # Custom React hooks
โ โโโ services/ # External services
โ โโโ store/ # State management (Zustand)
โ โโโ utils/ # Game logic and utilities
โโโ infrastructure/ # Infrastructure layer
โ โโโ blockchain/ # Smart contract integration
โ โโโ config/ # Configuration management
โ โโโ store/ # Global state management
โโโ contracts/ # Smart contracts
โโโ GameRegistry.sol # Main game contract
โโโ RICEManager.sol # RICE token management
โโโ PowerUpManager.sol # Power-up system
โโโ ScoreBoard.sol # Leaderboard management
# Development
npm run dev # Start development server with Turbopack
npm run build # Build for production
npm run start # Start production server
# Code Quality
npm run lint # Run ESLint
npm run lint:fix # Fix ESLint issues
# Testing
npm run test # Run tests
npm run test:watch # Run tests in watch mode
npm run test:coverage # Generate test coverage report- Next.js 15 - React framework with App Router
- TypeScript - Type-safe JavaScript
- Tailwind CSS - Utility-first CSS framework
- Zustand - Lightweight state management
- Wagmi - React hooks for Ethereum
- RainbowKit - Wallet connection UI
- NextAuth.js - Authentication with SIWE
- Hardhat - Ethereum development environment
- Jest - Testing framework
- Canvas API - 2D graphics rendering
The project includes comprehensive test coverage:
# Run all tests
npm test
# Watch mode for development
npm run test:watch
# Generate coverage report
npm run test:coverageUse the centralized registry so adding a game is one edit with i18n support.
- Add translations
- Edit
src/i18n/languages/en.json(and other locales) and provide a title and subtitle/description, for example:
"scenes": {
"myNewGame": {
"title": "My New Game",
"subtitle": "Short catchy description here."
}
}
- Register the game in the Bento registry
- Edit
src/features/gaming-room/miniGames.registry.tsand append an entry:
{
id: "my-new-game",
titleKey: "scenes.myNewGame.title",
descriptionKey: "scenes.myNewGame.subtitle",
scene: SceneType.MY_NEW_GAME, // optional; omit for coming soon
status: "available", // or "coming_soon"
icon: "๐ฏ", // optional
}- Wire a scene (optional if coming soon)
- Create a scene component under
src/features/<your-game>/<YourGame>Scene.tsx. - Add a SceneType in
src/shared/types/scenes.ts(e.g.,MY_NEW_GAME = "myNewGame"). - Register the scene in
src/features/scenes/SceneRegistry.tsxwith the component and title.
Thatโs it: Bento pulls from the registry and automatically renders the card and routes to your scene when available.
- Award RICE on completion (template)
- Use the shared reward hook in your game content:
import { useGameReward } from "@/shared/hooks/useGameReward";
import { MiniGameRewardModal } from "@/shared/components/MiniGameRewardModal";
// inside your component
const reward = useGameReward({ finished, riceAmount });
// generic reward modal
<MiniGameRewardModal
isOpen={reward.isOpen}
onClose={reward.close}
onSave={reward.save}
isSaving={reward.isSaving}
title={t("scenes.myNewGame.congrats")}
subtitle={t("scenes.myNewGame.riceEarned", { amount: riceAmount })}
emoji="๐ฏ"
/>;- Under the hood it calls
const { addRICE, isAdding } = useRice();and closes the modal after awarding.
Test files are located alongside their respective source files in __tests__/ directories.
# Install Vercel CLI
npm install -g vercel
# Deploy
vercel
# Set environment variables in Vercel dashboard# Build the application
npm run build
# Start production server
npm startSet these environment variables in your deployment platform:
NEXTAUTH_URL=https://your-domain.com
NEXTAUTH_SECRET=your-production-secret
NEXT_PUBLIC_RISE_TESTNET_RPC=https://rpc.testnet.rise.xyz
NEXT_PUBLIC_CONTRACT_ADDRESS=your-deployed-contract-address- Realistic gravity simulation with smooth acceleration
- Variable jump mechanics based on power-up levels
- Pixel-perfect collision detection for fair gameplay
- Momentum and velocity calculations for natural movement
- 60fps canvas rendering for buttery smooth gameplay
- Optimized sprite management for performance
- Smooth animations and transitions throughout the UI
- Responsive scaling for all screen sizes
- Real-time score submission with gas optimization
- Decentralized leaderboard with verified scores
- Wallet-based authentication with SIWE
- Smart contract security with comprehensive testing
- Exciting card reveal animations with suspense
- 24-hour cooldown system for daily engagement
- Randomized reward distribution for variety
- Blockchain verification for security
- 5 unique power-up types with different strategies
- 10-level progression system for long-term engagement
- RICE-based economy for sustainable progression
- Immediate effect system for instant gratification
- Multiple obstacle types and patterns
- Boss battles and mini-games
- Different game modes (Time Attack, Survival)
- Enhanced enemy AI and behaviors
- Achievement system with NFTs
- Tournament mode with prizes
- Social sharing and challenges
- Guild/clan system
- Mobile app development
- Cross-chain integration
- Advanced power-up combinations
- Seasonal events and themes
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'feat: Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow TypeScript best practices
- Update documentation as needed
- Follow the existing code style
- Add tests for new features
This project is open source and available under the MIT License.
- Rise Protocol for blockchain infrastructure
- Next.js team for the amazing framework
- RainbowKit for wallet integration
- All contributors who make this project better
Jump into the future of gaming!
Built with โค๏ธ by the Rise Dash team
