Skip to content

Latest commit

 

History

History
156 lines (125 loc) · 7.25 KB

unreleased_changes.md

File metadata and controls

156 lines (125 loc) · 7.25 KB

About this TO-DO list

I will not accept any PRs which alters this file.

Previously this was not pushed to the repo, but since I'd hate to lose it, I added it to source control. It describes things I've only done locally so far, or unreleased changes, ideas, plans, wishlist items, and so on. Don't assume anything here is working or will be available in some future release.

On the other hand, if you see something that interests you and you want to tackle it, please open an Issue and we'll discuss the details.

Post-release changes not already on the wiki changelog page

Release Process

  • Verify version.txt matches release number
  • Verify install.cs has current release number
  • Add any version-based config changes to ConfigHelper.cs
  • Build install.exe release build
  • Publish mhh release build
  • Copy monkey-see-monkey-do release build to mhh publish directory
  • Archive mhh-app-x-x-x.zip and mhh-content-x-x-x.zip
  • Copy zip files into one manual-setup-x-x-x.zip
  • Rename all three zips to a .bin extension
  • Push app and content .bin files to github mcguirev10.com /assets/misc
  • Update readme etc, push changes
  • Create new release tag, upload install-x-x-x.exe and manual-setup.zip
  • Update release history, wiki, etc.
  • Update pinned release tracker: #3

Work In Progress

  • none

MHH TODO

  • Update README for locally-stored MP4s? (100 MB file size limit)

  • Add dev and shader contributor quick-start pages to wiki

  • Wiki: explain OpenGL full-screen behaviors (trying to use 2nd console etc)

  • Add uniform indicating FX is active so viz (like chaos_columns) can take different action

  • Implement a .fade file which is like a cut-down viz.conf (for loading textures, libs, etc.)

  • Playlist - hotkey to extend auto-advance time for current viz

  • Installer - add msmd firewall rule? or run interactively once to prompt?

  • WSL X11 / Linux x64 testing

  • monkey-see-monkey-do - relay delay time

  • monkey-see-monkey-do - utility command(s) (fixsound.ps1)

  • Logo overlay support (random and playlist)

  • Installer - Start menu link to edit .conf

  • Installer - Start menu link to view mhh.log and msmd.log

  • Installer - Start menu link to notes.txt as viz credits

  • Installer - add eyecandy demo and tcpargs utilities

  • Installer - Use winget to retrieve .NET runtime

  • Installer - winget distro? Belphemur/SoundSwitch#1220

  • Installer - Linux installation shell script? cmake script?

  • Create config GUI? (is WinForms supported by always-installed .NET Framework?)

  • Playlist - add [collections] section (playlist of other playlists)

  • Linux render/update events not suspended during OnResize? Fake it somehow?

  • Add * support to [FX-Blacklist] section (and update wiki section 6)

  • Add alternate [FX-Whitelist] section for large-blacklist visualizers

  • Test mode - show keys on screen

  • Test mode - abort if --load or similar commands are issued

  • Textures via HTTP? Caching?

  • Hotkey to popup list of common hotkeys

  • Startup crashes if no audio device available? (ex. RDP disables audio)

  • Fullscreen should detect monitor based on window top-left coordinates

  • Render the text overlay buffer once instead of running the shader every frame

  • Allow aliasing multipass uniform names for reusable utility frag shaders

  • Add a basic setup.sh for Linux? (set exec and dir permissions, copy config)

  • Add mhh.conf paths for saving screenshots

  • Add --paths switch to return configured paths

  • Randomized crossfade duration with CrossfadeRandomMax (0 disables)

  • Add MP4 support? (old: https://github.com/AtomCrafty/MotionTK)

  • Show startup / standby details: devices, standby mode, port listener, etc.

  • Frag Quad -> remove inputs per discord convo (see OneNote TODO)

  • Add test content to intentionally generate errors

  • IVertexSource init should accept a key/value config list (expose a "settings required" bool?)

  • Add OpenGL debug-callback support

  • Buggy in OpenTK, but multi-monitor support? Windowed starting position? Keys to change monitor?

  • Add start position to mhh.conf and --pos command to report window position (OpenTK issue 1663)

  • Use FontAtlasFilename? (update Wiki with info about generating new ones)

  • Soundcloud track overlay?

  • Add cubemap support (cubemap textures not distributed in 3.1.0)

LONG-TERM TODO (MHH, EYECANDY, SWITCHPIPE)

EYECANDY TODO

MONKEY-DROID TODO

  • FUCKING REWRITE
  • Truncates "E" on "ERR" responses; displays ERR as viz description? (maybe that's ok?)
  • Crashes if playlist tab selected with no server selected
  • Newly-added server isn't showing up (Android only?)
  • Add playlist --next fx button
  • Add FX tab
  • Fix Util "CLS" label on Android/narrow UI
  • Prompt for framerate lock on --fps button?
  • Add new command buttons:
    • --fullscreen
    • --standby
    • --console

Posting Demo Videos

  • Record at 720P with OBS Studio
  • Shrink with ffmpeg:
c:\source\_dev_utils_standalone\ffmpeg_20240426\bin\shrinkmp4.cmd

@rem 1GB = approx 23MB @ 320x180 with audio
ffmpeg -i c:\users\jon\desktop\mhh.mp4 
    -vf "scale=trunc(iw/8)*2:trunc(ih/8)*2" -c:v libx264 
    -crf 23 c:\users\jon\desktop\mhh_small.mp4
  • Rename and drag-drop into README.md via Github online editor
  • Pull updated content back to the local repo clone

Terminal Path

C:\Source\monkey-hi-hat\mhh\mhh\bin\x64\Debug\net8.0