Ghostbusters

Other Computers and Game Systems

Moderator: Moderators

User avatar
Jeff-20
Denial Founder
Posts: 5759
Joined: Wed Dec 31, 1969 6:00 pm

Post by Jeff-20 »

rhurst wrote: I agree that any "derivative" can be written in BASIC, if that is the objective. The end result cannot stack up against Omega Race (or any other arcade-like video game) game play -- any such claim is false bravado. But I like seeing all the creative attempts -- go for it!
Oh yeah? and they said Doom couldn't be done on the VIC 20 too! ...and they were right. It couldn't. But that's not the point! Derivatives can be downright fun in their own charming attempts to appropriate! :D (BTW, I'm really not going to waste my time trying to recreate Omega Race... :p)
rhurst wrote: A little OT, but why is unexpanded so important? Back in the day, it was deemed important, but that was short-sighted thinking too. C128 and Amiga suffered terribly for publishers promoting software for the "lowest common denominator" in stock C64 and Amiga 500 configurations.
The VIC is great just the way it is. I make unexpanded games because I like the idea of it being able to run on any VIC, any where, at any time. Still, I admit it's just a personal quirk. All of my games require a disk drive, tape deck, or transfer device. In mose cases, a joystick is needed as well, so a memory cart would really not be such a big deal. I just like the idea of a very brief expression (my previous analogy was a short poem.) One could list out, examine and modify with little effort. I also want the player to be impressed by the range the VIC has in 3.5k.
High Scores, Links, and Jeff's Basic Games page.
jdxpolygon
Vic 20 Amateur
Posts: 43
Joined: Sat Mar 07, 2009 12:32 pm

Post by jdxpolygon »

rhurst wrote: little OT, but why is unexpanded so important? Back in the day, it was deemed important, but that was short-sighted thinking too. C128 and Amiga suffered terribly for publishers promoting software for the "lowest common denominator" in stock C64 and Amiga 500 configurations.
..what Jeff said :) Doing a game in unexpanded memory feels like more of an achievement, expanding memory can feel like a bit of a 'cheat' sometimes. Also its just more satisfying to make a program that doesn't depend on add-on hardware. Personally speaking I don't have any expansions for my real VIC so that's a factor for me :)

Having said that, unexpanded Ghostbusters would surely need to lose out in some area. Maybe an unexpanded AND 8k version would be the way to go. For example, limit the shop functionality on unexpanded and maybe drop the music and the end of game scenario, and shorten/remove all the longer text strings/sections. Also keep the sprite movement coarse. 8k could allow music, more varied graphic content, all the original strings, and anything else that was missing.
IsaacKuo
Vic 20 Hobbyist
Posts: 147
Joined: Tue Aug 04, 2009 5:45 am

Post by IsaacKuo »

Jeff-20 wrote:(BTW, I'm really not going to waste my time trying to recreate Omega Race... :p)
You sure? I've come up with a lot of ideas on how to implement it.

It's funny...only after thinking about how to program it do I realize that Omega Race is basically a "race" program. While they move slowly, the grunts do indeed "race" around a circular racetrack in a simple clockwise motion. I just never noticed it because you spend all your time concentrating on the "bouncing" enemy.

Still, cramming even a simple clockwise square motion into a 20-liner may be a little too much.

Hmm...

Code: Select all

IF(X(I)=Y(I))+(22-X(I)=Y(I))THENT=DX(I):DX(I)=-DY(I):DY(I)=T
...okay, I think the AI for the grunts can be crammed into a 20-liner. (This AI simply rotates the velocity vector by 90 degrees clockwise if the enemy is located along a diagonal of the screen.)

Anyway, I agree about the satisfaction we get from programming for the unexpanded VIC.

[edit: added:]I've since realized that there are more efficient ways to do the AI, for both the "racing" enemies and the "bouncing" enemy. The enemy AIs don't need split X/Y coordinates at all, except when shooting a bullet at the player.
Last edited by IsaacKuo on Fri Sep 25, 2009 9:16 am, edited 1 time in total.
carlsson
Class of '6502
Posts: 5516
Joined: Wed Mar 10, 2004 1:41 am

Post by carlsson »

I don't want to rain on anybody's parade, but the C64 version is in the range of 30-40K (cracked version 157 blocks on Latif, but that one contains docs, loading screen and ten trainers).

I know the VIC-20 is much more friendly than the C64 but even a half crude version of Ghostbusters at 1/3 of the space (assuming +8K) will be quite a challenge. The unexpanded game probably can be inspired by the different scenes from the original game, but I would not think it will look very much alike.

Honestly I never finished the game. I came as far as the key and keyhole meet at Zuul and then there should be an ending scene but I can't recall what it is like. The maze and car driving parts are mostly interludes to the ghost hunting scenes. I would recommend anyone looking to make an inspired game to implement the ghost chasing with two lazers first, then see how much space you have for the rest.
Anders Carlsson

Image Image Image Image Image
jdxpolygon
Vic 20 Amateur
Posts: 43
Joined: Sat Mar 07, 2009 12:32 pm

Post by jdxpolygon »

carlsson wrote:I don't want to rain on anybody's parade, but the C64 version is in the range of 30-40K (cracked version 157 blocks on Latif, but that one contains docs, loading screen and ten trainers).

I know the VIC-20 is much more friendly than the C64 but even a half crude version of Ghostbusters at 1/3 of the space (assuming +8K) will be quite a challenge. The unexpanded game probably can be inspired by the different scenes from the original game, but I would not think it will look very much alike.

Honestly I never finished the game. I came as far as the key and keyhole meet at Zuul and then there should be an ending scene but I can't recall what it is like. The maze and car driving parts are mostly interludes to the ghost hunting scenes. I would recommend anyone looking to make an inspired game to implement the ghost chasing with two lazers first, then see how much space you have for the rest.
It's worth rememebering that the C64 version also contains the sampled phrases:

-Ghostbusters!
-Hahahahahahahah!
-He slimed me!
-Yeeeaaahhh!

The SID file is nearly 10k alone. However I do agree with you that an unexpanded version is ambitious even with things cut out or reduced in complexity. Interestingly I think the ghost-zapping section would be one of the easier elements (with the car section being the easiest) - the map screen provides the most complex logic to deal with (those key/lock guys moving around, the 4 ghosts, your own movement (i.e. recording a path around the city) the marshmallow man attack that occurs, plus whatever logic is going on in the background to raise the city's PK energy and 'haunt' houses). And you still need to find room for the shop function at the start as that's a big part of the appeal.
English Invader
Vic 20 Scientist
Posts: 1193
Joined: Tue Apr 28, 2009 3:51 pm

Post by English Invader »

Ghostbusters was a rushed release. The game was designed in eight months and borrowed features from another game called Car Wars. Is it not possible that the code is needlessly elaborate and could be rewritten in a more concise form?
rhurst
Omega Star Commander
Posts: 1371
Joined: Thu Jan 31, 2008 2:12 pm
Website: https://robert.hurst-ri.us
Location: Providence, RI
Occupation: Tech & Innovation

Post by rhurst »

Never played the game myself, only watched the opening title with the tune. The "speech" was cool, too. After watching this Ghostbusters ending, "makes me feel good" that I never played the game. :P

Seriously, just a VIC 20 demo of it would be cool enough for me. The tune never gets old. Carlsson? :)

Personally, I love the feedback on "unexpanded" in this thread:

... because programmers much prefer coding to design
... want the player to be impressed by the range the VIC has in 3.5k
... expanding memory can feel like a bit of a 'cheat'
... satisfaction we get from programming for the unexpanded VIC

I don't want to come off the wrong way here. I can appreciate clever programming regardless if there are system/memory constraints to deal with. Had to do my fair share of it, both "hobbying" and professionally, more than I'd like to admit sometimes. It just surprises me to hear this same theme _now_, that's all.

Try this one for me: Repeat the above reasoning and append "today". Or replace "programmers", "the player", and "we" with "people". When I do, it can really sound strange, but yet it invokes a different perspective. :wink:

I suppose the theme for all of this is VIC 20 was different. A trailblazer for affordable home computing, and a flame should burn forever marking it as a pioneering leader in that space. So us aging geeks (not people) continue to pour what's left of our diminishing IQ into a piece of hardware that has less memory than one contact saved in a cellphone -- a genuine human attempt to perpetuate validation that VIC 20 could do "just about anything", despite its handicap against that next Commodore model which ultimately made that permanent mark in history as "people" know it. :?
Any technology distinguishable from magic is insufficiently advanced.
https://robert.hurst-ri.us/rob/retrocomputing
jdxpolygon
Vic 20 Amateur
Posts: 43
Joined: Sat Mar 07, 2009 12:32 pm

Post by jdxpolygon »

rhurst wrote: ... expanding memory can feel like a bit of a 'cheat'
I'll expand (no pun intended) on what I meant by that.

To be honest this doesn't apply to the VIC as much as it would on, say, the C64, where expanding memory was comparatively unusual. And it would apply even less to something like a Sinclair ZX81, which had even smaller memory than the VIC and a 16k upgrade was something of a necessity. But anyway...

Depending on what lengths you want to go to in terms of upgrading the base hardware (whether it's memory, processor, storage device etc), theoretically you could port any game to any machine you want. But at some point you have to accept, this isn't really the VIC (or C64 or Spectrum or whatever), this is something else. I'm not saying that a 32k expanded VIC isn't a VIC, but it is a VIC on steroids, and it cuts down the potential user base to people with that upgrade. Now I know that's not so important now - there's no market to worry about these days, and I imagine most active VIC enthusiasts (unfortunately not me) have all the expansions they need, and as a fallback there's always VICE. I guess this is an argument you cant win one way or the other and nor should it be. I'd never say I wasn't impressed by a great VIC game using the 8k/16k or any amount of expanded memory, but you have to have a particular admiration for a fun and entertaining game you can fit into 3.5k of memory. I enjoyed that challenge with the only VIC game I ever wrote in the past, and I think others on here would agree that it is rewarding. If you decide to use an 8k expansion, then you raise the bar of expectation, and then it can be just as challenging, but the difference is, when you get to the limit, you don't have to make the decision to go from unexpanded to expanded (because you already have), and you have the option to spill out into 16k, then 24k (I think?) and 32k.

I don't think there's any configuration of the VIC that isn't worthwhile developing for though, I'll leave it at that. :wink:
Post Reply