Jump to content
Sign in to follow this  
ussrlongbow

[RELEASE] Arma 3: Custom chat commands

Recommended Posts

Script name: Arma 3: Custom chat commands

Version: 1.0

Release: https://github.com/ussrlongbow/chatcom/releases/tag/v1.0

Issues: https://github.com/ussrlongbow/chatcom/issues

Source: https://github.com/ussrlongbow/chatcom

 

This script allows to implement custom chat commands in your mission, started from a special character.

 

You may configure commands like "!help", so when people playing your mission enter this as regular chat message - the associated code will be executed. See video for demo.

https://youtu.be/pUQspFb7vf0

  • Like 9

Share this post


Link to post
Share on other sites

This is awesome. Well done!

  • Like 1

Share this post


Link to post
Share on other sites

Just to foresee "interesting" questions: on github, someone stated ( https://github.com/ussrlongbow/chatcom/issues/1 ) this script is a copy of Conroy's Chat Intercept script https://forums.bistudio.com/topic/171047-release-execute-scriptscode-via-chat-commands/

 

Yet the idea is the same, the approach and implementation is completely different.

Share this post


Link to post
Share on other sites

This is cool.  What are some practical uses for it?   Text commands to team members?

Share this post


Link to post
Share on other sites

johnnyboy, the usage is limited to mission's author imagination, it can be used for admins to launch admin menus, for players to have commands like !stat to display custom statistics, or !help to open mission manual.
What script does: launch code associated with command.

 

or even some chat bots, like we used to have in good old times in IRC chats.

  • Like 2

Share this post


Link to post
Share on other sites

Nice, I've just made something similar to this myself. Mine has like groups (permissions) and you can execute specific commands on clients such as:

"!switchteam %Haz%"

Do you have any plans to add similar extended functionality to yours?

Share this post


Link to post
Share on other sites

Nice, I've just made something similar to this myself. Mine has like groups (permissions) and you can execute specific commands on clients such as:

"!switchteam %Haz%"

Do you have any plans to add similar extended functionality to yours?

If you can log an issue to github with more examples of use cases - I can think of it :)

 

First idea came to mind - to every command, besides "code" specify a condition - which will also be a code, returning true or false - in case of true action is done, in case of false - not, similar to condition in addAction command.

Share this post


Link to post
Share on other sites

Sure. Will add some when I get chance, sometime this week.

 

Edit: This is just a very basic example. I will still add some code to your GitHub repo once I finish up a few important things such as adding partial name searching. If more than one name match, display similar names and have it so you can select from name index. No idea why I decided to call it "Bumber Bot" - Just random word that came to my head lol. :D

https://youtu.be/SBrHsm1Q8ws

Share this post


Link to post
Share on other sites

Yet the idea is the same, the approach and implementation is completely different.

 

I like how you implemented it. It's very neat.

  • Like 1

Share this post


Link to post
Share on other sites
Guest

Wow, that's cleaner than all I saw before. Great job ! ;)

Share this post


Link to post
Share on other sites

Yeah, it's really nice. :)

  • Like 1

Share this post


Link to post
Share on other sites

i am trying to use this script but i want to try to get it to be a little more flexible in removing or adding respawn ticket.

class commands { 
	class t100 { 
	code = [East, 100] call BIS_fnc_respawnTickets; 
	}; 
};

this works fine but how can i change the number 100 in [East,100] to any number that i want. I am guessing i have to put some string in there but i have no idea how. eg. by entering t356 via in-game chat, it would add 356 ticket and by entering t1573, it would add 1573 ticket. i know i can make it a fixed number duplicating it and change the number but i would like to have the flexibility.

Share this post


Link to post
Share on other sites

From creating my own chat commands script and looking at long bows youd have to develop the chatcomProcess.sqf to split the command and the increment for example, the way I way I execute it through mine for example is, 

 

["player", _code, _selectedTargetName] spawn fnc_chat_Exec; 

 

Which executes code on a specific player which is selected by their name in chat for example 

 

#heal Amar 

Which would heal the player Amar but it also allowed Scalar values, for example 

#delete 500

Which would delete all objected within a 500 radius which is changeable by typing in chat the value 

This is all done through spitting the command from the target/scalar value 

//

The _code is defined when it finds out which command is selected.

Thanks

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×