Jump to content

New game uploaded: Invaderz


AndyMt
 Share

Recommended Posts

Invaderz

View File

screenshot01sm.png

This is a space invaders inspired game. Use the mouse or joystick to control the player ship.
The shield segments can take 2 hits each. If enemies get too close you retreat back to the last level.
You lose when all your lives are gone or you fall back to earth level again.

Now with 7 playable levels

Requires emulator R38!

Roadmap:

  • more diverse enemy formations
  • enemy attack raids over the sides
  • power ups (shields, double cannon, disruptors etc.)
  • boss enemy
  • joystick control done
  • music done
  • Different enemy sprites. done
  • Sprite animations. done for player sprite and enemies
  • fade in/out of palettes and backgrounds. done
  • more levels with more backgrounds (all planets of the solar system), done
  • sound effects basics done
  • title screen
  •  

How to use with the local emulator:

  1. Unpack ZIP file into the same directory as the emulator.
  2. Start the emulator, then enter
  3. LOAD"INVADERZ.PRG"
  4. RUN

 

  • Like 5
Link to comment
Share on other sites

Based on the experience with Brixx I wanted to go one step further and exploit the full power of the VERA chip. This game now has loads of sprites at the same time of which more or less all are moving. The background is 8bpp in 320x240.

Right now only one level is playable, no sound etc.

The plan is to have kind of a "storyline" where you defend each of our planets in the solar system. Starting from earth where the aliens suddenly appear. Then the player's task is to drive them out of our solar system.

Let me know what you think 🙂.

Link to comment
Share on other sites

Very nice! I see collisions do need some work, but overall it plays quite nicely! I noticed that, unlike the original Space Invaders, you can have shoot while your last shot is still on the screen, but it does appear to be a little throttled. Is it ignoring some clicks outside of a certain window, or just waiting for time to elapse since the last shot?

  • Like 1
Link to comment
Share on other sites

Yes that is correct - you can have a maximum of 2 shots on the screen and there is a waiting time of 20 frames (330ms) between shots. I didn't want allow too many shots at the same time, as the game would be over quickly. Except if the enemies could shoot as much... same effect. But it get's unplayable above 4 - I tested it. Higher levels might allow up to 4 shots (from both player and enemies).

Above 5 the emulator starts to throttle, the CPU then seems to be at it's limit with collision detection. I still have potential for optimizations by using assembler for the collision detection. But already with this much on the screen I'm pretty happy. So I don't know if I will dig into assembler for this.

  • Like 2
Link to comment
Share on other sites

As a long time Galaxian fan, I'm really interested in a game with a shot quota, but "bigger than one".

One alternative to a delay on the follow up shot is to allow the follow up shot when the current shot explodes OR passes a certain part of the screen. So, say, in level 1, if the first shot is 40% from the top or higher ... OR exploded ... its follow-up is available. The in level 2, it's 60% from the top, or higher ("congratulations, your fire control has been upgraded!"). Then in level 3, it's back to level 1 but there are two independent "tracks" ("you can been upgraded to two torpedo tubes!"). Then in level 4, same as level two but two independent track.

  • Like 1
Link to comment
Share on other sites

20 hours ago, BruceMcF said:

One alternative to a delay on the follow up shot is to allow the follow up shot when the current shot explodes OR passes a certain part of the screen. 

Yes, something in the line of this... The delay actually translates to a certain distance, so that effect is already there. But yes - I could allow a second shot as soon as the current one exploded. I'm still fiddling with all the parameters to balance the game. I might also introduce 3 difficulty levels the player can select from. From there difficulty would increase with each level, maybe in ways you have described.

  • Like 1
Link to comment
Share on other sites

Version 0.2 is online.

I've Improved the collision detection and also the handling of shots.

Also added some basic sound effects thanks to @DusanStrakl's example. 

The Web-Emulator struggles a bit with the PSG emulation. Switch off sound effects by pressing 's'.

Edited by AndyMt
  • Thanks 1
Link to comment
Share on other sites

  • 4 weeks later...

Version 0.3 is online now 🙂.

ATTENTION: requires emulator R38. Uses hardware sprite collisions now.

I started implementing multiple levels. Each level has kind of an intro message, to give the game a background story. Also experimented with fade in/out of background images, which looks already quite nice. The enemy formations now behave slightly different per level, at the moment they basically speed up, and move closer. Future versions will improve this.

The enemy sprites are still placeholders. Next version will should improve there.

I hope you have as much fun playing it, as I have with implementing!

Edited by AndyMt
Link to comment
Share on other sites

Thanks for the feedback 🙂. Strange with that hanging level... I'll look into it. The collision detection on the left has an issue which I still try to track down. But it's unrelated to the HW sprite collision detection, that much I know.

The difficulty needs some balancing. I find it hard enough, but I never was a good player...

Link to comment
Share on other sites

Yes, movement patterns are very basic atm. In regards to the order... had Earth as the final stop, but actually: that would mean the invaders would get closest to our homeworld just before being defeated... So I swapped it around and the task is to drive them out of the system.

  • Like 2
Link to comment
Share on other sites

4 hours ago, AndyMt said:

Yes, movement patterns are very basic atm. In regards to the order... had Earth as the final stop, but actually: that would mean the invaders would get closest to our homeworld just before being defeated... So I swapped it around and the task is to drive them out of the system.

Well, there you go, bill it as the more hopeful sequel to the original ... "Invaderz: Counterattack!"

  • Haha 1
Link to comment
Share on other sites

Hi, does not work for me on Windows r38 emulator.

I created a SDcard.img from the files and attached it to x16emu. I can see all the files in the emu and it looks like this:

image.png.d27c0b6fa99d7142ca691b126ad28578.png

But when I load it the screen is getting scrambled and it stops there:

image.thumb.png.cc29da5bb6117f10644d75e7c1764420.png

The web emulator does it correctly. but I am not able to start it on my windows machine ... any idea, what happened?

 

Link to comment
Share on other sites

1 hour ago, SerErris said:

Use some POKEs in the vscale and hscale registers of Vera. Both set to 64 gives you 320x240 . The depth is not dependent ... can be anything that fits into screenram.

So, (monochrome SVGA) 800x600x1bpp = (800 pixels / 8 pixels-per-byte) * 600 lines = 60,000 bytes is possible?

Also, (monochrome XGA) 1024x768x1bpp = 98,304 bytes?

Also, (monochrome WXGA+) 1280x800x1bpp = 128,000 bytes?

32289953247_8cf7c828f0_o.thumb.jpg.df00527d0a87e58072ae9b08c8e3e6d3.jpg

Edited by geek504
Link to comment
Share on other sites

46 minutes ago, geek504 said:

So, (monochrome SVGA) 800x600x1bpp = (800 pixels / 8 pixels-per-byte) * 600 lines = 60,000 bytes is possible?

Also, (monochrome XGA) 1024x768x1bpp = 98,304 bytes?

Also, (monochrome WXGA+) 1280x800x1bpp = 128,000 bytes?

No, have a look here: https://github.com/commanderx16/x16-docs/blob/master/VERA Programmer's Reference.md
The VERA does a fixed resolution of 640x480@60Hz, smaller resolutions are actually done via scaling.

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.

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.

 Share

×
×
  • Create New...

Important Information

Please review our Terms of Use