forked from openitg/openitg
-
Notifications
You must be signed in to change notification settings - Fork 0
/
changelog.txt
executable file
·440 lines (424 loc) · 20.8 KB
/
changelog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
OpenITG, beta 3 (in development)
--------------------------------
-New GameCommands:
"clearmachinelogs" - clears crash logs from machine.
"transferlogsfrommachine" - transfers crash logs to a USB drive.
-Miscellaneous changes:
Changed default key for P1 select from Shift to forward slash (/)
Allow mounting the directory "Data/patch/patch/" as a patch instead of patch.zip
Changed OptionsList behavior (Exit on multiple selection, don't insta-exit on button)
Changed "DebugTheme" preference to "ShowThemeErrors"
Radar values (including step counts) now calculated for machine edits
Added blinking for GAME_BUTTON_START on LIGHTSMODE_MENU
Added StartRoulette and StartRandom messages for themes
Win32: Crash dialog shows OpenITG logo/text in place of StepMania (Wanny)
-New LUA bindings:
"GetDiskSpaceTotal", "GetDiskSpaceFree" - returns a string describing the
total or available disk space on the partition with UserPacks
"GetProductVer" - returns the OpenITG version (e.g. "beta 3")
HighScore: "GetModifiers"
ProfileManager: "IsSongNew(Song)"
-Fixed Linux bugs:
USB devices would occasionally not be accepted
-Fixed minor cross-platform bugs:
BPMDisplay: display BPM multiplied by music rate twice instead of once
NoteDisplay: Twirl would render strangely with Flip, Tornado, etc.
ScreenGameplay: announcers actually work (Wanny)
ScreenDebugOverlay can now override used font (Wanny)
SongManager: fixed potential crash from random songs including customs
-Backend updates:
Arch updated to use SM4's RageDriver structure
Cleaned up LightsMapping structs so all mappings take arrays
Boost ITGIO/PIUIO thread priority (tentative fix for coin nomming)
Use read/write buffers for RageFile (tentative fix for slow memcard reading)
Switched to SM4-style button enumerations
-Compile chain updates:
Added "--with-sse2" flag to configure to enable SSE2 heuristic optimization
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 (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 (Matt1360)
64-bit crash on RageCryptInterface_ITG2 (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 (SM devs)
Added patch to compile on GCC 4.3 (dawnwolf)
Added patch to compile against LUA 5.1 (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