Jump to content
IGNORED

Legendary Spear - homebrew (completed)


Dave C

Recommended Posts

Update:

  • I've made a few minor tweaks for stability, I'm calling this version the final release. - one more fix... one more version...
  • I did do a little work towards having a splash screen / thinking about different gameplay elements but ultimately that will have to be a new game (or maybe a Director's Cut?). In the meantime I'm mocking up some ideas for a new project, can't decide on whether it should be 2600, 8-bit or ...


This is a Stampede-like side scroller I've been working on off and on, finally made a push to kind of bring it all together. Comments appreciated. Since I've only ever run it on Stella and Javatari kind of wondering if it actually works on real hardware... 

thanks

Update 2022-01-15: "v1.1" - fixing bug reported by SpiceWare (massive instability in dev mode)
Update 2021-12-31: "v1" - minor stability cleanups
Update 2021-10-10: "release candidate 2.1 2.5" - tweaked game end to try and prevent too-quick restart
Update 2021-10-09: "release candidate 2" - difficulty level adjusted, added charging and hit mechanic
Update 2021-10-03: "release candidate 1" - difficulty level adjusted, awards given for high score
 ...
Update 2021-09-11: added gameplay tweaks, and basic sound


ls.png

 

 

Binaries attached but the GitHub Page always has latest binaries and code.

 

 

LegendarySpear_NTSC.bin LegendarySpear_PAL60.bin

Edited by Dave C
complete
  • Like 10
Link to comment
Share on other sites

3 hours ago, Dave C said:


Comments appreciated.

PAL color version please ?

grafik.thumb.png.38dfea572a6721c03a99ac18265cfaa2.png

 

 

3 hours ago, Dave C said:

Since I've only ever run it on Stella and Javatari kind of wondering if it actually works on real hardware... 
 

Except for the colors it works fine on my PAL 2600JR with PlusCart (thanks to @Prizrak for uploading it).

 

  • Like 2
Link to comment
Share on other sites

11 hours ago, Dave C said:

Nice. I'll work that into the build. I had thought maybe I'd have to do more than change the colors, but if it works this way even better.

To make a PAL50 version many changes should be done but luckily almost all not very old CRT TVs and all LCD TVs supports the much better PAL60, that keeps NTSC speed.

Only colors values needs to be converted.

Therefore nowadays almost all homebrews use PAL60.

Link to comment
Share on other sites

3 hours ago, Philsan said:

 

Therefore nowadays almost all homebrews use PAL60.

Ah, I didn't realize PAL60 was a thing, very interesting. I could potentially do PAL50 in a cheap way by making the horizon at the top of the screen bigger. Potentially I could do something more substantial like make the playfield bigger and/or adjust timing but timing is already a little weird, and changing the graphics / adding riders could run me up against RAM/ROM limits (currently using almost all of both).

I've updated the post with NTSC and PAL60 versions. Github repo is here: https://github.com/DChristianson/legendary-spear

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

Nice! I really like this so far and I'm looking forward to seeing it develop. I have a couple of suggestions. First, vary the point value of the enemies, making faster ones worth more. Second, if those big rock things are supposed to be stationary objects you're riding past, they should move at the same speed when there are more than one on screen.

  • Like 1
Link to comment
Share on other sites

On 9/6/2021 at 7:27 AM, KaeruYojimbo said:

First, vary the point value of the enemies, making faster ones worth more. Second, if those big rock things are supposed to be stationary objects you're riding past, they should move at the same speed when there are more than one on screen.

Those are really good ideas.

Just pushed a new version that adjusts the point values as well as the damage.  Also messing with having the rocks be ... almost the same speed. They now move at a speed based on where they are on the screen vertically, trying to go for kind of a parallax effect. 

Big problem now is I'm right at the limit for 2k. I'm sure I can squeeze more out of it but I'm starting to feel a little caged in. I didn't start with the intention of making a 2k game but now I feel compelled...

https://github.com/DChristianson/legendary-spear/releases/tag/v0.8.1

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

ZeroPage Homebrew is playing Legendary Spear on tomorrow's (Tue Sep 14, 2021) stream LIVE on Twitch at 6PM PT | 9PM ET | 1AM GMT+1Day!

 

Games:

 (WATCH IN 1080P60 FOR FULL QUALITY)

 

 

Link to comment
Share on other sites

  • 2 weeks later...

Update - after taking a little break I've come back and made some refinements based on the Twitch feedback...

  • diagonal movement
  • player should leap backwards after charge attack
  • more horizontal range of movement
  • game speeds up as more enemies pass
  • player moves more slowly while charging

Some other ideas haven't been implemented yet

  • make couch compliant (all control from joystick, no reset switch)
  • more points / based on hit accuracy / Joust-style hits
  • enemies should be going other direction being chased / chasing of enemies (both?)
  • enemies have no weapons - look like you are hitting them on the nose

Some glitching is happening on hits - I only just noticed it.

I wound up spending a chunk of the dev time reorganizing the data + code to stay in the 2K range.

  • Originally I had separate graphics for the player and riders and switched to using the same graphics + reflection
  • I think there's now enough room to tune the gameplay - and maybe some minor graphics tweaks


On Javatari and GitHub

https://javatari.org/?ROM=https://github.com/DChristianson/legendary-spear/releases/download/v0.9.0/LegendarySpear_NTSC.bin
https://github.com/DChristianson/legendary-spear

  • Like 3
Link to comment
Share on other sites

Latest changes are up.
 
  - couch compliant (when the game ends you can press fire to restart)
  - more aggressive speed increase
  - refactoring some of the graphics code to free up code space 
  - cleaning up some graphics and sound glitches

 

This version feels like more of a challenge - prior versions were a bit too easy.

Play on Javatari

 

  • Like 1
Link to comment
Share on other sites

I'm now at what feels ~ close to a "real" game... so the latest version is now "release candidate 1".

I just managed to use the last bytes available* to add a reward if you can finish with a max score...

    ... although I haven't been able to get that score myself (well, not without cheating)
 
* I'm sure there's more room to be found - but... I'm taking it as a sign that this last bit of space in the upper reaches of the ROM just got filled

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

Nice game. Attractive, smooth, and responsive.

 

Is there any significance to the enemy colors? My intuition is that enemy color should indicate something about enemy speed or behavior. In Legendary Spear I notice brown enemies tend to be fast but white and red ones seem indistinguishable.

 

I also can't detect any benefit to charging the spear. Post #13 says the player should leap backwards, but I'm not seeing that.

Link to comment
Share on other sites

Thanks for the feedback!

There is a little difference in speed and point value between the colors, but it does seem like there isn't as much variety as I would expect - something I'm going to look at, I'm wondering if I have a bug or two somewhere. I have been having trouble tuning the speed and progression in general. I also haven't come up with anything to do with the charge mechanic (other than the visual effect). 

In the current build the player doesn't so much leap back as bounce back to the original location after an attack - is that what you are seeing? Earlier versions there was no bounce back at all, you would just charge forward and stay there (you also couldn't range very far around the screen)

Edited by Dave C
Link to comment
Share on other sites

Yes, "bounce back to the original location" is what I see.

One possibility is: only charged attacks lunge forward and bounce back, uncharged attacks remain in place. Ideally there would be audible and visual feedback when charging is achieved. The existing pulsing is fine for the visual component, in other words don't start the visual pulsing until charged.

 

Link to comment
Share on other sites

New weekend new release, will update the head messages. I'm likely to take a break after this and do some other projects (other than bug fixes).

  • new hit mechanic - to score you must attack the enemy head on (you can't hit them in the legs and score)
  • new charging mechanic - charge attacks hit anywhere, and can break rocks.
  • cleaned up a bug with enemy variety (was missing a color)

I played around with the charge covering more ground, having the hit location affect score etc but couldn't get a balance. 

  • Like 1
Link to comment
Share on other sites

Thanks, I was looking at Stampede when I first put it together, but it's kind of more like a side scroller now.  But I appreciate now how much variety is in Stampede in terms of the cattle movements and graphics/

I'm now super annoyed at the timing around game end - it's easy to die while pressing the fire button and restart the game quickly when maybe that wasn't your intent. The hit box detection is also a little wonky but not totally sure if that's good or bad. 

Also it's somewhat maddening that I keep finding a byte here and there I can use to make fixes and stay under 2k (why didn't I see some of these before)... and I just realized there's a way to get a whole 23 bytes (at least) 

  • Like 1
Link to comment
Share on other sites

K. Well I was intent on having a "no screens day" but that is blown. Going to call the latest release candidate 2.5 in honor of AtariDOS 2.5.

Fixed a few little errors arounds hits/damage that I was noticing - basically due to some code size optimizations I was using to squeeze the last few bytes like not loading a value into a register that would already have that value as a side effect of some other operation... that weren't valid anymore (TBH I have mixed feelings about those particular kinds of opportunistic tweaks, not only because the fact that I found a lot of them suggests I did a bad job of register management, but also I keep finding the occasional bit of dead code that is totally safe to eliminate).

Link to comment
Share on other sites

  • 2 months later...

Updated for end of year...

  • I've made a few minor tweaks for stability, I'm calling this version the final release.
  • I did do a little work towards having a splash screen / thinking about different gameplay elements but ultimately that will have to be a new game (or maybe a Director's Cut?). In the meantime I've been mocking up some ideas for a new project or two, can't decide on whether it should be 2600, 8-bit or ...
    • I like the idea of something multiplayer with the paddles. The 2600 paddle situation is... interesting...
    • I like the idea of doing more animation... and always liked the style of shooter/fighter/platformers like Rolling Thunder, Ninja Gaiden, Metal Slug... my gut says that seems more like something not to try and fight the stock 2600 hardware with...


       
  • Like 3
Link to comment
Share on other sites

  • 2 weeks later...

Impressive!

 

There are some issues with the game that show up if you have Stella set for Developer Mode, which you should have turned on whenever you're working on a project:

 

186279386_ScreenShot2022-01-14at3_41_35PM.thumb.png.0adef51ef1f62e91dc86cae78e8025f5.png

 

The issues I saw were inconsistent scanline counts, and enemy that would abruptly jump a large distance left or right.

 

This is usually a sign of leaving a # off an immediate mode instruction, such as using LDA 4, LDX 4, CMP 4, etc. when you meant to use LDA #4, LDX #4, CMP #4, etc. Due to the design of the Atari these often work OK on most consoles, but will fail on some. More info here(reply #19).

 

560248176_ScreenShot2022-01-14at3_39_21PM.thumb.png.21da1995f3bce77bfd09755a17a5d464.png

 

1159353106_ScreenShot2022-01-14at3_39_19PM.thumb.png.cb0d9a246139cea7ac5e1907efd57ca7.png

 

680109709_ScreenShot2022-01-14at3_39_51PM.thumb.png.d9fa8074e54f4024011b65deee0eaa01.png

 

 

  • Like 1
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...