Guide to being a good client in commissions

Contacting the person providing their service to you

When you first want to hire someone, you do not needlessly have to start with a greeting or a question that you know the answer to.

Often, many people start off by saying “Hi” or “Hello” or “Hey, I have a request” and so forth. You do not need to tell the person providing the service your greeting or if you have a request without saying what your request is.

You may talk with someone with a different schedule or timezone from you so you may expect a long wait if you decide not to give any information straight away.

Here is a better way if you still want to include a greeting:

Hello, I would like to hire you for your scripting services, what I need is [so and so]. (then explain what into detail what your [so and so] is.)

Sometimes, you can ask if a person’s commission status is open but if you know it’s open as if you recently saw their portfolio open or on somewhere else you contacted them where they had an open post about being hired, then they’re most likely open so you wouldn’t need to ask.

Failure to explain the job in detail

Often, many people just say something like this:

Hello, can I hire you to make an inventory system?

Here’s the problem with this:

  1. You are stating something extremely broad and underdetailed.
  2. The user providing their services does not know how the inventory system you want will look.
  3. Since you only stated it was a “system”, the person does not know what services they must provide for the so inventory system, will they have to make the GUI and script it? Are they only making the scripts? It could even be more broader if it was something different.

Here’s a better way to phrase it:

Hello, I would like to hire you to make an inventory system that consists of a 5 by 5 slots inventory system where you can drag the items in the slots throughout the GUI. You would open the GUI through a button or by pressing E which we have provided.

In addition, we have provided items/models and images for them that you can use that may be picked up. We want the ability to be able to drop items and use them as well and implemented stacking for all items.

We also would like the items in the inventory to be saved for each player. Please ask me if you need anymore details.

This goes into great detail about what the inventory system is about. I am not implying that you must cover every single little detail as possible into your first message sent to them but that you should at least give them a good idea of what you want.

The person that provides their services can ask you questions more about the commission and exactly the details as well as if there are examples of what you want to cover the lack of other details that otherwise may be needed.

Sometimes, you do not have to explain in detail with words but with media and examples, this is usually the case for art, building, or any creative graphics commissions.

You do not always have to explain in great detail as well since sometimes, it may even require concise detail, for example a leaderstat system since universally, scripters would know what that is.

Payment Terms

The person who you’re asking for their service is usually the one with the superior choice to how the payment will go since they can just as easily decline your request.

Since they have valuable time on their hand while you wait leisurely for their finished product and progress, you should usually give them the benefit of being paid first if they provide significant progress and proof they are doing your job, usually before they have completed all your work.

However, this is all up to the person that you’re requesting, they may have different payment terms or could accept your payment terms, but they have more to lose than you do if you’re not paying first.

Often, a minimum price will be established/negotiated and depending on the person providing their service towards the end, they may negotiate an final price. “It depends” basically.

Professional Behavior (Common Sense)

If you are unable to use decent or understandable language, you are less likely to be accepted in your request. If you treat the commissioner rudely, expect a likely decline or drop of your request.

Miscellaneous/Extras

Structuring GUI for a scripter you're hiring

Unless you’re a scripter yourself, you may want to know this when hiring a scripter for a request that may involve GUI.

They may want you to organize your GUI correctly into frames and be named specifically to what they represent.

It is more convenient to name your GUI objects (buttons, frames, textlabels, etc) to something that is not a property of the GUI object. For example, naming any GUI object to “Name” or “Parent” will be weird because simply its a property, they would have to get around something like this using extra measures like :FindFirstChild() which isn’t convenient compared to just putting a reference to the object without any unnecessary commands.

(e.g. some objects like TextLabel or TextButton have a Text property so avoid changing TextLabel’s names to “Text”)

Combat systems

Punching and melee systems have many ways to be approached. Some scripters use simple Touched with a limb, tool, or invisible part that acts as a hitbox. Other scripters may use Magnitude calculation and math to settle for a hitbox. Some even use Region3 though I do not recommend it since even Magnitude gets the job done for cheaper resources.

Some scripters may also use raycasting which is known to be pretty good. Here’s the benefits and cons of them all:

Touched Magnitude Raycasting
Spoofable and exploitable by client/player Has no regard for direction Accurate and precise
Easy to use and simple Easy to use but harder than Touched More difficult to do
To solve exploitation, requires more server-sided checks Checks done on server Can be done on the server

Keep in mind that if it’s done on the server, it means its significantly harder or impossible to exploit. The Touched is simple and easy to use but requires checks to make sure the client isn’t exploiting so do not worry about it, as the checks aren’t that hard to implement.

The difference is that for the least latency/lag, it must be done on the client and only the server can provide extra checks to the result.

6 Likes