Ban Player Name (Advanced)

Disclaimer

This guide was produced by Toothless Inc Corp. This is not recommended with anybody with brain age less than 13. Symptoms from this guide may include crashing out, rage-quitting and a weird feeling of saying brainrot. If you are experiencing any of these conditions call 111-111-1111 for Brain rot help and 111 to patch you in with the nearest mental asylum. We are not responsible for any of these symptoms. Report bugs if found.


Now, I need you to bear with me before flagging this guide, I have a very good reason for publishing this post to the community. Apparently there was a dupe guide on how to ban certain player names, a user gave other guides to prove how the post was a dupe. I was naturally intrigued and went through the given links.


The Reason

After hours (4 minutes) of meticulously researching the systems, I’ve come to a conclusion that they are in need of an update. My reason, they can be easily bypassed.

Now, normal systems like those of chatting are still not fully able to keep out inappropriate words or player names. However, I believe they can still do more such as identifying randomly capitalized words.

For example, as per the Gimkit systems we have currently, if a ban word was “eatturtles”. A player could name themselves “eAtTuRtlES” and get away with it. My system (hopefully), will get rid of this problem and limit how easily people can bypass such banned words.


Breakdown

Breakdown

Alright, so how are we going to do this?

  • UPPERCASE and lowercase letters:
    Since we want to convert any uppercase letters to lowercase, we’d want to make two different properties. One that holds all the lowercase letters and another that holds all the uppercase.
  • If statement to identify letters:
    Since we both our properties are basically identical in index (as both contain the entire alphabet), this will mean A and a will have the same index. Which means when we iterate through each letter, we can compare if we have an Upper case letter, and if we do, we can grab it’s index and use that to find it’s lower case counterpart since they both have the same index.
  • Reconstruction:
    We need to recreate the name over each iteration to develop an entirely lowercase version of it (this would mean that our banned work would need to be lowercase so they can be compared).
  • Identification:
    Pretty easy part, just slap on the two words and see if they match

Properties

Properties

Here’s the properties I used

Name Type Default Value Usage
iteration Number 1 This is for iterating through the player’s name and to try and find any upper case letters to change to lower case.
Banned Word Text [insert your banned word] This is for final comparison between the recreated name and the banned word, this is the final check to see if the name matches.
lowerLetters Text abcdefghijklmnopqrstuvwxyz For recreation of name
upperLetters Text ABCDEFGHIJKLMNOPQRSTUVWXYZ For recreation of name
recreationOfName Text This is where the letters will be placed to create a lowercase version of the name
System

System

Ok, this is actually one of my shorter guides considering the fact this is all done on one trigger.

Anyways, so grab a trigger, and have it broadcast on nextIteration. You’ll also need a separate device to activate the trigger, maybe a life-cycle on game start or something else.

Add this code.

And preformatted code.

set 'iteration' to - Get Property- "iteration"
if 'iteration' ≠ ([length of-Get Property-"Banned Word"]+1) 
  do: set 'nameIteration' to- in text [Triggering Players Name] get letter # 'iteration'
  if [in text (Get Property-"lowerLetters") find first occurrence of text ('iteration')] ≠ 0
    do: Set Property-"recreationOfName"
        Value: create text with
        |Get Property-"recreationOfName"
        |'nameIteration'*
    else: Set Property- "recreationOfName"
        Value: create text with - Get Property "recreationOfName"
                                in text - Get Property "lowerLetters"- get letter # [in text-Get Property: "upperLetters"] find first occurence of text 'nameIteration'
  Set Property - "iteration"
      Value - 'iteration' + 1
  Broadcast Message On Channel - "nextIteration"
else: if Get Property-"recreationOfName" = Get Property- "BannedWord"
         do: Broadcast Message On Channel- "nameNotAllowed"

* Hopefully you saw the asterisk. Anyways, I’m writing this because you might have noticed part of the pre-formatted code isn’t identical to the screenshot. Well I realized I wasted some blocks and replaced it with the nameIteration variable which had the original use of REPLACING that code. So don’t worry about ti.


Explanation

Explanation

My least favorite part of the guide!

Ok, so basically we use our iteration property and check if it’s equal to the length of the Banned word. This is under the assumption if you do give yourself a bad word, it would match up with the length of the name [1]

Now after this, we grab the index value of the player name and save it in the nameIteration variable. For example, if in eAtTurTle, it would grab “e”, since the iteration property is 1. Now using this letter, we check if it exists in the lowercase letter property, if it exists, it would return its index.

Using that index number, we do into the recreationOfName property and add the previous version of it (which is nothing since this is the first iteration) and the letter. This would make it “e”.

After this it increases the iteration property by 1 and restarts the process. Moving onto the next letter “A”. You can already see that it won’t exist in the lower case letter property, so we go to the else and again recreate the letter, except this time we find the index number A has in the upper case letter property and use that index to find “a” in the lower case. This works since “A” would have an index 1 in the upper case property. Now, using one, we find that letter in the lowercase, and “a” sits there. That’s because the alphabet is matched up with its other counterpart (B with b, Z with z, you get the point)

Now we keep doing this until we reach the same length as our BannedWord property. This goes under the assumption that if the player did use an inappropriate word as their name, it would match the same length. Again, spaces would disrupt this. Now, in the case the player didn’t use spaces, with the decoded name to be all lowercase, we would compare this to the banned word and see if we get a match. After that it’s up to you what you want to happen to the player.


Useful?

There’s still a bit more to add, like spaces in the name and special characters to act as substitutes for letters (@ for a, ! or 1 for i). But honestly, your best bet is to just kick the player as a host and ask them to change their name.

Anyways, hope this was helpful. Hmm, yes, try avoiding saying 'Good Guide!" without saying something actually helpful, like maybe suggestions to make this a better guide.


  1. Spaces in the name will harm this part of the system, since e a turtle isn’t the same the same length as eatturtle. ↩︎

21 Likes

Isn’t this quoted from one of the guides? I think you should at least quote the guide or credit it

I’ll review and rate tmrw so yeah idk what to rate it yet

Yes, I said that and was repeating it.

1 Like

Oops my bad, missed the part :sweat_smile:

1 Like

This gave me an idea to make a MORE advanced system on banning names.. like rearranging, spaces, extra letters, and stuff
I might make it a guide, if I have time
Anyways, good guide

2 Likes

Yeah that still needs to be figured out.

I already have sort of an idea on what to do, I just need the will power to do it.

1 Like

so, let’s say I want to detect the name “read_toothless_bio” because advertising.

say someone joins with said name. Instead of banning them, could be bring them into a separate area, say if it’s a puzzle game you need an alt to join with a specific name to unlock the next level and whatnot? that would be cool.

toothless is awesome puzzle game would go crazy

5 Likes

Alr time to rate

Pros

  • Bro i cant even talk about the intro and conclusion its just too good
  • DISCLAIMER
  • Took smth REALLY advanced and made it simple
  • …

Cons:

  • add the links you researched with maybe? that’s how I missed the crediting anyway.
  • [detail] the parts maybe?

W guide

9.5/10 Overall

1 Like

They didn’t exactly research using any forum links anyways
It’s decently detailed, I believe anyone capable of opening block code in gim would be able to do it

I could mention the device topic that was asking about using the Player ID for ban name. That was when I got the idea.

What more could I say? You add a trigger and block code that’s literally it :skull:

1 Like

he means

dropdowns.

5 Likes

bro how bad are you tryna keep the opps out :sob: :folded_hands:

9 Likes

BUMP ---------->

1 Like

bump

glaze toothieless

3 Likes

Bump

3 Likes


bibbidy boppidy bump

can u guys tell me how to improve the guide

Summary

Are. You. Editing???

pls click so no editing conflicts happen


Hello readers, have you ever just looked at a prop and though, “It’d be cool if it could move.”, ever wanted to make a beautiful transition between areas, or simply make a video within GimKit to impress your friends?

You might be surprised that everything I just mentioned is possible, with the use of animation.


How does it work?

Let’s say you hide something, it obviously disappeared.

But what if you hide something, but at the same time, show something somewhere else?


Go ahead, open up GimKit and try it.

Screen recording 2026-01-05 8.05.42 AM

As you just witnessed, the prop you used teleported
With a creative imagination, you could say it moved!

It’s not that convincing right now, but what if we try making the prop stay somewhere for 1 second, then leave?

If that didn’t make any sense, just build this.


Screen recording 2026-01-05 8.08.35 AM

now your prop actually looks like it just moved!

FELLAS, what we just learned is animation! Good job!
specifically, you learned simple animation

Here's a guide that explains it better

download (2)

Alright did I get your attention?
Anyways, that’s animation, stuff that moves. If you’re a skill issue at blocks and properties like me, this type of animation is perfect for you, and I’ll show you how it works!

Btw, the advanced animation was updated to be more memory cheap.

Simple Animation

The idea is you hide props or other stuff and show a copy right after to make the illusion of movement! Wire repeaters are AMAZING for this due to the fact they can continue wires and can be changed when they activate stuff.

To show how it’s done, we’ll make a fish swim.

Materials

1 wire repeater for each frame

1 copy of your animated object for each frame

Around 25 memory per frame, doesn’t count object

Instructions

1.Place 1 wire repeater for each frame you make (Wire all of them together in a line)
For me, I’ll put 3 wire repeaters

2.Place 1 copy of the object you’re animating for each frame you want
I will place 3 fish, each swimming in a different part of a pond

  1. Wire each wire repeater to show a prop and to hide the previous one
    If it’s the first/last wire repeater, it doesn’t need to do both

You should have something like this

download (5)2. Advanced Animation

Advanced Animation

Advanced animation is quite similar to simple animation, but now, we use channels and triggers to show/hide instead. We use it if what we’re animating has over 5 props used.

Now, we’ll make a gim catch our fish.

Materials

1 trigger for each frame

1 copy of your animated object for each frame

Around 50 memory per frame, not counting object

Instructions

  1. Place all your object copies and change them however you like for each frame
    I’m making a gim sit, then pull out a fish, then celebrate
  2. Give each trigger their own unique channel, “When triggered, transmit on”
  3. Channel all the triggers together, make each trigger “Trigger when receiving on” the previous trigger’s channel
  4. Give each object the same channel for show (If trigger wired to first repeater has “67” channel, first object also has it)
  5. Give each object the next channel for hide (If trigger wired to second repeater has “skibidi” channel, first object also has it)
  6. Place all your stuff where you want it, good job!

You should have something like this

download (9)

#RIPGertrudeTheGimFish

That’s all you need to know :D, don’t forget to read the notes at the end. Try practing this by adding a spider or something that appears every minute or other simple animations, but for now, thanks for reading!
Notes:

  1. It’s your choice how long each frame is, edit the delay on wire repeaters to change it.
  2. I suggest to not use the wrong method for your animation, simple with channels uses more memory, advanced with wires is laggy.
  3. If you want to, you can create animations up to 10 frames per second.
  4. You can loop the animation by wiring the first repeater to the first.
  5. I can change this guide if you ask in replies.

Thanks cheezesRcool for helping with channels, and show this guide to every penguin you know. :penguin:

Differences between simple and advanced

If you read the guide, it probably left you even more confused.
Cuz what in the orbital missle strike is advanced animation???

@The_Golden_Galaxy I put this for the people at chess
don’t post anything off topic

6 Likes

Bump.

1 Like

Did you read the guide? There’s enough info already and a photo.

Test it out.

xlr did you see this btw?

1 Like