Troubleshooting Guide
Solutions to common issues you might encounter with the 2D RPG Adventure Game System.
Installation Issues
❌ Problem: "RPG Tools" menu doesn't appear after import
✅ Solution:
- Check that all scripts imported correctly - look for any compilation errors in the Console
- Make sure the
Scripts/Editorfolder exists and contains the editor scripts - Try restarting Unity to refresh the menu system
- Verify you're using Unity 2019.4 or later
1"comment">// Check "keyword">if "keyword">this file exists:
2"comment">// Assets/Scripts/Editor/RPGSetupWizard.cs
3
4"comment">// And verify it contains:
5[MenuItem("RPG Tools/Setup Wizard")]
6"keyword">public "keyword">static "keyword">void ShowWindow()
❌ Problem: Compilation errors after import
✅ Solution:
- Check Unity version compatibility
- Ensure all dependencies are imported (TextMeshPro, Input System if using)
- Close Unity, delete the Library folder, and reopen the project
- Reimport the package if necessary
Setup Problems
❌ Problem: Setup Wizard creates objects but they don't work
✅ Solution:
- Run the Project Validator:
RPG Tools > Validation > Project Validator - Check that GameManager references are properly assigned
- Ensure the player has the correct tag ("Player")
- Verify UI Canvas has an EventSystem in the scene
Pro Tip: The Project Validator can automatically fix most setup issues with one-click solutions.
Player Movement Issues
❌ Problem: Player character doesn't move
✅ Solution:
Diagnostic Checklist:
- □ Game state is set to "Playing" (not Paused or other state)
- □ PlayerController.canMove is true
- □ Rigidbody2D component exists and gravity is set to 0
- □ Input system is detecting key presses
- □ No colliders blocking movement
1"comment">// Debug player movement in Update()
2"keyword">void Update()
3{
4 Debug.Log($"Game State: {GameManager.Instance.currentState}");
5 Debug.Log($"Can Move: {canMove}");
6 Debug.Log($"Input: {Input.GetAxisRaw("Horizontal")}, {Input.GetAxisRaw("Vertical")}");
7}
❌ Problem: Player moves too fast/slow or jittery
✅ Solution:
- Adjust the
moveSpeedparameter in PlayerController - Check Rigidbody2D drag settings (try values between 0-10)
- Ensure FixedUpdate is used for physics-based movement
- Verify Time.fixedDeltaTime is being used correctly
UI Problems
❌ Problem: UI elements don't respond to clicks
✅ Solution:
- Ensure EventSystem exists in the scene
- Check that UI elements have Graphic Raycaster component
- Verify Canvas render mode is set correctly
- Make sure UI elements aren't blocked by other colliders
1"comment">// Add EventSystem "keyword">if missing
2GameObject eventSystem = "keyword">new GameObject("EventSystem");
3eventSystem.AddComponent<UnityEngine.EventSystems.EventSystem>();
4eventSystem.AddComponent<UnityEngine.EventSystems.StandaloneInputModule>();
❌ Problem: Health/Mana bars don't update
✅ Solution:
- Check that UIManager references are assigned in GameManager
- Verify PlayerStats events are properly subscribed
- Ensure HealthBar components are assigned in UIManager
1"comment">// Check event subscription in UIManager
2"keyword">void SetupEventListeners()
3{
4 "keyword">if (GameManager.Instance.playerStats)
5 {
6 var stats = GameManager.Instance.playerStats;
7 stats.OnHealthChanged += UpdateHealthBar;
8 stats.OnManaChanged += UpdateManaBar;
9 }
10}
Performance Issues
❌ Problem: Low FPS or stuttering
✅ Optimization Tips:
- Enable sprite packing in Project Settings
- Use appropriate texture compression settings
- Limit the number of active UI elements
- Use object pooling for frequently spawned objects
- Profile your game using Unity Profiler
Profiling: Use Window > Analysis > Profiler to identify performance bottlenecks.
Diagnostic Tools
Project Validator
Automatically detect and fix common setup issues.
RPG Tools > Validation > Project Validator
Unity Console
Check for error messages and warnings.
Window > General > Console
Unity Profiler
Analyze performance and identify bottlenecks.
Window > Analysis > Profiler
Still Having Issues?
If these solutions don't resolve your problem:
- Check our FAQ section for additional answers
- Search the API documentation
- Join our Discord community for peer support
- Contact our support team with detailed information about your issue
When contacting support, please include:
- Unity version
- Operating system
- Console error messages (if any)
- Steps to reproduce the issue
- Screenshots or videos if relevant