Articles

  • Common splash.png

    Happy 2022! We're celebrating the new year with the second half of our second anniversary celebration, Alpha 4.12.0! This build includes some bug fixes and improvements over 4.11.0, and also introduces a few major changes which we will go over right now:

    Unicode support

    Alpha 4.12 has very long overdue extended character support in the file handlers. BMS and DTX files use different encodings to .SSC and .SM simfiles, and in the past, they often showed up as garbage characters, or mojibake characters which could not be easily read into the game. A simple fix for this was to convert the simfile into UTF8, but with many hundreds of files, this is not reasonable to ask of players.

    OutFox_ZwDcFakbTR.png

    Captured using Alpha V DTX theme in development.

    This build correctly can detect the encoding with no user interaction, and will load them as expected into the correct game mode, including:

    • ANSI/Windows Extended (SMA/BMS/DWI/KSF)
    • SHIFT-JIS (BMS/BME/PMS/DTX/GDA/TJA)
    • UTF-8 (DTX/BME/SSC/SM/OTO)
    • UTF-8 BOM (GDA/DTX)
    • UTF-8 Extended (TJA/BME/DTX)
    • UTF-16 (DTX)
    • UTF-16LE (DTX)
    • UTF-16LE BOM (DTX)
    • UCS-2 (DTX)

    Songs taking advantage of this change will take a little longer to parse and load on startup, but there will be opportunities to optimize it.

    Game modes

    4.9.12-modes.png

    Throughout 2021, Project OutFox began to position itself as a multi-game engine, designed to be more of a working museum dedicated to preserving the history of rhythm gaming. We have been building upon and fixing game types that were inherited from the StepMania codebase, as well as implementing new game types that have never been implemented in StepMania before.

    Alpha 4.11 and 4.12 respectively include two major new game types that we hope you'll have fun exploring and making content for:

    smx

    Alpha 4.11 introduced initial support for smx, a simulation of Step Revolution's StepManiaX - a five-panel game type that uses a similar layout to dance, except with a center panel. We have also implemented beat bars in this mode that show the locations of stops and BPM changes.

    msedge_O1nvzW88Ek.png msedge_UMRqgiMs6d.png

    To help support Step Revolution and the official StepManiaX game, we ask that you not rip or use official assets and songs from the game in OutFox. We will not support the arcade game's timings (this mode plays best with the ITG timing windows) or file format, so please do not ask us to add them! The winter update to OutFox Serenity Volume 1 will add smx charts, and you can author your own smx charts in the editor.

    kb7

    On Alpha 4.12, we have removed kb7, a mode that was originally developed by the SSC. There were many players who wanted it to be more than it was, but the mode was generally used by a small set of players, and the original creators of the mode also wished for it to be retired when we got the chance. We salute the mode and what it did for StepMania at the time.

    But fear not, keyboard players, as we are proud to present...

    kbx

    kbx is a revamp and rewrite of the kb7 mode, aimed at players that wanted a specific down-scrolling game mode, but with different sets of columns. We of course have varying modes with different sets and styles already, but there was no actual option to have things set in one specific place and one specific mode for it.

    msedge_YeVIIt6H34.png

    kbx supports 1 to 15 columns, and is a single-player mode. It will eventually get its own theme and other mechanics, but for now, it will fallback to our usual theme, but this does not make it any less playable!

    We have decided to follow the playstyle of ez2 and o2Jam-styled games, but with our own little twist on things as is common with OutFox modes. In the future, there will be options to set this mode up to how you prefer, with styles and timing/scoring modes available to change up and adjust as always. The default noteskin for kbx is based upon the synthwave aesthetic, and this look will carry into its eventual theme as well. To help you learn and become comfortable with this mode, some of the noteskins are set up to display the key binding for each column below it.

    Another unique aspect about this mode is that it will automatically autogen charts for existing songs too; i.e. songs with dance-single charts will show up as autogen 4K charts, pump-single and smx-single will show up as autogen 5K charts, dance-double will show up as 8K, etc.

    To make this mode more accessible, we have also included a chart modifier that allows you to replace LiftHolds with normal holds. This was based on feedback from players, who felt that how they are used in charts may increase difficulty or make the game overly punishing.

    Our default keyboard mappings can be seen below, but as always everything is completely remappable! You can also assign controllers, MIDI input, drums, DJ controllers, pads, etc. to this and play in any way you like!

    kbx.png

    To help improve performance, kbx does not support using modifiers in the same way that other modes such as dance does. You may be wondering why we took the time to write a "slimmer" Player Options for this mode. In honesty, there are a lot of things happening in the background we don't use in some modes, and we wanted to try out turning some of these things off to see how it works with the game and performance styles.

    OTO parser

    We have also begun work on an OTO parser to enable osu and osz file support! We support the mania mode (3) at this time (we were unable to finish the taitai (1) support in time, it will come soon). The game reads them and can play them with synched video and BG changes, but we do not support osr or osb at this time.

    Place song folders with OTO files into a group folder as you do with other simfiles, and they will be parsed as kbx charts. This mode supports multiple difficulties per folder, and will not make some versions 'disappear' as the old versions did. If there are multiple different songs in the same folder, the OTO parser can read and differentiate between the chart and its song/background, meaning you do not need to swap out anything or move stuff to individual folders. We will look into making this option available to other modes in the future. This new parser is based off of the .chart parser using line by line, splitting up each section into its own loading function.

    Input

    MIDI

    Project OutFox's portmidi driver has exited the beta stage on Alpha 4.12.0; this driver was written to accommodate the use of MIDI drumkits with the gddm mode. This was the first time that our engine contained a fully functioning cross platform MIDI driver, the previous semi-broken win32-midi being Windows-only. This new driver offers a 1 millisecond clock timer and near real-time input on Linux and macOS, but only supports one device connected to the system.

    We are in the process of designing a MIDI-based FSR controller for modes which need it, as the MIDI system is currently the lowest latency for Windows-based systems. We hope to open source this in time, when the code is better (and Squirrel has the time).

    The reason we kept it in beta for so long was there was an identified need to have a MIDI driver capable of supporting more than one MIDI input device, as had been requested by be-mu and gddm players, like DTXMania has, being able to add a second device to enable menu control, or to enable non-standard setups, for example pedals or ride cymbals from a second kit.

    To assist with this need, we added another MIDI driver to the game, rtmidi. This driver allows for more than one device support compared to our portmidi driver, which is limited to a single device, like an e-drum kit, or a DJ controller. rtmidi allows for more than one device to be connected for two-player use, or for extra control for menu options for example.

    The new rtmidi driver can be added to your Preferences.ini if you wish to use it:

    # Windows
    
    ## portmidi - you only have one device
    InputDrivers=portmidi,legacy,minisdl
    
    ## rtmidi - you have more than one device
    InputDrivers=rtmidi,legacy,minisdl
    # macOS (M1 and Intel)
    
    ## portmidi - you only have one device):
    InputDrivers=portmidi,SDL
    
    ## rtmidi - you have more than one device):
    InputDrivers=rtmidi,SDL
    # Linux (x86_64/ARM/Raspberry Pi)
    
    ## portmidi - you only have one device):
    InputDrivers=portmidi,SDL
    
    ## rtmidi - you have more than one device):
    InputDrivers=rtmidi,SDL

    Windows legacy input by default

    If you have been reading the previous changelogs, we have been testing a slightly modified version of the old SM 4.x/5.x input driver for those that prefer the 'feel' of that era in input timing. Until the new GA driver is finished (we are waiting for the Q1 2022 Windows 10/Windows 11 update), we will set this driver as default from this alpha.

    If you are on an established Preferences.ini, to use it you can follow the style above:

    legacy (Windows Only)

    InputDrivers=legacy,minisdl

    You can also leave this blank, or add MIDI if you plan to play DTX or use a MIDI based input device in the future. You will need the minisdl input driver for your window and operating system controllers, it allows for a smaller footprint on the game, and for your Windows based playback this is important at the moment. It shows up in the 'test input' screen as 'Window Handler (aux)' so you have window controls, and full-screen etc support while keeping the base drivers compact. This driver will be default on all operating systems in due course, when the GA driver is complete.

    If you however need to have an XInput supported device, or you have an advanced setup, you can reset the driver to how it was before this alpha with a simple change in your Preferences.ini:

    SDL Driver (Windows Only)

    InputDrivers=SDL

    This will enable the support for the XInput system, and the legacy system in the default theme experimental options, (the UseOldJoystickMapping one) which will allow you to switch between the options.

    If you use a ParaParaParadise controller you will need to add the Para Driver (Windows only right now!) before your options in preferences.

    Legacy Driver (Windows Only)

    InputDrivers=Para,legacy,minisdl

    SDL Driver (Windows Only)

    InputDrivers=Para,SDL

    If you use a Reflex controller, you have several options, however it is best on Windows if you use the new legacy driver for now. To enable the Reflex controller, you need to add the following to your entry: (please note: You need legacy for keyboard input and to avoid HIDAPI problems!)

    (Only one player is supported at this time, however if there is demand we can add more player support! Bug Squirrel for more information!)

    Reflex Driver (Windows Only)

    InputDrivers=Reflex,legacy,minisdl

    If you have a Python 2/3 controller, like the above set up for the Reflex you can simply add your entry here, (remember to set up your COM ports etc as seen in the Windows Device Manager) and remember that this device is not seen in Windows 8 or higher due to the change in the way USB controllers became emulated.

    Windows Only

    InputDrivers=Python23IO,legacy,minisdl

    If you have a RTIO controller, you need to add this as the other controllers, remember that legacy gives you keyboard and mouse support.

    Windows Only

    InputDrivers=Rtio,legacy,minisdl

    Linux i386 and Windows 7 builds

    For Alpha 4.12.0, we have produced a build for 32-bit Linux i386 systems, which supports systems as far back as Ubuntu 14.04. This build is something that we have not done in a while, so be sure to provide us with bug reports if you find any issues.

    In addition, we have also produced a specific build for Windows 7, as the tools needed for us to build Project OutFox for Windows 11 are not quite compatible with older versions.

    You can download these builds from the GitHub release page

    Download

    This is just a recap of the major, user-facing features and technical changes. You can read the full changelog on the Alpha 4.12.0 page on outfox.wiki.

    As always, be sure to report any bugs you encounter on either our issue tracker or Discord. Be sure to provide us with as much information as you can whenever you report an issue. We won't be able to fix bugs that aren't reported to us.

    Download Alpha 4.12.0

  • Do you know why we stopped the car?

    Common splash.png

    December 16 marks the two-year anniversary of the first public alpha release of Project OutFox; we would like to once again thank you for all the support and good vibes you have brought us as we work on this project. We have some big plans for OutFox in 2022, including new themes and touchscreen support, a new online system, and of course new modes and other modernizations!

    5.3 Alpha 4.11 is our Second Anniversary Edition release; it is mainly focused on bug fixes and performance improvements, but we've also slipped in a few little previews of things we're working on for a future release (hint: try pressing F1 when you're in the editor).

    There are a few important changes to note:

    • The names used for the executable and the directories for installation, save data, etc. have been changed from "StepMania"/StepMania 5.3" to "OutFox". This is part of the rebranding process that began on Alpha 4.9.8, and is needed to comply with the requirements for code signing and Microsoft SmartScreen verification. It also reduces the risk of conflicts with older versions of StepMania, so OutFox can be safely installed alongside StepMania 5.x without the risk of it overwriting or damaging profiles or stored scores..
      • Due to this change, you will need to move your profiles over to this new version. The old version will also need to be uninstalled manually; sorry about all of this, it is just for this update. On Windows, the uninstaller does not delete the Save folder, so you can specify your existing directory when installing Alpha 4.11.0 if you prefer.
    • The beat and popn game types have been renamed to be-mu and po-mu; this change does not affect the ability to load chart files with the old names, but you will have to rename the folders accordingly if you have noteskins for those game types.

    Download

    This is just a recap of the major, user-facing features and technical changes. You can read the full changelog on the Alpha 4.11.0 page on outfox.wiki.

    As always, be sure to report any bugs you encounter on either our issue tracker or Discord. Be sure to provide us with as much information as you can whenever you report an issue. We won't be able to fix bugs that aren't reported to us.

    Download Alpha 4.11.0

  • The winter is coming, have you heard the song yet?

    Heads up!

    Serenity Winter Update is currently open for chart and graphics submission, want to know if there's anything you can help with? Check out these:

    If there's anything here that you would like to help with, please read our Winter Update blogpost.

    Moru Personal Note (Tiny-Foxes Owner)

    As the year comes to an end, our member's life becomes busier with life stuff, OutFox Team has never been in such high production before, as a result, don't be surprised those last months have few updates besides members personal projects, for myself I can barely take care of what I could when this project started...I got a job sooner than I expected and I wasn't aware of the time I would then lose not doing things I want to do. However, next year will be a big year, both for Tiny-Foxes and Project OutFox, many kinds of stuff are in the works that even we can't believe is happening so let us know you're with us and share our hard work with your friends, they won't want to miss out on what is to come.

    Project Updates

    JudgeFonts-by-MattMayuga

    Added new Luminousity judgefont

    Tiny-Web

    Added Oct Monthly post.

    superuser-outfox

    Fix Konko module implementation.

    Aqui-Alpha-Noteskins

    November 2021 Update.

    TF_Wheels

    Added dummy masks to fix wierd behavour in modfiles.

    kitsu-template

    • Updated Kitsu Template version to 3.1.0
    • Made entire modfile environment local
    • Add proxywall node type
    • Add support for multiple player proxies
    • Add note type ActorCamera

    That's it for now, stay safe out there and be ready for the winter!

  • OutFox Serenity Volume I was our first-ever pack release, and we would like to thank everyone who took time to contribute or check it out! We are planning to formally launch the submissions process for Serenity Volume II in early-2022. But to help lead towarrds it, we're taking chart and graphics submissions for a Winter Update to Volume I that consists of three new songs:

    If you're not familiar with them, please be sure to read the Serenity submission guidelines.

    We've created a new Discord server specifically for Serenity development, In addition, we will now be using pull requests on a branch of Serenity's Git repository as our preferred method of submitting contributions, in order to keep things organized and make it easier for us to identify possible issues. If you're not used to GitHub, you can still send us chart files manually through the Discord server too.

    You can also submit new charts for existing songs in game types that don't have them yet. Submissions close on December 29, 2021, and we plan a final release in January 2022.


    Don't forget, music submissions for Serenity are always open, even if a new pack is not currently in development; we're constantly revisiting and reviewing the submission backlog as new submissions come in.

  • It's spooky out there, and yet you're here for the news, stay safe out there, now time to read!

    New Projects

    superuser-outfox (Created/Hosted by Sudospective)

    Superuser is the 4° theme hosted on OutFox but the first one isn't a fork or "community edition", it was created with a lot of effort and love from Sudospective.

    kitsu-template-libraries (Created/Hosted by Sudospective)

    Here you will find a list of approved libraries for the Kitsu Template, separated by version number.

    ComboNumbers-by-MattMayuga (Created by MattMayuga)

    This repo hosts the data files for combo number graphics made by MattMayuga, with some of them here to accompany the respective judgefonts.

    SM5-Arduino-Lighting (Created/Hosted by 48productions)

    Use an Arduino to get game-controlled lights in StepMania 5/Project Outfox!

    Project Updates

    JudgeFonts-by-MattMayuga

    New judgefont: Side Stars

    Tiny-Web

    Update Sudospective profile

    Add ComboNumbers-by-MattMayuga and superuser

    kitsu-template

    StepMania-Archive (Fork updates only)

    Started initial translation code.

    OutFox-ja, OutFox-zh-CN, OutFox-Translations, OutfoxPTBR, Outfox-fr

    Updated to reflect new OutFox lines.

    New Members

    48productions which joined to share the SM5-Arduino-Lighting project!

    DysKoneko joined to learn and help with OutFox translations

    With those updates, Tiny-Foxes now hosts 47 open source projects, with the help of 34 members, I can't thank the community enough for making all those projects, and thank you for supporting us, that's it for now!