diff --git a/commands/fun/curses.js b/commands/fun/curses.js
index df93f6b..09f9587 100644
--- a/commands/fun/curses.js
+++ b/commands/fun/curses.js
@@ -9,7 +9,7 @@ const downloader = require('../../utils/download');
 class cursesCommand extends Command {
 	constructor() {
 		super('curses', {
-			aliases: ['curses'],
+			aliases: ['curses', 'curse'],
 			category: 'fun',
 			clientPermissions: ['SEND_MESSAGES', 'ATTACH_FILES'],
 			args: [
@@ -17,6 +17,11 @@ class cursesCommand extends Command {
 					id: 'link',
 					type: 'url',
 				},
+				{
+					id: 'webm',
+					match: 'flag',
+					flag: ['--webm']
+				},
 			],
 			description: {
 				content: 'Mess with video length. webm = expanding length and mp4 = very long length',
@@ -38,12 +43,15 @@ class cursesCommand extends Command {
 			link = await attachment(message);
 
 		let ext = path.extname(link.toLowerCase());
-		if (ext !== '.webm' || ext !== '.mp4') {
+		console.log(ext);
+		if (ext !== '.webm' && ext !== '.mp4')
 			ext = '.mp4';
-		}
 
+
+		if (args.webm) ext = '.webm';
+		
 		let loadingmsg = await message.channel.send('Processing <a:loadingmin:527579785212329984>');
-		downloader(link, null, `${os.tmpdir()}/${message.id}${ext}`)
+		downloader(link, [`--format=${ext.replace('.', '')}`], `${os.tmpdir()}/${message.id}${ext}`)
 			.on('error', async err => {
 				loadingmsg.delete();
 				console.error(err);
@@ -53,14 +61,14 @@ class cursesCommand extends Command {
 				let file = fs.readFileSync(output).toString('hex');
 				
 				let searchHex = '6d766864';
-				let replaceHex = '0000017FFFFFFF';
+				let replaceHex = '0000180FFFFFF7F';
 				let skipByte = 34;
 
 				let endResult;
 
 				if (ext === '.webm') {
 					searchHex = '2ad7b1';
-					replaceHex = '00000000';
+					replaceHex = '42FFB060';
 					skipByte = 8;
 
 					endResult = replaceAt(file, file.indexOf(searchHex) + file.substring(file.indexOf(searchHex)).indexOf('4489') + skipByte, replaceHex);
@@ -69,7 +77,8 @@ class cursesCommand extends Command {
 				}
 
 				fs.writeFileSync(`${os.tmpdir()}/cursed${message.id}${ext}`, Buffer.from(endResult, 'hex'));
-				return message.channel.send({files: [`${os.tmpdir()}/cursed${message.id}${ext}`]})
+				message.delete();
+				return message.channel.send(`Cursed by ${message.author}`, {files: [`${os.tmpdir()}/cursed${message.id}${ext}`]})
 					.catch(err => {
 						console.error(err);
 						return message.channel.send('Video is too big! try again with something smaller');
diff --git a/commands/fun/vidshittyfier.js b/commands/fun/vidshittyfier.js
index 0c07a55..29aa37b 100644
--- a/commands/fun/vidshittyfier.js
+++ b/commands/fun/vidshittyfier.js
@@ -85,7 +85,7 @@ class vidshittyfierCommand extends Command {
 					ffmpegCommand.on('end', () => {
 						loadingmsg.delete();
 						message.delete();
-						return message.channel.send({files: [output2]})
+						return message.channel.send(`Shittyfied by ${message.author}`, {files: [output2]})
 							.catch(err => {
 								console.error(err);
 								return message.channel.send(`${err.name}: ${err.message} ${err.message === 'Request entity too large' ? 'The file size is too big' : ''}`);
diff --git a/commands/utility/gif2vid.js b/commands/utility/gif2vid.js
index 12a234e..2eb5338 100644
--- a/commands/utility/gif2vid.js
+++ b/commands/utility/gif2vid.js
@@ -57,7 +57,7 @@ class gif2vidCommand extends Command {
 				ffmpegCommand.on('end', () => {
 					loadingmsg.delete();
 					message.delete();
-					return message.channel.send({files: [`${os.tmpdir()}/${message.id}g2v.mp4`]})
+					return message.channel.send(`Converted by ${message.author}`, {files: [`${os.tmpdir()}/${message.id}g2v.mp4`]})
 						.catch(err => {
 							console.error(err);
 							return message.channel.send(`${err.name}: ${err.message} ${err.message === 'Request entity too large' ? 'The file size is too big' : ''}`);
diff --git a/commands/utility/vid2gif.js b/commands/utility/vid2gif.js
index a22b60f..7a91d88 100644
--- a/commands/utility/vid2gif.js
+++ b/commands/utility/vid2gif.js
@@ -63,7 +63,7 @@ class vid2gifCommand extends Command {
 				ffmpegCommand.on('end', () => {
 					loadingmsg.delete();
 					message.delete();
-					return message.channel.send({files: [`${os.tmpdir()}/${message.id}v2g.gif`]})
+					return message.channel.send(`Converted by ${message.author}`, {files: [`${os.tmpdir()}/${message.id}v2g.gif`]})
 						.catch(err => {
 							console.error(err);
 							return message.channel.send(`${err.name}: ${err.message} ${err.message === 'Request entity too large' ? 'The file size is too big' : ''}`);
diff --git a/rand.js b/rand.js
index 79cc903..2e1aa75 100644
--- a/rand.js
+++ b/rand.js
@@ -27,7 +27,7 @@ exports.random = function (text, message) {
 		},
 		{
 			name: /\[member\]/,
-			value: message.guild ? message.guild.members.cache.random().user.username : ''
+			value: message ? message.guild ? message.guild.members.cache.random().user.username : '' : '' // What the fuck am i doing
 		},
 		{
 			name: /\[memberRand\]/,