Jump to content
IGNORED

Sword of Surtr [COMPLETE](formerly Sword of Iffrit)


ultima

Recommended Posts

I like that you've opened the world up a bit so it's not as on-rails as previous versions. It's going to take me a minute to get used to some of the graphic changes. Have you increased enemy speed? Seems like that dog is charging me at a faster rate. I LOVE the red dragon fight and what comes after! That's fantastic! I also love the runes and how they work. That really helps the exploration/discovery aspect of the game a ton! Well done. The world and its sense of exploration/reward are great.

 

I can still beat the demon boss by standing in his doorway and shooting him, without taking any damage.

 

 

Is there a way to place the cathedral more central on the map so it is more useful? Tucked away where it is, I don't ever have to go there, and being able to spam mushrooms in the caves means that healing isn't as big of a deal.

 

I've figured out that the best way to defeat the birds is to just avoid them entirely.

 

Is there room to add a game variation to increase the difficulty or something to increase replay value?

  • Like 1
Link to comment
Share on other sites

I like that you've opened the world up a bit so it's not as on-rails as previous versions. It's going to take me a minute to get used to some of the graphic changes. Have you increased enemy speed? Seems like that dog is charging me at a faster rate. I LOVE the red dragon fight and what comes after! That's fantastic! I also love the runes and how they work. That really helps the exploration/discovery aspect of the game a ton! Well done. The world and its sense of exploration/reward are great.

 

Thanks, the enemy is faster but I have it slowed back down in my working copy, the graphics are still being tweaked as I learn more about level building so it may go through a few more revisions.

 

I can still beat the demon boss by standing in his doorway and shooting him, without taking any damage.

 

I have been working on his attacks and the current result is too scary to put out there without including extra lives or infinite continues till the game is beaten.

 

Is there a way to place the cathedral more central on the map so it is more useful? Tucked away where it is, I don't ever have to go there, and being able to spam mushrooms in the caves means that healing isn't as big of a deal.

 

The working version has a new path that does that.

 

I've figured out that the best way to defeat the birds is to just avoid them entirely.

 

I just wait for them to fly then back away before shooting.

 

Is there room to add a game variation to increase the difficulty or something to increase replay value?

 

I have a lot of bytes but only about 2 bit variables left, the graphics bank has about 60 bytes left for player sprites. So far I have an idea to use a random number that determines which enemy shows on a screen or may change their starting positions offering less predictable play. Replay Value may take a while to find something as I have no ideas off hand.

 

Thanks again Stan!

Link to comment
Share on other sites

  • 2 weeks later...

Awesome! There is so much to love about this game. I think I've played and beaten at least 5 different iterations of this game as it has developed and it just gets better and better.

 

Seven items added? I only encountered 3, I think, but was still able to complete the game.

 

I have no idea what to do on the screen in the picture below, does it have something to do with that pesky bunny I cannot seem to catch?

 

Love how you've tweaked the difficulty with the Demon Boss, but he only appears on that certain line, is it possible for him to teleport to other parts of the screen? Otherwise I can just stay low and to the center and take him out from underneath.

 

The bow is still grossly overpowered, especially with all the possible power-ups you can get. There is absolutely no reason I can see to ever play with the sword. You may want to think about nerfing the bow a to give more balance between weapons. Bosses go down quickly with the hyperspeed bow and with the attack boost it's not even close.

 

Does the Elf (I think that's him in the forest?) do anything? I cannot seem to get him to notice me once I can see him.

 

LOVE that the world is more open and circular. Makes exploring a lot more fun.

 

Do you plan on taking away the infinite continue in the final version? It's great for play testing, but makes the game super easy and just encourages me to use death as a quick way to get across the map.

 

Here's a very dramatic idea, what if the Cleric is the only way to heal? I'm spamming those cave shrooms so much it negates the specialness of the Cleric. Either that or make the shrooms a one-shot deal that restores like 1/2 your health, so you have to be sure you really need it before you eat it, otherwise you'll have to battle your way back to the Church to get a full heal.

 

I love that you've forced me to get past that damned whirlpool! Historically, I've avoided that thing at every turn, now I have no choice!

 

Still LOVE the runes and unlocking areas with them. Beautiful. Also love the side quest to get the armor.

 

Just keeps getting better! Keep it up!

 

:spidey:

post-409-0-23186600-1517634204_thumb.png

Link to comment
Share on other sites

Yeah it has 3 quest items the rest are not needed just powerups (deadly aim,boots,ice bow,jewels,and Odin's cloak)+the gold,key, Odin's eye,and 2 runes.

The bunny is a free dinner if you can kill it.

I have had an idea to add Genesis controller support (select button on AFP) and a cycling inventory so if all goes well you may need the sword to defeat certain enemies.

The elf is just for looks ( maybe I could kill him and the sheep off and add more enemies or items)

The demon boss is literally the reason I added continues. I'll fix the y position of him for the next update and the continues may stay in as an extra game menu option in the future.

Still working on the mushroom spamming problem, may be able to fix it with a %chance of finding one.

As for the cleric I am thinking of moving all the buildings together to make a village.

Thanks for checking this out Stan ?

Link to comment
Share on other sites

  • 2 weeks later...

changelog

-nerfed the bow (press fire only)

-added y positions to demon boss

-added LEFT difficulty switch A = 1 life / B = retain items & infinite continues

-mushrooms are less often found

-you now have to save the cleric before he is found in the church

-added a few sound FX

And now I have used up ALL the variables but still have a little room to add more sound effects and music also to decide what to do with the elf and sheep.

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

More really great stuff! I appreciate the opportunity to have played this game through so many iterations! It's a winner for sure. If you do enable genesis controller support, don't forget those of us who one day hope to play on an actual console! Can you enable the use of the P2 controller like in Riddle of the Sphinx? I love the idea of needing the sword sometimes and the bow others...

 

The bow is definitely not as powerful as it was, but the sword is still practically useless. I can beat the game with the bow on one life, but I cannot defeat a single bird or dog with the sword. You can forget going up against the axe guy. The enemies just cling to the player and death is certain. Do you have more success with the sword than I do? If so, how?

The no continues option is great for trying a no death run with the bow! Good challenge.

 

I managed to kill the bunny! Hooray, I think. Poor bunny.

 

I like rescuing the Cleric first! Very cool.

 

The elf is cool, but unless you know he's an elf he's just a ball of light and unless he does something he's kind of confusing. I say give him a purpose or set him free.

 

I love the sheep! He's been there since the beginning. I think he has to stay. I always thought he was some kind of little armadillo guy. No matter, I love him!

 

What does the tiny dot do? It seems like it makes the bow fire faster. Also the ice bow, what does it do? I'm not noticing an appreciable difference after obtaining it.

 

The mushroom spawning definitely discourages spamming now. I can still do it, but it's not very rewarding. I think this fixes this.

 

Some questions with visual aids:

 

After death, I am respawned as my mutilated corpse and not a healthy vital warrior ready to try again. I can even shoot my bow as a corpse! Any movement of the joystick restores me to my hearty form! Is this intentional?

 

I was killed by a mushroom. Are there poisonous ones out there or is this a mistake? I had just killed a dog and he dropped the shroom. I ate the shroom and died. Mama warned me...

 

The mushroom in the dwarf caverns still respawns every time you enter the room.

 

This is my victory screen. Can you tell by looking if I missed anything?

 

Thank you again! :spidey:

post-409-0-44440500-1518900931_thumb.png

post-409-0-07768100-1518900937_thumb.png

post-409-0-52573300-1518900943_thumb.png

post-409-0-23195500-1518900950_thumb.png

Edited by StanJr
Link to comment
Share on other sites

More really great stuff! I appreciate the opportunity to have played this game through so many iterations! It's a winner for sure. If you do enable genesis controller support, don't forget those of us who one day hope to play on an actual console! Can you enable the use of the P2 controller like in Riddle of the Sphinx? I love the idea of needing the sword sometimes and the bow others...

 

The bow is definitely not as powerful as it was, but the sword is still practically useless. I can beat the game with the bow on one life, but I cannot defeat a single bird or dog with the sword. You can forget going up against the axe guy. The enemies just cling to the player and death is certain. Do you have more success with the sword than I do? If so, how?

The no continues option is great for trying a no death run with the bow! Good challenge.

 

I managed to kill the bunny! Hooray, I think. Poor bunny.

 

I like rescuing the Cleric first! Very cool.

 

The elf is cool, but unless you know he's an elf he's just a ball of light and unless he does something he's kind of confusing. I say give him a purpose or set him free.

 

I love the sheep! He's been there since the beginning. I think he has to stay. I always thought he was some kind of little armadillo guy. No matter, I love him!

 

What does the tiny dot do? It seems like it makes the bow fire faster. Also the ice bow, what does it do? I'm not noticing an appreciable difference after obtaining it.

 

The mushroom spawning definitely discourages spamming now. I can still do it, but it's not very rewarding. I think this fixes this.

 

Some questions with visual aids:

 

After death, I am respawned as my mutilated corpse and not a healthy vital warrior ready to try again. I can even shoot my bow as a corpse! Any movement of the joystick restores me to my hearty form! Is this intentional?

 

I was killed by a mushroom. Are there poisonous ones out there or is this a mistake? I had just killed a dog and he dropped the shroom. I ate the shroom and died. Mama warned me...

 

The mushroom in the dwarf caverns still respawns every time you enter the room.

 

This is my victory screen. Can you tell by looking if I missed anything?

 

Thank you again! :spidey:

I don't think it's going to work in the standard kernel adding the inventory control. It needs 1 variable and at least 1 bit to work. Now with that said the superchip version I have been working on will have it but I may as well save that for my next game.

I think you bring up a good point about the sword it seems the collision detection allows the enemy to get right on top of you. I'm going to look into this and see if I can get an earlier detection or pad in some more moves on the enemy.

 

The tiny dots are gems that unlock boots, ice bow, and Odin's cloak. They appear at various points in the game. The boots speed the player up 5% (fast enough to run straight thru the traps) the ice bow stops enemies if your using it the enemy will turn blue on the first hit but you can still take damage. Odin's Cloak is armor for immortals.

 

The mushroom death hmm? It's a bug I need to check that.

 

The death pose only happens sometimes I look into that too. When I first added that dying in the boat would have you revived as a boat in your house lol

 

Thanks I forgot about the shroom in dwarf cave get that on the next one.

 

I can't tell if you found every item but maybe I can code some alternate endings that you need certain items to get them.

Link to comment
Share on other sites

  • 3 weeks later...

Changelog:

-fixed dead player can fire his bow in the house

-enemies will not wail on you if using the sword

-demon boss fires 1 fireball not 100 million

-added the sword of surtr (i wonder what that means?)

-the gems must now be collected to unlock the ice bow

-elemental weapons work in sword and bow form

-re-added auto fire on the bow (my thumb hurt :P)

 

want a real challenge? beat the game with 1 life

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

Ok! I finally beat the game with sword only. I imagine beating the game sword-only with one life is incredibly challenging. I'll have to give that try when I have more time.

 

Some notes:

On the Western Shore, you don't have to get in the boat to move to the next screen, you can enter the sea from below the ship and you are magically on the ship on the next screen (see pic)

 

When I rescue the Cleric he doesn't refill my HP before high tailing it out of there. I thought he did that in the last version. Ungrateful, he is.

 

Reducing the Demon Boss attack has made him super easy again. Since he only shoots once and contact with him does not decrease HP, all you have to do is wait for him to appear and shoot, then wail on him up close. Easy with sword, super easy with bow.

 

You don't have to fight the Vine Boss (?) that guards the armor. You just have to scoot by him into the armor room. When you come back he's gone. (I love the design of that sprite!)

 

After getting the sword from the Dragon, I also found a blue item a little ways along the path. I cannot tell if it did anything to me.

 

After getting the sword from the Dragon ANYTHING you stab/shoot burns to a crisp. And I mean anything. The shopkeeper, the sheep, the figurehead on the long house (see pics). Truly this is a dangerous weapon. Is that intentional?

 

I still cannot find anything to do on the big green castle screen (see pic). Am I missing something?

 

Such a fun game. This will be a treat to have on cart.

 

 

 

post-409-0-25592400-1520801763_thumb.png

post-409-0-54047900-1520802034_thumb.png

post-409-0-07706000-1520802046_thumb.png

post-409-0-33005500-1520802059_thumb.png

  • Like 2
Link to comment
Share on other sites

Ok here's a quick fix :

 

-demon boss blasts fireballs

-western shore is tightened up (boats adjusted)

-cant run past the boss guarding the armor

-the cleric will heal you for saving him

 

And to answer that -the forest temple requires 3 gems to unlock a "special" weapon

-the blue thing you pick up after defeating the dragon is "special" armor

 

 

Currently if there are no other issues I will do the PAL and SECAM conversions.

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

In my experience, there is no better way to find bugs in a project than to call it done. :)

 

I gave the most recent version a try on real hardware (an Atari Jr.). This game keeps getting better and better! I liked having a choice of bow or sword in the beginning. The bow is probably the better weapon, but I found the sword to be the most fun, so I used that more. There's still a lot more for me to find and explore after spending a good amount of time playing, and that's always a good sign. :)

 

I did notice some screen jumpiness in certain parts, and that usually means that you have exceeded your cycle count in those places. Let me know if you would like any help tracking these down and fixing them.

 

This is one that I'll definitely be buying on cart if and when it is available!

  • Like 1
Link to comment
Share on other sites

I tried this half a year ago and it was already good, and I retried it just now, and this really is an awesome game. The size of there world is impressive, as is the amount of stuff that's there to be discovered. I just got hooked for half an our or so, and I managed to beat the game, although I am not 100% sure what precisely I did :) I definitely hope this gets a cartridge release.

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

I fixed the demon boss back to a fireball extravaganza plus added a tracker for gems collected . Optimized as much as my brain can handle but can not get the cycle counts down. I really don't understand how to fully use the debugger in Stella ?

 

I have no clue what to do to improve this any so

I'm including the source. If anyone wants to contribute some ideas for improving this engine take a look and see if you can build it.

Edited by ultima
Link to comment
Share on other sites

I wasn't able to compile the one you sent before, but this one is compiling file for whatever reason. Anyway, I would suggest making use of all of the spare cycles that you aren't using in vblank, and moving some of the stuff you check every cycle into there to free up cycles. Consider adding something like this to the end of your file:

MyVBlank /* Use cycles in vblank to free up main loop */
 goto _ReturnToVblank bank8
/* End MyVBlank */


 rem  need music cue for intro, music cue for secrets, music cue for ending credits
   _Ch1_Duration = 1
   goto __Skip_Ch_1


 bank 8 
 temp1 = temp1
 
 vblank
 goto MyVBlank bank7
_ReturnToVblank
 return

Since you don't have many free bytes in bank 8, vblank immediately jumps to a routine in bank 7 where you have plenty of space.

 

Also, you have a lot of checks throughout the code for "if _Enemy=X then ...". Rather than having a lot of repeated if statements using up cycles, you can make some data tables to hold whatever value you are checking for, and have a single if statement. I think these would be good candidates to move to the vblank routine in bank 7 where you have plenty of space for code and data tables.

 

Also, as a minor note, the "temp1=temp1" statement at the start of each bank isn't needed unless you are using DPC+, I believe.

 

More experienced members will probably have other suggestions as well.

Link to comment
Share on other sites

https://giant.gfycat.com/FixedGrippingGull.webm

 

Looks like when you change room you jump directly to the new room from having allready drawn the former playfield and gone through all that rooms code on the same frame,

make shure a drawscreen is called first.

 

 

And you can make this faster by using then if instead of the first && like this..

if _Room=2 then if player1x>72 && player1x<85 && player1y<55 then _Room=46: player1y=85: _Bit5_Frozen{5}=0: goto DS46 bank5

 

then if _Room is not 2 it won't check if player1x>72 && player1x<85 && player1y<55 like it does now

you could do that for all rooms..

 

__Roomchange
if _Room=2 && player1x>72 && player1x<85 && player1y<55 then _Room=46: player1y=85: _Bit5_Frozen{5}=0: goto DS46 bank5
if _Room=4 && player1x>66 && player1x<86 && player1y<55 && player1y>45 then _Room=42: player1x=117: player1y=85: _Bit5_Frozen{5}=0: goto DS42 bank5
if _Room=5 && player1x>108 && player1x<118 && player1y<65 then _Room=39: player1y=84: _Bit5_Frozen{5}=0: goto DS39 bank4
if _Room=6 && player1x>44 && player1x<56 && player1y<71 then _Room=27: player1x=78: player1y=85: _Bit5_Frozen{5}=0: goto DS27 bank4
if _Room=7 && player1x>114 && player1x<134 && player1y<25 then _Room=37: player1y=18: _Bit5_Frozen{5}=0: goto DS37 bank4
if _Room=8 && player1x>62 && player1x<77 && player1y<62 && player1y>52 then _Room=40: player1x=21: player1y=85: _Bit5_Frozen{5}=0: goto DS40 bank4
if _Room=10 && player1x>80 && player1x<91 && player1y<63 && player1y>55 then _Room=31: player1x=77: player1y=77: _Bit5_Frozen{5}=0: goto DS31 bank4
if _Room=13 && player1x>46 && player1x<66 && player1y<46 && player1y>40 then _Room=37: player1y=84: _Bit5_Frozen{5}=0: goto DS37 bank4
if _Room=15 && player1x>87 && player1x<96 && player1y<77 && player1y>60 then _Room=25: player1x=78: _Bit5_Frozen{5}=0: goto DS25 bank4
if _Room=18 && player1x>99 && player1x<113 && player1y<47 && player1y>40 then _Room=38: player1y=84: _Bit5_Frozen{5}=0: goto DS38 bank4
if _Room=19 && player1x>51 && player1x<64 && player1y<63 then _Room=26: player1x=78: player1y=85: _Bit5_Frozen{5}=0: goto DS26 bank4
if _Room=24 && player1x>58 && player1x<78 && player1y<62 then _Room=32: player1x=46: player1y=85: _Bit5_Frozen{5}=0: goto DS32 bank4
if _Room=32 && player1x>88 && player1x<104 && player1y<31 then _Room=34: player1y=85: _Bit5_Frozen{5}=0: goto DS34 bank4
if _Room=35 && player1x>96 && player1x<106 && player1y<62 then _Room=36: player1y=85: _Bit5_Frozen{5}=0: goto DS36 bank4
if _Room=37 && player1x>124 && player1x<134 && player1y>28 then _Room=7: player1y=34: _Bit5_Frozen{5}=0: goto DS7 bank3
if _Room=41 && player1y<55 then _Room=56: player1x=25: player1y=84: _Bit5_Frozen{5}=0: goto DS56 bank5
if _Room=47 && player1x>32 && player1x<52 && player1y<47 then _Room=48: player1y=75: _Bit5_Frozen{5}=0: goto DS48 bank5
if _Room=51 && player1x>114 && player1x<134 && player1y<47 then _Room=50: player1y=75: _Bit5_Frozen{5}=0: goto DS50 bank5
if _Room=52 && player1x>71 && player1x<90 && player1y<47 then _Room=51: player1y=84: _Bit5_Frozen{5}=0: goto DS51 bank5
if _Room=59 && player1x>84 && player1x<101 && player1y<76 && player1y>59 then _Room=23: player1y=84: _Bit5_Frozen{5}=0: goto DS23 bank4
if _Room=54 && player1x>77 && player1x<90 && player1y<40 then _Room=64: player1y=84: _Bit5_Frozen{5}=0: goto DS64 bank5
if _Room=9 && player1x>49 && player1x<70 && player1y<24 then _Room=66: player1y=84: _Bit5_Frozen{5}=0: goto DS66 bank5
if _Enemy=14 then __Dontrunthat
if _Room=36 && player1y<59 then _Ch1_Sound=8: _Ch1_Duration=1: _Ch1_Counter=0: goto __DragonBoss bank1
But would be even better if you just put
if player1x>72 && player1x<85 && player1y<55 then _Room=46: player1y=85: _Bit5_Frozen{5}=0: goto DS46 bank5
at the beginning of DS2
and instead of jumping directly to DS46 just keep _Room=46 and que the new room until next frame (after a drawscreen)
don't think this works?
on _Room goto DS0 DS1 DS2 DS3 DS4 DS5 DS6 DS7 DS8 DS9 DS10 DS11 DS12 DS13 DS14 DS15 DS16 DS17 DS18 DS19 DS20 DS21 DS22 DS23 DS24 DS25 DS26 DS27 DS28 DS29 DS30 DS31 DS32 DS33 DS34 DS35 DS36 DS37 DS38 DS39 DS40 DS41 DS42 DS43 DS44 DS45 DS46 DS47 DS48 DS49 DS50 DS51 DS52 DS53 DS54 DS55 DS56 DS57 DS58 DS59 DS60 DS61 DS62 DS63 DS64 DS65 DS66 DS67 DS68
I would do something like this
Mainloop
(player movement, weapon logic and code that is used allways)
on _Room goto 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
temp1=_Room-18
on temp1 goto 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
temp1=_Room-35
on temp1 goto 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
temp1=_Room-52
on temp1 goto 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
0
goto DS0
1
goto DS1
2
goto DS2 bank4
3
goto DS3 bank5
_draw
drawscreen
goto Mainloop
---------------------------------------------------
and for example DS3 would look something like this
DS3
(check if player is at position to change room) if it is, dont jump there just change _Room to that number (que it until next frame)
(playfield and everything else related to this room)
goto _draw bank3
Edited by Lillapojkenpåön
Link to comment
Share on other sites

Thanks guys I have been working on it. The vblank is easy to add but I can't seem to find the right code to run in it yet.

The then if's were a snap to add in the breaking down of the playfield portion is quite challenging not sure the playfield can coexist in the same space as the arguments but maybe split the arguments up to check just the current room then draw the playfield if it is on cue. I should have something going here soon. Thanks again

Link to comment
Share on other sites



excerpts from two bB.asm files




.L00 ; if a < b then if a < b then if a < b then c = c
LDA a
CMP b
BCS .skipL00
.condpart0
LDA a
CMP b
BCS .skip0then
.condpart1
LDA a
CMP b
BCS .skip1then
.condpart2
LDA c
STA c
.skip1then
.skip0then
.skipL00



.L00 ; if a < b && a < b && a < b then c = c

LDA a
CMP b
BCS .skipL00
.condpart0
LDA a
CMP b
BCS .skip0then
.condpart1
LDA a
CMP b
BCS .skip1then
.condpart2
LDA c
STA c
.skip1then
.skip0then
.skipL00
.


ie they produce the same code

Link to comment
Share on other sites

 

 

 

excerpts from two bB.asm files

 

 

 
.L00 ;  if a  <  b then if a  <  b then if a  <  b then c  =  c
LDA a
CMP b
     BCS .skipL00
.condpart0
LDA a
CMP b
     BCS .skip0then
.condpart1
LDA a
CMP b
     BCS .skip1then
.condpart2
LDA c
STA c
.skip1then
.skip0then
.skipL00
 
 
 
.L00 ;  if a  <  b  &&  a  <  b  &&  a  <  b then c  =  c
 
LDA a
CMP b
     BCS .skipL00
.condpart0
LDA a
CMP b
     BCS .skip0then
.condpart1
LDA a
CMP b
     BCS .skip1then
.condpart2
LDA c
STA c
.skip1then
.skip0then
.skipL00
.

ie they produce the same code

I see. Guess the then if's won't be saving anything then, thanks for the heads up bogax.

 

Can anyone here write up a "simple" program to demonstrate the concept of reading a table? Is it similar to using data statements?

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...