Need help with making a system feel polished, professional, and structured

hey, so i’ve had trouble with this for a while now and i guess it’s just time to ask other people.

i’m sort of a solo developer however i get help with things here and there, and sometimes when i’m programming a specific system i feel like it’s too janky, or what im doing is a brute force method, that isn’t professional, it’s unorganized, or i’m doing some crude method of a system that isn’t getting its full deserved work.

another thing is i feel like im too self conscious of my programming and what i create. i’ll make something and other people will say it’s good but in my mind it looks horrible. and later i come back to the project and see “why did i give up on this? it looks so cool!”

i play games like guts and black powder, and in those games it just feels so polished, well thought out, and organized. but when i make fleshed out systems, it feels unorganized and really a crude and inefficient way to do something even if it isn’t.

my systems can be janky at times compared to others. for example i had made a down/unconscious system, and for that i decided to put a server script inside of starter character and that in itself felt like a crude method of doing things, and then i made it play a transition animation, and then an idle version of the down animation, it felt extremely janky in the programming even if it might’ve worked fine, and it felt like a system i would just scrap in the future. the code also would clone sounds from the script and put and play it inside of the player’s humanoid root part however that also felt janky, because they all used the same name for the variable, and it was hard to manage. its situations like these where my code and its performance feels rushed but it really isn’t, maybe it is in some cases, but im a really decent programmer and i know a lot, however it just feels like im either doing something wrong or i just suck. but i know everything, how things work, and how to do pretty much everything as well? so what do i do?

i’m sort of just guessing what is wrong here and that’s why i’m asking for help, from developers who are professional, unlike me, on what i can do to make my systems more polished, organized, usable, and less janky.

i’ve thought so far maybe using a framework could help and always organizing variables where i can.

overall i just need help feeling less self conscious about my work and tactics and strategies to make my work feel more polished and flushed out, and this doesn’t include testing because i do those a lot already.

any help is appreciated. this isn’t really specifically a scripting problem more of it is an issue i have with myself that is about scripting, but i hope you all understand.

thanks for reading, and i appreciate everything

  1. #development-discussion

  2. At the end of the day, the biggest thing you can do to improve is to keep coding. Reading documentation, forums, collaborating with others; this will all help you to hone what you do. You’ll find small but neat tricks and techniques that you would’ve never known about had you just kept in your own bubble, and other times you’ll help someone else out who’s earlier in their journey than you are. It all helps. The most solid yet concise piece of advice I can give you is to always dig deeper. Don’t let your code be magic to you. Read into the libraries you use to understand how it functions in the big picture. Also, practice writing small, single-purpose functions. Huge functions/objects that do everything are actually counterproductive 99.5% of the time.

1 Like

i think part of it may be my workflow for designing systems as well.

i plan to start using my own or someone else’s framework, along it’s a basic plan for a script or idea.

1- jot down my notes, requirements, vision,and basic idea
2- modulize certain functions (like making a module for services or enums) and use the modules that i’ll be needing to design the system. also figure out what functions and modules could speed up my process or are needed.
3- note how the system can work or be made, and share the idea with one to three people for more ideas and assurance.
4- execute working, structure all variables and make abundant use of organized tables and annotations, and keep performance in mind at all times,
5- run countless bug and stress tests, and get opinions on final product
6- (extra) take time to polish, make good animations, and find nice sounds
7- adjust for suggestions and fix all bugs. maybe add some extra fun features
8- call it done.

anyways thanks for the help! always appreciated.

1 Like

Whatever works for you works, with respect to the process. However, in my personal opinion as well as that of many others’ that I’ve spoken with; you may be thinking too hard about it.

I think that structurally, it is a good idea to have early plans and thoughts for organization. After all, unorganized design is pretty difficult/tedious to repackage neatly. But I do think some of your other stuff may be prioritized a bit too high.

You can refactor and optimize later. If refactoring your code means that you have to change how other parts of your code interact with it, then you need to go back to step 1 to redesign. This does not, however, mean you have to do extensive planning in structuring your code. You’re going to have times where you realize that you should go back and redesign a system, and when you have those realizations, it means you’re growing.

This is also why it’s highly recommended that you start with small projects. When you’re not working with behemoths of code and files, it’s much easier to accept gently putting a project to rest, and starting something new. This is called iteration, and it’s one of the most valuable practice techniques.

run countless bug and stress tests, and get opinions on final product

Again, most of this stuff is actually distraction from the more fundamental elements of program design. I’d say not to worry about stress tests and things being “final” until you’re building the game that you want to be your debut; the one that you put everything into. But before that, it’d be best to have “countless” types and iterations of smaller projects under your belt.


I’m glad to be able to help. Hopefully these words also reach some eager programmers and game devs far into the future. Hello from 2024!

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.