Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
140 changes: 140 additions & 0 deletions Extensions/AMAPP/AMAPP.ext
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
@description AMAPP - Adaptive Music Application
@author Mount West Music
@version 0.5.0
@changelog
☱ AMAPP v0.5.0 - Beta Release (April 2026)

## New Features
- Create Group modal with name input, "Create region" checkbox, and color picker
- 11 action scripts for hotkey binding (Render All, Create Cluster, Toggle Overlay, etc.)
- C++ extension for performance-critical operations (50 APIs)
- GUI quick action buttons
- Fixed Lanes support: create, duplicate, and render clusters directly from fixed lanes
- Wildcards in export file paths (e.g. $projectdir, $cluster, $tempo)
- Ogg Vorbis added to primary render format options
- "Clear sync points" option in cluster context menu
- Default hotkeys for common actions
- Cross-platform automated builds (GitHub Actions for macOS and Windows)
- Wwise integration now runs through the C++ extension (faster, no Python dependency required when binaries are present)

## Improvements
- Improved auth flow with better error handling
- Render session improvements
- State manager and cluster tree utilities extracted for better modularity
- Error handling framework with Discord bug reporting
- Timeline cluster bar: better responsiveness, spacing, and clamping behavior
- Dragging clusters now moves attached items along with them
- Revamped minimap interaction and visuals
- Focus mode: improved visualization, scroll behavior, and visibility
- Audition: faster playback, improved GUI, click-on-preview-item support
- Cluster list: new icon, improved quick-add buttons, better create-cluster flow
- Activate / deactivate clusters workflow polished
- Responsive GUI height and menu-bar layout refinements
- Render batch process reliability improvements
- Legacy project data now parses gracefully with JSON schema fallbacks

## Bug Fixes
- Fixed: Regions with same start position as temporary cluster render regions no longer get incorrectly removed
- Fixed: Async request error handling
- Fixed: I_FOLDERCOMPACT now cached correctly during Render Cluster
- Fixed: Batch rendering clusters with no overlapping items no longer errors out
- Fixed: Default export options now load on project startup
- Fixed: Items are reliably added to a cluster at create time
- Fixed: Project no longer marked dirty by internal update function
- Fixed: Quick-add buttons draw correctly while a cluster is being moved
- Fixed: Timeline cluster label button focus behavior
- Fixed: Infinite recursion prevented when nesting groups
- Fixed: Group items are no longer rendered as standalone audio
- Fixed: Stored data parses reliably against the JSON schema
- Fixed: Debug menus no longer appear in release builds

@provides
[win64] reaper_amapp.dll https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/extension/reaper_amapp.dll
[darwin] reaper_amapp.dylib https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/extension/reaper_amapp.dylib
[script main] AMAPP/AMAPP-Cluster_manager.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/AMAPP-Cluster_manager.lua
[script main] AMAPP/actions/AMAPP_Add items to cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Add%20items%20to%20cluster.lua
[script main] AMAPP/actions/AMAPP_Create new cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Create%20new%20cluster.lua
[script main] AMAPP/actions/AMAPP_Edit selected cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Edit%20selected%20cluster.lua
[script main] AMAPP/actions/AMAPP_Group selected clusters.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Group%20selected%20clusters.lua
[script main] AMAPP/actions/AMAPP_Remove items from cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Remove%20items%20from%20cluster.lua
[script main] AMAPP/actions/AMAPP_Render all clusters.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Render%20all%20clusters.lua
[script main] AMAPP/actions/AMAPP_Render selected clusters.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Render%20selected%20clusters.lua
[script main] AMAPP/actions/AMAPP_Select items in cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Select%20items%20in%20cluster.lua
[script main] AMAPP/actions/AMAPP_Toggle arm cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Toggle%20arm%20cluster.lua
[script main] AMAPP/actions/AMAPP_Toggle focus on selected clusters.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Toggle%20focus%20on%20selected%20clusters.lua
[script main] AMAPP/actions/AMAPP_Toggle timeline overlay.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/actions/AMAPP_Toggle%20timeline%20overlay.lua
[script] AMAPP/scripts/AMAPP-Create_cluster_group.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Create_cluster_group.lua
[script] AMAPP/scripts/AMAPP-Create_new_render_cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Create_new_render_cluster.lua
[script] AMAPP/scripts/AMAPP-Create_new_set.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Create_new_set.lua
[script] AMAPP/scripts/AMAPP-Deactivate_selected_cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Deactivate_selected_cluster.lua
[script] AMAPP/scripts/AMAPP-Delete_render_cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Delete_render_cluster.lua
[script] AMAPP/scripts/AMAPP-Duplicate_cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Duplicate_cluster.lua
[script] AMAPP/scripts/AMAPP-Edit_render_cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Edit_render_cluster.lua
[script] AMAPP/scripts/AMAPP-Focus_view_selected_clusters.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Focus_view_selected_clusters.lua
[script] AMAPP/scripts/AMAPP-Get_cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Get_cluster.lua
[script] AMAPP/scripts/AMAPP-Get_items_in_cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Get_items_in_cluster.lua
[script] AMAPP/scripts/AMAPP-Get_selected_region_name.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Get_selected_region_name.lua
[script] AMAPP/scripts/AMAPP-Implement_to_WAXML.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Implement_to_WAXML.lua
[script] AMAPP/scripts/AMAPP-Implementation_design.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Implementation_design.lua
[script] AMAPP/scripts/AMAPP-New_cluster_color.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-New_cluster_color.lua
[script] AMAPP/scripts/AMAPP-Render_clusters.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Render_clusters.lua
[script] AMAPP/scripts/AMAPP-Set_cluster_boundaries.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Set_cluster_boundaries.lua
[script] AMAPP/scripts/AMAPP-Set_cluster_loop.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Set_cluster_loop.lua
[script] AMAPP/scripts/AMAPP-Solo_items_in_cluster.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Solo_items_in_cluster.lua
[script] AMAPP/scripts/AMAPP-Update_render_cluster_table_ext_proj_state.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/scripts/AMAPP-Update_render_cluster_table_ext_proj_state.lua
[script] AMAPP/util/AMAPP-Async_request.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-Async_request.lua
[script] AMAPP/util/AMAPP-Auth.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-Auth.lua
[script] AMAPP/util/AMAPP-ClusterAPI.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-ClusterAPI.lua
[script] AMAPP/util/AMAPP-ClusterStore.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-ClusterStore.lua
[script] AMAPP/util/AMAPP-ClusterTree.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-ClusterTree.lua
[script] AMAPP/util/AMAPP-Constants.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-Constants.lua
[script] AMAPP/util/AMAPP-ErrorHandling.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-ErrorHandling.lua
[script] AMAPP/util/AMAPP-Eval_version.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-Eval_version.lua
[script] AMAPP/util/AMAPP-Logger.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-Logger.lua
[script] AMAPP/util/AMAPP-ModuleLoader.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-ModuleLoader.lua
[script] AMAPP/util/AMAPP-RegionManager.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-RegionManager.lua
[script] AMAPP/util/AMAPP-StateManager.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-StateManager.lua
[script] AMAPP/util/AMAPP-UndoManager.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-UndoManager.lua
[script] AMAPP/util/AMAPP-WwiseExport.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/AMAPP-WwiseExport.lua
[script] AMAPP/util/MWM-Render_config.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/MWM-Render_config.lua
[script] AMAPP/util/MWM-Table_serializer.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/MWM-Table_serializer.lua
[script] AMAPP/util/json/json.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/json/json.lua
[script] AMAPP/util/luatoxml/src/luatoxml.lua https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/luatoxml/src/luatoxml.lua
AMAPP/util/init/double_to_int_2.ini https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/init/double_to_int_2.ini
AMAPP/util/init/double_to_int_24bit.ini https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/init/double_to_int_24bit.ini
AMAPP/util/wwise_bin/bin/amapp_wwise https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/wwise_bin/bin/amapp_wwise
AMAPP/util/wwise_bin/bin/amapp_wwise_direct https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/util/wwise_bin/bin/amapp_wwise_direct
AMAPP/img/AMAPP Logo 7 text lg.png https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/img/AMAPP%20Logo%207%20text%20lg.png
AMAPP/img/AMAPP Logo 7 w text micro.png https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/img/AMAPP%20Logo%207%20w%20text%20micro.png
AMAPP/img/AMAPP logo 7 micro.png https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/img/AMAPP%20logo%207%20micro.png
AMAPP/img/AMAPP render in progress.png https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/img/AMAPP%20render%20in%20progress.png
AMAPP/img/mwm logo mini.png https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/img/mwm%20logo%20mini.png
AMAPP/img/mwm-avatar.png https://github.com/Mount-West-Music/AMAPP/raw/v0.5.0/img/mwm-avatar.png
@link
Website https://amapp.io
REAPER Forum thread https://forum.cockos.com/showthread.php?t=308478
Discord https://discord.gg/xs8AEhx6h2
Github https://github.com/Mount-West-Music/AMAPP/
@donation
Support Mespotine https://www.youtube.com/@TheRealMespotine
Support cfillion https://github.com/sponsors/cfillion
@about
# AMAPP - Adaptive Music Application
Adaptive music organization and implementation for game projects.

Bring the game to your DAW by designing the adaptive score inside the REAPER timeline. Test vertical layers, iterate quickly on variations, stay immersed in the creative process and let AMAPP remember and map out your game music landscape.

Once you are ready to test your composition inside the game, AMAPP implements your score into the game engine seamlessly.

Wwise implementation prototype is currently being tested and will roll out shortly. Additional audio middleware support on the horizon.

**Features:**
- Intuitive game music production workflow
- Render cluster management for batch audio processing
- Timeline overlay for visual management of adaptive layers
- Implementation design workflow

**Dependencies:**
- SWS/S&M
- ReaImGui
- js_ReaScriptAPI