Jump to content

Photo

The Legend of Tilda


84 replies to this topic

#76 acadiel OFFLINE  

acadiel

    Dragonstomper

  • 916 posts
  • www.hexbus.com
  • Location:USA

Posted Mon Aug 7, 2017 6:14 PM

I brought it up in JS99er to take a quick look.  Amazing job!

 

(Yeah, I know I've been quite lately... been dealing with health problems.  I'm still here though.)



#77 digdugnate OFFLINE  

digdugnate

    Moonsweeper

  • 449 posts
  • Location:SW Missouri

Posted Mon Aug 7, 2017 7:30 PM

I brought it up in JS99er to take a quick look.  Amazing job!

 

(Yeah, I know I've been quite lately... been dealing with health problems.  I'm still here though.)

i didn't think to use JS99er.  The game is slick!



#78 Asmusr ONLINE  

Asmusr

    River Patroller

  • 2,399 posts
  • Location:Denmark

Posted Tue Aug 8, 2017 8:37 AM

Very nice. Keep up the good work.  :thumbsup:



#79 adamantyr ONLINE  

adamantyr

    Stargunner

  • 1,125 posts

Posted Tue Aug 8, 2017 8:51 AM

Yes very nice!

The movement of the monsters is perfect, although I did notice they aren't shooting projectiles. I imagine the sprite use and 4 per line limit is starting to get annoying.

One aspect of utilizing the 32k would be you could do some good optimizations, such as a rotating sprite table in CPU memory.

#80 PeteE OFFLINE  

PeteE

    Star Raider

  • Topic Starter
  • 68 posts
  • Location:Beaverton, OR

Posted Tue Aug 8, 2017 10:52 AM

Yes very nice!

The movement of the monsters is perfect, although I did notice they aren't shooting projectiles. I imagine the sprite use and 4 per line limit is starting to get annoying.

One aspect of utilizing the 32k would be you could do some good optimizations, such as a rotating sprite table in CPU memory.

 

The projectiles are on my todo list, but they didn't make the cut for this release.  Some projectiles will also bounce off the player if they face the shield toward it, and I'll work on that too when I add projectiles.

 

The 4 sprites per line limit doesn't seem too terrible. What I'm doing now is the 2 hero sprites and 4 status bar sprites are always highest priority, since I never want them to flicker.  The rest are written in forward order, or in reverse order, alternating every frame, so that sprites on the same line will appear to flicker.  In reverse order, I write the VDP address once, then copy 6*4 bytes from sprites 0-5,  then copy 4 bytes from 31st sprite to the VDP then the 30th sprite, 29th, etc.  This is the SPRUPD (sprite update) function in tilda_b0.asm.  There is a chance that sprites in the middle of the list will not be displayed if too many sprites are on the same line, but this happens very rarely (and most people probably have the 4-sprites-per-line limitation turned off in an emulator or the F18A.)  I am keeping a copy of the sprite list table in the fast CPU RAM even though it takes 128 bytes out of the total 256.  Manipulating the sprite list is the bulk of the work for each frame, so it seemed like a good idea to use the fast RAM instead of the slower expansion RAM.

 

 

Hmm, when I brought it up in Classic99, it loads the first screen but if I move any direction but down it scrolls up the menu screen and then locks up. Anyone else experiencing that?

 

UPDATE: Nevermind, figured it out. The joystick #2 was also configured to PC keyboard, which meant it was sending double inputs and causing some hijinks.

 

Ah, I never considered that configuration.  All of the joystick 2 inputs are mapped to the 3 action buttons: sword, item, and menu screen.  This is so it will work with various 6-button controller configurations.  This also reminded me of the alpha-lock problem, and other games I've seen ask the user to press the joystick up just to make sure alpha-lock is off, that would also help to ensure joystick 1 is being used. Thanks!

 

 

No need to be sorry, as far as I am concerned; I keep coding in this way because I'm using the classic assembler in E/A and TASM on the Geneve.

I'm not sorry. :)  It feels retro to use all caps, and was intended to set up the joke about caps being used for shouting and the computer being old and hard of hearing: "Eh, speak up, sonny"



#81 adamantyr ONLINE  

adamantyr

    Stargunner

  • 1,125 posts

Posted Tue Aug 8, 2017 11:38 AM

 

The projectiles are on my todo list, but they didn't make the cut for this release.  Some projectiles will also bounce off the player if they face the shield toward it, and I'll work on that too when I add projectiles.

 

The 4 sprites per line limit doesn't seem too terrible. What I'm doing now is the 2 hero sprites and 4 status bar sprites are always highest priority, since I never want them to flicker.  The rest are written in forward order, or in reverse order, alternating every frame, so that sprites on the same line will appear to flicker.  In reverse order, I write the VDP address once, then copy 6*4 bytes from sprites 0-5,  then copy 4 bytes from 31st sprite to the VDP then the 30th sprite, 29th, etc.  This is the SPRUPD (sprite update) function in tilda_b0.asm.  There is a chance that sprites in the middle of the list will not be displayed if too many sprites are on the same line, but this happens very rarely (and most people probably have the 4-sprites-per-line limitation turned off in an emulator or the F18A.)  I am keeping a copy of the sprite list table in the fast CPU RAM even though it takes 128 bytes out of the total 256.  Manipulating the sprite list is the bulk of the work for each frame, so it seemed like a good idea to use the fast RAM instead of the slower expansion RAM.

 

 

 

Ah, I never considered that configuration.  All of the joystick 2 inputs are mapped to the 3 action buttons: sword, item, and menu screen.  This is so it will work with various 6-button controller configurations.  This also reminded me of the alpha-lock problem, and other games I've seen ask the user to press the joystick up just to make sure alpha-lock is off, that would also help to ensure joystick 1 is being used. Thanks!

 

I'm not sorry. :)  It feels retro to use all caps, and was intended to set up the joke about caps being used for shouting and the computer being old and hard of hearing: "Eh, speak up, sonny"

 

Ah yes, it makes sense to keep a copy of the table in the scratch-pad!

 

The main thing with the 32k expansion is you could explore a "memory for time" approach. Generally speaking, any algorithm can be written to be faster by just being more memory wasteful. I'd need to look at your code first to see what could be done, but I've explored it with my work on the Gauntlet clone.

 

I understand you have a goal here though, to not require the 32k expansion, so I'll be quiet about it. :) Just don't let it stop you from finishing the game!



#82 Tursi OFFLINE  

Tursi

    River Patroller

  • 4,710 posts
  • Location:BUR

Posted Tue Aug 8, 2017 12:04 PM

Seriously impressive work here :)

I also never noticed before today that the Triforce on the title page was actually Texas. ;)

#83 schmitzi OFFLINE  

schmitzi

    River Patroller

  • 3,766 posts
  • ToXiC
  • Location:Germany

Posted Tue Aug 8, 2017 2:01 PM

Oh, there is a sword ??? Can I use that on keyboard ?



#84 PeteE OFFLINE  

PeteE

    Star Raider

  • Topic Starter
  • 68 posts
  • Location:Beaverton, OR

Posted Tue Aug 8, 2017 2:19 PM

Seriously impressive work here :)

I also never noticed before today that the Triforce on the title page was actually Texas. ;)

Thanks!  I've been calling it the "TIFORCE", so what other shape would it have? ;-)

 

Oh, there is a sword ??? Can I use that on keyboard ?

The Enter key is sword.  (On classic99 you can also use Tab since I think that is the emulated joystick fire button)



#85 schmitzi OFFLINE  

schmitzi

    River Patroller

  • 3,766 posts
  • ToXiC
  • Location:Germany

Posted Tue Aug 8, 2017 2:38 PM

Thanks. I love that I can run with ASDW keys <3






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users