Troubleshooting Guide¶
Common issues and solutions when using AnimeChain.
🔌 Connection Issues¶
Can't Connect to AnimeChain¶
Problem: Wallet won't connect to AnimeChain network.
Solutions:
-
Check Network Configuration
// Ensure correct network details const ANIMECHAIN_MAINNET = { chainId: '0x10D88', // 69000 in hex chainName: 'AnimeChain', nativeCurrency: { name: 'ANIME', symbol: 'ANIME', decimals: 18 }, rpcUrls: ['https://rpc-animechain-39xf6m45e3.t.conduit.xyz/'], blockExplorerUrls: ['https://explorer-animechain-39xf6m45e3.t.conduit.xyz/'] };
-
Add Network Manually
- Open MetaMask → Settings → Networks → Add Network
- Use the configuration above
-
Save and switch to AnimeChain
-
Check RPC Status
RPC Errors¶
Problem: Getting RPC connection errors.
Common Error Messages:
Solutions: - Check internet connection - Try different RPC endpoint - Check firewall/proxy settings - Use VPN if geo-blocked
Solutions: - Verify chain ID is 69000 (mainnet) or 6900 (testnet) - Clear browser cache - Re-add network to wallet
💸 Transaction Issues¶
Transaction Failures¶
Problem: Transactions fail or get stuck.
Common Scenarios:
Solutions: - Check ANIME balance for gas fees - Get test ANIME from the interactive faucet - Reduce transaction amount
Solutions:
Stuck Transactions¶
Problem: Transaction pending for too long.
Solutions:
-
Speed Up Transaction
-
Cancel Transaction
Token Issues¶
Token Not Showing in Wallet¶
Problem: Tokens don't appear after transaction.
Solutions:
- Import Token Manually
- Add token contract address to wallet
- Check correct network is selected
-
Verify token decimals
-
Check Transaction Status
ERC-20 Approve Issues¶
Problem: Token approvals failing or insufficient allowance.
Solutions:
-
Check Current Allowance
-
Approve with Buffer
-
Reset Allowance First (for some tokens)
NFT Issues¶
NFT Not Displaying¶
Problem: NFT metadata not loading correctly.
Solutions:
-
Check Token URI
-
IPFS Issues
-
If using IPFS, try different gateways:
https://gateway.pinata.cloud/ipfs/
https://cloudflare-ipfs.com/ipfs/
https://gateway.ipfs.io/ipfs/
-
Refresh Metadata
- Most wallets have "Refresh" option
- May take time to update
- Check on block explorer
Minting Failures¶
Problem: NFT minting transactions fail.
Solutions:
-
Check Mint Requirements
-
Pay Correct Amount
🌉 Bridge Issues¶
Bridge Transaction Stuck¶
Problem: Bridge transactions not completing.
Solutions:
- Check Bridge Status
- Verify transaction on source chain
- Allow time for L2 → L3 bridging (usually < 1 minute)
-
L3 → L2 withdrawals take 7 days (challenge period)
-
Monitor Bridge Events
-
Verify Destination Balance
Withdrawal Issues¶
Problem: Can't withdraw from L3 to L2.
Solutions:
- Check Challenge Period
- L3 → L2 withdrawals have 7-day delay
- Cannot be accelerated
-
Check withdrawal initiation time
-
Claim After Delay
🔧 Development Issues¶
Smart Contract Deployment¶
Problem: Contract deployment fails.
Solutions:
-
Check Compilation
-
Verify Network Configuration
-
Increase Gas Limit
Verification Issues¶
Problem: Contract verification fails on explorer.
Solutions:
- Match Compiler Settings
- Use exact Solidity version
- Match optimization settings
-
Include all imported contracts
-
Flatten Contract (if needed)
-
Use Hardhat Verification
📱 Frontend Issues¶
Web3 Provider Issues¶
Problem: Web3 provider not detected.
Solutions:
-
Check MetaMask Installation
-
Handle Different Wallets
-
Request Account Access
Event Listening Issues¶
Problem: Contract events not triggering.
Solutions:
-
Check Event Filters
-
Handle Provider Reconnection
🆘 Getting Help¶
Check Status Pages¶
- Network Status
- AnimeChain Explorer
-
Check for network outages or maintenance
-
RPC Health
Community Support¶
- DevZuki Community
- Join DevZuki
- Community-led developer support; docs provided by a DevZuki member
-
Best place to get help right now
-
GitHub Issues
- Report bugs
- Feature requests
- Documentation improvements
Debug Tools¶
-
Transaction Debugger
// Debug failed transaction async function debugTransaction(txHash) { const tx = await provider.getTransaction(txHash); const receipt = await provider.getTransactionReceipt(txHash); console.log('Transaction:', tx); console.log('Receipt:', receipt); if (receipt.status === 0) { console.log('Transaction failed'); // Try to get revert reason try { await provider.call(tx, tx.blockNumber); } catch (error) { console.log('Revert reason:', error.message); } } }
-
Network Diagnostics
// Check network health async function networkDiagnostics() { const [ blockNumber, gasPrice, chainId ] = await Promise.all([ provider.getBlockNumber(), provider.getFeeData(), provider.getNetwork() ]); console.log('Network Diagnostics:'); console.log(`- Block Number: ${blockNumber}`); console.log(`- Gas Price: ${ethers.formatUnits(gasPrice.gasPrice, 'gwei')} gwei`); console.log(`- Chain ID: ${chainId.chainId}`); }
📚 Additional Resources¶
- FAQ - Frequently asked questions
- Network details: see Use AnimeChain
- RPC API - Complete API reference
- Examples - Code examples
- Development Guide - Setup instructions
Still Stuck?
If you can't find a solution here, join the DevZuki community for real-time help from developers and community members. This documentation is provided by a DevZuki member.
Security Notice
Never share your private keys or seed phrases when asking for help. Legitimate support will never ask for this information.