Learning to script using focused non-game projects

I recently offered my opinion in a post to the effect that learning to script by making a working, potentially profitable game is maybe not the best way to go about learning to script or to making a game. My thought was that it’s better to try and break down what it takes to make a game and turn those component parts into small learn-to-script projects. I offered the idea of learning to script BodyMovers by making a volleyball project that focuses on just that aspect of a game in order to avoid getting bogged down in things like DataStore, GUIs, progression, monetization, etc. I suggested that it could be something fun (as well as focused), and the end result could be set aside for later when you are actually building a full game. Code from practice projects can be repurposed when you need something similar in a bigger project.

I went ahead and made an example of the kind of thing I was talking about, but the original thread was closed due to it’s similarity to existing ones.

I’ll occasionally do these kinds of “sketches” (typically saved locally to my computer), though not usually with as many extras (my kids wanted me to add floaties and chairs), and I was curious if anyone else did something similar rather than just scripting bare-bones solutions in isolation from any context or going all in on trying to make a game (of whatever size). If so, what benefits do you find over just plowing ahead with a game (in order to learn something you want to learn). I was also interested in discussion on what makes something a game or not. What I’ve posted here is not a game in my opinion (for various reasons). Do you agree? What would need to be added to make it one? Where would you draw the lines between something that’s an experience or exercise and something that’s a game?

I look forward to reading your thoughts.

[Note that the volleyball game was an exercise and probably has numerous issues (hidden and otherwise). Feel free to post problem points, but don’t be surprised to find them.]

2 Likes

It’s a nice fun game, I like what you did. The only thing I would change is probably make the volleyball go faster to make it more difficult and fun. Nice Job. :slight_smile:

1 Like

I agree with that, the volleyball in my opinion was a bit to slow and predictable, if it went faster it would definitely up the fun factor in my opinion. But otherwise good job! :slight_smile:

1 Like

I don’t think making a “sketch,” so to speak, is my go-to, but I have a Roblox file dedicated to working on a single game aspect, like what you’re talking about. I usually do such a thing when I can’t create it in the game I’m working on, and I don’t want to risk breaking anything (I did this most recently with pathfinding).

I did a quick look-up of the word “game,” and I found two (relevant) definitions:

  1. a form of play or sport, especially a competitive one played according to rules and decided by skill, strength, or luck. And

  2. a complete episode or period of play, ending in a definite result.

This is obviously oriented more towards real-life sports, but who’s to say video games aren’t like this? Based on the definitions above, I would say your place just barely misses the mark to being classified as a game, mostly because there’s no score-keeping or rules for when the ball goes out of bounds (as far as I saw). Showcase games aren’t real games, either. Can’t change my mind. Adding those two things, I think, would be enough to classify this as a true game.

1 Like

Same here! Scripting that are just for learning how to script is kind of boring if you ask me. I feel that scripting smaller games is a great way to keep those concepts in your head.

I usually take what I learn online and make some kind of concept game like what you do. Then, I abandon it. I don’t take it further unless I have ideas to expand it on. I don’t force myself to finish a game just for the learning process. Most of the time, I would just feel burnt out.

I would say that anything could be a game. I make games all the time from everyday objects around me just to pass some time. (it’s usually because im outside away from video games lol) Successful games, however, have more structure to it and have some kind of goal for you to do. They do an excellent job of keeping players engaged. I would have all games on a pyramid, based on the level of structure they have.

I would say your game is a game. There is no real goal, but you could always make one up with someone else. However, I did not stay in for long.

The game is missing certain things that can make it fun and engaging. Firstly, it lacks most of the things that you would see in a volleyball match. But, I am certain there are things you can add several mechanics to instantly make it more fun and engaging. It just depends whether or not you want to expand it.

If I were to expand the game a bit more to make it fun I would do the following:

  1. Make the volleyball go in different directions based on where the player is facing

  2. Make the volleyball physics more realistic and unpredictable

  3. Make the player able to jump higher so that it could be able to spike the ball

Now, I got myself a pretty good game that me and my friends could play together. Most of the things I listed could probably still all be done using body movers. (hopefully) But, it all depends on what you think needs to be added in order to make it fun.

Right now, it might not look that much of a game to you, but as you said the code be used for bigger games later on or it can be revisited to revise and expand on. These small concept games can always grow into something great one day that people would play and have fun with. We just need the time to grow as well. :slight_smile:

2 Likes

Ok, I’m not the only one :smiley:. That makes me feel more comfortable about recommending the strategy. This kind of thing isn’t my go-to either. It’s a sort of mock-up, prototype thing I’ll default to when I get excited about a new idea or mechanic and want to start racing ahead with a game before I’ve done any real planning.

I think there is a real distinction between purposefully “making a game” (that has reasonable potential for profit), and what I see as largely a fantasy that one can stumble along into a profitable game while learning the ropes. The second is rooted in impatience and a sort of you-can’t-win-if-you-don’t-play lottery-ticket mentality. I think it’s also counter-productive. A lot of good (for a dev) can come out of projects that have little to no hope of directly generating any money. If you try to approach everything you build with an eye toward selling it, you are asking for endless disappointment. Anyway, I’m probably repeating myself. Core insight: differentiate between purposefully making a game and learning how to do all the things needed to make a game. It’s usually premature to attempt the first until you are 80+% there on the second. [/soapbox]

I thought that if I was suggesting to new scripters (but prob applies to builders/modelers) that their tentative steps should not involve trying to make a game, then I maybe ought to be able to identify the things that make something a game. Certainly volleyball is a game. It might strike some as contradictory, or at least ironic, that I’d assert that scripting a volleyball mechanic is not the same as making a game. It isn’t the ball going over the net that makes it a game.

  • play according to rules
  • complete period of play
  • ending in a definite result

Those are all great game qualities that are not present in my little “sketch”. I’d also add some optional points that are typical of videogames:

  • progression (levels, incremental progress made toward a goal)
  • gameplay loop (rounds, sub-periods of play, like the idea of a perpetual cannon in music [Row Your Boat])

Those are also not present in the project I posted. All of these things are important parts of making a game, but are largely distractions for someone who is trying to focus on learning how to create game assets. Focus on learning to do things you’ll need in order to make a game OR focus on making a game (and all that entails). These are not things, in my experience, that can be run successfully in parallel. Choose a path, and you’ll be happier for it, imo. But, just because it’s a project focused on a particular aspect of a game doesn’t mean it has to be boring. Feel free to disagree below.

Which brings me to my last question: Does something need to be a game (as defined above) in order to be profitable (“successful” is too vague) on the Roblox platform?

1 Like