Project OutFox Wiki
Project OutFox home View the OutFox Wiki source on GitHub Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

OutFox Alpha 0.4.18 Build

Release Date: 26th October 2022

“LTS Status Engaged - Damnit Jim, I’m a doctor!”

(Incorporates Internal Builds 4.16.1-rc0 to 4.16.1-rc3)

(Incorporates Internal Builds 4.17.0-rc0 to 4.17.0-rc5)

(Incorporates Internal Builds 4.17.1-rc0 to 4.17.1-rc6)

(Incorporates Internal Builds 4.17.0-rc0 to 4.17.0-rc15)


Please read the change log!

What Happened to 0.4.17?

0.4.17 passed initial testing from our valiant testing volunteers, however it failed the testing on cabinets and for those who use dance and pump modes for skill/technical based play. As the whole point of this LTS programme is to ensure stability and remove opportunity for the game to crash or have problems in general play this was unacceptable, and we went back to deep bug fixing which is why this release is later than planned, but provides a much more stable environment for play.

As with development we cannot guarantee you’ll never crash, but we have reduced bugs and situations where that could happen while you’re playing the game.

We hope you enjoy the fruits of our work, with this proper stable build, and appreciate your continued support!


New Mode: bongo!

bongo play default theme

Based on a game for home consoles released in the early 2000s, this mode brings in a highly requested fan favourite to OutFox!

Played using the left drum, right drum, and clapping, this fun mode at the moment uses the games TJA and OTO loaders to support fan created TJA content, and Mode 1 from osu files, though bear in mind, many of the osu files are not designed with fun in mind, so it may become painful using your hands to play these files!

You do NOT need to enable auto-gen for this mode! It uses any TJA or OSU files in your folders already to generate tracks! Remember our taiko support is ongoing, so some holds and effects do break sync, but we will be fixing these in time. We do not have a theme yet for this mode, so game-play is with the basic ‘default’ for now, so you can have a play and feel for it!

This is our 18th Working Game Mode that this engine supports, and we are truly humbled by the awesome support you, the players, provide us to continue to improve and expand on what this museum contains within it’s wall of code!

We have designed this mode alongside the project OpenTaiko so that charts made using the new TJA letter types in the charting format will be cross-compatible between the two simulators moving forward.


Long Term Stable Builds Are Here! (Take 2!)

As part of our commitment to getting the game out of the eventual development hell, we have had a discussion and all agreed to keep the alpha 4.xx branch active for the next year while we work on finalising the alpha V branch.

What this means to you, the end user, is that if you do not want to have to change builds all the time and deal with ’new feature’ bugs, then this branch will be maintained (for bug fixes only) in a 1 month bug fixing schedule until December 2022, then will move to a quarterly release schedule (so 4 more updates) until it is retired at the end of December 2023 with the final release being 4.24.

This branch is stable enough for the removal of the ‘alpha’ prefix, and if you get any bugs or issues do report it. Things deemed important will be back-ported to the 0.4.x branch, but the team will be focussing more on 0.5.x in 2023 and beyond.


New PandaLog File System

This month we also added a new logging system which will greatly help with any debugging needs that you have. We have changed the system, so that there is a main, a theme, and a crash-log now, and these have varying levels of detail, depending on need. If you happen to have a crash or need to debug a theme, or lua mod, this is now much easier to do.

On the log level preference, 0 shows full detail, where 5 will give you a reduced log-file, usually when you have everything set up and working well.

PLEASE NOTE:

As we no longer follow the SM logging system, we have added a dummy ‘info.txt’ for the Windows launcher of GrooveStats so the launcher for that system still works.


New FFMPEG system

This release also sees some changes to the FFMPEG builds used in OutFox. We had discovered there is a memory leaking bug in upstream which doesn’t really affect many of the video players out there generally, the code we use to acquire and display video data is based on the functions that are bugged in newer versions, so folks using banners or video backgrounds would end up with crashing and freezes due to this.

We have reverted back to a much older ‘bug free’ build of 4.x for the time being until it is fixed by upstream. If you get any quirks or errors on videos, do let us know; we tried a lot of different formats and videos commonly used, but we didn’t cover everything!


Linux Joystick Pref

This build adds a support option for those folks on some builds which have had evdev issues with the newer kernels (5.1+) making pads not show up.

By default OutFox uses the event system as this is recommended by distros like Ubuntu and Debian but with recent updates these can miss seeing pads and controllers.

The new pref UseLinuxJS (Use Linux JoyStick) sets /js* by default, so folks can access the controllers correctly. If you want the older behaviour, take a moment to set this to 0 in your preference.ini file in the /save folder. We will keep an eye on this for now, and if you get any errors about ‘access denied’ ensure your user is in the ‘input’ group using a terminal and:

sudo usermod -a -G input USERNAME

where USERNAME is your current user (type whoami) to see what this is in a terminal.

Let us know if you have any issues, and pop into the Discord server if you need any help!


pump fixes!

This month we have been working with the players and developers of the Infinitesimal theme for pump with fixing the hold situation in the simulation of this mode. With a lot of revisions and testing, we can happily report that the holds are operating properly now, and we are grateful to those that gave their time helping us perfect it!


New Always on Top Preference!

This preference was requested by a lot of our streamer players, as they said it can cause issues with the streaming and capture methods they use.

This preference which is simply entitled AlwaysOnTop is set to 0 (false) by default, which is the normal behaviour of the game. To enable it while you stream you can set this to 1 and the game will always be on the top of the screen even if you click off or have a window behind it.

Thanks to Zui and Shrmp0 in the Discord for making the suggestion known to us and for our streamer friends for enjoying the game on different platforms.


New AllowRotation Preference!

This preference was back-ported from Alpha V as some of our users have requested support for rotational options. This pref is off by default, and allows rotation for vertical based screens where the resolution/display is rotated, mainly for vertical options.


StepLastSeconds Changes!

For songs which have a multiple chart in the folder, like pump, be-mu, po-mu, kbx via osu etc, there is a slight bug in the way the game sends the ’length’ data to the theme/engine that counts stages at the moment. This is a long upstream bug and we are working on a fix in Alpha V, and will backport it when it is ready.

The issue is, if some charts are different lengths, they will show correctly in screen game-play, but only display the LONGEST length in the music wheel, or ‘ScreenSelectMusic’ as it’s known to themers. Fixing this bug will also benefit other modes so it is something we want to work on.


New Installer for Windows!

This release has an updated installer that better reflects the feel of OutFox, and gives us a better platform to use moving forward. We hope you like it!


Version 0.4.18 Fixes:


KNOWN ISSUES: Alpha 4.18.0

  • ❕❌ ISSUE Playing be-mu/po-mu songs on Endless Mode may have a crash on song loading. Please be aware that course mode for these modes are a bit temperamental at the moment!
  • ❕❌ ISSUE gh mode: Some charts may cause a crash when loaded into the game
  • ❕❌ ISSUE gddm/gdgf mode: We do not support the XA codec at this time, it’ll play those keysounds silently.

ALL:

Mode Specific

  • ❕✅ bongo: NEW! Added new bongo mode

  • ❕✅ bongo: Added support for tja file chart auto-generation

  • ❕✅ bongo: Added support for osu file chart auto-generation

  • ❕✅ bongo: Added new note-skin support

  • ❕✅ bongo: Added editor support

  • ❕✅ be-mu: Fixed bug with MusicThread endlessly looping on BMS/PMS files

  • ❕✅ pump: Fixed mini-holds (128ths/192nds) from auto-hitting themselves

  • ❕✅ pump: Added new code path for hold checkpoints and mini holds so they work and are not incorrectly scored / hit according to SM5 dance

  • ❕✅ pump: Fixed hold display issue

  • ❕✅ pump: Fixed timing on holds for misses

  • ❕✅ pump: Fixed pump hold issue with hit timing

  • ❕✅ pump: Adjust pump micro-holds to be closer to what players expect

  • ❕✅ dance/smx/techno: Fixed bug with life on non-pump holds killing the player

  • ❕✅ be-mu/po-mu/gddm/gdgf: Auto switch to HQ mp4 movie BGA if available

  • ❕✅ be-mu/po-mu/gddm/gdgf: Fixed title being overwritten resulting in the directory name being used

  • ❕✅ be-mu/po-mu/gddm/gdgf: Fixed regex causing #TITLE to be empty

  • ❕✅ be-mu/po-mu/gddm/gdgf: Removed SM3.9 era cruft from the parsers

  • ❕✅ be-mu/po-mu/gddm/gdgf: Removed defunct Unicode conversion as we do it properly now

  • ❕✅ be-mu/po-mu/gddm/gdgf: Fixed CommonSubstring overflows resulting in bad #TITLE/#SUBTITLE title

  • ❕✅ be-mu/po-mu/gddm/gdgf: Fixed bad SM4 code breaking some #SUBTITLE entries

  • ❕✅ be-mu/po-mu/gddm/gdgf: Fixed multi-layer backgrounds not being initialised correctly

  • ❕✅ be-mu/po-mu/gddm/gdgf: Removed bad converting code for #ARTIST and #GENRE

  • ❕✅ be-mu/po-mu/gddm/gdgf: Fixed bug causing cache generation lagging on initial parsing on first boot

  • ❕✅ be-mu & po-mu: Fixed bug with MusicThread endlessly looping on BM*/PMS files

  • ❕✅ be-mu & po-mu: Fixed bugs with keysounds returning empty, which fixes extended BMS/PMS

  • ❕✅ kbx: Fixed bug with early ending holds in osu files

  • ❕✅ taitai: Fixed bug with songs ending 2 notes early

  • ❕✅ taitai: Fixed note placement on editor

Engine

  • ❕✅ Fixed function reference in ArrowEffects
  • ❕✅ Fixed FFMPEG memory leak problems
  • ❕✅ Fixed FFMPEG SWScale bugs
  • ❕✅ Fixed math glitch in ArrowEffects giving us an 8-21% performance increase
  • ❕✅ Fixed legacy code in GLAD giving us a 4-9% performance increase
  • ❕✅ Fixed mouse warnings
  • ❕✅ Fixed Valgrind warnings and reported leaks
  • ❕✅ Fixed texture crash
  • ❕✅ Fixed double buffer call in input
  • ❕✅ Avoid needless divides in RageMath
  • ❕✅ Added Preference to allow OutFox to rotate with the option to match OS Screen. Options are landscape, landscape flipped, portrait, and portrait flipped, which are provided by the operating system. Set AllowRotation=1 in the preference.ini if you use a vertical orientated monitor
  • ❕✅ Added Preference to allow OutFox to have it’s window “Always On Top”. This means it will not minimise or disappear if clicked, so remember this! Set AlwaysOnTop=1 in the preference.ini to enable this. Good for streaming!
  • ❕✅ Fixed bug with out of date CMake causing runtime issues on newer linux / windows versions
  • ❕✅ Fixed crash with style compatibility
  • ❕✅ Fixed bug with a race condition in the RageFile
  • ❕✅ Fixed bug with reset rates being called in the wrong place in themes
  • ❕✅ Fixed crash with texture creation on some files
  • ❕✅ Fixed bug with massive memory leak in FFMPEG frame delivery
  • ❕✅ Fixed crash with FFMPEG on some older systems
  • ❕✅ Build brand new FFMPEG libs for all platforms
  • ❕✅ Added new gif loader, please let us know if you have any issues with gifs
  • ❕✅ Fixed crash with InputFilter on usb devices/pads with the new threading system
  • ❕✅ Fixed crash with song/video loading when the song was created in linux/mac but loaded in windows
  • ❕✅ Fixed a couple of race condition crashes in windows/linux
  • ❕✅ Fixed small math overflow on finger pressure value
  • ❕✅ Fixed crash with FFMPEG leaking memory
  • ❕✅ Removed legacy assert on arcade crashing the game
  • ❕✅ Fixed bug with missing malloc/free pair
  • ❕✅ Fixed missing crash headers on PandaLog
  • ❕✅ Fixed GameState calls
  • ❕✅ Fixed bug with StepLastSeconds not being set correctly on some charts - Please note: Some songs that have multiple LENGTHS in the same folder may still display the longest chart length - This is being looked at!
  • ❕✅ Updated splash to 4.18
  • ❕✅ Fixed dancing characters always being enabled when setting up the game
  • ❕✅ Fixed bug with keysounds not being preloaded correctly
  • ❕✅ Fixed bug with no video found not using RandomMovies
  • ❕✅ Fixed bug with no random movies being found in the folder
  • ❕✅ Fixed old upstream bug with song movies not being loaded
  • ❕✅ Fixed fallback system on movies
  • ❕✅ Fixed level cast in InputHandler
  • ❕✅ Fixed bug with fail-type being released and not saved
  • ❕✅ Forced false for hash-stats
  • ❕✅ Fixed bug with plain texture drawing on AMVs
  • ❕✅ Fixed bug with AMV vertex arrays in modern GLAD
  • ❕✅ Fixed MiniSDL cache miss
  • ❕✅ Fixed data stride in GL driver
  • ❕✅ Fixed WindowTitleRef
  • ❕✅ Fixed a few math bugs in GLAD drawing
  • ❕✅ Increased the tween stack to 99 at community request, this allows for less stuttering and lag on lua wheels and mod-files to have a bit more breathing room for effects
  • ❕✅ Fixed crash with URL strip functions
  • ❕✅ Fixed bug with style incompatibility issues
  • ❕✅ Fixed a mutex unlock within the file system
  • ❕✅ Added a new glyph pack: latin-extended-additional and updated the Texture Font Generator to V0.36
  • ❕✅ Fixed missing link in soundwaves for new glyph pack
  • ❕✅ Fixed empty names showing on display ID’s if one is not given by the OS
  • ❕✅ Fixed crash with legacy controllers and haptic devices
  • ❕✅ Fixed performance issue with “optimisations” made in 2019
  • ❕✅ Fixed display-bpm showing when ‘random’ should be used
  • ❕✅ Fixed crash with DebugLevel
  • ❕✅ Fixed legacy pathing issue with GrooveStats needing info.txt with the new PandaLog system on windows
  • ❕✅ Fixed lag on older systems with the note loading system
  • ❕✅ Fixed crash on sprites loading with bad or not parsed resolutions
  • ❕✅ Fixed crash with Discord core on shutdown
  • ❕✅ Fixed crash with log shutting down faster than GameState
  • ❕✅ Fixed memory corruption on discord core source
  • ❕✅ Fixed upstream bug with SDL source
  • ❕✅ Fixed autogen missing some songs
  • ❕✅ Fixed crash on recentlog
  • ❕✅ Fixed crash preventing use of Oni/Endless/Extended modes using player 2 controls (Reported by BSG)
  • ❕✅ Fixed crash with corrupt backgrounds being used on Oni/Endless/Extended modes (Reported by BSG)
  • ❕✅ Fixed Background Crash that was reported
  • ❕✅ Fixed lag on loading window
  • ❕✅ Fixed MiniFFMPEG parsing
  • ❕✅ Fixed MiniFFMPEG threading
  • ❕✅ Optimise MiniFFMPEG decoding
  • ❕✅ Fix frame decoding algorithm
  • ❕✅ Tweak loading speed on initial cache
  • ❕✅ Add new updated NSIS installer with custom OutFox branding

Windows 7+ (Win32 and x64):

  • ❕✅ Fixed bug in legacy win32 driver causing delayed response, 3% increase in performance for windows
  • ❕✅ Fixed one of the phantom input crashes in windows
  • ❕✅ Fixed crash when game closes
  • ❕✅ Fixed crash on Windows Vista/7 on inserting “PSX” converters connected to a PS2 official Bemani/Pop’n controller
  • ❕✅ Fixed bug with InputHandler on Windows 7 and 8 not being the same calls
  • ❕✅ Modernised acio to support Windows 11 quirks
  • ❕✅ Fixed minimaid crash due to legacy coding practices
  • ❕✅ Removed lights drivers popping up dialogue boxes - requested by DesktopMan

Linux:

  • ❕✅ Fixed some latency issues with profile loading/saving on SD cards on SteamDeck
  • ❕✅ Fixed crash with udev being initialised in the incorrect manner
  • ❕✅ Fixed build system pulling in deprecated udev library crashing 20.04-> distros
  • ❕✅ Fixed evdev mismatch
  • ❕✅ Added pref to force /dev/input/js* to be default over /dev/input/event*. Set UsingLinuxJS to 0 to set to use /dev/input/event and use evdev.
  • ❕✅ Fixed MESA crash on OutFox modern when trying to init the display driver closes #444
  • ❕✅ Fixed libOpengl0 crash on newer hardware
  • ❕✅ Fixed crash on Pop! OS, Fedora, Mint
  • ❕✅ Fixed startup crash on ubuntu/debian with a weird log, (closes #444)
  • ❕✅ Added new Wayland bindings so we can properly support Wayland
  • ❕✅ Added new pipewire bindings so we can properly support pipewire moving forward
  • ❕✅ Removed legacy code paths preventing older GPUs running properly on mesa 21.4
  • ❕✅ Fixed build environment and dev libs for x64
  • ❕✅ Fixed build commands

MacOS (Universal):

  • ❕✅ Fixed

ARM32/ARM64: (Raspberry Pi etc)

  • ❕✅ Fixed crash with FFMPEG on Vita/Switch
  • ❕✅ Fixed some latency issues with profile loading/saving on SD cards on Raspberry pi

Community content


Noteskins

  • ✅ New default noteskin for bongo

Judgments

  • ❕✅ Added KBX / BMS judgments from MDR
  • ❕✅ Added Infinitesimal judgments

Translations

  • ✅ Translations updated from Moru, SHRMP0 and SheepyChris (Brazilian Portuguese)
  • ✅ Translations updated from Moneko (Polish)
  • ✅ Translations updated from Hanubeki (Japanese)
  • ✅ Translations updated from Jose_Varela (Spanish)
  • ✅ Translations updated from Daniel Rotwind (German)
  • ✅ Slovak translation by jose1711


Version 0.4.17 Fixes:

ALL:

Mode Specific

  • ❕✅ be-mu & po-mu: Fixed bug with 2 old BMS channel layouts left in by accident
  • ❕✅ be-mu & po-mu: Fixed bug with endless loops on long charts
  • ❕✅ dance: Fixed bug with hang on lights on menus in some weird cases
  • ❕✅ dance: Fixed bug with some older charts causing a ’loading’ hang
  • ❕✅ pump: New! Added AVMod scrolling mode
  • ❕✅ pump: New! Added fourV2lane colour noteskins
  • ❕✅ kbx: New! Added NoMines to PlayerOptionsSimple()
  • ❕✅ kbx: Fixed bug with pump auto-gen charts not working correctly
  • ❕✅ kickbox: Fixed bug with missing items and layouts
  • ❕✅ kbx: Fixed crash on loading .qp and .osz packed charts

Engine

  • ❕✅ Fixed order of draw buffers in GLAD
  • ❕✅ Fixed order of shader buffers in GLAD
  • ❕✅ Fixed font reload order
  • ❕✅ Fixed legacy call causing stability issues
  • ❕✅ New! Added DebounceCoinInputTime to screenoptionsmasterprefs
  • ❕✅ Fixed bug with negative refCount on models and their texture counts
  • ❕✅ Fixed bug with colour buffer so translated textures work on new GLAD driver (noteskins like cel3d used these)
  • ❕✅ Fixed with SimpleHolds bottomcap
  • ❕✅ Allowed FailImmediate to be saved properly
  • ❕✅ Fixed bug with MIDI where there would be a crash when shutting down
  • ❕✅ Added New game information for 0.4.xx branch
  • ❕✅ Added new method to generate notefields to fix crashes
  • ❕✅ Fixed legacy bug with files being deleted twice
  • ❕✅ Fixed SM5 era bug with glyphs disappearing
  • ❕✅ Fixed bug with misinterpreted Sphere mapping
  • ❕✅ Fixed crash with missing noteskins
  • ❕✅ Fixed 20 year old bug in RageDisplay causing stuttering on Modern GPUs
  • ❕✅ Set Windows system to LTS and remove the alpha prefix
  • ❕✅ Added new LTS Splash
  • ❕✅ Fixed overflow in timing
  • ❕✅ Added new Panda Thread system to remove deprecated RageThreads
  • ❕✅ Added new PandaLog system to remove deprecated RageLog, crashlogs and logs are now restored
  • ❕✅ Fixed crash on loading songs
  • ❕✅ Fixed vsync timings
  • ❕✅ Fixed logger crash info detail
  • ❕✅ Fixed crashes with ReceptorArrowRow and GhostArrowRow

Windows 7+ (Win32 and x64):

  • ❕✅ Added Windows 32 & 64 bit, theme, mode icons to Discord RPC
  • ❕✅ Added FourV2Lane to the NSIS so folks can now use it for pump
  • ❕✅ Fixed bug windows affinity on Windows 20H1 onwards, and Windows 11 21H1 onwards

Linux:

  • ❕✅ Added Linux 32 & 64 bit, theme, mode icons to Discord RPC
  • ❕✅ Fixed minimum build environments, so linux builds are more stable

MacOS (Universal):

  • ❕✅ Fixed bug with crash when unplugging MIDI keyboards on MacOS 12/13
  • ❕✅ Fixed bug with dangling pointer in the MIDI drivers, thanks M1MacGaming for the report!
  • ❕✅ Fixed crash on Mac M2 systems with rtMIDI
  • ❕✅ Added Mac 64 bit, theme, mode icons to Discord RPC
  • ❕✅ Fixed bug with new M2 Macs crashing with ‘unknown arch?’
  • ❕✅ Fixed bug with string reading due to non-standard char16 support
  • ❕✅ Fixed crash with legacy darwin code still hanging around from SM3.x

ARM32/ARM64: (Raspberry Pi etc)

  • ❕✅ Fixed crash when using Roland e-drums on non-raspi distros

Community content


Other

  • ✅ Added OutFox category to the LuaDocs XML

Noteskins

  • ✅ New classical3d noteskin for pump
  • ✅ Add 3D rolls to paws-simpleholds

Judgments

  • ❕✅ Added KBX / BMS judgments from MDR
  • ❕✅ Added Infinitesimal judgments

Translations

  • ✅ Translations updated from Moru, SHRMP0 and SheepyChris (Brazilian Portuguese)
  • ✅ Translations updated from Moneko (Polish)
  • ✅ Translations updated from Hanubeki (Japanese)
  • ✅ Translations updated from Jose_Varela (Spanish)
  • ✅ Translations updated from Daniel Rotwind (German)
  • ✅ Slovak translation by jose1711