Jump!  Dancing Stage Tscul - Manual v. 1.1 June 8, 2003

Main Design & Program:  New Age, Sei 
Original Program:  Sei, Ebanis 

Questions?  Email me at newage_productions@hotmail.com

MAXIMIZE THIS WINDOW AT 1024x768 RESOLUTION TO DISPLAY PROPERLY

Contents
--------------
1. General Instructions
	1.1  What is Jump!?
	1.2  How to play
		1.2.1  Arrows
		1.2.2  Timing
	1.3  Tips & Techniques

2. Questions/Troubleshooting

3. Credits







1. General Instructions
--------------
1.1 What is Jump!?

Jump! is an RM2K Dance Dance Revolution (DDR) simulator.  No, it is not even close to comparable in terms of quality/accuracy/etc. to the real thing.  It's simply another to the list that anything is possible in RM2K!

1.2 How to play
	
	1.2.1 Arrows
		When you begin a song, you will see four arrows at the top of your screen.  As the song progresses, several 
		arrows will begin to scroll toward the top from the bottom.  Your job as a player is to coordinate the
		scrolling arrows to perfectly match the stationary arrows at the top.  If you see an 'up' arrow is on its way 		to the top of the screen, you must press the 'up' button right when the scrolling arrow meets the stationary
		arrow.  There are three accuracy judgements in Jump!:  perfect (the hit was right on), good (the hit was
		close but not perfect) and miss (the scrolling arrow was too far away from the stationary arrow).
	1.2.2 Timing
		Jump! is very sensitive to other programs and even to itself.  Since RM2K's sound system isn't really what
		you'd call 'top-notch', sometimes the timing of the background beat to the time when the arrows should meet
		with the stationary arrows doesn't match up.  There's really nothing that can be done to cure it once it
		occurs, but there are ways to help diminish or lessen it from happening in the future (see Section 2).

1.3 Tip & Techniques

-Sometimes the arrows are following beats that aren't the 'main' beats of the song (i.e. the most prominent).  Listen carefully to the song to determine other background beats and rhythms.

-A 'good' is better than a 'miss'.  Once you have 25% or more misses, you fail the song.  Nobody likes to fail!

-Grading is based on the following:  25% or more misses lands you an 'E'.  90% perfects awards an 'A', 80% awards a 'B', 70% a 'C', and below that a 'D' (unless your misses exceed 25%).  The coveted 'AA' is awarded for 98% or more perfects. See what happens when every song has the grade 'A' or higher!

-You only begin with 4 songs to play.  As you play, you must achieve different 'milestones' to unlock other songs.  There are 12 songs in Jump!  In your save file, the number next to the down arrow represents the number of songs you have available to play.  The happy face represents the number of milestones you've accomplished (the things you did that unlocked the songs).  Milestones are awarded for players who excel in the game, so try your best and you're sure to unlock every song (eventually)!





2. Questions/Troubleshooting
--------------

Q:  The game won't run because of [technical problem]... help!

A:  This guide isn't here to answer RM2K technical issues.  However, if it's a performance issue with the game, such as lag, then follow these simple steps to remedy the problem(s):  First, like the 'Caution' message instructs, make sure there are no other applications running behind RM2K.  Even CD Player or WMP could lag the system, so be careful!  Also, try playing the game in full screen mode (F4).  Windowed mode lagged it a little on some systems, but full screen usually fixed the problem.  Next, if you have a lower end system, don't worry!  I tried to design the code to be versatile enough to function even on lower-end systems (I did the bulk of my coding and testing on a PII-366).  Press 'esc' at the song selection screen to access the sub-menu and set the 'Avatar' option to 'none'.  This means you'll have no little dancer to watch during the game but it helps slower systems manage (less to worry about).

Q:  Why isn't [song X] in the game?!

A:  My song choices varied from many of the popular mixes of DDR, each with stable background beats for easier arrow generation.  I chose the songs in Jump! based on my own personal tastes (foremost, of course :D ) as well as an overall concept of which songs seem to be played or mentioned the most frequently.  Sorry to disappoint so many but without MP3 support my options were pretty limited!

Q:  Why are there so few songs in the game?

A:  It was my goal (initially) to keep the size of the game under 10 MB.  If that were so the game would only have 8 songs probably... and 8 is WAY too few.  I went with 12 songs because it kept the file size "reasonable" (under 15 MB, at least) and there is enough of a variety to say the game is 'well-rounded' to a bare-bones minimum.  :)  If I were to include more songs the game would be 50 MB and no one would ever download it, so I was very limited in this portion of the design.

Q:  Why are there no double arrow hits (L+R) or background changes/animations?

A:  First of all RM2K doesn't support multiple directional input simultaneously, so that was a software constraint I had to deal with.  Changing the background panorama (or even changing a 320x240 picture) causes very minor, but noticeable, system lag.  This lag, the bane of my existence for this project, knocks the arrows off-beat.  Since the sound is buffered, it does not skip or lag when the computation does (this is the manner RM2K plays sound).  I wanted Jump! to work properly for all systems like I said, so I decided to keep random animations and dynamic background changes out of the final build to help prevent -some- lag (although it's still a minor problem).

Q:  What's with the steps?  Sometimes they're kind of goofy looking, other times they're way off beat!  What gives?!

A:  Jump! uses a RANDOM arrow generation system for every single song.  This means, of course, that you can't memorize the step charts and that the steps may randomly appear to look goofy (we all know how twitchy RM2K's randomizer is!).  I chose to code an arrow randomizer for a couple of reasons:  first, the challenge of getting it working kept me motivated to finish (thankfully).  Second, hard-coding each song arrow-for-arrow is FAR too time consuming to actually realistically want to do and/or finish (I'm sure Sei will attest to this ;) ).  Finally, coding the hard way uses a LOT more WAIT commands and a lot more CALL commands which equates to a LOT more instances of computation LAG (especially in the aforementioned lower-end systems).  Again, in favor of universal functionality I chose to do it this way.  But, it definitely ain't perfect!  :)  It's very easy to get off beat and some beats come in intervals that RM2K just can't produce (like .38 seconds, for example... in a steady, beat-driven environment .38 seconds is NOT .4 seconds :P ).

Q:  How come when I miss an arrow my combo doesn't instantly disappear?

A:  As I mention more thoroughly in the next question, the manner the arrows scroll messed up the 'miss' system a bit.  Since  you can't set coordinate values of moving pictures to variables, the way I recorded misses was to wait until the arrow had gone from its start to its destination, then count it as a miss.  The faster an arrow scrolls on screen means the further away start and destination are from each other.  This means that the arrow will scroll past the hit zone very fast but won't be recorded as a miss until a second later or so, when it reaches its destination.  This was another compromise I had to deal with in the way I constructed my system.  It's not too big of a problem, though, and only is REALLY noticeable in a couple of the fast songs (like Max300).

Q:  How the hell did you do this?

A:  The biggest problem with making this was RM2K has no dynamic way of allocating array values to picture motion.  You can tell a picture to move to a set of coordinates, but you can't dynamically set that moving picture's location to a set of variables, dag nabit!  It was this pain that almost made me give up making the game initially.  To remedy this problem  I came up with something that is pretty accurate but not perfect (but a worthwhile compromise nonetheless).  Every single arrow in the game moves from origin to destination in three seconds.  What determines how fast the arrows scroll is the space between origin and destination.  For example, an arrow that starts at the Y coordinate of 200 and moves to the Y coordinate of -45 scrolls at a moderate speed.  An arrow that starts at a Y coordinate of 240 and moves to a Y coordinate of -150, on the other hand, moves much faster because it has further to go in the same amount of time.  So, to solve the problem of dynamic allocation, I had to utilize this notion of space.  Each song has a different 'spacing' that determines its scrolling speed.  I took this space in between, divided it up into 30 different sections, and every .1 seconds (30 times to equate to 3 seconds) add that small chunk to a 'total' variable.  Thus, when the user presses 'left', for example, unless there have been enough additions of the variable to equal the location of the top left arrow (the input arrow), then the arrow does not register as being hit.  Otherwise, based on accuracy, the hit is either a 'good' or a 'perfect'.  There are 12 of these total (3 for each arrow), meaning a total of 12 arrows can be on screen simultaneously.  The randomizer system is in charge of distributing the arrows so that no pictures are 'stolen' (meaning a new arrow isn't produced over an arrow already in use, making the current arrow just disappear).  The 20 picture limit really taught me how to freakin' compromise!  I've left all the code wide open and the variables named, so analyze it to your heart's content.  If you have any questions, just ask me!  I'll be happy to discuss this or any other coding related stuff.


3. Credits
--------------

Jump!  Dancing Stage Tscul

Main Designer/Programmer: New Age

Original Designer/Secondary Programmer: Sei

Featured Songs:

Abyss - dj Taka
from Dance Dance Revolution 5th Mix

B4U - NAOKI
from Dance Dance Revolution 4th Mix

Breakdown - Be For U
from Dance Dance Revolution 7th Mix - DDRMAX2

Dam Dariram - Joga
from DDR 3rd Mix

Drop the Bomb (System S.F. Mix) - Scotty D.
from DDRMAX

Let Me Be With You - Round Table feat. Nino

Max300 - Omega
from Dance Dance Revolution 6th Mix - DDRMAX

Oh Nick Please Not So Quick - E-Rotic
from Dance Dance Revolution 3rd Mix

Stomp to My Beat - JS-16
from Dance Dance Revolution 2nd Mix

Test My Best - E-Rotic
from Dance Dance Revolution 5th Mix

The Whistle Song (Blow My Whistle Bitch) - DJ Alligator Project
from Dance Dance Revolution 7th Mix - DDRMAX2

Witch Doctor (Giant Toons Version) - The Cartoons
from Dance Dance Revolution 6th Mix - DDRMAX

Graphics:

Backgrounds:
Zel Dienas (skinink_zd@yahoo.com)
Andrea Tseng (tseng12921@hotmail.com)
Stefan Duncan (bward3@nc.rr.com)
Andrew (http://www.gameforms.com/fanart/artist/34)
Konami of Japan, Inc.

Menus/Avatars/Edits: New Age
Arrows/Avatars: Sei

Resources:
www.epilogue.net
www.plasma.aryex.com
http://www.sweet-tactics.net/~chiichan/
www.ddrfreak.com
www.ddruk.com
www.akddr.com

Special Thanks:
Ebanis
Sei
Don Miguel
Shadowtext
Dragoon Falcon
Umbaglo
Ii Shenron
Konami of America
Konami of Japan
#rm2k_anime on irc.aniverse.net

Finally, thanks to all those unmentioned - it wouldn't have happened without all of you!

"Those are the most unrevealing screenshots I have ever heard." -Lord Stan

Don't forget - 'YOU CAN PLAY LETS ENJYOI!'

2002/2003 New Age Productions
newage_productions@hotmail.com














































































For everyone who may ask, here are the 8 criteria to unlock the secret songs.  You can't unlock two songs in one turn (i.e. if you get an 'A' and a 50 combo only one song is unlocked), so I gave some of the more difficult achievements (such as a 100 combo) precedence.  For example, if you get an 'A' and a 100 combo, you'll unlock the song for the 100 combo first.

#	Criteria				Song Unlocked

1.	Complete 1 song total			Oh Nick Please Not So Quick
2.	Complete 5 songs total			B4U
3.	Complete 10 songs total			The Whistle Song
4.	Get a grade of 'A'			Stomp to My Beat
5.	Reach a 50 combo or higher		Test My Best
6.	Reach a 100 combo or higher		Max300
7.	Get a grade of 'AA'			Witch Doctor
8.	Play every song at least once		Let Me Be With You

Also, if you can manage to get a grade of 'A' or higher on every song, you'll get the 'special' credits... the real ending.

