Jump to content

Photo

Anguna (WIP)

homebrew assembly wip

44 replies to this topic

#1 gauauu OFFLINE  

gauauu

    Moonsweeper

  • 401 posts
  • Location:Illinois

Posted Mon Feb 29, 2016 4:43 PM

After about a year-and-a-half of work, I decided it was time to get some feedback on my my first Atari game, a work-in-progress adventure game, Anguna.

The goal is a 2600 version of my Gameboy Advance homebrew game of the same name.  I've still got quite a bit of work to do, but it's at least playable right now.  My goal is to it in 16K, without any extra ram or DPC or anything like that. (despite having a lot of content, I still want to feel at least some of the constraints of Atari programming!)

 

(The video here doesn't do well with the sprite flicker I use with multiple enemies)

 

The goal is a fairly large-world action-adventure game, with powerups, items, multiple keys, etc.  Currently, I just have the first starting dungeon finished, as well as a tiny bit of the overworld around the first dungeon. 

The inventory/map screen (which can be accessed via the color/bw switch) shows the player's inventory and stats, as well as your position on the world map. (the inventory isn't working yet, it currently shows all sorts of items and keys that you haven't collected). 

If you manage to find the bow and arrow in the first dungeon, you can use it by holding the attack button for more than half a second. 

I still have a lot to do, but thought I'd post what I have, to brave everyone's feedback.  Some next steps I hope to do are:

  • Improve the player animation (actually have an animation for attacking)
  • Add more enemies (and fix enemy spawn locations in the overworld)
  • Introduce "checkpoint" screens, and handle game-over better
  • Get a password system working

 

The source is all up under a pretty free license at Bitbucket.

Some questions for anyone that tries it:

  1. Is the Color/BW switch an acceptable way to view the subscreen? Would the controller 2 button be better?
  2. Is the difficulty level ok?
  3. If anyone happens to try on a TV, how are the colors? I know they may not match, but I want to make sure they at least contrast enough to be playable and look ok.
  4. Did you hit any showstopper issues (crashing, getting stuck in a wall, etc?)

Attached Files


Edited by gauauu, Mon Feb 29, 2016 4:55 PM.


#2 Mountain King OFFLINE  

Mountain King

    Dragonstomper

  • 690 posts
  • Location:Philadelphia, PA

Posted Mon Feb 29, 2016 6:27 PM

Nice start! I really enjoy games where I can explore. I like that there are some surprises. I actually didn't read your blurb about the game until after I tried it, so I didn't really know what to expect. I found the bow and made it to the outside. I also found a sword. The game might be a little too easy. But I really like finding things I never saw before.



#3 Jinroh OFFLINE  

Jinroh

    Dragonstomper

  • 696 posts
  • Catgirl Maid Lover

Posted Tue Mar 1, 2016 10:33 AM

Really cool! I'm digging it, and you have it executed well on the VCS. :D I'll give it a go later, but I like what I see from the video.

 

Plus your main character kinda reminds me of Coach McGuirk. From Home Movies. :D

 

coach-mcguirk2.jpg


Edited by Jinroh, Tue Mar 1, 2016 11:10 AM.


#4 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 23,941 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Tue Mar 1, 2016 11:12 AM

Very cool! I always like to see people coding in Assembler. :thumbsup:

 

Have you considered a dungeon generator? A randomly generated map would increase replay value massively.

 

BTW: Your Stella version is quite outdated. :)



#5 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Tue Mar 1, 2016 11:53 AM

I also found a sword. 

 

That's an attack power up. You can see your attack power on the subscreen, it permanently increases it.

 

 

Have you considered a dungeon generator? A randomly generated map would increase replay value massively.

 

 

Actually, I considered it when making the original Gameboy Advance version.  It makes the game more replayable (more roguelike) but potentially can detract from the overall world design, (In theory, I can build a more interesting world than the random generator).  And for some reason, in my own mind, a game world is more "real" if it's static.  But I'll think about if that's something that might be fun to add in a secondary spinoff game.

 

 

BTW: Your Stella version is quite outdated. :)

 

I know it. It's the version that comes in the app repos on my linux distro. I ran a bleeding-edge version for awhile, but the newer versions have a weird issue on my machine where the debugger is extremely slow to show/hide, and moves the window around each time it appears, which is really painful, so I reverted back for now.



#6 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 23,941 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Tue Mar 1, 2016 11:59 AM

Actually, I considered it when making the original Gameboy Advance version.  It makes the game more replayable (more roguelike) but potentially can detract from the overall world design, (In theory, I can build a more interesting world than the random generator).  And for some reason, in my own mind, a game world is more "real" if it's static.

Oh, it would be static. Just based on either simply random or well chosen random seeds. In either way, you could cram a lot more worlds into the cart.

I know it. It's the version that comes in the app repos on my linux distro. I ran a bleeding-edge version for awhile, but the newer versions have a weird issue on my machine where the debugger is extremely slow to show/hide, and moves the window around each time it appears, which is really painful, so I reverted back for now.

Maybe it is just that the default video renderer setting has been changed?

Edited by Thomas Jentzsch, Tue Mar 1, 2016 12:23 PM.


#7 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Fri Mar 4, 2016 3:49 PM

Well, I've managed to get a password-save system working. (and now I'm down to 57 bytes free in that bank!)  Now I need to add more game content so the password will actually be useful!

 

 

N1Pw4NZ.gif



#8 walaber OFFLINE  

walaber

    Chopper Commander

  • 159 posts

Posted Fri Mar 4, 2016 5:00 PM

The game plays very well, nice job!  Already a nice sense of adventure, and variety in the environments and enemies.  I tried it on hardware, and it looks pretty good (didn't make it out of the first dungeon).  only problem so far is the black bats are very hard to see over the dark red background on my crappy, noisy CRT TV.

 

keep up the great work!  Also cool to see the source available for people to see.  It's cool to see how such a complex assembly game can be organized and set up.



#9 Lumi OFFLINE  

Lumi

    Star Raider

  • 82 posts

Posted Fri Mar 4, 2016 6:49 PM

This is excellent! I only played a bit, but it seems like you've put a lot of work into it, and I'm guessing the end result will be quite complex and fun.



#10 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Fri Mar 4, 2016 10:58 PM

 only problem so far is the black bats are very hard to see over the dark red background on my crappy, noisy CRT TV.

 

 

Yeah, I had this problem on my TV as well -- it was worse before, I modified the colors slightly to try to improve it. I guess I need to modify it further.

 

  It's cool to see how such a complex assembly game can be organized and set up.

 

Well, I'm realizing partway through that I don't like all the choices I made about organizing the code. It's getting messier as I go, particularly in sections where I try to squeeze in random subroutines in empty space in otherwise mostly-full banks.  It's a little embarrassing how messy it's getting, but that happens, I guess. 

Really, I wish dasm had a setting that allowed me to use macros that haven't been defined yet, and have them be defined later in the code. That would make it easier to keep related macros and actual subroutines grouped together in the source code, and switch between the two if I decide it's necessary.



#11 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Mon Mar 7, 2016 10:19 PM

This week's improvement was adding dark rooms, where you can't see much if you haven't found the lantern yet. I shamelessly stole the mechanic from Adventure for having a small area illuminated:

QZ4JaNR.gif

 

Now I'm getting desperately low on ROM space, so I think it's time to do some compacting and optimization!


Edited by gauauu, Tue Mar 8, 2016 11:51 AM.


#12 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 23,941 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Tue Mar 8, 2016 1:55 AM

Well, I've managed to get a password-save system working.

How about supporting the SaveKey too?

#13 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Tue Mar 8, 2016 11:56 AM

How about supporting the SaveKey too?

 

I just learned about the existence of those things a couple days ago when you posted about it in the Drive thread.  That said, I'd sure like to. It's getting added to my list of features that I'm trying to squeeze into the ROM space I have left.

 

Really, it will depend on how much space I manage to free up during this optimization/cleanup pass that I'm about to do. Currently I don't have enough space to finish my features that I already know I want, but I'm pretty confident that I can free up a couple hundred bytes at least. I've got a couple of macros that I reuse a few places that I can probably convert to proper subroutines if I'm clever enough, and a few places where I can force some of my graphical data to overlap a bit better (there's enough in common between room layouts that I can force some of them to share chunks of rom space).

 

I think I can also shrink my world size by about 10-15% without negatively impacting the gameplay, which would free up another couple hundred bytes.


Edited by gauauu, Tue Mar 8, 2016 11:56 AM.


#14 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 23,941 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Tue Mar 8, 2016 12:02 PM

...and a few places where I can force some of my graphical data to overlap a bit better...

Have a look at DOOD.



#15 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Tue Mar 8, 2016 12:11 PM

Have a look at DOOD.

 

Nice, that looks really clever.  In my case, just letting a room layout use the same PF0 data as another, for example, will save me a good bit of space (right now the playfield data for each layout is in a big block per layout).  But I'll take a look at that and see how much space it might save me.



#16 Jinroh OFFLINE  

Jinroh

    Dragonstomper

  • 696 posts
  • Catgirl Maid Lover

Posted Tue Mar 8, 2016 2:33 PM

Man very cool developments! I really like the dark rooms! I forgot to subscribe to this thread, but really cool what you have going on so far!



#17 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Thu Mar 10, 2016 10:23 PM

Man very cool developments! I really like the dark rooms! I forgot to subscribe to this thread, but really cool what you have going on so far!

 

Thanks, the kind words are a good encouragement to keep me at it!

 

After a first pass at compacting things, I freed up about 200 bytes from compacted room definitions (where I define what's IN a room) and 400 bytes from compacting room layouts (the graphics for rooms).  And that's without cutting any content yet -- I can still cut a row or two of rooms and gain anotther 150 bytes if I really need to.  And now with these changes, adding new room layouts will be significantly cheaper, so I can pack more of them than I had estimated.

 

So the good news is that there's a pretty reasonable chance I'll be able to support the SaveKey after all.... 



#18 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 23,941 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Fri Mar 11, 2016 2:15 AM

If you are looking for more feedback (especially from non-developers), start a thread in the 2600 forum too.



#19 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Sat Mar 12, 2016 12:02 AM

If you are looking for more feedback (especially from non-developers), start a thread in the 2600 forum too.

 

Thanks for the suggestion, as a newcomer here, I wasn't sure what was the proper protocol :)  I'll try to get a little more cleaned up and finished first, then I'll post it there.



#20 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Mon Apr 11, 2016 12:25 PM

I've been quiet, but making a lot of progress.  I'm hoping to finish the first half of the game in the next couple weeks, and post a demo & thread in the general 2600 forums. Until then, I have some specific feedback I'd like to get about a question:

 

I'm thinking about adding an experience/level-up mechanic. It would only affect HP (your attack/defense would still come from collected powerups). The idea is to encourage fighting the various enemies in the overworld instead of just running by them. The downside is that it allows/encourages grinding, which I hate.   So, thoughts/opinions?  Would it improve or worsen the game?



#21 Propane13 OFFLINE  

Propane13

    Stargunner

  • 1,649 posts
  • Location:Charleston, SC

Posted Wed Apr 13, 2016 12:06 PM

Neat.



#22 karokoenig OFFLINE  

karokoenig

    River Patroller

  • 2,227 posts
  • Location:Germany

Posted Wed Apr 13, 2016 12:46 PM

Posting to keep being reminded of this WIP. Looks very promising.



#23 gliptitude OFFLINE  

gliptitude

    Moonsweeper

  • 326 posts
  • Location:Location

Posted Fri Apr 15, 2016 3:08 AM

I'm thinking about adding an experience/level-up mechanic. It would only affect HP (your attack/defense would still come from collected powerups). The idea is to encourage fighting the various enemies in the overworld instead of just running by them. The downside is that it allows/encourages grinding, which I hate.   So, thoughts/opinions?  Would it improve or worsen the game?


I'm not sure if it would help or hurt. My first thought was that this would be too fancy for my taste. My second thought was that i don't want to be discouraged from running through each room. .. But then I thought maybe the HP rewards would make it more fun to fight the enemies, by reducing some of the risk involved.

I did find the enemies difficult and i wasn't sure if i wasn't hitting them right or if it just takes multiple hits. Maybe different audio feedback could help with this? Or a visual indication, such as the enemy flashing with each hit. I do think some feedback here would make the fighting more gratifying.

I only spent a small amount of time with the demo and only on an emulator so far, but it looks like a really exciting project. It's interesting to me that you already have the complete game on a more advanced platform and I wonder what your main goal or idea is in making the 2600 version.

#24 gauauu OFFLINE  

gauauu

    Moonsweeper

  • Topic Starter
  • 401 posts
  • Location:Illinois

Posted Sat Apr 16, 2016 8:00 PM

Thanks for the feedback, gliptitude!

 

I did find the enemies difficult and i wasn't sure if i wasn't hitting them right or if it just takes multiple hits. Maybe different audio feedback could help with this? Or a visual indication, such as the enemy flashing with each hit. I do think some feedback here would make the fighting more gratifying.
 

 

Hmm, I think maybe I need to make the first few enemies only take 1 hit, to help the player get the feel for things. Were you able to hear the audio cues when you hit the enemy, but just were unsure of what they meant? Or did you not notice them?   (I'm thinking about also making the enemies bounce back slightly when hit. Flashing might be a bit difficult the way I have my kernel/engine set up)

 

 

 It's interesting to me that you already have the complete game on a more advanced platform and I wonder what your main goal or idea is in making the 2600 version.

 

Really, the goal was the fun/challenge of doing it. I've always wanted to try making a 2600 game, and after thinking through the possibilities, I figured making a version of Anguna would be a perfect level of challenge: somewhat complex and large-in-scope, but doable without boulderdash-level of heroics :) The fact that there aren't many large zelda-like adventure games for the 2600 makes it more fun as well (for me as the developer).  I just hope it ends up being fun for the players, not just for me as the developer :)

My friends have convinced me to make the world map significantly different than the GBA version, so it's not just a direct port, but a new adventure to play through. Which is probably best, as I just can't support the same amount and types of content that I had on the GBA (I gave up on squeezing money & shops into the atari version -- the GBA had them, which was the motivation for fighting random enemies, to get money. The experience system is to replace money)



#25 gliptitude OFFLINE  

gliptitude

    Moonsweeper

  • 326 posts
  • Location:Location

Posted Sun Apr 17, 2016 2:03 PM

Thanks for taking my comments into consideration gauauu.

My friends have convinced me to make the world map significantly different than the GBA version, so it's not just a direct port, but a new adventure to play through. Which is probably best, as I just can't support the same amount and types of content that I had on the GBA (I gave up on squeezing money & shops into the atari version -- the GBA had them, which was the motivation for fighting random enemies, to get money. The experience system is to replace money)


I totally agree with your friends. .. It's kind of like adapting books into movies and expecting the movie to be an accurate and direct represention of the book. But a movie is a movie and the things that make a good movie are unique to movie making.

For me it is interesting to see how adventure games work on 2600, the clever techniques and mechanics designers/programmers come up with to make such an abstract concept work in such a limited environment. Of course literal realism is not practical here the way it is on a modern console.

.. Now I have spent some time playing Anguna on real hardware. I paid closer attention to the sounds and combat this time. I think maybe before i was confusing the two sounds of the player taking a hit and the enemy taking a hit. But I guess my overall reaction is the same. I found the combat kind of tedious and not so gratifying. .. Within the scope of this dungeon level the combat is not prohibitively difficult, but I find myself avoiding it as much as possible. It seems like a drag on the overall experience.

I tried to find other examples of combat that i do find gratifying. Secret Quest was the most similar type game. In that game it is generally one hit to kill. Also the sound effects are more decisive. .. Maybe I am biased. I have disagreed with others in the past about the Vectrex game Fortress of Narzod. In certain situations in that game it takes multiple hits to kill an enemy. I find it confusing and a chore but others consider it interesting and sophisticated.





Also tagged with one or more of these keywords: homebrew, assembly, wip

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users