Written by Hans "coelurus" Törnqvist Homepage: coelurus.thorntwig.tk/ E-Mail: thorntwig@telia.com ICQ: 102114962 AIM: groenkaal -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.- . . '. .' '. '. .' .' ..''. ''.. ' ' ..'' .''.. .' '.. ' . . ' ..' '. '. ' ' ' ' .' d#######b d#######b d##b d##b d##b d##b d##b d##b .' ########P ######### ######u###### #### ####bu#### #### '. : ####P ###P q#P ############# #### ########## #### : '. #### d#b #####) ####^###^#### #### ########## #### .' '. #### ### ###b d#b #### q#P #### #### ####^q#### #### .' ' ####bd### ######### #### #### #### #### #### #### ' q#######P q#######P q##P q##P q##P q##P q##P q##P ' ' . . . . . . . . ' ' ' . . ''-. .-'' . . ' ' ' --.. ..-- ' ' ' ' -'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'-'- for ti83(+(SE)) Finally, it was time for me to remove the "demo-label" :) The next update in my raycasting-series for the TI83(+(SE)) calcs, and at least it's going forward! Much of what I would normally put in the prog, is put here. The TI83s don't quite have the mem-requirements I need... So the last resort was to put the "overflow" on the computer. Sorry for that, I hope that gameplay will weigh up a little... | | Story | +--------- As always, FPS:s (First Person Shooter:s) need some ridiculous stories. Whether there are aliens from another dimension attacking earth, or a mass-invasion of tooth-paste tube caps, they stories are just... weird. The aliens seemed more intriguing, so I settled for it (thnx for the help in this section Kozak!): It's cold... Since we're in arctica, not many would disagree. Many shiver on the first thought, a lonely place, surrounded by snow. Then there is this dug down bunker, hidden in this cold landscape. It hasn't been revealed yet, the other public military bases have done a good job getting a lot of attention so that nobody have thought of searching up here. It's a nice place, well inside the bunker. But not for much longer... It was first thought to become a research lab, free from any spies or similar pests. They built it in one year, during a "minor" expedition. It was perfect, not a single soul outside the project knew about this spot. The punishment for an insider was horrible, the victim would be alive for many days (yipeeyay). A group of special bred children were taken into this bunker. Their future wasn't very bright, as they were going to be raised into highly trained guards. They'd later be posted at many different bases around the globe, to support and control the guard system on every location. One evening, when an expedition was returning "home" to the bunker, they saw a bright, big spot on the sky. It wasn't blinking, so they supposed it was one of the planets in the solar system. Suddenly, a small, small light emerged from the big spot. It looked like it was growing, somehow... It was coming closer! They saw the light falling towards the earth, slowing down slightly. A slight vibration reached the expedition, and they heard a low noise; it had come down to us. Their curiosity was too overwhelming, they headed for the crater. In just a few minutes, a dark spot in the snow caught the eyes of the expedition members. But something was terribly wrong, they all started to feel dizzy. The feet weren't really going where they should, neither did their hands... ahem! Slowly, they lost consciousness. You, a highly motivated guard, was bored. The other guys played cards, but you weren't very interested in that anymore (remember, you lost a few bucks last evening ;) ). You walked to the toilet for your usual... "routine". But this time, it wouldn't be usual routine. "BANG!" The door to the room outside the toilet smacked open. "Hold it!" you heard and you quickly put your ear to the door. "Man, wazzup?" someone asked. Then the conversation started to become a little long. The main- ingredients were: aliens they had a terrible desease needed antidote only solution: a clone, a twin, or a "GEMINI" humans were to become the GEMINIs screams sound of bodies dragged away. "Now that alien major will be proud of us!", you heard from outside. You realized, going out was not a good idea. But sittin' on this toilet forever wouldn't help. You took out your knife, you looked at it. "Let's have some fun, shall we?" So, what about the game idea? Simple, kill everything you see! All humans in the bunker are already "dead", they have turned into small aliens. You'll be travelling through the inner areas of the bunker, places you've never seen before. You'll also be sent up into the mother ship, and meet the real badass-aliens, and rid them from existence for good! If ya got the guts... | | Features | +------------ * Texturing (32x32 textures, BIG) * Theoretically unlimited, sliding, timed doors with keys * Pushable walls for secrets * Five different animated weapons * Items to pick up * Enemies with different weapons * Dumb objects just standing around * NO teacher key, I don't encourage playing games if not allowed * Big program (>23000kB just below RAM-limit)... Well, I can't stack it all up here, try out the game to see it all in action! You probably think I'm a wuzzy, not implementing a teacher-key, but if you wanna play, you better be allowed. My friends and I have played a lot, but we were allowed, see... :) | | Installation | +---------------- First of all, you must make sure you can upload this game to the calc properly. It's VERY big, I think you have noticed that. You must have a shell, either ION or MirageOS. Upload the correct file to your calc: gemini.83p -> TI83 with ION gemini_ion.8xp -> TI83+ (SE) with ION/MirageOS gemini.8xp -> TI83+ (SE) with MirageOS Run "Gemini" (_ion) and enjoy! The difference between the two *.8xp files is that the MirageOS-specific file got that little cute icon :) | | Usage | +--------- Due to the tiny RAM-mem on the TI83 models, and my raycaster's "mem-eating" habit, I couldn't afford a help-section on calc. If you share this game with somebody else, please tell them how to use the game. MENU Up arrow Previous seletion Down arrow Next selection 2nd Select! The difficulty setting is just cycled through. GAME Up arrow Go forward Down arrow Go backward Left arrow Turn left Right arrow Turn right ALPHA Sidestep left XT@n Sidestep right 2nd + MODE Hands up! BLAM! You're too late. No difference. DEL Open doors (and secrets...) Y= - GRAPH Bring up weapons CLEAR Exit immediately (if you're in a hurry, somehow ;) ) ^ Quit to main menu (you can't resume after this) The heart to the left of the view shows your health status. A full heart means full health. The vest to the right of the view shows your armor status. A full armor vest means full armor. Only ammo for the current weapon is shown. If a weapon cannot be brought up, either you don't have it, or you got no ammo for that particular weapon. Keys are shown in the upper right corner, when you got them. When you die, you just get out to the menu. Code-space limitations... | | Items | +--------- There are many items scattered throughout the levels. Just walk on them and you pick them up. They might be a little hard to catch, be sure to walk straight over them. Small health boost: -------- |########| |### ###| |### ###| |# #| |# #| |### ###| |### ###| |########| -------- Increases player health by 12.5% Big health boost: -------- |# # # #| | ## ## | |### ###| | | | | |### ###| | ## ## | |# # # #| -------- Increases player health by 25% Small armor boost: -------- |### ###| |## ##| |# #| |# #| |## ##| |## ##| |### ###| |### ###| -------- Increases player armor by 12.5% Big armor boost -------- |## ## ##| |# ## #| | | | # # | | # # | |## ##| |## ##| |## ##| -------- Increases player health by 25% Clip -------- |### ##| |### #| |## ##| |## ##| |# ###| |# ###| | ####| | ###| -------- Gives player a handgun clip Shells -------- |########| | #####| | # #####| | # | | ## | | | | ## | | | -------- Gives player 4 shells Bullets -------- |# # # ##| |# # # ##| | # # # #| | # # # #| | #| | # # # #| | # # # #| | #| -------- Gives player 40 bullets Cells No info... Handgun ---------------- |### ###### ###| |### ##| |### ###| |####### # ####| |######### ####| |########## ###| |########## ###| |######### ###| ---------------- Shotgun ---------------- |################| | ########## ##| | #| | | |## #### # | |############# | |############## | |############## | ---------------- Chaingun ---------------- |####### #######| |######## #### #| |######## ### #| | #| | # #### # #### #| | ####### | | # #### # # # #| | ##| ---------------- Plasma rifle No info... Weapon data: Knife Without ammo, this weapon is the starting weapon, and the last outpost when all other weapons are emtpy. It's quite powerful, but you're not very flexible when using it. Also be sure to stand within range, otherwise it won't do much damage! Accuracy: Just slash and stab, no mentionable precision here. Handgun A small firearm, with a big bullet-capacity. 12 bullets per clip, with a total of 12 clips: 144 bullets, not bad! The realod process is very quick, but this weapon is the weakest. Accuracy: Spreads very little, be sure to aim well! Shotgun This weapon is very dangerous, especially when held by the enemies :) Its awesome striking-power makes it suitable against most aliens, but the slow rate of fire might seem a little "uncomfortable". The reload process does take very much time, but you can fire while reloading. The reloading process will end then. Accuracy: Spreads most of all weapons and deals a lot of damage. Chaingun Mwahaha, now we're getting into serious stuff! Hold the fire key and see the enemies drop like flies. The high rate of fire of this machinery will fill the enemies with lead in seconds. Be sure to watch your bullets, they tend to "vanish"... Accuracy: Due to kickback, this weapon spreads some. Plasma rifle Alien weaponry, no info avaiable. All we know, is that it's powerful (mwahahaha!) | | Enemies | +----------- Classifed section, or whatever they call it. I can tell you this: There are four firearms. There are four different enemies, and they will all carry firearms! But, note that even if enemies carry the same weapons, they might actually have different durability against your attacks. This is very uncommon. Also, the enemies will become tougher the farther you play the game, even if they carry the pea-shooter (handgun that is...). The enemies are very stupid, but a little cautious. If you run into a door, see an enemy and run back, the enemies will wait inside for you to come. They won't waste any energy on getting you, they only try to stop you! | | Some hints | +-------------- Don't go close to enemies, as this will slow down the game slightly, and the enemies will look very blocky. But when using the knife, this is a necessity. Move a lot! Enemies will not hit you as easy when you're moving. If you stand still, the enemies will take the opportunity to shoot a still target... Also, if you're meeting tough resistance, you can block the shots by walking behind wall-sections. Columns in rooms are very useful for this. But when you're meeting chain-guns, spray them before they spray you, just a hint... Weapons can be found earlier than usual in the secrets put in the levels. But don't spoil the gaming experience trying to open every wall you see, just play and enjoy! If you really want to seek for secrets, look for oddities. I didn't make the secrets impossible to find, I marked them with various things. Don't change any development files and compile it, the game might not work properly that way. For development info, read devlp.txt. | | Version history | +------------------- Fall 2001: Version 1 of my raycasters. Some piece of junk, which didn't even work properly on TI83s. My very first attempt with any z80-programming at all, I didn't even try to output text before this one... It was slow, it was buggy, it was ugly. You get the idea. I stopped z80-progging for a while, until Kozak (Maarten Zwartbol) began asking me about raycasting. Summer 2002: Version 2! Threw out the old raycasting-routine, and added textures. Much faster than the previous version, and the gfx was A LOT better. A final raycasting-game for the TI83s was taking shape! And as usual, I got tired of this for a few weeks, until: Fall 2002: The final game! Woopie! Released at school-start. Lots of additional stuff and speedups in most places. 32x32 textures, for walls, doors, doorsides, pushables. Objects, such as enemies, items, static objects. BFGs and small arms too. Blasting big program, one of the biggest yet. As said, lots of new stuff, just try it! I don't have precise dates on the versions, but I hope you'll survive that. | | Credits | +----------- Credits go to: Me :D : Atleast I made quite a lot of it... Almost all code, gfx, design and stuff. I dig get many suggestions and requests for this game, and most of them have been put in. Maarten Zwartbol : helped me with the story and gave some invauable support and ideas. Had a TI83 to test on. ID-software : Wolfenstein source code, it was a great place to search for most stuff. Raphaël Siryani & Alexis Guinamard (Doom83) : my first contact with ionFastCopy. Hideaki Omuro : fast mul & div, wonderful! Emir Sakic : example on self-modifying code. Jim Suffolk : Pre-release tester. Gave me some new ideas and suggestions. Wanted to help me some in the later phase of development, and he did :) All of you who actually made this prog a reality (TI, assemblers... u get the idea). Note that much of what I've "borrowed" has been slightly rewritten. Routines are not fully originals and perhaps specialized for this raycaster. Just keep that in mind. And nicely put at the end of the doc: | | DISCLAIMER | +-------------- You use this program at your own risk. Also, if you use code from this program, you must credit me. Be sure to credit the people I credited too! Of course, if you find any bugs, or any inappropriate material, you may contact me (look at the top of this doc). What happens later is another story ;) Of course, violence is the nature of this kind of games, so DON'T come with complaints about that! Just don't play it if you don't like it :) Copyright (C) 2002 Hans "coelurus" Törnqvist Copyright (C) 2002 MaxCoderz a Thorntwig production, from Sweden - and I'm not one of the greedy people in smaaland... * * /||||\ o-O--| // / \ - / ---