SHOW:
|
|
- or go back to the newest paste.
1 | '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' | |
2 | ''''''''''''' Command Modules v1.7 Documentation ''''''''''''''' | |
3 | '''''''''''''''''''' By nickcool9999 '''''''''''''''''''''''''' | |
4 | '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' | |
5 | ||
6 | Security Disclaimers: | |
7 | ||
8 | 1) DO NOT USE THIS IN SCRIPT BUILDERS. Although the script has its own built-in | |
9 | security system for preventing the wrong people from using commands directly, | |
10 | the global function _G.SendCommand forces the user to be OP (1 rank below admin) | |
11 | so that the command can execute. If you do include this, things may get out of | |
12 | hand quickly. Remember, this is a VERY powerful script. | |
13 | ||
14 | 2) PLACE THIS SCRIPT IN THE SERVERSCRIPTSERVICE TO PREVENT EDITTING OF THE SCRIPT | |
15 | BY EXPLOITERS. | |
16 | ||
17 | List instructions: | |
18 | ||
19 | me - the speaker. | |
20 | others - everyone who is not the speaker. | |
21 | all - everyone. | |
22 | admins - everyone listed as an admin. | |
23 | nonadmins - everyone not listed as an admin. | |
24 | ops - everyone listed as an Operator. | |
25 | nonops - everyone not listed as an Operator. | |
26 | team - everyone on your team. If you are neutral, nobody will be selected. | |
27 | otherteams - everyone on a team which is not yours. | |
28 | random - select someone random | |
29 | random # - select # amount of random people | |
30 | ||
31 | And any other player will work. Also caps do not matter. | |
32 | ||
33 | - | Commands: |
33 | + | |
34 | me, admins, ops will NOT work | |
35 | - | 1) kill:{Lists} |
35 | + | |
36 | so will "all" | |
37 | ||
38 | to create several lists, seperate the lists with a ":" | |
39 | - | 2) heal:{Lists} |
39 | + | |
40 | Wildcards are used automatically, so try not to use ambiguous names. | |
41 | i.e. if you use kill:pla while Player1 and pLAYERofChips are in the game, it will kill those players. | |
42 | - | 3) teleport:{List}:{Player} OR tp:{List}:{Player} |
42 | + | |
43 | kill:me:me:me <-- will kill you three times | |
44 | ||
45 | - | 4) ff:{Lists} |
45 | + | |
46 | ff:me,me,me <-- will give you three force fields, and make you lag. | |
47 | unff:me <-- removes all force fields. | |
48 | - | 5) unff:{Lists} |
48 | + | |
49 | How to utilize {Flags}: | |
50 | ||
51 | - | 6) vanish:{Lists} |
51 | + | There are three types of flags. |
52 | One flag type is with settings: | |
53 | -<settingsflag> <settings> | |
54 | - | 7) ghost:{Lists} |
54 | + | One flag type is without settings: |
55 | -<singleflag> | |
56 | One flag type is with settings but can | |
57 | - | 8) unvanish:{Lists} OR unghost:{Lists} OR reveal:{Lists} |
57 | + | support spaces and dashes within them: |
58 | -<settingsflag> *<longersettings>* | |
59 | And finally, flags can be trailed behind | |
60 | - | 9) clearinventory:{Lists} OR clear:{Lists} |
60 | + | one another to set several settings: |
61 | -<settingsflag> <settings> -<settingsflag> <settings> | |
62 | ||
63 | - | 10) clearcinventory:{Lists} |
63 | + | --{ Default Commands }-- |
64 | ||
65 | 1) !kill:{Lists} | |
66 | - | 11) construction:{Lists} |
66 | + | |
67 | create several lists to loopkill. | |
68 | ||
69 | - | 12) tool:{Lists}: {Arguments} |
69 | + | 2) !heal:{Lists} |
70 | heals everyone in the lists. | |
71 | ||
72 | 3) !teleport:{List}:{Player} OR !tp:{List}:{Player} | |
73 | teleports everyone in the list to the player. | |
74 | ||
75 | 4) !ff:{Lists} | |
76 | - | 13) m: {Arguments} |
76 | + | |
77 | ||
78 | 5) !unff:{Lists} | |
79 | - | 14) h: {Arguments} |
79 | + | |
80 | ||
81 | 6) !vanish:{Lists} | |
82 | - | 15) fog |
82 | + | |
83 | ||
84 | 7) !ghost:{Lists} | |
85 | - | 16) unfog |
85 | + | |
86 | ||
87 | 8) !unvanish:{Lists} OR !unghost:{Lists} OR !reveal:{Lists} | |
88 | - | 17) superhardcore:{Lists} |
88 | + | |
89 | ||
90 | 9) !clearinventory:{Lists} OR !clear:{Lists} | |
91 | - | 18) jail:{Lists} |
91 | + | |
92 | ||
93 | 10) !clearcinventory:{Lists} | |
94 | - | 19) unjail:{Lists} |
94 | + | |
95 | ||
96 | 11) !construction:{Lists} | |
97 | - | 20) headlight:{Lists} OR torch:{Lists} |
97 | + | |
98 | ||
99 | 12) !tool:{Lists}: {Arguments} | |
100 | - | 21) unheadlight:{Lists} OR untorch:{Lists} |
100 | + | |
101 | tools' names or use "all" as the argument. | |
102 | "tool:{Lists}: tools" gives only wieldable tools. | |
103 | - | 22) walkspeed:{Lists}: {Argument} |
103 | + | |
104 | "tool:{Lists}: remotescripts" gives remote scripts. | |
105 | ||
106 | 13) !m:{Arguments} | |
107 | - | 23) normalwalkspeed:{Lists} |
107 | + | |
108 | ||
109 | 14) !h: {Arguments} | |
110 | - | 24) creative:{Lists} |
110 | + | |
111 | ||
112 | 15) !fog | |
113 | creates 5 blank messages in workspace emulating fog. | |
114 | - | 25) nocreative:{Lists} |
114 | + | |
115 | 16) !unfog | |
116 | removes all fog. | |
117 | - | 26) ccolor:{Lists}: {Color ColorHead}[, {Color ColorTorso}[, {Color LeftArm}[, {Color RightArm}[, {Color LeftLeg}[, {Color RightLeg}] ] ] ] ] |
117 | + | |
118 | 17) !superhardcore:{Lists} | |
119 | Makes it so if anyone in the lists die they get kicked from the game automatically. | |
120 | ||
121 | - | 27) swapheads:{Player}:{Player} |
121 | + | 18) !jail:{Lists} |
122 | Jails everyone in the lists. | |
123 | ||
124 | - | 28) blockhead:{Lists} |
124 | + | 19) !unjail:{Lists} |
125 | Removes all jails from everyone in the lists. | |
126 | ||
127 | - | 29) stat:{Lists}: {Statname}: {Value} |
127 | + | 20) !headlight:{Lists} OR !torch:{Lists} |
128 | Gives everyone in the lists a yellow light (Like a torch) for dark areas. | |
129 | ||
130 | 21) !unheadlight:{Lists} OR !untorch:{Lists} | |
131 | - | 30) relativestat:{Lists}: {Statname}: {Value} |
131 | + | |
132 | ||
133 | 22) !walkspeed:{Lists}: {Argument} OR !ws:{Lists}: {Argument} | |
134 | Gives everyone in the lists a predetermined amount of walkspeed given by the | |
135 | argument (default 16). | |
136 | - | 31) chair:{Lists} |
136 | + | |
137 | - | Gives a chair to everyone in the lists. |
137 | + | 23) !normalwalkspeed:{Lists} OR !nws:{Lists} |
138 | Returns everyone in the lists' walkspeeds to the default (16). | |
139 | - | 32) guibuild:{Lists} |
139 | + | |
140 | 24) !creative:{Lists} | |
141 | Gives the player the ability to fly by double tapping space and gives the player | |
142 | the ability to run by double tapping W. | |
143 | - | 33) modulogic:{Logic} OR ml:{Logic} OR logic:{Logic} |
143 | + | |
144 | 25) !nocreative:{Lists} | |
145 | Removes all abilities gained from the creative:{Lists} command. | |
146 | ||
147 | - | 34) mltoggle: {Argument} |
147 | + | 26) !ccolor:{Lists}: {Color ColorHead}[: {Color ColorTorso}[: {Color LeftArm}[: {Color RightArm}[: {Color LeftLeg}[: {Color RightLeg}] ] ] ] ] |
148 | Set the character color, with 5 additional optional arguments for each body part. | |
149 | See the ColorTranslateAPI function for a list of colors. | |
150 | ||
151 | 27) !swapheads:{Player}:{Player} | |
152 | - | -- MODULE LOGIC API -- |
152 | + | |
153 | ||
154 | 28) !blockhead:{Lists} | |
155 | Turns everyone in the lists' heads into blocks. | |
156 | ||
157 | 29) !stat:{Lists}: {Statname}: {Value} | |
158 | - | | Variable content (can be number, string or bool) |
158 | + | |
159 | i.e. stat:SpeedySeat: Money: 1 will change speedyseat's money to 1. | |
160 | ||
161 | 30) !relativestat:{Lists}: {Statname}: {Value} | |
162 | Changes everyone in the lists' stat {Statname}'s value to itself added onto {Value} | |
163 | i.e. stat:SpeedySeat: Money: 1 will give speedyseat 1 money. | |
164 | note - useful in modulogic API | |
165 | ||
166 | 31) !gravity:{Lists}: {Factor} | |
167 | Changes everyone in the lists' gravity multiplied by the factor. | |
168 | 1 is default | |
169 | 2 is double | |
170 | 0.5 is half | |
171 | online, -0.085 seems to be zero gravity for some reason. | |
172 | ||
173 | 32) !guibuild:{Lists} | |
174 | Basically an alternative to the construction command. | |
175 | Gives a tool which gives far more flexibility when building. | |
176 | ||
177 | 33) !modulogic:{Logic} OR !ml:{Logic} OR !logic:{Logic} | |
178 | This command executes separate commands based on structured coding here. | |
179 | This is an advanced command, and beginners are not recommended to use it. | |
180 | ||
181 | 34) !mltoggle:{Argument} | |
182 | This command toggles a setting in the modulogic internal configuration. | |
183 | You don't need to mess with this unless you're very well educated and need it. | |
184 | **MISSING DOCUMENTATION** | |
185 | ||
186 | **See: Module Logic Documentation | |
187 | ||
188 | 35) !wait: {Time} | |
189 | This command is useless outside of the Modulogic API. This command basically | |
190 | waits until the Time argument above is reached, then executes the next command. | |
191 | You do not need to provide an argument if you are executing this after the m command, | |
192 | as the wait command will automatically wait 5 seconds if not given an argument. | |
193 | ||
194 | 36) !respawn:{Lists} | |
195 | respawns everyone in the lists. | |
196 | this is an instant respawn, and also activates respawn events. | |
197 | ||
198 | 37) !music:{SoundID} | |
199 | Spawns in a music box above your head playing the SoundID assigned. | |
200 | - | -- EXAMPLES BELOW (PASTE FULL TEXT IN ONLINE CHAT TO TEST) -- |
200 | + | |
201 | 38) !unmusic | |
202 | Removes any music that you've spawned in, stopping them as well. | |
203 | - | ml:case>mlv>given~(<)1.5{m: You are running a past version of ModuLogic.}>{m: You are up to date!} |
203 | + | |
204 | 39) !looklike:{Lists}: {PlayerID/Username} | |
205 | - | ml:case>me/stat/Money>given~(>)9000{m: %me/name% has over 9000 Money!!!!1} |
205 | + | Makes anybody in the lists' appear as another player based on their Player ID OR Username. |
206 | ||
207 | - | ml:m:%me/name%: You are %me/distancefrom/Pending% studs away from the brick. |
207 | + | 40) !delimb:{Lists} |
208 | Gets rid of "some" limbs :> Perfect trolling mechanism! | |
209 | - | ml:define>alt>%me/distancefrom/Pending%;case>alt>given~(<)25{m:%me/name%: You are close enough to the spawn}>{m:%me/name%: You are %SpeedySeat/distancefrom/Pending% studs away from spawn.} |
209 | + | |
210 | 41) !nohats:{Lists} | |
211 | - | ml:loop>%players%>{m: I ate %player index% for breakfast!;kill:%player index%;wait} |
211 | + | Gets rid of everybody in the lists' hats. |
212 | ||
213 | - | 35) wait: {Time} |
213 | + | 42) !material:{Lists}: {Material} |
214 | Changes the material of everyone in the lists to the desired material. | |
215 | ||
216 | 43) !blind:{Lists} | |
217 | Makes everybody in the lists blind. | |
218 | ||
219 | - | 36) respawn:{Lists} |
219 | + | 44) !unblind:{Lists} |
220 | Removes blindness from everybody in the lists. | |
221 | ||
222 | 45) !citem:{ID} | |
223 | - | -- ADMIN ONLY COMMANDS: -- |
223 | + | Inserts the asset ID and puts it somewhere in your character. |
224 | You must be admin to use this command if the ID is not from ROBLOX. | |
225 | - | 1) promote:{Lists} |
225 | + | |
226 | 46) !jumppower:{Lists}: {Argument} OR !jp:{Lists}: {Argument} | |
227 | Gives everyone in the lists a predetermined amount of JumpPower given by the | |
228 | - | 2) demote:{Lists} |
228 | + | argument (default 50). |
229 | ||
230 | 47) !normaljumppower:{Lists} OR !njp:{Lists} | |
231 | - | 3) admin:{Lists} |
231 | + | Resets everyone in the lists' JumpPower to 50. |
232 | ||
233 | --{ ADMIN ONLY COMMANDS }-- | |
234 | ||
235 | 1) !lua: {Code} | |
236 | !lualocal: {Code} | |
237 | Runs some lua code. Must have ServerScriptService.LoadStringEnabled on. | |
238 | - | 4) unadmin:{Lists} |
238 | + | **WARNING: Enabling LoadString disables your ability to use player points! |
239 | USE MODULOGIC WHERE YOU CAN! | |
240 | ||
241 | 2) !promote:{Lists} | |
242 | - | 5) kick:{Lists} |
242 | + | |
243 | ||
244 | 3) !demote:{Lists} | |
245 | Removes everyone in the lists from the Operator list. | |
246 | - | 6) ban:{Lists} |
246 | + | |
247 | 4) !admin:{Lists} | |
248 | **WARNING: DO NOT USE THIS COMMAND FOR PEOPLE YOU DO NOT TRUST COMPLETELY. | |
249 | YOU DO NOT NEED ADMIN TO USE COMMANDS; OPERATOR ALLOWS ALL NON-RANK COMMANDS. | |
250 | - | 7) unban: {Arguments} |
250 | + | |
251 | This is only temporary and does not make the user a permanent admin. | |
252 | To make a user a permanent admin, add their name to the list of admins. | |
253 | ||
254 | - | How to utilize flags: |
254 | + | 5) !unadmin:{Lists} |
255 | Removes everyone in the lists from the admin list. | |
256 | - | There are three types of flags. |
256 | + | |
257 | - | One flag type is with settings: |
257 | + | |
258 | - | -<settingsflag> <settings> |
258 | + | 6) !kick:{Lists} |
259 | - | One flag type is without settings: |
259 | + | |
260 | - | -<singleflag> |
260 | + | |
261 | - | One flag type is with settings but can |
261 | + | |
262 | - | support spaces and dashes within them: |
262 | + | 7) !ban:{Lists} |
263 | - | -<settingsflag> *<longersettings>* |
263 | + | |
264 | - | And finally, flags can be trailed behind |
264 | + | |
265 | - | one another to set several settings: |
265 | + | |
266 | - | -<settingsflag> <settings> -<settingsflag> <settings> |
266 | + | 8) !unban: {Arguments} |
267 | Checks the ban list for anyone who is an argument in this command and removes them. | |
268 | - | Examples using commands in ExtraCommands: |
268 | + | |
269 | ||
270 | - | hop:-macro *p: 2 2 2 -c Bright blue -ry 45* |
270 | + | 9) !chatprefix:{Prefix} |
271 | - | hop:-name RightClickFrenzy -rmacro *p: 2 2 2 -c Bright red* -macro *p: 2 2 2 -c Bright blue -ry 45* |
271 | + | Changes the chat commands' prefix. This changes the script from its default settings. |
272 | USE WITH CAUTION! | |
273 | - | The ExtraCommands Commands: |
273 | + | If you do not want any chat prefixes for these commands, simply say "!chatprefix" OR |
274 | change the value in the config to be empty. | |
275 | - | 1) hop:{Flags} |
275 | + | |
276 | 10) !insert:{ID} | |
277 | Inserts the item with the ID given into workspace. | |
278 | ||
279 | --{ SpecialEffects CoreAPI by nickcool9999, v1.0 }-- | |
280 | ||
281 | This command script deals with several special effects offered in the lighting service. | |
282 | Delete this script if you do not wish to have lighting commands. | |
283 | ||
284 | To reset any of these effects, issue the command again without any arguments. | |
285 | i.e. "!ambient". | |
286 | ||
287 | - | -rmacro <MACRO>: Macro flag. This flag sets what commands get executed when this HopperBin is right clicked. (Off by default) |
287 | + | 1) !ambient:{red}:{green}:{blue} |
288 | Sets the ambient lighting from 0 to 1 for each color. | |
289 | i.e. ambient:1:1:1 would make the ambient full red, full green and | |
290 | full blue, which is white. | |
291 | - | 2) p:[[x] [y] [z] ]{Flags} |
291 | + | |
292 | 2) !oambient:{red}:{green}:{blue} | |
293 | Sets the outdoor ambient lighting from 0 to 1 for each color. | |
294 | ||
295 | 3) !bcshift:{red}:{green}:{blue} | |
296 | Sets the Color Shift (Bottom) from 0 to 1 for each color. | |
297 | ||
298 | 4) !tcshift:{red}:{green}:{blue} | |
299 | Sets the Color Shift (Top) from 0 to 1 for each color. | |
300 | ||
301 | 5) !brightness:{Brightness} | |
302 | Sets the brightness from 0 to 10. | |
303 | ||
304 | 6) !shadows:{(yes/true)/(no/false) enabled} | |
305 | Sets if global shadows are enabled. | |
306 | ||
307 | 7) !outlines:{(yes/true)/(no/false) enabled} | |
308 | Sets if outlines are enabled. | |
309 | ||
310 | 8) !shadowcolor:{red}:{green}:{blue} | |
311 | Sets the Shadow Color from 0 to 1 for each color. | |
312 | ||
313 | 9) !fogcolor:{red}:{green}:{blue} | |
314 | Sets the Fog Color from 0 to 1 for each color. | |
315 | ||
316 | 10) !fogstart:{Amount} | |
317 | Sets the fog start amount. | |
318 | - | -ontouch <MACRO>: Executes commands on behalf of the player when they touch this part. |
318 | + | |
319 | 11) !fogend:{Amount} | |
320 | Sets the fog end amount. | |
321 | ||
322 | 12) !latitude:{Amount} | |
323 | Sets the Geographic Latitude. | |
324 | ||
325 | --{ GridsAPI by nickcool9999, v1.0 }-- | |
326 | ||
327 | This is the fundemental command script that deals with 2D Arrays. This is not useful outside of | |
328 | the "assign" function of ModuLogic, which assigns the contents of a returned command to a variable. | |
329 | ||
330 | This API is a recreation of the popular ds_grid library from Game Maker: Studio in Lua. | |
331 | ||
332 | 1) !ds_grid_create:{ID}:{width}:{height} | |
333 | Creates a 2D Grid | |
334 | ||
335 | 2) !ds_grid_width:{ID} | |
336 | Gets the Grid's Width | |
337 | ||
338 | 3) !ds_grid_height:{ID} | |
339 | Gets the Grid's Height | |
340 | ||
341 | 4) !ds_grid_resize:{ID}:{width}:{height} | |
342 | Resizes a Grid to new dimensions | |
343 | ||
344 | 5) !ds_grid_clear:{ID} | |
345 | Clears a grid | |
346 | ||
347 | 6) !ds_grid_set:{ID}:{x}:{y}:{value} | |
348 | Sets a spesific value in the grid | |
349 | ||
350 | 7) !ds_grid_set_disk:{ID}:{x}:{y}:{radius}:{value} | |
351 | Sets a circular area to a value | |
352 | ||
353 | 8) !ds_grid_set_grid_region:{ID}:{x}:{y}:{x2}:{y2}:{x_copyto}:{y_copyto} | |
354 | Copies an area on the grid to another location | |
355 | ||
356 | 9) !ds_grid_shuffle:{ID} | |
357 | Randomly Shuffle Values Everywhere | |
358 | ||
359 | 10) !ds_grid_sort:{ID}:{column}:{ascending} | |
360 | Sort a row | |
361 | ||
362 | 11) !ds_grid_get:{ID}:{x}:{y} | |
363 | Return Grid Value | |
364 | ||
365 | 12) !ds_grid_get_max:{ID}:{x}:{y}:{x2}:{y2} | |
366 | Get Highest value in area | |
367 | ||
368 | 13) !ds_grid_get_mean:{ID}:{x}:{y}:{x2}:{y2} | |
369 | Get Average value in area | |
370 | ||
371 | 14) !ds_grid_get_min:{ID}:{x}:{y}:{x2}:{y2} | |
372 | Get Lowest value in area | |
373 | ||
374 | 15) !ds_grid_get_sum:{ID}:{x}:{y}:{x2}:{y2} | |
375 | Get a sum of the values in the area | |
376 | ||
377 | 16) !ds_grid_get_disk_max:{ID}:{x}:{y}:{radius} | |
378 | Get Highest value in circular area | |
379 | ||
380 | 17) !ds_grid_get_disk_mean:{ID}:{x}:{y}:{radius} | |
381 | Get Average value in circular area | |
382 | ||
383 | 18) !ds_grid_get_disk_min:{ID}:{x}:{y}:{radius} | |
384 | Get Lowest value in circular area | |
385 | ||
386 | 19) !ds_grid_get_disk_sum:{ID}:{x}:{y}:{radius} | |
387 | Get a sum of all values in a circular area | |
388 | ||
389 | 20) !ds_grid_add:{ID}:{x}:{y}:{value} | |
390 | Sum a value to a cell | |
391 | ||
392 | 21) !ds_grid_add_region:{ID}:{x}:{y}:{x2}:{y2}:{value} | |
393 | Sum a value to a region | |
394 | ||
395 | 22) !ds_grid_multiply:{ID}:{x}:{y}:{value} | |
396 | Multiply a single cell by a value | |
397 | ||
398 | 23) !ds_grid_multiply_disk:{ID}:{x}:{y}:{radius}:{value} | |
399 | Multiply a circular region by a value | |
400 | ||
401 | 24) !ds_grid_multiply_region:{ID}:{x}:{y}:{x2}:{y2}:{value} | |
402 | Multiply an entire region by a value | |
403 | ||
404 | 25) !ds_grid_value_exists:{ID}:{x}:{y}:{x2}:{y2}:{value} | |
405 | Check if a value exists in an entire region | |
406 | ||
407 | 26) !ds_grid_value_disk_exists:{ID}:{x}:{y}:{radius}:{value} | |
408 | Check if a value exists in a circular region | |
409 | ||
410 | 27) !ds_grid_value_x:{ID}:{x}:{y}:{x2}:{y2}:{value} | |
411 | Return the x value of the first cell in a region with the value | |
412 | ||
413 | 28) !ds_grid_value_y:{ID}:{x}:{y}:{x2}:{y2}:{value} | |
414 | Return the y value of the first cell in a region with the value | |
415 | ||
416 | 29) !ds_grid_value_disk_x:{ID}:{x}:{y}:{radius}:{value} | |
417 | Return the x value of the first cell in a circular region with the value | |
418 | ||
419 | 30) !ds_grid_value_disk_y:{ID}:{x}:{y}:{radius}:{value} | |
420 | Return the y value of the first cell in a circular region with the value | |
421 | ||
422 | 31) !ds_grid_copy:{ID}:{templateID} | |
423 | Overwrite the current Grid ID with a template one. | |
424 | ||
425 | 32) !ds_grid_read:{JSON}:{ID} | |
426 | Writes to Grid ID from JSON string. | |
427 | ||
428 | 33) !ds_grid_write:{ID} | |
429 | returns JSON string from Grid ID | |
430 | ||
431 | 34) !ds_grid_exists:{ID} | |
432 | Checks existance of Grid ID. | |
433 | ||
434 | 35) !ds_grid_raw:{ID} | |
435 | Returns raw grid data of an ID. | |
436 | ||
437 | --{ GuiAPI by nickcool9999, v0.1 }-- | |
438 | ||
439 | Use this to see all of the commands available in the script (that are documented). | |
440 | Unfinished API implementation for Interface support. | |
441 | ||
442 | 1) !view | |
443 | Toggles the display of the command interface. | |
444 | ||
445 | 2) !input_box:{Lists}: {Flags} | |
446 | Displays an input box where you can input information for another command. | |
447 | Useful if you are demonstrating commands! | |
448 | You MUST provide an -id flag! | |
449 | ||
450 | 3) !input_wait:{BoxID} | |
451 | Wait for input from the input box ID given. | |
452 | ||
453 | 4) !input_getinfo:{BoxID} | |
454 | Returns information about the input box ID given. | |
455 | Only works after input has been entered. | |
456 | Since this is a return command, it is only useful for ModuLogic programming. | |
457 | i.e. !ml:assign>input_getinfo:hi>variablename | |
458 | ||
459 | --{ ExtraCommands by nickcool9999, v1.0 }-- | |
460 | ||
461 | This command script is purely for optional commands that are relatively advanced and experimental. This | |
462 | command script includes several extra functions that allow the user to create parts and HopperBins and more. | |
463 | ||
464 | 1) !hop:{Flags} | |
465 | This command creates a HopperBin given the parameters. | |
466 | Any flag that has (Off by default) next to it means that the flag's properties won't | |
467 | be considered unless it is included during creation. | |
468 | Any flag that has a default marked next to it means that you can call the flag as a -singleflag and it uses | |
469 | the default value when parsing. | |
470 | Flags: | |
471 | -regen <HP>: The amount of HP to regen per tick() [Default: 4] (Off by default) | |
472 | -name <name>: The display name of the HopperBin [Default: CommandBin] | |
473 | -deadly: The HopperBin will kill the user of it like a reset tool. (Off by default) | |
474 | -hpset <HP>: What to set the user's HP to when clicked and selected. [Default: 0] (Off by default) | |
475 | -macro <MACRO>: Macro flag. This flag sets what commands get executed when this HopperBin is clicked. (Off by default) | |
476 | -expire <time>: The amount of time this HopperBin is allowed to exist in your world (Useful for minigames utilizing | |
477 | commands) (Off by default) | |
478 | ||
479 | 2) !p:[x] [y] [z] {Flags} | |
480 | This command creates a Part given the parameters. | |
481 | Note: You don't need to include any flags if you want to keep their default (i.e. p: 4 1 4 or p: -c Bright blue) | |
482 | Flags: | |
483 | -n <Name> or -name <Name>: The name of the part (Part by default) | |
484 | -x <x>: The x position (Off by default) | |
485 | -y <y>: The y position (Off by default) | |
486 | -z <z>: The z position (Off by default) | |
487 | -xr <xr>: The x relative position [Default: 0 studs] | |
488 | -yr <yr>: The y relative position [Default: 5+(y size/2) studs] | |
489 | -zr <zr>: The z relative position [Default: 0 studs] | |
490 | -rx <rx>: The x rotation (In Degreesº) [Default: 0º] | |
491 | -ry <ry>: The y rotation (In Degreesº) [Default: 0º] | |
492 | -rz <rz>: The z rotation (In Degreesº) [Default: 0º] | |
493 | -us <SurfaceType>: The string surface name to set as the top [Default: Smooth] | |
494 | -ds <SurfaceType>: The string surface name to set as the bottom [Default: Smooth] | |
495 | -fs <SurfaceType>: The string surface name to set as the front [Default: Smooth] | |
496 | -bs <SurfaceType>: The string surface name to set as the back [Default: Smooth] | |
497 | -ls <SurfaceType>: The string surface name to set as the left [Default: Smooth] | |
498 | -rs <SurfaceType>: The string surface name to set as the right [Default: Smooth] | |
499 | -mat <Material>: The material setting for the part. Can be any Material. [Default: SmoothPlastic] | |
500 | -expire <time>: The amount of time this brick is allowed to exist in your world (Off by default) | |
501 | -a <true/false>: The anchored property [Default: true] | |
502 | -cc <true/false>: The CanCollide property [Default: true] | |
503 | -cj: Connects the joints of this block when created. | |
504 | -deadly <kill/explode>: Create a temporary kill brick (Off by default) | |
505 | -tpad <link>: Create a permanent teleport pad given the link string (Off by default) | |
506 | -tpadtemp <link>: Create a temporary server-only teleport pad given the link string (Off by default) | |
507 | -deb <time>: The time in seconds that the ontouch macro has before it can be used again. [Default: 1 second] | |
508 | -ontouch <MACRO>: Executes commands on behalf of the player when they touch this part. | |
509 | ||
510 | --{ ListsAPI by nickcool9999, v1.0 }-- | |
511 | ||
512 | This is the fundemental command script that deals with 1D Arrays. This is not useful outside of | |
513 | the "assign" function of ModuLogic, which assigns the contents of a returned command to a variable. | |
514 | ||
515 | This is a far simpler version of the GridsAPI. | |
516 | This API is a recreation of the popular ds_list library from Game Maker: Studio in Lua. | |
517 | ||
518 | 1) !ds_list_create:{Name} | |
519 | *RETURNS the list | |
520 | Creates an empty list | |
521 | ||
522 | 2) !ds_list_get:{Name} | |
523 | *RETURNS the list | |
524 | ||
525 | 3) !ds_list_add:{Name}:{Contents} | |
526 | *RETURNS the list | |
527 | Adds an entry to the list with {Contents} in it | |
528 | ||
529 | 4) !ds_list_size:{Name} | |
530 | *RETURNS the list's size, the amount of items in it | |
531 | ||
532 | 5) !ds_list_delete:{Name}:{Index} | |
533 | *RETURNS the list | |
534 | Omits {Index} from the {Name} list. | |
535 | ||
536 | 6) !ds_list_remove:{Name}:{Contents} | |
537 | *RETURNS the list | |
538 | Omits all indexes with {Contents} from the {Name} list. | |
539 | ||
540 | 7) !ds_list_clear:{Name} | |
541 | *RETURNS the list | |
542 | Completely clears the list. | |
543 | ||
544 | 8) !ds_list_find_index:{Name}:{Contents} | |
545 | *RETURNS the {Contents} index or a negative error code. | |
546 | Finds the first entry in the list with {Contents} assigned to it. | |
547 | ||
548 | 9) !ds_list_find_value:{Name}:{Index} | |
549 | *RETURNS the {Contents} of the {Index} in the {Name} list. | |
550 | Finds the entry in the list with the index number {Index}. | |
551 | ||
552 | 10) !ds_list_shuffle:{Name} | |
553 | *RETURNS the list | |
554 | Shuffles the list randomly. | |
555 | ||
556 | 11) !ds_list_sort:{Name}:{isAscending(1 if yes, 0 if no)} | |
557 | *RETURNS the list | |
558 | Sorts the list. | |
559 | ALL ENTRIES MUST BE A NUMBER OR STRING OR THIS WILL BREAK. | |
560 | ||
561 | 12) !ds_list_copy:{Name}:{Name2} | |
562 | *RETURNS the {Name} list | |
563 | Copies the contents of the {Name2} list to {Name}. | |
564 | This process eliminates any contents {Name} had. | |
565 | Useful for list templates. | |
566 | ||
567 | 13) !ds_list_destroy:{Name} | |
568 | *RETURNS -1 if no list goes by the name {Name}. | |
569 | Removes the {Name} list from the index memory. | |
570 | ||
571 | 14) !ds_list_exists:{Name} | |
572 | *RETURNS true if list exists and false if not | |
573 | Checks existance of {Name} list. | |
574 | ||
575 | --{ PastebinAPI by nickcool9999, v0.1 }-- | |
576 | ||
577 | Very simple commands to alias very long commands by using the Pastebin service. | |
578 | Unfinished API implementation for internal support. | |
579 | ||
580 | 1) !pastebin:{PasteID} | |
581 | Runs the command in the Pastebin ID. Not very useful unless you do pastebin:ml:{ModuLogic}. | |
582 | ||
583 | 2) !pml:{PasteID} | |
584 | Aliases both pastebin and "pastebin:ml:". combines the two and runs the provided pastebin ID as Modulogic. | |
585 | ||
586 | 3) !plua:{PasteID} | |
587 | This command only works for admins. Executes lua via a Pastebin ID. Must have ServerScriptService.LoadStringEnabled checked. | |
588 | **WARNING: Enabling LoadString disables your ability to use player points! | |
589 | USE MODULOGIC WHERE YOU CAN! | |
590 | ||
591 | --{ ModuleLogic API v1.1 }-- | |
592 | ||
593 | |define - creates a variable | |
594 | | > | |
595 | | VariableName | |
596 | | > | |
597 | | Variable content (can be number, string or bool) | |
598 | |-=- | |
599 | |case - checks a variable | |
600 | | > | |
601 | | VariableName/Variable subgroup (Optional) | |
602 | | > | |
603 | | Case~(type of comparison)Number,String compared{Code executed when true}>{Otherwise case (Optional)} | |
604 | |-=- | |
605 | |function - Creates a callable function | |
606 | | > | |
607 | | FunctionName/Arg1,Arg2,... - Arranges the necessary arguments and name | |
608 | | > | |
609 | | {When called code} - Creates a new definition with this code | |
610 | |-=- | |
611 | |call - Looks through definitions of code/arguments | |
612 | | > | |
613 | | FunctionName - Looks for this name | |
614 | | > | |
615 | | Arg1,Arg2,... -- Gives these arguments | |
616 | |-=- | |
617 | |loop - Repeats a line of code | |
618 | | > | |
619 | | Count - Tells how many times to repeat (for player function use %players%) | |
620 | | > | |
621 | | {When called code} - Loops this code count many times giving %index% as a variable name. Use %player index% for player getting. | |
622 | |-=- | |
623 | |assign - Assigns results of command to a variable | |
624 | | > | |
625 | | Command - The command to run | |
626 | | > | |
627 | | Variable - The variable name to assign to. | |
628 | |-=- | |
629 | |forlist - Loops through a ds_list (Requires Lists API) | |
630 | | > | |
631 | | ListID - The ID of the list created from commands. | |
632 | | > | |
633 | | {When called code} - Loops this code list count many times giving %index%, %i% as a variable name. | |
634 | |-=- | |
635 | |forgrid - Loops through a ds_grid for each cell (Requires Grids API) | |
636 | | > | |
637 | | GridID - The ID of the grid created from commands. | |
638 | | > | |
639 | | {When called code} - Loops this code for every cell giving %index%, %x% and %y% as variable names. | |
640 | |-=- | |
641 | | =>{ | |
642 | | This syntax creates a new thread for commands to execute. Runs aside from normal logic. | |
643 | | } | |
644 | |-=- | |
645 | |All default variables (to access surround name in percent signs): | |
646 | |pln - speaker's name | |
647 | |mlv - version of modules being used | |
648 | |elvl - same as below, only shortenned | |
649 | |executionLevel - useful for preventing stack overflows, tells which sub-function you are in. | |
650 | |index - only useful in loops. The number of times this code block has been executed thus far | |
651 | |Playername/stat/statname - Gives the player stat's value | |
652 | |Playername/playervar/Variable in player - Gives the playervar's value | |
653 | |Playername/teamname - Gives the name of the player's team | |
654 | |Playername/name - this is used for getting which player Playername has chosen | |
655 | |players - number of players in the list | |
656 | |player # - Player from the player list with the number # | |
657 | |? new variables can be created with the define function | |
658 | | | |
659 | |module code can be executed from anywhere | |
660 | ||
661 | --{ ModuleLogic Examples Below (PASTE FULL TEXT IN ONLINE CHAT TO TEST) }-- | |
662 | ||
663 | How to check your modulogic version (This snippet will be updated with new versions): | |
664 | !ml:case>mlv>given~(<)1.5{m: You are running a past version of ModuLogic.}>{m: You are up to date!} | |
665 | How to check your "Money" stat (Tells you if you have lots!): | |
666 | !ml:case>me/stat/Money>given~(>)9000{m: %me/name% has over 9000 Money!!!!1} | |
667 | How to test how far you are from a workspace instance (This case is "Pending"): | |
668 | !ml:m:%me/name%: You are %me/distancefrom/SpawnLocation% studs away from the brick. | |
669 | Case checking to see if you are close to the spawn (Creates "alt" as a variable then checks it): | |
670 | !ml:define>alt>%me/distancefrom/Pending%;case>alt>given~(<)25{m:%me/name%: You are close enough to the spawn}>{m:%me/name%: You are %SpeedySeat/distancefrom/Pending% studs away from spawn.} | |
671 | Loop through each player and tell them the script ate them: | |
672 | !ml:loop>%players%>{m: I ate %player index% for breakfast!;kill:%player index%;wait} | |
673 | Textboxes with input (Pastebin ID is WW0SScNU, you should use the command "pastebin:WW0SScNU" instead): | |
674 | ml: | |
675 | =>{ ##Thread separation## | |
676 | input_box:me: -id box -boxlabel Message 1 -dtext Test1 -button true -blabel SubTest -col 0,0,0 -tcol White -pos 0.25,0,0.25,0; | |
677 | input_wait:box; | |
678 | assign>input_getinfo:box>val; | |
679 | m:%val% | |
680 | }; | |
681 | =>{ ##Thread separation## | |
682 | input_box:me: -id box2 -boxlabel Message 2 -dtext Test1 -button true -blabel SubTest -col 0,0,0 -tcol White -pos 0.75,0,0.25,0; | |
683 | input_wait:box2; | |
684 | assign>input_getinfo:box2>val; | |
685 | m:%val% | |
686 | }; |