Jump to content


Photo

Kids with GM


  • Please log in to reply
29 replies to this topic

#1 lballaty

lballaty

    GMC Member

  • New Member
  • 83 posts

Posted 23 May 2012 - 10:04 PM

I started a game programing ... kind of computer club at my kid's school this year using GM.

It was a spur of the moment thing .... not much planning, because my son was interested and thought other kids would be too and he would spend some time playing the partial games I had created with GM and modifying them to suit himself.

.... so my approach was that I simply took the tutorials that exist and started going through how they work with the kids at our meetings one by one. From the very simple one with the moving, bouncing objects working toward mazes, platform etc.

Then we would add levels, change how the games worked etc. We worked our way up to the platform game tutorial and then we started a game of our own.

This worked fairly well for some kids but others got lost after a while and we had to review quite a bit.

I have to say that I'm not a professional programmer I play with this for fun so it's as much a learning experience for me.

Starting out I had kids from 5th grade to 9th grade. There were 12 of them. I'm down to 5 and 2 of them seem to be really catching on while the other three are a little lost but trying. You can quess the ages of the ones catching on vs the ones a little lost. The kids left are in 7th, 8th and 5th grades. So at very different stages of intelectual maturity.

I've learned a lot myself in the process and I can tell you it is no easy task to present the material in such a way that the majority get it. Especially when you have kids at varied levels.

I have an additional challenge in that the kid's primary language is Czech with only very little english spoken - so I translate everything ... on the fly. We basically set up a projector so that they could see what I'm doing and they try to do the same on their computer which has GM lite installed on it.

Then I give them things to try to do for the next meeting and those that try and have issues we go through them next time. It's a bit ad hoc.

I would like to put together some kind of intro course that would be suitable for kids. Something more organized that would allow me to more systematically teach the features available in the GUI to start and touch on the scripting.

I found that there is enough that can be done with the pre-made functions to allow one to create pretty nice basic games with just a little scripting to streamline a few things like game initialization.

If someone has something that could be used as a template for a course like this ... it would be great if you could share it.

I have heard that GM is used in schools but I haven't found much material online so far that would be suitable for the agegroup I have.
  • 0

#2 Reketh

Reketh

    Aspiring Artist

  • GMC Member
  • 27 posts
  • Version:GM8

Posted 23 May 2012 - 10:17 PM

Well, as far as templates go, what kind of things would you be introducing in the first class sessions?
  • 0

#3 @Alex@

@Alex@

    Retired GMC Reviewer

  • Reviewer
  • 3073 posts
  • Version:Unknown

Posted 23 May 2012 - 11:14 PM

I think making an entire class strick to a set of tutorial is a stupid and outdated idea. It's like those "Computing" classes I took at school, I had a 2 year course that I was able to finish in a matter of weeks but others took the full 2 years. Tailoring the experience for indivuals with some sort of structure for the day to day is my personal perference. I had considered running a class at my sisters school but interest was too low for me to get one of the rooms I needed.

I'd always focus on the design aspect first. Get the creative juices flowing, This is a little sort of lesson structure thing I was thinking off and is obviously not rigid at all.
Spoiler

Edited by @Alex@, 23 May 2012 - 11:24 PM.

  • 1

#4 lballaty

lballaty

    GMC Member

  • New Member
  • 83 posts

Posted 24 May 2012 - 01:11 PM

Well, as far as templates go, what kind of things would you be introducing in the first class sessions?


Well, I have to admit it's not a simple question to answer.

I think that different approaches can be taken.

I think that there is a kind of basic knowledge that's needed on the simple mechanics of Gamemaker which are needed to do anything at all. Assuming I'm going to use the built in graphics editor etc. So trying not to get into other s/w unless there is a specific need. This can be intertwined with a discussion of and implementation of game design ideas.

Most kids responded better to a structured approach of taking an existing program apart to get to understand the mechanics/logic and they were able to get their brain around how the logic is built to make things work and respond to the user. This required a very systematic step by step approach though and took a lot of time.

Some wanted to design the game and then try to figure out how to make it happen in the IDE. They were the easiest to work with because they would explore on their own and they generally got further with their games just because they were more willing to experiment.

I could see where many would benefit from videos type of teaching material because it's visual and they can go as fast or slow as they want. So let's say how to with a specific task. I'm looking through the tutorials and some of those look good but I need to adapt them to the ages I'm dealing with.

There has to be some structure provided in most cases for a class like this otherwise the kids that go slower get completely lost. With no structure at all the kids also tend to loose focus and it's impossible to guide them each along each in a completely different path.

Many didn't really have any idea what kind of game they would like to make and they got ideas as we went through the different types and saw how the various games were built and made to work.

Once they get some basic skills then it's easier to have them to be working on different things and at different levels.

I've gotten the most mileage so far by making simple games ... like bricks or a maze game and then going through how it works and progressively going to more and more complex ones.

I was just thinking though that it's been a bit ad hoc and in order to make it repeatable I would try to document it a bit. Maybe creating some materials based on the tutorial and demo games .... that might work.

Most are not well commented although once you understand Gamemaker a bit it's not difficult to figure out what is going on.

In this case though these kids have almost no english skills ... so visual is better.

Anyway just thinking out loud a bit .....
  • 0

#5 PetzI

PetzI

    GMC Member

  • GMC Member
  • 1026 posts
  • Version:GM8.1

Posted 24 May 2012 - 02:48 PM

The method you're trying seems to be fine, provided you're a patient and competent teacher. That said, I think the language barrier is your main problem here. Game Maker does it's best to guide you by itself by explaining each icon's function, but being totally except for the icons isn't good at all. To learn, they have to mess around with the program, and they can't mess around if they can't read. There's no Czech translation of the documentation, but if your kids can read any of the languages listed here, it would probably be helpful.

I think your best option is to have them learn English while teaching your programming class. You said you were translating things on the fly, so I propose you start making a sort of dictionary. Whenever one of them asks "what does this function do?" or "what does this mean?", you translate whatever they're asking about and write it down on a paper or a white board if you have one. At the end of each class, copy the updated dictionary into each computer and e-mail it to the kids as well. Over time, you'll compile a fair amount of Game Maker's documentation in Czech, and eventually they'll start memorizing English words and picking up on the language, so it will be easier to remember what the hell they're doing.

I also recommend that you encourage them not only to do the homework you give them but also try to mess around on their own. The fun part of programming is to program what you feel like programming, instead of just following whatever someone else is saying.
  • 1

#6 The Legend

The Legend

    A Jesus Freak

  • GMC Member
  • 1052 posts
  • Version:GM:Studio

Posted 24 May 2012 - 07:19 PM

Well, I was thinking of doing the same thing but I don't have anyway to arrange it (long story) but anyways, I would start with D&D in simple mode, then move on to D&D advanced mode. From there, focus on teaching how to do stuff with variables in code. After that, take all of the D&D from simple mode and show them how to use it in GML and do the same for the advanced stuff. This is just a base outline and I'd LOVE to help you make a lesson plan if you need help.

Best of luck! :thumbsup:
  • 0

#7 lballaty

lballaty

    GMC Member

  • New Member
  • 83 posts

Posted 25 May 2012 - 11:30 AM

Yes, the language is one of the bigger obstacles. The other is that not all the kids have a computer at home. Seems strange maybe but not everyone here can afford it by far. I'm doing this with kids in the country not in the city and the income level is much lower. So the only time many of them have to practice is in school. I don't know how competent a teacher I am, but I think I'm pretty patient :) Though my kids at home may disagree ....

It's kind of trial and error but it looks like some of the kids are starting to get it.

I think you're right that I should start compiling a dictionary. Maybe I'll make it in Gamemaker ....:) that db extension makes it pretty easy to do this kind of thing.

The kids do study english but hey, they're 11 and have basically no one to practice with so it's a challenge and their teachers have limited english so ....you can imagine.

We have the lite version of the s/w anyway in the school so we're a bit limited but we're saving up for a set of the full versions.There is a nice discount for educational so we'll take advantage of that once we're able and get 10 PCs equipped with full versions. So far though it's definitely enough to get started and make some games.

Having results relatively quickly ....is also key with young kids ... by results I mean a playable game....otherwise they tend to loose focus.

One step at a time.

I think the idea of a lesson plan is good, I quess that is what I meant by a template.

I thought since YOYO says this s/w is used in schools there might be something already out there I could use ... not reinvent the wheel and all that ...likely none of those folks have read this post though :)

I'm going to try to create something and put it up for feedback when I get a bit of time.

thanks for the input
  • 0

#8 PetzI

PetzI

    GMC Member

  • GMC Member
  • 1026 posts
  • Version:GM8.1

Posted 25 May 2012 - 03:19 PM

The full version of GM is useful, but I feel like you'll be fine without it for quite a while. Most of the restrictions are on the more advanced functions, I think. If not all the kids have computers at home, I guess all you can do is try to maximize the time they can spend in the school's computer room.

I think you should, from time to time, ask them to create something on their own, like a "free" time. This would be an opportunity for them to explore the program, use their creativity and for you to get a better idea of how well they can manage on their own; how they solve problems, what they have the most trouble with and eventually they'll run into bugs, which will be an opportunity for them to learn a about debugging, like checking their code for typos, setting up debug messages and general problem solving.

Unfortunately, I haven't heard of any documents for teaching kids, either. I imagine that each school just makes up their own, and I don't know if any of them have shared it. You should do some research online, but you'll very probably have to simply make up your own plan and exercises. It was a good idea to start with the official tutorials, but it sounds like you're running out of them. Think of a really simple game, program it in D&D and see if it fits their current knowledge, and then tweak it as required. If it's easy enough that you think they handle it, you can even ask them to try to do it by themselves. Most of the time, you should be teaching the classes using that game you made up, as you've usually done.

I can't promise anything, but I could try to make one or two simple games for you to teach your class with, if you want. I've done the Shooter Tutorial, so I guess I have a bit of a general idea of what your students know about. Anyway, keep us informed on your progress. It's great to see someone taking an initiative and teaching kids about games and programming!
  • 0

#9 The Legend

The Legend

    A Jesus Freak

  • GMC Member
  • 1052 posts
  • Version:GM:Studio

Posted 25 May 2012 - 09:00 PM

I know I've already given you ideas but I vaguely remember googling GML help and getting a very good help file. Try googling it.
  • 0

#10 drt_t1gg3r

drt_t1gg3r

    GMC Member

  • GMC Member
  • 3230 posts
  • Version:Unknown

Posted 26 May 2012 - 03:19 AM

Most of the curriculum in computer language courses throughout the year started with the basic unit or type and built from that the more complicated devices like containers lists and arrays. I like think this tool is good foundation especially when moving on to other languages after gml use types and containers as a basic model of most their tools. What has failed most of my courses though has been application of how, when, and why these arrays, lists and other containers are used.
  • 0

#11 TheMagician

TheMagician

    GMC Member

  • GMC Member
  • 215 posts

Posted 26 May 2012 - 12:19 PM

I think making an entire class strick to a set of tutorial is a stupid and outdated idea.


An entire class based on tutorials is definitely overkill. However, I think covering the basics with tutorials and scripts is still a legitimate approach to computer teaching. The students can work at their own speed. The teacher knows the tutorials so he can respond to questions/problems very precicely which is especially important at the beginning of a course so that things get going and the kids don't lose interest.
Later on I would then have the students choose from different tasks which I sort in categories from beginner to advanced and then everybody can pick something he thinks fits his/her abilities.
  • 0

#12 lballaty

lballaty

    GMC Member

  • New Member
  • 83 posts

Posted 28 May 2012 - 07:21 AM

Most of the curriculum in computer language courses throughout the year started with the basic unit or type and built from that the more complicated devices like containers lists and arrays. I like think this tool is good foundation especially when moving on to other languages after gml use types and containers as a basic model of most their tools. What has failed most of my courses though has been application of how, when, and why these arrays, lists and other containers are used.



These kids are not up to usinig things like lists and arrays yet. I have found a lot of examples when to use them in the online tutorials and engines that various people have shared. Those are a pretty good start.

I've tended to cheat a bit there myself and used the GM db extension :). I've found that extremely useful. I'm more familiar with traditional databases and this makes it easy to visualize what you're doing.

On the other hand I've not been able to make that work with the HTML versions of the games ....as an aside.

I'm only doing windows games with the kids though.
  • 0

#13 lballaty

lballaty

    GMC Member

  • New Member
  • 83 posts

Posted 28 May 2012 - 07:42 AM

So far the most advanced we've gotten is with a bit of script manipulating the built in variables such as speed, gravity etc. Keeping score, health and inheritance to simplify the number of objects you have to program.

Then we've spent a bit of time on graphics as well. How to create an animated PNG file. How to manipulate the variables which control the way the animation acts etc. The internal graphical editor is very good for this and it's relatively simple and intuitive ... and doesn't require more s/w which is a plus.

I did try to get kids to start thinking about what kind of game they would like to create and 1 or 2 have started. This is very much self paced. I do notice that some kids are lost for quite a while and then a light comes on and they suddenly get something fundamental and they start thinking at a whole new level. But this can take many weeks and months with kids this young.

I do some troubleshooting excercises with them which they like a lot. I used to do this with my engineers in a past life when I needed them to understand our systems better .... I take a small game we've gone through and break it somehow. Then I show them how to go about finding what is wrong and later they try to fix other faults I put in on their own and if they get stuck they ask me and I point them in the right direction. Some are logical some are syntax etc.

I also have them try to create more levels of a game we've gone through, ie. another window, usually in the form of another room for now .... with different challenges etc.

I also created this kind of combination TD and Shooter engine with some levels for the more advanced kids and we look at the logic to control, waves, levels, scores, bonuses based on varios triggers. Plus with one kids I started looking a bit at AI so we've given some of the characters some intelligence to react to things going on in some way. Determine wherei the enemies are, which is closest, which is most threatening, how to avoid them, how to go after them, kind of basic algorithms but surprisingly some of them end up looking a lot more intelligent than they are with some simple tricks.

It's been fun for me thinking this stuff up to do for them but it has been rather disorganized and not documented :)

We're almost done for this year so I have some things to think about over the summer and try to put at least some kind of plan together for next year.
  • 0

#14 TheMagician

TheMagician

    GMC Member

  • GMC Member
  • 215 posts

Posted 28 May 2012 - 08:57 AM

I like the idea of the problem solving tasks - will include them in my class!
  • 0

#15 Lukasmah

Lukasmah

    There are 4 lights.

  • GMC Member
  • 514 posts
  • Version:GM8

Posted 03 June 2012 - 05:59 PM

Ummm... Don't underarestimate kids... I'm a kid and allready use GML.
  • 0

#16 Pg Biel

Pg Biel

    GMC Member

  • New Member
  • 3 posts
  • Version:GM8

Posted 03 June 2012 - 11:52 PM

Good topic!!! :whistle: :laugh:

Edited by Pg Biel, 03 June 2012 - 11:53 PM.

  • 0

#17 Pg Biel

Pg Biel

    GMC Member

  • New Member
  • 3 posts
  • Version:GM8

Posted 03 June 2012 - 11:59 PM

Ummm... Don't underarestimate kids... I'm a kid and allready use GML.



Well, i'm am kid too. And i use :GM8: too. I have see the Hello Engine 4, and i edited the game. That's Mario game! Mario game is super cool. And i have edited the game, as i said.
^_^
  • 0

#18 Lukasmah

Lukasmah

    There are 4 lights.

  • GMC Member
  • 514 posts
  • Version:GM8

Posted 04 June 2012 - 11:24 AM


Ummm... Don't underarestimate kids... I'm a kid and allready use GML.



Well, i'm am kid too. And i use :GM8: too. I have see the Hello Engine 4, and i edited the game. That's Mario game! Mario game is super cool. And i have edited the game, as i said.
^_^

I also coded in some stuf in hello engine 4. I is quite complicated.
  • 0

#19 Terrified Virus

Terrified Virus

    Moderators Plaything

  • GMC Member
  • 721 posts
  • Version:GM:Studio

Posted 04 June 2012 - 04:30 PM

Ummm... Don't underarestimate kids... I'm a kid and allready use GML.

Agreed, I started programming when I was 9... That was a long time ago
  • 0

#20 Sparkstar

Sparkstar

    GMC Member

  • New Member
  • 12 posts
  • Version:GM8

Posted 04 June 2012 - 06:41 PM

Ummm... Don't underarestimate kids... I'm a kid and allready use GML.

Yeah I use GML and I'm 12. Of course though, it will be alot harder to explain if the kids are from another country.
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users