synthlight / coggo Goto Github PK
View Code? Open in Web Editor NEWA Volcanoids bot to auto-reply to incessantly asked questions.
A Volcanoids bot to auto-reply to incessantly asked questions.
I'm keeping this open as an ongoing issue. If there are new things to add, or false positives that need fixing, add a comment.
The regex & issue will be updated, and the comments merged/deleted into this issue. Keeps things clean.
const CONSOLE_PART1: &str = "(will|game|to|available)";
const CONSOLE_PART2: &str = "(console|xbox|ps4|ps5|playstation)";
lazy_static! {
static ref CONSOLE_AUTOREPLY_REGEX: Regex = {
create_auto_reply_regex(&[
format!("{}.*{}", CONSOLE_PART1, CONSOLE_PART2),
format!("{}.*{}", CONSOLE_PART2, CONSOLE_PART1)
], true)
};
}
The generated result:
((will|game|to|available).*(console|xbox|ps4|ps5|playstation))|((console|xbox|ps4|ps5|playstation).*(will|game|to|available))
My test data (90% real comments, some variations added by me):
Negatives:
{None yet.}
Positives:
Will this come to console?
Will it be available on xbox?
I'm keeping this open as an ongoing issue. If there are new things to add, or false positives that need fixing, add a comment.
The regex & issue will be updated, and the comments merged/deleted into this issue. Keeps things clean.
// A var since I keep copying the "the game", "it", "this", etc in many of these.
const THE_GAME_PART1: &str = "(that|the|this)"; // The 'the' part of 'the game'. The group of words that match the first part.
const THE_GAME_PART2: &str = "(game|it|volcanoid(s?))"; // The 'game' part of 'the game'. The group of words that match the last part.
// Merge so we either match: The first part, the second part, or both parts.
// e.g. we match: 'the', 'game', or 'the game'.
const THE_GAME_REGEX: &str = formatcp!("({the}|{game}|{the} {game})", the = THE_GAME_PART1, game = THE_GAME_PART2);
lazy_static! {
static ref STEAM_AUTOREPLY_REGEX: Regex = {
create_auto_reply_regex(&[
format!("when(('|’)s|s| is)?( {})? (come|coming) out", THE_GAME_REGEX),
format!("is {} (out|released|available)( yet)?", THE_GAME_REGEX),
format!("is {} (up|available) (yet|to download)?", THE_GAME_REGEX),
format!("(where|how) (can|do|does)( [^ \\n]+?)? (get|buy|play) (this|it|{} {})", THE_GAME_PART1, THE_GAME_PART2),
format!("(where|how).*?download"),
format!("(is|if|will)( [^ \\n]+?)? {}( (?!only)[^ \\n]+?)? (free|on steam)", THE_GAME_REGEX),
format!("what.*?(get|buy|is)( [^ \\n]+?)? {}.*? on[^a-zA-Z]", THE_GAME_PART2),
format!("how mu(t?)ch .*?{}? cost", THE_GAME_REGEX),
format!("how (much|many)( [^ \\n]+?)? is {}", THE_GAME_REGEX),
format!("can i play( [^ \\n]+?)?( {})? now", THE_GAME_REGEX),
format!("price in (usd|dollars|aud|cad)")
], true)
};
}
The generated result:
(when(('|’)s|s| is)?( ((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))))? (come|coming) out)|(is ((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))) (out|released|available)( yet)?)|(is ((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))) (up|available) (yet|to download)?)|((where|how) (can|do|does)( [^ \n]+?)? (get|buy|play) (this|it|(that|the|this) (game|it|volcanoid(s?))))|((where|how).*?download)|((is|if|will)( [^ \n]+?)? ((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?)))( (?!only)[^ \n]+?)? (free|on steam))|(what.*?(get|buy|is)( [^ \n]+?)? (game|it|volcanoid(s?)).*? on[^a-zA-Z])|(how mu(t?)ch .*?((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?)))? cost)|(how (much|many)( [^ \n]+?)? is ((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))))|(can i play( [^ \n]+?)?( ((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))))? now)|(price in (usd|dollars|aud|cad))
My test data (90% real comments, some variations added by me):
Negatives:
As you all saw in the above here is the candle we stuck on top! This is available in the Questing Update Mod for a limited time Only 7 Days! so make sure to check it out while you still can! All Tier 1 Coal Modules put on the roof of the building will have this shiny candle! Happy Birthday Volcanoids!
behind me is free space
get the game on steam
guys I'm getting the game on steam today
Hey is there mods and if so where can I get them
how do get that
How do i get diamond drill parts, i need them to get to the volcano heart
how do i get shredder
how do u get arrested for that
I got so lucky to get the game from Steam before it got more expensive. But I can't play the game lol!
I wish I could play this game but I’m not able to buy it on steam
Interesting... Maybe that's what is going on...
is the update out yet?
is the update released yet?
Is this game only on steam
Just wondering, tried looking on google but couldn't find answers. How do I do separate saves of co-op / single player games instead of it overwriting my old progress.
look at big games on steam
May i ask what is going on in Drillship #1?
question how do u get an engine part when u play the game without the tutorial
since my second screen which I keep my discord on is super low res, I had no fricking clue what is that green line on the pic
that what is this one :joy:
what is going on here
What is your opinion on this?
what is your volcano timer on when it just erupted?
Positives:
But once again I am asking if the game is free
can i play now
can i play this game now
can i play this now
can i play volcanoids now
Guys is the game free?
how do get the game
how do u download Linxi?
how do you get the game
How does one get the game on steam
How much does the game cost
How much does this game cost
how much does this game cost and will it possibly be made to go on playstation
How much does this game cost on steam?
how much is the game
How much is the game on steam?
how much is volcanoid
how much is volcanoids
How much money is that game?
How much money is the game?
How much money is volcanoids?
How mutch will it cost
Is it free
Is the game already on steam
Is the game available to download?
Is the game available?
Is the game on steam or discord
is the game out
is the game out
is the game out yet
Is the game out yet?
is the game released
Is the game up to download?
is this a game on steam?
Is this free
Is this game on steam?
Is this game released yet?
Is this on Xbox the game and can I play it now
is this out
Is this out yet
is this released
price in USD
Question is the game on steam?
So how can I play this game
Thanks also is it available now and is there in game purchases
This game available on steam right?
What’s this game called and is it on steam
What is the game gonna be on?
What is this game available on?
What is this game on
When’s it coming out?
when's it come out
when's it coming out
when's this coming out
where can i buy this
where can i buy this game
where do i buy it
Will the game be on steam dumb question but will it
Will volcanoids be free?
I'm keeping this open as an ongoing issue. If there are new things to add, or false positives that need fixing, add a comment.
The regex & issue will be updated, and the comments merged/deleted into this issue. Keeps things clean.
const MULTIPLAYER_NAMES: &str = "(coop|co-op|multiplayer|multi player|multi-player)";
lazy_static! {
static ref MULTIPLAYER_AUTOREPLY_REGEX: Regex = {
create_auto_reply_regex(&[
format!("is {} {}", THE_GAME_REGEX, MULTIPLAYER_NAMES),
format!("is there {}", MULTIPLAYER_NAMES),
format!("does {}.*{}", THE_GAME_REGEX, MULTIPLAYER_NAMES),
format!("{} .* (is )?{}\\?", THE_GAME_REGEX, MULTIPLAYER_NAMES),
format!("is {} a thing", MULTIPLAYER_NAMES),
format!("{} is {}.*?\\?", THE_GAME_REGEX, MULTIPLAYER_NAMES),
format!("you should[^\\.\\n]*(add|make)[^\\.\\n]*{}", MULTIPLAYER_NAMES)
], true)
};
}
The generated result:
(is ((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))) (coop|co-op|multiplayer|multi player|multi-player))|(is there (coop|co-op|multiplayer|multi player|multi-player))|(does ((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))).*(coop|co-op|multiplayer|multi player|multi-player))|(((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))) .* (is )?(coop|co-op|multiplayer|multi player|multi-player)\?)|(is (coop|co-op|multiplayer|multi player|multi-player) a thing)|(((that|the|this)|(game|it|volcanoid(s?))|(that|the|this) (game|it|volcanoid(s?))) is (coop|co-op|multiplayer|multi player|multi-player).*?\?)|(you should[^\.\n]*(add|make)[^\.\n]*(coop|co-op|multiplayer|multi player|multi-player))
My test data (90% real comments, some variations added by me):
Negative:
For finding people to play multiplayer volcanoids with
i finished the updating the files and checked the multiplayer lobbies and im still unable to find any
is it on a multiplayer world?
is there a way to start a multiplayer lobby with an old save file?
or alex's mod(before he had the multiplayer stuff) I tested
So that each player can have their own in multiplayer
you are attempting to use it in multiplayer, also you don't have the mod installed
You should add guns. I like multiplayer.
Positive:
does it have coop
does the game have coop mode
Hello, just wondering if volcanoids is multiplayer. Like rust?.
hey is the game multiplayer?
is it multiplayer
is it multiplayer?
Is multiplayer a thing
is there multiplayer coop in this game? btw on steam it's, right?
is this game multiplayer?
This game is multiplayer right?
This game is multiplayer?
Will the game be multiplayer?
You should add like a coop or multiplayer mode or is it already?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.