How do you keep yourself focused when writing a game?

I was gonna say the same thing as Jess here – if your actual love is making the systems and actually finishing a game with plot/dialogue ec is a sort of sidenote, that is completely fine!

Like, your fully functioning smartphone sounds really hecking cool, messaging system and all, no matter what language you’re writing in. Twine? Woah, incredible! Inform? How the heck?! TADS3? Ink? Adventuron? Your own bespoke system?! I can’t imagine an IF engine where that is even sort of easy.

Why not show your family and friends that? Releasing “toys”-- things that you play with rather than play (if that makes sense, I’m not meaning to be derogatory or belittling in this usage) – over games is super cool, and could even be considered releasing extensions or even engines for others to use.

While these people have written cool games themselves, my impression is that (for example) @JoshGrams and I think @Chapel consider themselves more tool-builders than game writers (you two can correct me if I’ve gotten it wrong here!).

Tools and toys are absolutely things you can show off to people! I think I would find many uses for a fully functioning IF smartphone…provided it’s written in my preferred language, Twine :wink:

4 Likes

I usually find that provided I keep working on my game every day, it’s easier to keep my enthusiasm for it, but the moment I take even a short break it becomes harder and harder to get back into the writing flow. I’ve got games that are 20 years old lurking around my hard drive that I took ‘a short break’ from back in 2005 and which I know are unlikely to ever get finished.

2 Likes

I gave the advice because it’s what works for me personally - I’ve written 5 games so far and they were all for game jams. I didn’t mean to make anyone feel excluded or shamed by sharing my enthusiasm for that method. Thank you for sharing your feelings about this so I can tread more lightly with this advice in the future.

5 Likes

Your advice works for most, and it was kind. I shouldn’t have responded in a way that made it sound like it was hurtful, because it wasn’t and isn’t.

J. J. Guest did the same, and neither of you should apologize for that.

Truth is, in retrospect, my reaction to this thread is more reflective of my channelling a bad day unproductively. I’m sorry for that.

6 Likes

I always try not to do too much at once. I think my biggest time sinks are when I try too hard to sneak in one more feature that doesn’t matter. So it’s useful for me to take lots of breaks and look at the big picture.

Trying too hard to keep myself focused takes up a lot of mental energy. I find putting something aside for a bit can be a big help with both creative and technical ideas. It’s often useful to pull away when I feel I might be concentrating/focusing because I have to.

Also, a lot of times when I force myself to do that last bit, I wind up looking at it the next day and it’s messier than it should be.

One other thing I like to do is have a task scheduler that brings up my notes for my current project at least once a day. It more or less says “Hey, you want to do this, right? If you’re just faffing around on the Internet, you have something to get back to.”

And one final thing is just having a github repo! I don’t recommend anything too complex for it. Again, you can run a task scheduler every day to bring up a summary in your web browser. If you know how to commit code, then you can say “Okay, I haven’t committed anything for a week. I’d like to do something, even if it’s small.”

I like these nudges away from distractions and towards asking myself what I want, or what I could do with the next 15 minutes.

5 Likes

@godel23

I’m going to offer an alternative approach.

Others have suggested many strategies that basically boil down to the KISS method (keep it simple, stupid). This is great advice, but doesn’t really change things. You’ll still struggle with the joy of building thingamajigs and doodads… over that of finishing stories.

Have you entertained the idea of collaborating with someone? It would have to be in a way where your interests don’t overlap too much. They do the writing, you make it work. Both of you would have to be onboard with that. I know there are a lot of writers that struggle with (or have very little interest in) learning to program. This is the type that I would target. It wouldn’t be your story, but it would be your programming and logic… and I think that’s the part you actually care about most.

A collaboration might be exactly the thing you need to finish your first game. I wonder how many writers get frustrated by the programming side and wish they had a wingman who just enjoys making things work? Might be more than you think? I’ve always wished that I could work with an artist to do the illustrations for a game, why would that be any different?

Ask yourself, do you like writing stories? …or do you like building systems that facilitate stories?

I’m more of the latter and I’ve given this considerable thought. Currently, I’m learning Chapbook and having a great time not releasing anything. :wink:

At the very least, this is food for thought.

3 Likes

I can’t focus in bits and pieces. I have to schedule a whole day with no other responsibilities, and then I’ll get a lot of work done. Since those days are rarely ever possible for me anymore, I’m not getting a lot done. But I find that if you have a whole day devoted to writing/coding, and you get up and start immediately in the morning, it will be productive.

How do people work on creative projects in small spurts of time? If you’ve got an hour after work and before making dinner, how do you empty your mind of all the other stuff so you can focus on your story? It always takes me an hour just to figure out where I was and what I was doing last time and get back into the groove.

3 Likes

This is very true for me too - long chunks of time are really really helpful for getting into a groove and getting a lot done.

Re: reorienting yourself, I keep a commented-out to-do list at the bottom of my game code. Whenever I’m going to save my progress and shut down for the day, I put the thing I want to continue on at the bottom of the list (so it’s most visible). I also include a note about what to CTRL+F so I can pick up where I left off super quickly.

7 Likes

I was going to say something similar, except I put mine at the top! Ctrl-home or ctrl-end both take the same time to type, I suppose … and we don’t want to get into a spaces vs tabs style argument though there’s something to be said for wherever you put the todo list.

I also have a shorthand of [??] for really trivial stuff I know I need to fix in the code, where it’d take longer to write a to-do than fix it.

I’ve gotten rid of part of this by just saying, okay, I am just not going to stop in the middle of tricky code. This may mean that I put off some tricky code for a while–and I’ve found more often than not it was the right choice, or I found a less tricky way to do things.

One other thing I do in general is not to mix up programmer-testing and programming too much. Regardless of how much time I have for each, I don’t want to combine the two as then my brain starts running back and forth.

I also use google keep and voice-to-text on my phone for when I have miscellaneous ideas to jot down. They can add up.

2 Likes

I honestly don’t think it’s feasible.

Are you married, have children, work full-time, have a social life, have any others who are dependent on you… then you’re not serious about the craft. :wink:

2 Likes

This is one of the many places where your extensive coding experience is very valuable. I still don’t know what’s going to be tricky. Things I think will be hard turn out to be a breeze, and things that I’m confident I can do easily turn out to be monstrous. So I never know in advance what something will look like. I wonder how long I have to do this before I get a good sense of the difficulty of what I want to do? To compound my self-made problems, I can’t seem to separate writing and programming. I do both at the same time and I think that’s just how my brain rolls.

3 Likes

Oooh I like that. I currently put REPLACE_ME in all the places where I need to add something later. Playing my game early on is just walking around in a map full of REPLACE_ME’s :joy:

4 Likes

Well … I have to admit, I often don’t know what will be tricky, either. So especially early in a project I try to have a list of things to chop away at, in case I misjudge things, and if one bit of code keeps sliding, then I ask about it.

Though I generally have a good confidence interval of how long something will take & if it takes more than I think it should, I pull back and write notes for it later. Or I try to find code that does 90% of what I want and then do 10% later. And that’s good enough–as I alluded before, hitting one’s head against a technical wall can really kill creativity and motivation, and knowing I do less of that than in the past has been a boost!

Plus I feel much more comfortable backing out of code changes, or committing them with a good partial solution. Being ready to take half a loaf is important.

So yeah often I too don’t know if something is going to work really quickly until I sit down and poke at it a bit. Special cases turn up. Some are worth dispatching quickly, and some force a big reorganization. (On the subject of special cases, I love having an issue tracker for them.)

I would bet you are already doing this in a certain way. In fact, a lot more than you think. You go as far as you can, then you ask questions on, say, the Inform 7 board and maybe while waiting for people to answer it, you maybe do the creative/writing bits. Maybe it’s places where you’re stuck, period, or maybe it’s places where it just feels like there should be a more economical solution than the one you have and people with more experience know and can explain it.

Certainly one thing that helped me was realizing I didn’t have to keep coding hard if the results weren’t there (computers do not keep track of hustle points) and also having faith that – those people closer to the cutting edge than me? Some might look down on me and say “pfft, you didn’t know that shortcut?” But the shortcuts are there, and there are enough nice people out there who will help you. And they matter a lot! I know that if I’m exhausted from programming, no good ideas flow. (Whether or not good ideas flow when I’m not, well, I’m biased on that one.)

Over the years I’ve grown to have faith in crowdsourcing technical questions, and not having to worry about that frees up focus for the creative side. I think you’ve had and gained faith in the process, too. Of course there is more to learn and longer to go.

Haha, yeah, I actually used to have FILLER_TEXT, but then I just got lazy with typing.

Come to think of it, sometimes I get really lazy and use qq since there is almost no cause to 2 q’s together even as a silly variable name. So I can search for it easily! And if I need to make comments I can say, for instance, #qqrefactor these 3 functions into 1.

I also have stuff like a cheap python script to open code at the first qq/?? or even list the notes of what needs to be done. This may not work for Adventuron, though, where you don’t have an easily accessible file.

Still having that toolbox full of small conveniences helps a lot. It’s not critical, but it does make me feel less helpless.

5 Likes

I get to work in large chunks of time, though in my case the price is pretty steep.

Even so, once I am into a project, I’ll take any time I can get, frequently sitting down for 30 minutes when I can. This isn’t great advice, but it’s good to be in love with a project. I think that, when one doesn’t love all parts of a project equally, it’s useful to see what drives you and take advantage of that.

For instance, solving technical problems was something I had to do with my project. Sometimes it was satisfying, but at other times it was a drag. I looked at it as something that I needed to do before I could get back to writing, which I loved. It was constructive to think that way: “If I finish with this coding problem, I can get back to the stuff I like.” For me, this involves doing both in short bursts at first. Ideally, I get things laid out so I can do more and more writing as the project pregresses.

I think the opposite can be true, of course. Some people will want to get through with writing so they can focus on tech stuff.

It’s also good, at least for me, to think about the whole project. For instance, “this thing I’m writing will be hard to do technically” or “how will I fit this technical solution into a game?” It could be possible to sabotage oneself.

Some writers may only like one part of the game or the other, it which case it might be productive to find a collaborator.

I get why people might find it helpful, I will probably never enter a jam, because I am very self conscious about my work. I don’t share it until I think it’s ready. That’s not something about me that will change! Been this way for decades, and it’s working for me.

7 Likes

That’s interesting. I kind of like that short bursts idea. Too often I find that I get sucked into solving a problem, or writing a side plot, and suddenly that Sunday afternoon I’d set aside is gone. I need learn how to move on quicker - so the previous posts suggesting “REPLACE ME” filler text does sound like a good idea.

5 Likes

I think writing a long IF game is like writing a novel. You breakdown your story into Act I, ACT II, ACT III, and ACT IV outlined. Then you break each section down into plot steps, then finally into chapters and scenes. Of course, you don’t have to have the details behind every single section, but every story should have a solid roadmap.

I never understand the ‘pantser’ who don’t have a clue where their story in going. They just write. I can’t work that way. I’ve completed several novels, and I’ve written them all the same way. I eventually get to the point where every scene is defined, and fitting into the overall plot and structure of the story. Then it is simply sitting down every day and filling out the details and action of a scene.

Now I have been working on a large IF project, and instead of scenes - I am calling them puzzles. Of course, there are distractions. We wouldn’t be human if we didn’t get sidetracked. But you just write one scene at a time, one puzzle at a time, It is a discipline yes, but the discipline is made easier when you just have to color in one scene/puzzle at a time.

2 Likes

If this was not a rhetorical question: I cannot empty my mind of my projects. My head is full of source code and I’m always bugfixing in my head, based on what I last read from the screen. Everything else in life piles on top of that. Once I get back to the project, it’s like I never left.

I do this while married and was doing this while working close to full-time, if the data point is valuable. Before I was employed, I was doing this while being a full-time college student, too.

I think this is a symptom of my severe ADHD, though, and it’s not actually healthy. I’m more offering this perspective for the amusement of others. There is no useful advice in this post, lol.

3 Likes

It’s always good to hear where others come from. I find this IF endeavour to be a luxury of one’s time. If it’s important enough, people will find a way to afford it. I’m poor in that department, unfortunately. Most of the time, I’m just too tired to think critically after all the day’s responsibility has concluded. However, I think about IF constantly. I know I’m passionate about it. I jot down ideas for stories and coding all the time. One day I’ll learn how to hold the brush and paint a wonderful IF, but not today. :wink:

For @AmandaB, I’d suggest she order take-out one day and tell everyone in the house to f#*% off for that evening while she commits 3 hours to her passion. You have to be selfish, but not neglectful.

4 Likes

That sounds all too familiar to me. I felt (or feel) the same way, and not only with IF. What has worked for me is to work to a deadline. No longer working for myself, but for the deadline. The deadline is the customer and he wants to see a finished thing on a certain date.
Also, it’s important to set a time period that I know I can maintain my motivation to work only on that one thing for that long. For me, that’s about 2-3 months. And that focuses me then, because I then include in every design decision whether I think I can do it in that time frame. And with that, everything that is too complicated is kicked out. That’s the thing, you have to get rid of everything that prevents you from getting your thing done.
A backlog can be extremely helpful. Maybe that cool thing you can’t do now will become the basis for the next game? But first, you have to get this one done.

2 Likes

Very interesting question! To be honest, for my current project “Phoney Island” I asked myself that question more than once, because this project was from the beginning much too big, too ambitious and in many technical aspects too advanced for me (I wrote the whole framework by myself, because I wanted to refresh my programming skills, and I had to learn really a bunch of things to achieve that goal).

So this project was never meant to be completed really, but in the current state I definitely see that it will be finished soon.

I thought about how this could happen. Here is my certainly incomplete overview.

First of all, I had a set of interesting questions in mind. Some technical stuff (learning C#, deepening my knowledge of oo programming) and some more game design stuff (designing crazy stories, writing crazy dialogs). These questions turned out to be well-chosen goals that actually carried me through all the motivational holes.

I am someone who needs structure to work. In my dayjob I’m a project manager, so for me nothing goes without a plan. So right from the beginning I drew the picture how to achieve the final goal. To be honest, I changed the plan many times, but there was always a plan how to finalize the game.

For story writing I broke down the story into different acts, like Clint. In my story you can see easily a three-act play structure, and it was very helpful. (I can recommend these techniques really to every writer, they are a bless)

I also wrote a complete outline of the puzzle set, so before I wrote one line of the gameplay code, I had written down all the puzzles (but, of course, changed a lot of them later). Any character (I have tons of them) got a short characterization and some dialog samples.

I also can confirm, what others wrote above, that beta testers changed perspective a lot. I realized that many of the puzzles were not well initiated. So working with my first two beta testers gave me a complete new view on my game.

(And I ended up being so annoyed at my mistakes that I implemented almost all of the criticisms. So I learned a lot about hint systems, without intending that in the beginning)

What didn’t help me at all finally, were deadlines. As long as I have fun working on the project, why should I hurry?

The game is technically finished, but there was still some motivation left, so I started some experiments. First of all, the game is originally written in German, which is not very satisfying, because the German IF community is rather small. So I started working on an AI based translation together with DeepL. I also tried some experiments with Midjourney AI illustrations, which also had some interesting results and was great fun.

So I approached my project with some planning and have a bit of background in story telling and puzzle design. That definitely helped keep me from despairing about the project. But the most important thing was that I really enjoyed the whole thing.

1 Like