mrnodebot
Version:
Your Friendly NodeJS IRC Bot
166 lines (160 loc) • 2.87 kB
JavaScript
const _ = require('lodash');
const firstArray = [
'Temporary',
'Intermittent',
'Partial',
'Redundant',
'Total',
'Multiplexed',
'Inherent',
'Duplicated',
'Dual-Homed',
'Synchronous',
'Bidirectional',
'Serial',
'Asynchronous',
'Multiple',
'Replicated',
'Non-Replicated',
'Unregistered',
'Non-Specific',
'Generic',
'Migrated',
'Localised',
'Resignalled',
'Dereferenced',
'Nullified',
'Aborted',
'Serious',
'Minor',
'Major',
'Extraneous',
'Illegal',
'Insufficient',
'Viral',
'Unsupported',
'Outmoded',
'Legacy',
'Permanent',
'Invalid',
'Deprecated',
'Virtual',
'Unreportable',
'Undetermined',
'Undiagnosable',
'Unfiltered',
'Static',
'Dynamic',
'Delayed',
'Immediate',
'Nonfatal',
'Fatal',
'Non-Valid',
'Unvalidated',
'Non-Static',
'Unreplicatable',
'Non-Serious',
];
const secondArray = [
'Array',
'Systems',
'Hardware',
'Software',
'Firmware',
'Backplane',
'Logic-Subsystem',
'Integrity',
'Subsystem',
'Memory',
'Comms',
'Integrity',
'Checksum',
'Protocol',
'Parity',
'Bus',
'Timing',
'Synchronisation',
'Topology',
'Transmission',
'Reception',
'Stack',
'Framing',
'Code',
'Programming',
'Peripheral',
'Environmental',
'Loading',
'Operation',
'Parameter',
'Syntax',
'Initialisation',
'Execution',
'Resource',
'Encryption',
'Decryption',
'File',
'Precondition',
'Authentication',
'Paging',
'Swapfile',
'Service',
'Gateway',
'Request',
'Proxy',
'Media',
'Registry',
'Configuration',
'Metadata',
'Streaming',
'Retrieval',
'Installation',
'Library',
'Handler',
];
const thirdArray = [
'Interruption',
'Destabilisation',
'Destruction',
'Desynchronisation',
'Failure',
'Dereferencing',
'Overflow',
'Underflow',
'NMI',
'Interrupt',
'Corruption',
'Anomoly',
'Seizure',
'Override',
'Reclock',
'Rejection',
'Invalidation',
'Halt',
'Exhaustion',
'Infection',
'Incompatibility',
'Timeout',
'Expiry',
'Unavailability',
'Bug',
'Condition',
'Crash',
'Dump',
'Crashdump',
'Stackdump',
'Problem',
'Lockout',
];
const optionalFourthArray = [
'Error',
'Problem',
'Warning',
'Signal',
'Flag',
];
module.exports = async (size) => {
size = _.isSafeInteger(size) && size > 0 ? size : 1;
const output = [];
_.times(size, output.push(`${_.sample(firstArray)} ${_.sample(secondArray)} ${_.sample(thirdArray)} ${_.random(1, true) > 0.8 ? _.sample(optionalFourthArray) : ''}`));
return output;
};