Skip to content

Instantly share code, notes, and snippets.

@axiand
Last active March 30, 2024 03:22
Show Gist options
  • Save axiand/295dd2b5a70601f2c1819274a599ed5b to your computer and use it in GitHub Desktop.
Save axiand/295dd2b5a70601f2c1819274a599ed5b to your computer and use it in GitHub Desktop.
Tag snake!

A simple snake game in a little over 1000 characters. Made to be ran under the Assyst bot (https://github.com/Jacherr/Assyst2).

To add it to your server (assuming you use Assyst):

-tag create tagsnake {js:let arg0="{tryarg:0}"; let arg1="{tryarg:1}"; {download:https://gist.githubusercontent.com/axiand/295dd2b5a70601f2c1819274a599ed5b/raw/fc5bc3dcd57d79f0c6c5981b5f516e224705fa10/tagsnake.js} //* by https://github.com/axiand <3 *//}

Then run it using -tag tagsnake.

let fin = String(); let SX = 6; let SY = 6; let sn = []; let ap = 0; let f = false; let n = null; let mc = null; let mi = null; let mv = null; !arg1 ? function () {
sn = [0]; ap = 4;
}() : function () {
let a1s = arg1.split("|");
sn = atob(a1s[0]).split(";");
sn = sn.map(x => parseInt(x));
ap = a1s[1];
}(); mc = 0; mi = 0; mv = arg0;
(mv == "right") && (n = sn[sn.length - 1] + 1, n % SY == 0 ? f = true : sn.push(n));
(mv == "left") && (n = sn[sn.length - 1] - 1, n % SY == 0 ? f = true : sn.push(n));
(mv == "down") && (n = sn[sn.length - 1] + SY, sn.push(n));
(mv == "up") && (n = sn[sn.length - 1] - SY, sn.push(n));
(!mv) && (n = sn[sn.length - 1], sn.push(n));
(n < 0 || n > SX * SY) && (f = true);
sn = sn.slice(1, sn.length);
(function () { for (let i = 0; i < sn.length; i++) { (sn.filter(x => x == sn[i]).length > 1) && (f = true) } }());
(sn[sn.length - 1] == ap) && (sn.unshift(sn[0]), ap = Math.round(Math.random() * (SX * SY)));
while (mc < (SX * SY)) { Array(SX).fill(0).forEach(_ => { fin += (mc + mi == sn[sn.length - 1] && "@") || (sn.includes(mc + mi) && "S") || (mc + mi == ap && "A") || "#"; mi++ }); mi = 0; mc += SX; fin += "\n" };
fin += !(f) ? `\n-t tagsnake <direction> ${btoa(sn.join(";"))}|${ap}` : "YOU FAILED :(\nStart new game: -t tagsnake";
fin;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment