1 free read left. Create a free account for unlimited reading + AI research.
Create free accountokay so the general feeling of making almost forgave is if you ever have you ever felt like beating yourself on your desk like just like slamming your face onto your desk what does it like to make an online multiplayer game should you make one what should you expect going into it and how can you grow a community even as a small developer I'd say we ask somebody who's qualified to talk about this because I'm clearly not I do like water in summer you drink a lot of water yeah now ever since that ever since that's a huge meme in my discord is me possible my name is Walton King I am a 20 year old game developer I have published three games on Steam I've published battle shapes which is a top-down retro arcade shooter I have published one synth which is a text-based game editor
and then the one I'm working on currently right now is under pressure which is a 4v4 capture-the-flag East war oh and I'm a youtuber that's it oh yeah you have you have a tutorial series on how to make an online shooters that correct I do so that people can pretty much steal my still under pressure and make it better than me exactly that sort of stuff so if you're interested in making an online shooter think wellton has like a twenty part tutorial series on that already if you want to skip forward to a specific topic check out the timestamps in the description the first question is how the hell do you even make an online multiplayer game the plug-in I use is photon I use unity networking always thought photon and unity networking are two different things they are photon unity networking is one word though and so it goes by the acronym pun there's also you net which is unity networking okay so if you want
to make a multiplayer game with unity there are basically those two options right photon and then the unity option that is called unit or something like that proof there yes but a unit is being deprecated think it might already been deprecated but if not it's being deprecated in the next six months so if you have already started using it that's fine but if you are planning on making one do not use you net okay and there are other avenues I just chose Photon but still working on a networking solution right there they have something in the mail correct they have something that I'm making yet it's not out okay so far um good choice for now yes I believe so how does that work making multiplayer game with unity you host the game on a server like all of the machines communicating with the server or where the match is hosted for example okay so I use a pun photon unit networking inin pun its clients a client so it's you have to come up with your
own anti acts and obviously developing your own anti hacks without an authoritative system it's always going to be hackable so you just have to be if someone tries hard enough they can act however I hear photon has an authoritative version just called photon authoritative I guess which is where you can actually rent servers directly so that there is no client to client okay and if the game gets big enough now def I'm definitely going to move to an authoritative okay is it can you just move to an authoritative I don't think I'm across that bridge when I get there so the general feeling of making a multiplayer game is if you ever have you ever felt like beating yourself on your desk like just like slamming your face onto your desk that it feels like that pretty much the entire time you're working one of the biggest challenges working on a multiplayer game that's a I
think this is a really good question I actually been talking to a lot of people about making multiplayer games and like giving them advice and one of the hardest things as I get a lot of people who haven't made games before word and aren't and I new to programming coming and asking me for help and it's just really complicated like that I really the biggest thing is it's just a really complicated understand okay understand it because you also not only do you have to make it I give the program it and it's hard to wrap your head around just how it works you also have to make it efficient so like if you're not if you don't really understand the different data structures and how much space they occupy and you don't understand how to break up data into how to make like like for example like you can't send a vector3 over a network so or like and you don't want to send floats over a network either so what you'll what I do is I round the side multiply a float by a hundred or a
thousand depending on how precise I wanted to be then I round it to an integer or short and I send that value over and then I get it and I divide it by 100 or a thousand it's like you need to come up with like solutions why do you not want to send a float via they're just they're just bigger so like for example I have there's their packages that I send that a that have like all of the players information you know okay it's like it's just like you just want it to be as quick you want these messages to get over as big as bubble you definitely could send floats you could send vector okay but when you're sending so many it's at that point there you're like oh yeah you got it I think it's gonna be smart about it okay you're trying to give the keeps the data you're sending back and forth small so that's one challenge for having all of that data and like is sending exact are back and forth is that general process is that difficult as well or you know photon makes that easy sending the
process of sending data back and forth is easy you you'd mentioned formatting formatting data a big big thing the next one is your understanding of how how often to send messages and how to send the least amount of messages as possible because you don't wanna I I've met people who are sending messages every frame and that's like absolute no like you don't want to do that and I don't say that you know I just tell them ik in the future consider getting rid of that and the reason why is because that creates bottleneck over the network in your game lags but if you're sending something like player position something that you want to send every frame yes we don't want to send it through a procedural call you want to send it you want to serialize it and stream it through so photon has like a serialization stream that they do automatically so that it it'll detect changes and it'll send the changes in the data over for you so it tries to
efficiently minimize things in the stream so you have to know what you want to add to the stream a lot of people will proceed rly call every frame it's hard to get that's not wrong so basically there are different ways to send data and you need to figure out what's the best way to send send the data you want to send that's the best way that is there's three ways to send and receive data and I use all three of them and you have to know how to use them and when they use them okay so they all have different advantages and disadvantages yes what are those three ways of sending data one one is that serialization stream bingo yeah there's the RPC or the remote procedural call and then the last one is through event if and phrasing kind of sounds like you're calling an event on a different machine yeah explain yes please elaborate what are those my yes okay so the is what we were just talking about
it basically anything that you're having coordinated over network it has a stream you add data to that package or and then it automatically will officially make it efficient and try to minimize it and send it over and then the stream will then get to a machine and then you have to just read the variable the values through so you can send multiple values through I mean you can deal with all of them okay the RPC is like calling a function when you instantiate an object over the network it then it creates that same object on every machine right and that object gets an ID it doesn't mention cardio nutrients it does automatically when you when you initiate it over the network so photon has like you know game object instantiate mmm there's also photon network dot instantiate okay cool which does the same thing but instead of just but it doesn't anything it just creates it with a photo with a view with an ID for you and it writes it on all machine on this right now the RPC what
it'll do is it is it's a function attached to an ID so like if you have an RPC if you have an object that's been created over the network and you call an RPC on it it calls that function on every single object okay nice now event raising is different what you do is you basically just send the package that has a code in it and then you if you're if you have any scripts that listen for those events then they can they can see that a package was sent and then they can see what code it was and then you use that code to send the data to something so like it's not a CH to an ID anything reader on it okay yeah I can see that's sorry that took so long no problem with probably sometimes gets data gets lost when sending it over the network right how do you handle that or does photon take care of that as well so you you'll tag a package is unreliable or reliable I figured I believe they have actual acronyms that
you tag them as and if you tag it is unreliable then that means that it isn't that high of a priority and that essa' that it can be lost does like your stream is automatically unreliable because it's always being sent and so in order to make it as efficient as possible they try to make it like it's okay for it to be missed okay but then there are things that are reliable so like our pcs reliable and that way when they're when they're cents they're pretty much they should be guaranteed to be called I've never had a problem with an RPC not being called in the way that this is like that's another like thing is like when we're talking about formatting data when you're putting things in the stream it's typically things that like if a package is missed like position right if a package is missed this okay because you're able to guess an estimate where the player is already yeah so that's that's how it's not that big of a deal but if you for example miss an object being deleted or something like that that that could be annoying yeah exactly yeah okay so you can tell photon this data is important
this needs to arrive or this is not as important it's okay to miss that and that probably has an effect on performance and how quickly things are sent so Cummings a Glee with upsides and downsides and you just have to pick the correct correct method to send stuff the next thing I wanted to talk about is a little bit of how you handle the community management because I think that's really cool the water board one of the biggest issues when working on an online game is of course if your community is not big enough it's very hard to find matches so that's why I personally would always shy away from making competitive online multiplayer games so typically here's the narrative that I am facing is that I'm getting new players who are buying the game coming into the game going straight to casual trying to find a match not finding a match quitting the game and refunding the game it's very hard to grow communities so I've been kind of impressed by by the way you go about it you definitely manage to get some consistent matches up and running in
your community so perhaps you could explain your approach on that a little bit yeah so that approach is a complete shot in the dark and I'm glad it ended up working out very well but and you noticed it while we were playing is that I have a direct link to the discord so I run a discord which is a you know chat app application a DM application and I have a direct link to my games server in the main menu and I have messages in the game that tell people to check out the discord if they are having trouble finding matches and then we're gonna run it and now what we're checking to see is if we go multiplayer casual and we open up a new lobby and we're waiting for people to join if we're in that Lobby for over 20 seconds we want that discord pop-up to show up so let's clarify that it does we went multiplayer we went casual we're in a lobby we're currently searching for other players to get into the lobby with us but of course the game has very little traffic and there it is the new
pop-up not finding a match well welcome to discord it's that way people get funneled into the discord automatically through the game and because the game is so small I run that's where I like will schedule matches and I have ways for people to turn on pings for competitive matches and that's how I can actually get in touch with people directly if they really want to find matches to play frequently you seem to have a very active community on the discord as well like people who really enjoy playing the game and play it a lot and play it a lot better than you yeah thankfully I do you an exact I think that's exactly right on that is that the day I've had many people come into the server been like I got the game like couple minutes ago and I've been looking for a match but I couldn't find one and like people literally jump instantly and say join join the competitive role we play matches every weekend and then they stay you know which now happens with everyone who buys the game opens it but
it's definitely retained a lot of there are a lot of people in there now who I remember being coming in and like thinking no one played and that it was dead which yeah there aren't that many people playing it that's for sure but I think cuz the way that I have it designed it can grow maybe I should give this a little bit of context what makes under-pressure special is that it's a capture the flag game where everybody has just a gun and a sniper rifle definitely feel like there were some pretty clever design decisions made in this game for example your respawn time increases every time you die the game has an awesome movement system that allows you to fly upwards to all kinds of crazy places you can place teleporters and every now and then pretty powerful power-ups spawn in the center of the map and all of that combined just makes for a pretty interesting game system that offers a lot of depth it's a very tactical and a very sniper heavy game so if your internet definitely make sure to check out under pressure what are your plans for for growing that community for maintaining that so the way I plan on
growing it is I'm in the process of making a new trailer and then what I'm going to be doing is I'm going to be doing a steam visibility round on the game this coming up this weekend and once I hit this new kind of wave to market that where steam will market for me again I also am going to be tackling twitch and reddit to give out a ton of free keys to just bring CS I'm targeting Cisco players are six players and I'm gonna probably look into like getting black ops 4 pretty much called duty players as well but pretty much right now my biggest the people living in the most for csgo players so I plan on going on a twitch and read it specifically targeting the csgo audience mainly and dropping tons of keys for streamers and people who just enjoy csgo in that community and see if I can get it psych siphon a couple of them over to join them play because they have the skills already needed to have fun yeah that sounds like
a decent strategy I think that makes a lot of sense and then in terms of managing I plan I want to like have people who have been in the community since like really early on I'm gonna probably reach out to them and see if they'll be interested in like trying to mod for me and stuff yeah because right now they pretty much already do that for me which is I love them for that you know and I it's awesome and I really need to like give them more recognition for how much they've helped you know I think having that if the game really does grow and become something you know and I and I have a big I owe them a lot for that I would love to have them be like part of like a moderator team person yeah yeah that makes sense a big part of the community as well as that they're very closely involved in the development right they're constantly giving you feedback and seeing their ideas implemented in the game I feel like that has a very big impact as well
yes for sure but and I also so like this is I'm gonna give tips for people who want to be a part of the community and people who are making and we want to make their own game like this and maybe consider doing a route like this yeah yes I think it's very important because one I get lots of great ideas like playing with you today got great ideas playing with the people I've been playing with since the game has come out I get so many ideas that like the marker having the markers that like put like the show protect and defend that actually came from ideas I got from people the raycasting all like some of the game really does get improved but but what I like to also say for people who are considering making a game and taking this route is you don't take every idea like I'm not afraid to tell someone like I'm doing that like so many and sometimes like it'll I'll get it so many times I'll say I'm not doing that I'm not doing that and then like two weeks later I'll be like I'm doing that that's actually good idea well yeah okay yeah
oh early on because like yeah you made any idea in there exactly a good approach for going about is probably just and putting stuff in there when you hear it a lot for example in Islanders the sandbox mode at the beginning was something or reset mat no we don't really want to do that button right we've heard that much that okay we'll do a sandbox mode fine that's while yeah it's well because like you know you have a vision for your game right and then if you get that you get an idea like that and you don't see it but then like you get so much in like and then you do it and you're like you know what that was I feel that completely is this the first time you'll try yourself at some serious more serious marketing attempts or yes I've actually never ever ever done
anything the only marketing I've ever done is seems basic like it's not even real marketing it's just filling out steam out page isn't that trailer yeah so like this will be my first like real attempt that like actually I'm gonna read I like to read a lot of articles so like I'm gonna start reading articles specifically on marketing and target audience in how to bring people in and retain them I am going to start tackling like I was telling you twitch in reddit and it's actually my first like actual like plan and strategy so I'm hoping it works slightly you're so studying at the same time right so how do you how do you do your time management you've told me Aria that you're starting to burn out on the project a bit yes like how do you handle the time management and the development time on this project so far yeah I'm gonna tell you something very ironic right this is I find this really weird but it's interesting so I've been working on this probably 50
plus hours on average since since it came out at the beginning of this summer right 50 hours a week yes fully hours a week on average yes and then just just last week I really slowed down because I was starting I'm getting into a funk lately and on top of that it's starting to represent more of the time I spent when I am in school it's like when I'm in school I'm doing on average maybe about 16 to 20 hours a week right yeah but this is what this is intra this is telling towards networking and how online stuff works and how difficult it is so pretty much since the game came out in summer up until last week I'd been working on solely networking problems right and my big probably like a big complaint in my community was that it doesn't look like I'm getting a lot of things done right and I'm a I don't want to boast but I consider myself a pretty good game developer and programmer right but networking is a very hard beast to tackle especially alone and so this
whole time I've been doing 50 plus hours not really seeing any changes even though there are change okay so you made a lot of under-the-hood changes to how the net thing works okay exactly and then last week I added a new map and then nicely I said you know what I did a poll and I said do you guys want me to keep working on networking stuff do you guys want me to work on more cosmetic stuff right cosmetic stuff one barely right so then last week I add in a new map I add in gadget raycast I started taking on the list that I that I have of people like people's ideas that are more cosmetic and I and in that week I spent maybe 16 hours in the game total and they've liked my community believes it is my biggest and the most I've ever done it's the least I've done yeah I've like at the same time kind of sucks cuz it's like I you know yeah networking is hard I don't I don't think yeah hard it
is to answer your actual question was how do I'm how am I gonna manage it when I'm back in school and when classes so I typically be doing about 16 to 20 hours a week when school's going at my worst I'm probably doing about 8 hours but is how if I'm doing pretty much as long as I'm doing cosmetic stuff like adding new costumes adding in new maps fixing bugs I'll be completely fun it's as long as I'm maintaining and slightly improving and like what you see but like and I'll probably save like networking stuff and like the bigger issues for the weekend and I'll you know I'll take on like eight hours at a time stuff like that but pretty much I'm fine I can do a lot in a short amount of time as long as it's not networking but you all have a YouTube channel at the same time so do you have to fit that into your schedule as well right that sounds like a lot man do you have any spare time or is working on the game your spare time working on the game is my
spare time I other than that I'll hang out with friends but really I don't I don't really do anything else you know I don't like my main hobby is working on the game I write poetry every now and then but that's pretty much it when I'm older I'll have more spare time not what I'm too old that's also a question of how you how you define spare time I guess Oh time that I can just sit and watch anime candy yeah not care about anything I mean in theory you could you could just do that right so you're justified or not - right exactly - so you're you're motivated to keep working on the game basically yeah yeah I'm all right now I'm in a very rough spot but I think I'm gonna get out of it yeah you always have your your ups and downs in game development that's that's all always is Sara amen welcome is sitting as 960 subscribers at
the moment so what I want you to do is head over to his channel and freakin break the subscribe button you can check out the other video I made with him while you're there that was awesome yeah that was awesome thank you very much thank you [Music] that's called play the game baby that's hopefully the game
Developing competitive online multiplayer games presents significant technical and community-building challenges for independent developers. The primary technical hurdle involves implementing robust networking solutions, such as Photon Unity Networking (PUN), to manage data synchronization between clients. Because networking is inherently complex, developers must prioritize efficiency by minimizing data packet sizes—often by converting floats to integers or using serialization streams—and carefully selecting between unreliable streams for position data, remote procedural calls (RPCs) for specific actions, and event raising for general communication. While client-side networking is common for small teams, transitioning to authoritative server models is recommended as a project scales to mitigate cheating and ensure stability.
Community management is equally critical, particularly for smaller titles where low player counts can lead to matchmaking difficulties and subsequent refund requests. A successful strategy involves integrating direct communication tools, such as Discord, into the game’s user interface. By providing automated prompts that encourage players to join a community server when matchmaking times exceed a specific threshold, developers can facilitate organized play sessions and foster a dedicated player base. This approach also creates a feedback loop where the community contributes to design decisions, helping developers refine gameplay mechanics and prioritize content updates that resonate with the audience.
Time management remains a persistent challenge, especially for solo developers balancing development with academic or personal commitments. Networking tasks are notoriously time-intensive and often invisible to the player base, which can lead to developer burnout. To maintain momentum, it is effective to alternate between deep technical work and visible, cosmetic updates—such as new maps or features—which are more easily recognized by the community. Ultimately, successful independent development in this space requires a disciplined approach to balancing long-term technical infrastructure with consistent, player-facing improvements to ensure both game stability and community retention.
The games and companies this document names on the inner ring, other documents about them on the outer one. Select a cover to see it up close and open it in a new tab; drag to move, pinch or Ctrl + scroll to zoom.
Thomas Brush · 2026
Comments