#Question for experienced developers

1 messages · Page 1 of 1 (latest)

torpid cairn
#

I have a question for people who've had experience in big projects. How do you go about making the system architecture before actually making the system? Or if you have some other workflow for making your systems, what would that be? Do you use any specific methods, practices, techniques?

Theres a game plan, after which u start setting up the basic infrastructure of the game. How do you figure out the things ur infrastructure needs, and how it interacts with other systems to achieve your results? For example if its a character customization, How do you frame the workflow to that point and keep it easy to understand and scale/improve upon in the future? Do you use any online things that help you plan? Maybe a specific AI model?

I'm asking as a lead developer of my own detailed game, so coding it perfectly enough so that it doesnt cause increased difficulty in future development is important to me.

neat socket
#

I most of the times ask chatgpt what functions, folder structure, etc. I need for the thing im making and then I kinda go for it, every couple of minutes or some i look over the code again to see if theres some better solutions and change the code up.

Try to keep, wehn its a bigger framework or some, things seperated so you even can use parts of the system for other stuff, this way it also doesn't get confusing. Also try to name variables and functions after their functionality that you get an idea of what they do just by reading the name later on.

These things are what I do idk.woe

noble canyon
#

There are some utilities that can help your system organization such as

#

Module loader, janitor, Singleton, Observer, State. I havent really implemented those but those do works

#

Every system is managed by a single system, called FrameworkManager./Game Manager It basically organizes all the modules, requiring the utilities or baseclass. you might want to apply a bit of oop onto the system, if every system has same func , like start,shutdown, or initialize.

#

Knowing when to use OOP or DOP will improve your skill.

torpid cairn
#

Ohh so it acts as a type of module loader?

neat socket
#

I think what he means is a API

noble canyon
#

u could connect systems using the moduleloader

#

for example.

#

for adding money local PlayerManager = ModuleLoader.PlayerManager PlayerManager:AddMoney(Player,500) in this case , we just require moduleloader and access playermanager module

torpid cairn
#

I see, I use crusherfire's Module Loader system, it has automatically requires and runs modules directly under a Server script and Client script, and any other that I specify

noble canyon
#

this makes the system more cleaner

torpid cairn
neat socket
#

why would you need that like whats the benefits of using it

torpid cairn
fleet oarBOT
#

studio** You are now Level 1! **studio

torpid cairn
torpid cairn
noble canyon
torpid cairn
#

and every useful module gets initialized and started on its own

#

you can even make it so that all modules are initialized, before starting etc

noble canyon
#

if you're new at this, maybe u can use ai to split the system u want

#

tell the AI on how to split the module into sub modules, mention the purposes and etc

torpid cairn
#

I'm not completely new but i've recently started getting overwhelmed while thinkng about the entire system architecture and trying to figure out the best way to go about it, If you're free can I ask you more questions?

noble canyon
#

sure

torpid cairn
neat socket
#

nvm roblox has caching for these things so even for performance reasons it doesn't matter

tropic knot
#

function Module.Init()

#

require(Module).Init()

#

or separate for client and server init

function Module.Client()
function Module.Server()