-
Content Count
1,047 -
Joined
-
Last visited
Posts posted by Muddyfunster
-
-
Very nice.
From a balance perspective, sometimes I would get a baby drop on the far left, followed immediately by the far right so I had no chance to get across and I started preemptively getting to the middle after each one just in case. Maybe that's a design element ?

-
1
-
-
I remember having a boxy gray one with a little square button that i loved when i was little. I think it had a skinny stick but i found it responsive and fun to play with. I have been searching for what it was so that i may acquire one.
Sounds a little bit like a Wico Boss. I had one of these but not until I got a Vic 20

-
Lewis, thanks for the code example,
RT, Your code tweak was actually perfect and with Bogax's additional guidance I understand more clearly now where I was going wrong.
Thanks a lot !
-
1
-
-
Hi all,
I've been working on a new project and I've run into a problem that I'm struggling to work around.
I'm using the DPC+ Kernel and have an issue with sprite collision. I understand the constraints of working with virtual sprites in that they are all basically copies of p1.
My problem is to do with checking for collisions between these virtual sprites and player 0. I've drawn a little picture to illustrate :
Playfield is represented by the red box,
Green is "off screen"
Blue circles are "player8" virtual sprite and are used to show lives left
Player 0 enters from the top of the screen and exits the bottom and can move left and right. when player 0 re-enters at the top he inherits the X position where he exited. My problem occurs because player0 can hit player 8, triggering a collision and a loss of a life.
Player0 starts off with his Y variable set to -16 so that he is offscreen and uses an 8.8 variable for movement for both X and Y axis
I tried a simple : if player0y < 17 then goto skip_collision_check
My logic is this check should cover everything below 0 and everything up to y becoming = 17 (0 + the size of the sprite)
This works with the sprite is fully visible on the playfield but not when part of the sprite is offscreen.
i've tried gating the collision check every way I can think of but it looks like the IF statement isn't seeing a negative y co-ordinate as being less than 0.
Any ideas or suggestions would be appreciated.
-
Still going around in circles, I see.

Indeed but to a relative newcomer like me, that was not aware of the questionable practices of certain parties, it was quite informative !
-
3
-
-
simple concept, great execution, nice job.
-
2
-
-
the 1 channel stuff sounds kind of like early ZX Spectrum music (the 48k beeper variety)
-
That's actually quite neat, thanks for sharing this. Sound production is one place I really struggle in bB.
-
1
-
-
Nice rush job, then!

indeed, when I try to make the 2600 sing, it usually ends up sounding like a cross between me rolling my face over piano keyboard and doing something unspeakable to a cat.
-
I love the title tune.
-
3
-
-
-
Unfortunately, it doesnt work on the portable Atari.
No, I don't have one to test on so I don't know what in the code would need to change to make it compatible, sorry.
-
One thing that throws me off when reading is when people reference cycles or scan lines. I haven't tested my game on real hardware yet and am not quite sure what I need to look at in the Stella debugger.
Also curious as to some of the best ways to correct for any overages if some should exist.
RT's notes on how to track and monitor overcycling are really good advice.
I was running into overcycle issues on Tyre Trax and my scanlines were going over 262 at certain points.
I found that my biggest problem (mostly due to inexperience) was that I was trying to do too much each frame, so I moved things to happen on different frames and this mostly fixed the problem. I learned that you don't need to do everything at once

I read some good advice in threads here about moving logic or certain pieces of code that aren't needed every single frame to be run for example on alternate frames.
I also found that as I expanded my idea for Tyre Trax and tried new things with bB, my code became better and I stopped doing crazy things (in hindsight
) like defining the whole playfield every frame or defining every sprite on every frame (because...yeah, reasons!...).Defining the playfield every frame I believe devours cylces like a hungry Trex
. I also made other optimisations like easing the number of animation "lanes" on the river from 8 to 3. To be honest, because of the other optimsations, I could probably put them back in now. -
Tyre Trax is a "clock racer" inspired by some of my favourite Activision games like Barnstorming and Grand Prix. It is programmed in bB using the DPC+ kernel
It's pretty much complete and I wanted to throw a note in here in the hope folks might give it a test ride

For best enjoyment, add friends and beers (not included).,
I've added a few screen grabs below and there is a full thread over in the Bb Forum
Instructions :
Playing
Right now there are 8 game modes are present to try out.
Tournament
Game 1 : Summertime - nice and simple, learn to play (15 obstacles)
Game 2 : Sunset - bit more challenging with more obstacles. (20 obstacles)
Game 3 : Winter - hard, (25 obstacles) - rocks start a bit closer as visibility is lower !
Game 4: Night Time : more stuff, lower visibility, (30 obstacles)
Freeplay / Random (30 obstacles)
Game 5: as game 1 but with random obstacle generation
Game 6 :as game 2 but with random obstacle generation
Game 7 :as game 3 but with random obstacle generation
Game 8 :as game 4 but with random obstacle generation
Difficulty Switches (only work on modes 5 to 8 )
Left : B = Easy mode (obstacles appear further away) - A= Hard mode (Obstacles appear closer- less time to react)
Right B= Easy obstacles (all combinations appear) : A - Tough obstacles (only hard combos appear).
Controls
Fire or Reset to start after selecting your game.
Fire to accelerate
Release Fire to coast and slow down gradually
Left for brakes to slow down quickly
If you hit an obstacle you get slowed down to a crawl (costing you time)
You need a fast time to win the gold cup, too slow? you get the turd prize.. Oh and stay out of the water..
Edit 17th Feb 2019 : Below is footage from the final version V295x version, complete with title tune (credit to Rushjet1 for his musical magic) and some other tweaks for the passing sound:
-
9
-
-
Latest and probably last build public build posted on the first page, bunch of changes added.
Please give it a test ride and let me know if you have any feedback or issues.
-
Just saw this, reminded me of this :

-
1
-
-
Looking good, interesting game-play mechanic. Nice to see paddle games get some love!
-
Not until the first of the year!
it's a lot of "hardwork"..
-
Do 2600 games really call out for a game genie

Probably not but you have to admit, purely from a technical perspective, what he's done is pretty damn cool.
-
-
I've recently got into batari basic programming and after following the Tinkernut demo and searching the wiki I feel lost currently. I'm making a simple side scrolling cowboy game and am having problems creating multiple enemies let alone just creating one. I've searched and found this thing called multisprite kernel but cannot figure out how to use it. If anyone would like to help I'll put below the .bas file. Thank you.
You also look like you are setting up your variables but then referencing them as "a", "b" etc, instead of the names you gave them. Using the names you dim at the start of your code will make debugging etc easier later.
having multiple enemies or anything in your game will depend on which kernel you use. The kernel basically sets the ground rules. Batari Basic has a few available, they each have advantages and compromises.
As the guys posting above suggest, RT's site is a veritable gold mine of information and examples and I'd also suggest you work through the examples there.
Also the code snippets thread HERE is worth a look.
-
updated and (hopefully) stable bin uploaded to the first post.
-
Well KarlG has saved me from bB induced insanity.
I added a POP to cancel the gosub and BOOM it just worked. I just ran the game and had played through 15 times and not so much as a blip.
Thanks for the suggestions, & a big thanks (again!) to KarlG. I learned something new so I'm happy, even happier that my game is working

-
4
-
-
understood
I have a single scenario where a subroutine can determine that the game is "over" and calls the game end code. Before that happens i'd need to call a POP to remove the return address before executing the end code. Going to try that now.


[In Store!] Dare Devil
in batari Basic
Posted
Dare Devil [Release Candidate]
This is a WIP for my new project "DareDevil"Complete : https://atariage.com/store/index.php?l=product_detail&p=1228
Inspiration.
I recently played a 2600 game called "Parachute" and despite what I'd call some odd execution choices and grating music, the actual game kept me coming back for another go. I decided, as just a quick test, I'd pull together a test bin to see if I could do something similar in bB and well, that little test turned into a few late night coding sessions over the holidays and then into a full project and has put SpaceBank on the back burner for a bit.
"Dare Devil" is intended to be something of a homage / remaster / my take of "Parachute".
Playing
Avoid obstacles like hot air balloons and airplanes or you fall to your doom.
Birds won't kill you but will knock you off your flight path. Maybe that can be used to get you out of a tricky situation?
As you progress through each screen in the level, you will speed up, starting slow, eventually going quite fast.
Land in the circle/middle for maximum points, if you are going too fast, you will splatter. Later levels have different obstacles to negotiate when you land. Later levels you have to land on very defined landing points.
Weather vane in the bottom left shows the direction of the wind currently. Level 1 has no wind.
If you beat level 8 (good luck with that...) then you will go round again, except now everything is faster.
Options
Two mode are available and are selectable from the title screen
Easy - Slower more forgiving speed.
Hard - Much faster
Controls
Fire start after selecting your game, fire also skips any intro or death screens. If the game pauses, it's usually waiting for you to press fire.
Left and right to move left and right
Down = Zoom - this speeds you up by around 2/3rds of your base falling speed, useful for zooming through small gaps.
Up = slow your descent by about 30%, useful for those, "OMG I misjudged how close the next obstacle is" moments.
Scoring
Score points by progressing through each screen and landing.
When Landing you need to slow down or you will crater
Balloons
Balloons can be risky to pick up so the score reflects the risk.
Red Balloon = 300 pts
Purple Balloon = 600 pts
Green Balloon = 150 + 4x Points Multiplier for 18 seconds (Your parachute flashes RED)
Gold Balloon = invulnerability for 15 seconds (Your parachute flashes WHITE)
Tips
Gliding into the wind is slow, but going with the wind is fast, use this to your advantage.
Don't be afraid to use the whole width of the screen.
The first screen in each level is usually intentionally slow, so you can get to grips with the level, thinking of removing this.
learn to "zoom-zag" between the middle rows
A timely "zoom" can be a lifesaver.
learn to look ahead at the top row as you approach row 4, slowdown and look!
ToDo (December 2019)
Demo VersionSFX revisionsHelp and Acknowledgements (in no particular order!)
Updates & changes
30th December 2018 - V62: First public test build , early days, feedback / suggestions very welcome!
30th December 2018 - v64 - working to add the wind elements (in but not active), changed the altitude readout to just a number.
31st December 2018 - V70, more iterative progress. More sprites added and some new level movement code for 2,3 and 4. Various systems in the code are coming together. I expect a few more updates will be ready this week.
1st January 2019 - V88, Seems we have a bit of wind affecting things from level 2 onwards. Further down you go, the stronger the wind becomes.
8th January 2019 - v105Branch2 - So I've been busy adding in some new graphics that change each screen and there are now 4 functioning test levels of maybe 15 planned and a bunch of new sprites.Code needs a clean and optimise then it's onto landing obstacles and moving / alternate landing pads and bonus balloons!
11th January 2019 Decided it was time to stop adding stuff for 5 minutes and take some time to optimise the code some, especially as I'd missed a RHC (Real Hardware Crash) that Cimmerian from ZeroPage had spotted on game over. Fixed that! (Gosub issues)
12th Jan 2019 V122 : spent some time finishing the optimization splitting the graphics calls between those that are animated and called each frame and those that are only set once per screen, probably saved a few cycles. Also added poppable red balloons and clouds. Other colours to follow.
16th Jan V147 : refined the balloons some, still an occasional bug where the balloon inherits the clouds NUSIZ values, added to the squish list. Level 5 added along with some temporary sound fx.
20th Jan : The "bonus" balloons are all now in the build i'm currently working on. Red and Purple for points, Green = x2 points multiplier, Gold = invulnerability for 8 seconds.
23rd Jan : build 180, test build from 20th, some extra bugs squashed. No airships though
next build for sure. I do have an absolutely kicking title tune that I'm hoping to put into the next test build courtesy of the super music skills of RushJet1
10th Feb : Build 199. So this new build was more about optimisation. My sloppy code needed a bit of a rethink and that effort saved me 500 bytes which will be put to good use. This build now has a new set of landing zones for level 4,5 & 6. (Desert Island). Levels 7,8 & 9 are coming next (water levels).
24th Feb: Build 201. After a short hiatus, I've got my coding mojo back again for this project. Levels 1 to 6 are done, 7-9 are nearly done, just thinking what to do with level 10... Added in stormy weather on level 3,6 and 9 as well as some ground obstacles. Moving landing zones are still being looked at for levels 7-9. Some over-cycle issues that need to be squished.
7th May : Build 210. So build 210 has the new music, it has some weather effects and pretty much all of the attributes for levels 1-9. There are some glitches so these are being squished now, odd sprite positioning etc. There are still some overcycle issues that need optimising, but this is getting very close to being done. Also done a bit of work on gameplay and balance tweaking,making the powerups more worthwhile but not too OP.
22nd August : Build 320. Build 320 is basically the final game code. 8 distinct levels are in the game, later levels have tiny boats to land on and even a moving landing zone. Tweaks to graphics and other things like varying the splat screens depending on whether you splat on grass, sand or water (feeding time for that shark from Tyre Trax..). Complete code restructure, efficiency gains from implementing stuff i've learned. added a "clocked" mode, so when you complete the final level (good luck with that), the game takes you back to level 1 but everything is a lot faster and a lot more difficult. Couple of minor overcycle issues to fix.
26th August : Build 342 is done, looking for some folks to test it.
30th August : Build 356 : superb feedback from the testers. Version that was shown on ZPH had a bug that meant it was stuck in hard mode, now fixed. Speed balances, tree removed from the middle of landing zone on screen 2 and 3, score adjustments to balloons made (they are risky to go after so should reward more), adjusted duration for invulnerability and multiplying balloons, Zoom (pressing down) is now proportionate to the player speed instead of being a fixed value (speeds up by 2/3rds). Splat screen now has some laughing skulls to make it clear you cratered and lost a life.
11th September : Build 393 : more great feedback. Highlights for this version, new airship sprites (thanks @NostAlgae37 !), game plays at correct speed, speed up is now gradual rather than cliff edge, simple jingles for level change and landing, new splat sound.
25th September : Build 400 : P60 version in the process of being converted over. Last overcycle issue officially considered squashed!.
26th September : P60 version is done, palette needed work to raise the luminance in some areas, PAL colours seem really muddy in places.
29th September : 3 level demo version added for folks to test. Decided to redo a lot of the SFX for the final version.
9th October : new SFX are done mostly, just 1 more to nail and then I think Dare Devil is done.
30th December : Dare Devil is pretty much done, a year to the day that I posted the first test build. Some last bugs got squished, a few graphics got tweaked and some SFX were revised a little. RC Rom added to the post for people to test. A big thanks to all the folks that help with testing and those that provided feedback. If only I had 64kb DPC+ then I could probably fit everything in that I wanted to !
8th December 2020 : In store now! https://atariage.com/store/index.php?l=product_detail&p=1228