Для издания | |
---|---|
Автор | |
Дата выпуска | |
Последняя версия | |
Совместимо с | |
Установка | |
Требования | |
Ссылки |
Custom Stuff — это модификация для Minecraft, с которым абсолютно любой человек, не знающий язык Java, может добавить в игру различные блоки, предметы, инструменты, броню, пищу, рецепты крафта и другое (см. ниже).
<папка игры>/mods
.У блоков должны быть в обязательном порядке 3 параметра:
Параметр | Примечание |
---|---|
name | Можно именовать на русском языке, если используется русификатор, но игроки, у которых английская раскладка, увидят лишь непонятные символы. |
id | У блоков есть ограничение: [97 ... 255] |
texturefile | Путь к текстуре блока. Текстура должна быть разрешением 16×16 и помещена в архив .minecraft/mods/custom stuff.zip (пример текстуры справа) |
Параметр | Базовое значение | Описание |
---|---|---|
type | normal | Определяет тип блока (normal, fence, fencegate, stairs, door, slab, crosstexture, torch, pressureplate, chest, pane, liquid, trapdoor). |
textureindex | не имеет значения. | Может быть использован для текстур-файлов. Порядок начинается от 0, слева направо и от верха. |
textureindex1 | не имеет значения. | textureindex1 to textureindex15. textureindex for damage values. Same with the other texture properties. |
texturefiletop | не имеет значения. | Верхняя текстура блока. |
texturefileeast | не имеет значения | Восточная боковая сторона блока. |
texturefilewest | не имеет значения | Западная боковая сторона блока. |
texturefilenorth | не имеет значения | Северная боковая сторона блока. |
texturefilesouth | не имеет значения | Южная боковая сторона блока. |
textureindextop | не имеет значения | Верхняя индексная сторона блока. То есть нужно указать номер текстуры из файла, где 0,0 — самая верхняя левая, 0,1 — чуть ниже, 1,0 — чуть правее и т. д.. |
textureindexeast | не имеет значения | Западная индексная боковая сторона блока. |
textureindexwest | не имеет значения | Восточная индексная боковая сторона блока. |
textureindexnorth | не имеет значения | Северная индексная боковая сторона блока. |
textureindexsouth | не имеет значения | Южная индексная боковая сторона блока. |
chesttexturefile1 | не имеет значения | chesttexturefile1 to chesttexturefile7. Текстуры для сундука. Смотрите chesttextures.png (такое изображение имеется в архиве), в котором пронумерованы числа для текстур. |
material | rock | Материал, из которого состоит блок(grass, ground, wood, rock, iron, cloth, sand, glass). |
damagevalues | 0 | Number of damage values the block has [1 ... 15] (По умолчанию 0). "Индексация" блока (пример: красители имеют номер 351 и 15 значений (по одному для каждого красителя)). Только для типа normal, fence и crosstexture. |
name1 | не имеет значения | Имя для индексированных блоков name1, name2... |
redstoneonly | False | Только для дверей. Если поставить true, то дверь можно открыть только с помощью красного камня. |
texturefilebottom | не имеет значения | Только для дверей. Путь к текстуре нижней части двери. |
doubleslabid | не имеет значения | Только для плит. ID блока, который устанавливается, когда вы размещаете одну плиту над другой. Если этого не установлено, то невозможно сделать двойную плиту. |
stepsound | stone | Звук ходьбы по блоку. Так же производиться звук размещения/уничтожения блока. Имеющиеся звуки (wood, gravel, grass, stone, metal, cloth, glass). |
hardness | 1 | Сложность добычи блока. (например: обсидиан 10; грязь 0,5; камень 1) |
resistance | 0 | Устойчивость ко взрыву. (например: обсидиан 2000; камень 10) |
light | 0 | Яркость освещения блока (например: светящийся камень 15; факел 14) |
opacity | 255 | Сколько света проходит через блок [0 ... 255]. (например: 255 = свет не проходит через блок, 0 = весь свет проходит через блок) |
iddropped | тот же самый блок | Блок, материал, который выпадает из блока. |
iddropped1 | iddropped | iddropped1 to iddropped15. iddropped for damage values. |
quantitydropped | 1 | Количество выпадаемых предметов/блоков. Можно поставить случайное количество (например: 3-6). |
damagedropped | 0 | Which damage value the block drops. |
damagedropped1 | Default is the damage the block has | damagedropped1 to damagedropped15. damagedropped for damage values. |
transparent | False | Поставьте true, если блок имеет прозрачную текстуру. |
speed | 0.6 | Как быстро можно передвигаться по блоку (стандартно: 0.6). |
gravity | False | Если поставить true, то гравитация будет влиять на блок (пример: песок и гравий). |
collision | true | Если поставить false, то через блок можно проходить. |
movebypiston | true | Если поставить false, то блок невозможно будет двигать с помощью поршня. |
pressureplatetrigger | all | Блок активируется нажимной пластиной. Возможные значения (all, player, monster, animal, creature, item, noplayer, nomonster, noanimal, nocreature and noitem). Нельзя использовать несколько значений. |
destroyed | не имеет значения | Функции, которые вызываются, когда игрок разрушил блок. |
destroyed1 | не имеет значения | destroyed1 to destroyed15. destroyed for damage values. Same with clicked, added etc. |
clicked | не имеет значения | Функции, которые вызываются при нажатии ЛКМ на блок. |
neighborchanged | не имеет значения | Функции, которые вызываются, когда рядом с блоком меняется соседний блок. |
added | не имеет значения | Функции, которые вызываются, когда блок был установлен. |
activated | не имеет значения | Функции, которые вызываются, когда подключен с красным камнем. |
deactivated | не имеет значения | Функции, которые вызываются, когда блок отключен от красного камня (не совсем верный перевод). |
rigthclicked | не имеет значения | Функции, которые вызываются, когда игрок щёлкнет правой кнопкой мыши на блок. |
id=170; name="Фонарь"; texturefile="Lantern.png";
id=170; name="Фонарь"; texturefile="Lantern.png"; light=15; material="glass"; stepsound="glass";
id=195; name="Призыватель молний"; texturefile="имя_вашей_текстуры.png";
id=195; name="Призыватель молний"; texturefile="имя_вашей_текстуры.png"; material="iron"; stepsound="metal"; activated = "world.createThunderbolt(origin);";
.
"world.createThunderbolt(origin);";
"world.createExplosion(origin, 3);";
"world.setWeather(1);";
"world.setTime(0);";
"world.spawnMob(origin, 'Pig');";
У предметов в обязательном порядке должны быть три параметра:
Параметр | Примечание |
---|---|
name | Можно именовать на русском языке, если используется русификатор, но игроки, у которых английская раскладка, увидят лишь непонятные символы. |
id | У предметов есть ограничение (от 512 до 5000) |
iconfile | Путь к текстуре предмета. Текстура должна быть разрешением 16×16 и помещена в архив .minecraft/mods/custom stuff.zip (пример текстуры справа) |
Параметр | Базовое значение | Описание |
---|---|---|
type | normal | Определяет тип предмета (normal, food, helmet, body, legs, boots, grenade). |
iconindex | не имеет значения. | Может использовано для текстур-файлов (содержащих более одной текстуры). Нумерация начинается от 0, слева-направо и сверху. |
maxstack | 1 | Определяет максимальное значение в одном стаке. Максимально доступное значение: 64 |
healamount | 1 | Определяет количество утоления пунктов голода. Максимально доступное значение: 20 (1 — половинка пункта голода). |
saturation | 0.6 | Value for the saturation. |
efficiency | 4 | Эффективность инструментов (скорость добычи блоков. Например: деревянный: 2, алмазный: 8). |
damage | 1 | Наносимый инструментами/оружием урон. (Например: деревянный: 0, алмазный: 3) |
maxuses | броня: 16, еда: 1, все остальные: 64 | Количество использований инструмента или предмета. |
harvestblocks | all | Определяет силу кирки (какие блоки может разрушать кирка). Допустимые значения: all, pickaxewood, pickaxestone, pickaxeiron, pickaxediamond, default или любой ID блока. Ставьте несколько ID, разделяя их запятой. |
efficiencyblocks | не имеет значения | Определяет тип инструмента. Данные значения также должны быть в "harvestblocks". Допустимые значения: all, none, pickaxe, axe, shovel and any blockid. Можно использовать несколько значений,разделив их запятой ",". |
armorname | не имеет значения | Путь к текстуре брони. Внимание! В архиве .minecraft/mods/custom stuff.zip нужно создать папку "armor" и положить текстуру туда. Для брони требуется два изображения брони (см. архив minecraft/armor). |
infiniteair | False | Только для брони. Если поставить true, то игрок может бесконечно дышать под водой с этой бронёй. (Only Singleplayer) |
noburning | False | Только для брони. Если поставить true, то игрок никогда не загорится (не купайтесь в лаве — бесполезно(наносит урон)). (Only Singlepalyer) |
nofalldamage | False | Только для брони. Если поставить true, то игроку не будет наноситься урон от падения. (Only Singlepalyer) |
grenadetime | 50 | Время до взрыва гранаты. |
grenadethrowforce | 1 | Сила броска гранаты. |
rightclick | не имеет значения | Функции, вызываемые, когда игрок предметом нажимает правой кнопкой мыши по блоку. |
blockdestroyed | не имеет значения | Функции, вызываемые, когда игрок уничтожает блок. |
hitmob | не имеет значения | Функции, вызываемые, когда игрок бьёт моба или игрока этим предметом. |
explode | не имеет значения | Функции, вызываемые, когда взрывается граната. Если вы не поставите это значение, то гранаты будут просто пропадать без какого-либо эффекта. |
eaten | не имеет значения | для еды (food). Функции, вызываемые, когда съеден предмет. |
id=1503; name="Derky Pickaxe"; iconfile="Derky_Pickaxe.png";
name="Derky Pickaxe"; id=1503; iconfile="Derky_Pickaxe.png"; type="normal"; maxuses=2048; harvestblocks="pickaxediamond"; efficiencyblocks="pickaxe"; efficiency=16; damage=1; blockdestroyed="player.damageItem(player.getCurrentSlot(), 1);"; hitmob="player.damageItem(player.getCurrentSlot(), 512);";
Вы не задумывались, почему же ваш игрок выпивает добавленную вами бутылку сока с бутылкой? Если задумывались, то этот раздел для вас:
id = 701; name = "Бутылка с соком"; iconfile = "ваша_текстура.png"; type = "food"; maxstack = 1; saturation = 1.3; healamount = 2; eaten = "player.addToInventory(374, 1, 0);";
recipes.addRecipe("X amount 2 2 1 2 3 4", "vanilla");
recipes.addRecipe("X amount 3 3 1 2 3 4 5 6 7 8 9", "vanilla");
recipes.addShapelessRecipe("X amount 1 2 3 4 5 6 7 8 9", "vanilla");
X — выходящий предмет.
amount — количество выходящих предметов.
2 2 (или 3 3) — сетка крафта.
1 2 3 4 — ингредиенты, поставленные по порядку (см. справа нумерацию крафта).
recipes.removeRecipe("X amount 3 3 1 2 3 4 5 6 7 8 9", "vanilla");
X — выходящий предмет
amount — количество выходящих предметов
2 2 (или 3 3) — сетка крафта
1 2 3 4 — ингредиенты, поставленные по порядку (см. справа нумерацию крафта).
recipes.removeRecipe("46 1 3 3 289 12 289 12 289 12 289 12 289 12", "vanilla");
Эта строка позволит удалить рецепт ТНТ
recipes.removeShapelessRecipe("X amount 1 2 3 4 5 6 7 8 9", "vanilla");
Для переплавки одной вещи необходимо 200 энергии (10 секунд). К примеру, у угля энергетический запас составляет 1600 ед. энергии, а у досок/древесины — 300 единиц. В одном файле с расширением .fuel можно хранить плавку всех предметов, то есть для каждой строки будет определено по одному горючему материалу.
fuels.addFuel(«49 3200», «vanilla»); (Обсидиан может проплавить 16 предметов)
fuels.addFuel(«1 100», «vanilla»); (Камень может переплавить 0.5 предметов)
В файле example.srecipe нужно написать в одну строку:
smeltingRecipes.addRecipe(«X 1 amount», «vanilla»);
X — какой предмет (или блок) надо переплавить
amount — количество вещей
1 — получившийся предмет.
Параметр | Базовое значение | Описание |
---|---|---|
id | не имеет значения. | id генерируемого блока. |
damage | не имеет значения. | Мета-идентификатор. Пример — разноцветная шерсть имеет один идентификатор, но разные мета-идентификаторы, для поврежденных кирок эти мета-идентификаторы также различны. |
type | normal | Тип генерируемого блока (normal, flower) |
size | не имеет значения. | Количество генерации блоков в одном месте. |
generationblocks | не имеет значения. | Определяет параметр, возле каких блоков генерируется блок. |
heightmin | не имеет значения. | Минимальная высота по альтитуде. |
heightmax | не имеет значения. | Максимальная высота по альтитуде. |
rate | не имеет значения. | Количество генерации залеж в одном чанке. |
id=35; damage=10; type="normal"; size=10; rate=10; generationblocks=1; heightmin=0; heightmax=128;
id = 205; type = "normal"; name = "Гравитационная Установка (обычный режим)"; texturefile = "ваша_текстура.png"; damagevalues = 1; material = "iron"; stepsound = "metal"; hardness = 1; rightclicked = "player.addVelo(0, 1, 0);"; activated = "world.setBlockMetadata(origin, 1);player.sendMessage('Активирован ультра-режим.');"; name1 = "Гравитационная Установка (ультра-режим)"; iddropped1 = 205; damagedropped1 = 0; rightclicked1 = "player.addVelo(0, 3, 0);"; deactivated1 = "world.setBlockMetadata(origin, 0);player.sendMessage('Активирован обычный режим.');";
name="Направленный телепортатор"; id=793; type="normal"; iconfile="ваш_файл.png"; iconindex=1; maxstack=1; rightclickair = "customstuff.loadScript('portalgun.script')";
var x = player.getLookX(20); // \ var y = player.getLookY(20); // > можно вставить свои значения. var z = player.getLookZ(20); // / player.setPosition(x, y+3, z);
name="Электро-Винтовка"; id=793; type="normal"; iconfile="ваш_файл.png"; iconindex=1; maxstack=1; rightclickair = "if(player.getItemCount(348, 0) >=1 ){customstuff.loadScript('lightingweapon.script')}"; //проверка, если в инвентаре есть светящаяся пыль то запускаем скрипт.
var x = player.getLookX(60); // \ var y = player.getLookY(60); // > можно выставить свои значения(в блоках) var z = player.getLookZ(60); // / world.createThunderbolt(x, y, z);//создаем молнию в этих координатах (направление взгляда ГГ) player.removeFromInventory(348, 1, 0); //забираем 1 светящуюся пыль из инвентаря (первое число id)