- Top Stats

Top Posters Top Topic Starters Top Topics
Gryzor 2535
TFM 1672
MacDeath 1273
Puresox 1054
arnoldemu 1030
Gryzor 100
Puresox 65
ComSoft612... 63
cpc4eva 55
Xyphoe 53
Converted GX40... - 264020 Views remax 00:14, 05 May 15
R-Type - 96257 Views Keith A Go... 05:08, 25 February 10
Converting a g... - 78131 Views FRAGKI-201... 01:30, 28 March 13
Quick question... - 70310 Views sigh 18:17, 07 December 10
Bubble Bobble ... - 66650 Views Xyphoe 07:54, 05 January 11


Author Topic: Coolbox [New Game in Basic]  (Read 6819 times)

0 Members and 1 Guest are viewing this topic.

Offline Morri

  • CPC6128
  • ****
  • Posts: 283
  • Country: nz
  • Liked: 234
Coolbox [New Game in Basic]
« on: 12:53, 19 June 16 »
Hi All,
I have been working on a basic game for the last few months. Let me introduce "Coolbox", a puzzle game in the vain of Block Dude the old calculator game.
This game is completely written in Basic, no machine code or loaded files. It has multicoloured sprites, scrolling and in game music (thanks to Mr Lou for the tunes).

I was going to enter it into the CPCRetroDev2016 comp but I have failed to get it to work in Basic 1.0. Initially the sprites caused me some problems. I fixed that only to have the scrolling give me issues so I've given up and decided to release it as Basic 1.1 only. However if someone wants to have a go at making it 464 compatible, please be my guest.  ;D

Hope you guys have fun and give feedback here.
Keeping it Kiwi since 1977

Offline AMSDOS

  • Supporter
  • 6128 Plus
  • *
  • Posts: 3.587
  • Country: au
    • index.php?action=treasury
    • Programs for Turbo Pascal 3
  • Liked: 852
Re: Coolbox [New Game in Basic]
« Reply #1 on: 13:39, 19 June 16 »
I was going to enter it into the CPCRetroDev2016 comp but I have failed to get it to work in Basic 1.0. Initially the sprites caused me some problems. I fixed that only to have the scrolling give me issues so I've given up and decided to release it as Basic 1.1 only. However if someone wants to have a go at making it 464 compatible, please be my guest.  ;D


Would of been happy to give it a crack, you should of PM me earlier with it.  ;D
* Using some of the hardly used Amstrad compilers :D
* I use Firmware in my Assembly code :P
* Have interpreted some BASIC 1.1 programs for BASIC 1.0. :)

Offline Morri

  • CPC6128
  • ****
  • Posts: 283
  • Country: nz
  • Liked: 234
Re: Coolbox [New Game in Basic]
« Reply #2 on: 13:48, 19 June 16 »
Would of been happy to give it a crack, you should of PM me earlier with it.  ;D
You still can mate, it would be great if 464 owners get to have a chance to play it.  8)
Keeping it Kiwi since 1977

Offline AMSDOS

  • Supporter
  • 6128 Plus
  • *
  • Posts: 3.587
  • Country: au
    • index.php?action=treasury
    • Programs for Turbo Pascal 3
  • Liked: 852
Re: Coolbox [New Game in Basic]
« Reply #3 on: 13:56, 19 June 16 »
You still can mate, it would be great if 464 owners get to have a chance to play it.  8)


Yes I can, I just meant it might be a bit difficult to submit it for the compo now.
* Using some of the hardly used Amstrad compilers :D
* I use Firmware in my Assembly code :P
* Have interpreted some BASIC 1.1 programs for BASIC 1.0. :)

Offline ronaldo

  • Dev
  • 6128 Plus
  • *****
  • Posts: 590
  • Country: es
    • Fremos Blog
  • Liked: 788
Re: Coolbox [New Game in Basic]
« Reply #4 on: 14:16, 19 June 16 »
It's a great game, @Morri , congratulations :). It is not easy to make a great playable game in BASIC.

I've tested it and mostly works on BASIC 1.0. The only problem seems to be with your s$ strings. You are using control chars directly there and seems to cause some kind of problem with BASIC 1.0. I think that changing that sequences into CHR$(xx)+CHR$(xx)... instead of directly placing characters may solve the issues.

It's a pitty you haven't asked earlier. It could have been a very competitive game for the compo. You may still reuse some ideas to make a similar but different game and submit it to the compo. Just make sure that games are different enough :).

Offline VincentGR

  • 6128 Plus
  • ******
  • Posts: 1.005
  • Country: gr
    • Parts from the past.
  • Liked: 480
Re: Coolbox [New Game in Basic]
« Reply #5 on: 15:01, 19 June 16 »
This is fantastic!!!!

Thank you.
To blit, or not to blit?
Amiga 1200 Black Project

Offline arnoldemu

  • Supporter
  • 6128 Plus
  • *
  • Posts: 5.331
  • Country: gb
    • Unofficial Amstrad WWW Resource
  • Liked: 2244
Re: Coolbox [New Game in Basic]
« Reply #6 on: 15:05, 19 June 16 »
Amazing  :)
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Offline Phantomz

  • 6128 Plus
  • ******
  • Posts: 1.131
  • Country: gb
  • Liked: 1647
Re: Coolbox [New Game in Basic]
« Reply #7 on: 19:57, 19 June 16 »
@Morri

Thanks a lot for this great little game.  :)

Just had a quick go and got to level five, out of interest, how many levels does it have?

I'll play it some more later on my GX4000  ;D

Offline Morri

  • CPC6128
  • ****
  • Posts: 283
  • Country: nz
  • Liked: 234
Re: Coolbox [New Game in Basic]
« Reply #8 on: 21:39, 19 June 16 »
Yes I can, I just meant it might be a bit difficult to submit it for the compo now.
Submitting is not an option now but that is OK. I was never doing this for anything other than fun anyway. ::)

It's a great game, @Morri , congratulations :) . It is not easy to make a great playable game in BASIC.
Making a fun game in BASIC was the idea so I'm glad people are enjoying it.
Quote
I've tested it and mostly works on BASIC 1.0. The only problem seems to be with your s$ strings. You are using control chars directly there and seems to cause some kind of problem with BASIC 1.0. I think that changing that sequences into CHR$(xx)+CHR$(xx)... instead of directly placing characters may solve the issues.

Yes BASIC 1.0 and use of control codes is very limited. I have a version where the sprites are fixed in BASIC 1.0 and it wasn't too bad to fix, however the next bug I encountered was a scrolling bug using the OUT commands. The screen moved OK but the sprites would not stay on the screen. This one proved too much for me and I just couldn't bear working on it anymore.

@Morri

Thanks a lot for this great little game.  :)

Just had a quick go and got to level five, out of interest, how many levels does it have?

I'll play it some more later on my GX4000  ;D

Good going. It has 9 levels and I even put in an ending. 7 and 8 are real ball busters though.
Keeping it Kiwi since 1977

Offline Kris

  • 6128 Plus
  • ******
  • Posts: 538
  • Country: fr
  • Team Impact
  • Liked: 199
Re: Coolbox [New Game in Basic]
« Reply #9 on: 21:52, 19 June 16 »
Great realisation, especially in Basic.
I really like gfx and gameplay: a nice & addictive game  ;)

Offline Phantomz

  • 6128 Plus
  • ******
  • Posts: 1.131
  • Country: gb
  • Liked: 1647
Re: Coolbox [New Game in Basic]
« Reply #10 on: 22:07, 19 June 16 »
Good going. It has 9 levels and I even put in an ending. 7 and 8 are real ball busters though.

@Morri

Cool.  8)

Is it ok to upload the cpr for plus users to use and a version for the GX4000 where I've changed the controls ?

In the GX4000 version I've made it push down to pick up and drop cube, Button 1 to turn music on / off, and Button 2 to restart the level, the console pause button goes back to the main menu.  ;D

I've only tested it in emulation at the moment but appears to work ok.  ;)

Offline Morri

  • CPC6128
  • ****
  • Posts: 283
  • Country: nz
  • Liked: 234
Re: Coolbox [New Game in Basic]
« Reply #11 on: 22:21, 19 June 16 »
@Morri

Cool.  8)

Is it ok to upload the cpr for plus users to use and a version for the GX4000 where I've changed the controls ?

In the GX4000 version I've made it push down to pick up and drop cube, Button 1 to turn music on / off, and Button 2 to restart the level, the console pause button goes back to the main menu.  ;D

I've only tested it in emulation at the moment but appears to work ok.  ;)
Yeah of course, my first GX4000 game.  8)
Keeping it Kiwi since 1977

Offline Phantomz

  • 6128 Plus
  • ******
  • Posts: 1.131
  • Country: gb
  • Liked: 1647
Re: Coolbox [New Game in Basic]
« Reply #12 on: 22:34, 19 June 16 »
Yeah of course, my first GX4000 game.  8)

Cool.  8)

I don't know if there is any highscore table to get stuck on.  :laugh:

Here is the cart with controls unchanged and one for the GX4000.  :)

Offline HAL 6128

  • 464 Plus
  • *****
  • Posts: 479
  • Country: de
    • index.php?action=treasury
  • Liked: 234
Re: Coolbox [New Game in Basic]
« Reply #13 on: 23:02, 19 June 16 »
Very good and impressive BASIC game!
...proudly supported Pentomino and NQ-Music-Disc with GFX

Offline SRS

  • Supporter
  • 6128 Plus
  • *
  • Posts: 519
  • Country: de
  • Schneider CPC464 - what else ?
  • Liked: 515
Re: Coolbox [New Game in Basic]
« Reply #14 on: 00:35, 20 June 16 »
nice game !

Tried to BASCOMPILE it to get it on 464 but if gives me syntax error in line 80.

"ENT -3,=1000,60,=3000,40"

wondering why this works on emulator but bc does not like it
« Last Edit: 00:39, 20 June 16 by SRS »

Offline ||C|-|E||

  • Administrator
  • 6128 Plus
  • *****
  • Posts: 1.778
  • Country: gb
    • index.php?action=treasury
    • Mundo CPC
  • Liked: 1000
Re: Coolbox [New Game in Basic]
« Reply #15 on: 01:24, 20 June 16 »
It is very cool! I was playing it for a while and the only thing I miss is being able to face left or right without moving the main character :)

Offline Morri

  • CPC6128
  • ****
  • Posts: 283
  • Country: nz
  • Liked: 234
Re: Coolbox [New Game in Basic]
« Reply #16 on: 01:46, 20 June 16 »
nice game !

Tried to BASCOMPILE it to get it on 464 but if gives me syntax error in line 80.

"ENT -3,=1000,60,=3000,40"

wondering why this works on emulator but bc does not like it

I'm not a sound person but I believe the equals sign is a hardware direct call from basic used for more advanced sounds. Removing this line would affect one of the sound effects but should be OK.

It is very cool! I was playing it for a while and the only thing I miss is being able to face left or right without moving the main character :)

I thought about this feature and whether or not to do it (Block dude allows this). I decided not to as it makes the stages slightly more challenging but was careful to make sure all the levels can be passed.
People are free to edit the code as they wish and adding this feature should be fairly easy.
Keeping it Kiwi since 1977

Offline AMSDOS

  • Supporter
  • 6128 Plus
  • *
  • Posts: 3.587
  • Country: au
    • index.php?action=treasury
    • Programs for Turbo Pascal 3
  • Liked: 852
Re: Coolbox [New Game in Basic]
« Reply #17 on: 03:05, 20 June 16 »
Submitting is not an option now but that is OK. I was never doing this for anything other than fun anyway. ::)
Making a fun game in BASIC was the idea so I'm glad people are enjoying it.
Yes BASIC 1.0 and use of control codes is very limited. I have a version where the sprites are fixed in BASIC 1.0 and it wasn't too bad to fix, however the next bug I encountered was a scrolling bug using the OUT commands. The screen moved OK but the sprites would not stay on the screen. This one proved too much for me and I just couldn't bear working on it anymore.
 
Good going. It has 9 levels and I even put in an ending. 7 and 8 are real ball busters though.


I noticed one of your Coolbox dude wasn't displaying itself where they should on the title screen, so loaded the program, I put an end statement at 1051 (sorry I renumbered it), run the program, when I press any key to begin the program ends and did this test:


Code: [Select]
for x=1 to 30:locate x,10:print s$(1);chr$(22);chr$(0);:next x


sure enough the XPOS of the character gets to 19 and then it bellies up. So it's a similar problem to the one you had earlier with the FourXs. I was checking the length of your s$(1) and found it was 25 characters in length, but when I counted the BackSpaces in it, this brought that back to the 19 figure.


So it looks like the difference in string management on the 464 which is causing those problems.
* Using some of the hardly used Amstrad compilers :D
* I use Firmware in my Assembly code :P
* Have interpreted some BASIC 1.1 programs for BASIC 1.0. :)

Offline Morri

  • CPC6128
  • ****
  • Posts: 283
  • Country: nz
  • Liked: 234
Re: Coolbox [New Game in Basic]
« Reply #18 on: 03:23, 20 June 16 »

I noticed one of your Coolbox dude wasn't displaying itself where they should on the title screen, so loaded the program, I put an end statement at 1051 (sorry I renumbered it), run the program, when I press any key to begin the program ends and did this test:


Code: [Select]
for x=1 to 30:locate x,10:print s$(1);chr$(22);chr$(0);:next x


sure enough the XPOS of the character gets to 19 and then it bellies up. So it's a similar problem to the one you had earlier with the FourXs. I was checking the length of your s$(1) and found it was 25 characters in length, but when I counted the BackSpaces in it, this brought that back to the 19 figure.


So it looks like the difference in string management on the 464 which is causing those problems.

That was the conclusion I came to as well. BASIC 1.0 doesn't like the backspaces. I solved it using techniques we discussed in the previous threads and had everything working until the screen scrolled using the OUT &BC00,XX command. Then I started getting a whole new host of display bugs and I lost heart after that.

When I get home from work, I'll post the dsk image of the BASIC 1.0 code I had so far so you can see the issue. Maybe someone better than me can see the issue and fix it.
Keeping it Kiwi since 1977

Offline AMSDOS

  • Supporter
  • 6128 Plus
  • *
  • Posts: 3.587
  • Country: au
    • index.php?action=treasury
    • Programs for Turbo Pascal 3
  • Liked: 852
Re: Coolbox [New Game in Basic]
« Reply #19 on: 03:32, 20 June 16 »
Sorry I was following your comments, unfortunately I thought I was playing with the 464 attempt.

I noticed your scroll routine I'll have to go back to the one made earlier, I think it works with basic 1.0.


EDIT:Not to worry about the scroll routine I made earlier, seems to work differently from the one you've made.
« Last Edit: 08:53, 20 June 16 by AMSDOS »
* Using some of the hardly used Amstrad compilers :D
* I use Firmware in my Assembly code :P
* Have interpreted some BASIC 1.1 programs for BASIC 1.0. :)

Offline Morri

  • CPC6128
  • ****
  • Posts: 283
  • Country: nz
  • Liked: 234
Re: Coolbox [New Game in Basic]
« Reply #20 on: 09:50, 20 June 16 »
Here is an updated dsk file with my best 464 code so far. Quite a few additions to the original file in my 1st post.
I think it still works OK in BASIC 1.1.
Keeping it Kiwi since 1977

Offline AMSDOS

  • Supporter
  • 6128 Plus
  • *
  • Posts: 3.587
  • Country: au
    • index.php?action=treasury
    • Programs for Turbo Pascal 3
  • Liked: 852
Re: Coolbox [New Game in Basic]
« Reply #21 on: 12:26, 20 June 16 »
Here is an updated dsk file with my best 464 code so far. Quite a few additions to the original file in my 1st post.
I think it still works OK in BASIC 1.1.


Yes it's still working fine with BASIC 1.1, unfortunately I haven't been able to pinpoint the source of the trouble. I think the Scroll is working fine, but in BASIC 1.0 when the scroll has been carried out and new scenery is redrawn in Window 3, your character is ending up there as well. I just presumed all the PRINT & LOCATE statements without any Stream numbers refer to the main window, and altered them accordingly, but I'm still getting that result.  ::)
* Using some of the hardly used Amstrad compilers :D
* I use Firmware in my Assembly code :P
* Have interpreted some BASIC 1.1 programs for BASIC 1.0. :)

Offline ronaldo

  • Dev
  • 6128 Plus
  • *****
  • Posts: 590
  • Country: es
    • Fremos Blog
  • Liked: 788
Re: Coolbox [New Game in Basic]
« Reply #22 on: 20:59, 20 June 16 »
It's curious that it only happens at the start of the scroll. Once you go 5 or 6 steps into the scroll, everything works again.

I still think it could be due to some kind of bug in the implementation of control codes in BASIC 1.0. Have you tried using no control codes? What about a drawing subroutine instead of a control-coded string? It may work.

Offline Dagger

  • CPC664
  • ***
  • Posts: 122
  • Country: gb
  • Liked: 38
Re: Coolbox [New Game in Basic]
« Reply #23 on: 22:38, 20 June 16 »
I finished all the levels, good game, very addictive. Please do some more levels
Life's a bitch. You marry one or two then you die !

Offline TFM

  • Visit the mysteries of the CPC at www.futureos.de
  • Supporter
  • 6128 Plus
  • *
  • Posts: 9.899
  • Country: aq
  • Space Chicken for FutureOS is free!
    • index.php?action=treasury
    • FutureOS - The revolution on CPC!
  • Liked: 1977
Re: Coolbox [New Game in Basic]
« Reply #24 on: 23:21, 20 June 16 »
Nice little cool game!  :)
TFM of FutureSoft
Also visit the CPC and Plus users favorite OS: FutureOS - The Revolution on CPC6128 and 6128Plus