Jump to content
IGNORED

[7800basic] Graze


Mord

Recommended Posts

Hm. Might take me a bit longer to get the next update done. I'm getting drastically low on rom space. :D

 

So it's either going to be adding bankswitching now, or trying to delay it a bit longer by temporarily extending the rom to 48k. Given the things I still want to add to the game that aren't coded yet, I doubt extending it to 48k is going be a permanent solution. For those testing this on hardware, are you able to load bankswitched games? (IE: are you using cpuwiz's ramcart, or a cuttle cart/etc.)

 

I can hold off on bankswitching a bit longer if it's going to cause a problem for people testing it for me. :)

Link to comment
Share on other sites

Before you go past 48k, a couple of tips which you may or may not already know...

 

1. stuff code into the DMA holes where possible.

2. the plot* commands take in a lot of arguments and can eat rom quickly. Where possible use the sprite animation index, rather than a series of if...then statements to display different sprites.

 

My suggestion is to try and avoid bankswitching if you can, since it imposes a certain structure on your code. If your switching banks have graphics in them, the bank with the graphics for the current frame needs to be the one that calls "drawscreen", and you need to make sure the bank stays active while the visible screen is drawn.

 

Its a bit simpler if you only put graphics in the last bank. But all of this should be planned prior to making the leap. :)

Link to comment
Share on other sites

  • 2 weeks later...

Mostly a bug fixing and efficiency-boosting update this time. Thanks to Rev for helping me get those glitching graphics capped in the knees. :D

 

Changes this time:

1. Increased rom size to 48k for now. Will eventually rework things for bankswitching but for now this'll do.

2. Converted Powerups to be directly printed on their gears - more efficient.
3. Fixed bug with background graze flash displaying while player is dead - caused by regen powerup.
4. Regen is lost on death. (Previously kept it.)
5. Added Enemy Clipper that prevents off-screen enemies from being plotted!
6. Moved Status Bar variables into the SaveScreen by converting PlotValues to PlotChars that pointed to ram.
7. Moved Graze Charge Display to the Status Bar routine via PlotValue/PlotChar conversion as well.
8. Stopped glitching enemies with frameskipfix. (New thing Rev's testing out, works like a charm so far!)
9. Not all enemies have powerups attached.

 

So essentially the glitching we were seeing was caused by me doing too much in the plotting section that caused it to skip frames (go into slow motion) When it did this, the game didn't have time to cap off the DLs. This caused the glitches whenever a mob moved into a new zone while it was happening.

 

By moving pretty much all of the old plotvalues into the savescreen, the number of enemies on the screen prior to slowdown occurring has jumped. I think it starts around 11 enemies now where it use to happen at 4-5. Max enemies on the screen is planned to be 16 so far. Pretty sure I can still remove some logic out of the plotting section and the option to use a standard screen height of 192 is available later on which will again add time to the plotting section.

 

Although it'll take a hit on the cpu cycles I've gained this version, I think I'll try doing some color swaps on the letters in the status bar next version to see how it goes.

  • Like 4
Link to comment
Share on other sites

Just a snap of what I'm working on since it's not likely to be ready before next week ;)

 

post-4460-0-33476900-1437563524_thumb.png

 

I have to focus on removing the slowdown entirely and getting the enemy count up at the same time. (At odds with each other I know!)

 

If I'm going to do palette swaps mid-screen to boost the apparent color count I can't have slowdown happening since it means we get insane flicker where the colors won't be updated every second frame. Also when the current enemy count goes over 10, before the slowdown begins, I get a little bit of bleeding on the color from the digits if the player is touching the top of the screen. :)

 

I've got a few ideas for boosting the enemy count without resorting to 192 scanlines. (We'll forget that if I do drop it to 192 then I already get no slowdown with 15 enemies and just a very tiny bleed. Must resist 192 for as long as possible!)

 

 

  • Like 2
Link to comment
Share on other sites

Sunday counts as next week amirite?

 

I didn't work on getting the enemy count up yet - I may try to reserve that for nearer the end, so long as I can maintain about the same enemy count it should be fine. :)

 

New roms in the first post, changes include: (Most are tiny updates.)

 

1. Adjusted Text/Digits in Status Bar.
2. Updated Colors of the status bar to be independent of the game field.
3. Color of Status Text now represents difficulty. Easy - Green, Normal - Blue, Hard - Yellow/Orange.
4. Game Over Background color will now pulse instead of being a solid red.
5. Increased Lum of Player 1 graze background color. (Makes the fade more obvious like Player 2)
6. Players can't quite touch the status bar anymore. (Intended as a little insurance against palette bleeding-but not enough.)
7. Console reading & Life Stealing done every even frame instead of every frame.
8. Random Enemy Spawns checked every odd frame.
9. Possible Power ups per wave, and frequency is now configurable in the Wave Data. (up to 3 types per wave.)
10. Not noticeable yet since we only have 1 enemy type, but only Gears can receive power ups now.
11. Enemy AI types are now picked from the Level Data more efficiently.
12. Some enemies adjust their direction loosely based on a target, which can be the player or another mob. (This results in them wiggling in their path)

I think I'll add a new enemy graphic for the shooters next update so I can stop using the gears for it. :) On the plus side I'll have more room since there's one character set I can remove from the rom to free up graphics. Originally it was to be used for the letters in the status bar but I haven't actually used them since it became apparent Maria didn't have the time for indirect graphics in the status bar. :)

  • Like 2
Link to comment
Share on other sites

Up until now, despite how often they may hit you, projectiles were always firing randomly.

 

Now that I figured out how to aim them at targets... oh my freaking lord.

 

I'll see about writing up a demo program for aiming a projectile towards a target at some point during the week in case others can use it. I'll post it in the 7800 Programming forum when it's ready. :)

  • Like 3
Link to comment
Share on other sites

In case anyone missed it, I posted the aim demo in the 7800 programming forum over here. Took me a little longer than expected to get it rebuilt and a little clearer than what's in the main code. Overlapping the Y and Yf arrays certainly didn't help. :D

Link to comment
Share on other sites

  • 2 weeks later...

No updated rom for now. The heat since the aim demo was posted has been making me useless. :D

 

I'm trying to work on a more refined direction set routine based on the demo, one that will make an adjustable maximum and minimum speed range. There are two issues I've run into that I'm still trying to work around - I have ideas for doing so but like I said, the heat.

 

The way it works is that I've set a minimum speed for the X and Y directions. Instead of simply hardcoding it to "1.0" effectively like in the demo (I only test for the whole part being non-zero) it'll do some checks on both directions based on their minimums and continously increase them so long as both are less than their respective minimums. After that it'll do a check to make sure both are below their assigned maximums. If either are above their maximum, it'll halve the amount it adds, then subtract it.

 

Just by doing that, it seems to work - but now and then you'll get something that's moving excessively slowly. Meaning both of them had large amounts for their temp, and by subtracting them from the final speeds... you had very little left.

 

I've made some adjustments to that, by sending it back to checking for minimums to repeat the process and it's working out better. I'll see if I can refine it a little more.

 

By doing this I can increase the difficulty each wave by slowly increasing the minimums and maximums. And I can set different levels of progression based on the game difficulty.

 

The second issue is more to do with the starting off-screen placements of the enemies. I need to refine it a bit more so that they're -just- off the screen. Also I have to adjust the minimum X and Y speeds based on where they're located around the screen. Watching the new Active Enemy tracking variables in the debug code shows that I can easily get enemies that don't seem to enter the active screen at all. For instance they're Y is greater than 208 and they're Y speed is unbearably tiny taking them forever to move up into the screen. That's my guess to what's happening at least. It doesn't happen when all the mobs are set to aim at the player when they're spawned, but I also have a RandomDirection routine which does much the same thing as SetDirection, but randomly seeds the starting X and Y. :)

 

Once I get those things refined and try to finish drawing up a sprite for the shooting enemies (And if I finish that up quickly - which I will if the weather stays nice like it is today, I'll clean up the SpawnEnemy routine as well), I'll try to post an update.

Edited by Mord
  • Like 1
Link to comment
Share on other sites

It's buggy as heck (since the heat kept me from really working on it. :D) but since there is at least one noticeable update I'll post the roms. Not going to bother updating the first post with these since as you'll see, they're buggy. I tried tracking down the glitch but since it wasn't fixing and I'm about to rewrite the sections likely causing it anyway, I'm just going to go ahead with the changes and see if it clears up first.

 

The main bug is that enemies appear to be getting stuck off the screen. The two debug values on the bottom of the screen in this version show (left) total number of enemies active and (right) Total number of enemy slots in the round that can be filled. You'll notice that the Total Enemies counter will go to B when the number of slots shows as A. This is fine - the slots are also counting "0" as a slot.

 

The Total Enemy counter is incremented whenever a bullet is fired or an enemy is spawned. And decremented whenever an enemy is removed (id = 0). This appears to be working given the Total Enemy counter does manage to saturate and stop where it's suppose to.

 

The duration of wave 1 is set to 95. You'll notice enemies seem to be sparse even though the counters show it should have a lot going on. Usually by half way through the wave enemies just stop showing up.

 

 

On the other hand, now gears will have a small explosion when they're destroyed!

 

I'm going to work more on sprites for a bit and restructure the code to make it a bit cleaner. It's been fine for now since there's only been one main enemy type up til now, but the shooter's graphics are about ready to be added in as well so might as well take this opportunity to make it easier to plug in new enemies and rework how the AI is assigned to them. If the weather (And most importantly the humidity) eases up this week hopefully I'll have something useful to show next weekend.

2015-08-14-graze.bas.a78

2015-08-14-graze.bas.bin

  • Like 1
Link to comment
Share on other sites

Ok found the issue. Basically crossed the AI routines for the wigglers and the explosion effect. Since the explosion effect doesn't move enemies... we had wigglers that were sitting off the screen doing nothing. thus why the enemies would slowly appear to vanish. :)

 

Going to do some planning for the first time since starting this. ;) Going to write up a list of all the AIs and enemy IDs I expect to have in the game so this doesn't happen again. :D

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Haven't gotten a lot of actual programming done still. I hate summer.

 

I have been managing some graphics and design work however. Below is just a mockup using graphics intended for one of the boss designs.

 

post-4460-0-69441400-1440576989_thumb.png

 

The way this boss is intended to go is that each of the turret pods will be functioning separately while a master AI will be doing some extra functions. The master AI isn't shown in the mockup, it'll essentially look like an eyeball in one of the bare wall segments that'll look around.

 

The walls themselves are set up so that when they're needed they'll be added to the savescreen and the pod animations will be handled much like the graze-charge flash is updated behind the graze scores in the bottom corner. This should mean it won't impact the number of enemies that will be available on the screen.

 

When the walls are in place, they will be solid to both players and enemies. Enemies won't be able to leave the side screens as they bounce either. (Much like how they originally couldn't leave past the status bar in early versions)

 

I started working on part of the code for this since it involves parts I'm updating now anyway. I assigned two new variables, "LeftWall" and "RightWall". When either is "0", the code will respond as if the wall is "off", and old behaviour will occur. Players and enemies will be able to touch the side of the screen. When the value is non-zero, it will specifiy the "X" coordinate of the wall's position that will act as the physical barrier. Additionally, when a wall is on, off-screen enemies will not spawn behind the wall. Only to the top or bottom of it.

 

Anyway, in a nutshell, the turrets will fire at a particular rate of fire (adjustable) with a bit of randomness. If a bullet can be fired, it will fire the bullet type it has been assigned (adjustable).

 

The Master AI has a particular amount of energy/life as well although it can not be directly attacked. It uses this energy to heal damaged turrets, revive dead ones, among other things. It will also be able to force turrets to target a particular player in 2 player games or update the bullet types of the turrets which it will do as turrets are destroyed or it's energy level decreases. :)

 

(Haven't written any code for all this yet, but I know how to do it.)

 

I also have sprites for a "heli-pod" which will become the shooting enemy in the next version - gears will no longer shoot!) Given these pods have a rotating blade, I'm tempted to see if I can make the blades themselves no-graze while leaving the rest of the enemy grazeable like a gear. I think this should be possible by having it's AI do a simple Y coordinate check on the player vs itself. If the player is grazing the enemy, but it's Y is higher than the pod... obviously you're caught in the blade on the top!

 

Also a third bullet type will added next update. :) A paralyzing bullet. It'll force you to a crawl for a duration (Force slow-move). It'll last for X seconds, but if I can code it you'll be able to shake it off faster by moving the controller left/right/up/down.

 

The boss won't be in the next update, but the heli-pod and the new bullet will be. One of the reasons for leaving the boss til later is because... well, it's more complex. :-D But also leave it until the various bullet types it will be able to use are in.

 

I might alter the power of the small bullet as well while I'm tinkering in there - have it drain less power than a large one or something similar when it hits you.

 

(As to when I get the next update done will be entirely up to the weather. :skull: )

 

(This has been my "Don't Worry I'm Still Working On This!" update!)

 

  • Like 4
Link to comment
Share on other sites

  • 2 weeks later...

Friday counts as the weekend. First post updated with new binaries and a small description of the bullet and enemy types.

 


** Rewrote system to more easily add new Enemy Types.

 

** Added Heli-pod. (Needs refinement with shooting capabilities) Has a no-graze propeller.

 

** Added Left/Right wall support. Will be used with Turret Boss eventually. (While invisible, they are currently "on" in this test version. So you will see enemies bouncing before touching the left or right wall.

** Modified the flash effect behind the graze charge levels to reuse it for the paralyser bullet. (You won't see any difference since the changes are covered by the digits.)

** Fixed a cpu waste bug in collision checking - an enemy grazed use to check it's hitbox every frame after until destroyed/despawned even if the player is no longer near it.

** Added MobBounce to the list of enemy variables. Previously it was used in the more general DATA variable.

** Added MobBullet so shooter types can be assigned a specific bullet to fire rather than choose randomly. (With this they can still be made to fire randomly - or will later on!)

 

** Shooting enemies will remember their bullet and generally won't fire again until it despawns. (Default behaviour, but special attacks can force multi-shots.)

** Paralyser Bullet added. Grazing it drains your Graze Charge quickly. Direct hit will cause the bullet to stick to the player for a duration, during which time they're forced to a crawl. (Can't reduce timer yet.)

 

** Large Bullet now packs a double punch, turning into a small bullet if the player doesn't survive the first hit. This makes them the most dangerous object in the game for now (80pts!) but that will be adjusted in the next version!

** Made it so that enemies will ignore solid walls (if any) when clearing the screen for revival/midwave.

 

 

The paralyser bullet flashes between the two palettes in a feeble attempt to get the appearance of more color on the screen. Let me know how it looks. I have no idea if it would cause seizures or not, but if you're the type that have that kind of problem... take heed!

 

First thing next version will be to make the attack power of enemies adjustable - mainly for the reduction in bullet power needed, but also to adjust difficulty. This of course will change the meaning of the flashy effect behind the graze counter (which currently means "ok you can withstand any one hit at all!") I may reserve the flash for special stages in the future or something. We'll see!

Edited by Mord
  • Like 2
Link to comment
Share on other sites

Might not have another full update until the end of the month. If the weather stays the way it is, I should be pretty good for working on it, but ended up writing a big list of things to try to add in. This might end up being the last non-banked version when I release so the following release will probably end up being a restructuring thing. ^_^ Still got about 8000-10000 bytes of logic space left, but graphics looks like it may run dry.

 

I have the enemies power levels adjustable, so the double-hit large bullet on the current version is fixed so it won't do 80 points of damage. But in doing this, starting power levels of enemies/projectiles change based on Difficulty Level, and they will increase as waves progress.

 

Also if you're playing on HARD then your Graze Charge gets reset to 0 when you die. Seriously it seems like with the way Difficulty Level is starting to affect the game is going to make it a big leap from EASY to NORMAL to HARD, etc.

 

Right now, since the Enemy AIs will no longer be in the Wave Data (It'll be in Enemy Init routines) I'm repurposing those 8 bytes to store different information. Wave Events! Currently working on "Meteor Showers" which will simply alter the offscreen spawner such that it will rapidly spawn and drop particular enemy types from the top of the screen for a duration. I'll be able to set the start time and duration of a shower in the wave data, and if desired the event can last the entire wave. I'm writing it such that when bosses are added later on they'll be able to use the code for some special attacks - essentially the boss will just seed the triggers for the offscreen spawner and it'll automatically start doing the work.

  • Like 3
Link to comment
Share on other sites

  • 1 month later...

Oh hello.

post-4460-0-21947800-1446116122_thumb.png

 

I must admit I've been pretty lazy on the coding since the last release. Only just starting to get into it again this week - admittedly, not much got done beyond lots of thinking!

 

Need to debug the first wave event and configure the test waves to show off what's new so hopefully I'll have -something- to show this weekend. In addition to the things mentioned above, I've added visible walls, and an annoying boss bullet. I don't particularly like the graphics I've made for it so those are likely going to change later. Lastly the wave event is currently being constructed. I've written the code but won't be able to test it until tomorrow when I have more time. :) I had started on adjusting how points are awarded when enemies are graze charged, but a computer crash wiped that out because I suck at saving in a timely manner.

Link to comment
Share on other sites

First post contains updated roms.

 

Main new additions include:

 

visible walls - prior to this I had walls coded in but they were essentially invisible. To make moving the walls feasible I resort to a little bit of assembly + knowledge of how and where the DLs are laid out in ram. I dug into zonememory.asm to find the starting addresses of each zone, and use the statusbar setup routine to also add in the wall graphics - this way I know the first 2 DL elements are for the walls, left and right, based on the order they're added. This way instead of having to re-add all those DL entries every frame, I can just edit the horizontal position byte on each.

 

Eventually the turret system will make use of the above.

 

Boss Bullets - The helipods will occasionally fire a new large bullet that'll at first fire across the screen as normal, but once they hit the edge of the screen/wall they'll start crawling around on the wall. Occasionally they'll attempt to charge across the screen at the player. These things generally do the most damage in the game, and grazing against them will cause you to lose graze power, similar to a paralyser.

 

Wave Event - Starting at a particular time in each wave, an event will start. Right now the only wave is for the gear storm. It's not perfect yet but I'll fix that up this week while I work on the helipod firing squad event. There is a bug I need to check into with these, although it seems to show itself mostly in the first wave. In the first wave, the event begins at Timer = 30, and ends around 20 or 10... you'll notice. But once it ends, instead of resuming normal enemy spawns, the spawns appear to just die off for the rest of the wave. It might just be a case of needing to reset the spawn timer explicitly.

 

Only things I'll definitely attempt for next week will be debugging the current wave event + adding the new one. Obviously trying to get too big an update done ends up overwhelming me, and we see the result!

  • Like 2
Link to comment
Share on other sites

  • 3 weeks later...

Hi guys, my progress has slowed tremendously I admit!

 

There are various reasons for it.

1. Really want to start testing on hardware myself - thus have to wait for the ability to do so. (minor reason)

2. Rom space is running low again. (much larger reason)

3. Various bugs that need to be recoded from scratch. (probably even larger reason!)

 

The rom space is an issue because there's various things not added yet that I really need to add (hello, need a title screen! ;)) and I've been thinking heavily on if I want to deal with bankswitching yet given it's my first game. I'm leaning against it currently.

 

So anyway, for those who have been playing the alphas thus far, take a look at this quick test and tell me what you think. Do you notice anything different compared to the latest alpha in the first post of the thread, etc.

graze-nov20-test.bas.a78

graze-nov20-test.bas.bin

  • Like 3
Link to comment
Share on other sites

  • 2 weeks later...

I -am- working on it!

 

Fixed the obvious-in-your-face-so-much-you-can't-see-it bug with spawn drops along with making the per-frame scoring more dynamic. Grazing a helipod gives more points than a gear for instance, and if you graze multiple objects at the same time then you'll get credit for all of them. Prior to this you simply got a point per frame if you were grazing an enemy.

 

The next thing I'm going to work on is to rework how points are awarded for actually destroying an enemy. The graphics for those have already been added for a few versions now, so it's about time I actually used them...

 

 

Edited by Mord
  • Like 3
Link to comment
Share on other sites

  • 4 weeks later...

Nothing new yet, although working towards getting the new method of point awards for destroying enemies in there. I actually have/had that done, but some strange bug snuck in with it that made most of the power-up gears lethal to the touch. Best I can see, something stops the gear from being destroyed, so each frame it hits you again so your graze power quickly drops to nothing. I'm probably going to refresh back to my last backup from a little before adding the code, then try plugging it back in. After that I'll spend the rest of the "year" trying to crush whatever other bugs I can and have a new rom to show off on new years. :)

 

I'll try to update the first post in the thread at that time with updated info on controls/scoring/modes.

  • Like 2
Link to comment
Share on other sites

Managed to fix the instant-kill powerup bug I was having, although the ghosting gears that sometimes show in normal and hard mode needs to be crushed still. I don't think I've seen it in Easy mode, feel free to test it to see if you can see it happen and let me know if so. The important thing about this is that if it's not showing in Easy mode, I can localize the source of the bug to the SetDirection subroutine or something about/near it. In Normal it's used about 50% of the time, in Hard it's used all the time. It's never used in Easy however! In easy mode RandomDirection is used instead. It's a very similar routine, but works differently in a couple of ways.

 

I can't remember what the debug value is showing right now, so just ignore it! I think it has something to do with the glowing effect of the walls in game over.

 

Anyway, updated binaries and description in the first post.

 

 

Changes:
* Removed pixel-shifted graphics for enemies to free up sprites/simplify enemy plotting. (Kept it for players.)

* Updated game name to Graze Suit Alpha. ("Graze" by itself was always just a placeholder)

* Worked a bit on title screen. (Updated game name.)

* Enemies now give different amounts of points per frame they're being grazed.
Gears -> still give 1 point.
Helipod -> now give 10 points. (A lot more risk involved between shooting and the propeller!)

* If you graze multiple enemies at the same time, you will gain the per-frame graze award for all of them. Prior to this you either got 1 point or nothing based on if you were in a graze.

* Simplified spawn timer.

* Fixed issue where enemies would stop spawning, particularly at the start of events. (Brackets are your friend.)

* Fixed bug where if you reset the game directly to the title screen during an active wave event, the wave even would continue as soon as the new game began.

* On mid-wave projectiles are simply deleted rather than cleared. They're also deleted during game over.

* Enemies targetting the player will aim directly for the player's center, rather than the top corner except...

 

* In Hard difficulty, anything aiming at the player will vary slightly. It won't always aim directly for the player's center.

* During Revive Mode paralyser bullets will be deleted.

* Enemies destroyed now turn into little point icons that will fly up to the player's score before awarding their bonus. They will do this even during "revive mode" and "mid-loop" mode when enemies are normally being cleared. However, if game over is reached, bonus points not awarded are forfeit.

* During Game Over, enemies and walls (if any) will rotate their palette.

* Changed Boss Bullet graphic. Still not very happy with it though.

* Gear Wave Event working pretty much as designed.

  • Like 4
Link to comment
Share on other sites

Updated roms in the first post. Mostly fixes this time, but it should be much more playable.

 

NOTE: I have noticed under certain conditions the game freezes. I'm not sure what causes it just yet. It's basically going to be an infinite loop that forms when certain if checks succeed, sending it back earlier in the code. Just not sure where or what if checks. If the game freezes for you, let me know what you were playing on - if you're on an emulator, a screenshot would be ideal. Thanks in advance!

 

 

Changes:

1. Updated the Offscreen Spawner to separate Event (And later Boss) spawns from normal spawns. (Cuts down on if checks - going to have to go through all the code for this kinda thing I think...)

2. Fixed bug where occasionally enemies will spawn with speeds so fast they'd only flash on the screen a couple of times. (speeds excessive of 60-80 pixels/frame!)

3. Min/Max enemy speeds fixed. Enemies will now gradually become faster as waves advance, but not nearly as fast as they use to! (Enemies won't speed up on easy mode.)

4. Enemies and players are now prevented from entering the bottom zone (where the graze charges are listed - I have plans for it.)

5. WallCrawlers (Boss Bullets mostly) dashed at players incorrectly. Should only dash if Difficulty is not EASY and it's Timer delay = 0. (prior it was only dashing on EASY!)

6. Highscore wasn't being updated during mid-wave loop with the new way points were being updated. They were being calculated properly, just not being copied over to highscore until the next wave began. Fixed so it's now updated immediately.

7. Helipods now travel a bit slower than other mobs on average. (Too dangerous to fly at full speed!)

8. Enemies won't take forever to enter the screen when aimed randomly. With targeted enemies, the targeting should encourage enemies to charge onto the screen fast enough. Occasionally we had enemies that would spawn on the top/bottom of the screen, for example, but have a VERY slow vertical movement. May need to increase it a bit more however.

9. Cursor on title screen now wraps around top-bottom option items.

10. It seems Boss Bullets were ignoring player 2... Now fixed.

11. Fixed collision issue with the left hand side of the screen. Enemies that were partially crossing the screen border (As they were entering or leaving the screen) couldn't be grazed or hit due to their X actually being over 250 which played havoc with the boxcollision.

 

 

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Updated roms in first post.

 

Changes:
1. Revamped the Title/Menu Screen. Still more changes I want to do with it but that may wait until I rearrange the rom for bankswitching. the LOCKED feature is just a placeholder for now. The way the options are handled now will make it easier to add new modes going forward.

2. Maximum Lives is no longer affected by difficulty level.

3. Officially named the default mode "WAVE NORM". It's the mode we've been building/testing.

4. Added "WAVE SURV" (Survival Wave). It uses the same loops as WAVE NORM but restricts you to a single life. If/When I add bonus lives based on score, Survival modes won't get them! If I add bonus lives as a reward similar to points, it'll give something else during survival. I'm thinking if I get around to adding bosses, then whoever lands the last attack will get a bonus life. Naturally this only really matters to 2 player games.

5. When your graze charge is being drained, the background will flash purple. Currently this happens when you're caught by a paralyser or if you graze a boss bullet.

 

Still not sure about that game freeze bug. I didn't even see it happen to me this week so there's a chance that something glitches when playing with the keyboard. (hitting normally impossible button presses, etc.)

Edited by Mord
  • Like 1
Link to comment
Share on other sites

Still not sure about that game freeze bug. I didn't even see it happen to me this week so there's a chance that something glitches when playing with the keyboard. (hitting normally impossible button presses, etc.)

 

The letter 'O' is the default key mapped for Pause under MAME(MESS) for a7800 emulation.

Not sure if you may have mapped I,J,L,M for movement and accidentally grazed O. :grin:

Link to comment
Share on other sites

 

The letter 'O' is the default key mapped for Pause under MAME(MESS) for a7800 emulation.

Not sure if you may have mapped I,J,L,M for movement and accidentally grazed O. :grin:

 

Unfortunately while the palettes do mess up (doesn't swap mid-screen as they should) with the built in pause routine, it appears to default to a different set of colors than the freezing I experienced. The freezes I saw defaulted to the play-area/enemy palette rather than the status bar palette you see with pressing pause. :)

 

I was kinda hoping you were right though. :D

Link to comment
Share on other sites

 

Unfortunately while the palettes do mess up (doesn't swap mid-screen as they should) with the built in pause routine, it appears to default to a different set of colors than the freezing I experienced. The freezes I saw defaulted to the play-area/enemy palette rather than the status bar palette you see with pressing pause. :)

 

I was kinda hoping you were right though. :D

 

The default "pause" for general MAME(MESS) emulation overall/overhead is P.

Perhaps you paused MAME(MESS) overall, by grazing P.

:ponder: :-D

Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...