3d spryjinx FAQ =============== i get a lot of questions about this game, so rather than embedding an FAQ in the extensive README.TXT file, i figure a separate file would be more effective and easier to manage. Q - what does 'spryjinx' mean? A - it's a silly word that i created myself. i was toying around with different names for the game, like 'free space hijinx' and 'spry block hoppers' but nothing had a really nice ring to it. 'spryjinx' just kinda came out of that. the way i see it, this game can't be summed up in two or three words, so why not make up one that does? :) Q - how did you make the game? A - originally, spryjinx was a 2d game that i wrote in C using a cheap compiler by borland. but it wasn't long before i started regretting that route, because i hit that infamous 640k memory limit. using dos protected mode was too complex for me to figure out with that compiler. so when i finally got a new PC, i downloaded DJGPP and ported the whole thing over. it was relatively simple. i also made use of the 'allegro' library, which does a lot of matrix math, graphics, and sound routines. plus, i got dos protected mode for free :). later i added the wonderful JGMOD library from Jeffery Guan so that i could do music. Q - i liked the 2d version, how different is the 3d version? A - the current release is a whole new animal. aside from the visual facelift, there are six new powerups and improvements to the gameplay and cpu intelligence. Q - my computer is too slow for 3d spryjinx - can you put the new changes into the 2d version? A - i apologize, but this is just too big of a task for me to take on right now. it took me about a month to do the upgrades and conversion to DGJPP, and it would take me about that long to do the backport. unless i get tons of email requesting this, i'm sticking with the 3d graphics. Q - i've never heard of the game before. what is the 2d version? A - the original incarnation of this game was done on a 486 DX 33 (lovingly called NITZ - i still have and use it). that computer was a bit too slow to run intense graphics, so i kept my idea and game very 2d. the 3d version simply extends the original game into three dimensions, and expands on the original with more refined gameplay and an increasing number of improvements. Q - is there network support? A - not yet. it's in plan, but i've looked into this in the past and found it to be much more complicated than i thought. i fear that network lag over a modem will make the game unplayable because of how heavily players affect each other. Q - the old version let me use a joystick. what's up? A - ok, call me lazy. i haven't added this yet, and allegro would make it very easy to do so. the structure for handling the joystick got taken out during the upgrade, and i spend too much time playing the game to add this yet. Q - the computer player is too hard! A - first check to make sure you have it set to 'wimpy cpu'. this player is the easiest to beat. if you can't beat wimpy, keep playing. spryjinx has a 'feel' that you need to get the hang of, just like any other game. it's not supposed to be easy! from an AI perspective, i spent a LOT of time 'teaching' the computer how to play, and the 'smart cpu' has the benefit of exploiting ALL the tricks i taught him. after all the additions, it is actually quite tough to make an 'easy cpu' that isn't a complete idiot. the 'smart cpu' is beatable, though, i can regularly take him out, although it isn't as easy as it used to be now that i taught him 'fear' - a measurement of how dangerous various paths can be. 'wimpy' also knows fear, but he scares much more easily than 'smart', so it is usually quite easy to outscore him. Q - i made it to the end of the level. why did i die anyway? A - spryjinx has TWO ways to win - survive longer, or score higher. when you reach the end of the level, if your score is lower, you lose. to make things more interesting, i decided to kill off the loser at the end, thus creating a bit more motivation to score and win. oh, and one more thing... if you both make it to the end and your score is tied, you both die :) Q - do you have the instructions and/or game in any other languages? A - i only speak english (and a little french). if you are interested in doing a translation please email me. Q - you claim it is easy to add players. so how do i do it? A - ok, it's not THAT easy. there are 30+ frames of animation for each player. but many of these are inverses of the another. if you're interested in adding a player, you can get away with as few as 7 frames, and i can fill in the rest for you. Q - the blocks are 3d. why are the players and powerups only 2d? A - several reasons. first, 3d characters would slow the game down a bit. second, the characters are quite small on-screen, so 3d characters would only look right on zooming in. third, if the characters were 3d, it would be MUCH harder to create them, and i'm hoping to get a lot of submissions for characters from players. for instance, i would LOVE for someone to get me a bunch of images and sounds for simpson characters (hint, hint...) Q - i want to make a character, but i don't like the 256 color palette you use. can i change it? A - sadly, no. 16-bit color is much slower, and 24 bit is ridiculous. a lot of my code depends on knowing where specific colors are in the palette, so they can't be moved around. Q - where is this level editor 'sprymaps'? A - it's on the way. it will be distributed separately, because after discussing this with john (the guy who's making it for me), we felt it would be better to be able to distribute them separately for bug fixes. Q - this game looks like it's done to me, why is it still a BETA release? A - thanks, but i haven't tested it on a lot of machines, and with all this new functionality there are bound to be some bugs. plus, i want to have more levels, joystick support, and possibly network support in the 'final' version. Q - i can't figure out the magnet. how does this crazy thing work? A - the magnet is one of the most powerful powerups in the right hands. it allows you to manipulate the level. wherever there is a gap in the board, by trying to hop in that direction you move the block you currently are on into that gap. i'll try to do a text diagram here: (X is you, with a magnet) step 1: hop right (2 to 3), no problem: X [1] [2] [3] [4] [5] [6] step 2: hop right, but there's a gap, so drag block '3' towards '4': X [1] [2] [3] [4] [5] [6] step 3: you land with '3' next to '4', creating a new gap between '2' and '3' X [1] [2] [3] [4] [5] [6] does that help? no? i give up..... Q - why aren't there any guns? i want to kill that damn cpu player! A - guns wouldn't work in this game. your lives are very valuable assets, and having guns or missiles or something like that would make it too easy to take out your opponent. on the flipside, there also isn't an powerup for 'extra lives', for the same reason. Q - ok, fine, how do i kill my opponent then? A - think about it this way - a player dies when he is on a block that dies. so you have to use the various powerups to get your opponent to be on a block that dies. here's a few methods to try: 1 - use 'glue', and catch your opponent near the bottom. he will be stuck on a row that drops off. 2 - use 'confuse', which will disorient your opponent. he may accidentally hop down off the bottom of the level. 3 - use 'invisible', your opponent will have a hard time telling which block he is on. he may jump off the bottom by accident. 4 - use a 'bomb', and destroy a row of blocks above your opponent. if you effectively trap him, he will get dragged off the bottom 5 - use a 'magnet' and shift the blocks around to take away the path your opponent needs to continue upwards. 6 - use the 'switch' to kill your opponent by trapping yourself with the switch and then swap places. very sneaky.... 7 - using the 'magnet' there is a VERY effective technique to kill your opponent - you pull a block out from under him. if you are on a movable block, and your opponent is jumping to your block, you can move the block out of the way and he will fall through in the space and die. this is the quickest way i know of to take out your opponent, especially the cpu players. but it takes good timing and won't work in all situations. Q - i just died and have no idea what happened. what killed me? A - first, read the above, that may answer some of it (especially number 7). if that doesn't answer your question, it could be one of the following: 1 - you were hopping on blocks that somebody 'bombed', and they fell through, taking you with them. once those blocks start shaking, you have to watch out because they're going down and will kill anyone that is on them or jumping to them. 2 - you tried hopping to a 'posessed' block near the bottom of the level, and it died before it got to you. sometimes a possessed block in the bottom row will hop upwards but touched the lava and so starts dying with the bottom row. if that happens, your player may try to jump to the space that the block is moving to, and will die because the block will drop off as it gets there. if these don't fit your situation, send me an email and i'll try to figure it out. Q - player 2 just leaped off the left side of the level. what the f@&#? A - oh no! this is a bug that i thought i had fixed. i haven't seen this one since doing heavy code reviews for memory leaks and such, so i assume it is fixed, but if you see this bug, PLEASE EMAIL ME at jase@bucketweb.com. Q - i think i found a bug. what do i do? A - PLEASE email me at jase@bucketweb.com. i'll do my best to fix it in the next release. Q - i have an idea on how you could make this game better. A - all ideas are welcome. some of the new powerups came out of brainstorming sessions with 'aguy' at freegames.org. beware, though, i'm VERY picky and stubborn about what goes into the game. some powerups i've tried already and ended up getting rid of because it was bad for the gameplay. here's a few examples: 1 - the extra life - this was just too valuable. lives are a precious commodity in this game. an extra life favor people too heavily if they get it, especially if they know the level already and the opponent does not. 2 - a speed powerup for the blocks - something to make the blocks scroll down faster. this was tried and rejected because in a lot of cases both people would die. just wasn't effective in gameplay 3 - a 'paint-all' or 'color-all' powerup. again, these are too much, and give too much favor to people who memorize levels. 4 - a 'rain' or 'clean' powerup. the idea here is a powerup that would un-color all the blocks (maybe even painted ones). this idea may get into the game, i haven't tried it yet. 5 - a 'fly' powerup. basically, this was to be wings to fly you across gaps. this was taken out because it was too much like the magnet, but not as cool. keep those ideas coming! Q - your game is just not fun. why do you bother? A - ouch. well, you can't please everybody. but i'm open for any constructive feedback you have, i am trying to make this game as good as possible, and the negative feedback i get is very valuable in making it better. so please, be brutal, give me hell! just don't ask me to add guns or missiles - i'm not trying to compete with quake or unreal here. Q - that music is annoying! can i change it? A - yes, i plan on adding 'music selection' menu later on down the line. but for now, if you want to add your own S3M module to listen to, just name it 'sjtheme.s3m' and copy it on top of the one in the 'mod' directory. the next time you start the game, it will pick up your music. Q - sound is not working! A - this program uses DOS DJGPP and allegro. they handle all the sound stuff for me. if they can't figure out your card, then i can't really help you. the only suggestion i can make is this: if you a game with sound in a DOS window, and then try to run it somewhere else, sound will not work until you close the other DOS window. Q - i picked graphics mode 'X' from the menu, but it is NOT using it. why? A - for some reason or another, the graphics routines could not start that resolution on your computer. so, it went and searched the other modes and took the first one it found that worked. Q - spryjinx crashed my computer!!! you bastard!!! A - first of all, if you are running windows NT, this might happen. second of all, THIS PROGRAM IS FREE AND AS SUCH NO WARRANTIES ARE IMPLIED. i heartily apologize for your inconvenience, but i assure you that i have tested this program as best i can, and i've done what i can to prevent this from happening. but in the rare case that it crashes your box, you have no recourse but to find another game to play or wait for the next release. Q - i'm trying to run this from DOS, and it says some DLL file is missing.... A - i'm looking into this. this is a protected mode DLL that is needed by DJGPP or ALLEGRO in order to run in dos, and i haven't found it yet. i will post it later on. Q - what is the difference between the "windows install" and the "self extracting zip" versions? A - essentially they are the same. if you are running windows 95 or 98, the windows install version sets up everything for you, it puts the necessary items on your start bar and desktop, and even offers uninstall. the self extracting zip file just unpacks things in a 'spryjinx' directory, and you have to do any other setup yourself.