RetroAchievements / RAIntegration

The DLL responsible to integrate emulators with RetroAchievements.org
https://retroachievements.org
MIT License
96 stars 22 forks source link

PauseIf HitCount #2

Closed meleu closed 6 years ago

meleu commented 6 years ago

From @Jamiras on March 21, 2018 14:34

As a developer, I'd like to create a PauseIf condition that only pauses the achievement if it happens a certain number of times.

Just like regular conditions, when the PauseIf condition is true, it will increment the counter. When the counter reaches the target, then the condition group (core or alt) will be paused. When the condition is false, the counter is not reset. To reset the counter, a seperate ResetIf condition must be present.

This would allow for achievements like "Complete the level without jumping more than three times". Each jump would increment the counter. When it hits four, the achievement is disabled until the user restarts the level and a ResetIf resets the counter.

PauseIf HitCount could also be used as a makeshift timer. If you know the framerate of your system you can create an achievement like "Complete the level in under 30 seconds" that has a PauseIf level=X HitCount (30*frames).

Existing achievements should be audited. Anything with a PauseIf HitCount(>0) will have to be modified. A PauseIf with a HitCount (even 1) will not unpause itself. As the HitCount clause currently has no effect on the PauseIf conditions, they should be changed to HitCount(0).

Copied from original issue: RetroAchievements/RASuite#55

Jamiras commented 6 years ago

I've audited all existing achievements and modified the following achievements that had a non-zero PauseIf:

00034 Rocket Knight Adventures: 13578, 13579, 13526
00221 Dynamite Headdy: 13313, 13314, 13315, 13316, 13317, 13318, 13319, 13320, 13499
00242 Terranigma: 15237, 14073, 15003
00340 Wild Guns: 41151, 41152, 41154
00460 Bust-A-Move: 35498
00480 Alien Soldier: 13736, 13760, 13761, 13762, 13763, 13764, 13770, 13771, 3885, 13772, 13773, 13793, 13794, 13795, 13796, 13797, 13798, 13799, 13800, 13859, 13860, 13861, 13862, 13863, 13864, 13865, 13866, 13693
00558 Super Mario World 2: Yoshi's Island (U) (1.0): 6095
00575 Mega Man Battle Network: 8462
00585 Herzog Zwei: 25206
00648 Street Fighter II Turbo: 25600, 25601, 25602, 25603, 25604, 25605, 25606, 25607, 25608, 25609, 25610, 25611
00706 Kirby's Dream Land (UE): 1800
00708 Kirby's Pinball Land: 24663, 24668
01198 Super Adventure Island: 29902, 29904, 29903, 29905, 29906
01278 Top Gear 3000: 2406, 2411, 2414, 2418, 2421, 2424, 2428, 2431, 2434, 2457, 2460, 2464
01386 Final Fantasy V (J2E): 16965
01412 Ogre Battle - March of the Black Queen: 18016
01447 Contra: 6802, 51295
01460 Bubble Bobble: 26588
01474 Friday the 13th: 3228, 3244, 3229, 3235, 3236, 3237, 3238, 3239, 3230, 3224, 3225, 3226, 3227
01487 Metroid: 3507, 3508, 3509, 3510, 3511, 3512, 3513, 3514, 3515, 3516, 3517, 3518, 3523, 3519, 3520, 3521, 3522, 3524, 3525, 3526, 3527, 3528, 3529, 3530, 3531
01500 Stinger: 39265, 39266, 39270, 39277
01512 8 Eyes: 24027, 24032, 24033, 24038, 24043, 24048, 24053, 24058, 24062
01591 Bram Stoker's Dracula: 54007, 54014, 54015
01777 Kickle Cubicle: 29643
01803 Little Nemo: The Dream Master: 7125
01882 Power Blade 2: 57953, 57954
01889 Punisher, The: 37877
01896 R.C. Pro-Am II: 35196
01921 Rockin' Kats: 8225, 8227, 8212, 8228, 8213, 8229, 8214, 8230, 8215, 8231, 8207, 8232, 8216, 8217, 8208, 8209, 8210, 8211, 8218, 8219, 8221, 8220, 8222, 8223, 8233
02242 Dragon Spirit: 5009
02301 Keith Courage in Alpha Zones: 55815
02498 Tiny Toon Adventures: Babs' Big Break: 39023, 39024, 39025, 39020
03423 Romancing SaGa: 20090
03430 RPM Racing: 43610, 43611
03614 Galaxian: 8171, 8172, 8173, 8174, 8176, 8177
03814 Earthbound Zero: 7372, 7425, 7427
04855 Akumajou Dracula X: Chi no Rondo (CD): 10939
05179 Sigma Star Saga: 43915
05300 Cocoron: 24629, 24600, 24614, 24615, 24620, 24624, 24628
05438 Don Doko Don 2: 21822
05944 Majou Densetsu II: Daimashikyou Galious: 38332
09998 Alex Kidd in Miracle World: 47779, 47788
09999 Phantasy Star: 57429
11750 Metal Slug: Super Vehicle-001: 59240, 59242
11770 Metal Slug X: Super Vehicle-001: 58579
Jamiras commented 6 years ago

before.zip Backup of RACache data before changes