Search Unity

Making a game with my son

Discussion in 'General Discussion' started by mark_rendle, Mar 18, 2019.

  1. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    Hi. I've been making a game with my seven-year-old son, and I just wanted to share a bit of my experience, because it's amazing and it's important to share amazing things.

    Ben loved Club Penguin and Club Penguin Island, but sadly they both got shut down. Having seen one of the tribute projects, Club Penguin Rewritten, he asked if we could make our own version. Of course, I said yes.

    Confession: I originally started the project with Game Maker Studio 2 because I thought the block-based approach would be easier for him, but (a) I found I had to switch to GML anyway because block-based was just painful, and (b) I think we'd added about 10 game objects when the free trial told us we'd hit a limit. So we converted to Unity and carried on.

    Our workflow is:
    1. Ben tells me which feature or mini-game he'd like to do next.
    2. He draws the art for it in felt-tip pen on plain paper.
    3. We scan the art in, cut out sprites in Affinity Photo, and drop them in the project.
    4. I figure out how to do stuff in Unity to make the game work, and talk him through what we're doing.
    Every single day Ben comes to me and says "when can we do coding?" And some days I don't have time, but whenever I do we sit down together and work for about an hour and get something done. It's totally rough and ready; if something works, he doesn't want to spend time trying to optimise it or fiddle with it. He's got too many other ideas and plans that he wants to move onto. Good enough is good enough.

    Seven is a little young to really get to grips with C#, but when I'm working on the code, I'll explain what everything does and sometimes get him to work things out. For example, when we were just making the penguin move around, I explained about XY coordinates and wrote the code to add to X to make the penguin move right. Then I asked him how we could make the penguin move left, and he said "take away from X?" and got a high five. There's quite a lot of mileage in that whole "how do we do the opposite thing?" approach to teaching.

    So far, we've made:
    • The outside area with three doors that take you into other scenes.
    • You can throw snowballs with a targeting reticule and they explode on impact.
    • A pet shop where you can adopt a Puffle which will then follow you around everywhere.
    • "The Dojo", which is a simple rock-paper-scissors style card game.
    • "Sled Racer", which is like an infinite runner with a time limit.
    I'd say, in total, that's taken us less than 16 hours so far (not including the time he spends drawing the pictures).

    Using his art gives him a real sense of ownership of the game. He's seeing his creations move around on the screen, doing real game things. I use effects from the Epic Toon FX asset for things like exploding snowballs or snow falling off trees, but everything else is his.

    (I'm also using the Rewired controller asset, which is fantastic and I highly recommend it.)

    For me, well, I've learned more about Unity in those 16 hours of making an actual, working game from scratch than I did in a couple of years of having it installed previously and occasionally finding time to work through tutorials.

    Also, it turns out seven-year-olds make amazing testers. We were having an issue with the control system where when you hit the back button to exit one of the mini-games, the game exited right out. Turned out to be because loading a new scene kept the button press, so I had to write in a delay to prevent the back button from working for a second after a scene loaded. I use the same ExitManager component in each scene so I fixed it there, tested it on one scene and called it fixed, to which Ben responded "shouldn't we test it on the other doors too?" In this case it did work, but still, good call.

    We're now at the stage where every time we complete something we do a proper standalone build and I copy it onto his laptop so he can play it. He loves that it's a real thing, just like the other games he has on there. When it's a bit more polished (mainly UI stuff) I'm going to make a WebGL build and put it online so his friends can play it.

    We also make videos and upload them to YouTube every now and then, and Ben's teacher shows them in class. Apparently his friends loads of questions about the game and how we're making it, or suggest things we could add.



    Anyway, that's my story. I wanted to share it partly to thank Unity for giving me an easy and free* way to do this stuff with my little boy, and partly in the hopes of inspiring other parents to do something like this with their kids.

    * I'll buy a subscription soon, promise!
     
    josker, ropazeba, Teila and 39 others like this.
  2. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    This is fantasic, you should start a blog regarding this.
     
    RavenOfCode, Tom_Veg and mark_rendle like this.
  3. Gor-Sky

    Gor-Sky

    Joined:
    Jan 28, 2018
    Posts:
    196
    It is really wonderful that you can spend your time in such a way with your son and especially that he as a kid kinda takes the initiative and has a lot of ideas!
    You are a super cool dad! I like it also that you take the original art of your son!
     
  4. UnityMaru

    UnityMaru

    Community Manager Unity Technologies

    Joined:
    Mar 16, 2016
    Posts:
    184
    I agree with Gor-Sky. You are one amazing dad!

    This is amazingly wholesome <3
     
  5. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    That's an excellent idea, thank you.
     
    GameDevCouple_I likes this.
  6. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    Ive been a developer most of my life, and I would love reading this, and I know most of my developer friends would too.

    Aside from the feel good nature of reading about someone so young learning programming, and doing so with their parent, its also sort of motivating to see what someone so young does, kind of makes you go "well I need to pull the finger out!".

    I would say start up a blog, making it something you guys do together because learning to market yourself and do things like developer blogs is a good skill to learn too and something you would learn alongside programming in most courses, and that way you are ensuring your teaching english language skills alongside these technical and logical style skills, contributing to a well rounded learning curriculum ( in terms of learning extras at home, I am ofcourse not saying this substitutes a school curriculum in any way).

    But also once you have a few posts done and your certian you can keep doing it, start a patreon! Tons of people (myself included) would love to subscribe to something like this, and you could put the money raised (however little it is) aside for your son as a fund for when he goes to university or something similar (if serious cash is earned) :) or just give it to him directly so he learns that there is a reward to come from this sort of stuff (if small cash is earned).
     
    IsDon and mark_rendle like this.
  7. tiggus

    tiggus

    Joined:
    Sep 2, 2010
    Posts:
    1,226
    That's great, my son(6) loves to come in and see me working on games and provide his input as well. I was thinking of picking up something like Roblox but considering I already am familiar with Unity this leads me to think that is probably a better route!
     
    GameDevCouple_I and mark_rendle like this.
  8. BIGTIMEMASTER

    BIGTIMEMASTER

    Joined:
    Jun 1, 2017
    Posts:
    2,292
    Fantastic. Make sure it's all well documented with plenty of video and screenshots. 30 years from now the director of a major game company will be giving a presentation and people will be delighted to see the humble beginnings.
     
  9. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    I've registered a domain, will get a blog up soon and post a link here. Thank you for the positivity!
     
  10. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    11,983
    The blog idea is neat. The one thing I'd be aware of is making sure that the blogging doesn't get in the way of the doing.

    Really glad you're both having fun with this, it's great!
     
  11. zombiegorilla

    zombiegorilla

    Moderator

    Joined:
    May 8, 2012
    Posts:
    7,782
    Just everything about that is awesome. Often why many of us got into games back in the day was because we wanted to do a better version of a favorite game or replace something that was gone. And my dad very much had the same attitude though computers weren't his thing, he helped me in ways he could (wired up / built stuff, built me a hacked together tape drive to store my work, hacked the boards, etc...) . Other stuff like model rockets, trains and model planes we did together more directly. Doing stuff with dad is the best. Kudos for being a great dad.

    Also, LOVE the hand drawn art being used. I create a real direct connection. Very cool.
     
  12. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    As someone whose parents never took an interest in, nor understood, my passion for game development (which started when I was around 8 years old and continued until now, 20 years later), I envy all of you. Dont stop doing this, its not time you can get back and really does more than you can imagine for someones confidence and motivation!
     
  13. Owen-Reynolds

    Owen-Reynolds

    Joined:
    Feb 15, 2012
    Posts:
    704
    My brother used VisualStudio/Forms, which is very easy to make a 2D game with, to do about the same thing with his 11(?)-year-old daughter. It lasted for about month, pretty cool her pictures could be animated, but then she lost interest.

    I'd say to watch for burn-out, and be careful of not having it turn into a job. One week you'll show up with an intro to functions you agreed on, ready to get to work, and your kid will have a "do we have to?" look. Everything gets much harder - each new movement feature added is 1/2 as cool and 2x the work. Be prepared to have lots of 1/2-done stuff as you play with easy gains in particle systems or terrain, and so on.

    Coding-wise, I've found that simply printing a number is just as good as making a game. If someone is interesting in coding, seeing a 2-8 loop print 2 through 8 is totally cool. An afternoon can be spent printing various patterns of numbers. Nested loops that print things are the coolest things in the world. Functions are like _making your own command_. Calling printAs() and seeing it do it - whoa. If your kid is actually interested in coding, it's possible Unity, and needing the code to _do_ something, is slowing them down. After all, some kids love math, even though they currently have no use for it.
     
    samuelb_unity and Ryiah like this.
  14. ippdev

    ippdev

    Joined:
    Feb 7, 2010
    Posts:
    2,640
    This kinda dumps toxic masculinity in the cultural wastebasket. Great job daddy-o! I got my 21 yer old son using Unity to build out machining GCode to object apps and my elder 33 year old uses it for creating visual displays (continuously shifting psychedelic and mythopoeikonic imagery on a dome) for his camps setup at the burns (Burning Man etc).
     
    unit76 and GameDevCouple_I like this.
  15. ippdev

    ippdev

    Joined:
    Feb 7, 2010
    Posts:
    2,640
    Life works like that and ya might as well prepare for the low hanging fruit paradigm when young because you will encounter it in the real world and you don't get paid the big bucks for picking low hanging fruit.. I don't think junior will get a participation trophy from this dad.
     
  16. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    @mark_rendle what the above user said is quite true, I would say to combat it ensure that everything is being driven by him and that there is ample reward that increases based on the effort put in. This wont need to always be the case, but especially in the first year it is important to cultivate motivation, after that he will likely be self motivated even if you stop having the time to continue this (which I really hope never becomes the case!)

    Overall though it sounds like you have a pretty good work ethic between you and your son so I am sure you know what your doing, and I dont have kids so who am I to give advice!
     
  17. Tom_Veg

    Tom_Veg

    Joined:
    Sep 1, 2016
    Posts:
    597
    This is such a lovely story. <3 Cant wait till my (now 4 months old) grows up a bit so we can work together. If he will be interested in such things of course.
     
    UnityMaru likes this.
  18. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    Thank you all so much for the lovely responses, I'm so happy this has resonated with people.

    I'm definitely aware of the possibility of burn-out, and we're doing everything at Ben's pace. No marathon sessions, and he is always the one who says "can we do coding today?" with no sign of flagging yet. I honestly can't think of anything else that has caught his imagination like this, and I really hope it sticks, because he's got so much potential here.

    His big sister (nearly 13) is working on her own game, but she has lots of other stuff going on and struggles to find time. I think this is encouraging her to pick it up again, so that's good. She's much more into the coding side, Ben's into the design and art side. Sometimes I dare to daydream about the family studio we might have in 10 years :)

    Ben's starting to understand the complexity involved in creating games, and he's learning that some things are more complicated than others, which is good. I'm having to talk him down from some of his grander feature ideas, but he's got so many things he wants to do, we can always pick something sensible. I think we're doing hats and igloo decoration next.

    Anyway, thanks again for all the feedback and wise words. Blog is up, Ben's written his first post and I'm working on mine, so link to that soon.
     
  19. unit76

    unit76

    Joined:
    Mar 23, 2019
    Posts:
    2
    great read. nice to see something positive. greetz from Australia.
    I've just downloaded unity tonight (free version) and previously used game maker (6.1)
     
  20. Vryken

    Vryken

    Joined:
    Jan 23, 2018
    Posts:
    733
    Cool dad of the month award goes to you. :cool:
     
    GameDevCouple_I likes this.
  21. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
  22. XavierForrest

    XavierForrest

    Joined:
    Oct 20, 2015
    Posts:
    1
    I love this
     
  23. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    11,983
    Your son's post is great. I love that it's already showing actual design thinking, rather than just ideas.
     
  24. BIGTIMEMASTER

    BIGTIMEMASTER

    Joined:
    Jun 1, 2017
    Posts:
    2,292
    "The great thing has come..."

    Haha. This has to be like the company motto or something.
     
    mark_rendle and GameDevCouple_I like this.
  25. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    @mark_rendle this was as good as I hoped it would be.

    Your sons post was amazing, its great reading development from a kids perspective.

    Also in general it just made me laugh, especially this bit "the cactus slows you down by 2 i dont know why theres cactuses in snow"

    Overall I think this was great, I hope you keep these up as I could probably read your sons posts weekly and not get bored haha

    Itll also be great to see his progress, kids pick things up fast and I expect a year from now what hes making will be a world different from what hes on how.

    Anyway the most important thing is he and you are clearly enjoying it, so keep up the development! rock on!

    EDIT: I really like this bit "For example, we add a number to X to make the penguin move right, so how might we make him move left? Ben thought about this and said “take away from X?” High five!" - you seem like you are going about this the right way from reading the post, perfect balance between fun of learning but not overloading with too much learning new stuff at once. The idea of having him do else branches from time to time is a great idea for introducing someone to logic and thinking about things in a binary (or more than binary) way instead of unary
     
    mark_rendle and angrypenguin like this.
  26. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    @GameDevCouple_I @angrypenguin @BIGTIMEMASTER So happy you like the blog. Ben is working on his next post now, I think it's about the clothes shop.

    For me, I'm planning on writing some posts about the technical (e.g. Unity and C#) side of things, to show how easy it can be to achieve things that make younger children very happy, and also some separate posts about the process of working with Ben, and how I'm teaching him some of the fundamentals of coding.
     
  27. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    11,983
    Is Ben getting any benefits from this outside of the game dev? Probably too early to tell, but learning the basics of things like logic, algorithms, approaches to problem solving... that's useful stuff all over the place.
     
    GameDevCouple_I and Ryiah like this.
  28. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    @angrypenguin Yeah, I think he is. As an example, which I'm going to write up in more detail for the blog, when we added clothing we put an empty SpriteRenderer on the player character and then we can set the sprite at runtime. So when we prep the graphics, we have the penguin sprite on a locked layer and we resize and position the clothing over it, then export it at the same size. So he's learned about re-use and creating modular, extensible systems, and he knows whatever he draws has to work with that system.

    He's learning other stuff, too; as we make progress, the things we do and the way we do them give him new ideas, and they're very logically thought out.

    The other big benefit, which is not tech related at all, is that he's become a bit of a hero at school. His teacher plays the YouTube videos for the class and then they ask Ben questions about it, and he answers them, which is great for building his confidence and self-esteem!
     
  29. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    11,983
    Just being able to think in terms of processes is great. Even if he's not making the processes himself, he's using them and seeing the benefits.
     
  30. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    @angrypenguin is definately onto something, as I started learning programming at age 8 (We are talking 1999 here) and it was my parents who made me in an effort to learn what my dad thought would be a useful skill and to get better at math. In the end I have a well paid job because of it sure, but all the way up till now I also benefited in many other ways as a ton of subjects at school were related and as such I was able to understand them easier.

    A lot of what you learn at school is difficult to understand without also understanding how it can be applied. For instance you learn a lot of abstract math concepts and without knowing why you would ever need them most students dont fully absorb them. I was able to convert a lot of abstract math, physics, (and even biology and areas you would be surprised have relevance to programming and games programming) into concepts I could see a use for, so while others were going "why do I need to know vectors and trigonometry, I am not going to be a ship captain like this silly maths example" I was able to go "oh I could see a use for that in this game, that program, etc etc"

    I think you will see the benefits being subtly reaped for years to come, especially if he sticks at it. Hell I even learnt everything I know about music from becoming a game developer as a kid :)
     
    Ryiah likes this.
  31. APSchmidt

    APSchmidt

    Joined:
    Aug 8, 2016
    Posts:
    2,352
    It's definitely a matter of being born in the "right" family...
     
  32. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    Trust me when I started learning it was a rift apart from what @mark_rendle is doing, I felt forced and at the time it felt like homework. It took many years before I started to enjoy it on my own! Thats why I was so happy to see what @mark_rendle is doing with his son, his approach is perfect and how I always imagined my dream intro to game dev would have been!

    Still in the end I count myself lucky! Still never to late to learn, whether you start at 8 or 80 its what you create that matters!

    If you think about it, I am 28 now and been developing for 20 years, so really I am the biggest failure here as in 20 years I have released nothing except a single small game I did as an entrance test for a job!

    (Working on a proper game project finally with my girlfriend though, but its taken 20 years haha)
     
  33. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    Years ago I wrote Asteroids in Flash as a learning exercise, and I wrote some weird formula for working out rotational velocity. When I showed somebody they said "why didn't you use sin and cos?" and I was like "oh, is that what those are for?"
     
    Ryiah likes this.
  34. Owen-Reynolds

    Owen-Reynolds

    Joined:
    Feb 15, 2012
    Posts:
    704
    Unity's worse than normal for learning standard trig. The built-ins use degrees (also starting in the wrong place and going the wrong way, which deg2rad will not fix), making it harder to mix in real trig. Then you have the transform.rotation.x problem (missing eulerAngles). If you look anything up you'll get a non-trig way to do it.
     
  35. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    That's true. I'll make my daughter build Asteroids in something else :)
     
  36. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    You and your son making another blog entry? Eagely awaiting second one :)
     
  37. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    Working on it, it's birthdays week here so it's all a bit crazy.
     
    RavenOfCode and GameDevCouple_I like this.
  38. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    New blogs: https://clubpenguinsea.com/

    In which Ben talks about clothing, and I talk about the importance of making all your sprite graphics the same size.

    His is better.

    Both posts have our new YouTube video embedded too.
     
  39. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    These are great, glad your keeping up with it!
     
  40. UnityMaru

    UnityMaru

    Community Manager Unity Technologies

    Joined:
    Mar 16, 2016
    Posts:
    184
    These posts are SO lovely!
     
  41. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    @Unity-Maru @Josh-Naylor Quick, someone over at unity HQ cook up a way to spotlight this guy and his kid! The world needs to know about this!

    Joking aside though, this is the type of story that would be awesome to read on the official blog. Not the entire journey post by post, but certainly a summary of what they have done to date and are doing, maybe some pictures of the father and son duo together, and definately some of the writing from the kids posts because they are heart warming and awesome.

    EDIT: also I saw one of the real club sea penguin developers commented on their reddit post basically endorsing their efforts, which is also lovely to see :)
     
  42. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    Update: this afternoon Ben and I are giving a talk at his school about the project, showing how we work together, a very basic demo of Unity, and also showing MakeCode Arcade for kids whose parents aren't programmers :)

    I'm also working on getting a WebGL build of the game so we can add it to the website; will post here when it's done.
     
    angrypenguin and pk_Holzbaum like this.
  43. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    Thats great mark! I think its brilliant that you are proactive on this, and I really hope someone from Unity supports your endeavours however they can because I dont think it goes without saying that getting people this young using the Unity Engine is a brilliant feat and an initiative I would love to see get more coverage and eventually done by other parents, even schools!

    EDIT: Also, in case you havent guessed yet, your son is going to become a computer science mega genius by the time he is the age most people "start" programming at.
     
    mark_rendle likes this.
  44. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    GameDevCouple_I likes this.
  45. GameDevCouple_I

    GameDevCouple_I

    Joined:
    Oct 5, 2013
    Posts:
    1,762
    Had a play, I definately think next thing to work on should be some sort of tutorial. Instead of doing a full on tutorial which can be a pain both design and coding wise, you could just have "tooltips" that show / hide when you get near something, it took me a little bit to work out I could open doors XD

    But other than that its coming along great, really cool that there is already a shop system in there! Ben should be proud!
     
    mark_rendle likes this.
  46. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,674
    How wonderful!! I work with my kids on games but of course, they are older now. :) It is very satisfying to share time and something you love with your children. Keep it up and someday when he is a teen, you two might be publishing games together.
     
    mark_rendle and Ryiah like this.
  47. mark_rendle

    mark_rendle

    Joined:
    Feb 22, 2019
    Posts:
    16
    I'm working on adding some basic instructions to the HTML page the game is in, but I agree, the game could use some pop-up things for doors and stuff, "Press A to go to the Dojo" and so on.

    Thank you for your continuing enthusiasm, it's really appreciated.
     
    GameDevCouple_I likes this.
  48. ropazeba

    ropazeba

    Joined:
    May 15, 2019
    Posts:
    1
    Great job
    You seems a great father :)
    I would like to teach my son to dig and EVE minigations online. I think it is the right future for him and he should base all his security on it. People will be playing EVE Online for three thousand years, who knows, maybe my great-great-grand-daughter will become the most powerful emperor in the galaxy, and then the president of the USA. Mining is quite useful in EVE, especially if you want to be sure that your children will safely use that guide for EVE mining guide and enjoy your fun <3 https://odealo.com/articles/eve-online-mining-guide
     
    Last edited: Aug 6, 2019
  49. jbnlwilliams1

    jbnlwilliams1

    Joined:
    May 21, 2019
    Posts:
    1
    Wow, you just won parenting!
     
  50. bsurya

    bsurya

    Joined:
    Jan 23, 2016
    Posts:
    5
    Wow. This is wonderful. I have been thinking of eventually making games with my son (still 3 years old).

    Reading your son's post was wonderful. Seems like he's enjoying himself and learning lots at the same time. Great job!