jrok Posted March 26, 2009 Author Share Posted March 26, 2009 (edited) Thanks for your feedback and ideas Piggles. Thank you Jrok for explaining the inventory. As for gameplay, will the blaster have limited shots? Will you perhaps have to find ammo clips or power cells for it? Yep. I just implemented this. I tossed out the animated lives module and just went with the native pfscore. The blaster and several other items in the game are limited-use items and are being tracked by the right status bar, which will change based on the current item and its stock of energy/ammo. Player shield strength will be tracked by the left status bar. Since the story occurs on a space station, perhaps a level might have the lights sabotaged by the aliens, so you don't see them until they're almost on top of you. Either you need to reconnect the lights or get an Infrared goggles so you can see them. If you want to set the mood, you could have a few rooms with flickering lights and others just plain dark. That's a pretty neat idea. Awhile back I came up with a program that simlulated proximity to a light source, with the player and enemy sprites increasing their luminance as they neared a light source, and decreasing when they moved away. I never posted the binary, but I've been thinking about revisiting it for this game. Setting the mood seems to be your strong point. I got sucked into your early demo with the side view and the teleporters. Your color choices for the playfield and the attention to paid to alien graphics and how they move captures the imagination and immerses the player in the world of the game. Thanks! If you want the player to find objects, how do you think you'll display them? Will they appear after the enemies are dead (like Cave-in)? Or perhaps an enemy might lurk in one side of a screen, but the item is in the other, and you can display one or the other depending on were the player is on the screen. I'm trying to write a proper design doc for this game, and that's the bit I'm working on right now. Thanks in part to the generous SARA, I'll have four 30hz virtual sprites to work in core gameplay. - Sprite1 is a 60 or 30hz P0 reserved for the player character - Sprite2 is a 30hz P1 reserved for one of the following: *A Primary Enemy in the room (if any is present) *An Interactive device (i.e. a computer terminal, a power station, your getaway ship, etc) *An Item left behind by a dead enemy - Sprite3 is a 30hz P1 reserved for one of the following: *A Secondary Enemy in the room *An Item, Projectile or Effect in conjunction with Sprite2 *An Item left behind by a dead enemy - Sprite4 is a 30hz P0 reserved for an Item, Projectile or Effect in conjunction with Sprite1 (i.e. the slashing sword) As it stands, Sprite1 doesn't flicker unless you are using the sword (Sprite4), when it does so at 30hz, although I may change this, since some people prefer constant 30hz flicker to variable amounts of flicker. For picking up, dropping and exchanging inventory items, I am thinking of avoiding the whole process of trying to involve them in onscreen object update, and going with a "locker" system. There will be lockers scattered throughout the complex, likely represented by a Sprite2 or by some combination of the ball and playfield pixels. When standing on one of these devices, you will be able to exchange items in your inventory for items in the locker using the right joystick. I'm going to include this in my next update to see how well players think it works and maybe get some feedback on how it might be improved. *EDIT: Only a Primary Enemy can drop an item. These would be persistant enemies (like "Mutant X") whose world position is tracked. The item the enemy is carrying would basically function like another frame in their spritesheet, activated when their death-flag is set. Since a Primary enemy's world position is tracked, the item would appear in the room they were killed in, and would function the same way that a locker does (i.e. when standing on it, you could use the right joystick to exchange it for one in your possession.) Cheers, Jarod. Edited March 26, 2009 by jrok Quote Link to comment Share on other sites More sharing options...
jrok Posted April 1, 2009 Author Share Posted April 1, 2009 (edited) Okay, this is a pretty big update. Essentially I've introduced many new mechanics, and have crafted a "mini-level" that I am going to use as the base for testing all gameplay mechanics from here on out. The goal of this mini-level is simply to locate a Chalice. I've updated the instructions a bit below, but without going into to much detail here are the major changes/additions: Puzzling: Throughout the station are computer terminals that control various obstacles you need to bypass. There are clues hidden in the environments in and around each obstacle, so you have to pay attention in order to solve the code. You can access one of these terminals by standing on it and pressing the left fire button. The screen changes to a "1st person" view of the computer monitor. The interface is composed of 9 buttons in three different colors and a white "enter" button. You can move the cursor beside the various buttons using the left joystick, and select a button by pressing the fire button, adding that button to your code string. When you think you've entered the full code, select the white enter-button and press the fire button. You will be then returned to "3rd person" Adventuring Mode, and a sound will indicate whether the code was correct or incorrect. If correct, the computer will perform the desired action (i.e. lowering a force field, disarming a turret, etc) Enemy AI: I've removed "The Mutant" for now, so you'll only be fighting robots. Revised collision detetion and steering. Added a projectile weapon using the ball object. Robot randomly appears when a new room is drawn Item Pickup: This is still a little inflexible and needs to be worked on. When you see an object in a room, postition the hero on top of it and press the fire button to pick it up. It will appear in the third slot in your inventory and will automatically be armed. Certain items (like the gun) have a limited number of uses. Death: Each time a robot shoots you, you will lose a shield. When you have lost all your shields, Young Skywalker, "You will die." I am REALLY curious how difficult you guys think the puzzle(s) are in this build. I want to make puzzling part of the core gameplay, with the puzzles getting progressively harder - and even deadlier - as you get closer to the game objective. HUD: At the bottom of the screen, the score area displays your current inventory and shield strength. You can hold up to three items in your inventory at a time, and can have a maximum of up to three shields. CONTROLS (Adenturing Mode): Reset Switch Restart the game. Left Joystick - Move hero in 8 directions Left Fire Button - Activate a computer terminal or Aim/Use the active item in your inventory, as follows: Laser Sword - While holding the button down, tap the Left Joystick left or right to slash in that direction. Gun - Move the Left Joystick in one of 8 directions to aim the gun that way. Release the Fire Button to shoot. Bomb - If you can find this item, you can blow holes in interior walls and doors. RightJoystick - Tap left or right to change your active Inventory item. CONTROLS (Puzzling Mode): Left Joystick - Move the cursor in four directions Left Fire Button - Press a colored button or submit the code by selecting the Enter key at the bottom of the monitor. ENEMIES & OBSTACLES (only two at the moment): Killer Robot: Garden variety evil robot. They turn up randomly in rooms that you enter, and can be dispatched with a single shot or a swing of your sword. Mutant X: This is a persistent character that will serve much of the function that the Dragons did in Adventure, relentlessly pursuing you around the complex. You can mangle him with a sword strike or a bullet, but after a few seconds he will re-constitute himself and continue hunting you down. Computer Terminal: A security computer linked in to the Armageddon Complex security network. Can be used to disable Force Fields or trigger other events. Force Field: A barrier which must be disabled by entering the proper code in a computer terminal. Cheers, Jarod. Latest Version: Armageddon_Complex_v2.bas.bin Edited April 1, 2009 by jrok Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted April 1, 2009 Share Posted April 1, 2009 You might want to check your scanlines. I used breakif {_scan>#262} to have Stella stop if there is a problem and it stops any time I leave a room. Quote Link to comment Share on other sites More sharing options...
jrok Posted April 1, 2009 Author Share Posted April 1, 2009 (edited) You might want to check your scanlines. I used breakif {_scan>#262} to have Stella stop if there is a problem and it stops any time I leave a room. I am aware of it and not too worried about it at this point in development. Actually there's probably no real way around it, since a new room has to be drawn and initialized. Luckily nothing is being updated on the screen at those times, so it might just pass unnoticed. I'm more concerned with certain in game events (or combinations of events) that are taking a little long to execute, but I will deal with that when I'm ready to start optimizing. Thanks for the report. Jarod. Edited April 1, 2009 by jrok Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted April 1, 2009 Share Posted April 1, 2009 There might be something you can do about it: http://www.atariage.com/forums/index.php?s...t&p=1604198 You can create part of the screen, drawscreen, create the next part, drawscreen, create the next part, drawscreen . . . Although it's early, if you can, now might be the time to do it, so you can use the technique for all future rooms and not have to go back and redo it all. Quote Link to comment Share on other sites More sharing options...
jrok Posted April 1, 2009 Author Share Posted April 1, 2009 There might be something you can do about it: http://www.atariage.com/forums/index.php?s...t&p=1604198 You can create part of the screen, drawscreen, create the next part, drawscreen, create the next part, drawscreen . . . Although it's early, if you can, now might be the time to do it, so you can use the technique for all future rooms and not have to go back and redo it all. Thanks for the tip. The other thing I was thinking of was just putting the display to sleep for a second or two between screens, so that any roll or jitter would occur on a blank display. I'm using playfield definitions to draw the playfield, so I'm not sure how I can draw portions of the screen, unless I maybe I stored the playfield in RAM. I don't see a method described in that thread link. Did you have something in mind, or that works for you? Thanks again, Jarod. Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted April 1, 2009 Share Posted April 1, 2009 I'm using playfield definitions to draw the playfield, so I'm not sure how I can draw portions of the screen, unless I maybe I stored the playfield in RAM. I don't see a method described in that thread link. Did you have something in mind, or that works for you? That random maze is created using pfhline. I do a certain number of pfhlines until a drawscreen is needed, then do some more until another drawscreen is needed and so on until the maze is done. If you can create your rooms with pfhline/pfvline or pfpixel with data (whatever uses the least amount of code), you can insert a drawscreen when needed and the scanline problem should be fixed. Quote Link to comment Share on other sites More sharing options...
gambler172 Posted April 4, 2009 Share Posted April 4, 2009 Hi Jarod Great work.Cannot wait to see more...... greetings Walter Quote Link to comment Share on other sites More sharing options...
+ZeroPage Homebrew Posted March 14, 2020 Share Posted March 14, 2020 (edited) We'll be featuring Armageddon Complex LIVE on tomorrow's (Sunday) ZeroPage Homebrew stream on Twitch at 12PM PT | 3PM ET | 8PM GMT! Hope everyone can watch! Twitch Stream: https://www.twitch.tv/zeropagehomebrew/ Games: UFO LCD (Exclusive Premiere!) (2020) by Scott Dayton @neotokeo2001 / NEOGames Charge! (2011 WIP) by Jarod D. Kitchen aka @jrok Star Crusade (2012 WIP) by Jarod D. Kitchen aka @jrok Armageddon Complex (2009 WIP) by Jarod D. Kitchen aka @jrok Circus Galacticus (2011 WIP) by Jarod D. Kitchen aka @jrok (SET VIDEO TO 1080P60 FOR FULL QUALITY) Edited March 16, 2020 by ZeroPage Homebrew Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.