-
Content Count
1,156 -
Joined
-
Last visited
-
Days Won
5
Posts posted by jrok
-
-
I've worked a bit on my "hurry-up" routine for the game. When a the game-timer reaches a certain point, two walls seal off the defensive zones, and the shield material becomes a wave of deadly electricity that fries you. The time between the beginning of the round and when the walls appear decreases as you progress through the game.
EDT: Fixed a sound effects bug
Circus_Galacticus_m12_d21_y08.bin
Circus_Galacticus_m12_d21_y08.zip
Cheers,
Jarod
-
This is coming along very well so far! The graphics are attractive, particularly the gladiator animations/outfits (which look great), and help to demonstrate that bB is capable of some nice-looking games.Thank you. I remember reading somewhere that bB wasn't capable of producing good looking games, so I'm sort of challenging myself to see what I can do with it. So glad you like it!
One thing I like about it, too, is that it's a little bit weird, in the way that many of the best/most memorable Atari games are a little bit weird. There's something a little cryptic about the mysterious flashing face, the playfields that look a bit like crop circles... in other words, it has a promising atmosphere, and reminds me of what it felt like as a kid to play a game like Yars' Revenge, or Raiders of the Lost Ark.I know exactly what you mean. I LOVED weird games, where you weren't always exactly sure what you were seeing and your imagination would sort of kick in. Thanks, that's the best compliment I've gotten... I want to make this game super-weird.
Oh, and my girlfriend really likes the look of your Round 3 beasties.I really want to do something with these guys in the next build... mainly come up with a way to blast them! What good is a monster if you can't blow it to kingdom come??? Actually I think they look even better when their animation cycle is slowed to half speed, so I'll try to get that in there that too.
Cheers!
Jarod.
-
I made a title screen with my paint program..its a GIF file..as i dont know 2600 programming..just throwing out it there, thats all
Happy Holidays
Paulie

Hey that's sharp looking! I don't know if that level of shape complexity of the letters is possible without a ton of flicker, but the color sweep is a nice effect I could definitely do. Thanks!
Jarod.
-
Jarod,Please take my non-programmer criticism for what little it is worth (not much).
I have been playing different versions of the game for the past week or so and I have to say that I like it better without the Yar Bars.
That may just be a bias on my part (I hate Yars Revenge) and they may actually make the game look better to other people.
Wp
That's okay, I don't mind criticism, from programmers, players or anyone else!
In fact, I'd take a player's criticism to heart more than I would a programmer's.The thing about those bars is, there sort of needs to be something where they are. Due to timing limitations of the kernel, I cannot draw laser beams or walls anywhere in the far right and far left 10% of the screen. It could be an unmoving graphic (I had something that looked a little bit like a stadium crowd going), but then the gladiators wouldn't logically be able to move there. The idea of safety zones occurred to me as the simplest, most logical way to handle this limitation without shrinking the total area that players could move around in.
I know that sounds like an excuse, but its really just an explanation. What I might end up doing is to have the zones appear in some levels but not in others, since some people hate them. In those situations, I think I would replace them with a "crowd" graphic or a wall. Or I might rethink the whole elment entirely... I feel like it's still early enough in development to experiment with the core gameplay.
The other thing is, I thought the zones might make an interesting game element for when I finish my "hurry-up" routine. In the version I'm going to post this afternoon for instance, after the level timer is up, the screaming face appears and a pair of walls "seal-up" the defensive zones, which then fill up with deadly plasma beams. So, if you're caught hanging out in the zone to long, your source of protection could suddenly spell your doom
I sort of like that as a double-edged gameplay element, but I'll let you guys be the judge of that.Anyway thanks for the honest crit. Keep 'em coming!
Cheers,
Jarod.
-
I believe everything he is doing is bAtari Basic. I've been following this game almost since day one. It's fabulous and very fun.Thanks man. Like I said before, I think batari could be a very powerful development tool for the 2600, and could help new programmers like us get a jumpstart onto this beloved old platform.
Cheers,
Jarod
-
I second that the circus name is much better, but I do think Duel fits the theme better.Circus Galacticus sounds much better than DUEL IMO! Why do you change it?
You were absolutely right... I changed it back!
Thanks,
Jarod
-
Man, the graphics and animation are top notch! Very cool effects. Will you be offering this on cart?tjb
Thanks! I want to try to put it on cart when the game is finished, although that could take awhile. Batari mentioned he might be releasing a ROM board with onboard superchip which would certainly make it cheaper/ easier to do, so I haven't given up hope yet.
Cheers,
Jarod
-
Hi JarodThis is really great......
greetings Walter
Hey Walter,
Thanks! Hey I might want to enlist your help with testing this thing on real hardware someday.
Cheers,
Jarod
-
Jarod,Very nice! This is the kind of 2600 game I thoroughly enjoy. Surely there is some in-line assembly in there. If not, wow....Batari Basic is a heck of a lot more capable than I thought.
Thank you, Scott. So far, the game is written almost purely in batari Basic. The only inline assembly I am using is:
asm LDA #<p1color STA player1color LDA #>p1color STA player1color+1 end
Basically, I am using this to point individual rows in player1's color table to a set of variables, so I could palette-swap the gladiators' colors on the fly without having to define a new table.
And I hate to agree with everyone else, but I am going to agree with everyone else: "Circus Galacticus" was a better name.Okay, I give up
I am going to change the name back to Circus Galacticus, and then have my first heart attack trying to write a title screen for it
Thanks again for the encouraging words.
Jarod.
-
-
I went back and altered the look & animation of the defensive zones. I think I like this version much better... not nearly as headache-inducing

Cheers,
Jarod
-
In this version, I use player0 to create Yars-style defensive zones on each side of the screen. This helps things make more sense, I think, since my display kernel can't handle players firing there. I will come up with something else button presses do when you are positioned there.
I'm still torn about the final name of this project, but I will call it "DUEL" for now.
Cheers,
Jarod.
-
My lastest version is attached. I've added in a "Yars" style defensive zone on each side of the screen. Since you can't fire a beam in these areas, I'm thinking of adding a new gameplay element for button presses here. I'm using my flickered player0 to produce the zones, and though I kind of like how it looks I think I will keep tinkering with it.
Cheers,
Jarod.
-
Circus Galacticus sounds much better than DUEL IMO! Why do you change it?
Partly because it was so daunting trying to figure out how to do a title screen
Also, I'm not sure if most people got the reference. I might change it back, if it turns out people like the original title better.Cheers,
Jarod
-
looking better all the timeThanks. I added a small flash to the enemy sprite when you deplete one of its shields (new BIN in the original post). I'm working hard on a new build with the Berzerk-style "hurry-up" routine and the survival stage, hopefully to be ready by this weekend.
Cheers,
Jarod.
-
Hi everyone,
I decided to post progress on my first Atari 2600 Homebrew "Circus Galacticus". The setting is a futuristic gladiator tournament, where combatants duel each other to the death for the pleasure of the galactic empire. The game will comprise the player's fighting career, with the difficulty and rewards ramping up with each new match. A match ends when one gladiator loses all of his shields, and is fried by his opponents laser beam. The player begins a match with three shields, while each new opponent gains more shields up to a maximum of five.
This is a playable demo. The difficulty ramps up as you progress through the game in several ways, and most of the A.I. is in place. The final game will also contain a two-player versus mode, although that is disabled in this build.
Controls:
Left Joystick - Move player sprite in 8 directions.
(Press) Left Fire Button - Start Game / Begin Next Match / Charge up your laser gun
(Release) Left Fire Button - Fire your laser gun. The longer you held down the button, the farther the shot will travel.
*Note: Aiming is precise in this game: You must aim for the head or the chest of the enemy, or your shot will pass in front of him.
Gameplay:
- All duels are to the death.
- At the beginning of a match, a protective energy field appears on each side of the arena. When a gladiator stands in this field, he cannot be harmed by enemy lasers.
- After a certain amount of time elapses, the emperor gets bored with your dawdling. When this happens, a pair of electrified walls seal off the energy fields, and the shield matter turns into a stream of deadly photons that fries anyone trapped on the wrong side.
There are still a lot of unfinished components here, but I thought enough of the core gameplay was in place that I should try to get some feedback in this forum. The most unfinished portion is probably the alternate level style (seen in level 3 of this build), where you must survive waves of attacking monsters for a set period of time. I put this in as a placeholder, and if you press the fire button after a few seconds have passed, you will proceed to the next duel.
Thanks in advance for any feedback, ideas or bug reports you might have.
Cheers,
Jarod Kitchen
Archived Versions(Old):
Circus_Galacticus_m12_d21_y08.bin
Circus_Galacticus_m12_d21_y08.zip
Circus_Galacticus_m12_d22_y08.bin
Circus_Galacticus_m12_d22_y08.zip
Circus_Galacticus_m12_d23_y08.bin
Circus_Galacticus_m12_d23_y08.zip
Circus_Galacticus_m1_d4_y09.bin
Circus_Galacticus_m1_d4_y09.zip
Latest Version(New):
EDT: Changed title back to "Circus Galacticus." All future binaries will use this name.
- All duels are to the death.
-
Small Update:
I added a title screen using the new name I am considering ("Duel"). The game will return to this screen whenever the player dies, and display his score. Press fire to begin a new game.
I also corrected a small graphics glitch with the monster level, and added an extra hit point to the first enemy. Next thing I think I have to nail down is a "Got Hit" flashing animation for hitting multi hit-point targets.
One idea I've been toying with are levels where the playfield is always gradually filling up with walls. This could be random, or follow some sort of set pattern.
Cheers,
Jarod.
-
Has anyone come up with an Atari-friendly way to calculate (or, simulate) arctangents for use in bullet angles, steering and the like?Special-purpose solutions are usually better than general-purpose ones for this sort of thing.
If you want to select one of 16 angles, start by taking the absolute value of dx and dy. Then note whether dx>=dy (assuming they're scaled to comparable units). If dx>=dy, note whether dx/2>=dy; otherwise note whether dy/2>=dx. That will get you to one of sixteen angles, though the centers of each angular range will be offset by 1/32 of a revolution from the compass points. So you could add a check for dx/4<dy or dy/4<dx and select a perfect compass point in the appropriate cases.
If your goal is to make bullets travel toward a target, your best bet may be to scale dx and dy so that at least one is >= 128, and then have a loop something like this:
lda #16; Total adjusted distance to travel sta distance lp: clc lda dx adc dx_acc sta dx_acc bcc no_x_bump inc xpos; Or decrement it no_x_bump: lda #64 rol sta temp lda dy adc dy_acc sta dy_acc bcc no_y_bump inc xpos; Or decrement it no_y_bump: lda temp rol; Carry will be set tax lda distance sbc dist_adjx sta distance bcs lp
The dist_adj table should indicate how much to adjust the 'distance' variable in the cases where the object isn't moved, where it's moved in the X direction only, in the Y direction only, or both. If dx or dy (or both) is >= 128, the loop will have to run no more than twice for each pixel of motion.
Makes perfect sense. Thank you!
Jarod.
-
Here are the posts I was thinking of.Thanks! These are both very helpful.
Jarod.
-
great idea on the `lock-n-chase` level with trapsThanks. I'm still not totally sure I want to go that way. Last night I was staring at those monster sprites, and they just looked like something I wanted to blast the holy hell out of when I was a kid. Maybe there's an in between, where you could either blast away or trap 'em for mega points.
On a separate note, I was thinking of changing the name of this project to "Duel." It just seems to roll off the tongue nicer, not to mention it would be easier to make a title screen for it. What do you think?
Cheers,
Jarod.
-
Table-based is the way to go.And most trig functions repeat around a circle, so you can cater for that with less data and a little extra programming.
Thanks. So by table-based, do you mean defining a bunch of coordinate zones, then selecting a vector based on which zone the target is in?
-
Has anyone come up with an Atari-friendly way to calculate (or, simulate) arctangents for use in bullet angles, steering and the like? I assume that you'd have to build the function from scratch, but I can't imagine that the math would arrive on time. Would it be a better to write some sort of pseudo-radian function to determine the angle of a bullet, where the bullet has 16 or so angles to choose from?
Thanks,
Jarod.
-
New Update:
I've been toying around with my alternate level style and decided to post some progress. When you reach the third level, instead of seeing the emperor's face and the two gladiators, your gladiator appears in the center of the screen. When you press the button to start, you are chased around by two monsters.
There's no real gameplay to speak of for this level-style yet, and if you press the fire button after a few seconds have passed, you will automatically move on to the next deathmatch. The only thing that's partially done for this level is the movement behaviors for the two monsters. I'm still sort of trying to figure out how I want to shake things up with this level. I'm leaning towards a lock'n'chase sort of gameplay, where you are stripped of your laser gun and have to defeat the monsters through some other means, like leading them into traps. If I'm able to work this out, I think that a monster level will occur every 3 or 4 matches, with swifter/smarter monsters and deadlier playfield hazards.
Cheers,
Jarod.
-
Great game this "Circus Galacticus". Pure battle, been enjoying it all morning.Wp
Hey, thanks!!!
Jarod

Circus Galacticus
in batari Basic
Posted
I've worked a bit on my "hurry-up" routine for the game. When a the game-timer reaches a certain point, two walls seal off the defensive zones, and the shield material becomes a wave of deadly electricity that fries you. The time between the beginning of the round and when the walls appear decreases as you progress through the game.
Circus_Galacticus_m12_d21_y08.bin
Circus_Galacticus_m12_d21_y08.zip
Cheers,
Jarod