AGD Video Tutorials

My Old AGD tutorials have been received very well despite not actually completing them. With AGD moving to version 3.0 and beyond, I thought it was time to update them and finally complete them.

I have decided it would be easier to make videos rather than type out all of the stuff in my head. This way you can see how things work, pause the video and work along at your own pace.

I have completed nearly 3 hours of video so far, taking you from loading up AGD to a complete, multi-screen platform game. I have plans to extend the series and extra ones to cover the more in-depth features.

Video Tutorials
Basic Tutorials 1 to 10 - below
Advanced Tutorial

Part 1: The emulator, setting up the game screen, the control keys and the character set editor.

Part 2: Blocks, walls, platforms and building a playing screen.

Part 3: Player Sprite creation, placement, animation and movement

Part 4: Enemy sprite creation, placement animation and movement.

Part 5: Deadly blocks. Text Messages. Lives and Score.

Part 6: Object creation, placement and collection.

Part 7: Sounds. Beeper and AY.

Part 8: Multi screens and map.

Part 9: Killing and completing the game.

Part 10: Final debug, collision distance and creating a basic Loader.


Alexandre said...

Thanks! Now I´ll be able to make my own Spectrum games!

Paul (Random Kak) said...

The best way to save your progress is to use the emulators SAVE AS function and save out normal .SNA or .SXZ files. (this will save a snapshot of everything - use FILE - SAVE AS). Do not use the tape option until you have a complete game ready to be released. Hope that helps.

Anton Dohrn Cafè 2 said...

ps i really admire your style!

Anton Dohrn Cafè 2 said...

OK i got that thanks so much

I was wondering: how do you make a patroling enemy to change sprite according to the direction it goes (like the snakes in antiquity jones which point to left or right according to the direction they move). Also how do you make your sprite to shoot? can you make an enemy to behave like the falling barrels in donkey kong? and finally (i hope) I am saving many times in it possible to erase my previous saved files to free some memory?

thanks so much Gab

Anton Dohrn Cafè 2 said...
This comment has been removed by the author.
Paul (Random Kak) said...

To remove sprites just detect if their X and Y positions are bottom left and then use the REMOVE command.
If you load an empty AGD instance, you can load in any of my games and view the code to see how things work.

Anton Dohrn Cafè 2 said...

yes i was trying to do that...but i do not the value of the x and y at the bottom left or right of teh for teh rest i will have a look at your work thanks so much

Anton Dohrn Cafè 2 said...

ok i got that too!

Anton Dohrn Cafè 2 said...

hey there I just wnated to thank you for these tutorial and the is alittle somthing i started ...hope you like it ;D

Paul (Random Kak) said...

Wow - that's looking really good. Keep up the good work, I'm sure people will love your game.

Anton Dohrn Cafè 2 said...

thanks! i couldn't have done it witohout your tutorials!..I will try to finish it at some point but I am afraid I will have to bother you with questions some more...hope you don't mind too much;D

Anton Dohrn Cafè 2 said...

hey there !
i got one question (teh last one I promise):

o added a magic feather that makes mario fly... i did this by changing the type of my sprite to a "cybernoid control" (when the feather is collected) . it works ok if i remain in my screen but if i go one screen back my sprite disappearS (to change screen i put the same values for screenright, screenleft screenup and screendown that i used for the type 0 control...but it doesn't work...any hints?
if you want to check my progress here is the link

Paul (Random Kak) said...

You probably need to ensure a sprite of the same type is set for the screens you want to use it on. In other words, add the sprite (type) to each screen you expect to use it on.
You may need to hide it in code if the feather has not been collected.

Anton Dohrn Cafè 2 said...

AHHH!!! I see ! i will try that thanks so much! (i am not sure what you mean by "to hide it in code" but i wll try to figure it out)

Anton Dohrn Cafè 2 said...

well that's it here is the finished game (i still don't know how to put a loading and a starting screen with music though...).
something went wrong and the code got corrupted so the second hammer is not counted ....even worse i cannot access the control player code (code 0) so i cannot correct this problem (everytime i got a hammer a variable was increased by 10 which is the number of hammer i got) there anything I can do about it?

anyway I hope you like it (i can send you the file if you like...thanks so much again

Paul (Random Kak) said...

Great game. As for player(0) code - this sometimes happens and is the reason why I save .szx (or snapshot) files about every five minutes. I end up with about 100 different saves, but I can at least go back if something goes wrong. There is no way to fix this - so unless you have a previous save - there is nothing you can do.
You certainly have good graphics skills, so keep up the good work and always save many versions.

Anton Dohrn Cafè 2 said...

Hey i sorted it out! i changed the second hammer from being an object into a sprite (i used the same that i trhow) and i managed its operation form code 3 (a code i used for static items) and it works fine (ok i know i ma not being clear but i am so happy about having this to work since i never programmed in my life)!

So the last question is: how do you put teh loading screen and the starting screen (the one with the instructions )?

Paul (Random Kak) said...

Great news.
Can you use the contact form (top of page) as the instructions are quite long - or check out tutorial ten - that has basic details.

Anton Dohrn Cafè 2 said...

to complete the game I tried to have a "victory screen" instead of a "victory message"

so i set a counter to count how many time kong is hit with a hammer, when the cound goes to a certain number teh game ends (this part works fine and if i use the victory message that is displayed correctly)

to make the victory screen appear, in the "completed game" code i wrote

"screen 9 (that is the number corresponding to my victory screen)
delay 250 "

(i made sure in screen 9 there was a type 0 sprite)
but i did not work: after completion , the game goes back to the initial AGD menu screen...
what is the correct way to write this part?

Anton Dohrn Cafè 2 said...

Hi there
I just wnated to share another little game i made with AGD

hope you like it (well I discovered several things along the way)

cardew said...

hello . i'm looking at starting a game and i'm finding your tutorials invaluable . could you tell me how you resolved the lives not displaying correctly that appeared in tutorial 5 .ta very much

Paul (Random Kak) said...

Hi Cardew, glad you find them useful. The fix is to add the three lines (let line=.. let column= and display lives) to the Restart Screen section in the events editor.

Miquel Ángel Anguís said...


AGD is really amazing, unfortunately I don't know how to put a basic loader to draw my own loading screen or edit the default loader, please somebody can write a little tutorial?
AGD video tutorial 10 does not help very much. Sorry for my poor English.

Unknown said...

Hi, I encouter a problem in saving new character sets. I'm using a regular Spectaculator emulator, and when i save my AGD game (as a new block in the same TAP file), it seems it's all ok. It can be reloaded, and edited. The problem (a bug?) comes when i close AGD and start a new session - sprites and settings are loaded correctly, but i've lost the whole new character set!!
How some programmers have bypassed that? And finally, how is it possible to load a new character set - from what starting POKE number ?

Unknown said...
This comment has been removed by the author.
Unknown said...
This comment has been removed by a blog administrator.
Anonymous said...

Hi Paul,
I've watched all your AGD tutorials, and I'm just wondering which version of AGD you have had the most success with in terms of stability, as I've tried a couple of versions since June this year (2014) and encountered glitches that got in the way of finishing what I was doing so had to give up.

P.S. I just started watching The Spectrum Show from episode one and I'm really enjoying it, especially the flashbacks to news from 1983 and hardware information.
P.P.S I also used to own an Amiga - awesome machine!


Paul (Random Kak) said...

Hi Stephen. AGD 4.3 works best for me, although I have yet to give 4.6 a good run. I too have messed up with 4.4 / 4.5 :-/

Anonymous said...

Great, thanks. I'll have a go with that version instead, maybe I'll have some success now. The Spectrum always was a bit quirky :)

MELT Bartop Arcade Machine said...

Great videos Paul, I have almost finished my first simple platform game after following your tutorials. Creating a Spectrum game is an ambition finally fulfilled! Thank you.
P.S. Any idea how to set up a high score? (needs to be retained in an 8 bit variable I assume and potentially my players could score over 10,000 - So divide SHOWSCORE by 100 and save in a variable?)

Sendy said...

I just want to say thanks so much for this AGD tutorial. It's really given me a fast track to getting work done instead of futzing around learning the basics. I'd say you've saved me a week of time with these few videos. Thanks!

Toninote said...

Please,I'd like a video-tutorial of Tommy Gun.

captaincheesemonger said...

Dont know if my previous comment appeared, so here goes again.

Can you make it so if an object is collected, a door opens in another screen of the game? I've been struggling with the code for that.

Paul (Random Kak) said...

Captaincheesemonger: Contact me via the link at the top of the page if you want full details. There are several ways to do it - use a variable or easiest - check if you have collected the object in the screen initialisation section. Use the command GOT to see if you have the object and then add or remove the door. To do this depends on how you draw the door, either sprite or blocks.

captaincheesemonger said...

Thanks a lot. Ive got it working. I'm making a JSW/MM game called Grantanamo Bay, you are an old woman forced into an old peoples home by her sole living relative to try to get her inheritance, and she has to escape to prove she is corpus mentice to live her life normally. Sounds weird but it might work..

Unknown said...
This comment has been removed by a blog administrator.
FGE said...

can you please explain how a save the texts ? when i edit a text i cant save it with CTRL+A.

Sendy said...

Just a heads up... Beware of deleting text messages. Whenever I do it, it corrupts the object sprites and a bunch of other stuff! Also, save after every edit, with a different file name. Creativity!!

Unknown said...

Hi Paul. I've been binge watchiing the Spectrum show and you led me to AGD. I know I'd have given up without much to show for it if not for these tutorials. I can't thank you enough! Superb content, please keep it coming.

I've just made my first Spectrum game. A 3 screen JSW clone - it just about counts! - and I can't wait to start the next.

james brownn said...
This comment has been removed by a blog administrator.
Unknown said...

Hi Paul
I love Your "The Spectrum Show"
I'm a Speccy freak too.
I try to do something with AGD but I don't know how to add AY music to my production.
Can You explain how to add AY music to AGD?

hari dhameliya said...

Thanks for posting this info. I just want to let you know that I just check out your site and I find it very interesting and informative. Now sharing some information about Spectrum TV

Luis Fernández said...
This comment has been removed by the author.
Luis Fernández said...

It's good to find your page, I saw the whole tutorial, wonderful, it would be necessary to drop objects, inventory and random, but very good.
I love your game Antiquity Jones, it was the one that inspired me to make AGD for my friend, I keep moving forward and I need to mimic all the AGD stuff even the X 1 pixel errors and your videos help me.
Note that X and Y are upside down, I didn't know that.
I'm still getting Percy Penguin Vs3 to work on my Amiga AGD editor.
Continue with your magnificent work.
It would be wonderful if we talk or by email

Post a Comment

Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Dcreators