You are on page 1of 7

OpenITG, beta 2 (August 10th, 2009)

--------------------------------
-New preferences:
"GiveUpTime" - amount of time that Start must be held to give up songs
-New metrics:
ScreenTestInput - X, Y, On, and Off commands for text ("Inputs", "Devices")
-Fixed Linux bugs:
USB devices that only reported as "sda" would stay in checking forever
Misdetection of partitions on USB devices caused some mounts to fail
-Fixed cross-platform bugs:
BPM display on gameplay doesn't scale with Music Rate setting
Several stray PauseMountingThread() calls causing cards to respond slowly
Perspective setting is not properly saved on USB profiles
Custom song loading cancellation causes delayed input events
ScreenArcadeStart times out, even with missing I/O handler
-New screen:
"ScreenUserPacks" - formerly ScreenAddSongs, manages USB-transferred game
data.
-Code Structure Additions:
UserPackManager - singleton for managing users' add-on packs for the machine
-Miscellaneous changes:
Backported StepMania 4's RageFileManager, for better load handling
Backported Win32 renderer identification for display stats
Changed to StepMania 4 method of scaling screenshots
De-clamped PercentageDisplay (Getting Started displays properly now)
Long/Marathon calculated with steps length instead of music length
Moved "ScreenAddSongs" to "ScreenUserPacks", heavily updated interface
Improved Colorized Graph logic
Split bookkeeping into separate pages for machine v. service credits
-New menu structures:
LinkedOptionsMenu - set of intertwined menus, example metrics in home folder
-New file driver:
RageFileDriverProbe - heuristic-based file driver that allows en/decrypted
ZIPs
-New LUA bindings:
HighScore: "GetName", "GetScore", "GetPercentDP", "GetDate",
"GetSurvivalSeconds", "IsFillInMarker"
HighScoreList: "GetHighScores"
-New LUA member bindings:
ActorFrame: "SetUpdateCommand" (called on each ::Update, with fDeltaTime)
Actor: "addcommand", "GetName"
Game: "GetName"
PlayerStageStats: too much stuff to list here
Song: "StepsLengthSeconds"
-New LUA singleton bindings:
GameState: "GetCurrentGame"

OpenITG, beta 1 (May 15th, 2009)


--------------------------------
-Obligatory code cleanup
-Windows additions:
OpenITG icon (thanks, Lightning)
Updated version information
-New Preferences:
"DebugInputDrivers" - additional debugging info for various I/O drivers
"EasterEggs2" - OpenITG-specific easter eggs (hint: play from a DDR group
folder)
-New LUA singleton bindings:
GameState: "GetCurBPS", "DelayedGameCommand" (required for "theme"
GameCommands)
NoteSkin: "GetNoteSkinNames"
ThemeManager: "GetCurLanguage", "GetCurThemeName", "GetThemeNames"
-New LUA bindings:
Course: "GetCourseDir"
PIUIO: "MK6_GetSensors"
RadarValues: "GetValue"
RageUtil: "SecondsToMMSS", "SecondsToHHMMSS", "SecondsToMSSMsMs"
Song: "IsLong", "IsMarathon", "IsCustomSong", "GetGroupName", and
"MusicLengthSeconds"
Steps, Trail: "GetRadarValues"
-New LUA globals:
"RADAR_CATEGORY_TAPS", "RADAR_CATEGORY_HOLDS", etc. for RadarValues
"OPENITG_VERSION" - returns a 3-digit token for version information
(xyy - x is build type, yy is version; also in Win32 "Properties")
-New Screens:
"ScreenAddSongs" - allows addition of game data through operator menu (temp.
disabled)
"ScreenPlayLights" - plays music, can run actors for cabinet/game lights
-New InputHandler:
"MK3" - controls the Andamiro MK3 and MK5 ISA boards, for the heck of it
-New LightsDriver:
"G15" - controls LCD on the G15 gaming keyboard, also for the heck of it
-New GameCommands:
"ReloadTheme" - forces a complete reload of metrics and graphics
-New metrics:
"MissComboCommand" metric for Combo display
-New features:
Added "NoteWillCrossIn1Beat", "NoteWillCrossIn2Beats", etc. for beginner
helper
ScreenTestInput and ScreenTestLights broadcast Messages to actors
Re-backported input debounce, except it works this time. :)
CodeDetector ties for opening the OptionsList on ScreenSelectMusic
Record service credits separately in MachineProfile and Coins.xml
ScreenTestInput now triggers lights when arrows are pressed
"SongLength" sort on the song wheel
More intelligent lights autogeneration for single charts
Separate bookkeeper counter for service credits in Bookkeeping
(divided in the menu by Regular Credits / Service Credits)
LightsMapper - set which bits are triggered on LIGHTSMAN events
Added LightsMapping structs to ITGIO, PIUIO, and PacDrive
-New modifiers:
"Twirl" - rotates arrows (and holds!) around the Y axis
"Roll" - rotates arrows around the X axis
-Compilation updates:
Added date/version text to ProductInfo and DiagnosticsUtil
Rewrote "archutils/Win32/verinc.c" to generate a new verinfo.h
-Fixed Windows bugs:
Crashlogs saving in Program (were supposed to save in Data)
"View crash dump" working incorrectly on the crash dialog
Inaccurate crashlog count in System Diagnostics
RageDisplay_D3D: fixed texture material issues, texture translation issues,
and noteskin rendering
-Fixed Linux bugs:
Tentative fix for memory card mounting issues (thanks, Matt1360)
64-bit crash on RageCryptInterface_ITG2 (thanks, dawnwolf)
Screensaver disable code didn't work for X11
-Fixed minor cross-platform bugs:
Custom song data not deallocated after the end of a round
Impressively inefficient method of re-creating the songs vector
"Disqualification" display showed for unjoined players on music rate
M-mod code didn't adjust to songs or courses with hidden BPMs
Slowdown on ScreenArcadeDiagnostics due to heavy device polling
No-timeout warning flood on custom song loading
Sensor reading problems with PIUIO on Test Input
Round text on ScreenSelectMusic not updating for non-song entries
-Fixed major cross-platform bugs:
Infinite loop and crash on changing coin modes on ScreenTitleJoin
Crash when changing from Intense to Normal-only courses or vice versa
Patched OGG songs circumvented Long/Marathon song limits
Crash on machine Edit-only songs (not a bug, but...)
M-mods crashed on marathons and malfunctioned on gimmicks
Tentative fix for strange crashes on "theme" GameCommand
-Misc. changes:
"Tiny" can be used in place of "Mini" (4.0 compatibility)
M-mods disqualify on songs with hidden BPMs
(because it makes it easier to select a 'safe' modifier)
Load USB profile songs into memory, instead of onto the disk
Complete crypto rewrite - should be much more flexible
LightsDriver_External always loaded, to prevent arcade I/O problems
ScreenOptionsMenu switched to "Menu" lights mode
Always grab a serial number from the dongle, and autogen on fallback

OpenITG, prebeta (November 25th, 2008)


--------------------------------------
-Lots more code cleanup
-Compilation updates:
Added SVN revision script for Linux make (thanks, SM devs)
Added patch to compile on GCC 4.3 (thanks dawnwolf)
Added patch to compile against LUA 5.1 (thanks to cyt0plas, Spectere)
-New features:
Preliminary "M-mod" support (same format as C-mods, e.g. "M600")
Added custom courses ( /ProfileFolder/Courses/ )
-Misc. changes:
Added coin counter functionality to LIGHTSMAN
Added RageCryptInterface for easier crypto implementations
Added code to enforce only one Iow or PIUIO handler
Fixed 'lights briefly flicker off on song start' annoyance
-PIUIO changes:
Tentative fix for sensor-read problems
Added coin counter functionality
-Fixed bugs:
Fixed overwrite of InputType with "Home"
Failed 'pTrail' assertion in Marathon mode
Accidental PIUIO coin counter activation
Linux: couldn't open GTK loading window
ITGIO - P1 Left and Right reversed
patch.zip mounted multiple times on start
Possible to load redundant arcade I/O drivers and cause problems

OpenITG, alpha 8 (August 29th, 2008)


------------------------------------
-Lots of code cleanup
-New LightsDriver:
PacDrive ("pacdrive") - run lights using an Ultimarc PacDrive
-Misc. changes:
Allow multiple lights drivers (use at your own risk)
Disqualification for music rate under 1.0x
-ITGIO changes:
Softcoded ITGIO input and added default mappings
Added mappings for all cabinet lighting
Fixed "no output on ITGIO" issue (read: full I/O support)
-PIUIO changes:
Support for r16 kernel hack handling
Lots of misc. structural changes
-New modifier:
HoldsToRolls, a reversed NoRolls (make Bend Your Mind a living hell!)
-Fixed mistakes:
SCREENMAN doesn't zero update after custom song loading
-Fixed bugs:
OptionsList crashes on load
Attract volume immediately resets after round
Attract volume isn't properly reset when entering operator menu
Crash on non-song wheel items after highlighted custom songs
-Removals:
ThreadedLights and associated code (too many bugs)

OpenITG, alpha 7 (July 11th, 2008)


----------------------------------
-Preliminary, hacky lights-cabinet support in theme SM files
-Barebones work on tournament mode (it's still a while away)
-Input changes:
Newer, more ITG-like input debouncing (half-working...)
"Select" or "MenuLeft+MenuRight" cancels custom song loading
Linux joystick driver is now threaded (and supports DebugUSBInput)
X11 input code backported from 4.0
-New LUA functions:
IsUsingMemoryCard(PlayerNumber) - self-explanatory
Debug() - output debugging lines regardless of log settings
-New LUA globals:
"OPENITG" (boolean) - can be used for compatibility with ITG2 AC scripts
-New (major) code functions:
StepsUtil::RemoveStepsOutsideMeterRange()
StepsUtil::RemoveStepsOutsideDifficultyRange()
Song::HasStepsWithinMeterRange()
-New messages:
"CardReadyP1", "CardReadyP2" - played when a card is verified ready
-New preferences:
"DebugInputDrivers" - replaces DebugUSBInput, provides stats on I/O speed
"SoundVolumeAttract" - volume during attract sequences
"ThreadedLights" - run the lights outside the regular game loop, more accurate
"UseUnstablePIUIODriver" - set true to use the experimental I/O driver
-New config options:
"SoundVolumeAttract" - see above
-New metrics:
"CompareScores" (ScreenGameplay) - manually set whether to compare or not
"OptionsList" (ScreenSelectMusic) - add a side panel to change options
instead of the old options menu
-New Screens:
"ScreenExitCommand" - Functions as ScreenExit, but with the ability to launch
an executable file before exiting. Must have 'ExecPath' and
'ExecParams' in the
metrics entry
"ScreenTextEntryArcade" - a more arcade-friendly text entry screen (WIP)
-Fixed bugs:
BGCHANGES2 charts don't play properly
Timer is stuck at 0 if timer runs out on "Chance"
"nomines" and "nostretch" transforms have no effect in the editor menu
(OpenGL) Arrow shader fails on full-screen, causing scrolling brackets
Actor sounds ignore attract sound settings
After switching themes, OpenITG crashes on the songwheel
Theme switching sometimes causes failed asserts
Phantom input when canceling custom song loads
ScreenArcadeStart loops endlessly until manual exit
Without song previews, custom song lights don't properly load
-Fixed mistakes:
Removed some personalized testing code
Removed some annoying opendir() error messages
-Code structure changes:
"MiscITG" moved to "DiagnosticsUtil"

OpenITG, alpha 6 (May 30th, 2008)


---------------------------------
-Code structure changes:
Reverted InputFilter - too little gain for too many problems
-New metrics in ScreenGameplay:
(Note: must be in Event Mode, Versus, and playing the same chart)
"ScorePxAheadCommand" - played when player's score is higher
"ScorePxBehindCommand" - played when player's score is lower
-New preferences:
"InputDebounceTime" - self-explanatory
-New game commands:
"clearcredits" - clears credits on the machine (useful for testing)
"theme" - sets the theme, by name, when used (useful for theme switchers)
-Linux changes:
Tentative fix for memory card port/bus detection on usb_storage
-Win32 changes:
Added code to reboot on crashes for arcade builds (#define ITG_ARCADE)
-Misc. changes:
Enabled pad lighting on ScreenDemonstration
Coins added by GameCommands are not counted toward bookkeeping totals
Round text on ScreenSelectMusic updates for long/marathon songs
Moved OpenITG-specific profile options to Extra.ini (caused ITG2 crashes)
Disabled autogeneration of new Public/Private RSA keys on load failure
-Fixed bugs:
Some custom songs end immediately after start
Repeating menu input error on ScreenSelectMusic
Editor doesn't draw properly, causes failed asserts
Song wheel doesn't "budge" when attempting to move after Chance
"Revert from Disk" in editor causes duplicate charts, crashes
Crash on bookkeeping when switching to an undefined screen
In AutoplayCPU, rolls cause early judgments of arrows and mines

OpenITG, alpha 5 (April 30th, 2008)


-----------------------------------
-New screens:
ScreenArcadeStart - implemented, functional, does stuff
-Code structure changes:
Reboot-on-crash is disabled in non-arcade builds
Gameplay lights now autogen from dance-single only
InputHandler_Linux_Iow changed to InputHandler_Iow
InputHandler_Linux_PIUIO changed to InputHandler_PIUIO
InputFilter backported from 4.0, modified a bit
-PIUIO changes:
Added timer for testing input speed
Partially added coin counter code (not functional yet)
Changed input from 64-bit datatype to 32-bit datatype
-Fixed input bugs:
Input always auto-remaps on startup
Input sometimes locks up after song loading fails
Player 2 I/O board input is mapped to Player 1's side
PIUIO only reports arrow presses from right sensor
-Fixed general bugs:
Edits for Single show on all difficulties
Some modifiers don't animate in the editor
Song wheel can be moved on Chance
Voltage doesn't calculate correctly (lol, DDR)
-Fixed mistakes:
"ITGIO" and "PIUIO" were reversed in RageInputDevice
-Mapping changes:
Added working Iow input mappings (output is still borked)
Added working service/test and coin mappings for PIUIO
-New code functions:
LOG->Debug() - always displays to stdout, without logging
GetIP() - currently Linux-only, returns IP and subnet
-New preferences:
"CustomSongPreviews" - play audio previews of custom songs
"InputDebounceTime" - self-explanatory; smooth out bouncing input
-New USB profile features:
"AdditionalSpeedMods" - add specified speed modifiers

OpenITG, alpha 4 (March 21st, 2008)


-----------------------------------
-Fixed Win32 bugs:
OpenITG hangs/crashes/<bad stuff> when custom songs sample plays
Backgrounds are centered on the top left during gameplay
(Maybe?) Color1 as boolean LUA parsing error
-Fixed cross-platform bugs:
Editor's stepchart doesn't scroll properly
-Fixed package mistakes:
data.zip causes "Assertion 'm_LockCnt == 0' failed" error

OpenITG, alpha 3 (March 17th, 2008)


-----------------------------------
-Mapping changes:
Added PIUIO/IOW default mappings
Added default keyboard maps for Select (P1 = right Shift, P2 = numpad 0)
-PrefsManager changes:
Removed "BrokenBGs" - binary plays BG scripts from all songs now
Added "DebugUSBInput" - output raw and formatted USB data to console
Backported "VisualDelaySeconds" on request
-Fixed bugs:
Start sound doesn't play when course is selected
Potential memory leak (minor) on SongManager array
-New Screens:
ScreenArcadeStart (unfinished/not implemented in the Makefiles)
ScreenArcadeDiagnostics - installation and diagnostic information
ScreenArcadePatch - update the game through USB patches
-New data types:
USBDevice - a basic structure for reading USB hardware data
USBDriver - an abstracted USB I/O driver based off of libusb
ITGIO - a USBDriver specialised for ITG-IO JAMMA kits
PIUIO - a USBDriver specialised for ITG2 dedicated cabinet I/O boards
-New LightsDriver:
External ("ext") - makes light data globally available for other drivers
-New InputHandlers:
Linux_PIUIO ("piuio") - partially functional, not very usable
Linux_Iow ("iow") - untested, should be fully functional
-New RageFileDrivers:
RFDCrypt - handles AES-encrypted .zip files
RFDPatch - handles AES-encrypted patches
-New USB profile features:
Choose to save Catalog files ("UseCatalogXML") - default off
-New licensed code:
-AES encryption/decryption schemes, by Brian Gladman
-Public domain iButton SDK from Maxim IC
-New project files:
Patch-OpenITG.rsa - a new Patch verification sig for future OpenITG .bxr
patches

OpenITG, alpha 2 (January 27th, 2008)


---------------------------------------------
-New preference:
BrokenBGs - Emulate R21-style background handling
-Some code cleanup
-Fixed bugs:
Windows: all of the weird bugs
Wheel changes songs even when Select is held down
Group banners do not load properly
-Unfixed bugs:
Cancelling song selection through USB removal causes mount errors

OpenITG, alpha 1.1 (December 5th, 2007)


---------------------------------------------
-Windows build, many thanks to Sniper257
-Fixed bugs:
Forced random on customs does not select song
Bizarre behavior when Tab is held during forced random
MAJOR: Gameplay input locks up on some errors
MAJOR: Custom song loading crashes on Windows
-Unfixed bugs:
Group banners do not load
Cancelling song selection through USB removal causes mount errors

OpenITG, alpha 1 (December 2nd, 2007)


---------------------------------------------
-Revision 21-style song loading support, starting at PlayersFinalized().

-Settable preferences (defaults in parentheses):


CustomMaxSeconds - Maximum allowed song length (120 seconds)
CustomMaxSizeMB - Maximum allowed song size (5 MB)
CustomMaxStepSizeKB - Maximum allowed SM file size (100 KB)
CustomsLoadMax - Limit amount of songs loaded (50 songs)
CustomsLoadTimeout - Custom song loading timeout (5.00 seconds)
SongEdits - Enable/disable custom songs. (0 [false])

-Significant new code functions:


SCREENMAN->OverlayMessage() - message overlay on top of screen
SCREENMAN->HideOverlayMessage - remove message from screen
SONGMAN->LoadPlayerSongs() - loads songs from a player's profile
(RageUtil) CopyWithProgress() - copy a file while sending progress
(fPercent) to a function pointer

You might also like