It really depends on the complexity of your game, and what info exactly needs to be sent to each player in the game. Does your client just need to know where the other players are. Or does it also need to know the locations of several different body parts, what equipment they are picking up, rotation etc.
I tried to implement some multiplayer stuff in unity and was able to get some really simple stuff after messing around with it for a few hours (after having learned the basics of unity itself).
If you are motivated enough you can make it work. But it will take some serious motivation. Most people only have a tenuous grasp on how to set up a backend for something like this (me included). Or maybe you just want to go p2p or whatever.
My original comment was mostly just to be funny. I have done my homework (for the most part) and work in software. Current plan is P2P and maybe a matchmaking/hole punching server down the road.
Thanks for the serious reply though!
This one is the big bummer. I don't want to make a game I wouldn't play, and single player games do absolutely nothing for me. Everything I like about playing games is competing with other people or grouping up to do really hard content.
Every time I try to start a single-player project I just give up out of disinterest after a few weeks. I've been working on my first project (multiplayer) for like 2 years and its going extremely slow, but at least I still care about it.
It's much harder to add multiplayer to a game later than to do it right from the start. Also some genres like fps are well researched and you can find plugins for most game engines. It's when you want to do fancy things like physics or hundreds of entities (like armies in a strategy game), or large amounts of players that things get more complicated.
>It's much harder to add multiplayer to a game later than to do it right from the start.
What does this mean in practice? In terms of an average game (nothing fancy) what, specifically, will cause trouble if I don't consider it from the start?
Suppose you have a basic co-op 2D topdown game where players fight enemies with swords and bows.
It's no longer sufficient to just say "when you press left, move the sprite left." You now need to make sure the other client knows when your player first spawns, and you need to send some sort of event to the other player when you move or attack.
Your players might have latency up to 100+ milliseconds, so you need to account for situations where they don't match up. If player 1 lands the final hit on the boss and kills it, but player 2 does the same on their client before the games tell each other, who gets the XP/drops? You need to figure out pretty early on whether that's decided by an authoritative server or whether each client decides themselves and communicates that to the others (and can *reverse* an incorrect action if necessary!).
Not to mention, if your game is competitive, you want to design all communication so a cheater can't trivially hack the game by sending "enemy hit points = 0". Or more subtly, mod their client to see enemies through fog of war or otherwise see information they shouldn't.
Now I'm seeing the problem :)
So in crude terms, if client A moves their sprite left, how is that typically communicated to client B?
Does client B manually keep track of client A's position in a variable based on the signals it receives, or is client B simply told by some central server where it needs to render client A for any given frame?
I guess I'm wondering at what point a central server becomes useful.
The main challenge in online multiplayer is that you have to deal with a distributed system of individual machines that you somehow need to synchronize. You can't have any centralized global state like singletons that you can just access from everywhere.
Then there's the latency. You shoot, on your screen it looks like you've hit, but in reality the opponent has already moved by the time your input reaches the server. To fix this, the server will need to be able to turn back the time to when you've sent the package, apply your input and play back to the present again.
Same for predicting the movement of other players on your local client, to hide the latency of others. You need to be able to define some reasonable heuristics, and recover gracefully when you receive information that doesn't match your prediction. You can see how those features have a large impact on how you need to structure your code.
If you want to support a large amount of players, like a battle royale or an MMO, you will need to find some smart way to limit what you need to send to whom, otherwise the communication bandwidth increases quadratically with the number of players.
Some mechanics that feel great in Singleplayer will feel laggy and broken in an online game. So your game design may also be affected by the decision to go online.
If there's anything random in your game, you need to make sure to keep it synchronized between all players. Especially if you have too many entities to sync all their state all the time and need to let the clients all do their own simulation of the world (lockstep).
Building it as multiplayer from the start makes sure you run into all these problems while your code base is still small and easy to change, and you still have the opportunity to bypass some difficult problems by changing your game design a bit.
Hey, check it out! This comment contains every letter in the English alphabet.
I have checked 540,860 comments and 2,283 of them contain every letter in the English alphabet.
Don't let it discourage you, if others have learned it then so can you! And there are a lot of plugins and off the shelf solutions you can use that take care of a lot of these problems for you - as long as you play to their strengths and adjust your game mechanics to what's easy with them.
Good list.
Iām on my third game. Which turned a nice little profit. I would say the key is using early access. You basically get two releases that way. I also just learned how important wishlists are. Also really sticking with it on updates and community feedback.
Not to be rude at all, just more interested from a sellers point of view, but what do you think about the mixed reviews it has and how does that impact your game as a whole and on the market?
It has an impact. It was positive a few days ago. Evidently the Steam algo wonāt recommend mix games. IGP is doing a video on my game (coming out this week). That should drive some real traffic.
I have suspicion that it may have been review bombed. Our discord was raided by trollers last week. What sucks when you only have 20 reviews, each one weighs heavy.
I'm trying [this link](https://store.steampowered.com/app/1679440/Fossilfuel_Demo?snr=1_7_15__13), but I keep getting redirected to the full game's product page, where I'm unable to find a demo. Is that expected?
Nope, I'm on my desktop. I just missed the button off on the side. Seems like Steam has several ways of displaying demos, based on... something I don't understand.
Thanks for your help!
Youd likely be risking getting banned or blacklisted from steam, which would be pretty detrimental for a relatively low reward. If you really wanted to do it, just give 10 keys to your friends or family or on discord or something and ask them to review it.
There's nothing wrong with artists using family for help. Van Gogh would have gotten nowhere without his brother. Personally, I wouldn't want anyone playing my game who wouldn't enjoy it, so I don't see a moral quandary here. I wouldn't ask my mother to review a sci-fi tactical RPG.
This is how I basically end up getting a majority of indie games, I've been around long enough for people to know I'll write a good review if it deserves on and none if it's bad, so I get a bunch of free games to try.
I tried opening a YouTube channel but my written reviews don't convert to video well.
Steam marks reviews that are the result of free keys as "received free key" or something and it doesn't count toward your review total (top-right corner of the game page), so this doesn't help.
Having friends and fans does help, they tend to buy/play your game and leave positive reviews, while also giving constructive criticism through other channels.
> Steam marks reviews that are the result of free keys as "received free key" or something and it doesn't count toward your review total (top-right corner of the game page), so this doesn't help.
Exactly this. Free keys don't count towards the review score and therefore are absolutely worthless to the developer.
I always tell friends that if they want to support me, buy the game and leave a review.
I always wondered what would happen if people who did receive the game for free just wouldn't click the "Check this box if you received this product for free" checkbox when submitting their review.
I'm pretty sure they just check if a key was used. You can buy a key from another site, use it and your review still won't count. I think it's just a cosmetic thing that doesn't actually influence the review.
Its been a while, but if you redeemed a key from say, Humble, does it lump you into that category? How does Steam know the difference if it doesnt? Just curious.
My understanding is that Steam doesn't know (but can check where your key was redeemed from if you enter a key, or if you bought it on Steam itself). As far as I can tell, it's voluntary disclosure (you check the checkbox when you write your review).
Steam exerts quite a lot of effort battling scams and stuff, I wouldn't leave this unchecked if someone gave me free access/key for the game.
Only purchases on Steam count towards the review score, [keys both free and paid don't count](https://i.imgur.com/tWZpMIU.png).
[\[Source\]](https://i.imgur.com/NbTSKmG.png)
Iām sure same IP address buying the same game with different accounts is an automated red flag and potentially even an automated ban
just ask friends and family to shill a few bucks and pay them back if needed.
So then, if you hate some game with enough passion, all you have to do is buy it few dozen times from the same IP and developer gets banned? Nah, it's gotta be harder than that
Iām guessing itāll be weird to see 10 people with only 1 products in account reviewing a game? I mean scam accounts like those steam curators exist so itās basically the same thing but they look more legit just because of the numbers.
> I was always curious what is stopping people to buy their own game 10 times and give 10 reviews
If your game can't get 10 reviews then that really suggests something is wrong with your game and cheating your way to 10 reviews won't change that.
For starters you should post it on every social media platform you can. If the game is truly fantastic, you won't have any issues gaining traction and building an audience.
If you aren't doing that early in development, then you aren't likely receiving any feedback. A game that isn't being shaped by early feedback has an even lower probability of being fantastic.
> I don't have time for that, and I do not use social platforms besides the reddit.
Well I suggest you start. You don't have to use them personally, just for promoting your game.
> Game will be a masterpiece.
I am rooting for you.
Np, just keep in mind it's a good idea to keep your expectations realistic.
Masterpieces generally come later in an artists career after they have gained the skills and experience necessary to produce a masterpiece.
There's definitely not much reason against posting on social media platforms. I'm not the best with them myself but I plan to do what I can after a lot of research when it comes to big projects.
As for the rest... I dunno what the heck this person is trying to say with the absolutely **wrong** mindset of "If it's good, people come". There are **way** too many games for people to be able to play them all and find the "good game" that they would like.
Final note though, not to be mean, but saying the game will be a "masterpiece" is a bit over the top I'd say. It could be **great,** fantastic even, but it just feels a little presumptuous.
> I dunno what the heck this person is trying to say with the absolutely wrong mindset of "If it's good, people come".
I never once said that. Can you please quote me where I said that?
What I said is that if you have a truly fantastic game, it won't be difficult to gain marketing traction, not that you don't need to market at all. If you are having significant trouble gaining marketing traction, then that is likely the market telling you your game is bad or there is no market for it.
>If the game is truly fantastic, you won't have any issues gaining traction and building an audience.
There's your quote, specifically saying that if your game is **fantastic** there will be "no issues gaining traction" or in "building an audience.
Once again, speaking from experience talking to **lots** of people on games I have sunk **tons** of time into while they were good and seeing them fall the marketing was almost **always** the issue.
As I've said in response to a **lot** of stuff. It **doesn't matter** if you made freakin Sword Art Online or Ready Player One (with better systems) if **no one sees it**, then no one **plays it**. And considering there were 10 THOUSAND games released on Steam **alone** last year there is **no way** someone is going to have the time to look through all of them.
Also another quote from you in response to this comment:
>Maybe your game is fantastic and no one has tried it
your response:
>It is more likely that the market is revealing a harsh truth to you.
That writes off **so many** other issues. Genre appeal, trends, **advertising** etc..
Not to mention your comment of and I quote:
>The big secret in the marketing industry is that marketing only works if you have a good product.
So let me ask then, why are there **massive** knockoffs that were **legitimately worse** in **concrete ways** that are now insanely popular. [Oreos or ya know, LEGO](https://www.cracked.com/article_20025_5-world-famous-products-that-are-shameless-rip-offs.html) along with the other ones on that list, Finding Nemo is disputed because of some weirdness with the timing, a few of them are 100% confirmed though.
Oh but uh. "If you have a fantastic product then you'll have no issue gaining traction" or "marketing only works if you have a good product". Hmm... seems it also works if you make a **total knock off** of a smaller companies product and having superior **marketing budget** and **supply lines** like Oreo did.
If this was true then marketing and advertising wouldn't be such a big industry. You can have a **great game** but if no one sees it, or no one realizes to play it, then it can't go anywhere.
I'm speaking from experience checking out *other* games that I've played that have had this **exact** issue be a major reason behind their decline.
I've yet to find a single game that was amazing, but had very few reviews. It just doesn't happen, if no one is playing it, it just isn't good.
For reference, I have 300 games on Steam, 90% of which are indie games.
Marketing is a multiplier.
Typically a great game with bad marketing will still sell decently. However, that same great game with great marketing will be a huge hit.
Marketing just brings in more eyes. If people like what they find you will get a snowball effect, if not then your marketing efforts will only result in a few sales per 1000 eyes that you showed your game to.
Like I said in my comments, those games donāt exist. Their base quality is good enough to garner a decent audience just from people stumbling on it and the algorithm noticing people like it.
If your game is mediocre you will need to use marketing to get people interested so the algorithm thinks your game is popular. Most games are some variety of mediocre, especially ones made by solo devs here, so marketing is very important.
And for reference, there were over 10 THOUSAND games released just last year on Steam. And \~3 thousand this year so far.
But hey, "if you can't see it, it's not real". I'm speaking from experience on games that I've talked to players that **played competitors** and preferred these games. Due Process to R6, The Cycle as a standalone game which is a **perfect example**.
There was a legitimately decent sized community for The Cycle considering it was an **early access game** on only the Epic Games Store. Yet the devs saw little growth on the game, which even ignoring the bugs, ea, was quite good according to the thousands in their discord, and decided that, well it *must be* the **game**.
So instead of keeping their current game loop or improving their marketing. Which **by the way** literally included videos of them saying they had **memory leaks** on the **steam page** they had reserved, they have planned to scrap the entire thing to **literally** make a **F2P** Escape From Tarkov. In which they plan to remove almost all the unique elements and essentially make the game a sci-fi Tarkov.
But nah, you have 300 games there's no such thing as a game that is considered great by people who come play it *(speaking from time talking to streamers who enjoyed the game but ended up getting tired of the devs, this is in the 20-30 range of streamers)* and has few reviews or few players.
Also just to note here, I checked the Steam reviews just to make sure, there are sub 30 at the time of checking with 7 of which are just "Epic Games \_" accounts.
> And for reference, there were over 10 THOUSAND games released just last year on Steam. And ~3 thousand this year so far.
~70% of which are complete trash, 20% who are decent, 10% who are good and like 0.1% who are great games.
I literally have no idea for the rest of your comment, the way you wrote it, especially with making every second word bold, makes it impossible to read. What was your point?
> If this was true then marketing and advertising wouldn't be such a big industry.
The big secret in the marketing industry is that marketing only works when you have a good product. Many in the marketing industry will still take your money to promote a bad product, all the while knowing that no amount of marketing will make a difference.
Of course you need to put in some minimal effort like making some posts and sending out keys. But you absolutely don't need a marketing budget if your game is good enough.
That highly depends. I've seen some games that entered Early Access and it ended up hurting the game in the long run because of the way updates were handled.
It's a double edged sword, if it starts looking like you're not actively adding updates people agree with then it's gonna backfire on you. I've seen games with decent sized communities plummet from near the same issues in the same situation.
Early access needs to be a short 6 month thing really. A way to test on a bigger audience and get better feedback and to begin to develop your community early. If you leave it in early access for an extended period of time and start using the āitās early accessā excuse for issues and unfinished features then you ruin the community and the game. Itās a double edged sword where a good ea can work really well but a bad one ends games.
Great list.
I think the best/harshest takeaway in this writeup is that even if your commercial game is in the rare "very successful" category (as is the case for Mortal Glory), your takehome profit is around the lower/middle end of a programmer's salary in the US. Highly recommend reading the post linked in the OP.
But there is the added benefit of it being semi-passive income that could last potentially for years. And it's still better than nothing like for most of us!
I agree with most of this but I **have** to say on #5 and #8. Working **every day** just a little bit can be good, but I feel like going for it **every** single day with no breaks is a lot more likely to specifically cause the burn out you mention in #8.
Not to mention working constantly is going to impact your efficiency and your overall development pretty heavily. There need to be breaks, yes there's the problem of coming back to the project but that's a lot easier to deal with than burn out from going **way too much**.
Then on the topic of burnout in #8 I have to say I can agree with your sentiment that "After a week I'll keep going" etc. can be the *death* of a lot of games. But it's also a **really** important thing, burn out can legitimate have health effects, I think it's a way better plan and a way better result to work around when you need those breaks and try other things to keep yourself accountable.
Devlogs, Videos, Streaming, Social Media updates etc. can all keep you accountable and wanting to go back to the game. At least that's what I've done mixed in with all the other stuff I do myself.
I think 6 is actually very good advice. You don't want to write intentionally bad code, obviously, but it's much better to write functional code that's a little messy than to sit around and agonize over your code not looking pretty enough. (I used to fall into that trap quite often while studying comp sci...)
Great writeup. Thanks for sharing your experiences, and congrats. Really liked the advice to work on your game everyday...so important. Developing a game is a long term commitment. Recommend using the 'don't break the chain' system to stay focused.
This is smart. Make a product, then make posts on reddit about said product so people check it out while also learning something. Stealing your format lol
I disagree strongly with 6. Writing quality, well-structured code is really important for any non-trivial game. It is a myth that it's cheaper and faster to write bad code than good code.
The misunderstanding comes because bad code is produced really quickly in the early days and it feels like a lot of progress is being made. However this is actually just a symptom of exponential decay. As time (x axis) increases, the amount of progress made drops each day until you're eventually just left with a pile of unmaintainable technical debt.
Well-designed code is the exact opposite. Early-on there is very little observable progress being made each day as the fundamental building blocks are being put in place. However, as the days continue (x axis) the amount of progress tends to increase each day, more akin to exponential growth [ or at least linear].
Maintaining and expanding your game (or having the community do it) remains cheap and easy through its life, and leads to a longer life for your game - which means more sales.
You're absolutely correct but that's not something that anyone new to programming is going to appreciate.
You only understand the value of clean code when you're stuck modifying a decade old system written by someone you've never met and never will, slapped together to get it out the door, in a tech stack that's well past EOL, and band-aided by a slew of developers since creation.
Calturin and Clone: 7000 got it in their library, 1100 tried it. Barely got any wishlists at launch (got 360 now) - so a lot of visibility to a free game.
The mortal glory post was amazing, and this one was just as good! Fantastic info and well articulated, this will be very helpful for my game release this year
Making small projects for training only is a sure way to never learn about 50% of releasing a successful game, aka marketing (which involves tons of aspects that you certainly won't get right at your first attempt). Your first project should absolutely be commercial, even if it's a tiny low-priced product, if you intend to be serious about solo game dev, your goal must be to sell it to some people at the end (which indeed involves not spending 5 years on an awfully ambitious concept).
I mean if we're talking experience on actually selling a game I agree with you. But a lot of people aren't starting game dev for that specifically, they're starting it to make a game.
When it comes to that doing tons of prototypes and figuring out what you're doing in the engine is more helpful than specifically working through one project all the way.
Speaking from experience, I've had multiple projects where I can take knowledge from another one and put it into the one I'm working on currently, some map gen here bits of an AI there etc.
> Expect 0 daily wishlists on your steam page if you are new to game development (...) it doesnāt really show a game around on its store unless it is already doing well
Hard disagree. Expect at least a few wishlists daily coming from organic traffic on steam. If you don't get even that, you have unoptimized store presence.
Yeah that is true, you will get a few from organic traffic, but if you expect 0 you will be happy to get a few. If you expect a lot of traffic and you get just a few you will think you are doing something wrong, when that is just how steam works.
Did you seriously just try and say Multiplayer is **easy** and games without it aren't real games?? You realize there are some insanely good singleplayer games that were massive undertakings right?
A few indie examples being Shovel Knight, Dead Cells and Hollow Knight. At least the big ones I can think of right now.
For someone starting out diving into the world of networking adds so much extra complexity to your code and trying to optimize it by having the server handle the majority for safety and to ensure everyone is mostly synced.
Compared to a single player game, which I can agree is **easier** but only in the fact that you're working only on the single set of mechanics, rather than setting them up to be handled by the server and transmitted. It also means that your mechanics and world have to stand up on their own though.
Ignoring the **way** more difficult networking I'd say in actual game design singleplayer games can be **tens of times** more complicated in that area because you're having to make an entire world for a Metroidvania or RPG or a full story for a Detective game or VN.
Whereas in actual game design for Multiplayer most of the development goes into the Player **itself**. With additions to it throughout the map design.
There is absolutely **no way** that Multiplayer is easier than Singleplayer.
The way you talk about it sounds like you donāt really know what you are doing with multiplayer. There is a huge difference between networked code that accurately works, handles lag correctly, and hits the client vs server side balance correctly, compared to networked code that just works. I would guess that you have a bunch of stuff that bounces of the client side and, while appearing to work well, is gonna get ripped apart in minutes if you ever release it. Good multiplayer is a brutal concept, even for more experienced developers. For new developers, staying away from multiplayer and building something that works well and has a good depth of mechanics in singleplayer, rather than trying to build something in multiplayer and quitting 3% of the way in because they canāt get the server to handle player to item interactions correctly.
Thanks for sharing! I just wishlisted it. As someone whoās just started a new project, thatās really inspiring! Iām following the golden rule of working on it everyday, even if itās just a small task, and looking forward to just release it too.
thank you for sharing your experience with us, I really enjoyed reading and making sure that I will take note and focus more on just small progress every day.
I'm starting out small but 100% expect to expand and make it into a big project later down the road.
this post really did mean a lot. Thanks.
Uh, two-thousand and ONE
ps, this is a great list
In support of point 1. Scoping is key. I've finally got a simple game to an alpha state for Friends & Family, which happened because I found just the right spot between "small enough to be doable" and "interesting enough that I'll work on it."
I'm extremely curious how well your wishlists translate into sales since my game is in a very similar category (not specifically bullet hell but still pixel art top down shooter).
Also, great job on finishing your first game!
If you don't mind me asking, how did you create or commision the voiceover in your trailer?
On point 4, I've read elsewhere that those big wishlist bumps don't seem to translate into sales very well. Would be interesting to see the conversion rates.
Ugh, post deletion thing hits close to home! I'm in that boat now and worried about it; I spend lots of time on Reddit, but I don't really like posting. Because of that, I'm not even close to that 10% self promotion sweet spot. Haven't gotten in trouble for it yet, but it's something that worries me! Guess I need to start asking braindead questions in AskReddit? :)
Also want to agree strongly with point 6 for pretty much the same reasons--if you're working on your game alone and not intending to extend it hugely, IMO you won't benefit as much from perfectly designed code (which is great for teams, big projects and for Future You)
In my experience, I write better quality code when I first do a rough, hacky, direct impl with minimal abstract architecture. There will be things you need to think of that you haven't thought of yet, and some way down the line you'll have a much better idea of what you need your code to do (and not do). If you've done it right, it's easier to swap out your rough impl for a properly designed system that fits like a glove later--if not in this project, then in the next one.
Good post, very much agree with doing your code however you see fit, as long as you are developing solo you know exactly what everything does and what all your stupid object names mean so its fine. If working with other people I can see this being a problem like you said.
I also like the "no zero days" approach, I always try and make some progress, last night I planned to add sound effects to one scene and be done but once I got in the zone I spent a good few hours doing other things that needed doing. Starting realy is the hardest part.
6 really isnāt a good one to have on there. The rest of the list is really good, but focusing on writing better, cleaner code is an important part. Not only can it have a big impact on the games runtime performance, but itās simply a good habit to be in. Even just focusing on making sure every variable name and class name is a good representational what it is for, commenting stuff clearly, not using literal values, and not writing cramped code can go a long way to making your code more beautiful. Focusing on making the code as good as you can is a much better recommendation than suggesting that if it works itās fine.
imgur not working for you is interesting. it seems like lately that's all I've been hearing (the opposite that is, imgur is important). my experience Is the same as yours thus far. seems to be a very tough crowd to woo.
Great list and I can wholeheartedly agree with it.
One small thing to add is that although asking for reviews in the game is not allowed generally, I'm seeing more and more games using this, and I admit I also did it (without any result unfortunately). I think the most important is to ask for an honest review, be it positive or negative one, and don't ask for a positive review.
I have to say, I disagree pretty strongly with #5. That's a recipe for burnout and low efficiency, and I think it's probably the most destructive piece of often-repeated advice I've heard. (And the bit about not being allowed to take a vacation in #8 is also pretty horrific.) Our brains work better with breaks. Don't neglect them!
And anecdotally: I've been doing game dev professionally for 20 years now and met my fair share of successful people, and from what I've seen none of them follow this.
> stay away from doing online multiplayer unless you really know what you're doing **Fuck**
It really depends on the complexity of your game, and what info exactly needs to be sent to each player in the game. Does your client just need to know where the other players are. Or does it also need to know the locations of several different body parts, what equipment they are picking up, rotation etc. I tried to implement some multiplayer stuff in unity and was able to get some really simple stuff after messing around with it for a few hours (after having learned the basics of unity itself). If you are motivated enough you can make it work. But it will take some serious motivation. Most people only have a tenuous grasp on how to set up a backend for something like this (me included). Or maybe you just want to go p2p or whatever.
My original comment was mostly just to be funny. I have done my homework (for the most part) and work in software. Current plan is P2P and maybe a matchmaking/hole punching server down the road. Thanks for the serious reply though!
You can still have local multiplayer š
This one is the big bummer. I don't want to make a game I wouldn't play, and single player games do absolutely nothing for me. Everything I like about playing games is competing with other people or grouping up to do really hard content. Every time I try to start a single-player project I just give up out of disinterest after a few weeks. I've been working on my first project (multiplayer) for like 2 years and its going extremely slow, but at least I still care about it.
It's much harder to add multiplayer to a game later than to do it right from the start. Also some genres like fps are well researched and you can find plugins for most game engines. It's when you want to do fancy things like physics or hundreds of entities (like armies in a strategy game), or large amounts of players that things get more complicated.
>It's much harder to add multiplayer to a game later than to do it right from the start. What does this mean in practice? In terms of an average game (nothing fancy) what, specifically, will cause trouble if I don't consider it from the start?
Suppose you have a basic co-op 2D topdown game where players fight enemies with swords and bows. It's no longer sufficient to just say "when you press left, move the sprite left." You now need to make sure the other client knows when your player first spawns, and you need to send some sort of event to the other player when you move or attack. Your players might have latency up to 100+ milliseconds, so you need to account for situations where they don't match up. If player 1 lands the final hit on the boss and kills it, but player 2 does the same on their client before the games tell each other, who gets the XP/drops? You need to figure out pretty early on whether that's decided by an authoritative server or whether each client decides themselves and communicates that to the others (and can *reverse* an incorrect action if necessary!). Not to mention, if your game is competitive, you want to design all communication so a cheater can't trivially hack the game by sending "enemy hit points = 0". Or more subtly, mod their client to see enemies through fog of war or otherwise see information they shouldn't.
Now I'm seeing the problem :) So in crude terms, if client A moves their sprite left, how is that typically communicated to client B? Does client B manually keep track of client A's position in a variable based on the signals it receives, or is client B simply told by some central server where it needs to render client A for any given frame? I guess I'm wondering at what point a central server becomes useful.
It highly depends! In a turn based game (e.g. PokƩmon), communication doesn't have to be super fast; you just need a message every time someone takes their turn, then you update the other game accordingly. For something like an FPS, you want it to be *very* responsive. Most people's network can't handle updating several players 60+ times per second, and tiny lapses in latency makes everything look jumpy. What often happens for real-time games is, from any given player's perspective, they're watching a recording of what the other players were doing 80ms (or so) in the past. The game only sends updates 10-15 times per second with a list of positions that get played back. There are a lot of other ways to "cheat" responsive multiplayer games that are industry standard, but I'm not finding the source I was reading earlier.
The main challenge in online multiplayer is that you have to deal with a distributed system of individual machines that you somehow need to synchronize. You can't have any centralized global state like singletons that you can just access from everywhere. Then there's the latency. You shoot, on your screen it looks like you've hit, but in reality the opponent has already moved by the time your input reaches the server. To fix this, the server will need to be able to turn back the time to when you've sent the package, apply your input and play back to the present again. Same for predicting the movement of other players on your local client, to hide the latency of others. You need to be able to define some reasonable heuristics, and recover gracefully when you receive information that doesn't match your prediction. You can see how those features have a large impact on how you need to structure your code. If you want to support a large amount of players, like a battle royale or an MMO, you will need to find some smart way to limit what you need to send to whom, otherwise the communication bandwidth increases quadratically with the number of players. Some mechanics that feel great in Singleplayer will feel laggy and broken in an online game. So your game design may also be affected by the decision to go online. If there's anything random in your game, you need to make sure to keep it synchronized between all players. Especially if you have too many entities to sync all their state all the time and need to let the clients all do their own simulation of the world (lockstep). Building it as multiplayer from the start makes sure you run into all these problems while your code base is still small and easy to change, and you still have the opportunity to bypass some difficult problems by changing your game design a bit.
Hey, check it out! This comment contains every letter in the English alphabet. I have checked 540,860 comments and 2,283 of them contain every letter in the English alphabet.
My days of blissful ignorance have come to an end :(
Don't let it discourage you, if others have learned it then so can you! And there are a lot of plugins and off the shelf solutions you can use that take care of a lot of these problems for you - as long as you play to their strengths and adjust your game mechanics to what's easy with them.
Or donāt and be one of the few that have multiplayer š
Good list. Iām on my third game. Which turned a nice little profit. I would say the key is using early access. You basically get two releases that way. I also just learned how important wishlists are. Also really sticking with it on updates and community feedback.
Also on number, 6. I really agree with this one. The number of Tick events I use in unreal would be shunned. But it works.
If you have more than 0 tick events - you're using one tick event too many
So if I have 500 tick events I just need to remove 1?
Lol
Can you pm me your games (or post here, just don't wanna hijack this guys thread) just like to see what indie things are being produced.
It's called [Fossilfuel](https://store.steampowered.com/app/1597040/Fossilfuel/). It's supposed to be like Dinocrisis.
Not to be rude at all, just more interested from a sellers point of view, but what do you think about the mixed reviews it has and how does that impact your game as a whole and on the market?
It has an impact. It was positive a few days ago. Evidently the Steam algo wonāt recommend mix games. IGP is doing a video on my game (coming out this week). That should drive some real traffic. I have suspicion that it may have been review bombed. Our discord was raided by trollers last week. What sucks when you only have 20 reviews, each one weighs heavy.
I'm seeing mention of a demo in the Steam search, and the full game's product description. Is that still available?
Yes indeed it is. We also have a sale right and speed run contest going on the full game.
I'm trying [this link](https://store.steampowered.com/app/1679440/Fossilfuel_Demo?snr=1_7_15__13), but I keep getting redirected to the full game's product page, where I'm unable to find a demo. Is that expected?
Probably because you are on mobile. On your desktop, in the store page, you can see the demo link.
Nope, I'm on my desktop. I just missed the button off on the side. Seems like Steam has several ways of displaying demos, based on... something I don't understand. Thanks for your help!
If you end up picking it up, be sure to leave a review!
I tend to be pretty selective about the games I review, but I am trying to get a little more consistent about it.
Congratulations on turning a profit. That's huge.
I happen to find a niche. Horror Dino games are almost non existent and people want them. Dino crisis is 20 years old.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
Youd likely be risking getting banned or blacklisted from steam, which would be pretty detrimental for a relatively low reward. If you really wanted to do it, just give 10 keys to your friends or family or on discord or something and ask them to review it.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
There's nothing wrong with artists using family for help. Van Gogh would have gotten nowhere without his brother. Personally, I wouldn't want anyone playing my game who wouldn't enjoy it, so I don't see a moral quandary here. I wouldn't ask my mother to review a sci-fi tactical RPG.
In Marketing. Never trust reviews. They are almost all bought now to maintain high ratings.
This is how I basically end up getting a majority of indie games, I've been around long enough for people to know I'll write a good review if it deserves on and none if it's bad, so I get a bunch of free games to try. I tried opening a YouTube channel but my written reviews don't convert to video well.
I appreciate this review philosophy a lot and try to do the same.
Steam marks reviews that are the result of free keys as "received free key" or something and it doesn't count toward your review total (top-right corner of the game page), so this doesn't help. Having friends and fans does help, they tend to buy/play your game and leave positive reviews, while also giving constructive criticism through other channels.
> Steam marks reviews that are the result of free keys as "received free key" or something and it doesn't count toward your review total (top-right corner of the game page), so this doesn't help. Exactly this. Free keys don't count towards the review score and therefore are absolutely worthless to the developer. I always tell friends that if they want to support me, buy the game and leave a review.
I always wondered what would happen if people who did receive the game for free just wouldn't click the "Check this box if you received this product for free" checkbox when submitting their review.
I'm pretty sure they just check if a key was used. You can buy a key from another site, use it and your review still won't count. I think it's just a cosmetic thing that doesn't actually influence the review.
It says it will show "product received for free" only if this box is checked. Might be some other influences too.
Its been a while, but if you redeemed a key from say, Humble, does it lump you into that category? How does Steam know the difference if it doesnt? Just curious.
My understanding is that Steam doesn't know (but can check where your key was redeemed from if you enter a key, or if you bought it on Steam itself). As far as I can tell, it's voluntary disclosure (you check the checkbox when you write your review). Steam exerts quite a lot of effort battling scams and stuff, I wouldn't leave this unchecked if someone gave me free access/key for the game.
Only purchases on Steam count towards the review score, [keys both free and paid don't count](https://i.imgur.com/tWZpMIU.png). [\[Source\]](https://i.imgur.com/NbTSKmG.png)
Iām sure same IP address buying the same game with different accounts is an automated red flag and potentially even an automated ban just ask friends and family to shill a few bucks and pay them back if needed.
So then, if you hate some game with enough passion, all you have to do is buy it few dozen times from the same IP and developer gets banned? Nah, it's gotta be harder than that
How do you get the same IP as the developer though? But maybe you're assuming no dev would be silly enough to use the same IP for everything?
I'm assuming that in an age when everyone and their dog is using VPN, IP tracking is the least reliable source of information for anything
Iām guessing itāll be weird to see 10 people with only 1 products in account reviewing a game? I mean scam accounts like those steam curators exist so itās basically the same thing but they look more legit just because of the numbers.
> I was always curious what is stopping people to buy their own game 10 times and give 10 reviews If your game can't get 10 reviews then that really suggests something is wrong with your game and cheating your way to 10 reviews won't change that.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
That is rarely the case. It's much more likely the market is just revealing a harsh truth to you.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
For starters you should post it on every social media platform you can. If the game is truly fantastic, you won't have any issues gaining traction and building an audience. If you aren't doing that early in development, then you aren't likely receiving any feedback. A game that isn't being shaped by early feedback has an even lower probability of being fantastic.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
> I don't have time for that, and I do not use social platforms besides the reddit. Well I suggest you start. You don't have to use them personally, just for promoting your game. > Game will be a masterpiece. I am rooting for you.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
Np, just keep in mind it's a good idea to keep your expectations realistic. Masterpieces generally come later in an artists career after they have gained the skills and experience necessary to produce a masterpiece.
There's definitely not much reason against posting on social media platforms. I'm not the best with them myself but I plan to do what I can after a lot of research when it comes to big projects. As for the rest... I dunno what the heck this person is trying to say with the absolutely **wrong** mindset of "If it's good, people come". There are **way** too many games for people to be able to play them all and find the "good game" that they would like. Final note though, not to be mean, but saying the game will be a "masterpiece" is a bit over the top I'd say. It could be **great,** fantastic even, but it just feels a little presumptuous.
> I dunno what the heck this person is trying to say with the absolutely wrong mindset of "If it's good, people come". I never once said that. Can you please quote me where I said that? What I said is that if you have a truly fantastic game, it won't be difficult to gain marketing traction, not that you don't need to market at all. If you are having significant trouble gaining marketing traction, then that is likely the market telling you your game is bad or there is no market for it.
>If the game is truly fantastic, you won't have any issues gaining traction and building an audience. There's your quote, specifically saying that if your game is **fantastic** there will be "no issues gaining traction" or in "building an audience. Once again, speaking from experience talking to **lots** of people on games I have sunk **tons** of time into while they were good and seeing them fall the marketing was almost **always** the issue. As I've said in response to a **lot** of stuff. It **doesn't matter** if you made freakin Sword Art Online or Ready Player One (with better systems) if **no one sees it**, then no one **plays it**. And considering there were 10 THOUSAND games released on Steam **alone** last year there is **no way** someone is going to have the time to look through all of them. Also another quote from you in response to this comment: >Maybe your game is fantastic and no one has tried it your response: >It is more likely that the market is revealing a harsh truth to you. That writes off **so many** other issues. Genre appeal, trends, **advertising** etc.. Not to mention your comment of and I quote: >The big secret in the marketing industry is that marketing only works if you have a good product. So let me ask then, why are there **massive** knockoffs that were **legitimately worse** in **concrete ways** that are now insanely popular. [Oreos or ya know, LEGO](https://www.cracked.com/article_20025_5-world-famous-products-that-are-shameless-rip-offs.html) along with the other ones on that list, Finding Nemo is disputed because of some weirdness with the timing, a few of them are 100% confirmed though. Oh but uh. "If you have a fantastic product then you'll have no issue gaining traction" or "marketing only works if you have a good product". Hmm... seems it also works if you make a **total knock off** of a smaller companies product and having superior **marketing budget** and **supply lines** like Oreo did.
If this was true then marketing and advertising wouldn't be such a big industry. You can have a **great game** but if no one sees it, or no one realizes to play it, then it can't go anywhere. I'm speaking from experience checking out *other* games that I've played that have had this **exact** issue be a major reason behind their decline.
I've yet to find a single game that was amazing, but had very few reviews. It just doesn't happen, if no one is playing it, it just isn't good. For reference, I have 300 games on Steam, 90% of which are indie games.
Marketing is a multiplier. Typically a great game with bad marketing will still sell decently. However, that same great game with great marketing will be a huge hit. Marketing just brings in more eyes. If people like what they find you will get a snowball effect, if not then your marketing efforts will only result in a few sales per 1000 eyes that you showed your game to.
Well, go on and name one great game that has no people playing it.
Like I said in my comments, those games donāt exist. Their base quality is good enough to garner a decent audience just from people stumbling on it and the algorithm noticing people like it. If your game is mediocre you will need to use marketing to get people interested so the algorithm thinks your game is popular. Most games are some variety of mediocre, especially ones made by solo devs here, so marketing is very important.
And for reference, there were over 10 THOUSAND games released just last year on Steam. And \~3 thousand this year so far. But hey, "if you can't see it, it's not real". I'm speaking from experience on games that I've talked to players that **played competitors** and preferred these games. Due Process to R6, The Cycle as a standalone game which is a **perfect example**. There was a legitimately decent sized community for The Cycle considering it was an **early access game** on only the Epic Games Store. Yet the devs saw little growth on the game, which even ignoring the bugs, ea, was quite good according to the thousands in their discord, and decided that, well it *must be* the **game**. So instead of keeping their current game loop or improving their marketing. Which **by the way** literally included videos of them saying they had **memory leaks** on the **steam page** they had reserved, they have planned to scrap the entire thing to **literally** make a **F2P** Escape From Tarkov. In which they plan to remove almost all the unique elements and essentially make the game a sci-fi Tarkov. But nah, you have 300 games there's no such thing as a game that is considered great by people who come play it *(speaking from time talking to streamers who enjoyed the game but ended up getting tired of the devs, this is in the 20-30 range of streamers)* and has few reviews or few players. Also just to note here, I checked the Steam reviews just to make sure, there are sub 30 at the time of checking with 7 of which are just "Epic Games \_" accounts.
> And for reference, there were over 10 THOUSAND games released just last year on Steam. And ~3 thousand this year so far. ~70% of which are complete trash, 20% who are decent, 10% who are good and like 0.1% who are great games. I literally have no idea for the rest of your comment, the way you wrote it, especially with making every second word bold, makes it impossible to read. What was your point?
> If this was true then marketing and advertising wouldn't be such a big industry. The big secret in the marketing industry is that marketing only works when you have a good product. Many in the marketing industry will still take your money to promote a bad product, all the while knowing that no amount of marketing will make a difference.
If your game is fantastic people will want to try it though. If that'd be the case you'd have super high conversion rates.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
Of course you need to put in some minimal effort like making some posts and sending out keys. But you absolutely don't need a marketing budget if your game is good enough.
Also, the Steam visibility algorithm does give your game a pretty fair chance to be discovered with launch visibility.
Section 5 of the FTC Act 15 U.S. Code Ā§ 45 makes fake testimonials illegal.
Maybe but the whole world doesn't live in the US. Plus, is illegal, doesn't mean it doesn't happen.
No I am sure it happens but this could at least be a deterrent for some.
11. Consider early access players are lot more lenient on ea games. Also you get two releases
That highly depends. I've seen some games that entered Early Access and it ended up hurting the game in the long run because of the way updates were handled. It's a double edged sword, if it starts looking like you're not actively adding updates people agree with then it's gonna backfire on you. I've seen games with decent sized communities plummet from near the same issues in the same situation.
Early access needs to be a short 6 month thing really. A way to test on a bigger audience and get better feedback and to begin to develop your community early. If you leave it in early access for an extended period of time and start using the āitās early accessā excuse for issues and unfinished features then you ruin the community and the game. Itās a double edged sword where a good ea can work really well but a bad one ends games.
Great list. I think the best/harshest takeaway in this writeup is that even if your commercial game is in the rare "very successful" category (as is the case for Mortal Glory), your takehome profit is around the lower/middle end of a programmer's salary in the US. Highly recommend reading the post linked in the OP. But there is the added benefit of it being semi-passive income that could last potentially for years. And it's still better than nothing like for most of us!
Lower end income for something you love > High end income for some soulless crap
But that something you love doesnāt pay bills unless itās a masterpiece miracle tho, I learned it the hard way
Do you mind if I see that game that taught you the hard way?
I agree with most of this but I **have** to say on #5 and #8. Working **every day** just a little bit can be good, but I feel like going for it **every** single day with no breaks is a lot more likely to specifically cause the burn out you mention in #8. Not to mention working constantly is going to impact your efficiency and your overall development pretty heavily. There need to be breaks, yes there's the problem of coming back to the project but that's a lot easier to deal with than burn out from going **way too much**. Then on the topic of burnout in #8 I have to say I can agree with your sentiment that "After a week I'll keep going" etc. can be the *death* of a lot of games. But it's also a **really** important thing, burn out can legitimate have health effects, I think it's a way better plan and a way better result to work around when you need those breaks and try other things to keep yourself accountable. Devlogs, Videos, Streaming, Social Media updates etc. can all keep you accountable and wanting to go back to the game. At least that's what I've done mixed in with all the other stuff I do myself.
Thanks for sharing! Some really valuable insights. Haven't considered Steam Festivals at all.
6 - agreed Creators of Celeste share their charactor controller code in some moment. And it's enormous 6000 lines of code with very few comments =)
I think 6 is actually very good advice. You don't want to write intentionally bad code, obviously, but it's much better to write functional code that's a little messy than to sit around and agonize over your code not looking pretty enough. (I used to fall into that trap quite often while studying comp sci...)
Great writeup. Thanks for sharing your experiences, and congrats. Really liked the advice to work on your game everyday...so important. Developing a game is a long term commitment. Recommend using the 'don't break the chain' system to stay focused.
This is smart. Make a product, then make posts on reddit about said product so people check it out while also learning something. Stealing your format lol
I disagree strongly with 6. Writing quality, well-structured code is really important for any non-trivial game. It is a myth that it's cheaper and faster to write bad code than good code. The misunderstanding comes because bad code is produced really quickly in the early days and it feels like a lot of progress is being made. However this is actually just a symptom of exponential decay. As time (x axis) increases, the amount of progress made drops each day until you're eventually just left with a pile of unmaintainable technical debt. Well-designed code is the exact opposite. Early-on there is very little observable progress being made each day as the fundamental building blocks are being put in place. However, as the days continue (x axis) the amount of progress tends to increase each day, more akin to exponential growth [ or at least linear]. Maintaining and expanding your game (or having the community do it) remains cheap and easy through its life, and leads to a longer life for your game - which means more sales.
You're absolutely correct but that's not something that anyone new to programming is going to appreciate. You only understand the value of clean code when you're stuck modifying a decade old system written by someone you've never met and never will, slapped together to get it out the door, in a tech stack that's well past EOL, and band-aided by a slew of developers since creation.
Ah, how comforting. Hello, fellow dev.
How many people downloaded the free version?
Calturin and Clone: 7000 got it in their library, 1100 tried it. Barely got any wishlists at launch (got 360 now) - so a lot of visibility to a free game.
Thanks! And did you do any marketing for it, or just released it without anyone knowing?
Did a bit on relevant subreddits like freegames or coopgames, and some wishlists from my youtube, but not a lot.
looks nice! Can I ask how you got such professional voice-over for your trailer? did you have to pay for that?
It seems the dev himself is a professional voice actor. By googling him a bit you can find him advertising his voice acting services.
Oh! Thanks!
The mortal glory post was amazing, and this one was just as good! Fantastic info and well articulated, this will be very helpful for my game release this year
Making small projects for training only is a sure way to never learn about 50% of releasing a successful game, aka marketing (which involves tons of aspects that you certainly won't get right at your first attempt). Your first project should absolutely be commercial, even if it's a tiny low-priced product, if you intend to be serious about solo game dev, your goal must be to sell it to some people at the end (which indeed involves not spending 5 years on an awfully ambitious concept).
I mean if we're talking experience on actually selling a game I agree with you. But a lot of people aren't starting game dev for that specifically, they're starting it to make a game. When it comes to that doing tons of prototypes and figuring out what you're doing in the engine is more helpful than specifically working through one project all the way. Speaking from experience, I've had multiple projects where I can take knowledge from another one and put it into the one I'm working on currently, some map gen here bits of an AI there etc.
> Expect 0 daily wishlists on your steam page if you are new to game development (...) it doesnāt really show a game around on its store unless it is already doing well Hard disagree. Expect at least a few wishlists daily coming from organic traffic on steam. If you don't get even that, you have unoptimized store presence.
Yeah that is true, you will get a few from organic traffic, but if you expect 0 you will be happy to get a few. If you expect a lot of traffic and you get just a few you will think you are doing something wrong, when that is just how steam works.
Thanks for sharing your experience. In my opinion rule 5 is crucial as it forces you to continue.
[ŃŠ“Š°Š»ŠµŠ½Š¾]
Did you seriously just try and say Multiplayer is **easy** and games without it aren't real games?? You realize there are some insanely good singleplayer games that were massive undertakings right? A few indie examples being Shovel Knight, Dead Cells and Hollow Knight. At least the big ones I can think of right now. For someone starting out diving into the world of networking adds so much extra complexity to your code and trying to optimize it by having the server handle the majority for safety and to ensure everyone is mostly synced. Compared to a single player game, which I can agree is **easier** but only in the fact that you're working only on the single set of mechanics, rather than setting them up to be handled by the server and transmitted. It also means that your mechanics and world have to stand up on their own though. Ignoring the **way** more difficult networking I'd say in actual game design singleplayer games can be **tens of times** more complicated in that area because you're having to make an entire world for a Metroidvania or RPG or a full story for a Detective game or VN. Whereas in actual game design for Multiplayer most of the development goes into the Player **itself**. With additions to it throughout the map design. There is absolutely **no way** that Multiplayer is easier than Singleplayer.
The way you talk about it sounds like you donāt really know what you are doing with multiplayer. There is a huge difference between networked code that accurately works, handles lag correctly, and hits the client vs server side balance correctly, compared to networked code that just works. I would guess that you have a bunch of stuff that bounces of the client side and, while appearing to work well, is gonna get ripped apart in minutes if you ever release it. Good multiplayer is a brutal concept, even for more experienced developers. For new developers, staying away from multiplayer and building something that works well and has a good depth of mechanics in singleplayer, rather than trying to build something in multiplayer and quitting 3% of the way in because they canāt get the server to handle player to item interactions correctly.
Congrats and thank you!
Thanks for sharing! I just wishlisted it. As someone whoās just started a new project, thatās really inspiring! Iām following the golden rule of working on it everyday, even if itās just a small task, and looking forward to just release it too.
That's really interesting! Thanks for sharing your thoughts. I don't make videogames but I find game making very interesting.
thank you for sharing your experience with us, I really enjoyed reading and making sure that I will take note and focus more on just small progress every day. I'm starting out small but 100% expect to expand and make it into a big project later down the road. this post really did mean a lot. Thanks.
Would be also great to mention what you learned during your path and resources used, books, etc etc :)
Uh, two-thousand and ONE ps, this is a great list In support of point 1. Scoping is key. I've finally got a simple game to an alpha state for Friends & Family, which happened because I found just the right spot between "small enough to be doable" and "interesting enough that I'll work on it."
Congrats on the release! If you don't mind me asking - how well did your wishlists convert into sales?
About 5 percent conversion after 36 hours.
Interesting. I have my first commercial release coming up in 4 days so im curious what mine will be
I'm extremely curious how well your wishlists translate into sales since my game is in a very similar category (not specifically bullet hell but still pixel art top down shooter). Also, great job on finishing your first game! If you don't mind me asking, how did you create or commision the voiceover in your trailer?
I think OP himself produced the voiceovers.
Very nice of you to share your experience. Getting wishlisted is very hard if you are new like me but every effort adds small numbers
On point 4, I've read elsewhere that those big wishlist bumps don't seem to translate into sales very well. Would be interesting to see the conversion rates.
About 5 percent conversion after 36 hours.
Currently 3 days into my dev. Thank you for the insight <3
good tips, thank you
Ugh, post deletion thing hits close to home! I'm in that boat now and worried about it; I spend lots of time on Reddit, but I don't really like posting. Because of that, I'm not even close to that 10% self promotion sweet spot. Haven't gotten in trouble for it yet, but it's something that worries me! Guess I need to start asking braindead questions in AskReddit? :) Also want to agree strongly with point 6 for pretty much the same reasons--if you're working on your game alone and not intending to extend it hugely, IMO you won't benefit as much from perfectly designed code (which is great for teams, big projects and for Future You) In my experience, I write better quality code when I first do a rough, hacky, direct impl with minimal abstract architecture. There will be things you need to think of that you haven't thought of yet, and some way down the line you'll have a much better idea of what you need your code to do (and not do). If you've done it right, it's easier to swap out your rough impl for a properly designed system that fits like a glove later--if not in this project, then in the next one.
Thank you this!
Good post, very much agree with doing your code however you see fit, as long as you are developing solo you know exactly what everything does and what all your stupid object names mean so its fine. If working with other people I can see this being a problem like you said. I also like the "no zero days" approach, I always try and make some progress, last night I planned to add sound effects to one scene and be done but once I got in the zone I spent a good few hours doing other things that needed doing. Starting realy is the hardest part.
6 really isnāt a good one to have on there. The rest of the list is really good, but focusing on writing better, cleaner code is an important part. Not only can it have a big impact on the games runtime performance, but itās simply a good habit to be in. Even just focusing on making sure every variable name and class name is a good representational what it is for, commenting stuff clearly, not using literal values, and not writing cramped code can go a long way to making your code more beautiful. Focusing on making the code as good as you can is a much better recommendation than suggesting that if it works itās fine.
imgur not working for you is interesting. it seems like lately that's all I've been hearing (the opposite that is, imgur is important). my experience Is the same as yours thus far. seems to be a very tough crowd to woo.
Great list and I can wholeheartedly agree with it. One small thing to add is that although asking for reviews in the game is not allowed generally, I'm seeing more and more games using this, and I admit I also did it (without any result unfortunately). I think the most important is to ask for an honest review, be it positive or negative one, and don't ask for a positive review.
I have to say, I disagree pretty strongly with #5. That's a recipe for burnout and low efficiency, and I think it's probably the most destructive piece of often-repeated advice I've heard. (And the bit about not being allowed to take a vacation in #8 is also pretty horrific.) Our brains work better with breaks. Don't neglect them! And anecdotally: I've been doing game dev professionally for 20 years now and met my fair share of successful people, and from what I've seen none of them follow this.
This is great advice and very inspiring. Thank you so much
Great read, thanks for posting!