I am seeking advice regarding my current project, a multiplayer 2D MMORPG game. While I possess intermediate programming skills, I often feel overwhelmed and lost as I progress. The code seems inadequate, and I fear failing to complete the project. I frequently halt my progress after completing a portion of the game.
I attempt to plan, but my haphazard approach often leads to distractions. I might start with the login system, then shift to movement mechanics, followed by the attack system, only to end up with none of them completed. My thoughts are scattered, and I struggle to articulate my concerns effectively. I hope you can understand my dilemma and offer guidance on overcoming these challenges to successfully finish my game.
Use a kanban board. Sort what you need based on priority there and focus on those things specifically. Additionally, if you need something to help with focus, write a design doc. Many people think that they’re not necessary for solo projects, but they can help lay down the scope and requirements for a project.
If you are just starting out, try building a few really small games before trying to build a MMORPG game. Then build a slight larger game. That is the best way to practice, and get more prepared for larger projects.
code base for user information is top priority, log-in to capture storage, also network stability
graphical user interface is extremely important, with readily available menus for transitioning from settings to other settings, study games
Character creation needs to be treated EXTEMELY serious, as MMO players mindset is a kin to a fashion director, people/players/your customers are telling themselves a story, so adding costumes is key, its even more important than you realize, than the way Im saying it
Sounds / Music / Memorable , players in MMO take away settings in-game from audio, for long periods of time, I, as a player memorize unique experiences in visual and sound design more than gameplay most of the time
map design, try to make scene scapes which graphically capture the audience/players attention, this may be a center piece or a statue or something placed oddly or on a horizon overlooking some body of water next to a chasm, whatever, study MMO games, you see a pattern, even in 2D of “recognizable regions”, basically, do not procedurally generate things without having landmarks
so to recap,
player security (info/network/network speed)
gui
character design
sound
map
gameplay/other
dlc
idk feel free to disagree, i think this is about what most games do
Player security is not priority one in development, player security is priority one in service. Priority one will be a mix of server communication and the gameplay systems that will be interacting with the server. You can hammer out the world’s most simple user authentication system in development because before anything else, you need to actually be able to test and prototype the game itself
GUI is also incredibly low priority. This is a completely bass-ackwards approach to things. Starting out, GUI should have a focus on being functional and nothing more. Anything else is going to be wasting development time and resources that, again, need to be put into getting the game into being at a baseline playable state
Character design. No. Early on, you should have this functionality be barebones as it can be. Things like changing the colour of individual character elements. This is so you have the basis to expand upon later in development when you aren’t dealing with the core gameplay
Sound. This is so low priority that it should be almost last on the list. This is something that happens in the polish stage. All you should have are the most basic emitters sounding out and a collection of sounds you grabbed from either freesound or some royalty free collection. Melee attacks? All the same sound. Ranged attacks? All the same sound. Magic attacks? All the same sound. Getting the picture? At most, make it so that enemies have a different variant of these sounds for testing purpose
Map should be much higher priority. As in right after gameplay. Once the core gameplay is there is when you start crafting the situations in which that gameplay will be used. This means coming up with the environments in their most primitive forms and populating them with encounters
Absolutely wild that you put the core part of a videogame this far down the list. Really making me wonder how many games you’ve ever actually worked on
This is so low priority it feels like you just wanted a seventh thing on the list
The actual priority should be more like this for development:
Fundamental server communication. I’m talking plaintext login stuff and a server that is extremely trusting. Nobody is going to be logging in to start but you and your testers anyway
Gameplay. This is the most important part of the game
General mapping. This is basically an aspect of gameplay. If you’re making a game, you need a place to play beyond TESTMAP_01 and TESTMAP_02
GUI. Again, we’re talking barebones here. The most basic implementation of the UI and the framework that underpins it. Before you reach this state you’ll be fine just using UGUI’s ugly-ass default buttons, sliders, and text fields
Sound. Already covered this, but just basic sounds that allow you to differentiate things in testing while also giving you the base code to expand on later
Player security. This honestly shouldn’t even really be here and instead should be more a part of a separate list of “live service concerns” or something. In the process of starting to make the game, this is not something you should consider putting time into because you’ll be replacing a lot of code over development anyway
I think prioritizing your work, like others is mentioned, is extremely important. Another thing that will help is chunking-up your work in to small bites.
If you’re just writing down a list of features that your game has and those are your development goals, it can seem overwhelming, especially if you don’t know what you’re doing or where to begin on a particular feature. You can just write “create a login feature” or whatever, but how? “I need a UI? Database? I just stare at the screen. Maybe I’ll come back to it later.”
Instead, try to break-down each feature in to very small steps. Steps that can be finished in a single day or half a day. That way you’ll always know what you can do to advance your game.
I agree with this assessment with one exception: sound. And this is an exception-exception in a sense if the subject is a low-light game (dark fantasy/sci-fi, horror elements, stealth game, etc) the importance of the sound design and execution must be higher priority than normal. Humans in low light environment tend to listen to sounds on an elevated level.
But even with a non-dark game theme, the sound design can make or break your game feel. So always decide consciously how important the sound design, the music and voices in general are.
i like menu and character customization
gameplay is always stale click and auto attack, hit button, capsule collider movement, level up.
UI is king, music and sound is king, personalization is king. security important.
So basically you completely ignored the actual process for making games because of the oversimplified view you have of games and used that as a jumping off point to offer terrible advice? Cool, got it.
The order you experience them as a player and the importance you place on them has absolutely nothing to do with the creation process, and I say that as someone whose game making process has the graphics and audio much higher up than what is said in this thread, but that’s because I’m trying to do something weird with my game, and even then I’m not sure it was the right way to go (nor would I suggest anyone else do that).
There are exceptions. Bethesda comes to mind as they’ve stated that they start with the music as a way to inspire the rest of the development process.
A well designed UI is important to the final product, but you don’t need a well designed UI to make the game. You can lay everything out in a very basic manner and come back later once the game itself is finished and complete the UI. You can see this in a lot of early access games where they literally just dropped them in without styling.
You know what? I’m going to reply to this again because you really don’t seem to know what you’re talking about even on the level you’re describing here. Let’s talk about “click and auto attack, hit button, capsule collider movement, level up” because this is worst kind of oversimplification.
Click and autoattack
Okay. What governs autoattack speed? How about power? Is it a straight strength conversion? Are there bonuses for attack positioning? Do attacks have a chance to daze a moving target? Is there a chance for front-facing attacks to be blocked, dodged, or parried? Because I can tell you right now that most MMOs have a different set of answers for all these questions. It also ignores things like how a lot of action MMOs like you’ll see coming out of East Asia work.
Hit button
Okay. Does the skill have a cooldown? How long is that cooldown? Do other skills affect the cooldown length/reset the skill? Does the skill have a charge counter that increases? What resource does the skill use, if any? Is there a global cooldown? Is the skill affected by that? Can the skill reset the global cooldown? What are the conditions that have to be met for the skill to be effective? Is it an offensive or defensive skill? Maybe it’s a crowd control skill, how does that work? Is it a stun? Does it apply a damage over time effect? How is the DOT calculated?
Capsule collider movement
Okay. Is there fall damage? Can the player jump? Are there skills that can affect player movement speed? Are there mounts? How do mounts work? Can mounts fly? How does flight work? Are there conditions that will dismount a player? Are there zone-wide effects that may limit player movement? Where can mounts be used? Do players have a set speed or is there a stat that governs it? Can players get a permanent speed increase? How do you plan on ensuring players don’t go out of bounds? What happens when a player goes out of bounds? Do you just teleport them back? Do you kill them? Is there a fatigue system?
Level up
Okay. How is experience granted? Is it through quests? Killing mobs? Harvesting resources? Working a profession? Is there a different levelling system for professions or does it count to overall progression? Do players have a fixed class or can they multiclass? How is that handled? Do players gain skill points they can distribute? How often do they get them? Do they get to apply those skill points to a single specification or can they put them into multiple different trees at the same time? Are there even skill trees at all?
UI is just a presentation layer. It can be (or should be able to, ideally) updated at any time, namely later in the process when the more important things have been nutted out.
This is of course straying off topic from OP’s plight as well.