The Influence Wizard is the primary tool for creating, editing, and managing formula systems. It provides a visual interface for complex mathematical relationships without requiring code.
Opening the Wizard
Menu Path: Window → Simple Attribute Forge → Influence Wizard
4-Tab Workflow
1. Setup Tab
Connect to your attribute system and verify configuration
2. Formulas Tab
Create and edit formula relationships with live testing
3. Configuration Tab
Set system name, paths, and performance options
4. Generate Tab
Create orchestrator code and formula assets
Setup Tab
The Setup tab connects the wizard to your existing attribute system.
Required Configuration
1Attribute Data Source
Select your AttributeData ScriptableObject (created with the base system wizard).
Required: An AttributeData asset containing your attribute definitions
Location: Usually in Assets/Generated/AttributeData/
Example: CharacterAttributeData.asset
2Verify Available Attributes
The wizard displays all attributes from your selected data source:
Available Attributes Display:
Health (Vital) - Can be formula target or source
Mana (Vital) - Can be formula target or source
Strength (Basic) - Can be formula target or source
Intelligence (Basic) - Can be formula target or source
Level (Resource) - Can be formula target or source
Common Setup Issues
No AttributeData Found:
Ensure you've created an attribute system with the base wizard
Check that AttributeData assets exist in your project
Verify the asset is not corrupted
Ready to Proceed: When attributes are displayed correctly, you can move to the Formulas tab.
Formulas Tab
The core of the wizard - create and edit formula relationships with real-time testing.
Interface Layout
Left Panel: Formula List
List of all created formulas
Add/Remove/Duplicate buttons
Formula validation indicators
Center Panel: Formula Editor
Complete formula configuration
7-step pipeline setup
Breakpoint configuration
Right Panel: Test Preview
Live calculation testing
Step-by-step breakdown
Value adjustment sliders
Creating a New Formula
1Add Formula
Click Add Formula in the left panel to create a new formula.
2Basic Configuration
Formula Name: Unique identifier (e.g., "StrengthDamage")
Target Attribute: Which attribute to modify (e.g., "Damage")
Target Property: What to modify on the attribute:
• AttributeValue (default) - Sets the attribute's base value
• RegenerationRate - Sets regen per second (Vital attributes only)
• RegenerationDelay - Sets delay before regen starts (Vital attributes only)
Execution Order: Calculation priority (0 = first, higher = later)
Enabled: Toggle to enable/disable formula
Regen Targeting: The RegenerationRate and RegenerationDelay options only appear for Vital-type attributes (Health, Stamina, Mana, etc.). This allows formulas like "Health regen rate increases by 0.5 per Level".
3Pipeline Configuration
Start Mode: Zero or TargetBase
Apply Mode: Override/Add/Subtract result
Also Update Current: Update currentValue for Vitals (health/mana)
Pipeline Step Configuration
Each step has its own configuration section in the center panel:
Step 2: Flat Bonuses
Add Row: Creates new flat bonus entry
Source: Attribute to read from (dropdown)
Operation: Add or Subtract
Value: Multiplier (e.g., 2.0 for "2 per point")
Example: Strength Add 2.0 = "Each STR point adds 2 to the calculation"
Step 3: Additive Percentages
Add Row: Creates new percentage bonus entry
Source: Attribute to read from
Operation: Add (percentages are positive values)
Value: Percentage per point (e.g., 1.5 for "1.5% per point")
Example: Intelligence Add 2.0 = "Each INT point adds 2% to the calculation"
Step 4: Subtractive Percentages
Add Row: Creates new percentage penalty entry
Source: Attribute to read from
Operation: Add (value represents penalty magnitude)
Value: Percentage per point
Example: Encumbrance Add 0.8 = "Each encumbrance point reduces by 0.8%"
Step 5: Multipliers
Add Row: Creates new multiplier entry
Label: Description (e.g., "Equipment Bonus")
Factor: Multiplication value (e.g., 1.2 for 20% increase)
Example: "Class Bonus" 1.25 = "25% class specialization bonus"
Step 6: Post-Flat Bonuses
Add Row: Creates new post-flat entry
Label: Description (e.g., "Base Damage")
Amount: Flat value to add
Is Additive: true = add, false = subtract
Example: "Weapon Base" 15 true = "Add 15 base weapon damage"
Test Preview Panel
The right panel provides real-time formula testing and validation.
Test Value Controls
Attribute Sliders:
• Set test values for all attributes
• Adjust in real-time to see calculation changes
• Use realistic value ranges for testing
Formula Selection:
• Choose which formula to test
• View step-by-step calculation breakdown
• See active breakpoints highlighted
Test Edge Cases: Try zero values, maximum values, and negative values
Test Breakpoints: Adjust values around breakpoint thresholds
Test Combinations: Use realistic stat combinations for different builds
Validate Results: Ensure calculated values make sense for your game
Breakpoint Configuration
The Breakpoints section allows adding conditional effects to formulas.
Adding Breakpoints
1Add Breakpoint
Click Add Breakpoint in the Breakpoints section.
2Primary Condition
Attribute: Which attribute to check (dropdown)
Comparison: How to compare (≥, ≤, =, >, <, ≠)
Value: Threshold value (e.g., 30 for "when STR ≥ 30")
3Additional Conditions (Optional)
Has Additional Conditions: Enable multiple conditions
Global Logical Op: AND (all must be true) or OR (any can be true)
Additional Conditions: List of extra requirements
4Effect Configuration
Type: Threshold (once) or Step (recurring)
Effect Type: Which pipeline step to modify (Flat/Percent/Multiplier/PostFlat)
Effect Value: Magnitude of the effect
Operation: Add or Subtract the effect
Breakpoint Visual Indicators
Test Preview Integration: Active breakpoints are highlighted in the test preview panel, showing exactly when and how they affect calculations.
Formula Management
Formula List Operations
Add Formula
Creates new formula with default configuration
Duplicate Formula
Copies selected formula as starting point for variations
Remove Formula
Deletes selected formula with confirmation dialog
Reorder Formulas
Drag formulas to change execution order (affects generation)
Export Options:
• Export Current Formula: Single formula to JSON
• Export All Formulas: Complete system to JSON
• Copy Formula: To clipboard for sharing
Import Options:
• Import Formula: Single formula from JSON
• Import System: Complete system from JSON
• Paste Formula: From clipboard
Configuration Tab
System-wide settings and generation configuration.
System Identity
System Name: Name for generated orchestrator class (e.g., "CharacterInfluence")
Namespace: Optional namespace prefix (e.g., "MyGame")
Description: Optional system description for documentation
File Paths
Output Path: Where to generate orchestrator code
Formula Path: Where to store formula assets
Export Path: Where to save JSON backups
Default Paths:
• Code: Assets/Generated/InfluenceSystem/
• Assets: Assets/Generated/InfluenceSystem/Formulas/
• Export: Assets/Generated/InfluenceSystem/Exports/
Performance Settings
Update Mode
Smart: Event-driven (recommended)
Interval: Fixed time updates
Manual: Explicit control
Recalculation Mode
Auto: Automatic when values change
Manual: Only when explicitly called
Advanced Options:
• Interval Update Rate: Seconds between updates (Interval mode)
• Enable Caching: Improves performance for complex systems
• Enable Debug Mode: Adds detailed logging to generated code
Generate Tab
Final step - generate the orchestrator code and formula assets.
Pre-Generation Validation
The wizard performs final validation before generation:
Validation Checks:
All formulas are valid
No circular dependencies detected
All output paths are writable
System name is valid C# identifier
No duplicate formula names
Generation Process
1Review Generation Summary
The wizard shows what will be generated:
Generation Summary:
Orchestrator: CharacterInfluence.cs
Formula Assets: 5 formula ScriptableObjects
Export Backup: CharacterInfluence_backup.json
Target GameObject: [Optional] Existing GameObject with attribute system
Formula Management:
• Ctrl+N: Add new formula
• Ctrl+D: Duplicate selected formula
• Delete: Remove selected formula
• Ctrl+↑/↓: Reorder formulas
Row Management:
• Enter: Add new row to current section
• Ctrl+Enter: Add row and focus next field
• Delete: Remove selected row
Testing:
• Space: Refresh test calculation
• Ctrl+T: Focus test panel
• Ctrl+R: Reset test values to defaults
Test Frequently: Use the test panel after each change
Save Often: Export JSON backups during complex editing sessions
Use Descriptive Names: Clear formula names help with organization
Common Workflow
Typical Formula Creation Workflow:
1. Plan the relationship (STR affects Damage)
2. Create formula with basic flat bonus
3. Test with realistic values
4. Add percentage bonuses if needed
5. Test again with edge cases
6. Add breakpoints for milestones
7. Final testing with multiple scenarios
8. Generate and integrate
Error Handling & Validation
Common Validation Errors
Missing Attribute References:
Source attribute doesn't exist in your attribute data
Target attribute name is misspelled
Attribute was renamed after formula creation
Circular Dependencies:
Formula A affects B, Formula B affects A
Complex chains that eventually loop back
Use execution order to break dependency chains
Validation Solutions
Missing Attributes:
• Check spelling in formula configuration
• Verify attribute exists in AttributeData asset
• Update formula after changing attribute names
Circular Dependencies:
• Review formula dependency chains
• Use execution order to establish calculation sequence
• Split complex formulas into simpler ones
• Consider using intermediary attributes
Generation Errors
File Permission Issues: Ensure output directories are writable and not locked by Unity or version control.
Compilation Errors: Check Console for C# compilation errors. Usually caused by invalid system names or namespace conflicts.
Advanced Wizard Features
Formula Templates
The wizard includes common formula templates for quick setup:
Available Templates:
• Basic Stat Scaling (STR → Damage)
• Level Health Scaling (Level → Health)
• Percentage Bonuses (INT → Spell%)
• Multi-Source Combination
• Breakpoint Milestone System
Batch Operations
Batch Formula Operations:
• Apply Settings to All: Update common settings across formulas
• Bulk Validation: Check all formulas for errors
• Mass Export: Export all formulas to individual JSON files
• Template Application: Apply template to multiple formulas
System Analysis
Wizard Analysis Tools:
• Dependency Graph: Visual representation of formula relationships
• Performance Estimate: Calculation complexity analysis
• Balance Review: Stat effectiveness comparison
• Missing Coverage: Attributes not used in any formulas
Integration Workflow
After Generation
Find Your GameObject: The one with your attribute system component
Add Orchestrator: Add the generated orchestrator component
Assign References: Set the Attribute System field
Verify Formula Assets: Check that formulas are assigned
Test in Play Mode: Verify calculations work correctly
Updating Existing Systems
Regeneration Process:
Back up current formula assets (if customized)
Run wizard with updated configuration
Re-apply any manual formula asset customizations
Test thoroughly after regeneration
Version Control Integration
Files to Track:
Generated orchestrator code (.cs)
Formula assets (.asset)
JSON export backups (.json)
Wizard configuration (if saving state)
Files to Ignore:
• Temporary wizard state files
• Test preview cache files
Wizard Troubleshooting
Common Issues
Wizard Won't Open:
Check Unity Console for errors
Verify base Simple Attribute Forge is installed
Try Window → General → Console to clear errors
Attributes Don't Appear:
Ensure AttributeData asset is selected in Setup tab
Check that a formula is selected in the formula list
Verify test values are set to reasonable ranges
Look for validation errors in the formula configuration
Reset Options
Wizard Reset Functions:
• Reset Current Formula: Clear formula configuration
• Reset All Formulas: Clear all formula data (with confirmation)
• Reset Test Values: Return test panel to defaults
• Reset Paths: Restore default generation paths