Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines

stevebaines

11
Posts
2
Topics
1
Followers
2
Following
A member registered May 17, 2017 · View creator page →

Creator of

Recent community posts

Thanks for the comments - glad at least some people can get it running!

Regarding the colours, the idea is that shooting Blue squares is immediate game over, but all other colours need to be shot for energy.  The plan was that this combines with the fact that you always fire 4 shots at a time (assuming they are ready to re-fire) , meaning you have to be careful when you fire.  Also, the energy cost of shooting means that you really need to hit 2 baddies out out of each set of 4 shots to get ahead.

So, just shooting lots won't get you far.

Blue squares shouldn't really kill you (they are meant to be 'friendly'), but they do.  This, and the game exit upon losing were both due to me being desperately short on time to finish.

The amount of stuff moving was largely due to me forgetting how underpowered Spectrum BASIC is.  If I'd realised sooner, then I'd have gone for something with less movement.  There were meant to be 8 lasers at a time (1 per tentacle), and the Octopus was going to be bigger, but I had to scale that all back to make it in any way playable.

However, I'm dabbling with machine code at the moment, and I may well re-write this as my first proper project, since I do think that the core idea has potential (the multi-way firing combined with having to both hit enemies whilst NOT hitting friends).

Using e.g. the Fuse emulator, load the 'also54.tap' file, then on the Spectrum press R (To get 'RUN') then press Enter.

Hmm, it should work with a 48k machine.  Fuse runs it fine as a 48k Spectrum.  It doesn't auto-run - I couldn't figure out how to get BASinC to export a self-running TAP, and I ran out of time...

Thanks for the tips!   Unfortunately for the current challenge, I ran out of time to try to speed it up much, but this will be useful in the future.

I wasted a lot of time experimenting and getting some modest speedups, and then had a mad panic to add all the missing stuff to make my entry into an actual game. Hey ho.

I typed a load of extra stuff here, which then got lost due to my flaky internet connection. :-( 

Short version: Use 'also54.tap'.  You'll need to 'RUN' after loading. (BASinC generated the TAP file, but I can't get it to make it auto-run).

So, I don't know much about what is fast and what is slow in ZX BASIC, but here are a couple of small items to get this thread started.  Hopefully some much more knowledgeable people will join in (I know you are out there, from browsing the entries - impressive stuff in there)!

1.  Spectrum BASIC stores variables in the order you declare them, and when it needs to access one it searches linearly through them in memory. This means that variables that are going to be accessed most often should be declared first.

2. Shorter variable names also speed up the look-up, so use single character variables where possible.

So, thanks to the extra day, I will get to submit my almost-finished entry, yay!

But, it's painfully slow.   I know that there's only so much that can be done about it - it is interpreted BASIC on a slow machine, after all!

Anyone have any top-tips for 'easy win' speedups that are still within the 'BASIC-only' rules?

E.g. fast ways of reading the keyboard, or ways of replacing slow conditionals with gotos and calculations,  clever use of arrays, etc.

I'm extremely rusty with ZX BASIC - this is the first time I've used it in 30 years, and it shows! :-)

Yay!

I thought this contest had been extended till the 16th June, but I now can't find anywhere that says that?

My entry isn't finished, so I haven't uploaded it yet.  Was going to work on it tonight...

Can I still submit it?

I really don't mind if it is disqualified from winning for being late.  Seriously, there's no way it would win anyway - it is truly awful... :-)

I'd forgotten just how sluggish ZX Spectrum BASIC is, so it was a fatal mistake to try to do a fast action game with lots of stuff moving around, as my first Spectrum game in ~30 years.    It was still a fun challenge, but I'm definitely moving to C/asm for my next game efforts.

+1 for BASin.   This is what I'm using for my entry.  Easy to set up, and an easier working environment that a physical Spectrum, but still well within the rules.  Though I'll drag out a real one to test the final results.

FWIW, I hadn't touched Sinclair BASIC in 30+ years,  but it's pretty easy to pick up again.  It is after all, BASIC!

Initial tests suggest that my game is going to have to be even more simple than I expected, such are the limitations on BASIC.  Perhaps a fast action game wasn't the best choice... Never mind, I'll justify the slowness somehow in the back-story. :-)

Yay, sounds fun. I'm in.

A few questions:

1. I assume we aren't supposed to start writing before June 1st?

2. I know there are categories, but is there/will there be a theme?

Cheers - Steve