Jump to content

Photo

Tower of Rubble [ON HOLD]

homebrew DPC+ batari basic

28 replies to this topic

#1 mksmith OFFLINE  

mksmith

    Chopper Commander

  • 113 posts
  • Location:Melbourne, Australia

Posted Mon Jan 14, 2019 8:22 PM

[ON HOLD]
So DionoiD has now released his WIP of Tower of Rubble and his take is amazing to say the least! Great visuals, music and game play really makes it a fantastic Atari 2600 conversion.  So for now I'm going to leave this to one side - I might pick up the game to maybe do something different down the track.  I'm also making the source code available if anyone wants to make use of anything.
 
Tower of Rubble
How long can you survive on the lethal TOWER OF RUBBLE as it crumbles and rebuilds itself around you?
 
This is my first Atari 2600 game written batari Basic and DPC+ as a way of learning to code the Atari which I have recently returned to after a very long hiatus.  I started coding just before Christmas so about 4 weeks worth of work so far.
 
How to play
Control the player with the joystick only (no fire button) moving left and right to run across the tiles and pushing up and down to climb. Learning to jump is key to surviving the tower and is essentially automatic:
  • you jump off the edge and depending on whats in front of you, you will jump across and hang or drop and hang
  • you can climb down backwards into a hanging position then move left/right to jump across (again depending on whats in front of you).
  • there is a short jump (between 1 tile gap) and a long jump (between 2 tile gap).
State of the game
Currently a basic mechanics of the game is complete and the following is essentially complete:
  • the player can run, jump, climb and hang around
  • the main beam drops tiles randomly
  • another beam destroys tiles and sends them crumbling into the water (moving from the outside-in)
  • some basic sounds (walk, jump, death)
  • pause game with Color/B&W button (press fire to continue)
  • game currently ends and pauses for a period of time before returning to title screen (you can restart directly after a short pause here by pressing fire)
I've had to work around a few things to keep the frames from jumping (hopefully!)  
 
There is still a number of things to finalise:
  • test on real hardware (Harmony cart on it's way)
  • balancing - game runs quite quickly ATM
  • add some variation to the tiles (currently causing a few frame issues so not sure I will be able to do it)
  • sound and music - always an issue for me but we'll see how I go!
  • horizontal beam - will need to look at drawing this with the background (I believe?) - have about 900 bytes available in the bank I'm using for the beams.
  • other beams - there are a couple of other beams which I need to investigate which drop and clear tiles slightly differently
  • game over notification - still deciding on whether to add this as it will explain your death (would love to overlay but doesn't appear possible)
  • any remaining bugs
  • would love a 2 player version - I've partially coded it so this may be possible - not sure how may frames might be left though
Feedback
Any feedback would be very much appreciated.
 
Real Hardware
17/01 - Currently it appears the game doesn't work on real hardware when launching off the title-screen (frame overrun) - will investigate.
18/01 - A build has been tested by @cimmerian which has fixed the launching issue but I still have a minor overrun with the crumbling beam to sort through
21/01 - This build should now run on hardware without any frame overruns [TBC]
 
Downloads
20190121 - all frame overruns should now be removed (Stella is showing no overruns) as I've fully split the game initialisation (start) and beam completion (ie. main beam - adding tile, crumbling beam - removing columns) over multiple frames.  This should set me up for adding the next horizontal beam (fingers crossed).
Attached File  towerofrubble.20190121.bin   32KB   91 downloads
Older builds
20190117 -  this release includes some sounds (Walk, Jump and Death), a number of optimisations to provide better/faster access to the ram bank, reduced cross-bank access (found 1 or 2 not required) and cleaned up a lot of no longer used code. The game runs a lot smoother and seems to have removed most/all frame overuns (finger crossed).  
Attached File  towerofrubble.20190117.bin   32KB   95 downloads
20190115 - Initial WIP release
Attached File  towerofrubble.20190115.bin   32KB   91 downloads

Attached Thumbnails

  • towerofrubble.title.png
  • towerofrubble.game4.png
  • towerofrubble.game1.png
  • towerofrubble.game3.png

Edited by mksmith, Mon Apr 1, 2019 4:44 PM.

  • Impaler_26 , TwentySixHundred and ZeroPage Homebrew like this

#2 NostAlgae37 OFFLINE  

NostAlgae37

    Chopper Commander

  • 145 posts

Posted Mon Jan 14, 2019 11:12 PM

I love how the terrain that the player is standing on looks quasi-3D.  :thumbsup:



#3 ZeroPage Homebrew OFFLINE  

ZeroPage Homebrew

    Dragonstomper

  • 612 posts
  • Location:Vancouver Canada

Posted Mon Jan 14, 2019 11:14 PM

Wow, this is a great start! I'll be featuring your game on this Wednesday's ZeroPage Homebrew Twitch livestream. :-) Please PM me with any more details about yourself or the game that you'd like me to talk about on the show while we play it.



#4 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Mon Jan 14, 2019 11:49 PM

@NostAlgae37 - thanks! Would love a bit of variation if I can just not sure how that could work.

 

@cimmerian - wow that would be great! I'll PM you.



#5 ZeroPage Homebrew OFFLINE  

ZeroPage Homebrew

    Dragonstomper

  • 612 posts
  • Location:Vancouver Canada

Posted Tue Jan 15, 2019 2:32 PM

We'll be featuring Tower of Rubble on the ZeroPage Homebrew Twitch stream tomorrow (Wednesday) at 11AM PT/2PM ET! Hope everyone can tune in to watch us play!

Twitch Stream: https://www.twitch.t...ropagehomebrew/

 

Featured Games:
Tower of Rubble (mksmith) (2019 WIP) by mksmith

Marble Craze (2017 Trak-Ball Hack) by Thomas Jentzsch

Color Gotcha (2016 WIP) by LS_Dracon

Bit Quest II (2019 WIP) by metalbabble

 

EDIT: Here's the video of the livestream!

 


Edited by cimmerian, Thu Jan 17, 2019 3:08 PM.

  • Arenafoot , Impaler_26 and mksmith like this

#6 metalbabble OFFLINE  

metalbabble

    Space Invader

  • 42 posts
  • Location:Rhode Island, USA

Posted Tue Jan 15, 2019 8:06 PM

Tower of Rubble looks great, nicely done. Love the player animation!



#7 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Wed Jan 16, 2019 5:03 AM

@metalbabble - thanks getting there hopefully soon!



#8 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Wed Jan 16, 2019 7:46 AM

A new release is now available in the first post.  Spent the whole day cleaning up, reviewing and optimising code which has reduced frame overruns to none (hopefully!!).


Edited by mksmith, Wed Jan 16, 2019 7:53 AM.

  • TrekMD and ZeroPage Homebrew like this

#9 fluxit OFFLINE  

fluxit

    Chopper Commander

  • 210 posts

Posted Wed Jan 16, 2019 12:40 PM

This may seem like a strange question, but how do  I jump?  Fire button starts the game, but then seems to do nothing.  I can run and climb, and that's all.


Edited by fluxit, Wed Jan 16, 2019 12:40 PM.


#10 Karl G OFFLINE  

Karl G

    Dragonstomper

  • 830 posts

Posted Wed Jan 16, 2019 12:46 PM

I had wondered the same, but I think jumping just involves running off the edge of a block to catch one that is nearby.
  • fluxit likes this

#11 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Wed Jan 16, 2019 2:36 PM

Hey guys - all controls are with the joystick only - so no fire button (I've actually yet to play with a joystick myself - just the keys). 

 

Jumping is essentially automatic:

  • you jump off the edge and depending on whats in front of you, you will jump across and hang or drop and hang
  • you can climb down backwards into a hanging position then move left/right to jump across (again depending on whats in front of you).
  • there is a short jump (between 1 tile gap) and a longer jump (between 2 tile gap).

Hopefully that helps. I'll add this to the top.


  • fluxit likes this

#12 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Wed Jan 16, 2019 7:53 PM

Thanks to @cimmerian showing me the debugger I've investigated the cause of not working on release hardware (massive frame overrun when starting). I've provided him with a new build to test and will release it once he gives me the go ahead.

 

So initialising DPC+ ram, tiles, player and beams all at once appeared to be the issue. So what I've done is add an initialisation routine with runs for 100 frames (leaves a bit of room if required).  During this I set everything up a frame at a time (the DPC+ ram clear takes about 16 frames to process for example - each row of tiles on the map).  I've done a similar thing when destroying tiles after the secondary beam finishes. Anyway during this period the player now flashes identifying the game is about to start so it all fits together nicely.


  • ZeroPage Homebrew likes this

#13 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Sat Jan 19, 2019 2:15 AM

The fix provided to @cimmerian worked well but we still have a slight frame overrun when the crumbling beam is finishing. I've got some ideas about fixing that but will check that out once my harmony cart arrives next week.

In the mean time I've spent the past couple of days building a Visual Studio Code extension for batari Basic. Got the syntax highlighting done (for the most part) and just got the compile process working (not fun but actually easy enough in the end). As my code is now quite large Visual bB is becoming a real pain to edit as it constantly jumps around when pasting. I've included bB and Stella along with it (with options to provide you own paths) - will have a play and see how that works. Will release it once I've spent some time with it.


Edited by mksmith, Sat Jan 19, 2019 7:30 AM.


#14 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Chopper Commander

  • 195 posts

Posted Sat Jan 19, 2019 5:14 AM

This is good stuff!

 

I think you should make the last two lines of the crumbling playfield graphics blue instead of black so it looks like you see the water through the the playfield block

It also maybe doesn't have to be two players and flicker, other then when the beam is on, two nusiz copies and the different nusiz spacing might do? If you put it to the right the second copy will wrap around and appear on the left, might not be worth the effort tho?

 

What do you mean by secondary beam? is there ever more then one beam? vertical or horisontal?



#15 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Sat Jan 19, 2019 6:25 AM

@Lillapojkenpåön,
 
It's a good fun game - the original designer did any awesome job of the graphics and they do suit the Atari very well.  I was thinking about other modes of play also - collecting coins (or diamonds?) might offer another way of play. Will it be worth getting the coin?
 
Yeah I've noticed those 2 lines on the crumbling beam also - wasn't sure how to deal with those but I think you've hit it on the head! 
 
Still working through whether I have a 2 player option (which I think would be fun!) - but flickering would be an issue.
 
The secondary beam is the crumbling beam - I think I'll rename that above in the description.  There is a horizontal beam which slices though the tiles and drops them down a layer (a bit like how Tetris does it when you fill a row).  There are also 2 others which drop tiles in different ways to the main one. Working out whether I can fit (or need) those still as the size of the playfield is quite a bit smaller than the original game.


Edited by mksmith, Sat Jan 19, 2019 7:27 AM.

  • fluxit likes this

#16 Dionoid OFFLINE  

Dionoid

    Chopper Commander

  • 152 posts
  • Location:Leiden, Netherlands

Posted Sun Jan 20, 2019 8:21 AM

Whoa, another developer doing Tower of Rubble for the '2600?

 

No need for apologies, Matt; your version looks and plays nice. Really impressive for your first Atari 2600 game!

And it doesn't look like a typical batariBasic game, which is a good thing.

 

Of course using DPC+ allows you to add much more visuals to the game compared to the 'vanilla 6507' assembly port that I am working on. But in the end it's the game-play that matters, and I think you're on the right track here.

 

Looking at the movement of the little stick-man, I think you also studied the original PC game to copy over the 30 frames/second animation, right? I did exactly the same :-)

 

It looks like the Atari community will get (at least?) two good versions of Tower of Rubble to choose from this year.

Knowing that good '2600 developers are scarce, it's kind of a waste to have two developers working on their own version of the same game. But on the other hand: developing games is fun, and that's what it is all about.

 

Good to have you in the '2600 homebrew developers community, Matt :-)


  • ZeroPage Homebrew and fluxit like this

#17 KevKelley OFFLINE  

KevKelley

    Chopper Commander

  • 213 posts
  • Lots of hobbies, little time, loads of fun.
  • Location:Orlando

Posted Sun Jan 20, 2019 10:54 AM

It would be cool if this became a double Ender cart... Just putting it out there...
  • Muddyfunster likes this

#18 Muddyfunster OFFLINE  

Muddyfunster

    Moonsweeper

  • 312 posts

Posted Sun Jan 20, 2019 2:47 PM

This is coming along really nicely, both versions are actually. I like how you can turn on the spot & really superb animation.

 

Might just be bad luck, but I had a couple of respawns and then was insta-killed by the beam. 

 

Nice work so far !


Edited by Muddyfunster, Sun Jan 20, 2019 3:04 PM.

  • ZeroPage Homebrew likes this

#19 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Sun Jan 20, 2019 3:02 PM

@Dionoid - thanks for you kind words mate. Having the same game done in different ways can bring a kind of variation to the game too. As said so looking forward to seeing your version!! Yeah did a frame by frame analysis of the player animation and movement then used that in my little animation engine.

@KevKelly - yeah would make a great double-ender!

@Muddyfunster - Thanks! I having been thinking about making sure the first beam is not on the player to give you a chance to get into it. Well done on your work also!


Edited by mksmith, Mon Jan 21, 2019 6:59 AM.

  • ZeroPage Homebrew and Muddyfunster like this

#20 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Mon Jan 21, 2019 6:47 AM

New build up which should now run without any frame overruns as I've split all the game initialisation and beam completion processes over multiple frames.  Thanks again to @cimmerian for his testing and identification of these issues.

 

Next up is the horizontal beam which will be very interesting as it will probably involve clearing pf tiles and drawing the background colors to simulate the beam. Once the beam is complete all the tiles above drop down ah-la Tetris style so that's going to be good challenge to program!

 

My harmony cart is in my home city so delivery should be any day now (hooray) as I can't wait to test the game on the real thing.  I've also been working on the VS Code extension but a little programming with it tonight is feeling good (I do a lot in Visual Studio for work so a familiar arrangement).


  • TrekMD and ZeroPage Homebrew like this

#21 Lillapojkenpćön OFFLINE  

Lillapojkenpćön

    Chopper Commander

  • 195 posts

Posted Mon Jan 21, 2019 3:34 PM

Oh, I thought the horisontal beam was allready in there, I was gonna link to this, you can change background and pfcolor on whatever lines you want

 

http://atariage.com/...c/#entry4021031

 

Is the beam behaving differently in this build? It seems to like building high towers :)


Edited by Lillapojkenpćön, Mon Jan 21, 2019 3:42 PM.


#22 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Mon Jan 21, 2019 6:25 PM

Oh, I thought the horisontal beam was allready in there, I was gonna link to this, you can change background and pfcolor on whatever lines you want

 

http://atariage.com/...c/#entry4021031

 

Is the beam behaving differently in this build? It seems to like building high towers :)

 

Awesome thanks will definitely need that for sure! As for the beams I don't believe so...



#23 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Mon Apr 1, 2019 4:43 PM

So DionoiD has now released his WIP of Tower of Rubble and his take is amazing to say the least! Great visuals, music and game play really makes it a fantastic Atari 2600 conversion.  So for now I'm going to leave this to one side - I might pick up the game to maybe do something different down the track.  I'm also making the source code available if anyone wants to make use of anything.

Edited by mksmith, Mon Apr 1, 2019 4:45 PM.

  • Arenafoot and TwentySixHundred like this

#24 KevKelley OFFLINE  

KevKelley

    Chopper Commander

  • 213 posts
  • Lots of hobbies, little time, loads of fun.
  • Location:Orlando

Posted Mon Apr 1, 2019 6:01 PM

So my dream of a Tower of Rubble double-ender is squashed?
  • Arenafoot likes this

#25 mksmith OFFLINE  

mksmith

    Chopper Commander

  • Topic Starter
  • 113 posts
  • Location:Melbourne, Australia

Posted Tue Apr 2, 2019 1:25 AM

Yes for now Kev 😥😥😥 DionioDs version is so good though 👍





Also tagged with one or more of these keywords: homebrew, DPC+, batari basic

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users