Lost the fun in learning Lua

Hi everyone. I wanted to share something personal and maybe get some advice.

For a long time, I’ve been trying to learn programming, mainly Lua for Roblox. At first, I was super excited — I had so many ideas, and the thought of making my own game felt amazing. But over time, I started to feel overwhelmed, tired, and mentally exhausted by all the things I needed to learn.

Eventually, I took a break… and never came back. When I tried to get back into Lua, it just didn’t feel the same. The fun was gone, and my motivation dropped to zero.

What frustrates me the most is how excited I get when imagining a game idea — but when it comes to actually making it, I burn out and stop. I don’t enjoy the process anymore. It feels tedious and heavy.

Has anyone else gone through this? How do you stay motivated, or find joy again in learning and building?

I’d really appreciate any tips or personal experiences. Thanks for reading.

13 Likes

“Don’t turn your passion into a job”

10 Likes

Try another game engine and come back to Roblox later. I did that for about a year and came back to Roblox with more knowledge.

(probably a bad idea to steer devs away from roblox on their own site lol)

3 Likes

Because it is tedious and heavy. And it is normal that your are mentally tired of this. U need a break after scripting. Brain needs some joy not writing code all the time. It is normal. But u have to go throught it. there is no other way. At the finish you will be able to write code accurate and that’s the point of everything. Write the code with no wasting time to rewriting and fixing errors. And then joy appear you will be able to write games very effective and players will be happy.

4 Likes

The key detail is you feeling exhausted by things you need to learn. Finding a way to make the process engaging and fun will help you exponentially grow as a programmer.

You crawl before you can walk, you walk before you can run.

One of the best ways to start feeling more engaged in what you’re working on is by being a part of a community. You can learn quite a lot from asking others how to do x, y, and z. When I first started learning, I watched youtube videos and befriended someone who was knowledgeable. I also went ahead and joined some community servers centered around roblox development. You don’t need to be the best programmer, ever, when making a game. Depending on the type of game however, there may come a time where you’ll need to step out of your comfort zone and work on improving yourself further. The good ol coder’s block is definitely the easiest killer of motivation.

At the end of the day, if you want to learn it that bad, you will make it happen no matter what. Dedication beats motivation, always.

You’re not alone either. You never are. Some of the best programmers go through this as well.

Jot down your game ideas for later and work on your skills in the meantime. I did this when I was young and eventually came back to it when I was older and more experienced. Unironically, I ended up learning a lot after releasing that game to where I deem the code for it as slop. :+1:

8 Likes

For awhile now, Roblox has attracted real company to give it a try and many entry-dev turns experienced, resulting in the competition increasing the standard.

i’d argue it’s harder to be satisfied with your production today than 5 years ago, even though the Tools has barely changed to product the same result, just a larger experience gap than ever before.

If the work of others is what influence your expectations, you could check out and analyse what makes some of the top CCU games appealing, and why they work & are played in the first place (and it’s not the game famous for being high quality)

most people never manage to release a single project for various reason, if i lacked time, ideally i’d create the smallest game possible, still fundamentally fun and multiplayer/co-op, for the sole purpose of trying out your own experience with other people. i’m not sure how many reasons you need to be capable of forcing thru demotivation, but you should get as many small reasons as you can, and if you have friends enjoying your project, that gives you one more reason to expand your game !

6 Likes

hey man,
i feel the exact same as you and used to overthink all the time. programming is not easy whatsoever. at the moment i’m in the middle of making my first game. there’s countless things i still don’t know for example structuring big systems but that’s not going to stop me. :victory_hand:

here are my best tips that changed my mentality completely:

1. improve every day: :up:

time moves quickly as you might know. you must keep pushing for progress every single day.
for example, i learnt type checking and export type today, modeled ropes in blender, planned systems and learnt texture painting.. learning is earning :grey_exclamation:

2. DO NOT STAY STAGNANT: :chart_with_downwards_trend:

if you continue making the same code every day like making a part then you won’t get anywhere! others may disagree on this way of learning but i’ve learnt the most of my scripting knowledge from making my game so far.

3. break everything down into steps: :ladder:

you’re thinking too far ahead when you say “i want to make a game”. think like this, it’s 1, 2, 3, 4. not 1, 100. :x:

if i’m making a car simulator game i’m not thinking “let’s script a car”. i’m thinking “how do i detect if the player is pressing E”? after that is done then i’m thinking “now let’s make a car door opening animation and play it”, etc.

when you break things down into steps, you then realize that it’s easier to progress and when you see progress, you won’t stop. :pinching_hand:

games aren’t made in an hour or a day, that’s the REALITY. it takes some studios 1-9 months to complete a game with developers working 6-8+ hours a day.

you must be willing to commit, step by step. developers are no different from you and me, they just kept learning and improving every day. that is why they are so good because they’re always constantly improving! :chart_with_upwards_trend:

just look at how i’m planning one of my systems at the moment. i’ve never made a big system before but i’m breaking this down step by step. i’m taking actionable steps that will move me closer to my goal:

4. always ask for help! :interrobang:

use the devforum if you ever need any help. there’s no such thing as asking too many questions. i put up forum posts all the time if i need help. you’re doing the right thing by asking for help. your post could help someone else as well. :white_check_mark:

ask as many questions as possible. the more questions you ask, the better your understanding becomes, the better you become at scripting. :page_with_curl:

there are plenty of developers on discord as well who are willing to help one another. don’t neglect discord servers. google is great for learning resources as well like for math, syntax, API reference, etc.

don't be overwhelmed by the amount of things you have to learn. just learn what you need to learn for your current task.

hopefully that helps you get over your mental block! :slight_smile:

9 Likes

As a solo game developer, I know how it feels to become exhausted from working on a passion project.

Developing a game is not easy, as it takes a lot of time.

Ive learned that it’s okay to take breaks and I often find myself thinking of new game ideas that will make me want to continue developing again.

If I was a beginner developer again, I would try to start with small projects or even just games with little to no scripting.

Roblox Studio has potential to become a great game engine for all kinds of developers.

1 Like

It sounds like you burn out because everything becomes overwhelming. My advice to you is START SMALL. Learn the basics and master them, you can’t run without having a solid base. Every time you find yourself getting confused take a step back, go back to the basics and reason from there. Also start with little projects first before making or designing the game you want. Once you’ve finished a few of them you will find that you have the building blocks necessary to create the game you want.

The game idea on your mind is most likely ambitious, so remember start small with little projects before beginning with your big passion project.

1 Like

Personally, it became boring for me after learning scripting, but here is what you need to consider:
Do not read a whole book in one day trying to learn scripting, instead start small with simple game ideas, find out how to get things done, try to understand how they work and progress.
And it was how I learnt scripting, I was excited on making not reading.

1 Like

This issue you are going through isn’t just about programming, the way I see it its almost like a existential issue. An issue that’s always existed and always will exist. You need to sacrifice in order to achieve, push through the discomfort and the lack of motivation, the fear of failure, or whatever it is you are going through. That’s really the only answer I can give. You cant rely on motivation alone, you need discipline to create a good game or to do anything substantial in general.

In saying all that I feel like I should clarify I haven’t overcome this mental barrier myself and I’ve been struggling with it for the past couple years. So who knows maybe im not qualified to give you answers on this topic.

2 Likes

When I started learning Lua, it wasn’t really that fun too. I always tried to recreate whatever I thought in my mind. When it came to actually making it, I had no clue what anything was or what they did. I followed “AlvinBlox”'s Piggy video (not a sponsorship or anything), and I actually learned a few things from it! The YouTube videos about scripting were also very helpful. I was trying to figure out how to get the player from the “hit”. The video was just about the Touched function. I commented on that video, “Thanks for not helping” or something really negative about it. Another comment replied to me, “You’re supposed to figure it out”. Now when I look/remember that comment, that comment was actually kind of right. Nowadays, I just use devforum for help

1 Like

Yep, I have been doing this, I am now a programmer and i make my own games already! it took me like a year to learn because i have no motivation … Just don’t give up

1 Like

Alex, the same thing happened to me, and believe me — you’re not alone.

At first, everything sounds amazing — you have a ton of ideas, you imagine the final game, how epic it’s going to look. But then you start realizing how much there is to learn, and it’s super demotivating to feel like you have to do it all in one day. It gets exhausting. And yeah, it’s really easy to lose motivation.

What helped me was to stop thinking about making “the full game” and instead focus on small things. Like, “today I’ll just make this button work” or “I’ll try to get the player to save data.” Little things that give you that mini sense of progress. Because if you only feel motivated when the full game is done, it’s never going to happen.

And it’s also okay to take breaks. Sometimes you come back later with fresh ideas, and everything flows way better without forcing it.

Right now, I have a game that averages 300 concurrent players, with peaks of up to 1000 — but at the start, it was super frustrating trying to do everything and still having 0 players. I started small, little by little, and now I’m finally seeing the results.

2 Likes

Honestly i felt the same way for a long time, and sometimes i still do. It feels annoying and worthless to persist through something tedious and frusterating. Personally, i find that making ONE thing or fixing ONE thing each day helps me feel happy plus excited to make whatever it is. Its also important to make a game that YOU like, dont worry too much abt other ppl. Just have fun, and if its not fun, why waste ur time trying to force youself to do somrthing you dont love? For me, sometimes im bored with coding and i js dont code that day. Its not my job, if its not yours then dont spend time on it unless you enjoy it.

Anyways, good luck in ur life and scripting (if u want) going forward :slight_smile:

1 Like

if you lost fun in learning lua then learn
Luau or LuaJIT :brain: logic :chart_with_upwards_trend:
Learn typecheck idk: Type checking - Luau
Learn about closure OOP and all other kinds of OOP instead of just metatable OOP

Learn optimizations in Luau https://luau.org/

There is so much you could learn about you just need to force your brain into doing that.

Also learn about switch tables for example:

local switch:{[string]:(Plr:Player)->()} = {
Punch = function(Plr:Player):()
print("DONT SHOOT IM FROM A SCIENCE TEAM")--(you cant escape Half life brainrot even on roblox)
end;

_default = function(Plr:Player):() end;
}
local function Ability(Plr:Player,Ability:string):()
(switch[Ability] or switch._default)(Plr)
end


2 Likes

I’ve gone through this about 2 times and I think I’ve finally learned, You’re allowed to have something that motivates you whether it is money or just making people have fun, but I realized I can’t let that control the entire workflow of my game. But you ARE allowed to take a break, don’t feel like you aren’t learning anything. I would say I found more joy in learning by really trying something new, I’ve been scripting for a while now and I would also always get bored and burnt out, but whenever I tried something new that I hadn’t touched base on before I found myself with even more motivation than I normally would. Take this reply however you want but this is just my opinion.

1 Like

tbh all these guys got good advice, but ima be real, you will probably no matter what you do get burned out, in everything you do, both in roblox and in real life.

The only way to cope, is to take short breaks, and to be self-disciplined. Which is really hard, but you gotta do it. aint nobody become a successful dude by stopping half-way and calling it quits.

You feel overwhelmed, tired, and exhausted because you cared about the code being perfect, just let it go man, just stop worrying about every single part being right, you’re gonna have bugs in ur code, as you scale up, it’s gonna become harder to read and understand, it’s unavoidable. All you gotta do is look at the big picture!

And the game process isn’t suppose to be fun or light, it’s real work that people do as an actual 9-5 job in some companies.

I have gone through this a while ago, everything I learned about programming has been from myself researching, and creating things, I stayed motivated by just getting up every 25 minutes and doing something for 5 minutes, then coming back. Helped me stay focus and sharp. You won’t find joy in leraning and building, unless you use it to make cool stuff.

Anyways, hope you get that motivation :muscle:

2 Likes

Well, I actually find it more fun to discover and apply new things that I need to learn in Lua.

Writing code in the same old ways and methods all the time can get really stale.

But it becomes interesting when I search through forums and come across new ideas, then apply them to my code.

Of course, it’s disappointing when things don’t work out, but when the code finally runs as intended after going through that process, it’s a pretty rewarding feeling. That’s the charm of coding, in my opinion.

Personally, instead of dreading Lua because you’re stressed out trying to figure out how to write complex code to develop a fun game, I think it’s much simpler and better to focus on coding smaller objects—like simple cars or systems.

You don’t have to be overly obsessed with full-scale game development.
Also, when creating a game, I believe it’s better to work with a group of people, communicate, and assign roles rather than trying to take on everything by yourself.

Try making a game as a team instead of doing it alone—it’ll probably turn out much better than before.

And don’t worry if you don’t have anyone to join you, there are plenty of people like you on the forums.

Or, like people here say, maybe it’s better to take a long break.

Actually, don’t even think of it as a “break”—just try living your life without worrying about it.

I also get really tired and burned out from coding sometimes, but when I just leave it alone for a while and come back to it after some time, it feels fresh and even a little exciting again.

1 Like

Programming isn’t for everyone. You’re getting punch drunk trying to learn something far from simple too quickly. It takes about five years to truly learn a language, that is, to understand the logic of how to program well in it. But the learning and the feeling of being punch drunk never really stops. Knowing how to program is just the first step; after that, you’re off learning techniques.

1 Like