English Amiga Board


Go Back   English Amiga Board > Coders > Coders. Language > Coders. Blitz Basic

 
 
Thread Tools
Old 16 April 2018, 23:10   #21
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 3,140
Well, hopefully it helps anyway
Daedalus is online now  
Old 17 April 2018, 15:32   #22
Marle
Pixel Vixen

 
Join Date: Feb 2018
Location: UK
Posts: 116
Definitely! It's the first example of tile based scrolling that I have read that is beginning to make sense.

Would it be an awful pain in the bum to ask what other topics you covered in Amiga Future in the previous 9 parts of the series?

I think I am fairly OK with the rest of the issues I need to manage (such as the tile map data structure, colision detection, and general tracking of resources in the game but I am sure something will crop up as I start working on this game properly.

I did at least return to DPaint III on my A600 this weekend and despite not having done any pixel art for 20 years pretty much, it went well! https://www.youtube.com/channel/UCKw...vAE6SiU4GzrVGQ - A preview of a video about creating pixel art in Deluxe Paint

This game may take me 3 to 4 years to complete, but given my Amiga 600 is still working 26 years after I bought it, I'm not in any hurry! I have to come up with a good story to start with

I think the coolest thing to explore is going to be using copper lists to re-use sprites and change colours, a technical leap for me, but a lot of fun!
Marle is offline  
Old 17 April 2018, 22:43   #23
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 3,140
Good to hear! No problem, this is what I covered:

Part 1: Setting up Blitz, using the editor, the different versions of Blitz, variables, printing text.

Part 2: Using the debugger, If...Then, various loops (For...Next, While...End While, Repeat..Until), Goto and Gosub (and that you should avoid them).

Part 3: Variable types, procedures (statements & functions), local variables, using Intuition (Events, windows, simple Gadtools buttons).

Part 4: Shared & global variables, arrays, more Gadtools gadgets (checkboxes, sliders, radio buttons, cycle gadgets...),testing for success, using OS constants and tags, comments, Select...Case (Switch...Case in other languages).

Part 5: Newtypes (Structs in other languages), pointers, adjusting a Gadtools window layout e.g. for resizing a window, menus.

Part 6: Font sensitivity with Gadtools programs, introduction to graphics concepts (palettes, shapes, blitting, bitmaps, primitive drawing), loading graphics.

Part 7: Advanced blitting (Queued and buffered blits), double buffering, simple animation. This issue starts including the listings from the article on the cover CD since the article contains a fairly long listing for some simple graphics demonstrations (and also includes the listings from the previous issues as they weren't included, though they're pretty short).

Part 8: Blitz mode (shutting down the OS), dual playfield displays, simple scrolling (within a single bitmap), sprites.

Part 9: Simple infinite scrolling (repeating a single bitmap), large sprites, parallax scrolling, AGA features, some simple copper effects.

Part 10: You have this one Tile-based scrolling (beyond a single bitmap), collision detection.

And, just in case you're interested, the future parts will cover:

Part 11: Reading and writing text files, loading and playing sounds, changing sound pitch and volume.

Part 12: Reading and writing binary files, byte order (endianness), system requesters (simple information requesters, ASL file and drawer requesters).

That's about all the topics I will be covering in the series, but I'll finish up with two parts that give the full listing with explanation of a Tron-style game that features a 2-player split screen with parallax scrolling, sprites, blits, sound, manual collision detection, 2-button joystick control... It does require AGA, but could be converted to ECS if the colours etc. were reduced, but it's more for the technical aspects of using the hardware than to look particularly good so I'll leave that to people to experiment with themselves. The game code itself is finished but these articles are only just started.

Part 13: Setting up the game, the screen, joysticks, movement, collision detection, animation.

Part 14: Whatever's left (sound, lives, weapons, sprites).

Nice work with Deluxe Paint! The coding part is fine for me, it's the artistic side where I totally lack any decent skills. I have teamed up with a guy to code a game while he does the artwork, but sadly I'm making very slow progress due to a complete lack of spare time... Still, as you're aware, once it's enjoyable then it doesn't matter so much how long you spend on it.

Advanced use of the copper is an artform in itself. Blitz has support for programming the copper, and comes with some commands for making the most common effects easier without having to write the copper code yourself.

Last edited by Daedalus; 17 April 2018 at 22:50.
Daedalus is online now  
Old 18 April 2018, 10:25   #24
Marle
Pixel Vixen

 
Join Date: Feb 2018
Location: UK
Posts: 116
Ahh brilliant thanks for such a wonderful run down!

I think most of that I won't necessarily be needing such as the Intuition/Gadtools stuff, and I'm pretty comfortable with the general logic and staying away from gosubs and stuff I was allergic to those in the old days as well haha.

I will definitely pick up the following issues and the previous 3, as they've been great reads and you can always learn something new! I know I will.

I guess the reason I am targetting OCS/ECS is because that is what I have to hand, and I'm really curious to see how far I can push my ability in this process as well as hopefully create in the end something really nice, but I have a long way to go yet. I really want to explore extra half bright mode too as I think on the whole JRPGs don't need all of that super smooth Robocod-esque 50fps scrolling, so I'm hoping to experiment with a clever palette and different 'times of day' or 'epochs' to the game which will bring different palettes from one stage to the next.

I know the Amiga can do something like Chrono Trigger or Terranigma except some of the super cool Mode 7 stuff (although maybe in ASM...but I'm nowhere near clever enough), it just needs patience, skill (ok I have the first at least !) and whilst I don't want to be reckless with filespace, we aren't hampered as much by the storage space of an 880K disk any more!

Cheers on the graphics comments, I'm sure I have a lot to work on myself on that front too, it's been a long time! I have a problem on the music/sound front, I love music, but I cannot play an instrument or a tracker to save my life...
Marle is offline  
Old 18 April 2018, 10:47   #25
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 3,140
Cool I hope you can get more out of the magazines than just the tutorials though, it seems a lot to get them just for a couple of pages... Also, I should point out that Part 9 is mostly AGA based. It can be adapted for ECS by reducing the number of colours in the assets and the size of the sprites, or using multiple sprites (though that will get tricky and use up most of the sprites in one go).

As for music, I know exactly what you mean IIRC there was a post on EAB a while ago where someone offered the use of their mods for other people's projects. I don't know if they would be the style you're looking for, but worth digging up. If you're lucky, you might also find someone interested in the game who was willing to create some appropriate music for you.

Edit: Here's the link: http://eab.abime.net/showthread.php?t=76612

Last edited by Daedalus; 18 April 2018 at 11:12.
Daedalus is online now  
Old 18 April 2018, 12:00   #26
Marle
Pixel Vixen

 
Join Date: Feb 2018
Location: UK
Posts: 116
Oh yes there is a lot to read, seems a bit weird reading an Amiga magazine for the first time since Amiga Format closed...!

Thanks for the heads up on part 9, I'm fairly conversant on some of the AGA differences (such as the larger 32px/64px sprites and colour depth) but it will be interesting to compare the differences and see what we can do.

Thanks for the link - yes I think that's what I had in mind that I would be looking for a collaboration. I think learning to play the keyboard and then how use use MIDI and a tracker and stuff would be a bit too much for me!
Marle is offline  
Old 24 April 2018, 10:55   #27
Marle
Pixel Vixen

 
Join Date: Feb 2018
Location: UK
Posts: 116
I got the code working last night! Yay! And it runs really well on my Amiga 600 (stock 68000 with 2MB Chip RAM)

Thanks so much!

My next step will be to enhance the tile map a bit with an EHB palette, see how that performs.

And then, get it working vertically (shouldn't be too tricky now I have got the idea.)

And then, get it working both ways.

And then diagonally

EEK!

I also have some really cool ideas to push the A600's ECS chipset, by using a clever palette that I can either modify the colour palette every few screen cycles to give the appearance of shimmering light on parts of the tilemap, and then from there start working on copper lists that change the colours as the vertical beam travels down the screen to create darker parts of the scene at the top of the screen or enhance the colours in certain objects.

I really like the idea of creating trees in tilemaps, that slightly change colour to mimic leaves flitting in the breeze and the way that changes the leaves colour relative to the light source.

How cool would that be!
Marle is offline  
Old 24 April 2018, 11:20   #28
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 3,140
No problem, glad I could help

Yeah, palette cycling can be used for many such clever effects - from memory, the traffic movement in the original Sim City was done with palette cycling, as were some background animations in Settlers and so on. Blitz has support for palette cycling, check out the SetCycle and CyclePalette commands. These can be used to rotate colours in a defined range automatically at a certain speed, making such animations easy. Creating the animation first in DeluxePaint will let you set it all up, then you can just transfer the parameters (colour range and speed) to your code to get the same effect.

I've never actually used EHB mode in Blitz. I can't see why it would be a problem really, you just have to be careful with your palette and make sure to set up the display with the EHB flag instead of a standard 6-plane display (which would be 64 colours and AGA only).
Daedalus is online now  
Old 24 April 2018, 11:24   #29
idrougge
Registered User
 
Join Date: Sep 2007
Location: Stockholm
Posts: 3,618
Quote:
Originally Posted by Marle View Post
I think most of that I won't necessarily be needing such as the Intuition/Gadtools stuff, and I'm pretty comfortable with the general logic and staying away from gosubs and stuff I was allergic to those in the old days as well haha.
Sooner or later you will use those gosubs, because they have much smaller overhead in Blitz than procedure calls.
idrougge is offline  
Old 24 April 2018, 20:45   #30
Havie
Registered User
 
Join Date: Mar 2012
Location: UK
Posts: 317
Quote:
Originally Posted by Daedalus View Post
Good to hear! No problem, this is what I covered:

Part 1: Setting up Blitz, using the editor, the different versions of Blitz, variables, printing text.

Part 2: Using the debugger, If...Then, various loops (For...Next, While...End While, Repeat..Until), Goto and Gosub (and that you should avoid them).

Part 3: Variable types, procedures (statements & functions), local variables, using Intuition (Events, windows, simple Gadtools buttons).

Part 4: Shared & global variables, arrays, more Gadtools gadgets (checkboxes, sliders, radio buttons, cycle gadgets...),testing for success, using OS constants and tags, comments, Select...Case (Switch...Case in other languages).

Part 5: Newtypes (Structs in other languages), pointers, adjusting a Gadtools window layout e.g. for resizing a window, menus.

Part 6: Font sensitivity with Gadtools programs, introduction to graphics concepts (palettes, shapes, blitting, bitmaps, primitive drawing), loading graphics.

Part 7: Advanced blitting (Queued and buffered blits), double buffering, simple animation. This issue starts including the listings from the article on the cover CD since the article contains a fairly long listing for some simple graphics demonstrations (and also includes the listings from the previous issues as they weren't included, though they're pretty short).

Part 8: Blitz mode (shutting down the OS), dual playfield displays, simple scrolling (within a single bitmap), sprites.

Part 9: Simple infinite scrolling (repeating a single bitmap), large sprites, parallax scrolling, AGA features, some simple copper effects.

Part 10: You have this one Tile-based scrolling (beyond a single bitmap), collision detection.

And, just in case you're interested, the future parts will cover:

Part 11: Reading and writing text files, loading and playing sounds, changing sound pitch and volume.

Part 12: Reading and writing binary files, byte order (endianness), system requesters (simple information requesters, ASL file and drawer requesters).

That's about all the topics I will be covering in the series, but I'll finish up with two parts that give the full listing with explanation of a Tron-style game that features a 2-player split screen with parallax scrolling, sprites, blits, sound, manual collision detection, 2-button joystick control... It does require AGA, but could be converted to ECS if the colours etc. were reduced, but it's more for the technical aspects of using the hardware than to look particularly good so I'll leave that to people to experiment with themselves. The game code itself is finished but these articles are only just started.

Part 13: Setting up the game, the screen, joysticks, movement, collision detection, animation.

Part 14: Whatever's left (sound, lives, weapons, sprites).

Nice work with Deluxe Paint! The coding part is fine for me, it's the artistic side where I totally lack any decent skills. I have teamed up with a guy to code a game while he does the artwork, but sadly I'm making very slow progress due to a complete lack of spare time... Still, as you're aware, once it's enjoyable then it doesn't matter so much how long you spend on it.

Advanced use of the copper is an artform in itself. Blitz has support for programming the copper, and comes with some commands for making the most common effects easier without having to write the copper code yourself.
You should put this all together and make a Blitz book as the mythical one by Neil Wright looks like it never existed...
Havie is offline  
Old 25 April 2018, 08:29   #31
saimon69
J.M.D - Bedroom Musician

 
Join Date: Apr 2014
Location: los angeles,ca
Posts: 842
For music i can help, did help another project in AMOS (for now in hold) and it happen that i am a fan of the Chrono Trigger soundtrack too

Some of the in-progress songs are here:
Holy Warrior Soundtrack

Last edited by saimon69; 25 April 2018 at 08:37.
saimon69 is offline  
Old 25 April 2018, 10:08   #32
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 3,140
Quote:
Originally Posted by Havie View Post
You should put this all together and make a Blitz book as the mythical one by Neil Wright looks like it never existed...
Ha, the idea of actually writing a book has crossed my mind, but with so little time available I'd never get to it. I'd need to rewrite it all for a book instead of the articles. Besides, eventually (probably a year or two after the series is finished), Amiga Future will publish all parts of the tutorial on their website. And there's another Blitz book that showed up recently by a Polish guy, though I haven't read it myself so I don't know the specifics of what it covers.

Maybe some day
Daedalus is online now  
Old 26 April 2018, 20:27   #33
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 645
I'd definitely buy a book on it. I get the feeling that blitz is very powerful but held back by the dark arts required to make the most of it. I know all the information is out there in various readmes but having it all in one place would be great.
E-Penguin is offline  
Old 27 April 2018, 12:20   #34
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 3,140
Interesting... Well I might think about it as a long-term project for next year The Polish Blitz book is also available in English apparently, so that's also worth a look - maybe I could cover a lot of other stuff that it doesn't look at - AmiBlitz 3 for example (if that's not covered). Something for me to think about anyway
Daedalus is online now  
Old 27 April 2018, 13:10   #35
peceha
Registered User

peceha's Avatar
 
Join Date: Dec 2017
Location: Poland
Age: 42
Posts: 113
+1 for the book - I would definitely buy it.

The polish book you are talking about covers only basics (literally) so it is an easy starter for somebody who knows nothing - but it doesn't take you anywhere beyond this (and there is nothing about AmiBlitz 3 in it).

If everything you listed in post #23 would be in your book than it is a perfect idea !
peceha is online now  
Old 27 April 2018, 13:30   #36
E-Penguin
Banana

 
Join Date: Jul 2016
Location: Darmstadt
Posts: 645
In order to save reinventing the wheel, maybe you could do a "special" in collaboration with Amiga Future magazine that acts as a compendium of the articles you've already written along with extra stuff.
E-Penguin is offline  
Old 27 April 2018, 13:42   #37
Daedalus
Registered User

Daedalus's Avatar
 
Join Date: Jun 2009
Location: Dublin, then Glasgow
Posts: 3,140
Thanks for the thoughts guys (And apologies to the OP for wandering a bit off topic here...) Good ideas, sure we'll see what happens
Daedalus is online now  
Old 27 April 2018, 20:12   #38
kgc210
Registered User

 
Join Date: Jun 2016
Location: Stoke-On-Trent, England
Posts: 425
Marle what are your thoughts on the story so far?
Or are you just focusing on the technical / functionality side of things for now?
kgc210 is offline  
Old 29 April 2018, 23:07   #39
Marle
Pixel Vixen

 
Join Date: Feb 2018
Location: UK
Posts: 116
Quote:
Originally Posted by saimon69 View Post
For music i can help, did help another project in AMOS (for now in hold) and it happen that i am a fan of the Chrono Trigger soundtrack too

Some of the in-progress songs are here:
Holy Warrior Soundtrack
That is so cool thank you so much I will definitely check out your music, so lovely to see another Chrono Trigger fan here.

I have no idea what my game will turn out like, but I'm sure it will have to have a Chrono Trigger esque ending, that made me rather emotional! Because I am such a sap!
Marle is offline  
Old 29 April 2018, 23:11   #40
Marle
Pixel Vixen

 
Join Date: Feb 2018
Location: UK
Posts: 116
Quote:
Originally Posted by Daedalus View Post
Thanks for the thoughts guys (And apologies to the OP for wandering a bit off topic here...) Good ideas, sure we'll see what happens
No trouble at all! And happy this has stimulated conversation!

I know what everyone is referring to, back in the day when I first properly got going with Blitz BASIC, it must have been around 1996 as I finally got Ultimate Blitz on CD I think and had a manual but then immediately ran into the issue of it being utterly all over the place. Assuming Mark Sibly wrote it, one minute it's remonstrating at Commodore and their lack of docs, and the next it's saying the copper examples are on the Extras disk....can I find them? Or examples that are either non existent in the manual or in the errata....Haha How I managed to even use it at all at times in the pre-internet (for me, I didn't get online at home until 1999) days is anyones guess!

You can tell I have another question coming up!!

Marle is offline  
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
[Found: Toki] Side-scrolling game (girl getting abducted) Eccentric Looking for a game name ? 14 01 January 2018 11:12
How bitmaps are implented - making a scrolling game Shatterhand Coders. Blitz Basic 49 25 January 2016 10:39
side scrolling, ball kicker platform game AnonA Looking for a game name ? 15 17 August 2010 21:15
Vertical scrolling motorcycle game.. Anyone? Thrash75 Looking for a game name ? 11 18 May 2005 19:44
Side scrolling terrorist game. Jay Fat Looking for a game name ? 8 25 November 2004 00:14

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 13:52.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2018, vBulletin Solutions Inc.
Page generated in 0.09064 seconds with 16 queries